hudini 0.1.0 → 0.2.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.
@@ -0,0 +1,27 @@
1
+ import { IconText, type IconKey } from 'font-awesome-for-phaser';
2
+ import { GameObjects, Scene } from 'phaser';
3
+ import { type ColorKey, type FontSizeKey } from 'phaser-wind';
4
+ export type IconButtonParams = {
5
+ scene: Scene;
6
+ x: number;
7
+ y: number;
8
+ icon: IconKey;
9
+ size?: FontSizeKey | number;
10
+ color?: Omit<ColorKey, 'black' | 'white'>;
11
+ onClick?: () => void;
12
+ };
13
+ export declare class IconButton extends GameObjects.Container {
14
+ backgroundSprite: GameObjects.Sprite;
15
+ shadowSprite: GameObjects.Sprite;
16
+ iconText: IconText;
17
+ private pw;
18
+ constructor({ scene, x, y, icon, size, color, onClick }: IconButtonParams);
19
+ private createShadowSprite;
20
+ private createShadowTexture;
21
+ private createBackgroundSprite;
22
+ private createBackgroundTexture;
23
+ private createIconText;
24
+ private setupContainer;
25
+ private setupInteractivity;
26
+ }
27
+ //# sourceMappingURL=icon-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/icon-button/icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAkBF,qBAAa,UAAW,SAAQ,WAAW,CAAC,SAAS;IAC5C,gBAAgB,EAAG,WAAW,CAAC,MAAM,CAAC;IACtC,YAAY,EAAG,WAAW,CAAC,MAAM,CAAC;IAClC,QAAQ,EAAG,QAAQ,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAuB;gBAErB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,gBAAgB;IAiBzE,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,uBAAuB;IAsB/B,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;CAwC3B"}
@@ -0,0 +1,131 @@
1
+ import { IconText } from 'font-awesome-for-phaser';
2
+ import { GameObjects } from 'phaser';
3
+ import { Color, } from 'phaser-wind';
4
+ import { getPWFromScene } from '../../utils/get-pw-from-scene';
5
+ const durations = {
6
+ click: 100,
7
+ hover: 150,
8
+ };
9
+ const BUTTON_SCALE = 2.2;
10
+ const CENTER_OFFSET = 1.1;
11
+ const SHADOW_OFFSET = 4;
12
+ const SHADOW_OPACITY = 0.1;
13
+ const MAIN_SHADOW_OPACITY = 0.9;
14
+ const INNER_OVERLAY_OPACITY = 0.7;
15
+ const HOVER_SCALE = 1.07;
16
+ const CLICK_OFFSET = 2;
17
+ const MAIN_OVERLAY_SCALE = 0.9;
18
+ const INNER_OVERLAY_SCALE = 0.7;
19
+ export class IconButton extends GameObjects.Container {
20
+ backgroundSprite;
21
+ shadowSprite;
22
+ iconText;
23
+ pw;
24
+ constructor({ scene, x, y, icon, size, color, onClick }) {
25
+ super(scene, x, y);
26
+ this.pw = getPWFromScene(scene);
27
+ const sizePx = typeof size === 'number'
28
+ ? size
29
+ : this.pw.fontSize.px(size ?? 'md');
30
+ const baseColor = color ?? 'gray';
31
+ this.createShadowSprite(scene, sizePx, baseColor);
32
+ this.createBackgroundSprite(scene, sizePx, baseColor);
33
+ this.createIconText(scene, icon, sizePx, baseColor);
34
+ this.setupContainer();
35
+ this.setupInteractivity(onClick);
36
+ }
37
+ createShadowSprite(scene, size, baseColor) {
38
+ const shadowTexture = this.createShadowTexture(scene, size, baseColor);
39
+ this.shadowSprite = scene.add.sprite(1, SHADOW_OFFSET, shadowTexture);
40
+ this.shadowSprite.setOrigin(0.5, 0.5);
41
+ }
42
+ createShadowTexture(scene, size, baseColor) {
43
+ const textureKey = `iconButton_shadow_${baseColor}_${size}`;
44
+ const textureSize = size * BUTTON_SCALE;
45
+ const centerX = size * CENTER_OFFSET;
46
+ const centerY = size * CENTER_OFFSET;
47
+ const graphics = scene.add.graphics();
48
+ graphics.fillStyle(Color.hex('black'), SHADOW_OPACITY);
49
+ graphics.fillCircle(centerX + 1, centerY, size * CENTER_OFFSET);
50
+ graphics.fillStyle(Color.hex(`${baseColor}-900`), MAIN_SHADOW_OPACITY);
51
+ graphics.fillCircle(centerX, centerY - CLICK_OFFSET, size);
52
+ graphics.generateTexture(textureKey, textureSize, textureSize);
53
+ graphics.destroy();
54
+ return textureKey;
55
+ }
56
+ createBackgroundSprite(scene, size, baseColor) {
57
+ const backgroundTexture = this.createBackgroundTexture(scene, size, baseColor);
58
+ this.backgroundSprite = scene.add.sprite(1, 0, backgroundTexture);
59
+ this.backgroundSprite.setOrigin(0.5, 0.5);
60
+ }
61
+ createBackgroundTexture(scene, size, baseColor) {
62
+ const textureKey = `iconButton_${baseColor}_${size}`;
63
+ const textureSize = size * BUTTON_SCALE;
64
+ const centerX = size * CENTER_OFFSET;
65
+ const centerY = size * CENTER_OFFSET;
66
+ const graphics = scene.add.graphics();
67
+ graphics.fillStyle(Color.hex(`${baseColor}-600`), 1);
68
+ graphics.fillCircle(centerX, centerY, size * MAIN_OVERLAY_SCALE);
69
+ graphics.fillStyle(Color.hex(`${baseColor}-500`), INNER_OVERLAY_OPACITY);
70
+ graphics.fillCircle(centerX, centerY, size * INNER_OVERLAY_SCALE);
71
+ graphics.generateTexture(textureKey, textureSize, textureSize);
72
+ graphics.destroy();
73
+ return textureKey;
74
+ }
75
+ createIconText(scene, icon, size, baseColor) {
76
+ this.iconText = new IconText({
77
+ scene,
78
+ x: 1,
79
+ y: 1,
80
+ icon,
81
+ size,
82
+ style: {
83
+ color: Color.rgb('white'),
84
+ strokeThickness: 3,
85
+ stroke: Color.rgb(`${baseColor}-900`),
86
+ },
87
+ });
88
+ this.iconText.setFontStyle('900');
89
+ this.iconText.setOrigin(0.5, 0.5);
90
+ }
91
+ setupContainer() {
92
+ this.add([this.shadowSprite, this.backgroundSprite, this.iconText]);
93
+ }
94
+ setupInteractivity(onClick) {
95
+ this.backgroundSprite.setInteractive({ useHandCursor: true });
96
+ this.backgroundSprite.on('pointerover', () => {
97
+ this.scene.tweens.add({
98
+ targets: this.iconText,
99
+ scale: HOVER_SCALE,
100
+ duration: durations.hover,
101
+ ease: 'Linear',
102
+ });
103
+ });
104
+ this.backgroundSprite.on('pointerout', () => {
105
+ this.scene.tweens.add({
106
+ targets: this.iconText,
107
+ scale: 1,
108
+ duration: durations.hover,
109
+ ease: 'Linear',
110
+ });
111
+ });
112
+ this.backgroundSprite.on('pointerdown', () => {
113
+ this.scene.tweens.add({
114
+ targets: [this.backgroundSprite, this.iconText],
115
+ y: CLICK_OFFSET,
116
+ duration: durations.click,
117
+ ease: 'Linear',
118
+ });
119
+ });
120
+ this.backgroundSprite.on('pointerup', () => {
121
+ this.scene.tweens.add({
122
+ targets: [this.backgroundSprite, this.iconText],
123
+ y: 0,
124
+ duration: durations.click,
125
+ ease: 'Linear',
126
+ });
127
+ onClick?.();
128
+ });
129
+ }
130
+ }
131
+ //# sourceMappingURL=icon-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button.js","sourceRoot":"","sources":["../../../src/components/icon-button/icon-button.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './icon-button';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/icon-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './icon-button';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/icon-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './icon-button';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './icon-button';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
+ export * from './components';
1
2
  export * from './exports-phaser-wind';
