hudini 0.5.0 → 0.6.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.
Files changed (29) hide show
  1. package/dist/components/circular-progress/circular-progress.d.ts +59 -0
  2. package/dist/components/circular-progress/circular-progress.d.ts.map +1 -0
  3. package/dist/components/circular-progress/circular-progress.js +130 -0
  4. package/dist/components/circular-progress/circular-progress.js.map +1 -0
  5. package/dist/components/circular-progress/circular-progress.spec.d.ts +2 -0
  6. package/dist/components/circular-progress/circular-progress.spec.d.ts.map +1 -0
  7. package/dist/components/circular-progress/circular-progress.spec.js +185 -0
  8. package/dist/components/circular-progress/circular-progress.spec.js.map +1 -0
  9. package/dist/components/circular-progress/index.d.ts +2 -0
  10. package/dist/components/circular-progress/index.d.ts.map +1 -0
  11. package/dist/components/circular-progress/index.js +2 -0
  12. package/dist/components/circular-progress/index.js.map +1 -0
  13. package/dist/components/flat-icon-button/flat-icon-button.d.ts +45 -0
  14. package/dist/components/flat-icon-button/flat-icon-button.d.ts.map +1 -0
  15. package/dist/components/flat-icon-button/flat-icon-button.js +152 -0
  16. package/dist/components/flat-icon-button/flat-icon-button.js.map +1 -0
  17. package/dist/components/flat-icon-button/index.d.ts +2 -0
  18. package/dist/components/flat-icon-button/index.d.ts.map +1 -0
  19. package/dist/components/flat-icon-button/index.js +2 -0
  20. package/dist/components/flat-icon-button/index.js.map +1 -0
  21. package/dist/components/icon-button/icon-button.d.ts +1 -0
  22. package/dist/components/icon-button/icon-button.d.ts.map +1 -1
  23. package/dist/components/icon-button/icon-button.js +10 -0
  24. package/dist/components/icon-button/icon-button.js.map +1 -1
  25. package/dist/components/index.d.ts +2 -0
  26. package/dist/components/index.d.ts.map +1 -1
  27. package/dist/components/index.js +2 -0
  28. package/dist/components/index.js.map +1 -1
  29. package/package.json +2 -2
