hudini 0.17.2 → 0.18.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/components/card/card.d.ts +34 -9
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/card.js +118 -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 +111 -20
- 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 +126 -71
- 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 +108 -9
- package/dist/components/text-button/text-button.spec.js.map +1 -1
- package/dist/hudini.js +4220 -467
- 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 +43 -0
- package/dist/utils/color-variants.d.ts.map +1 -0
- package/dist/utils/color-variants.js +72 -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,20 @@
|
|
|
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
|
+
// eslint-disable-next-line no-magic-numbers
|
|
8
|
+
const WHITE_BORDER_TOTAL_EXTRA_PIXELS = WHITE_BORDER_EXTRA_PIXELS_PER_SIDE * 3; // 6 pixels total
|
|
9
|
+
const WHITE_BORDER_RADIUS_EXTRA = 2;
|
|
4
10
|
/**
|
|
5
11
|
* A flexible card component that adapts to its child content size
|
|
6
12
|
*/
|
|
7
|
-
export class Card extends
|
|
8
|
-
/** The
|
|
9
|
-
|
|
13
|
+
export class Card extends ContainerInteractive {
|
|
14
|
+
/** The white border sprite of the card. */
|
|
15
|
+
whiteBorderSprite;
|
|
16
|
+
/** The background sprite of the card. */
|
|
17
|
+
backgroundSprite;
|
|
10
18
|
/** The child component contained within the card */
|
|
11
19
|
child;
|
|
12
20
|
/** Reference to the PhaserWind plugin */
|
|
@@ -24,7 +32,7 @@ export class Card extends GameObjects.Container {
|
|
|
24
32
|
* @param params Configuration parameters for the card
|
|
25
33
|
*/
|
|
26
34
|
constructor({ scene, x, y, backgroundColor = 'white', borderRadius = 'md', margin = '4', child, width, height, }) {
|
|
27
|
-
super(scene, x, y);
|
|
35
|
+
super({ scene, x, y });
|
|
28
36
|
this.pw = getPWFromScene(scene);
|
|
29
37
|
// Store values
|
|
30
38
|
this.marginPx =
|
|
@@ -40,12 +48,14 @@ export class Card extends GameObjects.Container {
|
|
|
40
48
|
this.child = child;
|
|
41
49
|
// Check if explicit size was provided
|
|
42
50
|
this.hasExplicitSize = width !== undefined && height !== undefined;
|
|
43
|
-
// Create
|
|
44
|
-
this.
|
|
51
|
+
// Create sprites and setup container
|
|
52
|
+
this.createWhiteBorderSprite(scene);
|
|
53
|
+
this.createBackgroundSprite(scene);
|
|
45
54
|
this.setupContainer();
|
|
55
|
+
this.hitArea = this.backgroundSprite;
|
|
46
56
|
}
|
|
47
57
|
/**
|
|
48
|
-
* Override setSize to
|
|
58
|
+
* Override setSize to regenerate sprites when size changes
|
|
49
59
|
* @param width Width in pixels
|
|
50
60
|
* @param height Height in pixels
|
|
51
61
|
* @returns this for chaining
|
|
@@ -56,8 +66,8 @@ export class Card extends GameObjects.Container {
|
|
|
56
66
|
// Set size directly on the container to avoid recursion
|
|
57
67
|
this.width = width;
|
|
58
68
|
this.height = height;
|
|
59
|
-
//
|
|
60
|
-
this.
|
|
69
|
+
// Regenerate sprites with new size
|
|
70
|
+
this.regenerateSprites();
|
|
61
71
|
return this;
|
|
62
72
|
}
|
|
63
73
|
/**
|
|
@@ -85,7 +95,7 @@ export class Card extends GameObjects.Container {
|
|
|
85
95
|
*/
|
|
86
96
|
setBackgroundColor(color) {
|
|
87
97
|
this.backgroundColorValue = Color.rgb(color);
|
|
88
|
-
this.
|
|
98
|
+
this.regenerateSprites();
|
|
89
99
|
return this;
|
|
90
100
|
}
|
|
91
101
|
/**
|
|
@@ -98,7 +108,7 @@ export class Card extends GameObjects.Container {
|
|
|
98
108
|
typeof borderRadius === 'number'
|
|
99
109
|
? borderRadius
|
|
100
110
|
: this.pw.radius.px(borderRadius ?? 'md');
|
|
101
|
-
this.
|
|
111
|
+
this.regenerateSprites();
|
|
102
112
|
return this;
|
|
103
113
|
}
|
|
104
114
|
/**
|
|
@@ -131,18 +141,38 @@ export class Card extends GameObjects.Container {
|
|
|
131
141
|
return this;
|
|
132
142
|
}
|
|
133
143
|
/**
|
|
134
|
-
* Creates the
|
|
135
|
-
* @param scene
|
|
144
|
+
* Creates the white border sprite for the card.
|
|
145
|
+
* @param scene Phaser scene.
|
|
136
146
|
*/
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
this.
|
|
147
|
+
createWhiteBorderSprite(scene) {
|
|
148
|
+
const whiteBorderTexture = this.createWhiteBorderTexture(scene);
|
|
149
|
+
this.whiteBorderSprite = scene.add.sprite(0, 0, whiteBorderTexture);
|
|
150
|
+
this.whiteBorderSprite.setOrigin(0.5, 0.5);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Creates the background sprite for the card.
|
|
154
|
+
* @param scene Phaser scene.
|
|
155
|
+
*/
|
|
156
|
+
createBackgroundSprite(scene) {
|
|
157
|
+
const backgroundTexture = this.createBackgroundTexture(scene);
|
|
158
|
+
this.backgroundSprite = scene.add.sprite(0, 0, backgroundTexture);
|
|
159
|
+
this.backgroundSprite.setOrigin(0.5, 0.5);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Regenerates the background and white border textures based on current state.
|
|
163
|
+
*/
|
|
164
|
+
regenerateSprites() {
|
|
165
|
+
// Regenerate textures
|
|
166
|
+
const whiteBorderTexture = this.createWhiteBorderTexture(this.scene);
|
|
167
|
+
const backgroundTexture = this.createBackgroundTexture(this.scene);
|
|
168
|
+
this.whiteBorderSprite.setTexture(whiteBorderTexture);
|
|
169
|
+
this.backgroundSprite.setTexture(backgroundTexture);
|
|
140
170
|
}
|
|
141
171
|
/**
|
|
142
172
|
* Sets up the container with background and child
|
|
143
173
|
*/
|
|
144
174
|
setupContainer() {
|
|
145
|
-
this.add([this.
|
|
175
|
+
this.add([this.whiteBorderSprite, this.backgroundSprite]);
|
|
146
176
|
if (this.child) {
|
|
147
177
|
this.add([this.child]);
|
|
148
178
|
}
|
|
@@ -171,8 +201,8 @@ export class Card extends GameObjects.Container {
|
|
|
171
201
|
// Set size directly (don't use setSize to avoid marking as explicit size)
|
|
172
202
|
this.width = cardWidth;
|
|
173
203
|
this.height = cardHeight;
|
|
174
|
-
//
|
|
175
|
-
this.
|
|
204
|
+
// Regenerate sprites with new dimensions
|
|
205
|
+
this.regenerateSprites();
|
|
176
206
|
// Position child in the center of the card
|
|
177
207
|
this.child.setPosition(childX, childY);
|
|
178
208
|
}
|
|
@@ -246,40 +276,79 @@ export class Card extends GameObjects.Container {
|
|
|
246
276
|
return { w, h };
|
|
247
277
|
}
|
|
248
278
|
/**
|
|
249
|
-
*
|
|
279
|
+
* Calculates the card's width and height based on child and margin.
|
|
280
|
+
* @returns Object with width and height.
|
|
250
281
|
*/
|
|
251
|
-
|
|
252
|
-
let
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
282
|
+
getCardDimensions() {
|
|
283
|
+
let width = 0;
|
|
284
|
+
let height = 0;
|
|
285
|
+
if (this.hasExplicitSize) {
|
|
286
|
+
width = this.width;
|
|
287
|
+
height = this.height;
|
|
288
|
+
}
|
|
289
|
+
else if (this.child) {
|
|
290
|
+
const { w: cw, h: ch } = this.measureChild(this.child);
|
|
291
|
+
width = cw + this.marginPx * 2;
|
|
292
|
+
height = ch + this.marginPx * 2;
|
|
256
293
|
}
|
|
257
294
|
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
|
-
}
|
|
295
|
+
const DEFAULT_SIZE = 100;
|
|
296
|
+
width = this.width || DEFAULT_SIZE;
|
|
297
|
+
height = this.height || DEFAULT_SIZE;
|
|
269
298
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
299
|
+
return { width, height };
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Creates a texture for the card's white border.
|
|
303
|
+
* @param scene Phaser scene.
|
|
304
|
+
* @returns The texture key.
|
|
305
|
+
*/
|
|
306
|
+
createWhiteBorderTexture(scene) {
|
|
307
|
+
const { width, height } = this.getCardDimensions();
|
|
308
|
+
const textureKey = `card_whiteBorder_${this.borderRadiusPx}_${width}_${height}`;
|
|
309
|
+
// White border is larger on each side
|
|
310
|
+
const borderWidth = width + WHITE_BORDER_TOTAL_EXTRA_PIXELS;
|
|
311
|
+
const borderHeight = height + WHITE_BORDER_TOTAL_EXTRA_PIXELS;
|
|
312
|
+
// Add some padding for texture
|
|
313
|
+
const padding = 8;
|
|
314
|
+
const textureWidth = borderWidth + padding * 2;
|
|
315
|
+
const textureHeight = borderHeight + padding * 2;
|
|
316
|
+
const graphics = scene.add.graphics();
|
|
317
|
+
const maxRadius = Math.floor(Math.min(borderWidth / 2, borderHeight / 2));
|
|
318
|
+
const effectiveRadius = Math.min(this.borderRadiusPx + WHITE_BORDER_RADIUS_EXTRA, maxRadius);
|
|
319
|
+
const finalRadius = Math.max(0, effectiveRadius);
|
|
320
|
+
// White border (outer)
|
|
321
|
+
graphics.fillStyle(Color.hex('white'), 1);
|
|
322
|
+
graphics.fillRoundedRect(padding, padding, borderWidth, borderHeight, finalRadius);
|
|
323
|
+
graphics.generateTexture(textureKey, textureWidth, textureHeight);
|
|
324
|
+
graphics.destroy();
|
|
325
|
+
return textureKey;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Creates a texture for the card's background.
|
|
329
|
+
* @param scene Phaser scene.
|
|
330
|
+
* @returns The texture key.
|
|
331
|
+
*/
|
|
332
|
+
createBackgroundTexture(scene) {
|
|
333
|
+
const { width, height } = this.getCardDimensions();
|
|
334
|
+
const textureKey = `card_bg_${this.backgroundColorValue}_${this.borderRadiusPx}_${width}_${height}`;
|
|
335
|
+
// Add some padding for texture
|
|
336
|
+
const padding = 8;
|
|
337
|
+
const textureWidth = width + padding * 2;
|
|
338
|
+
const textureHeight = height + padding * 2;
|
|
339
|
+
const graphics = scene.add.graphics();
|
|
340
|
+
const maxRadius = Math.floor(Math.min(width / 2, height / 2));
|
|
276
341
|
const effectiveRadius = Math.min(this.borderRadiusPx, maxRadius);
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
342
|
+
const finalRadius = Math.max(0, effectiveRadius);
|
|
343
|
+
// Draw background with white fill and black stroke
|
|
344
|
+
graphics.fillStyle(Color.hex(this.backgroundColorValue), 1);
|
|
345
|
+
graphics.fillRoundedRect(padding, padding, width, height, finalRadius);
|
|
346
|
+
// Black stroke border
|
|
347
|
+
graphics.lineStyle(BLACK_BORDER_THICKNESS, Color.hex('black'), 1);
|
|
348
|
+
graphics.strokeRoundedRect(padding, padding, width, height, finalRadius);
|
|
349
|
+
graphics.generateTexture(textureKey, textureWidth, textureHeight);
|
|
350
|
+
graphics.destroy();
|
|
351
|
+
return textureKey;
|
|
283
352
|
}
|
|
284
353
|
}
|
|
285
354
|
//# 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":"AAGA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9D,oBAAoB;AACpB,MAAM,UAAU,GAAG;IACjB,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;CACtB,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,MAAM,EAAE,UAAU;CACC,CAAC;AAEtB,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;IACvB,WAAW,EAAE;QACX,SAAS,EAAE,MAAM,SAAS;YACjB,CAAC,CAAS;YACV,CAAC,CAAS;YACV,KAAK,CAAU;YACf,IAAI,GAAc,EAAE,CAAC;YAE5B,YAAY,KAAc,EAAE,CAAS,EAAE,CAAS;gBAC9C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACb,CAAC;YAED,GAAG,CAAC,QAAmB;gBACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO;gBACL,eAAe;YACjB,CAAC;SACF;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,QAAQ;QAGH;QAFZ,QAAQ,GAAG,CAAC,CAAC;QAEpB,YAAmB,MAAe;YAAf,WAAM,GAAN,MAAM,CAAS;QAAI,CAAC;QAEvC,SAAS,KAAW,OAAO,IAAI,CAAC,CAAC,CAAC;QAClC,OAAO,KAAW,OAAO,IAAI,CAAC,CAAC,CAAC;QAChC,QAAQ,KAAW,OAAO,IAAI,CAAC,CAAC,CAAC;QACjC,WAAW,KAAW,OAAO,IAAI,CAAC,CAAC,CAAC;KACrC;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5B,KAAK,EAAE;QACL,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC;KAC9C;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9C,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3B,KAAK,EAAE;YACL,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC;SAC9C;QACD,QAAQ,EAAE;YACR,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE;gBACzB,MAAM,OAAO,GAA2B;oBACtC,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,EAAE;iBACP,CAAC;gBACF,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,CAAC,CAAC;SACH;KACF,CAAC,CAAC;CACJ,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,UAAU,CAAC,GAAG,EAAE;IACd,EAAE,CAAC,aAAa,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;YACpC,KAAK,EAAE,SAAS;YAChB,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,GAAG;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;YACpC,KAAK,EAAE,SAAS;YAChB,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,GAAG;YACN,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,IAAI;YACV,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"circular-progress.spec.js","sourceRoot":"","sources":["../../../src/components/circular-progress/circular-progress.spec.ts"],"names":[],"mappings":"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"}
|