hudini 0.19.0 → 0.20.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 (98) hide show
  1. package/README.md +1 -27
  2. package/dist/components/badge/badge.d.ts +94 -0
  3. package/dist/components/badge/badge.d.ts.map +1 -0
  4. package/dist/components/badge/badge.js +180 -0
  5. package/dist/components/badge/badge.js.map +1 -0
  6. package/dist/components/badge/badge.spec.d.ts +2 -0
  7. package/dist/components/badge/badge.spec.d.ts.map +1 -0
  8. package/dist/components/badge/badge.spec.js +195 -0
  9. package/dist/components/badge/badge.spec.js.map +1 -0
  10. package/dist/components/badge/index.d.ts +2 -0
  11. package/dist/components/badge/index.d.ts.map +1 -0
  12. package/dist/components/badge/index.js +2 -0
  13. package/dist/components/badge/index.js.map +1 -0
  14. package/dist/components/icon-button/icon-button.d.ts +2 -8
  15. package/dist/components/icon-button/icon-button.d.ts.map +1 -1
  16. package/dist/components/icon-button/icon-button.js +10 -86
  17. package/dist/components/icon-button/icon-button.js.map +1 -1
  18. package/dist/components/index.d.ts +1 -4
  19. package/dist/components/index.d.ts.map +1 -1
  20. package/dist/components/index.js +1 -4
  21. package/dist/components/index.js.map +1 -1
  22. package/dist/components/panel/panel.d.ts +8 -8
  23. package/dist/components/panel/panel.d.ts.map +1 -1
  24. package/dist/components/panel/panel.js +29 -30
  25. package/dist/components/panel/panel.js.map +1 -1
  26. package/dist/components/text/text.d.ts +21 -4
  27. package/dist/components/text/text.d.ts.map +1 -1
  28. package/dist/components/text/text.js +14 -14
  29. package/dist/components/text/text.js.map +1 -1
  30. package/dist/components/text-button/text-button.d.ts +9 -18
  31. package/dist/components/text-button/text-button.d.ts.map +1 -1
  32. package/dist/components/text-button/text-button.js +38 -81
  33. package/dist/components/text-button/text-button.js.map +1 -1
  34. package/dist/components/text-button/text-button.spec.js +55 -9
  35. package/dist/components/text-button/text-button.spec.js.map +1 -1
  36. package/dist/hudini.js +2842 -4529
  37. package/dist/hudini.min.js +1 -1
  38. package/dist/loaders/load-fonts.d.ts +29 -0
  39. package/dist/loaders/load-fonts.d.ts.map +1 -1
  40. package/dist/loaders/load-fonts.js +20 -1
  41. package/dist/loaders/load-fonts.js.map +1 -1
  42. package/dist/utils/button-style.d.ts +16 -0
  43. package/dist/utils/button-style.d.ts.map +1 -0
  44. package/dist/utils/button-style.js +35 -0
  45. package/dist/utils/button-style.js.map +1 -0
  46. package/dist/utils/index.d.ts +2 -0
  47. package/dist/utils/index.d.ts.map +1 -1
  48. package/dist/utils/index.js +2 -0
  49. package/dist/utils/index.js.map +1 -1
  50. package/dist/utils/number-to-rgb.d.ts +16 -0
  51. package/dist/utils/number-to-rgb.d.ts.map +1 -0
  52. package/dist/utils/number-to-rgb.js +20 -0
  53. package/dist/utils/number-to-rgb.js.map +1 -0
  54. package/package.json +2 -2
  55. package/dist/components/flat-icon-button/flat-icon-button.d.ts +0 -60
  56. package/dist/components/flat-icon-button/flat-icon-button.d.ts.map +0 -1
  57. package/dist/components/flat-icon-button/flat-icon-button.js +0 -279
  58. package/dist/components/flat-icon-button/flat-icon-button.js.map +0 -1
  59. package/dist/components/flat-icon-button/index.d.ts +0 -2
  60. package/dist/components/flat-icon-button/index.d.ts.map +0 -1
  61. package/dist/components/flat-icon-button/index.js +0 -2
  62. package/dist/components/flat-icon-button/index.js.map +0 -1
  63. package/dist/components/flat-section-header/flat-section-header.d.ts +0 -143
  64. package/dist/components/flat-section-header/flat-section-header.d.ts.map +0 -1
  65. package/dist/components/flat-section-header/flat-section-header.js +0 -275
  66. package/dist/components/flat-section-header/flat-section-header.js.map +0 -1
  67. package/dist/components/flat-section-header/flat-section-header.spec.d.ts +0 -2
  68. package/dist/components/flat-section-header/flat-section-header.spec.d.ts.map +0 -1
  69. package/dist/components/flat-section-header/flat-section-header.spec.js +0 -255
  70. package/dist/components/flat-section-header/flat-section-header.spec.js.map +0 -1
  71. package/dist/components/flat-section-header/index.d.ts +0 -2
  72. package/dist/components/flat-section-header/index.d.ts.map +0 -1
  73. package/dist/components/flat-section-header/index.js +0 -2
  74. package/dist/components/flat-section-header/index.js.map +0 -1
  75. package/dist/components/flat-text-button/flat-text-button.d.ts +0 -165
  76. package/dist/components/flat-text-button/flat-text-button.d.ts.map +0 -1
  77. package/dist/components/flat-text-button/flat-text-button.js +0 -325
  78. package/dist/components/flat-text-button/flat-text-button.js.map +0 -1
  79. package/dist/components/flat-text-button/flat-text-button.spec.d.ts +0 -2
  80. package/dist/components/flat-text-button/flat-text-button.spec.d.ts.map +0 -1
  81. package/dist/components/flat-text-button/flat-text-button.spec.js +0 -243
  82. package/dist/components/flat-text-button/flat-text-button.spec.js.map +0 -1
  83. package/dist/components/flat-text-button/index.d.ts +0 -2
  84. package/dist/components/flat-text-button/index.d.ts.map +0 -1
  85. package/dist/components/flat-text-button/index.js +0 -2
  86. package/dist/components/flat-text-button/index.js.map +0 -1
  87. package/dist/components/section-header/index.d.ts +0 -2
  88. package/dist/components/section-header/index.d.ts.map +0 -1
  89. package/dist/components/section-header/index.js +0 -2
  90. package/dist/components/section-header/index.js.map +0 -1
  91. package/dist/components/section-header/section-header.d.ts +0 -149
  92. package/dist/components/section-header/section-header.d.ts.map +0 -1
  93. package/dist/components/section-header/section-header.js +0 -292
  94. package/dist/components/section-header/section-header.js.map +0 -1
  95. package/dist/components/section-header/section-header.spec.d.ts +0 -2
  96. package/dist/components/section-header/section-header.spec.d.ts.map +0 -1
  97. package/dist/components/section-header/section-header.spec.js +0 -264
  98. package/dist/components/section-header/section-header.spec.js.map +0 -1