@@ -0,0 +1,59 @@
1
+ import { IconText, type IconKey } from 'font-awesome-for-phaser';
2
+ import { GameObjects, Scene } from 'phaser';
3
+ import { ColorToken, type ColorKey, type FontSizeKey } from 'phaser-wind';
4
+ export type CircularProgressParams = {
5
+ scene: Scene;
6
+ x: number;
7
+ y: number;
8
+ icon?: IconKey;
9
+ size?: FontSizeKey | number;
10
+ color?: ColorKey;
11
+ rotationsPerSecond?: number;
12
+ };
13
+ export declare class CircularProgress extends GameObjects.Container {
14
+ iconText: IconText;
15
+ private pw;
16
+ private rotationSpeed;
17
+ private isSpinning;
18
+ constructor({ scene, x, y, icon, size, color, rotationsPerSecond }: CircularProgressParams);
19
+ /**
20
+ * Start the spinning animation
21
+ */
22
+ start(): this;
23
+ /**
24
+ * Stop the spinning animation
25
+ */
26
+ stop(): this;
27
+ /**
28
+ * Set the rotation speed
29
+ * @param speed - Rotations per second
30
+ */
31
+ setRotationsPerSecond(rotationsPerSecond: number): this;
32
+ /**
33
+ * Set the icon
34
+ * @param icon - Font Awesome icon key
35
+ */
36
+ setIcon(icon: IconKey): this;
37
+ /**
38
+ * Set the color
39
+ * @param color - Phaser Wind color token
40
+ */
41
+ setColor(color: ColorToken): this;
42
+ /**
43
+ * Set the size
44
+ * @param size - Font size key or pixel value
45
+ */
46
+ setSize(size: FontSizeKey | number): this;
47
+ /**
48
+ * Check if the spinner is currently spinning
49
+ */
50
+ get spinning(): boolean;
51
+ private createIconText;
52
+ private setupContainer;
53
+ private startSpinning;
54
+ /**
55
+ * Clean up the component
56
+ */
57
+ destroy(): void;
58
+ }
59
+ //# sourceMappingURL=circular-progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-progress.d.ts","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.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,EAEL,UAAU,EAEV,KAAK,QAAQ,EACb,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAOF,qBAAa,gBAAiB,SAAQ,WAAW,CAAC,SAAS;IAClD,QAAQ,EAAG,QAAQ,CAAC;IAE3B,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAiB;gBAEvB,EACV,KAAK,EACL,CAAC,EACD,CAAC,EACD,IAAmB,EACnB,IAAI,EACJ,KAAqB,EACrB,kBAAyC,EAC1C,EAAE,sBAAsB;IAczB;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;OAEG;IACI,IAAI,IAAI,IAAI;IAMnB;;;OAGG;IACI,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI;IAS9D;;;OAGG;IACI,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAKnC;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAOxC;;;OAGG;IACa,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IASzD;;OAEG;IACH,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAkBrB;;OAEG;IACa,OAAO,IAAI,IAAI;CAIhC"}
@@ -0,0 +1,130 @@
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 DEFAULT_ICON = 'spinner';
6
+ const DEFAULT_COLOR = 'blue';
7
+ const ROTATIONS_PER_SECOND = 2;
8
+ const ONE_SECOND = 1000;
9
+ export class CircularProgress extends GameObjects.Container {
10
+ iconText;
11
+ pw;
12
+ rotationSpeed;
13
+ isSpinning = true;
14
+ constructor({ scene, x, y, icon = DEFAULT_ICON, size, color = DEFAULT_COLOR, rotationsPerSecond = ROTATIONS_PER_SECOND }) {
15
+ super(scene, x, y);
16
+ this.pw = getPWFromScene(scene);
17
+ this.rotationSpeed = rotationsPerSecond;
18
+ const sizePx = typeof size === 'number'
19
+ ? size
20
+ : this.pw.fontSize.px(size ?? 'md');
21
+ this.createIconText(scene, icon, sizePx, color);
22
+ this.setupContainer();
23
+ this.startSpinning();
24
+ }
25
+ /**
26
+ * Start the spinning animation
27
+ */
28
+ start() {
29
+ if (!this.isSpinning) {
30
+ this.isSpinning = true;
31
+ this.startSpinning();
32
+ }
33
+ return this;
34
+ }
35
+ /**
36
+ * Stop the spinning animation
37
+ */
38
+ stop() {
39
+ this.isSpinning = false;
40
+ this.scene.tweens.killTweensOf(this.iconText);
41
+ return this;
42
+ }
43
+ /**
44
+ * Set the rotation speed
45
+ * @param speed - Rotations per second
46
+ */
47
+ setRotationsPerSecond(rotationsPerSecond) {
48
+ this.rotationSpeed = rotationsPerSecond;
49
+ if (this.isSpinning) {
50
+ this.scene.tweens.killTweensOf(this.iconText);
51
+ this.startSpinning();
52
+ }
53
+ return this;
54
+ }
55
+ /**
56
+ * Set the icon
57
+ * @param icon - Font Awesome icon key
58
+ */
59
+ setIcon(icon) {
60
+ this.iconText.setIcon(icon);
61
+ return this;
62
+ }
63
+ /**
64
+ * Set the color
65
+ * @param color - Phaser Wind color token
66
+ */
67
+ setColor(color) {
68
+ this.iconText.setStyle({
69
+ color: this.pw.color.rgb(color),
70
+ });
71
+ return this;
72
+ }
73
+ /**
74
+ * Set the size
75
+ * @param size - Font size key or pixel value
76
+ */
77
+ setSize(size) {
78
+ const sizePx = typeof size === 'number'
79
+ ? size
80
+ : this.pw.fontSize.px(size);
81
+ this.iconText.setFontSize(`${sizePx}px`);
82
+ return this;
83
+ }
84
+ /**
85
+ * Check if the spinner is currently spinning
86
+ */
87
+ get spinning() {
88
+ return this.isSpinning;
89
+ }
90
+ createIconText(scene, icon, size, color) {
91
+ this.iconText = new IconText({
92
+ scene,
93
+ x: 0,
94
+ y: 0,
95
+ icon,
96
+ size,
97
+ style: {
98
+ color: Color.rgb(color),
99
+ },
100
+ });
101
+ this.iconText.setOrigin(0.5, 0.5);
102
+ }
103
+ setupContainer() {
104
+ this.add([this.iconText]);
105
+ }
106
+ startSpinning() {
107
+ if (!this.isSpinning)
108
+ return;
109
+ const duration = ONE_SECOND / this.rotationSpeed;
110
+ this.scene.tweens.add({
111
+ targets: this.iconText,
112
+ rotation: Math.PI * 2,
113
+ duration,
114
+ ease: 'Linear',
115
+ repeat: -1,
116
+ onComplete: () => {
117
+ // Reset rotation to prevent accumulation
118
+ this.iconText.rotation = 0;
119
+ },
120
+ });
121
+ }
122
+ /**
123
+ * Clean up the component
124
+ */
125
+ destroy() {
126
+ this.stop();
127
+ super.destroy();
128
+ }
129
+ }
130
+ //# sourceMappingURL=circular-progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=circular-progress.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-progress.spec.d.ts","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,185 @@
1
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
2
+ // Mock dependencies
3
+ const mockTweens = {
4
+ add: vi.fn(),
5
+ killTweensOf: vi.fn(),
6
+ };
7
+ const mockScene = {
8
+ tweens: mockTweens,
9
+ };
10
+ vi.mock('phaser', () => ({
11
+ GameObjects: {
12
+ Container: class Container {
13
+ x;
14
+ y;
15
+ scene;
16
+ list = [];
17
+ constructor(scene, x, y) {
18
+ this.scene = scene;
19
+ this.x = x;
20
+ this.y = y;
21
+ }
22
+ add(children) {
23
+ this.list.push(...children);
24
+ return this;
25
+ }
26
+ destroy() {
27
+ // Mock destroy
28
+ }
29
+ },
30
+ },
31
+ }));
32
+ vi.mock('font-awesome-for-phaser', () => ({
33
+ IconText: class IconText {
34
+ params;
35
+ rotation = 0;
36
+ constructor(params) {
37
+ this.params = params;
38
+ }
39
+ setOrigin() { return this; }
40
+ setIcon() { return this; }
41
+ setStyle() { return this; }
42
+ setFontSize() { return this; }
43
+ },
44
+ }));
45
+ vi.mock('phaser-wind', () => ({
46
+ Color: {
47
+ rgb: vi.fn((color) => `rgb-${color}`),
48
+ },
49
+ }));
50
+ vi.mock('../../utils/get-pw-from-scene', () => ({
51
+ getPWFromScene: vi.fn(() => ({
52
+ color: {
53
+ rgb: vi.fn((color) => `rgb-${color}`),
54
+ },
55
+ fontSize: {
56
+ px: vi.fn((size) => {
57
+ const sizeMap = {
58
+ sm: 14,
59
+ md: 16,
60
+ lg: 18,
61
+ xl: 20,
62
+ };
63
+ return sizeMap[size] ?? 16;
64
+ }),
65
+ },
66
+ })),
67
+ }));
68
+ import { CircularProgress } from './circular-progress';
69
+ beforeEach(() => {
70
+ vi.clearAllMocks();
71
+ });
72
+ describe('CircularProgress', () => {
73
+ it('creates with default parameters', () => {
74
+ const progress = new CircularProgress({
75
+ scene: mockScene,
76
+ x: 100,
77
+ y: 200,
78
+ });
79
+ expect(progress.x).toBe(100);
80
+ expect(progress.y).toBe(200);
81
+ expect(progress.spinning).toBe(true);
82
+ expect(mockTweens.add).toHaveBeenCalled();
83
+ });
84
+ it('creates with custom parameters', () => {
85
+ const progress = new CircularProgress({
86
+ scene: mockScene,
87
+ x: 100,
88
+ y: 200,
89
+ icon: 'gear',
90
+ color: 'red',
91
+ size: 'lg',
92
+ rotationsPerSecond: 3,
93
+ });
94
+ expect(progress.spinning).toBe(true);
95
+ expect(mockTweens.add).toHaveBeenCalled();
96
+ });
97
+ it('can start and stop spinning', () => {
98
+ const progress = new CircularProgress({
99
+ scene: mockScene,
100
+ x: 100,
101
+ y: 200,
102
+ });
103
+ // Should start spinning by default
104
+ expect(progress.spinning).toBe(true);
105
+ // Stop spinning
106
+ progress.stop();
107
+ expect(progress.spinning).toBe(false);
108
+ expect(mockTweens.killTweensOf).toHaveBeenCalled();
109
+ // Start spinning again
110
+ vi.clearAllMocks();
111
+ progress.start();
112
+ expect(progress.spinning).toBe(true);
113
+ expect(mockTweens.add).toHaveBeenCalled();
114
+ });
115
+ it('can change speed', () => {
116
+ const progress = new CircularProgress({
117
+ scene: mockScene,
118
+ x: 100,
119
+ y: 200,
120
+ rotationsPerSecond: 1,
121
+ });
122
+ vi.clearAllMocks();
123
+ progress.setRotationsPerSecond(5);
124
+ // Should restart animation with new speed
125
+ expect(mockTweens.killTweensOf).toHaveBeenCalled();
126
+ expect(mockTweens.add).toHaveBeenCalled();
127
+ });
128
+ it('can change icon', () => {
129
+ const progress = new CircularProgress({
130
+ scene: mockScene,
131
+ x: 100,
132
+ y: 200,
133
+ });
134
+ const result = progress.setIcon('rotate');
135
+ expect(result).toBe(progress); // Should return this for chaining
136
+ });
137
+ it('can change color', () => {
138
+ const progress = new CircularProgress({
139
+ scene: mockScene,
140
+ x: 100,
141
+ y: 200,
142
+ });
143
+ const result = progress.setColor('green-500');
144
+ expect(result).toBe(progress); // Should return this for chaining
145
+ });
146
+ it('can change size', () => {
147
+ const progress = new CircularProgress({
148
+ scene: mockScene,
149
+ x: 100,
150
+ y: 200,
151
+ });
152
+ // Test with token
153
+ let result = progress.setSize('xl');
154
+ expect(result).toBe(progress);
155
+ // Test with pixel value
156
+ result = progress.setSize(32);
157
+ expect(result).toBe(progress);
158
+ });
159
+ it('cleans up properly on destroy', () => {
160
+ const progress = new CircularProgress({
161
+ scene: mockScene,
162
+ x: 100,
163
+ y: 200,
164
+ });
165
+ progress.destroy();
166
+ expect(progress.spinning).toBe(false);
167
+ expect(mockTweens.killTweensOf).toHaveBeenCalled();
168
+ });
169
+ it('supports method chaining', () => {
170
+ const progress = new CircularProgress({
171
+ scene: mockScene,
172
+ x: 100,
173
+ y: 200,
174
+ });
175
+ const result = progress
176
+ .setRotationsPerSecond(3)
177
+ .setIcon('gear')
178
+ .setColor('red-500')
179
+ .setSize('lg')
180
+ .stop()
181
+ .start();
182
+ expect(result).toBe(progress);
183
+ });
184
+ });
185
+ //# sourceMappingURL=circular-progress.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-progress.spec.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './circular-progress';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/circular-progress/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './circular-progress';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/circular-progress/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { IconText, type IconKey, type IconStyle } from 'font-awesome-for-phaser';
2
+ import { GameObjects, Scene } from 'phaser';
3
+ import { type ColorKey, type FontSizeKey } from 'phaser-wind';
4
+ export type FlatIconButtonParams = {
5
+ scene: Scene;
6
+ x: number;
7
+ y: number;
8
+ icon: IconKey;
9
+ iconStyle?: IconStyle;
10
+ size?: FontSizeKey | number;
11
+ backgroundColor?: ColorKey | string;
12
+ iconColor?: ColorKey | string;
13
+ onClick?: () => void;
14
+ borderRadius?: string | number;
15
+ backgroundOpacity?: number;
16
+ iconOpacity?: number;
17
+ };
18
+ export declare class FlatIconButton extends GameObjects.Container {
19
+ backgroundSprite: GameObjects.Sprite;
20
+ iconText: IconText;
21
+ private pw;
22
+ private baseSizePx;
23
+ private borderRadiusPx;
24
+ private backgroundColorValue;
25
+ private iconColorValue;
26
+ private backgroundOpacityValue;
27
+ private iconOpacityValue;
28
+ constructor({ scene, x, y, icon, iconStyle, size, backgroundColor, iconColor, onClick, borderRadius, backgroundOpacity, iconOpacity, }: FlatIconButtonParams);
29
+ setBackgroundColor(color: ColorKey | string): this;
30
+ setIconColor(color: ColorKey | string): this;
31
+ setBackgroundOpacity(opacity: number): this;
32
+ setIconOpacity(opacity: number): this;
33
+ setBorderRadius(borderRadius: string | number): this;
34
+ setIcon(icon: IconKey, opts?: {
35
+ iconStyle?: IconStyle;
36
+ }): this;
37
+ setButtonSize(size: FontSizeKey | number): this;
38
+ private createBackgroundSprite;
39
+ private regenerateBackgroundTexture;
40
+ private createBackgroundTexture;
41
+ private createIconText;
42
+ private setupContainer;
43
+ private setupInteractivity;
44
+ }
45
+ //# sourceMappingURL=flat-icon-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flat-icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/flat-icon-button/flat-icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,WAAW,EAEjB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACpC,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAWF,qBAAa,cAAe,SAAQ,WAAW,CAAC,SAAS;IAChD,gBAAgB,EAAG,WAAW,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAG,QAAQ,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAuB;IAEjC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,oBAAoB,CAAU;IACtC,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,gBAAgB,CAAK;gBAEjB,EACV,KAAK,EACL,CAAC,EACD,CAAC,EACD,IAAI,EACJ,SAAmB,EACnB,IAAI,EACJ,eAA4B,EAC5B,SAAmB,EACnB,OAAO,EACP,YAAmB,EACnB,iBAAqB,EACrB,WAAe,GAChB,EAAE,oBAAoB;IAwBhB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAMlD,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAQ5C,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM3C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOrC,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAYpD,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI;IAK9D,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAQtD,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,uBAAuB;IAyB/B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;CAsB3B"}
@@ -0,0 +1,152 @@
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 CLICK_OFFSET = 2;
10
+ const BUTTON_SCALE = 2.2;
11
+ const CENTER_OFFSET = 1.1;
12
+ export class FlatIconButton extends GameObjects.Container {
13
+ backgroundSprite;
14
+ iconText;
15
+ pw;
16
+ baseSizePx;
17
+ borderRadiusPx;
18
+ backgroundColorValue; // rgb string
19
+ iconColorValue; // rgb string
20
+ backgroundOpacityValue = 1;
21
+ iconOpacityValue = 1;
22
+ constructor({ scene, x, y, icon, iconStyle = 'solid', size, backgroundColor = 'gray-600', iconColor = 'white', onClick, borderRadius = 'md', backgroundOpacity = 1, iconOpacity = 1, }) {
23
+ super(scene, x, y);
24
+ this.pw = getPWFromScene(scene);
25
+ this.baseSizePx =
26
+ typeof size === 'number' ? size : this.pw.fontSize.px(size ?? 'md');
27
+ this.borderRadiusPx =
28
+ typeof borderRadius === 'number'
29
+ ? borderRadius
30
+ : this.pw.radius.px((borderRadius ?? 'md'));
31
+ this.backgroundColorValue = Color.rgb(backgroundColor);
32
+ this.iconColorValue = Color.rgb(iconColor);
33
+ this.backgroundOpacityValue = backgroundOpacity;
34
+ this.iconOpacityValue = iconOpacity;
35
+ this.createBackgroundSprite(scene);
36
+ this.createIconText(scene, icon, iconStyle);
37
+ this.setupContainer();
38
+ this.setupInteractivity(onClick);
39
+ }
40
+ // API: colors
41
+ setBackgroundColor(color) {
42
+ this.backgroundColorValue = Color.rgb(color);
43
+ this.regenerateBackgroundTexture();
44
+ return this;
45
+ }
46
+ setIconColor(color) {
47
+ this.iconColorValue = Color.rgb(color);
48
+ this.iconText.setColor(this.iconColorValue);
49
+ this.iconText.setAlpha(this.iconOpacityValue);
50
+ return this;
51
+ }
52
+ // API: opacity
53
+ setBackgroundOpacity(opacity) {
54
+ this.backgroundOpacityValue = Math.max(0, Math.min(1, opacity));
55
+ this.backgroundSprite.setAlpha(this.backgroundOpacityValue);
56
+ return this;
57
+ }
58
+ setIconOpacity(opacity) {
59
+ this.iconOpacityValue = Math.max(0, Math.min(1, opacity));
60
+ this.iconText.setAlpha(this.iconOpacityValue);
61
+ return this;
62
+ }
63
+ // API: radius
64
+ setBorderRadius(borderRadius) {
65
+ const newRadiusPx = typeof borderRadius === 'number'
66
+ ? borderRadius
67
+ : this.pw.radius.px(borderRadius);
68
+ if (this.borderRadiusPx === newRadiusPx)
69
+ return this;
70
+ this.borderRadiusPx = newRadiusPx;
71
+ this.regenerateBackgroundTexture();
72
+ return this;
73
+ }
74
+ // API: icon
75
+ setIcon(icon, opts) {
76
+ this.iconText.setIcon(icon, opts);
77
+ return this;
78
+ }
79
+ setButtonSize(size) {
80
+ this.baseSizePx =
81
+ typeof size === 'number' ? size : this.pw.fontSize.px(size ?? 'md');
82
+ this.iconText.setFontSize(`${this.baseSizePx}px`);
83
+ this.regenerateBackgroundTexture();
84
+ return this;
85
+ }
86
+ createBackgroundSprite(scene) {
87
+ const textureKey = this.createBackgroundTexture(scene);
88
+ this.backgroundSprite = scene.add.sprite(0, 0, textureKey);
89
+ this.backgroundSprite.setOrigin(0.5, 0.5);
90
+ this.backgroundSprite.setAlpha(this.backgroundOpacityValue);
91
+ }
92
+ regenerateBackgroundTexture() {
93
+ const textureKey = this.createBackgroundTexture(this.scene);
94
+ this.backgroundSprite.setTexture(textureKey);
95
+ this.backgroundSprite.setAlpha(this.backgroundOpacityValue);
96
+ }
97
+ createBackgroundTexture(scene) {
98
+ const size = this.baseSizePx;
99
+ const textureKey = `flatIconButton_${this.backgroundColorValue}_${this.borderRadiusPx}_${size}`;
100
+ const textureSize = size * BUTTON_SCALE; // match icon-button scale for consistency
101
+ const centerX = size * CENTER_OFFSET;
102
+ const centerY = size * CENTER_OFFSET;
103
+ const graphics = scene.add.graphics();
104
+ graphics.fillStyle(Color.hex(this.backgroundColorValue), 1);
105
+ const side = size * 2;
106
+ const radius = Math.min(this.borderRadiusPx, side / 2);
107
+ graphics.fillRoundedRect(centerX - side / 2, centerY - side / 2, side, side, radius);
108
+ graphics.generateTexture(textureKey, textureSize, textureSize);
109
+ graphics.destroy();
110
+ return textureKey;
111
+ }
112
+ createIconText(scene, icon, iconStyle) {
113
+ this.iconText = new IconText({
114
+ scene,
115
+ x: 0,
116
+ y: 0,
117
+ icon,
118
+ size: this.baseSizePx,
119
+ style: {
120
+ color: this.iconColorValue,
121
+ strokeThickness: 0,
122
+ },
123
+ iconStyle,
124
+ });
125
+ this.iconText.setAlpha(this.iconOpacityValue);
126
+ this.iconText.setOrigin(0.5, 0.5);
127
+ }
128
+ setupContainer() {
129
+ this.add([this.backgroundSprite, this.iconText]);
130
+ }
131
+ setupInteractivity(onClick) {
132
+ this.backgroundSprite.setInteractive({ useHandCursor: true });
133
+ this.backgroundSprite.on('pointerdown', () => {
134
+ this.scene.tweens.add({
135
+ targets: [this.backgroundSprite, this.iconText],
136
+ y: CLICK_OFFSET,
137
+ duration: durations.click,
138
+ ease: 'Linear',
139
+ });
140
+ });
141
+ this.backgroundSprite.on('pointerup', () => {
142
+ this.scene.tweens.add({
143
+ targets: [this.backgroundSprite, this.iconText],
144
+ y: 0,
145
+ duration: durations.click,
146
+ ease: 'Linear',
147
+ });
148
+ onClick?.();
149
+ });
150
+ }
151
+ }
152
+ //# sourceMappingURL=flat-icon-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flat-icon-button.js","sourceRoot":"","sources":["../../../src/components/flat-icon-button/flat-icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgC,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAS,MAAM,QAAQ,CAAC;AAC5C,OAAO,EACL,KAAK,GAKN,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAiB/D,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,MAAM,OAAO,cAAe,SAAQ,WAAW,CAAC,SAAS;IAChD,gBAAgB,CAAsB;IACtC,QAAQ,CAAY;IACnB,EAAE,CAAuB;IAEzB,UAAU,CAAU;IACpB,cAAc,CAAU;IACxB,oBAAoB,CAAU,CAAC,aAAa;IAC5C,cAAc,CAAU,CAAC,aAAa;IACtC,sBAAsB,GAAG,CAAC,CAAC;IAC3B,gBAAgB,GAAG,CAAC,CAAC;IAE7B,YAAY,EACV,KAAK,EACL,CAAC,EACD,CAAC,EACD,IAAI,EACJ,SAAS,GAAG,OAAO,EACnB,IAAI,EACJ,eAAe,GAAG,UAAU,EAC5B,SAAS,GAAG,OAAO,EACnB,OAAO,EACP,YAAY,GAAG,IAAI,EACnB,iBAAiB,GAAG,CAAC,EACrB,WAAW,GAAG,CAAC,GACM;QACrB,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,CAAC,UAAU;YACb,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAK,IAAoB,CAAC,CAAC;QAEvF,IAAI,CAAC,cAAc;YACjB,OAAO,YAAY,KAAK,QAAQ;gBAC9B,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI,CAAc,CAAC,CAAC;QAE7D,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,GAAG,CAAC,eAA2B,CAAC,CAAC;QACnE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,SAAqB,CAAC,CAAC;QACvD,IAAI,CAAC,sBAAsB,GAAG,iBAAiB,CAAC;QAChD,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC;QAEpC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,cAAc;IACP,kBAAkB,CAAC,KAAwB;QAChD,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,GAAG,CAAC,KAAiB,CAAC,CAAC;QACzD,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,YAAY,CAAC,KAAwB;QAC1C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,KAAiB,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;IACR,oBAAoB,CAAC,OAAe;QACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,OAAe;QACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc;IACP,eAAe,CAAC,YAA6B;QAClD,MAAM,WAAW,GACf,OAAO,YAAY,KAAK,QAAQ;YAC9B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,YAAyB,CAAC,CAAC;QACnD,IAAI,IAAI,CAAC,cAAc,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QACrD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;QAClC,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;IACL,OAAO,CAAC,IAAa,EAAE,IAAgC;QAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,IAA0B;QAC7C,IAAI,CAAC,UAAU;YACb,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAK,IAAoB,CAAC,CAAC;QACvF,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,sBAAsB,CAAC,KAAY;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9D,CAAC;IAEO,2BAA2B;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9D,CAAC;IAEO,uBAAuB,CAAC,KAAY;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,MAAM,UAAU,GAAG,kBAAkB,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;QAChG,MAAM,WAAW,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC,0CAA0C;QACnF,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QAErC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACtC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACvD,QAAQ,CAAC,eAAe,CACtB,OAAO,GAAG,IAAI,GAAG,CAAC,EAClB,OAAO,GAAG,IAAI,GAAG,CAAC,EAClB,IAAI,EACJ,IAAI,EACJ,MAAM,CACP,CAAC;QAEF,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC/D,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,cAAc,CAAC,KAAY,EAAE,IAAa,EAAE,SAAoB;QACtE,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC3B,KAAK;YACL,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI,CAAC,cAAc;gBAC1B,eAAe,EAAE,CAAC;aACnB;YACD,SAAS;SACV,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,CAAC;IAEO,kBAAkB,CAAC,OAAoB;QAC7C,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9D,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC/C,CAAC,EAAE,YAAY;gBACf,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YACzC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC/C,CAAC,EAAE,CAAC;gBACJ,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,OAAO,EAAE,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './flat-icon-button';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/flat-icon-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './flat-icon-button';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/flat-icon-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -22,6 +22,7 @@ export declare class IconButton extends GameObjects.Container {
22
22
  private borderRadiusPx;
