hudini 0.19.0 → 0.21.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 (227) hide show
  1. package/README.md +1 -27
  2. package/dist/components/alert/alert.d.ts +161 -0
  3. package/dist/components/alert/alert.d.ts.map +1 -0
  4. package/dist/components/alert/alert.js +304 -0
  5. package/dist/components/alert/alert.js.map +1 -0
  6. package/dist/components/alert/alert.spec.d.ts +2 -0
  7. package/dist/components/alert/alert.spec.d.ts.map +1 -0
  8. package/dist/components/alert/alert.spec.js +235 -0
  9. package/dist/components/alert/alert.spec.js.map +1 -0
  10. package/dist/components/alert/index.d.ts +2 -0
  11. package/dist/components/alert/index.d.ts.map +1 -0
  12. package/dist/components/alert/index.js +2 -0
  13. package/dist/components/alert/index.js.map +1 -0
  14. package/dist/components/badge/badge.d.ts +94 -0
  15. package/dist/components/badge/badge.d.ts.map +1 -0
  16. package/dist/components/badge/badge.js +180 -0
  17. package/dist/components/badge/badge.js.map +1 -0
  18. package/dist/components/badge/badge.spec.d.ts +2 -0
  19. package/dist/components/badge/badge.spec.d.ts.map +1 -0
  20. package/dist/components/badge/badge.spec.js +197 -0
  21. package/dist/components/badge/badge.spec.js.map +1 -0
  22. package/dist/components/badge/index.d.ts +2 -0
  23. package/dist/components/badge/index.d.ts.map +1 -0
  24. package/dist/components/badge/index.js +2 -0
  25. package/dist/components/badge/index.js.map +1 -0
  26. package/dist/components/card/card.d.ts +11 -15
  27. package/dist/components/card/card.d.ts.map +1 -1
  28. package/dist/components/card/card.js +37 -59
  29. package/dist/components/card/card.js.map +1 -1
  30. package/dist/components/checkbox/checkbox.d.ts +153 -0
  31. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  32. package/dist/components/checkbox/checkbox.js +329 -0
  33. package/dist/components/checkbox/checkbox.js.map +1 -0
  34. package/dist/components/checkbox/checkbox.spec.d.ts +2 -0
  35. package/dist/components/checkbox/checkbox.spec.d.ts.map +1 -0
  36. package/dist/components/checkbox/checkbox.spec.js +346 -0
  37. package/dist/components/checkbox/checkbox.spec.js.map +1 -0
  38. package/dist/components/checkbox/index.d.ts +2 -0
  39. package/dist/components/checkbox/index.d.ts.map +1 -0
  40. package/dist/components/checkbox/index.js +2 -0
  41. package/dist/components/checkbox/index.js.map +1 -0
  42. package/dist/components/circular-progress/circular-progress.d.ts.map +1 -1
  43. package/dist/components/circular-progress/circular-progress.js +2 -1
  44. package/dist/components/circular-progress/circular-progress.js.map +1 -1
  45. package/dist/components/circular-progress/circular-progress.spec.js +2 -0
  46. package/dist/components/circular-progress/circular-progress.spec.js.map +1 -1
  47. package/dist/components/dock/dock.d.ts +115 -0
  48. package/dist/components/dock/dock.d.ts.map +1 -0
  49. package/dist/components/dock/dock.js +168 -0
  50. package/dist/components/dock/dock.js.map +1 -0
  51. package/dist/components/dock/dock.spec.d.ts +2 -0
  52. package/dist/components/dock/dock.spec.d.ts.map +1 -0
  53. package/dist/components/dock/dock.spec.js +178 -0
  54. package/dist/components/dock/dock.spec.js.map +1 -0
  55. package/dist/components/dock/index.d.ts +2 -0
  56. package/dist/components/dock/index.d.ts.map +1 -0
  57. package/dist/components/dock/index.js +2 -0
  58. package/dist/components/dock/index.js.map +1 -0
  59. package/dist/components/icon-button/icon-button.d.ts +18 -9
  60. package/dist/components/icon-button/icon-button.d.ts.map +1 -1
  61. package/dist/components/icon-button/icon-button.js +57 -101
  62. package/dist/components/icon-button/icon-button.js.map +1 -1
  63. package/dist/components/index.d.ts +10 -5
  64. package/dist/components/index.d.ts.map +1 -1
  65. package/dist/components/index.js +10 -5
  66. package/dist/components/index.js.map +1 -1
  67. package/dist/components/linear-progress/linear-progress.d.ts.map +1 -1
  68. package/dist/components/linear-progress/linear-progress.js +4 -4
  69. package/dist/components/linear-progress/linear-progress.js.map +1 -1
  70. package/dist/components/linear-progress/linear-progress.spec.js +2 -0
  71. package/dist/components/linear-progress/linear-progress.spec.js.map +1 -1
  72. package/dist/components/modal/index.d.ts +2 -0
  73. package/dist/components/modal/index.d.ts.map +1 -0
  74. package/dist/components/modal/index.js +2 -0
  75. package/dist/components/modal/index.js.map +1 -0
  76. package/dist/components/modal/modal.d.ts +193 -0
  77. package/dist/components/modal/modal.d.ts.map +1 -0
  78. package/dist/components/modal/modal.js +382 -0
  79. package/dist/components/modal/modal.js.map +1 -0
  80. package/dist/components/modal/modal.spec.d.ts +2 -0
  81. package/dist/components/modal/modal.spec.d.ts.map +1 -0
  82. package/dist/components/modal/modal.spec.js +360 -0
  83. package/dist/components/modal/modal.spec.js.map +1 -0
  84. package/dist/components/overlay/index.d.ts +2 -0
  85. package/dist/components/overlay/index.d.ts.map +1 -0
  86. package/dist/components/overlay/index.js +2 -0
  87. package/dist/components/overlay/index.js.map +1 -0
  88. package/dist/components/overlay/overlay.d.ts +75 -0
  89. package/dist/components/overlay/overlay.d.ts.map +1 -0
  90. package/dist/components/overlay/overlay.js +106 -0
  91. package/dist/components/overlay/overlay.js.map +1 -0
  92. package/dist/components/overlay/overlay.spec.d.ts +2 -0
  93. package/dist/components/overlay/overlay.spec.d.ts.map +1 -0
  94. package/dist/components/overlay/overlay.spec.js +135 -0
  95. package/dist/components/overlay/overlay.spec.js.map +1 -0
  96. package/dist/components/radial-progress/radial-progress.d.ts.map +1 -1
  97. package/dist/components/radial-progress/radial-progress.js +3 -2
  98. package/dist/components/radial-progress/radial-progress.js.map +1 -1
  99. package/dist/components/radio/index.d.ts +2 -0
  100. package/dist/components/radio/index.d.ts.map +1 -0
  101. package/dist/components/radio/index.js +2 -0
  102. package/dist/components/radio/index.js.map +1 -0
  103. package/dist/components/radio/radio.d.ts +157 -0
  104. package/dist/components/radio/radio.d.ts.map +1 -0
  105. package/dist/components/radio/radio.js +312 -0
  106. package/dist/components/radio/radio.js.map +1 -0
  107. package/dist/components/radio/radio.spec.d.ts +2 -0
  108. package/dist/components/radio/radio.spec.d.ts.map +1 -0
  109. package/dist/components/radio/radio.spec.js +353 -0
  110. package/dist/components/radio/radio.spec.js.map +1 -0
  111. package/dist/components/radio-group/index.d.ts +2 -0
  112. package/dist/components/radio-group/index.d.ts.map +1 -0
  113. package/dist/components/radio-group/index.js +2 -0
  114. package/dist/components/radio-group/index.js.map +1 -0
  115. package/dist/components/radio-group/radio-group.d.ts +122 -0
  116. package/dist/components/radio-group/radio-group.d.ts.map +1 -0
  117. package/dist/components/radio-group/radio-group.js +165 -0
  118. package/dist/components/radio-group/radio-group.js.map +1 -0
  119. package/dist/components/radio-group/radio-group.spec.d.ts +2 -0
  120. package/dist/components/radio-group/radio-group.spec.d.ts.map +1 -0
  121. package/dist/components/radio-group/radio-group.spec.js +205 -0
  122. package/dist/components/radio-group/radio-group.spec.js.map +1 -0
  123. package/dist/components/stack/index.d.ts +2 -0
  124. package/dist/components/stack/index.d.ts.map +1 -0
  125. package/dist/components/stack/index.js +2 -0
  126. package/dist/components/stack/index.js.map +1 -0
  127. package/dist/components/stack/stack.d.ts +118 -0
  128. package/dist/components/stack/stack.d.ts.map +1 -0
  129. package/dist/components/stack/stack.js +137 -0
  130. package/dist/components/stack/stack.js.map +1 -0
  131. package/dist/components/stack/stack.spec.d.ts +2 -0
  132. package/dist/components/stack/stack.spec.d.ts.map +1 -0
  133. package/dist/components/stack/stack.spec.js +116 -0
  134. package/dist/components/stack/stack.spec.js.map +1 -0
  135. package/dist/components/text/text.d.ts +21 -4
  136. package/dist/components/text/text.d.ts.map +1 -1
  137. package/dist/components/text/text.js +14 -14
  138. package/dist/components/text/text.js.map +1 -1
  139. package/dist/components/text-button/text-button.d.ts +77 -24
  140. package/dist/components/text-button/text-button.d.ts.map +1 -1
  141. package/dist/components/text-button/text-button.js +203 -104
  142. package/dist/components/text-button/text-button.js.map +1 -1
  143. package/dist/components/text-button/text-button.spec.js +97 -9
  144. package/dist/components/text-button/text-button.spec.js.map +1 -1
  145. package/dist/components/toggle/index.d.ts +2 -0
  146. package/dist/components/toggle/index.d.ts.map +1 -0
  147. package/dist/components/toggle/index.js +2 -0
  148. package/dist/components/toggle/index.js.map +1 -0
  149. package/dist/components/toggle/toggle.d.ts +149 -0
  150. package/dist/components/toggle/toggle.d.ts.map +1 -0
  151. package/dist/components/toggle/toggle.js +378 -0
  152. package/dist/components/toggle/toggle.js.map +1 -0
  153. package/dist/components/toggle/toggle.spec.d.ts +2 -0
  154. package/dist/components/toggle/toggle.spec.d.ts.map +1 -0
  155. package/dist/components/toggle/toggle.spec.js +353 -0
  156. package/dist/components/toggle/toggle.spec.js.map +1 -0
  157. package/dist/hudini.js +6523 -4980
  158. package/dist/hudini.min.js +1 -1
  159. package/dist/loaders/load-fonts.d.ts +29 -0
  160. package/dist/loaders/load-fonts.d.ts.map +1 -1
  161. package/dist/loaders/load-fonts.js +20 -1
  162. package/dist/loaders/load-fonts.js.map +1 -1
  163. package/dist/utils/button-style.d.ts +27 -0
  164. package/dist/utils/button-style.d.ts.map +1 -0
  165. package/dist/utils/button-style.js +37 -0
  166. package/dist/utils/button-style.js.map +1 -0
  167. package/dist/utils/index.d.ts +2 -0
  168. package/dist/utils/index.d.ts.map +1 -1
  169. package/dist/utils/index.js +2 -0
  170. package/dist/utils/index.js.map +1 -1
  171. package/dist/utils/number-to-rgb.d.ts +16 -0
  172. package/dist/utils/number-to-rgb.d.ts.map +1 -0
  173. package/dist/utils/number-to-rgb.js +20 -0
  174. package/dist/utils/number-to-rgb.js.map +1 -0
  175. package/package.json +2 -2
  176. package/dist/components/flat-icon-button/flat-icon-button.d.ts +0 -60
  177. package/dist/components/flat-icon-button/flat-icon-button.d.ts.map +0 -1
  178. package/dist/components/flat-icon-button/flat-icon-button.js +0 -279
  179. package/dist/components/flat-icon-button/flat-icon-button.js.map +0 -1
  180. package/dist/components/flat-icon-button/index.d.ts +0 -2
  181. package/dist/components/flat-icon-button/index.d.ts.map +0 -1
  182. package/dist/components/flat-icon-button/index.js +0 -2
  183. package/dist/components/flat-icon-button/index.js.map +0 -1
  184. package/dist/components/flat-section-header/flat-section-header.d.ts +0 -143
  185. package/dist/components/flat-section-header/flat-section-header.d.ts.map +0 -1
  186. package/dist/components/flat-section-header/flat-section-header.js +0 -275
  187. package/dist/components/flat-section-header/flat-section-header.js.map +0 -1
  188. package/dist/components/flat-section-header/flat-section-header.spec.d.ts +0 -2
  189. package/dist/components/flat-section-header/flat-section-header.spec.d.ts.map +0 -1
  190. package/dist/components/flat-section-header/flat-section-header.spec.js +0 -255
  191. package/dist/components/flat-section-header/flat-section-header.spec.js.map +0 -1
  192. package/dist/components/flat-section-header/index.d.ts +0 -2
  193. package/dist/components/flat-section-header/index.d.ts.map +0 -1
  194. package/dist/components/flat-section-header/index.js +0 -2
  195. package/dist/components/flat-section-header/index.js.map +0 -1
  196. package/dist/components/flat-text-button/flat-text-button.d.ts +0 -165
  197. package/dist/components/flat-text-button/flat-text-button.d.ts.map +0 -1
  198. package/dist/components/flat-text-button/flat-text-button.js +0 -325
  199. package/dist/components/flat-text-button/flat-text-button.js.map +0 -1
  200. package/dist/components/flat-text-button/flat-text-button.spec.d.ts +0 -2
  201. package/dist/components/flat-text-button/flat-text-button.spec.d.ts.map +0 -1
  202. package/dist/components/flat-text-button/flat-text-button.spec.js +0 -243
  203. package/dist/components/flat-text-button/flat-text-button.spec.js.map +0 -1
  204. package/dist/components/flat-text-button/index.d.ts +0 -2
  205. package/dist/components/flat-text-button/index.d.ts.map +0 -1
  206. package/dist/components/flat-text-button/index.js +0 -2
  207. package/dist/components/flat-text-button/index.js.map +0 -1
  208. package/dist/components/panel/index.d.ts +0 -2
  209. package/dist/components/panel/index.d.ts.map +0 -1
  210. package/dist/components/panel/index.js +0 -2
  211. package/dist/components/panel/index.js.map +0 -1
  212. package/dist/components/panel/panel.d.ts +0 -78
  213. package/dist/components/panel/panel.d.ts.map +0 -1
  214. package/dist/components/panel/panel.js +0 -192
  215. package/dist/components/panel/panel.js.map +0 -1
  216. package/dist/components/section-header/index.d.ts +0 -2
  217. package/dist/components/section-header/index.d.ts.map +0 -1
  218. package/dist/components/section-header/index.js +0 -2
  219. package/dist/components/section-header/index.js.map +0 -1
  220. package/dist/components/section-header/section-header.d.ts +0 -149
  221. package/dist/components/section-header/section-header.d.ts.map +0 -1
  222. package/dist/components/section-header/section-header.js +0 -292
  223. package/dist/components/section-header/section-header.js.map +0 -1
  224. package/dist/components/section-header/section-header.spec.d.ts +0 -2
  225. package/dist/components/section-header/section-header.spec.d.ts.map +0 -1
  226. package/dist/components/section-header/section-header.spec.js +0 -264
  227. package/dist/components/section-header/section-header.spec.js.map +0 -1