2
3
  export * from './plugin';
3
4
  export * from './scene';
5
+ export * from './utils';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,6 @@
1
+ export * from './components';
1
2
  export * from './exports-phaser-wind';
2
3
  export * from './plugin';
3
4
  export * from './scene';
5
+ export * from './utils';
4
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Scene } from 'phaser';
2
+ import { PhaserWindPlugin } from 'phaser-wind';
3
+ export declare const getPWFromScene: (scene: Scene) => PhaserWindPlugin<{}>;
4
+ //# sourceMappingURL=get-pw-from-scene.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-pw-from-scene.d.ts","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAuB,MAAM,aAAa,CAAC;AAEpE,eAAO,MAAM,cAAc,GAAI,OAAO,KAAK,KAAG,gBAAgB,CAAC,EAAE,CAEhE,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const getPWFromScene = (scene) => {
2
+ return scene.pw;
3
+ };
4
+ //# sourceMappingURL=get-pw-from-scene.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-pw-from-scene.js","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAwB,EAAE;IACnE,OAAQ,KAA4C,CAAC,EAAE,CAAC;AAC1D,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './get-pw-from-scene';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './get-pw-from-scene';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hudini",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "🎩 Magical Phaser UI components - Reusable HUD elements for game development. Is magic, like a wizard",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -40,24 +40,25 @@
40
40
  "devDependencies": {
41
41
  "@eslint-recommended/eslint-config": "^28.0.0",
42
42
  "@types/node": "^24.2.1",
43
- "@typescript-eslint/eslint-plugin": "^7.0.0",
44
- "@typescript-eslint/parser": "^6.15.0",
43
+ "@typescript-eslint/eslint-plugin": "^8.39.1",
44
+ "@typescript-eslint/parser": "^7.0.0",
45
45
  "eslint": "^8.55.0",
46
- "eslint-config-prettier": "^9.1.0",
46
+ "eslint-config-prettier": "^10.1.8",
47
+ "eslint-import-resolver-typescript": "^3.6.1",
47
48
  "eslint-plugin-import": "^2.29.1",
48
49
  "eslint-plugin-node": "^11.1.0",
49
50
  "eslint-plugin-prefer-arrow": "^1.2.3",
50
- "eslint-plugin-promise": "^6.1.1",
51
+ "eslint-plugin-promise": "^7.2.1",
51
52
  "eslint-plugin-security": "^1.7.1",
52
- "eslint-plugin-sonarjs": "^0.23.0",
53
+ "eslint-plugin-sonarjs": "^3.0.4",
53
54
  "eslint-plugin-unicorn": "^50.0.1",
54
55
  "tsx": "^4.20.3",
55
56
  "typescript": "^5.3.0",
56
57
  "vitest": "^3.2.4"
57
58
  },
58
59
  "dependencies": {
59
- "phaser-wind": "*",
60
- "font-awesome-for-phaser": "*"
60
+ "phaser-wind": "0.5.1",
61
+ "font-awesome-for-phaser": "0.5.0"
61
62
  },
62
63
  "peerDependencies": {
63
64
  "phaser": "*"
@@ -66,7 +67,7 @@
66
67
  "access": "public"
67
68
  },
68
69
  "scripts": {
69
- "build": "tsc --build",
70
+ "build": "tsc --build --force",
70
71
  "dev": "tsc --build --watch",
71
72
  "clean": "rm -rf dist",
72
73
  "test": "vitest run",