23
23
  constructor({ scene, x, y, icon, size, color, onClick, borderRadius }: IconButtonParams);
24
24
  setBorderRadius(borderRadius: RadiusKey | number): this;
25
+ setButtonSize(size: FontSizeKey | number): this;
25
26
  private createShadowSprite;
26
27
  private createShadowTexture;
27
28
  private createBackgroundSprite;
@@ -1 +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,EAChB,KAAK,SAAS,EACf,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;IACrB,+FAA+F;IAC/F,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;CACnC,CAAC;AAmBF,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;IACjC,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,cAAc,CAAU;gBAEpB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,gBAAgB;IAuBhF,eAAe,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IA0B9D,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,mBAAmB;IAuC3B,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,uBAAuB;IAwC/B,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;CAwC3B"}
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,EAChB,KAAK,SAAS,EACf,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;IACrB,+FAA+F;IAC/F,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;CACnC,CAAC;AAmBF,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;IAE3B,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,cAAc,CAAU;gBAEpB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,gBAAgB;IAuBhF,eAAe,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IA0BvD,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAqBtD,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,mBAAmB;IAuC3B,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,uBAAuB;IAwC/B,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;CAwC3B"}
@@ -58,6 +58,16 @@ export class IconButton extends GameObjects.Container {
58
58
  this.backgroundSprite.setTexture(backgroundTexture);
59
59
  return this;
60
60
  }