@@ -0,0 +1,197 @@
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
+ vi.mock('hudini', () => ({
6
+ Color: {
7
+ rgb: vi.fn((color) => `rgb-${color}`),
8
+ hex: vi.fn((color) => `hex-${color}`),
9
+ black: vi.fn(() => 'rgb(0, 0, 0)'),
10
+ white: vi.fn(() => 'rgb(255, 255, 255)'),
11
+ },
12
+ Opacity: {
13
+ value: vi.fn(() => 0.9),
14
+ },
15
+ }));
16
+ vi.mock('phaser-wind', () => ({
17
+ Duration: { ms: vi.fn(() => 100), seconds: vi.fn(() => 0.1), css: vi.fn(() => '100ms') },
18
+ Ease: { value: vi.fn(() => 'Linear') },
19
+ Color: {
20
+ rgb: vi.fn((color) => `rgb-${color}`),
21
+ hex: vi.fn((color) => `hex-${color}`),
22
+ shift: vi.fn((token) => token),
23
+ isValidColorToken: vi.fn(() => false),
24
+ },
25
+ Opacity: {
26
+ value: vi.fn(() => 0.6),
27
+ percent: vi.fn(() => 60),
28
+ css: vi.fn(() => '60%'),
29
+ },
30
+ isColorKey: vi.fn(() => false),
31
+ palette: {
32
+ red: {}, blue: {}, green: {}, purple: {}, amber: {},
33
+ slate: {}, gray: {}, zinc: {}, neutral: {}, stone: {},
34
+ orange: {}, yellow: {}, lime: {}, emerald: {}, teal: {},
35
+ cyan: {}, sky: {}, indigo: {}, violet: {}, fuchsia: {},
36
+ pink: {}, rose: {},
37
+ black: '#000',
38
+ white: '#fff',
39
+ },
40
+ PHASER_WIND_KEY: 'PhaserWind',
41
+ SceneWithPhaserWind: class SceneWithPhaserWind {
42
+ },
43
+ }));
44
+ vi.mock('../../utils/get-pw-from-scene', () => ({
45
+ getPWFromScene: vi.fn(() => ({
46
+ fontSize: {
47
+ px: vi.fn((size) => {
48
+ const sizes = { xs: 12, sm: 14, md: 16, lg: 18, xl: 20 };
49
+ return sizes[size] || 18;
50
+ }),
51
+ },
52
+ spacing: {
53
+ px: vi.fn((spacing) => {
54
+ const spacings = { xs: 4, sm: 8, md: 12, lg: 16, xl: 20 };
55
+ return spacings[spacing] || 16;
56
+ }),
57
+ },
58
+ radius: {
59
+ px: vi.fn((radius) => {
60
+ const radiuses = { none: 0, sm: 4, md: 8, lg: 12, xl: 16, full: 9999 };
61
+ return radiuses[radius] || 8;
62
+ }),
63
+ },
64
+ font: {
65
+ family: vi.fn((font) => {
66
+ const fonts = {
67
+ primary: 'Inter, sans-serif',
68
+ secondary: 'Roboto, Arial, sans-serif',
69
+ monospace: 'Courier, monospace',
70
+ display: 'Poppins, Inter, sans-serif',
71
+ };
72
+ return fonts[font] || 'Fredoka';
73
+ }),
74
+ },
75
+ })),
76
+ }));
77
+ vi.mock('../text', () => {
78
+ class MockText {
79
+ text;
80
+ style;
81
+ constructor(params) {
82
+ this.text = params.text;
83
+ this.style = {
84
+ fontSize: params.size ?? 22,
85
+ fontFamily: params.fontFamily ?? 'Fredoka',
86
+ };
87
+ }
88
+ setText(text) {
89
+ this.text = text;
90
+ return this;
91
+ }
92
+ setOrigin() { return this; }
93
+ setFontSize(size) { this.style['fontSize'] = size; return this; }
94
+ setFontFamily(family) { this.style['fontFamily'] = family; return this; }
95
+ setColor(color) { this.style['color'] = color; return this; }
96
+ getBounds() {
97
+ const charWidth = 10;
98
+ const lineHeight = parseInt(this.style['fontSize']) || 18;
99
+ return {
100
+ width: this.text.length * charWidth,
101
+ height: lineHeight,
102
+ };
103
+ }
104
+ }
105
+ return { Text: MockText };
106
+ });
107
+ vi.mock('phaser', () => {
108
+ class MockSprite {
109
+ width = 0;
110
+ height = 0;
111
+ // eslint-disable-next-line no-unused-vars
112
+ constructor(_x, _y, _texture) { }
113
+ setOrigin() { return this; }
114
+ setTexture() { return this; }
115
+ setSize(width, height) {
116
+ this.width = width;
117
+ this.height = height;
118
+ return this;
119
+ }
120
+ on() { return this; }
121
+ }
122
+ class MockGraphics {
123
+ fillStyle() { return this; }
124
+ fillRoundedRect() { return this; }
125
+ generateTexture() { return this; }
126
+ destroy() { return this; }
127
+ }
128
+ class Container {
129
+ scene;
130
+ // eslint-disable-next-line no-unused-vars
131
+ constructor(_scene, _x, _y) {
132
+ this.scene = _scene;
133
+ }
134
+ add() { return this; }
135
+ setSize() { return this; }
136
+ on() { return this; }
137
+ }
138
+ class Scene {
139
+ add = {
140
+ sprite: vi.fn((x, y, texture) => new MockSprite(x, y, texture)),
141
+ graphics: vi.fn(() => new MockGraphics()),
142
+ };
143
+ }
144
+ class BasePlugin {
145
+ constructor() { }
146
+ }
147
+ const GameObjects = { Container };
148
+ const Plugins = { BasePlugin };
149
+ return { GameObjects, Scene, Plugins };
150
+ });
151
+ import { Badge } from './badge';
152
+ describe('Badge', () => {
153
+ it('should create a Badge instance', () => {
154
+ const scene = new Scene();
155
+ const badge = new Badge({ scene, x: 100, y: 100, text: 'New' });
156
+ expect(badge).toBeInstanceOf(Badge);
157
+ });
158
+ it('should create with custom properties', () => {
159
+ const scene = new Scene();
160
+ const badge = new Badge({
161
+ scene,
162
+ x: 100,
163
+ y: 100,
164
+ text: 'Custom',
165
+ fontSize: 'xl',
166
+ font: 'display',
167
+ color: 'purple-600',
168
+ textColor: 'white',
169
+ borderRadius: 'lg',
170
+ padding: '6',
171
+ });
172
+ expect(badge).toBeInstanceOf(Badge);
173
+ });
174
+ it('should support method chaining for colors', () => {
175
+ const scene = new Scene();
176
+ const badge = new Badge({ scene, x: 0, y: 0, text: 'X' });
177
+ const result = badge.setTextColor('white').setColor('blue-600');
178
+ expect(result).toBe(badge);
179
+ });
180
+ it('should handle borderRadius full correctly', () => {
181
+ const scene = new Scene();
182
+ const badge = new Badge({
183
+ scene,
184
+ x: 0,
185
+ y: 0,
186
+ text: 'Full',
187
+ borderRadius: 'full',
188
+ });
189
+ expect(badge).toBeInstanceOf(Badge);
190
+ });
191
+ it('should expose the internal text object', () => {
192
+ const scene = new Scene();
193
+ const badge = new Badge({ scene, x: 0, y: 0, text: 'Hi' });
194
+ expect(badge.badgeText).toBeDefined();
195
+ });
196
+ });
197
+ //# sourceMappingURL=badge.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.spec.js","sourceRoot":"","sources":["../../../src/components/badge/badge.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './badge';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './badge';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -25,8 +25,6 @@ export type CardParams = {
25
25
  * A flexible card component that adapts to its child content size