@@ -1,255 +0,0 @@
1
- /* eslint-disable no-magic-numbers */
2
- /* eslint-disable max-lines-per-function */
3
- import { Scene } from 'phaser';
4
- import { describe, expect, it, vi } from 'vitest';
5
- // Mock phaser-wind
6
- vi.mock('phaser-wind', () => ({
7
- Color: {
8
- rgb: vi.fn((color) => `rgb-${color}`),
9
- hex: vi.fn((color) => `hex-${color}`),
10
- },
11
- }));
12
- // Mock the getPWFromScene utility
13
- vi.mock('../../utils/get-pw-from-scene', () => ({
14
- getPWFromScene: vi.fn(() => ({
15
- fontSize: {
16
- px: vi.fn((size) => {
17
- const sizes = { xs: 12, sm: 14, md: 16, lg: 18, xl: 20 };
18
- return sizes[size] || 18;
19
- }),
20
- },
21
- spacing: {
22
- px: vi.fn((spacing) => {
23
- const spacings = { xs: 4, sm: 8, md: 12, lg: 16, xl: 20 };
24
- return spacings[spacing] || 16;
25
- }),
26
- },
27
- radius: {
28
- px: vi.fn((radius) => {
29
- const radiuses = { none: 0, sm: 4, md: 8, lg: 12, xl: 16, full: 9999 };
30
- return radiuses[radius] || 8;
31
- }),
32
- },
33
- font: {
34
- family: vi.fn((font) => {
35
- const fonts = {
36
- primary: 'Inter, sans-serif',
37
- secondary: 'Roboto, Arial, sans-serif',
38
- monospace: 'Courier, monospace',
39
- display: 'Poppins, Inter, sans-serif',
40
- };
41
- return (fonts[font] || 'Poppins, Inter, sans-serif');
42
- }),
43
- },
44
- })),
45
- }));
46
- // Mock the Text component
47
- vi.mock('../text', () => {
48
- class MockText {
49
- text;
50
- style;
51
- constructor(params) {
52
- this.text = params.text;
53
- this.style = {
54
- fontSize: params.size ?? 22,
55
- fontFamily: params.fontFamily ?? 'Bebas Neue',
56
- };
57
- }
58
- setText(text) {
59
- this.text = text;
60
- return this;
61
- }
62
- setOrigin() {
63
- return this;
64
- }
65
- setFontSize(size) {
66
- this.style['fontSize'] = size;
67
- return this;
68
- }
69
- setFontFamily(family) {
70
- this.style['fontFamily'] = family;
71
- return this;
72
- }
73
- setColor(color) {
74
- this.style['color'] = color;
75
- return this;
76
- }
77
- getBounds() {
78
- const charWidth = 10;
79
- const lineHeight = parseInt(this.style['fontSize']) || 18;
80
- return {
81
- width: this.text.length * charWidth,
82
- height: lineHeight,
83
- };
84
- }
85
- }
86
- return { Text: MockText };
87
- });
88
- // Mock Phaser
89
- vi.mock('phaser', () => {
90
- class MockSprite {
91
- // eslint-disable-next-line no-unused-vars
92
- constructor(_x, _y, _texture) { }
93
- setOrigin() {
94
- return this;
95
- }
96
- setTexture() {
97
- return this;
98
- }
99
- }
100
- class MockGraphics {
101
- clear() {
102
- return this;
103
- }
104
- fillStyle() {
105
- return this;
106
- }
107
- fillRoundedRect() {
108
- return this;
109
- }
110
- lineStyle() {
111
- return this;
112
- }
113
- strokeRoundedRect() {
114
- return this;
115
- }
116
- generateTexture() {
117
- return this;
118
- }
119
- destroy() {
120
- return this;
121
- }
122
- }
123
- class Container {
124
- scene;
125
- // eslint-disable-next-line no-unused-vars
126
- constructor(_scene, _x, _y) {
127
- this.scene = _scene;
128
- }
129
- add() {
130
- return this;
131
- }
132
- setInteractive() {
133
- return this;
134
- }
135
- on() {
136
- return this;
137
- }
138
- setScale() {
139
- return this;
140
- }
141
- }
142
- class MockText {
143
- text;
144
- style;
145
- constructor(_x, _y, text, style = {}) {
146
- this.text = text;
147
- this.style = style;
148
- }
149
- setText(text) {
150
- this.text = text;
151
- return this;
152
- }
153
- setOrigin() {
154
- return this;
155
- }
156
- setFontSize(size) {
157
- this.style['fontSize'] = size;
158
- return this;
159
- }
160
- setFontFamily(family) {
161
- this.style['fontFamily'] = family;
162
- return this;
163
- }
164
- setColor(color) {
165
- this.style['color'] = color;
166
- return this;
167
- }
168
- getBounds() {
169
- const charWidth = 10;
170
- const lineHeight = parseInt(this.style['fontSize']) ?? 18;
171
- return {
172
- width: this.text.length * charWidth,
173
- height: lineHeight,
174
- };
175
- }
176
- }
177
- class Scene {
178
- add = {
179
- text: vi.fn((x, y, text, style) => new MockText(x, y, text, style)),
180
- sprite: vi.fn((x, y, texture) => new MockSprite(x, y, texture)),
181
- graphics: vi.fn(() => new MockGraphics()),
182
- };
183
- }
184
- class BasePlugin {
185
- constructor() { }
186
- }
187
- const GameObjects = { Container };
188
- const Plugins = { BasePlugin };
189
- return { GameObjects, Scene, Plugins };
190
- });
191
- import { FlatSectionHeader } from './flat-section-header';
192
- describe('FlatSectionHeader', () => {
193
- it('should create a FlatSectionHeader instance', () => {
194
- const scene = new Scene();
195
- const flatSectionHeader = new FlatSectionHeader({
196
- scene,
197
- x: 100,
198
- y: 100,
199
- text: 'Section Title',
200
- });
201
- expect(flatSectionHeader).toBeInstanceOf(FlatSectionHeader);
202
- });
203
- it('should create with custom properties', () => {
204
- const scene = new Scene();
205
- const flatSectionHeader = new FlatSectionHeader({
206
- scene,
207
- x: 100,
208
- y: 100,
209
- text: 'Custom Header',
210
- fontSize: 'xl',
211
- font: 'display',
212
- backgroundColor: 'purple-600',
213
- textColor: 'white',
214
- borderRadius: 'lg',
215
- margin: '6',
216
- });
217
- expect(flatSectionHeader).toBeInstanceOf(FlatSectionHeader);
218
- });
219
- it('should support method chaining for colors', () => {
220
- const scene = new Scene();
221
- const flatSectionHeader = new FlatSectionHeader({
222
- scene,
223
- x: 100,
224
- y: 100,
225
- text: 'Test Header',
226
- });
227
- const result = flatSectionHeader
228
- .setTextColor('white')
229
- .setBackgroundColor('blue-600');
230
- expect(result).toBe(flatSectionHeader);
231
- });
232
- it('should handle borderRadius full correctly in constructor', () => {
233
- const scene = new Scene();
234
- const flatSectionHeader = new FlatSectionHeader({
235
- scene,
236
- x: 100,
237
- y: 100,
238
- text: 'Full Radius Header',
239
- borderRadius: 'full',
240
- });
241
- expect(flatSectionHeader).toBeInstanceOf(FlatSectionHeader);
242
- });
243
- it('should use default display font', () => {
244
- const scene = new Scene();
245
- const flatSectionHeader = new FlatSectionHeader({
246
- scene,
247
- x: 100,
248
- y: 100,
249
- text: 'Default Style',
250
- });
251
- expect(flatSectionHeader).toBeInstanceOf(FlatSectionHeader);
252
- expect(flatSectionHeader.headerText).toBeDefined();
253
- });
254
- });
255
- //# sourceMappingURL=flat-section-header.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flat-section-header.spec.js","sourceRoot":"","sources":["../../../src/components/flat-section-header/flat-section-header.spec.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './flat-section-header';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/flat-section-header/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './flat-section-header';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/flat-section-header/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -1,165 +0,0 @@
1
- import { GameObjects, Scene } from 'phaser';
2
- import { type ColorKey, type FontKey, type FontSizeKey, type RadiusKey, type SpacingKey } from 'phaser-wind';
3
- import { ContainerInteractive } from '../container-interactive';
4
- /**
5
- * Parameters for creating a FlatTextButton.
6
- */
7
- export type FlatTextButtonParams = {
8
- /** Phaser scene where the button will be added. */
9
- scene: Scene;
10
- /** X position of the button. */
11
- x: number;
12
- /** Y position of the button. */
13
- y: number;
14
- /** Button text. */
15
- text: string;
16
- /**
17
- * Font size in px (number) or a Phaser Wind font size token (string).
18
- * Defaults to 'lg'.
19
- */
20
- fontSize?: FontSizeKey | number;
21
- /**
22
- * Font family. Defaults to 'Bebas Neue'.
23
- */
24
- font?: FontKey | string;
25
- /**
26
- * Background color. Defaults to 'blue'.
27
- */
28
- color?: ColorKey | string;
29
- /**
30
- * Text color. Defaults to 'white'.
31
- */
32
- textColor?: ColorKey | string;
33
- /**
34
- * Border radius in px (number) or a Phaser Wind radius token (string).
35
- * Defaults to 'md'.
36
- */
37
- borderRadius?: RadiusKey | number;
38
- /**
39
- * Padding in px (number) or a Phaser Wind spacing token (string).
40
- * Defaults to '4'.
41
- */
42
- padding?: SpacingKey | number;
43
- /**
44
- * Callback function for click event.
45
- */
46
- onClick?: () => void;
47
- };
48
- /**
49
- * A customizable flat text button component for Phaser, supporting auto-sizing,
50
- * design tokens, and interactive effects.
51
- */
52
- export declare class FlatTextButton extends ContainerInteractive<Phaser.GameObjects.Sprite> {
53
- /** The background sprite of the button. */
54
- backgroundSprite: GameObjects.Sprite;
55
- /** The white border sprite of the button. */
56
- whiteBorderSprite: GameObjects.Sprite;
57
- /** The text object of the button. */
58
- buttonText: GameObjects.Text;
59
- private pw;
60
- private fontSizePx;
61
- private paddingPx;
62
- private borderRadiusPx;
63
- private colorButton;
64
- private textColorValue;
65
- private fontFamily;
66
- private textValue;
67
- /**
68
- * Creates a new FlatTextButton instance.
69
- * @param params FlatTextButtonParams
70
- */
71
- constructor({ scene, x, y, text, fontSize, font, color, textColor, borderRadius, padding, onClick, }: FlatTextButtonParams);
72
- /**
73
- * Sets the button text.
74
- * @param text The new text.
75
- * @returns This FlatTextButton instance.
76
- */
77
- setText(text: string): this;
78
- /**
79
- * Sets the font size.
80
- * @param fontSize Font size in px or token.
81
- * @returns This FlatTextButton instance.
82
- */
83
- setFontSize(fontSize: FontSizeKey | number): this;
84
- /**
85
- * Sets the font family.
86
- * @param font Font family as string or token.
87
- * @returns This FlatTextButton instance.
88
- */
89
- setFont(font: FontKey | string): this;
90
- /**
91
- * Sets the background color.
92
- * @param color Color as token or CSS string.
93
- * @returns This FlatTextButton instance.
94
- */
95
- setColor(color: ColorKey | string): this;
96
- /**
97
- * Sets the text color.
98
- * @param color Color as token or CSS string.
99
- * @returns This FlatTextButton instance.
100
- */
101
- setTextColor(color: ColorKey | string): this;
102
- /**
103
- * Sets the border radius.
104
- * @param borderRadius Border radius in px or token.
105
- * @returns This FlatTextButton instance.
106
- */
107
- setBorderRadius(borderRadius: RadiusKey | number): this;
108
- /**
109
- * Sets the padding.
110
- * @param padding Padding in px or token.
111
- * @returns This FlatTextButton instance.
112
- */
113
- setPadding(padding: SpacingKey | number): this;
114
- /**
115
- * Creates the button text GameObject.
116
- * @param scene Phaser scene.
117
- */
118
- private createButtonText;
119
- /**
120
- * Creates the white border sprite for the button.
121
- * @param scene Phaser scene.
122
- */
123
- private createWhiteBorderSprite;
124
- /**
125
- * Creates the background sprite for the button.
126
- * @param scene Phaser scene.
127
- */
128
- private createBackgroundSprite;
129
- /**
130
- * Regenerates the background texture based on current state.
131
- */
132
- private regenerateSprites;
133
- /**
134
- * Calculates the button's width and height based on text and padding.
135
- * @returns Object with width and height.
136
- */
137
- private getButtonDimensions;
138
- /**
139
- * Creates a texture for the button's white border.
140
- * @param scene Phaser scene.
141
- * @returns The texture key.
142
- */
143
- private createWhiteBorderTexture;
144
- /**
145
- * Creates a texture for the button's background.
146
- * @param scene Phaser scene.
147
- * @returns The texture key.
148
- */
149
- private createBackgroundTexture;
150
- /**
151
- * Adds the button's visual elements to the container.
152
- */
153
- private setupContainer;
154
- /**
155
- * Sets up interactivity for the button, including hover and click effects.
156
- * @param onClick Optional click callback.
157
- */
158
- private setupInteractivity;
159
- /**
160
- * Gets the interactive sprite of the icon button
161
- * @returns The interactive sprite
162
- */
163
- get interactive(): Pick<GameObjects.Sprite, 'on' | 'off' | 'setInteractive' | 'setInteractive' | 'once'>;
164
- }
165
- //# sourceMappingURL=flat-text-button.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flat-text-button.d.ts","sourceRoot":"","sources":["../../../src/components/flat-text-button/flat-text-button.ts"],"names":[],"mappings":"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"}