hudini 0.17.1 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/card/card.d.ts +34 -9
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/card.js +117 -49
- package/dist/components/card/card.js.map +1 -1
- package/dist/components/card/card.spec.js +28 -1
- package/dist/components/card/card.spec.js.map +1 -1
- package/dist/components/circular-progress/circular-progress.d.ts +4 -4
- package/dist/components/circular-progress/circular-progress.d.ts.map +1 -1
- package/dist/components/circular-progress/circular-progress.js +9 -8
- package/dist/components/circular-progress/circular-progress.js.map +1 -1
- package/dist/components/circular-progress/circular-progress.spec.js +4 -4
- package/dist/components/circular-progress/circular-progress.spec.js.map +1 -1
- package/dist/components/container-interactive/container-interactive.d.ts +65 -0
- package/dist/components/container-interactive/container-interactive.d.ts.map +1 -0
- package/dist/components/container-interactive/container-interactive.js +99 -0
- package/dist/components/container-interactive/container-interactive.js.map +1 -0
- package/dist/components/container-interactive/index.d.ts +2 -0
- package/dist/components/container-interactive/index.d.ts.map +1 -0
- package/dist/components/container-interactive/index.js +2 -0
- package/dist/components/container-interactive/index.js.map +1 -0
- package/dist/components/flat-icon-button/flat-icon-button.d.ts +3 -0
- package/dist/components/flat-icon-button/flat-icon-button.d.ts.map +1 -1
- package/dist/components/flat-icon-button/flat-icon-button.js +110 -19
- package/dist/components/flat-icon-button/flat-icon-button.js.map +1 -1
- package/dist/components/flat-section-header/flat-section-header.d.ts +143 -0
- package/dist/components/flat-section-header/flat-section-header.d.ts.map +1 -0
- package/dist/components/flat-section-header/flat-section-header.js +275 -0
- package/dist/components/flat-section-header/flat-section-header.js.map +1 -0
- package/dist/components/flat-section-header/flat-section-header.spec.d.ts +2 -0
- package/dist/components/flat-section-header/flat-section-header.spec.d.ts.map +1 -0
- package/dist/components/flat-section-header/flat-section-header.spec.js +255 -0
- package/dist/components/flat-section-header/flat-section-header.spec.js.map +1 -0
- package/dist/components/flat-section-header/index.d.ts +2 -0
- package/dist/components/flat-section-header/index.d.ts.map +1 -0
- package/dist/components/flat-section-header/index.js +2 -0
- package/dist/components/flat-section-header/index.js.map +1 -0
- package/dist/components/flat-text-button/flat-text-button.d.ts +165 -0
- package/dist/components/flat-text-button/flat-text-button.d.ts.map +1 -0
- package/dist/components/flat-text-button/flat-text-button.js +325 -0
- package/dist/components/flat-text-button/flat-text-button.js.map +1 -0
- package/dist/components/flat-text-button/flat-text-button.spec.d.ts +2 -0
- package/dist/components/flat-text-button/flat-text-button.spec.d.ts.map +1 -0
- package/dist/components/flat-text-button/flat-text-button.spec.js +243 -0
- package/dist/components/flat-text-button/flat-text-button.spec.js.map +1 -0
- package/dist/components/flat-text-button/index.d.ts +2 -0
- package/dist/components/flat-text-button/index.d.ts.map +1 -0
- package/dist/components/flat-text-button/index.js +2 -0
- package/dist/components/flat-text-button/index.js.map +1 -0
- package/dist/components/icon-button/icon-button.d.ts +11 -3
- package/dist/components/icon-button/icon-button.d.ts.map +1 -1
- package/dist/components/icon-button/icon-button.js +124 -70
- package/dist/components/icon-button/icon-button.js.map +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +4 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/panel/panel.d.ts +0 -1
- package/dist/components/panel/panel.d.ts.map +1 -1
- package/dist/components/panel/panel.js +7 -10
- package/dist/components/panel/panel.js.map +1 -1
- package/dist/components/section-header/section-header.d.ts +33 -39
- package/dist/components/section-header/section-header.d.ts.map +1 -1
- package/dist/components/section-header/section-header.js +124 -155
- package/dist/components/section-header/section-header.js.map +1 -1
- package/dist/components/section-header/section-header.spec.js +57 -17
- package/dist/components/section-header/section-header.spec.js.map +1 -1
- package/dist/components/text/index.d.ts +2 -0
- package/dist/components/text/index.d.ts.map +1 -0
- package/dist/components/text/index.js +2 -0
- package/dist/components/text/index.js.map +1 -0
- package/dist/components/text/text.d.ts +45 -0
- package/dist/components/text/text.d.ts.map +1 -0
- package/dist/components/text/text.js +35 -0
- package/dist/components/text/text.js.map +1 -0
- package/dist/components/text-button/text-button.d.ts +26 -23
- package/dist/components/text-button/text-button.d.ts.map +1 -1
- package/dist/components/text-button/text-button.js +114 -88
- package/dist/components/text-button/text-button.js.map +1 -1
- package/dist/components/text-button/text-button.spec.js +98 -8
- package/dist/components/text-button/text-button.spec.js.map +1 -1
- package/dist/hudini.js +4166 -460
- package/dist/hudini.min.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/loaders/index.d.ts +2 -0
- package/dist/loaders/index.d.ts.map +1 -0
- package/dist/loaders/index.js +2 -0
- package/dist/loaders/index.js.map +1 -0
- package/dist/loaders/load-fonts.d.ts +8 -0
- package/dist/loaders/load-fonts.d.ts.map +1 -0
- package/dist/loaders/load-fonts.js +41 -0
- package/dist/loaders/load-fonts.js.map +1 -0
- package/dist/test-setup.js +8 -2
- package/dist/test-setup.js.map +1 -1
- package/dist/utils/color-variants.d.ts +38 -0
- package/dist/utils/color-variants.d.ts.map +1 -0
- package/dist/utils/color-variants.js +59 -0
- package/dist/utils/color-variants.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { GameObjects, Scene } from 'phaser';
|
|
2
2
|
import { type ColorKey, type RadiusKey, type SpacingKey } from 'phaser-wind';
|
|
3
|
+
import { ContainerInteractive } from '../container-interactive';
|
|
3
4
|
export type CardParams = {
|
|
4
5
|
/** The Phaser scene to add the card to */
|
|
5
6
|
scene: Scene;
|
|
@@ -23,9 +24,11 @@ export type CardParams = {
|
|
|
23
24
|
/**
|
|
24
25
|
* A flexible card component that adapts to its child content size
|
|
25
26
|
*/
|
|
26
|
-
export declare class Card extends GameObjects.
|
|
27
|
-
/** The
|
|
28
|
-
|
|
27
|
+
export declare class Card extends ContainerInteractive<Phaser.GameObjects.Sprite> {
|
|
28
|
+
/** The white border sprite of the card. */
|
|
29
|
+
whiteBorderSprite: GameObjects.Sprite;
|
|
30
|
+
/** The background sprite of the card. */
|
|
31
|
+
backgroundSprite: GameObjects.Sprite;
|
|
29
32
|
/** The child component contained within the card */
|
|
30
33
|
child: GameObjects.GameObject | undefined;
|
|
31
34
|
/** Reference to the PhaserWind plugin */
|
|
@@ -44,7 +47,7 @@ export declare class Card extends GameObjects.Container {
|
|
|
44
47
|
*/
|
|
45
48
|
constructor({ scene, x, y, backgroundColor, borderRadius, margin, child, width, height, }: CardParams);
|
|
46
49
|
/**
|
|
47
|
-
* Override setSize to
|
|
50
|
+
* Override setSize to regenerate sprites when size changes
|
|
48
51
|
* @param width Width in pixels
|
|
49
52
|
* @param height Height in pixels
|
|
50
53
|
* @returns this for chaining
|
|
@@ -87,10 +90,19 @@ export declare class Card extends GameObjects.Container {
|
|
|
87
90
|
*/
|
|
88
91
|
setChild(child: GameObjects.GameObject): this;
|
|
89
92
|
/**
|
|
90
|
-
* Creates the
|
|
91
|
-
* @param scene
|
|
93
|
+
* Creates the white border sprite for the card.
|
|
94
|
+
* @param scene Phaser scene.
|
|
92
95
|
*/
|
|
93
|
-
private
|
|
96
|
+
private createWhiteBorderSprite;
|
|
97
|
+
/**
|
|
98
|
+
* Creates the background sprite for the card.
|
|
99
|
+
* @param scene Phaser scene.
|
|
100
|
+
*/
|
|
101
|
+
private createBackgroundSprite;
|
|
102
|
+
/**
|
|
103
|
+
* Regenerates the background and white border textures based on current state.
|
|
104
|
+
*/
|
|
105
|
+
private regenerateSprites;
|
|
94
106
|
/**
|
|
95
107
|
* Sets up the container with background and child
|
|
96
108
|
*/
|
|
@@ -122,8 +134,21 @@ export declare class Card extends GameObjects.Container {
|
|
|
122
134
|
private calculateChildY;
|
|
123
135
|
private measureChild;
|
|
124
136
|
/**
|
|
125
|
-
*
|
|
137
|
+
* Calculates the card's width and height based on child and margin.
|
|
138
|
+
* @returns Object with width and height.
|
|
139
|
+
*/
|
|
140
|
+
private getCardDimensions;
|
|
141
|
+
/**
|
|
142
|
+
* Creates a texture for the card's white border.
|
|
143
|
+
* @param scene Phaser scene.
|
|
144
|
+
* @returns The texture key.
|
|
145
|
+
*/
|
|
146
|
+
private createWhiteBorderTexture;
|
|
147
|
+
/**
|
|
148
|
+
* Creates a texture for the card's background.
|
|
149
|
+
* @param scene Phaser scene.
|
|
150
|
+
* @returns The texture key.
|
|
126
151
|
*/
|
|
127
|
-
private
|
|
152
|
+
private createBackgroundTexture;
|
|
128
153
|
}
|
|
129
154
|
//# sourceMappingURL=card.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,UAAU,EAGhB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
import { GameObjects } from 'phaser';
|
|
2
1
|
import { Color, getDisplayHeightOf, getDisplayWidthOf } from 'phaser-wind';
|
|
3
2
|
import { getPWFromScene } from '../../utils/get-pw-from-scene';
|
|
3
|
+
import { ContainerInteractive } from '../container-interactive';
|
|
4
|
+
// Border constants
|
|
5
|
+
const BLACK_BORDER_THICKNESS = 2;
|
|
6
|
+
const WHITE_BORDER_EXTRA_PIXELS_PER_SIDE = 2;
|
|
7
|
+
const WHITE_BORDER_TOTAL_EXTRA_PIXELS = WHITE_BORDER_EXTRA_PIXELS_PER_SIDE * 2; // 4 pixels total
|
|
8
|
+
const WHITE_BORDER_RADIUS_EXTRA = 2;
|
|
4
9
|
/**
|
|
5
10
|
* A flexible card component that adapts to its child content size
|
|
6
11
|
*/
|
|
7
|
-
export class Card extends
|
|
8
|
-
/** The
|
|
9
|
-
|
|
12
|
+
export class Card extends ContainerInteractive {
|
|
13
|
+
/** The white border sprite of the card. */
|
|
14
|
+
whiteBorderSprite;
|
|
15
|
+
/** The background sprite of the card. */
|
|
16
|
+
backgroundSprite;
|
|
10
17
|
/** The child component contained within the card */
|
|
11
18
|
child;
|
|
12
19
|
/** Reference to the PhaserWind plugin */
|
|
@@ -24,7 +31,7 @@ export class Card extends GameObjects.Container {
|
|
|
24
31
|
* @param params Configuration parameters for the card
|
|
25
32
|
*/
|
|
26
33
|
constructor({ scene, x, y, backgroundColor = 'white', borderRadius = 'md', margin = '4', child, width, height, }) {
|
|
27
|
-
super(scene, x, y);
|
|
34
|
+
super({ scene, x, y });
|
|
28
35
|
this.pw = getPWFromScene(scene);
|
|
29
36
|
// Store values
|
|
30
37
|
this.marginPx =
|
|
@@ -40,12 +47,14 @@ export class Card extends GameObjects.Container {
|
|
|
40
47
|
this.child = child;
|
|
41
48
|
// Check if explicit size was provided
|
|
42
49
|
this.hasExplicitSize = width !== undefined && height !== undefined;
|
|
43
|
-
// Create
|
|
44
|
-
this.
|
|
50
|
+
// Create sprites and setup container
|
|
51
|
+
this.createWhiteBorderSprite(scene);
|
|
52
|
+
this.createBackgroundSprite(scene);
|
|
45
53
|
this.setupContainer();
|
|
54
|
+
this.hitArea = this.backgroundSprite;
|
|
46
55
|
}
|
|
47
56
|
/**
|
|
48
|
-
* Override setSize to
|
|
57
|
+
* Override setSize to regenerate sprites when size changes
|
|
49
58
|
* @param width Width in pixels
|
|
50
59
|
* @param height Height in pixels
|
|
51
60
|
* @returns this for chaining
|
|
@@ -56,8 +65,8 @@ export class Card extends GameObjects.Container {
|
|
|
56
65
|
// Set size directly on the container to avoid recursion
|
|
57
66
|
this.width = width;
|
|
58
67
|
this.height = height;
|
|
59
|
-
//
|
|
60
|
-
this.
|
|
68
|
+
// Regenerate sprites with new size
|
|
69
|
+
this.regenerateSprites();
|
|
61
70
|
return this;
|
|
62
71
|
}
|
|
63
72
|
/**
|
|
@@ -85,7 +94,7 @@ export class Card extends GameObjects.Container {
|
|
|
85
94
|
*/
|
|
86
95
|
setBackgroundColor(color) {
|
|
87
96
|
this.backgroundColorValue = Color.rgb(color);
|
|
88
|
-
this.
|
|
97
|
+
this.regenerateSprites();
|
|
89
98
|
return this;
|
|
90
99
|
}
|
|
91
100
|
/**
|
|
@@ -98,7 +107,7 @@ export class Card extends GameObjects.Container {
|
|
|
98
107
|
typeof borderRadius === 'number'
|
|
99
108
|
? borderRadius
|
|
100
109
|
: this.pw.radius.px(borderRadius ?? 'md');
|
|
101
|
-
this.
|
|
110
|
+
this.regenerateSprites();
|
|
102
111
|
return this;
|
|
103
112
|
}
|
|
104
113
|
/**
|
|
@@ -131,18 +140,38 @@ export class Card extends GameObjects.Container {
|
|
|
131
140
|
return this;
|
|
132
141
|
}
|
|
133
142
|
/**
|
|
134
|
-
* Creates the
|
|
135
|
-
* @param scene
|
|
143
|
+
* Creates the white border sprite for the card.
|
|
144
|
+
* @param scene Phaser scene.
|
|
136
145
|
*/
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
this.
|
|
146
|
+
createWhiteBorderSprite(scene) {
|
|
147
|
+
const whiteBorderTexture = this.createWhiteBorderTexture(scene);
|
|
148
|
+
this.whiteBorderSprite = scene.add.sprite(0, 0, whiteBorderTexture);
|
|
149
|
+
this.whiteBorderSprite.setOrigin(0.5, 0.5);
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Creates the background sprite for the card.
|
|
153
|
+
* @param scene Phaser scene.
|
|
154
|
+
*/
|
|
155
|
+
createBackgroundSprite(scene) {
|
|
156
|
+
const backgroundTexture = this.createBackgroundTexture(scene);
|
|
157
|
+
this.backgroundSprite = scene.add.sprite(0, 0, backgroundTexture);
|
|
158
|
+
this.backgroundSprite.setOrigin(0.5, 0.5);
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Regenerates the background and white border textures based on current state.
|
|
162
|
+
*/
|
|
163
|
+
regenerateSprites() {
|
|
164
|
+
// Regenerate textures
|
|
165
|
+
const whiteBorderTexture = this.createWhiteBorderTexture(this.scene);
|
|
166
|
+
const backgroundTexture = this.createBackgroundTexture(this.scene);
|
|
167
|
+
this.whiteBorderSprite.setTexture(whiteBorderTexture);
|
|
168
|
+
this.backgroundSprite.setTexture(backgroundTexture);
|
|
140
169
|
}
|
|
141
170
|
/**
|
|
142
171
|
* Sets up the container with background and child
|
|
143
172
|
*/
|
|
144
173
|
setupContainer() {
|
|
145
|
-
this.add([this.
|
|
174
|
+
this.add([this.whiteBorderSprite, this.backgroundSprite]);
|
|
146
175
|
if (this.child) {
|
|
147
176
|
this.add([this.child]);
|
|
148
177
|
}
|
|
@@ -171,8 +200,8 @@ export class Card extends GameObjects.Container {
|
|
|
171
200
|
// Set size directly (don't use setSize to avoid marking as explicit size)
|
|
172
201
|
this.width = cardWidth;
|
|
173
202
|
this.height = cardHeight;
|
|
174
|
-
//
|
|
175
|
-
this.
|
|
203
|
+
// Regenerate sprites with new dimensions
|
|
204
|
+
this.regenerateSprites();
|
|
176
205
|
// Position child in the center of the card
|
|
177
206
|
this.child.setPosition(childX, childY);
|
|
178
207
|
}
|
|
@@ -246,40 +275,79 @@ export class Card extends GameObjects.Container {
|
|
|
246
275
|
return { w, h };
|
|
247
276
|
}
|
|
248
277
|
/**
|
|
249
|
-
*
|
|
278
|
+
* Calculates the card's width and height based on child and margin.
|
|
279
|
+
* @returns Object with width and height.
|
|
250
280
|
*/
|
|
251
|
-
|
|
252
|
-
let
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
281
|
+
getCardDimensions() {
|
|
282
|
+
let width = 0;
|
|
283
|
+
let height = 0;
|
|
284
|
+
if (this.hasExplicitSize) {
|
|
285
|
+
width = this.width;
|
|
286
|
+
height = this.height;
|
|
287
|
+
}
|
|
288
|
+
else if (this.child) {
|
|
289
|
+
const { w: cw, h: ch } = this.measureChild(this.child);
|
|
290
|
+
width = cw + this.marginPx * 2;
|
|
291
|
+
height = ch + this.marginPx * 2;
|
|
256
292
|
}
|
|
257
293
|
else {
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
width = cw + this.marginPx * 2;
|
|
262
|
-
height = ch + this.marginPx * 2;
|
|
263
|
-
}
|
|
264
|
-
else {
|
|
265
|
-
// If no child and no explicit size, use current size
|
|
266
|
-
width = this.width;
|
|
267
|
-
height = this.height;
|
|
268
|
-
}
|
|
294
|
+
const DEFAULT_SIZE = 100;
|
|
295
|
+
width = this.width || DEFAULT_SIZE;
|
|
296
|
+
height = this.height || DEFAULT_SIZE;
|
|
269
297
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
298
|
+
return { width, height };
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* Creates a texture for the card's white border.
|
|
302
|
+
* @param scene Phaser scene.
|
|
303
|
+
* @returns The texture key.
|
|
304
|
+
*/
|
|
305
|
+
createWhiteBorderTexture(scene) {
|
|
306
|
+
const { width, height } = this.getCardDimensions();
|
|
307
|
+
const textureKey = `card_whiteBorder_${this.borderRadiusPx}_${width}_${height}`;
|
|
308
|
+
// White border is larger on each side
|
|
309
|
+
const borderWidth = width + WHITE_BORDER_TOTAL_EXTRA_PIXELS;
|
|
310
|
+
const borderHeight = height + WHITE_BORDER_TOTAL_EXTRA_PIXELS;
|
|
311
|
+
// Add some padding for texture
|
|
312
|
+
const padding = 8;
|
|
313
|
+
const textureWidth = borderWidth + padding * 2;
|
|
314
|
+
const textureHeight = borderHeight + padding * 2;
|
|
315
|
+
const graphics = scene.add.graphics();
|
|
316
|
+
const maxRadius = Math.floor(Math.min(borderWidth / 2, borderHeight / 2));
|
|
317
|
+
const effectiveRadius = Math.min(this.borderRadiusPx + WHITE_BORDER_RADIUS_EXTRA, maxRadius);
|
|
318
|
+
const finalRadius = Math.max(0, effectiveRadius);
|
|
319
|
+
// White border (outer)
|
|
320
|
+
graphics.fillStyle(Color.hex('white'), 1);
|
|
321
|
+
graphics.fillRoundedRect(padding, padding, borderWidth, borderHeight, finalRadius);
|
|
322
|
+
graphics.generateTexture(textureKey, textureWidth, textureHeight);
|
|
323
|
+
graphics.destroy();
|
|
324
|
+
return textureKey;
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Creates a texture for the card's background.
|
|
328
|
+
* @param scene Phaser scene.
|
|
329
|
+
* @returns The texture key.
|
|
330
|
+
*/
|
|
331
|
+
createBackgroundTexture(scene) {
|
|
332
|
+
const { width, height } = this.getCardDimensions();
|
|
333
|
+
const textureKey = `card_bg_${this.backgroundColorValue}_${this.borderRadiusPx}_${width}_${height}`;
|
|
334
|
+
// Add some padding for texture
|
|
335
|
+
const padding = 8;
|
|
336
|
+
const textureWidth = width + padding * 2;
|
|
337
|
+
const textureHeight = height + padding * 2;
|
|
338
|
+
const graphics = scene.add.graphics();
|
|
339
|
+
const maxRadius = Math.floor(Math.min(width / 2, height / 2));
|
|
276
340
|
const effectiveRadius = Math.min(this.borderRadiusPx, maxRadius);
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
341
|
+
const finalRadius = Math.max(0, effectiveRadius);
|
|
342
|
+
// Draw background with white fill and black stroke
|
|
343
|
+
graphics.fillStyle(Color.hex(this.backgroundColorValue), 1);
|
|
344
|
+
graphics.fillRoundedRect(padding, padding, width, height, finalRadius);
|
|
345
|
+
// Black stroke border
|
|
346
|
+
graphics.lineStyle(BLACK_BORDER_THICKNESS, Color.hex('black'), 1);
|
|
347
|
+
graphics.strokeRoundedRect(padding, padding, width, height, finalRadius);
|
|
348
|
+
graphics.generateTexture(textureKey, textureWidth, textureHeight);
|
|
349
|
+
graphics.destroy();
|
|
350
|
+
return textureKey;
|
|
283
351
|
}
|
|
284
352
|
}
|
|
285
353
|
//# sourceMappingURL=card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.js","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"card.js","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,12 +54,28 @@ vi.mock('phaser', () => {
|
|
|
54
54
|
fillRoundedRect() {
|
|
55
55
|
return this;
|
|
56
56
|
}
|
|
57
|
+
lineStyle() {
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
strokeRoundedRect() {
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
// eslint-disable-next-line no-unused-vars
|
|
64
|
+
generateTexture(_textureKey, _width, _height) {
|
|
65
|
+
return this;
|
|
66
|
+
}
|
|
67
|
+
destroy() {
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
57
70
|
}
|
|
58
71
|
class Container {
|
|
59
72
|
width = 0;
|
|
60
73
|
height = 0;
|
|
74
|
+
scene;
|
|
61
75
|
// eslint-disable-next-line no-unused-vars
|
|
62
|
-
constructor(_scene, _x, _y) {
|
|
76
|
+
constructor(_scene, _x, _y) {
|
|
77
|
+
this.scene = _scene;
|
|
78
|
+
}
|
|
63
79
|
add() {
|
|
64
80
|
return this;
|
|
65
81
|
}
|
|
@@ -67,10 +83,21 @@ vi.mock('phaser', () => {
|
|
|
67
83
|
return this;
|
|
68
84
|
}
|
|
69
85
|
}
|
|
86
|
+
class MockSprite {
|
|
87
|
+
// eslint-disable-next-line no-unused-vars
|
|
88
|
+
constructor(_x, _y, _texture) { }
|
|
89
|
+
setOrigin() {
|
|
90
|
+
return this;
|
|
91
|
+
}
|
|
92
|
+
setTexture() {
|
|
93
|
+
return this;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
70
96
|
class Scene {
|
|
71
97
|
add = {
|
|
72
98
|
text: vi.fn((x, y, text, style) => new MockText(x, y, text, style)),
|
|
73
99
|
graphics: vi.fn(() => new MockGraphics()),
|
|
100
|
+
sprite: vi.fn((x, y, texture) => new MockSprite(x, y, texture)),
|
|
74
101
|
};
|
|
75
102
|
}
|
|
76
103
|
class BasePlugin {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.spec.js","sourceRoot":"","sources":["../../../src/components/card/card.spec.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,2CAA2C;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,kCAAkC;AAClC,EAAE,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5C,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QACzB,OAAO,EAAE;YACL,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,OAAe,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;gBAC1D,OAAO,QAAQ,CAAC,OAAgC,CAAC,IAAI,EAAE,CAAC;YAC5D,CAAC,CAAC;SACL;QACD,MAAM,EAAE;YACJ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;gBACzB,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACvE,OAAO,QAAQ,CAAC,MAA+B,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC,CAAC;SACL;KACJ,CAAC,CAAC;CACN,CAAC,CAAC,CAAC;AAEJ,cAAc;AACd,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;IACnB,MAAM,QAAQ;QACF,IAAI,CAAS;QACb,KAAK,CAAkC;QAE/C,YACI,EAAU,EACV,EAAU,EACV,IAAY,EACZ,QAAyC,EAAE;YAE3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,CAAC,IAAY;YAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,WAAW;YACP,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,SAAS;YACL,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAW,CAAC,IAAI,EAAE,CAAC;YACpE,OAAO;gBACH,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS;gBACnC,MAAM,EAAE,UAAU;aACrB,CAAC;QACN,CAAC;KACJ;IAED,MAAM,YAAY;QACd,KAAK;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,SAAS;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,eAAe;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;KACJ;IAED,MAAM,SAAS;QACJ,KAAK,GAAG,CAAC,CAAC;QACV,MAAM,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"card.spec.js","sourceRoot":"","sources":["../../../src/components/card/card.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,14 +8,14 @@ export type CircularProgressParams = {
|
|
|
8
8
|
icon?: IconKey;
|
|
9
9
|
size?: FontSizeKey | number;
|
|
10
10
|
color?: ColorKey | ColorToken;
|
|
11
|
-
|
|
11
|
+
rotationsPerMinute?: number;
|
|
12
12
|
};
|
|
13
13
|
export declare class CircularProgress extends GameObjects.Container {
|
|
14
14
|
iconText: IconText;
|
|
15
15
|
private pw;
|
|
16
16
|
private rotationSpeed;
|
|
17
17
|
private isSpinning;
|
|
18
|
-
constructor({ scene, x, y, icon, size, color,
|
|
18
|
+
constructor({ scene, x, y, icon, size, color, rotationsPerMinute }: CircularProgressParams);
|
|
19
19
|
/**
|
|
20
20
|
* Start the spinning animation
|
|
21
21
|
*/
|
|
@@ -26,9 +26,9 @@ export declare class CircularProgress extends GameObjects.Container {
|
|
|
26
26
|
stop(): this;
|
|
27
27
|
/**
|
|
28
28
|
* Set the rotation speed
|
|
29
|
-
* @param speed - Rotations per
|
|
29
|
+
* @param speed - Rotations per minute
|
|
30
30
|
*/
|
|
31
|
-
|
|
31
|
+
setRotationsPerMinute(rotationsPerMinute: number): this;
|
|
32
32
|
/**
|
|
33
33
|
* Set the icon
|
|
34
34
|
* @param icon - Font Awesome icon key
|
|
@@ -1 +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,EACL,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,GAAG,UAAU,CAAC;IAC9B,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;IA6BtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;
|
|
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,EACL,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,GAAG,UAAU,CAAC;IAC9B,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;IA6BtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAmBrB;;OAEG;IACa,OAAO,IAAI,IAAI;CAIhC"}
|
|
@@ -3,17 +3,17 @@ import { GameObjects } from 'phaser';
|
|
|
3
3
|
import { getPWFromScene } from '../../utils/get-pw-from-scene';
|
|
4
4
|
const DEFAULT_ICON = 'spinner';
|
|
5
5
|
const DEFAULT_COLOR = 'blue';
|
|
6
|
-
const
|
|
7
|
-
const
|
|
6
|
+
const ROTATIONS_PER_MINUTE = 60; // Default: 60 RPM = 1 rotation per second
|
|
7
|
+
const ONE_MINUTE = 60000; // milliseconds
|
|
8
8
|
export class CircularProgress extends GameObjects.Container {
|
|
9
9
|
iconText;
|
|
10
10
|
pw;
|
|
11
11
|
rotationSpeed;
|
|
12
12
|
isSpinning = true;
|
|
13
|
-
constructor({ scene, x, y, icon = DEFAULT_ICON, size, color = DEFAULT_COLOR,
|
|
13
|
+
constructor({ scene, x, y, icon = DEFAULT_ICON, size, color = DEFAULT_COLOR, rotationsPerMinute = ROTATIONS_PER_MINUTE }) {
|
|
14
14
|
super(scene, x, y);
|
|
15
15
|
this.pw = getPWFromScene(scene);
|
|
16
|
-
this.rotationSpeed =
|
|
16
|
+
this.rotationSpeed = rotationsPerMinute;
|
|
17
17
|
const sizePx = typeof size === 'number'
|
|
18
18
|
? size
|
|
19
19
|
: this.pw.fontSize.px(size ?? 'md');
|
|
@@ -41,10 +41,10 @@ export class CircularProgress extends GameObjects.Container {
|
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Set the rotation speed
|
|
44
|
-
* @param speed - Rotations per
|
|
44
|
+
* @param speed - Rotations per minute
|
|
45
45
|
*/
|
|
46
|
-
|
|
47
|
-
this.rotationSpeed =
|
|
46
|
+
setRotationsPerMinute(rotationsPerMinute) {
|
|
47
|
+
this.rotationSpeed = rotationsPerMinute;
|
|
48
48
|
if (this.isSpinning) {
|
|
49
49
|
this.scene.tweens.killTweensOf(this.iconText);
|
|
50
50
|
this.startSpinning();
|
|
@@ -115,7 +115,8 @@ export class CircularProgress extends GameObjects.Container {
|
|
|
115
115
|
startSpinning() {
|
|
116
116
|
if (!this.isSpinning)
|
|
117
117
|
return;
|
|
118
|
-
|
|
118
|
+
// Convert rotations per minute to duration in milliseconds for one full rotation
|
|
119
|
+
const duration = ONE_MINUTE / this.rotationSpeed;
|
|
119
120
|
this.scene.tweens.add({
|
|
120
121
|
targets: this.iconText,
|
|
121
122
|
rotation: Math.PI * 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAS,MAAM,QAAQ,CAAC;AAQ5C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAY/D,MAAM,YAAY,GAAY,SAAS,CAAC;AACxC,MAAM,aAAa,GAAa,MAAM,CAAC;AACvC,MAAM,oBAAoB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,7 +89,7 @@ describe('CircularProgress', () => {
|
|
|
89
89
|
icon: 'gear',
|
|
90
90
|
color: 'red',
|
|
91
91
|
size: 'lg',
|
|
92
|
-
|
|
92
|
+
rotationsPerMinute: 180, // 3 rotations per second = 180 RPM
|
|
93
93
|
});
|
|
94
94
|
expect(progress.spinning).toBe(true);
|
|
95
95
|
expect(mockTweens.add).toHaveBeenCalled();
|
|
@@ -117,10 +117,10 @@ describe('CircularProgress', () => {
|
|
|
117
117
|
scene: mockScene,
|
|
118
118
|
x: 100,
|
|
119
119
|
y: 200,
|
|
120
|
-
|
|
120
|
+
rotationsPerMinute: 60, // 1 rotation per second = 60 RPM
|
|
121
121
|
});
|
|
122
122
|
vi.clearAllMocks();
|
|
123
|
-
progress.
|
|
123
|
+
progress.setRotationsPerMinute(300); // 5 rotations per second = 300 RPM
|
|
124
124
|
// Should restart animation with new speed
|
|
125
125
|
expect(mockTweens.killTweensOf).toHaveBeenCalled();
|
|
126
126
|
expect(mockTweens.add).toHaveBeenCalled();
|
|
@@ -173,7 +173,7 @@ describe('CircularProgress', () => {
|
|
|
173
173
|
y: 200,
|
|
174
174
|
});
|
|
175
175
|
const result = progress
|
|
176
|
-
.
|
|
176
|
+
.setRotationsPerMinute(180) // 3 rotations per second = 180 RPM
|
|
177
177
|
.setIcon('gear')
|
|
178
178
|
.setColor('red-500')
|
|
179
179
|
.setSize('lg')
|
|
@@ -1 +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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
|
|
1
|
+
{"version":3,"file":"circular-progress.spec.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.spec.ts"],"names":[],"mappings":"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"}
|