26
26
  */
27
27
  export declare class Card extends ContainerInteractive<Phaser.GameObjects.Sprite> {
28
- /** The white border sprite of the card. */
29
- whiteBorderSprite: GameObjects.Sprite;
30
28
  /** The background sprite of the card. */
31
29
  backgroundSprite: GameObjects.Sprite;
32
30
  /** The child component contained within the card */
@@ -41,6 +39,15 @@ export declare class Card extends ContainerInteractive<Phaser.GameObjects.Sprite
41
39
  private backgroundColorValue;
42
40
  /** Whether we have an explicit size set (width and height provided) */
43
41
  private hasExplicitSize;
42
+ /**
43
+ * Cached explicit width/height. We can't rely on `this.width` / `this.height`
44
+ * during initial sprite creation because `ContainerInteractive` proxies them
45
+ * through `hitArea`, which isn't assigned yet in the constructor. Reading
46
+ * `this.width` before `hitArea` is set returns 0, so we keep the requested
47
+ * dimensions here and consult them in {@link getCardDimensions}.
48
+ */
49
+ private explicitWidth;
50
+ private explicitHeight;
44
51
  /**
45
52
  * Creates a new Card
46
53
  * @param params Configuration parameters for the card
@@ -89,18 +96,13 @@ export declare class Card extends ContainerInteractive<Phaser.GameObjects.Sprite
89
96
  * @returns this for chaining
90
97
  */
91
98
  setChild(child: GameObjects.GameObject): this;
92
- /**
93
- * Creates the white border sprite for the card.
94
- * @param scene Phaser scene.
95
- */
96
- private createWhiteBorderSprite;
97
99
  /**
98
100
  * Creates the background sprite for the card.
99
101
  * @param scene Phaser scene.
100
102
  */
101
103
  private createBackgroundSprite;
102
104
  /**
103
- * Regenerates the background and white border textures based on current state.
105
+ * Regenerates the background texture based on current state.
104
106
  */
105
107
  private regenerateSprites;
106
108
  /**
@@ -139,13 +141,7 @@ export declare class Card extends ContainerInteractive<Phaser.GameObjects.Sprite
139
141
  */
140
142
  private getCardDimensions;
141
143
  /**
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.
144
+ * Creates a texture for the card's background: a flat filled rounded rect.
149
145
  * @param scene Phaser scene.
150
146
  * @returns The texture key.
151
147
  */
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"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"}
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;AAGrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,MAAM,UAAU,GAAG;IACvB,0CAA0C;IAC1C,KAAK,EAAE,KAAK,CAAC;IACb,6BAA6B;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,6BAA6B;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,yDAAyD;IACzD,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACpC,6FAA6F;IAC7F,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAClC,8FAA8F;IAC9F,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC7B,sDAAsD;IACtD,KAAK,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC;IAC/B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAUF;;GAEG;AACH,qBAAa,IAAK,SAAQ,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;IACvE,yCAAyC;IAClC,gBAAgB,EAAG,WAAW,CAAC,MAAM,CAAC;IAC7C,oDAAoD;IAC7C,KAAK,EAAE,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC;IAEjD,yCAAyC;IACzC,OAAO,CAAC,EAAE,CAAuB;IACjC,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAU;IAC1B,8BAA8B;IAC9B,OAAO,CAAC,cAAc,CAAU;IAChC,6BAA6B;IAC7B,OAAO,CAAC,oBAAoB,CAAU;IAEtC,uEAAuE;IACvE,OAAO,CAAC,eAAe,CAAkB;IACzC;;;;;;OAMG;IACH,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,cAAc,CAAqB;IAE3C;;;OAGG;gBACS,EACV,KAAK,EACL,CAAC,EACD,CAAC,EACD,eAAyB,EACzB,YAAmB,EACnB,MAAY,EACZ,KAAK,EACL,KAAK,EACL,MAAM,GACP,EAAE,UAAU;IAqCb;;;;;OAKG;IACa,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAa5D;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKpC;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAKtC;;;;OAIG;IACI,kBAAkB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAMzD;;;;OAIG;IACI,eAAe,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IAS9D;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IASnD;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,UAAU,GAAG,IAAI;IAepD;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAM9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACI,MAAM,IAAI,IAAI;IA2CrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IA+BtB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAiBvB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,YAAY;IAMpB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAuBzB;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
@@ -1,18 +1,17 @@
1
1
  import { Color, getDisplayHeightOf, getDisplayWidthOf } from 'phaser-wind';
