@joydle/ui 0.1.0 → 0.1.1
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/dist/controls/ActionButton.d.ts +10 -1
- package/dist/controls/ActionButton.d.ts.map +1 -1
- package/dist/controls/ActionButton.js +3 -3
- package/dist/controls/ActionButton.js.map +1 -1
- package/dist/controls/index.d.ts +1 -1
- package/dist/controls/index.d.ts.map +1 -1
- package/dist/controls/index.js.map +1 -1
- package/dist/deps.d.ts +11 -0
- package/dist/deps.d.ts.map +1 -0
- package/dist/deps.js +19 -0
- package/dist/deps.js.map +1 -0
- package/dist/fx/effects.d.ts +163 -0
- package/dist/fx/effects.d.ts.map +1 -0
- package/dist/fx/effects.js +337 -0
- package/dist/fx/effects.js.map +1 -0
- package/dist/fx/hooks.d.ts +100 -0
- package/dist/fx/hooks.d.ts.map +1 -0
- package/dist/fx/hooks.js +116 -0
- package/dist/fx/hooks.js.map +1 -0
- package/dist/fx/index.d.ts +15 -0
- package/dist/fx/index.d.ts.map +1 -0
- package/dist/fx/index.js +22 -0
- package/dist/fx/index.js.map +1 -0
- package/dist/hud/BottomHint.d.ts.map +1 -1
- package/dist/hud/BottomHint.js +1 -9
- package/dist/hud/BottomHint.js.map +1 -1
- package/dist/hud/ComboLabel.d.ts.map +1 -1
- package/dist/hud/ComboLabel.js +1 -9
- package/dist/hud/ComboLabel.js.map +1 -1
- package/dist/hud/Crosshair.d.ts +28 -0
- package/dist/hud/Crosshair.d.ts.map +1 -0
- package/dist/hud/Crosshair.js +93 -0
- package/dist/hud/Crosshair.js.map +1 -0
- package/dist/hud/EntityLabel.d.ts +46 -0
- package/dist/hud/EntityLabel.d.ts.map +1 -0
- package/dist/hud/EntityLabel.js +59 -0
- package/dist/hud/EntityLabel.js.map +1 -0
- package/dist/hud/FloatingNumbers.d.ts +43 -0
- package/dist/hud/FloatingNumbers.d.ts.map +1 -0
- package/dist/hud/FloatingNumbers.js +93 -0
- package/dist/hud/FloatingNumbers.js.map +1 -0
- package/dist/hud/HUD.d.ts +2 -0
- package/dist/hud/HUD.d.ts.map +1 -1
- package/dist/hud/HUD.js +11 -0
- package/dist/hud/HUD.js.map +1 -1
- package/dist/hud/Lives.d.ts +26 -5
- package/dist/hud/Lives.d.ts.map +1 -1
- package/dist/hud/Lives.js +30 -31
- package/dist/hud/Lives.js.map +1 -1
- package/dist/hud/Meter.d.ts +10 -1
- package/dist/hud/Meter.d.ts.map +1 -1
- package/dist/hud/Meter.js +3 -11
- package/dist/hud/Meter.js.map +1 -1
- package/dist/hud/ResourceDisplay.d.ts +30 -0
- package/dist/hud/ResourceDisplay.d.ts.map +1 -0
- package/dist/hud/ResourceDisplay.js +49 -0
- package/dist/hud/ResourceDisplay.js.map +1 -0
- package/dist/hud/Score.d.ts +12 -1
- package/dist/hud/Score.d.ts.map +1 -1
- package/dist/hud/Score.js +15 -12
- package/dist/hud/Score.js.map +1 -1
- package/dist/hud/StatDisplay.d.ts +33 -0
- package/dist/hud/StatDisplay.d.ts.map +1 -0
- package/dist/hud/StatDisplay.js +56 -0
- package/dist/hud/StatDisplay.js.map +1 -0
- package/dist/hud/Timer.d.ts.map +1 -1
- package/dist/hud/Timer.js +1 -9
- package/dist/hud/Timer.js.map +1 -1
- package/dist/hud/WaveLabel.d.ts.map +1 -1
- package/dist/hud/WaveLabel.js +1 -9
- package/dist/hud/WaveLabel.js.map +1 -1
- package/dist/hud/index.d.ts +8 -3
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +5 -0
- package/dist/hud/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/screens/GameOverScreen.d.ts.map +1 -1
- package/dist/screens/GameOverScreen.js +3 -10
- package/dist/screens/GameOverScreen.js.map +1 -1
- package/dist/screens/LoadingScreen.d.ts.map +1 -1
- package/dist/screens/LoadingScreen.js +1 -9
- package/dist/screens/LoadingScreen.js.map +1 -1
- package/dist/screens/LobbyScreen.d.ts.map +1 -1
- package/dist/screens/LobbyScreen.js +1 -9
- package/dist/screens/LobbyScreen.js.map +1 -1
- package/dist/screens/PauseOverlay.d.ts.map +1 -1
- package/dist/screens/PauseOverlay.js +1 -9
- package/dist/screens/PauseOverlay.js.map +1 -1
- package/dist/screens/TitleScreen.d.ts.map +1 -1
- package/dist/screens/TitleScreen.js +3 -10
- package/dist/screens/TitleScreen.js.map +1 -1
- package/dist/screens/index.d.ts +1 -0
- package/dist/screens/index.d.ts.map +1 -1
- package/dist/screens/index.js +1 -0
- package/dist/screens/index.js.map +1 -1
- package/dist/screens/primitives.d.ts +101 -0
- package/dist/screens/primitives.d.ts.map +1 -0
- package/dist/screens/primitives.js +239 -0
- package/dist/screens/primitives.js.map +1 -0
- package/dist/transitions/ScreenTransition.d.ts.map +1 -1
- package/dist/transitions/ScreenTransition.js +31 -40
- package/dist/transitions/ScreenTransition.js.map +1 -1
- package/package.json +13 -2
package/dist/hud/Score.js
CHANGED
|
@@ -1,17 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx } from "preact/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
2
2
|
// ---------------------------------------------------------------------------
|
|
3
3
|
// @joydle/ui — Score display with GSAP scale-pop on change
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Formatter ------------------------------------------------------------
|
|
16
8
|
const formatter = new Intl.NumberFormat('en-US');
|
|
17
9
|
// ---- Styles ---------------------------------------------------------------
|
|
@@ -32,7 +24,7 @@ const SCORE_STYLE = {
|
|
|
32
24
|
* <Score value={12500} />
|
|
33
25
|
* ```
|
|
34
26
|
*/
|
|
35
|
-
export function Score({ value }) {
|
|
27
|
+
export function Score({ value, icon, iconColor }) {
|
|
36
28
|
const elRef = useRef(null);
|
|
37
29
|
const prevRef = useRef(value);
|
|
38
30
|
const tweenRef = useRef(null);
|
|
@@ -69,6 +61,17 @@ export function Score({ value }) {
|
|
|
69
61
|
}
|
|
70
62
|
};
|
|
71
63
|
}, []);
|
|
72
|
-
|
|
64
|
+
// Resolve icon
|
|
65
|
+
const renderIcon = () => {
|
|
66
|
+
if (!icon)
|
|
67
|
+
return null;
|
|
68
|
+
const ic = iconColor ?? 'var(--joydle-gold, #ffd700)';
|
|
69
|
+
if (typeof icon === 'function') {
|
|
70
|
+
const IconComp = icon;
|
|
71
|
+
return (_jsx("span", { style: { lineHeight: 0, marginRight: 4, display: 'inline-flex', alignItems: 'center' }, children: _jsx(IconComp, { size: 18, color: ic, fill: ic, strokeWidth: 2 }) }));
|
|
72
|
+
}
|
|
73
|
+
return null;
|
|
74
|
+
};
|
|
75
|
+
return (_jsxs("span", { ref: elRef, class: "joydle-score", style: { ...SCORE_STYLE, display: 'inline-flex', alignItems: 'center' }, children: [renderIcon(), formatter.format(value)] }));
|
|
73
76
|
}
|
|
74
77
|
//# sourceMappingURL=Score.js.map
|
package/dist/hud/Score.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Score.js","sourceRoot":"","sources":["../../src/hud/Score.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,4DAA4D;AAC5D,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Score.js","sourceRoot":"","sources":["../../src/hud/Score.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ComponentType, JSX } from 'preact';
|
|
2
|
+
export interface StatDisplayProps {
|
|
3
|
+
label: string;
|
|
4
|
+
value: string | number;
|
|
5
|
+
/** CSS color literal or var(). Default: var(--joydle-text, #fff) */
|
|
6
|
+
color?: string;
|
|
7
|
+
/** Optional icon component — receives { size, color } */
|
|
8
|
+
icon?: ComponentType<{
|
|
9
|
+
size?: number;
|
|
10
|
+
color?: string;
|
|
11
|
+
}>;
|
|
12
|
+
/** Visual size tier. Default: 'md' */
|
|
13
|
+
size?: 'sm' | 'md' | 'lg';
|
|
14
|
+
/** Show a horizontal fill bar below the value. */
|
|
15
|
+
bar?: {
|
|
16
|
+
current: number;
|
|
17
|
+
max: number;
|
|
18
|
+
};
|
|
19
|
+
/** Add a glow text-shadow matching the color. Default: false */
|
|
20
|
+
glow?: boolean;
|
|
21
|
+
/** Text alignment. Default: 'left' */
|
|
22
|
+
align?: 'left' | 'right' | 'center';
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Compact label + value display for HUDs. Covers ~80% of game stat widgets.
|
|
26
|
+
*
|
|
27
|
+
* ```tsx
|
|
28
|
+
* <StatDisplay label="SYNC" value="87.2%" color="#FF6A00" glow />
|
|
29
|
+
* <StatDisplay label="WAVE" value={wave} bar={{ current: wave, max: 10 }} />
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare function StatDisplay({ label, value, color, icon: Icon, size, bar, glow, align, }: StatDisplayProps): JSX.Element;
|
|
33
|
+
//# sourceMappingURL=StatDisplay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatDisplay.d.ts","sourceRoot":"","sources":["../../src/hud/StatDisplay.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAIjD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,sCAAsC;IACtC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,kDAAkD;IAClD,GAAG,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,gEAAgE;IAChE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CACrC;AAYD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,KAAkC,EAClC,IAAI,EAAE,IAAI,EACV,IAAW,EACX,GAAG,EACH,IAAY,EACZ,KAAc,GACf,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAsEhC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
2
|
+
// ---- Size map -------------------------------------------------------------
|
|
3
|
+
const SIZES = {
|
|
4
|
+
sm: { label: '0.6rem', value: '0.85rem' },
|
|
5
|
+
md: { label: '0.7rem', value: '1.1rem' },
|
|
6
|
+
lg: { label: '0.8rem', value: '1.4rem' },
|
|
7
|
+
};
|
|
8
|
+
// ---- Component ------------------------------------------------------------
|
|
9
|
+
/**
|
|
10
|
+
* Compact label + value display for HUDs. Covers ~80% of game stat widgets.
|
|
11
|
+
*
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <StatDisplay label="SYNC" value="87.2%" color="#FF6A00" glow />
|
|
14
|
+
* <StatDisplay label="WAVE" value={wave} bar={{ current: wave, max: 10 }} />
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export function StatDisplay({ label, value, color = 'var(--joydle-text, #fff)', icon: Icon, size = 'md', bar, glow = false, align = 'left', }) {
|
|
18
|
+
const s = SIZES[size] ?? SIZES.md;
|
|
19
|
+
const shadow = glow ? `0 0 8px ${color}` : 'none';
|
|
20
|
+
const barPct = bar ? Math.max(0, Math.min(1, bar.current / Math.max(1, bar.max))) * 100 : 0;
|
|
21
|
+
return (_jsxs("div", { class: "joydle-stat-display", style: {
|
|
22
|
+
display: 'inline-flex',
|
|
23
|
+
flexDirection: 'column',
|
|
24
|
+
alignItems: align === 'center' ? 'center' : align === 'right' ? 'flex-end' : 'flex-start',
|
|
25
|
+
gap: 2,
|
|
26
|
+
userSelect: 'none',
|
|
27
|
+
}, children: [_jsx("span", { style: {
|
|
28
|
+
fontSize: s.label,
|
|
29
|
+
letterSpacing: '0.08em',
|
|
30
|
+
color: 'var(--joydle-text-dim, rgba(255,255,255,0.4))',
|
|
31
|
+
textTransform: 'uppercase',
|
|
32
|
+
lineHeight: 1,
|
|
33
|
+
}, children: label }), _jsxs("span", { style: {
|
|
34
|
+
display: 'inline-flex',
|
|
35
|
+
alignItems: 'center',
|
|
36
|
+
gap: 4,
|
|
37
|
+
fontSize: s.value,
|
|
38
|
+
fontWeight: 700,
|
|
39
|
+
color,
|
|
40
|
+
textShadow: shadow,
|
|
41
|
+
lineHeight: 1,
|
|
42
|
+
}, children: [Icon && (_jsx(Icon, { size: parseInt(s.value) * 1.1, color: color })), value] }), bar && (_jsx("div", { style: {
|
|
43
|
+
width: '100%',
|
|
44
|
+
height: 3,
|
|
45
|
+
background: 'rgba(255,255,255,0.1)',
|
|
46
|
+
borderRadius: 2,
|
|
47
|
+
overflow: 'hidden',
|
|
48
|
+
}, children: _jsx("div", { style: {
|
|
49
|
+
width: `${barPct}%`,
|
|
50
|
+
height: '100%',
|
|
51
|
+
background: color,
|
|
52
|
+
boxShadow: glow ? `0 0 4px ${color}` : 'none',
|
|
53
|
+
transition: 'width 0.2s ease',
|
|
54
|
+
} }) }))] }));
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=StatDisplay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatDisplay.js","sourceRoot":"","sources":["../../src/hud/StatDisplay.tsx"],"names":[],"mappings":";AAyBA,8EAA8E;AAE9E,MAAM,KAAK,GAAqD;IAC9D,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;IACzC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;IACxC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;CACzC,CAAC;AAEF,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,KAAK,GAAG,0BAA0B,EAClC,IAAI,EAAE,IAAI,EACV,IAAI,GAAG,IAAI,EACX,GAAG,EACH,IAAI,GAAG,KAAK,EACZ,KAAK,GAAG,MAAM,GACG;IACjB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5F,OAAO,CACL,eACE,KAAK,EAAC,qBAAqB,EAC3B,KAAK,EAAE;YACL,OAAO,EAAE,aAAa;YACtB,aAAa,EAAE,QAAQ;YACvB,UAAU,EACR,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;YAC/E,GAAG,EAAE,CAAC;YACN,UAAU,EAAE,MAAM;SACnB,aAED,eACE,KAAK,EAAE;oBACL,QAAQ,EAAE,CAAC,CAAC,KAAK;oBACjB,aAAa,EAAE,QAAQ;oBACvB,KAAK,EAAE,+CAA+C;oBACtD,aAAa,EAAE,WAAW;oBAC1B,UAAU,EAAE,CAAC;iBACd,YAEA,KAAK,GACD,EAEP,gBACE,KAAK,EAAE;oBACL,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,QAAQ;oBACpB,GAAG,EAAE,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAC,KAAK;oBACjB,UAAU,EAAE,GAAG;oBACf,KAAK;oBACL,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,CAAC;iBACd,aAEA,IAAI,IAAI,CACP,KAAC,IAAI,IAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,GAAI,CACtD,EACA,KAAK,IACD,EAEN,GAAG,IAAI,CACN,cACE,KAAK,EAAE;oBACL,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,CAAC;oBACT,UAAU,EAAE,uBAAuB;oBACnC,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,QAAQ;iBACnB,YAED,cACE,KAAK,EAAE;wBACL,KAAK,EAAE,GAAG,MAAM,GAAG;wBACnB,MAAM,EAAE,MAAM;wBACd,UAAU,EAAE,KAAK;wBACjB,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM;wBAC7C,UAAU,EAAE,iBAAiB;qBAC9B,GACD,GACE,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
package/dist/hud/Timer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../src/hud/Timer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../src/hud/Timer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAKlC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,GAAG,CAAC;AAEjD,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAsCD;;;;;;;;GAQG;AACH,wBAAgB,KAAK,CAAC,EACpB,OAAO,EACP,MAAe,EACf,OAAO,GACR,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAiE1B"}
|
package/dist/hud/Timer.js
CHANGED
|
@@ -3,15 +3,7 @@ import { jsx as _jsx } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Countdown / elapsed timer with GSAP pulse-red warning
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Formatters -----------------------------------------------------------
|
|
16
8
|
function formatTime(seconds, format) {
|
|
17
9
|
const total = Math.max(0, Math.floor(seconds));
|
package/dist/hud/Timer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timer.js","sourceRoot":"","sources":["../../src/hud/Timer.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,sEAAsE;AACtE,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Timer.js","sourceRoot":"","sources":["../../src/hud/Timer.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,sEAAsE;AACtE,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAerC,8EAA8E;AAE9E,SAAS,UAAU,CAAC,OAAe,EAAE,MAAmB;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,GAAG;YACN,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QACvE,CAAC;QACD,KAAK,MAAM,CAAC;QACZ,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAE9E,MAAM,WAAW,GAAoC;IACnD,UAAU,EAAE,WAAW;IACvB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE,QAAQ;IACpB,KAAK,EAAE,6BAA6B;CACrC,CAAC;AAEF,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,KAAK,CAAC,EACpB,OAAO,EACP,MAAM,GAAG,MAAM,EACf,OAAO,GACI;IACX,MAAM,KAAK,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACnC,MAAM,aAAa,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC;IAE7E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QAEvB,IAAI,SAAS,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YACxC,eAAe;YACf,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,QAAQ,CAAC,OAAO;oBAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAE9C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC7B,OAAO,EAAE,GAAG;oBACZ,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,cAAc;oBACpB,MAAM,EAAE,CAAC,CAAC;oBACV,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;YACL,CAAC;YAED,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QAC/B,CAAC;aAAM,IAAI,CAAC,SAAS,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC/C,0BAA0B;YAC1B,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACxB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,CAAC;YACD,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YACzB,CAAC;YACD,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,sBAAsB;IACtB,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACxB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,KAAK,GAAoC;QAC7C,GAAG,WAAW;QACd,KAAK,EAAE,SAAS;YACd,CAAC,CAAC,+BAA+B;YACjC,CAAC,CAAC,6BAA6B;KAClC,CAAC;IAEF,OAAO,CACL,eAAM,GAAG,EAAE,KAAK,EAAE,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,KAAK,YAChD,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,GACvB,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaveLabel.d.ts","sourceRoot":"","sources":["../../src/hud/WaveLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"WaveLabel.d.ts","sourceRoot":"","sources":["../../src/hud/WaveLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAKlC,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf;AAeD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,GAAG,GAAG,CAAC,OAAO,CAiDhE"}
|
package/dist/hud/WaveLabel.js
CHANGED
|
@@ -3,15 +3,7 @@ import { jsx as _jsx } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Wave / round label with GSAP slide-in on change
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Styles ---------------------------------------------------------------
|
|
16
8
|
const LABEL_STYLE = {
|
|
17
9
|
color: 'var(--joydle-primary, #00f5ff)',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaveLabel.js","sourceRoot":"","sources":["../../src/hud/WaveLabel.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,gEAAgE;AAChE,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"WaveLabel.js","sourceRoot":"","sources":["../../src/hud/WaveLabel.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,gEAAgE;AAChE,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AASrC,8EAA8E;AAE9E,MAAM,WAAW,GAAoC;IACnD,KAAK,EAAE,gCAAgC;IACvC,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEF,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAkB;IACjD,MAAM,KAAK,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAS,KAAK,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,wDAAwD;QACxD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAC5B,EAAE,EACF,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EACtB;YACE,CAAC,EAAE,CAAC;YACJ,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,GAAG;YACb,IAAI,EAAE,YAAY;YAClB,UAAU;gBACR,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,CAAC;SACF,CACF,CAAC;QAEF,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;IAC1B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,sBAAsB;IACtB,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACxB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,eAAM,GAAG,EAAE,KAAK,EAAE,KAAK,EAAC,aAAa,EAAC,KAAK,EAAE,WAAW,YACrD,KAAK,GACD,CACR,CAAC;AACJ,CAAC"}
|
package/dist/hud/index.d.ts
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
export { HUD, type HUDProps } from './HUD.js';
|
|
2
|
-
export { Score, type ScoreProps } from './Score.js';
|
|
3
|
-
export { Lives, type LivesProps, type LivesIcon } from './Lives.js';
|
|
4
|
-
export { Meter, type MeterProps } from './Meter.js';
|
|
2
|
+
export { Score, type ScoreProps, type ScoreIconProp } from './Score.js';
|
|
3
|
+
export { Lives, type LivesProps, type LivesIcon, type LivesIconProp } from './Lives.js';
|
|
4
|
+
export { Meter, type MeterProps, type MeterIconProp } from './Meter.js';
|
|
5
5
|
export { ComboLabel, type ComboLabelProps } from './ComboLabel.js';
|
|
6
6
|
export { WaveLabel, type WaveLabelProps } from './WaveLabel.js';
|
|
7
7
|
export { Timer, type TimerProps, type TimerFormat } from './Timer.js';
|
|
8
8
|
export { MiniMap, type MiniMapProps, type MiniMapEntity, type MiniMapBounds, } from './MiniMap.js';
|
|
9
9
|
export { BottomHint, type BottomHintProps } from './BottomHint.js';
|
|
10
|
+
export { StatDisplay, type StatDisplayProps } from './StatDisplay.js';
|
|
11
|
+
export { Crosshair, type CrosshairProps, type CrosshairStyle } from './Crosshair.js';
|
|
12
|
+
export { EntityLabel, type EntityLabelProps, type EntityLabelEntity } from './EntityLabel.js';
|
|
13
|
+
export { ResourceDisplay, type ResourceDisplayProps } from './ResourceDisplay.js';
|
|
14
|
+
export { FloatingNumbers, type FloatingNumbersProps, type FloatNum, useFloatingNumbers, } from './FloatingNumbers.js';
|
|
10
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/hud/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EACL,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACL,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
|
package/dist/hud/index.js
CHANGED
|
@@ -10,4 +10,9 @@ export { WaveLabel } from './WaveLabel.js';
|
|
|
10
10
|
export { Timer } from './Timer.js';
|
|
11
11
|
export { MiniMap, } from './MiniMap.js';
|
|
12
12
|
export { BottomHint } from './BottomHint.js';
|
|
13
|
+
export { StatDisplay } from './StatDisplay.js';
|
|
14
|
+
export { Crosshair } from './Crosshair.js';
|
|
15
|
+
export { EntityLabel } from './EntityLabel.js';
|
|
16
|
+
export { ResourceDisplay } from './ResourceDisplay.js';
|
|
17
|
+
export { FloatingNumbers, useFloatingNumbers, } from './FloatingNumbers.js';
|
|
13
18
|
//# sourceMappingURL=index.js.map
|
package/dist/hud/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAuC,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,KAAK,EAAuD,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,KAAK,EAAuC,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAqC,MAAM,YAAY,CAAC;AACtE,OAAO,EACL,OAAO,GAIR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAyB,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,SAAS,EAA4C,MAAM,gBAAgB,CAAC;AACrF,OAAO,EAAE,WAAW,EAAiD,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACL,eAAe,EAGf,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAIjC,OAAO,EAAE,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,gBAAgB,IAAI,yBAAyB,EAAE,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// ---------------------------------------------------------------------------
|
|
2
2
|
// @joydle/ui — main barrel
|
|
3
3
|
// ---------------------------------------------------------------------------
|
|
4
|
+
// Dependency injection
|
|
5
|
+
export { configure } from './deps';
|
|
4
6
|
export * from './core/index';
|
|
5
7
|
export * from './theme/index';
|
|
6
8
|
export * from './hud/index';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAEjC,gEAAgE;AAChE,oDAAoD;AACpD,OAAO,EAAE,iBAAiB,EAA+C,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,gBAAgB,IAAI,yBAAyB,EAA8B,MAAM,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,uBAAuB;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAEjC,gEAAgE;AAChE,oDAAoD;AACpD,OAAO,EAAE,iBAAiB,EAA+C,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,gBAAgB,IAAI,yBAAyB,EAA8B,MAAM,gCAAgC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameOverScreen.d.ts","sourceRoot":"","sources":["../../src/screens/GameOverScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"GameOverScreen.d.ts","sourceRoot":"","sources":["../../src/screens/GameOverScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAmIlC,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IAClC,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAyHD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAmB,EACnB,UAAyB,EACzB,KAAW,EACX,QAAoB,EACpB,MAAM,EAAE,OAAO,GAChB,EAAE,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAgGnC"}
|
|
@@ -3,15 +3,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Game over screen with score countup and cascade entrance
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { ScreenFrame } from './primitives.js';
|
|
7
|
+
import { getGsap } from '../deps.js';
|
|
15
8
|
// ---- Style injection ------------------------------------------------------
|
|
16
9
|
const GAME_OVER_CSS = `
|
|
17
10
|
.joydle-gameover {
|
|
@@ -250,6 +243,6 @@ export function GameOverScreen({ score, metrics, bestScore, onRetry, title = 'GA
|
|
|
250
243
|
};
|
|
251
244
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
252
245
|
}, [entrance, delay, score]);
|
|
253
|
-
return (_jsxs(
|
|
246
|
+
return (_jsxs(ScreenFrame, { screen: _screen, children: [_jsx("div", { class: "joydle-gameover__backdrop" }), _jsxs("div", { class: "joydle-gameover__content", ref: overlayRef, children: [_jsx("h1", { class: "joydle-gameover__title", ref: titleRef, children: title }), _jsx("div", { class: "joydle-gameover__score", ref: scoreRef, children: "0" }), isNewBest && (_jsx("div", { class: "joydle-gameover__new-best", ref: newBestRef, children: "NEW BEST!" })), showBest && (_jsxs("p", { class: "joydle-gameover__best", ref: bestRef, children: ["BEST: ", bestScore.toLocaleString()] })), metrics && metrics.length > 0 && (_jsx("div", { class: "joydle-gameover__metrics", ref: metricsRef, children: metrics.map((m, i) => (_jsx("span", { class: "joydle-gameover__metric", children: m }, i))) })), _jsx("button", { class: "joydle-gameover__retry-btn", ref: buttonRef, onClick: onRetry, type: "button", children: retryLabel })] })] }));
|
|
254
247
|
}
|
|
255
248
|
//# sourceMappingURL=GameOverScreen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameOverScreen.js","sourceRoot":"","sources":["../../src/screens/GameOverScreen.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,yEAAyE;AACzE,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"GameOverScreen.js","sourceRoot":"","sources":["../../src/screens/GameOverScreen.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingScreen.d.ts","sourceRoot":"","sources":["../../src/screens/LoadingScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"LoadingScreen.d.ts","sourceRoot":"","sources":["../../src/screens/LoadingScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAwFlC,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,KAAoB,EACpB,MAAM,EAAE,OAAO,GAChB,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAuClC"}
|
|
@@ -3,15 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Loading screen with animated progress bar
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Style injection ------------------------------------------------------
|
|
16
8
|
const LOADING_CSS = `
|
|
17
9
|
.joydle-loading {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingScreen.js","sourceRoot":"","sources":["../../src/screens/LoadingScreen.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"LoadingScreen.js","sourceRoot":"","sources":["../../src/screens/LoadingScreen.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,8EAA8E;AAE9E,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEnB,CAAC;AAEF,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,SAAS,WAAW;IAClB,IAAI,aAAa;QAAE,OAAO;IAC1B,aAAa,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3C,EAAE,CAAC,WAAW,GAAG,WAAW,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAaD,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,QAAQ,EACR,KAAK,GAAG,YAAY,EACpB,MAAM,EAAE,OAAO,GACI;IACnB,WAAW,EAAE,CAAC;IAEd,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAElD,4BAA4B;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;IAEtC,gBAAgB;IAChB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3B,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAElF,OAAO,GAAG,EAAE;YACV,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,eAAK,KAAK,EAAC,gBAAgB,EAAC,GAAG,EAAE,YAAY,aAC3C,YAAG,KAAK,EAAC,uBAAuB,YAAE,KAAK,GAAK,EAE5C,cAAK,KAAK,EAAC,2BAA2B,YACpC,cACE,KAAK,EAAC,0BAA0B,EAChC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,GAC3B,GACE,EAEN,aAAG,KAAK,EAAC,yBAAyB,aAAE,GAAG,SAAM,IACzC,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LobbyScreen.d.ts","sourceRoot":"","sources":["../../src/screens/LobbyScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"LobbyScreen.d.ts","sourceRoot":"","sources":["../../src/screens/LobbyScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAoNlC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,SAAS,EACT,OAAO,EACP,OAAO,EACP,UAAU,EACV,MAAM,EAAE,OAAO,GAChB,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CA0FhC"}
|
|
@@ -3,15 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Multiplayer lobby screen
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Style injection ------------------------------------------------------
|
|
16
8
|
const LOBBY_CSS = `
|
|
17
9
|
.joydle-lobby {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LobbyScreen.js","sourceRoot":"","sources":["../../src/screens/LobbyScreen.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"LobbyScreen.js","sourceRoot":"","sources":["../../src/screens/LobbyScreen.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PauseOverlay.d.ts","sourceRoot":"","sources":["../../src/screens/PauseOverlay.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"PauseOverlay.d.ts","sourceRoot":"","sources":["../../src/screens/PauseOverlay.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAqGlC,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAmB,EACnB,SAAS,EACT,MAAM,EAAE,OAAO,GAChB,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA+DjC"}
|
|
@@ -3,15 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Pause overlay with blur backdrop
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
function getGsap() {
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { getGsap } from '../deps.js';
|
|
15
7
|
// ---- Style injection ------------------------------------------------------
|
|
16
8
|
const PAUSE_CSS = `
|
|
17
9
|
.joydle-pause {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PauseOverlay.js","sourceRoot":"","sources":["../../src/screens/PauseOverlay.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,iDAAiD;AACjD,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"PauseOverlay.js","sourceRoot":"","sources":["../../src/screens/PauseOverlay.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,iDAAiD;AACjD,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,8EAA8E;AAE9E,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmFjB,CAAC;AAEF,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,SAAS,WAAW;IAClB,IAAI,aAAa;QAAE,OAAO;IAC1B,aAAa,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3C,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAeD,8EAA8E;AAE9E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,GAAG,KAAK,EACnB,SAAS,EACT,MAAM,EAAE,OAAO,GACG;IAClB,WAAW,EAAE,CAAC;IAEd,MAAM,UAAU,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEhD,gBAAgB;IAChB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3B,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAElF,OAAO,GAAG,EAAE;YACV,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,kBAAkB;IAClB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,SAAS,GAAG,CAAC,CAAgB,EAAE,EAAE;YACrC,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACvB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChD,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,eAAK,KAAK,EAAC,cAAc,EAAC,GAAG,EAAE,UAAU,aACvC,aAAI,KAAK,EAAC,qBAAqB,uBAAY,EAE3C,eAAK,KAAK,EAAC,uBAAuB,aAChC,iBACE,KAAK,EAAC,6CAA6C,EACnD,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAC,QAAQ,uBAGN,EAER,WAAW,IAAI,SAAS,IAAI,CAC3B,iBACE,KAAK,EAAC,8CAA8C,EACpD,OAAO,EAAE,SAAS,EAClB,IAAI,EAAC,QAAQ,wBAGN,CACV,IACG,EAEN,YAAG,KAAK,EAAC,oBAAoB,oCAAwB,IACjD,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TitleScreen.d.ts","sourceRoot":"","sources":["../../src/screens/TitleScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"TitleScreen.d.ts","sourceRoot":"","sources":["../../src/screens/TitleScreen.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAkJrD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjE,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAAC;IAClC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,4DAA4D;IAC5D,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmJD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,SAAS,EACT,QAAoB,EACpB,cAAc,EACd,MAAM,EAAE,OAAO,GAChB,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CA6FhC"}
|
|
@@ -3,15 +3,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
|
|
|
3
3
|
// @joydle/ui — Title screen with GSAP entrance animations
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
5
5
|
import { useRef, useEffect } from 'preact/hooks';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
try {
|
|
9
|
-
return globalThis.gsap ?? require('gsap').default;
|
|
10
|
-
}
|
|
11
|
-
catch {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
6
|
+
import { ScreenFrame } from './primitives.js';
|
|
7
|
+
import { getGsap } from '../deps.js';
|
|
15
8
|
// ---- Style injection ------------------------------------------------------
|
|
16
9
|
const TITLE_SCREEN_CSS = `
|
|
17
10
|
.joydle-title-screen {
|
|
@@ -258,6 +251,6 @@ export function TitleScreen({ title, subtitle, hint, onPlay, bestScore, entrance
|
|
|
258
251
|
};
|
|
259
252
|
}, [entrance]);
|
|
260
253
|
const showBest = bestScore != null && bestScore > 0;
|
|
261
|
-
return (_jsxs(
|
|
254
|
+
return (_jsxs(ScreenFrame, { screen: _screen, onKeyStart: ['Space', 'Enter'], onStart: onPlay, children: [backgroundSlot && (_jsx("div", { class: "joydle-title-screen__bg-slot", children: backgroundSlot })), _jsx("div", { class: "joydle-title-screen__backdrop" }), _jsxs("div", { class: "joydle-title-screen__content", ref: overlayRef, children: [_jsx("h1", { class: "joydle-title-screen__title", ref: titleRef, children: title }), subtitle && (_jsx("p", { class: "joydle-title-screen__subtitle", ref: subtitleRef, children: subtitle })), showBest && (_jsxs("p", { class: "joydle-title-screen__best", ref: bestRef, children: ["BEST: ", bestScore.toLocaleString()] })), _jsx("button", { class: "joydle-title-screen__play-btn joydle-screen-btn", ref: buttonRef, onClick: onPlay, type: "button", children: "PLAY" }), hint && (_jsx("p", { class: "joydle-title-screen__hint", ref: hintRef, children: hint }))] })] }));
|
|
262
255
|
}
|
|
263
256
|
//# sourceMappingURL=TitleScreen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TitleScreen.js","sourceRoot":"","sources":["../../src/screens/TitleScreen.tsx"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,2DAA2D;AAC3D,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"TitleScreen.js","sourceRoot":"","sources":["../../src/screens/TitleScreen.tsx"],"names":[],"mappings":"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"}
|
package/dist/screens/index.d.ts
CHANGED
|
@@ -4,4 +4,5 @@ export { GameOverScreen, type GameOverScreenProps, type GameOverEntrance } from
|
|
|
4
4
|
export { PauseOverlay, type PauseOverlayProps } from './PauseOverlay';
|
|
5
5
|
export { LoadingScreen, type LoadingScreenProps } from './LoadingScreen';
|
|
6
6
|
export { LobbyScreen, type LobbyScreenProps, type LobbyPlayer } from './LobbyScreen';
|
|
7
|
+
export { ScreenFrame, type ScreenFrameProps, ScreenTitle, type ScreenTitleProps, ScreenButton, type ScreenButtonProps, ScreenHint, type ScreenHintProps, ScreenDivider, type ScreenDividerProps, ScreenMetrics, type ScreenMetricsProps } from './primitives.js';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/screens/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/screens/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/screens/index.js
CHANGED
|
@@ -7,4 +7,5 @@ export { GameOverScreen } from './GameOverScreen';
|
|
|
7
7
|
export { PauseOverlay } from './PauseOverlay';
|
|
8
8
|
export { LoadingScreen } from './LoadingScreen';
|
|
9
9
|
export { LobbyScreen } from './LobbyScreen';
|
|
10
|
+
export { ScreenFrame, ScreenTitle, ScreenButton, ScreenHint, ScreenDivider, ScreenMetrics } from './primitives.js';
|
|
10
11
|
//# sourceMappingURL=index.js.map
|