61
+ setButtonSize(size) {
62
+ this.sizePx =
63
+ typeof size === 'number' ? size : this.pw.fontSize.px(size ?? 'md');
64
+ this.iconText.setFontSize(`${this.sizePx}px`);
65
+ const shadowTexture = this.createShadowTexture(this.scene, this.sizePx, this.baseColor, this.borderRadiusPx);
66
+ const backgroundTexture = this.createBackgroundTexture(this.scene, this.sizePx, this.baseColor, this.borderRadiusPx);
67
+ this.shadowSprite.setTexture(shadowTexture);
68
+ this.backgroundSprite.setTexture(backgroundTexture);
69
+ return this;
70
+ }
61
71
  createShadowSprite(scene, size, baseColor, borderRadiusPx) {
62
72
  const shadowTexture = this.createShadowTexture(scene, size, baseColor, borderRadiusPx);
63
73
  this.shadowSprite = scene.add.sprite(1, SHADOW_OFFSET, shadowTexture);
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.js","sourceRoot":"","sources":["../../../src/components/icon-button/icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAS,MAAM,QAAQ,CAAC;AAC5C,OAAO,EACL,KAAK,GAKN,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAc/D,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,WAAW,GAAG,IAAI,CAAC;AACzB,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,8CAA8C;AAE9C,MAAM,OAAO,UAAW,SAAQ,WAAW,CAAC,SAAS;IAC5C,gBAAgB,CAAsB;IACtC,YAAY,CAAsB;IAClC,QAAQ,CAAY;IACnB,EAAE,CAAuB;IACzB,SAAS,CAAqC;IAC9C,MAAM,CAAU;IAChB,cAAc,CAAU;IAEhC,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAoB;QACrF,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,MAAM,GACV,OAAO,IAAI,KAAK,QAAQ;YACtB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAK,IAAoB,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,IAAI,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,cAAc;YACjB,OAAO,YAAY,KAAK,QAAQ;gBAC9B,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,IAAI,MAAM,CAAc,CAAC,CAAC;QAE/D,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvE,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,eAAe,CAAC,YAAgC;QACrD,MAAM,WAAW,GACf,OAAO,YAAY,KAAK,QAAQ;YAC9B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,YAAyB,CAAC,CAAC;QACnD,IAAI,IAAI,CAAC,cAAc,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QACrD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;QAElC,gDAAgD;QAChD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAC5C,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,kBAAkB,CACxB,KAAY,EACZ,IAAY,EACZ,SAA4C,EAC5C,cAAsB;QAEtB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QACvF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;IAEO,mBAAmB,CACzB,KAAY,EACZ,IAAY,EACZ,SAA4C,EAC5C,cAAsB;QAEtB,MAAM,UAAU,GAAG,sBAAsB,cAAc,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,GAAG,YAAY,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QAErC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,aAAa,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QAClD,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;QACvD,QAAQ,CAAC,eAAe,CACtB,OAAO,GAAG,CAAC,GAAG,SAAS,GAAG,CAAC,EAC3B,OAAO,GAAG,SAAS,GAAG,CAAC,EACvB,SAAS,EACT,SAAS,EACT,WAAW,CACZ,CAAC;QACF,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACvE,QAAQ,CAAC,eAAe,CACtB,OAAO,GAAG,IAAI,GAAG,CAAC,EAClB,OAAO,GAAG,YAAY,GAAG,IAAI,GAAG,CAAC,EACjC,IAAI,EACJ,IAAI,EACJ,MAAM,CACP,CAAC;QAEF,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC/D,QAAQ,CAAC,OAAO,EAAE,CAAC;QAEnB,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,sBAAsB,CAC5B,KAAY,EACZ,IAAY,EACZ,SAA4C,EAC5C,cAAsB;QAEtB,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAC/F,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC;QAClE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IAEO,uBAAuB,CAC7B,KAAY,EACZ,IAAY,EACZ,SAA4C,EAC5C,cAAsB;QAEtB,MAAM,UAAU,GAAG,eAAe,cAAc,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACxE,MAAM,WAAW,GAAG,IAAI,GAAG,YAAY,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC;QAErC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,GAAG,kBAAkB,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,mBAAmB,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAC5D,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,QAAQ,CAAC,eAAe,CACtB,OAAO,GAAG,QAAQ,GAAG,CAAC,EACtB,OAAO,GAAG,QAAQ,GAAG,CAAC,EACtB,QAAQ,EACR,QAAQ,EACR,UAAU,CACX,CAAC;QACF,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,qBAAqB,CAAC,CAAC;QACzE,QAAQ,CAAC,eAAe,CACtB,OAAO,GAAG,SAAS,GAAG,CAAC,EACvB,OAAO,GAAG,SAAS,GAAG,CAAC,EACvB,SAAS,EACT,SAAS,EACT,WAAW,CACZ,CAAC;QAEF,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC/D,QAAQ,CAAC,OAAO,EAAE,CAAC;QAEnB,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,cAAc,CACpB,KAAY,EACZ,IAAa,EACb,IAAY,EACZ,SAA4C;QAE5C,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC3B,KAAK;YACL,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;gBACzB,eAAe,EAAE,CAAC;gBAClB,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,MAAM,CAAC;aACtC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtE,CAAC;IAEO,kBAAkB,CAAC,OAAoB;QAC7C,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9D,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC/C,CAAC,EAAE,YAAY;gBACf,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YACzC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBACpB,OAAO,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC/C,CAAC,EAAE,CAAC;gBACJ,QAAQ,EAAE,SAAS,CAAC,KAAK;gBACzB,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,OAAO,EAAE,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"icon-button.js","sourceRoot":"","sources":["../../../src/components/icon-button/icon-button.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
+ export * from './circular-progress';
1
2
  export * from './column';
2
3
  export * from './icon-button';
4
+ export * from './flat-icon-button';
3
5
  export * from './row';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,OAAO,CAAC"}
@@ -1,4 +1,6 @@
1
+ export * from './circular-progress';
1
2
  export * from './column';
2
3
  export * from './icon-button';
4
+ export * from './flat-icon-button';
3
5
  export * from './row';
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,OAAO,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hudini",
3
- "version": "0.5.0",
3
+ "version": "0.6.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",
@@ -44,7 +44,7 @@
44
44
  "@typescript-eslint/parser": "^8.40.0",
45
45
  "eslint": "^8.55.0",
46
46
  "eslint-config-prettier": "^10.1.8",
47
- "eslint-import-resolver-typescript": "^3.6.1",
47
+ "eslint-import-resolver-typescript": "^4.4.4",
48
48
  "eslint-plugin-import": "^2.29.1",
49
49
  "eslint-plugin-node": "^11.1.0",
50
50
  "eslint-plugin-prefer-arrow": "^1.2.3",