2
2
  import { getPWFromScene } from '../../utils/get-pw-from-scene';
3
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
+ /**
5
+ * Extra transparent margin around the drawn card inside its texture, just
6
+ * enough so the anti-aliased rounded-corner fill isn't clipped at the edge.
7
+ * The container itself is resized to the *visual* box, so this margin never
8
+ * leaks into layout measurements.
9
+ */
10
+ const TEXTURE_ANTIALIAS_MARGIN = 1;
10
11
  /**
11
12
  * A flexible card component that adapts to its child content size
12
13
  */
13
14
  export class Card extends ContainerInteractive {
14
- /** The white border sprite of the card. */
15
- whiteBorderSprite;
16
15
  /** The background sprite of the card. */
17
16
  backgroundSprite;
18
17
  /** The child component contained within the card */
@@ -27,6 +26,15 @@ export class Card extends ContainerInteractive {
27
26
  backgroundColorValue;
28
27
  /** Whether we have an explicit size set (width and height provided) */
29
28
  hasExplicitSize = false;
29
+ /**
30
+ * Cached explicit width/height. We can't rely on `this.width` / `this.height`
31
+ * during initial sprite creation because `ContainerInteractive` proxies them
32
+ * through `hitArea`, which isn't assigned yet in the constructor. Reading
33
+ * `this.width` before `hitArea` is set returns 0, so we keep the requested
34
+ * dimensions here and consult them in {@link getCardDimensions}.
35
+ */
36
+ explicitWidth;
37
+ explicitHeight;
30
38
  /**
31
39
  * Creates a new Card
32
40
  * @param params Configuration parameters for the card
@@ -48,11 +56,19 @@ export class Card extends ContainerInteractive {
48
56
  this.child = child;
49
57
  // Check if explicit size was provided
50
58
  this.hasExplicitSize = width !== undefined && height !== undefined;
51
- // Create sprites and setup container
52
- this.createWhiteBorderSprite(scene);
59
+ this.explicitWidth = width;
60
+ this.explicitHeight = height;
61
+ // Create sprite and setup container
53
62
  this.createBackgroundSprite(scene);
54
63
  this.setupContainer();
55
64
  this.hitArea = this.backgroundSprite;
65
+ // Now that hitArea is set, publish the explicit dimensions through the
66
+ // proxy so that consumers reading `card.width` / `card.height` (Row,
67
+ // Column, Stack, ...) see the real box, not 0.
68
+ if (this.hasExplicitSize) {
69
+ this.backgroundSprite.width = this.explicitWidth;
70
+ this.backgroundSprite.height = this.explicitHeight;
71
+ }
56
72
  }
57
73
  /**
58
74
  * Override setSize to regenerate sprites when size changes
@@ -63,6 +79,8 @@ export class Card extends ContainerInteractive {
63
79
  setSize(width, height) {
64
80
  // Mark that we now have explicit size
65
81
  this.hasExplicitSize = true;
82
+ this.explicitWidth = width;
83
+ this.explicitHeight = height;
66
84
  // Set size directly on the container to avoid recursion
67
85
  this.width = width;
68
86
  this.height = height;
@@ -140,15 +158,6 @@ export class Card extends ContainerInteractive {
140
158
  this.layout();
141
159
  return this;
142
160
  }
143
- /**
144
- * Creates the white border sprite for the card.
145
- * @param scene Phaser scene.
146
- */
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
161
  /**
153
162
  * Creates the background sprite for the card.
154
163
  * @param scene Phaser scene.
@@ -159,20 +168,17 @@ export class Card extends ContainerInteractive {
159
168
  this.backgroundSprite.setOrigin(0.5, 0.5);
160
169
  }
161
170
  /**
162
- * Regenerates the background and white border textures based on current state.
171
+ * Regenerates the background texture based on current state.
163
172
  */
164
173
  regenerateSprites() {
165
- // Regenerate textures
166
- const whiteBorderTexture = this.createWhiteBorderTexture(this.scene);
167
174
  const backgroundTexture = this.createBackgroundTexture(this.scene);
168
- this.whiteBorderSprite.setTexture(whiteBorderTexture);
169
175
  this.backgroundSprite.setTexture(backgroundTexture);
170
176
  }
171
177
  /**
172
178
  * Sets up the container with background and child
173
179
  */
174
180
  setupContainer() {
175
- this.add([this.whiteBorderSprite, this.backgroundSprite]);
181
+ this.add([this.backgroundSprite]);
176
182
  if (this.child) {
177
183
  this.add([this.child]);
178
184
  }
@@ -283,8 +289,11 @@ export class Card extends ContainerInteractive {
283
289
  let width = 0;
284
290
  let height = 0;
285
291
  if (this.hasExplicitSize) {
286
- width = this.width;
287
- height = this.height;
292
+ // Prefer the cached constructor/setSize dims — `this.width`/`this.height`
293
+ // depend on `hitArea` being wired, which is not the case on the initial
294
+ // texture generation call during `super`/constructor time.
295
+ width = this.explicitWidth ?? this.width;
296
+ height = this.explicitHeight ?? this.height;
288
297
  }
289
298
  else if (this.child) {
290
299
  const { w: cw, h: ch } = this.measureChild(this.child);
@@ -299,53 +308,22 @@ export class Card extends ContainerInteractive {
299
308
  return { width, height };
300
309
  }
301
310
  /**
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.
311
+ * Creates a texture for the card's background: a flat filled rounded rect.
329
312
  * @param scene Phaser scene.
330
313
  * @returns The texture key.
331
314
  */
332
315
  createBackgroundTexture(scene) {
333
316
  const { width, height } = this.getCardDimensions();
334
317
  const textureKey = `card_bg_${this.backgroundColorValue}_${this.borderRadiusPx}_${width}_${height}`;
335
- // Add some padding for texture
336
- const padding = 8;
318
+ const padding = TEXTURE_ANTIALIAS_MARGIN;
337
319
  const textureWidth = width + padding * 2;
338
320
  const textureHeight = height + padding * 2;
339
321
  const graphics = scene.add.graphics();
340
322
  const maxRadius = Math.floor(Math.min(width / 2, height / 2));
341
323
  const effectiveRadius = Math.min(this.borderRadiusPx, maxRadius);
342
324
  const finalRadius = Math.max(0, effectiveRadius);
343
- // Draw background with white fill and black stroke
344
325
  graphics.fillStyle(Color.hex(this.backgroundColorValue), 1);
345
326
  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
327
  graphics.generateTexture(textureKey, textureWidth, textureHeight);
350
328
  graphics.destroy();
351
329
  return textureKey;
@@ -1 +1 @@
1
- {"version":3,"file":"card.js","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card.js","sourceRoot":"","sources":["../../../src/components/card/card.ts"],"names":[],"mappings":"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"}