hudini 0.10.1 → 0.11.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.
@@ -0,0 +1,79 @@
1
+ import { GameObjects, Scene } from 'phaser';
2
+ import { Card } from '../card';
3
+ import { FlatIconButton } from '../flat-icon-button';
4
+ import { SectionHeader } from '../section-header';
5
+ export type PanelParams = {
6
+ scene: Scene;
7
+ x?: number;
8
+ y?: number;
9
+ title?: string;
10
+ backgroundColor?: string;
11
+ borderRadius?: number;
12
+ margin?: number;
13
+ showCloseButton?: boolean;
14
+ onClose?: () => void;
15
+ child: GameObjects.GameObject;
16
+ };
17
+ export declare class Panel extends GameObjects.Container {
18
+ private card;
19
+ private sectionHeader;
20
+ private closeButton;
21
+ private title;
22
+ private showCloseButton;
23
+ private onClose?;
24
+ private headerHeight;
25
+ constructor(params: PanelParams);
26
+ /**
27
+ * Creates the section header
28
+ */
29
+ private createSectionHeader;
30
+ /**
31
+ * Creates the close button
32
+ */
33
+ private createCloseButton;
34
+ /**
35
+ * Updates the layout after property changes
36
+ */
37
+ private updateLayout;
38
+ /**
39
+ * Sets the title of the panel
40
+ */
41
+ setTitle(title: string): this;
42
+ /**
43
+ * Sets whether to show the close button
44
+ */
45
+ setShowCloseButton(show: boolean): this;
46
+ /**
47
+ * Sets the close callback
48
+ */
49
+ setOnClose(callback: () => void): this;
50
+ /**
51
+ * Sets the background color
52
+ */
53
+ setBackgroundColor(color: string): this;
54
+ /**
55
+ * Sets the border radius
56
+ */
57
+ setBorderRadius(radius: number): this;
58
+ /**
59
+ * Sets the margin
60
+ */
61
+ setMargin(margin: number): this;
62
+ /**
63
+ * Sets a new child component
64
+ */
65
+ setChild(child: GameObjects.GameObject): this;
66
+ /**
67
+ * Gets the card component
68
+ */
69
+ getCard(): Card;
70
+ /**
71
+ * Gets the section header component
72
+ */
73
+ getSectionHeader(): SectionHeader | null;
74
+ /**
75
+ * Gets the close button component
76
+ */
77
+ getCloseButton(): FlatIconButton | null;
78
+ }
79
+ //# sourceMappingURL=panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../src/components/panel/panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAUlD,MAAM,MAAM,WAAW,GAAG;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC,UAAU,CAAC;CACjC,CAAC;AAEF,qBAAa,KAAM,SAAQ,WAAW,CAAC,SAAS;IAC5C,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,OAAO,CAAC,CAA2B;IAC3C,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,WAAW;IAoC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAoBpB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7B;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAcvC;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAKtC;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvC;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMrC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,UAAU,GAAG,IAAI;IAM7C;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAIxC;;OAEG;IACH,cAAc,IAAI,cAAc,GAAG,IAAI;CAG1C"}
@@ -0,0 +1,192 @@
1
+ import { GameObjects } from 'phaser';
2
+ import { Card } from '../card';
3
+ import { FlatIconButton } from '../flat-icon-button';
4
+ import { SectionHeader } from '../section-header';
5
+ // Constants for default values
6
+ const DEFAULT_BORDER_RADIUS = 8;
7
+ const DEFAULT_MARGIN = 16;
8
+ const DEFAULT_BACKGROUND_COLOR = 'white';
9
+ const DEFAULT_HEADER_HEIGHT = 60;
10
+ const CLOSE_BUTTON_SIZE = 32;
11
+ const CLOSE_BUTTON_MARGIN = 8;
12
+ export class Panel extends GameObjects.Container {
13
+ card;
14
+ sectionHeader = null;
15
+ closeButton = null;
16
+ title;
17
+ showCloseButton;
18
+ onClose;
19
+ headerHeight;
20
+ constructor(params) {
21
+ super(params.scene, params.x ?? 0, params.y ?? 0);
22
+ this.title = params.title ?? '';
23
+ this.showCloseButton = params.showCloseButton ?? false;
24
+ this.onClose = params.onClose;
25
+ this.headerHeight = DEFAULT_HEADER_HEIGHT;
26
+ // Create the card first
27
+ this.card = new Card({
28
+ scene: params.scene,
29
+ x: 0,
30
+ y: 0,
31
+ backgroundColor: params.backgroundColor ?? DEFAULT_BACKGROUND_COLOR,
32
+ borderRadius: params.borderRadius ?? DEFAULT_BORDER_RADIUS,
33
+ margin: params.margin ?? DEFAULT_MARGIN,
34
+ child: params.child
35
+ });
36
+ // Add card to container
37
+ this.add(this.card);
38
+ // Create section header if title is provided
39
+ if (this.title) {
40
+ this.createSectionHeader();
41
+ }
42
+ // Create close button if requested
43
+ if (this.showCloseButton) {
44
+ this.createCloseButton();
45
+ }
46
+ // Update layout
47
+ this.updateLayout();
48
+ }
49
+ /**
50
+ * Creates the section header
51
+ */
52
+ createSectionHeader() {
53
+ this.sectionHeader = new SectionHeader({
54
+ scene: this.scene,
55
+ x: 0,
56
+ y: 0,
57
+ text: this.title,
58
+ backgroundColor: 'transparent',
59
+ borderRadius: 0
60
+ });
61
+ // Add header to container
62
+ this.add(this.sectionHeader);
63
+ }
64
+ /**
65
+ * Creates the close button
66
+ */
67
+ createCloseButton() {
68
+ this.closeButton = new FlatIconButton({
69
+ scene: this.scene,
70
+ x: 0,
71
+ y: 0,
72
+ icon: 'x',
73
+ size: CLOSE_BUTTON_SIZE,
74
+ onClick: () => {
75
+ if (this.onClose) {
76
+ this.onClose();
77
+ }
78
+ }
79
+ });
80
+ // Add close button to container
81
+ this.add(this.closeButton);
82
+ }
83
+ /**
84
+ * Updates the layout after property changes
85
+ */
86
+ updateLayout() {
87
+ // Get card bounds
88
+ const cardBounds = this.card.getBounds();
89
+ // Calculate header position (top of the card)
90
+ if (this.sectionHeader) {
91
+ const headerY = -cardBounds.height / 2 + this.headerHeight / 2;
92
+ this.sectionHeader.setPosition(0, headerY);
93
+ // Note: SectionHeader doesn't have setWidth, it auto-sizes to content
94
+ }
95
+ // Calculate close button position (top-right corner)
96
+ if (this.closeButton) {
97
+ const buttonX = cardBounds.width / 2 - CLOSE_BUTTON_SIZE / 2 - CLOSE_BUTTON_MARGIN;
98
+ const buttonY = -cardBounds.height / 2 + CLOSE_BUTTON_SIZE / 2 + CLOSE_BUTTON_MARGIN;
99
+ this.closeButton.setPosition(buttonX, buttonY);
100
+ }
101
+ }
102
+ /**
103
+ * Sets the title of the panel
104
+ */
105
+ setTitle(title) {
106
+ this.title = title;
107
+ if (title && !this.sectionHeader) {
108
+ this.createSectionHeader();
109
+ }
110
+ else if (!title && this.sectionHeader) {
111
+ this.remove(this.sectionHeader);
112
+ this.sectionHeader = null;
113
+ }
114
+ else if (this.sectionHeader) {
115
+ this.sectionHeader.setText(title);
116
+ }
117
+ this.updateLayout();
118
+ return this;
119
+ }
120
+ /**
121
+ * Sets whether to show the close button
122
+ */
123
+ setShowCloseButton(show) {
124
+ this.showCloseButton = show;
125
+ if (show && !this.closeButton) {
126
+ this.createCloseButton();
127
+ }
128
+ else if (!show && this.closeButton) {
129
+ this.remove(this.closeButton);
130
+ this.closeButton = null;
131
+ }
132
+ this.updateLayout();
133
+ return this;
134
+ }
135
+ /**
136
+ * Sets the close callback
137
+ */
138
+ setOnClose(callback) {
139
+ this.onClose = callback;
140
+ return this;
141
+ }
142
+ /**
143
+ * Sets the background color
144
+ */
145
+ setBackgroundColor(color) {
146
+ this.card.setBackgroundColor(color);
147
+ return this;
148
+ }
149
+ /**
150
+ * Sets the border radius
151
+ */
152
+ setBorderRadius(radius) {
153
+ this.card.setBorderRadius(radius);
154
+ this.updateLayout();
155
+ return this;
156
+ }
157
+ /**
158
+ * Sets the margin
159
+ */
160
+ setMargin(margin) {
161
+ this.card.setMargin(margin);
162
+ this.updateLayout();
163
+ return this;
164
+ }
165
+ /**
166
+ * Sets a new child component
167
+ */
168
+ setChild(child) {
169
+ this.card.setChild(child);
170
+ this.updateLayout();
171
+ return this;
172
+ }
173
+ /**
174
+ * Gets the card component
175
+ */
176
+ getCard() {
177
+ return this.card;
178
+ }
179
+ /**
180
+ * Gets the section header component
181
+ */
182
+ getSectionHeader() {
183
+ return this.sectionHeader;
184
+ }
185
+ /**
186
+ * Gets the close button component
187
+ */
188
+ getCloseButton() {
189
+ return this.closeButton;
190
+ }
191
+ }
192
+ //# sourceMappingURL=panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../src/components/panel/panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAS,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,+BAA+B;AAC/B,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,wBAAwB,GAAG,OAAO,CAAC;AACzC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACjC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAe9B,MAAM,OAAO,KAAM,SAAQ,WAAW,CAAC,SAAS;IACpC,IAAI,CAAO;IACX,aAAa,GAAyB,IAAI,CAAC;IAC3C,WAAW,GAA0B,IAAI,CAAC;IAC1C,KAAK,CAAS;IACd,eAAe,CAAU;IACzB,OAAO,CAA4B;IACnC,YAAY,CAAS;IAE7B,YAAY,MAAmB;QAC3B,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAElD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC;QAE1C,wBAAwB;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,wBAAwB;YACnE,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,qBAAqB;YAC1D,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,cAAc;YACvC,KAAK,EAAE,MAAM,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpB,6CAA6C;QAC7C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/B,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;QAED,gBAAgB;QAChB,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,mBAAmB;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACnC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,eAAe,EAAE,aAAa;YAC9B,YAAY,EAAE,CAAC;SAClB,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACK,iBAAiB;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,CAAC;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,GAAS,EAAE;gBAChB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO,EAAE,CAAC;gBACnB,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;QAEH,gCAAgC;QAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACK,YAAY;QAChB,kBAAkB;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAEzC,8CAA8C;QAC9C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YAC/D,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAE3C,sEAAsE;QAC1E,CAAC;QAED,qDAAqD;QACrD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,GAAG,CAAC,GAAG,iBAAiB,GAAG,CAAC,GAAG,mBAAmB,CAAC;YACnF,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,iBAAiB,GAAG,CAAC,GAAG,mBAAmB,CAAC;YACrF,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAa;QAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/B,CAAC;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,IAAa;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAE5B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;aAAM,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,QAAoB;QAC3B,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;QACxB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,KAAa;QAC5B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,MAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAA6B;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,OAAO;QACH,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,cAAc;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ"}
@@ -10,7 +10,7 @@ export type SectionHeaderParams = {
10
10
  /** Text content of the header */
11
11
  text: string;
12
12
  /** Font size in px (number) or a Phaser Wind font size token (string). Defaults to 'lg'. */
13
- textSize?: FontSizeKey | number;
13
+ fontSize?: FontSizeKey | number;
14
14
  /** Font family. Defaults to 'display'. */
15
15
  font?: FontKey | string;
16
16
  /** Background color. Defaults to 'blue-600'. */
@@ -37,7 +37,7 @@ export declare class SectionHeader extends GameObjects.Container {
37
37
  /** Reference to the PhaserWind plugin */
38
38
  private pw;
39
39
  /** Font size in pixels */
40
- private textSizePx;
40
+ private fontSizePx;
41
41
  /** Margin size in pixels */
42
42
  private marginPx;
43
43
  /** Border radius in pixels */
@@ -56,7 +56,7 @@ export declare class SectionHeader extends GameObjects.Container {
56
56
  * Creates a new SectionHeader
57
57
  * @param params Configuration parameters for the header
58
58
  */
59
- constructor({ scene, x, y, text, textSize, font, backgroundColor, textColor, strokeColor, borderRadius, margin, }: SectionHeaderParams);
59
+ constructor({ scene, x, y, text, fontSize, font, backgroundColor, textColor, strokeColor, borderRadius, margin, }: SectionHeaderParams);
60
60
  /**
61
61
  * Sets the text content of the header
62
62
  * @param text New text content
@@ -65,10 +65,10 @@ export declare class SectionHeader extends GameObjects.Container {
65
65
  setText(text: string): this;
66
66
  /**
67
67
  * Sets the font size of the header text
68
- * @param textSize New font size (number in px or FontSizeKey)
68
+ * @param fontSize New font size (number in px or FontSizeKey)
69
69
  * @returns this for chaining
70
70
  */
71
- setTextSize(textSize: FontSizeKey | number): this;
71
+ setFontSize(fontSize: FontSizeKey | number): this;
72
72
  /**
73
73
  * Sets the font family of the header text
74
74
  * @param font New font family (FontKey or string)
@@ -23,7 +23,7 @@ export class SectionHeader extends GameObjects.Container {
23
23
  /** Reference to the PhaserWind plugin */
24
24
  pw;
25
25
  /** Font size in pixels */
26
- textSizePx;
26
+ fontSizePx;
27
27
  /** Margin size in pixels */
28
28
  marginPx;
29
29
  /** Border radius in pixels */
@@ -42,15 +42,15 @@ export class SectionHeader extends GameObjects.Container {
42
42
  * Creates a new SectionHeader
43
43
  * @param params Configuration parameters for the header
44
44
  */
45
- constructor({ scene, x, y, text, textSize, font, backgroundColor = 'blue-600', textColor = 'white', strokeColor, borderRadius = 'md', margin = '4', }) {
45
+ constructor({ scene, x, y, text, fontSize, font, backgroundColor = 'blue-600', textColor = 'white', strokeColor, borderRadius = 'md', margin = '4', }) {
46
46
  super(scene, x, y);
47
47
  this.pw = getPWFromScene(scene);
48
48
  // Store values
49
49
  this.textValue = text;
50
- this.textSizePx =
51
- typeof textSize === 'number'
52
- ? textSize
53
- : this.pw.fontSize.px(textSize ?? 'lg');
50
+ this.fontSizePx =
51
+ typeof fontSize === 'number'
52
+ ? fontSize
53
+ : this.pw.fontSize.px(fontSize ?? 'lg');
54
54
  this.marginPx =
55
55
  typeof margin === 'number'
56
56
  ? margin
@@ -85,15 +85,15 @@ export class SectionHeader extends GameObjects.Container {
85
85
  }
86
86
  /**
87
87
  * Sets the font size of the header text
88
- * @param textSize New font size (number in px or FontSizeKey)
88
+ * @param fontSize New font size (number in px or FontSizeKey)
89
89
  * @returns this for chaining
90
90
  */
91
- setTextSize(textSize) {
92
- this.textSizePx =
93
- typeof textSize === 'number'
94
- ? textSize
95
- : this.pw.fontSize.px(textSize ?? 'lg');
96
- this.headerText.setFontSize(this.textSizePx);
91
+ setFontSize(fontSize) {
92
+ this.fontSizePx =
93
+ typeof fontSize === 'number'
94
+ ? fontSize
95
+ : this.pw.fontSize.px(fontSize ?? 'lg');
96
+ this.headerText.setFontSize(this.fontSizePx);
97
97
  this.regenerateGraphics();
98
98
  return this;
99
99
  }
@@ -175,7 +175,7 @@ export class SectionHeader extends GameObjects.Container {
175
175
  */
176
176
  createHeaderText(scene) {
177
177
  this.headerText = scene.add.text(0, 0, this.textValue, {
178
- fontSize: `${this.textSizePx}px`,
178
+ fontSize: `${this.fontSizePx}px`,
179
179
  fontFamily: this.fontValue,
180
180
  color: this.textColorValue,
181
181
  stroke: this.strokeColorValue,
@@ -161,7 +161,7 @@ describe('SectionHeader', () => {
161
161
  x: 100,
162
162
  y: 100,
163
163
  text: 'Custom Header',
164
- textSize: 'xl',
164
+ fontSize: 'xl',
165
165
  font: 'display',
166
166
  backgroundColor: 'purple-600',
167
167
  textColor: 'white',
@@ -1,52 +1,159 @@
1
1
  import { GameObjects, Scene } from 'phaser';
2
2
  import { type ColorKey, type FontKey, type FontSizeKey, type RadiusKey, type SpacingKey } from 'phaser-wind';
3
+ /**
4
+ * Parameters for creating a TextButton.
5
+ */
3
6
  export type TextButtonParams = {
7
+ /** Phaser scene where the button will be added. */
4
8
  scene: Scene;
9
+ /** X position of the button. */
5
10
  x: number;
11
+ /** Y position of the button. */
6
12
  y: number;
13
+ /** Button text. */
7
14
  text: string;
8
- /** Font size in px (number) or a Phaser Wind font size token (string). Defaults to 'md'. */
9
- textSize?: FontSizeKey | number;
10
- /** Font family. Defaults to 'sans'. */
15
+ /**
16
+ * Font size in px (number) or a Phaser Wind font size token (string).
17
+ * Defaults to 'md'.
18
+ */
19
+ fontSize?: FontSizeKey | number;
20
+ /**
21
+ * Font family. Defaults to 'sans'.
22
+ */
11
23
  font?: FontKey | string;
12
- /** Background color. Defaults to 'blue'. */
24
+ /**
25
+ * Background color. Defaults to 'blue'.
26
+ */
13
27
  backgroundColor?: ColorKey | string;
14
- /** Text color. Defaults to 'white'. */
28
+ /**
29
+ * Text color. Defaults to 'white'.
30
+ */
15
31
  textColor?: ColorKey | string;
16
- /** Border radius in px (number) or a Phaser Wind radius token (string). Defaults to 'md'. */
32
+ /**
33
+ * Border radius in px (number) or a Phaser Wind radius token (string).
34
+ * Defaults to 'md'.
35
+ */
17
36
  borderRadius?: RadiusKey | number;
18
- /** Margin/padding in px (number) or a Phaser Wind spacing token (string). Defaults to 'md'. */
37
+ /**
38
+ * Margin/padding in px (number) or a Phaser Wind spacing token (string).
39
+ * Defaults to 'md'.
40
+ */
19
41
  margin?: SpacingKey | number;
42
+ /**
43
+ * Callback function for click event.
44
+ */
20
45
  onClick?: () => void;
21
46
  };
47
+ /**
48
+ * A customizable text button component for Phaser, supporting auto-sizing,
49
+ * design tokens, and interactive effects.
50
+ */
22
51
  export declare class TextButton extends GameObjects.Container {
52
+ /** The background sprite of the button. */
23
53
  backgroundSprite: GameObjects.Sprite;
54
+ /** The shadow sprite of the button. */
24
55
  shadowSprite: GameObjects.Sprite;
56
+ /** The text object of the button. */
25
57
  buttonText: GameObjects.Text;
26
58
  private pw;
27
- private textSizePx;
59
+ private fontSizePx;
28
60
  private marginPx;
29
61
  private borderRadiusPx;
30
62
  private backgroundColorValue;
31
63
  private textColorValue;
32
64
  private fontValue;
33
65
  private textValue;
34
- constructor({ scene, x, y, text, textSize, font, backgroundColor, textColor, borderRadius, margin, onClick, }: TextButtonParams);
66
+ /**
67
+ * Creates a new TextButton instance.
68
+ * @param params TextButtonParams
69
+ */
70
+ constructor({ scene, x, y, text, fontSize, font, backgroundColor, textColor, borderRadius, margin, onClick, }: TextButtonParams);
71
+ /**
72
+ * Sets the button text.
73
+ * @param text The new text.
74
+ * @returns This TextButton instance.
75
+ */
35
76
  setText(text: string): this;
36
- setTextSize(textSize: FontSizeKey | number): this;
77
+ /**
78
+ * Sets the font size.
79
+ * @param fontSize Font size in px or token.
80
+ * @returns This TextButton instance.
81
+ */
82
+ setFontSize(fontSize: FontSizeKey | number): this;
83
+ /**
84
+ * Sets the font family.
85
+ * @param font Font family as string or token.
86
+ * @returns This TextButton instance.
87
+ */
37
88
  setFont(font: FontKey | string): this;
89
+ /**
90
+ * Sets the background color.
91
+ * @param color Color as token or CSS string.
92
+ * @returns This TextButton instance.
93
+ */
38
94
  setBackgroundColor(color: ColorKey | string): this;
95
+ /**
96
+ * Sets the text color.
97
+ * @param color Color as token or CSS string.
98
+ * @returns This TextButton instance.
99
+ */
39
100
  setTextColor(color: ColorKey | string): this;
101
+ /**
102
+ * Sets the border radius.
103
+ * @param borderRadius Border radius in px or token.
104
+ * @returns This TextButton instance.
105
+ */
40
106
  setBorderRadius(borderRadius: RadiusKey | number): this;
107
+ /**
108
+ * Sets the margin (padding).
109
+ * @param margin Margin in px or token.
110
+ * @returns This TextButton instance.
111
+ */
41
112
  setMargin(margin: SpacingKey | number): this;
113
+ /**
114
+ * Creates the button text GameObject.
115
+ * @param scene Phaser scene.
116
+ */
42
117
  private createButtonText;
118
+ /**
119
+ * Creates the shadow sprite for the button.
120
+ * @param scene Phaser scene.
121
+ */
43
122
  private createShadowSprite;
123
+ /**
124
+ * Creates the background sprite for the button.
125
+ * @param scene Phaser scene.
126
+ */
44
127
  private createBackgroundSprite;
128
+ /**
129
+ * Regenerates the background and shadow textures based on current state.
130
+ */
45
131
  private regenerateSprites;
132
+ /**
133
+ * Calculates the button's width and height based on text and margin.
134
+ * @returns Object with width and height.
135
+ */
46
136
  private getButtonDimensions;
137
+ /**
138
+ * Creates a texture for the button's shadow.
139
+ * @param scene Phaser scene.
140
+ * @returns The texture key.
141
+ */
47
142
  private createShadowTexture;
143
+ /**
144
+ * Creates a texture for the button's background.
145
+ * @param scene Phaser scene.
146
+ * @returns The texture key.
147
+ */
48
148
  private createBackgroundTexture;
149
+ /**
150
+ * Adds the button's visual elements to the container.
151
+ */
49
152
  private setupContainer;
153
+ /**
154
+ * Sets up interactivity for the button, including hover and click effects.
155
+ * @param onClick Optional click callback.
156
+ */
50
157
  private setupInteractivity;
51
158
  }
52
159
  //# sourceMappingURL=text-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"text-button.d.ts","sourceRoot":"","sources":["../../../src/components/text-button/text-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAIrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAChC,uCAAuC;IACvC,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,4CAA4C;IAC5C,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACpC,uCAAuC;IACvC,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC9B,6FAA6F;IAC7F,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAClC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AAYF,qBAAa,UAAW,SAAQ,WAAW,CAAC,SAAS;IAC5C,gBAAgB,EAAG,WAAW,CAAC,MAAM,CAAC;IACtC,YAAY,EAAG,WAAW,CAAC,MAAM,CAAC;IAClC,UAAU,EAAG,WAAW,CAAC,IAAI,CAAC;IAErC,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,oBAAoB,CAAU;IACtC,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,SAAS,CAAU;gBAEf,EACV,KAAK,EACL,CAAC,EACD,CAAC,EACD,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,eAAwB,EACxB,SAAmB,EACnB,YAAmB,EACnB,MAAY,EACZ,OAAO,GACR,EAAE,gBAAgB;IAkCZ,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAO3B,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAUjD,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAUrC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAMlD,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;IAM5C,eAAe,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IASvD,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IASnD,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,mBAAmB;IA+B3B,OAAO,CAAC,uBAAuB;IAyB/B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,kBAAkB;CA4C3B"}
1
+ {"version":3,"file":"text-button.d.ts","sourceRoot":"","sources":["../../../src/components/text-button/text-button.ts"],"names":[],"mappings":"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"}
@@ -9,27 +9,38 @@ const HOVER_SCALE = 1.05;
9
9
  const CLICK_OFFSET = 2;
10
10
  const SHADOW_OFFSET = 4;
11
11
  const SHADOW_OPACITY = 0.15;
12
+ /**
13
+ * A customizable text button component for Phaser, supporting auto-sizing,
14
+ * design tokens, and interactive effects.
15
+ */
12
16
  export class TextButton extends GameObjects.Container {
17
+ /** The background sprite of the button. */
13
18
  backgroundSprite;
19
+ /** The shadow sprite of the button. */
14
20
  shadowSprite;
21
+ /** The text object of the button. */
15
22
  buttonText;
16
23
  pw;
17
- textSizePx;
24
+ fontSizePx;
18
25
  marginPx;
19
26
  borderRadiusPx;
20
27
  backgroundColorValue;
21
28
  textColorValue;
22
29
  fontValue;
23
30
  textValue;
24
- constructor({ scene, x, y, text, textSize, font, backgroundColor = 'blue', textColor = 'white', borderRadius = 'md', margin = '4', onClick, }) {
31
+ /**
32
+ * Creates a new TextButton instance.
33
+ * @param params TextButtonParams
34
+ */
35
+ constructor({ scene, x, y, text, fontSize, font, backgroundColor = 'blue', textColor = 'white', borderRadius = 'md', margin = '4', onClick, }) {
25
36
  super(scene, x, y);
26
37
  this.pw = getPWFromScene(scene);
27
38
  // Store values
28
39
  this.textValue = text;
29
- this.textSizePx =
30
- typeof textSize === 'number'
31
- ? textSize
32
- : this.pw.fontSize.px(textSize ?? 'md');
40
+ this.fontSizePx =
41
+ typeof fontSize === 'number'
42
+ ? fontSize
43
+ : this.pw.fontSize.px(fontSize ?? 'md');
33
44
  this.marginPx =
34
45
  typeof margin === 'number'
35
46
  ? margin
@@ -51,21 +62,36 @@ export class TextButton extends GameObjects.Container {
51
62
  this.setupInteractivity(onClick);
52
63
  }
53
64
  // API Methods
65
+ /**
66
+ * Sets the button text.
67
+ * @param text The new text.
68
+ * @returns This TextButton instance.
69
+ */
54
70
  setText(text) {
55
71
  this.textValue = text;
56
72
  this.buttonText.setText(text);
57
73
  this.regenerateSprites();
58
74
  return this;
59
75
  }
60
- setTextSize(textSize) {
61
- this.textSizePx =
62
- typeof textSize === 'number'
63
- ? textSize
64
- : this.pw.fontSize.px(textSize ?? 'md');
65
- this.buttonText.setFontSize(this.textSizePx);
76
+ /**
77
+ * Sets the font size.
78
+ * @param fontSize Font size in px or token.
79
+ * @returns This TextButton instance.
80
+ */
81
+ setFontSize(fontSize) {
82
+ this.fontSizePx =
83
+ typeof fontSize === 'number'
84
+ ? fontSize
85
+ : this.pw.fontSize.px(fontSize ?? 'md');
86
+ this.buttonText.setFontSize(this.fontSizePx);
66
87
  this.regenerateSprites();
67
88
  return this;
68
89
  }
90
+ /**
91
+ * Sets the font family.
92
+ * @param font Font family as string or token.
93
+ * @returns This TextButton instance.
94
+ */
69
95
  setFont(font) {
70
96
  this.fontValue =
71
97
  typeof font === 'string'
@@ -75,16 +101,31 @@ export class TextButton extends GameObjects.Container {
75
101
  this.regenerateSprites();
76
102
  return this;
77
103
  }
104
+ /**
105
+ * Sets the background color.
106
+ * @param color Color as token or CSS string.
107
+ * @returns This TextButton instance.
108
+ */
78
109
  setBackgroundColor(color) {
79
110
  this.backgroundColorValue = Color.rgb(color);
80
111
  this.regenerateSprites();
81
112
  return this;
82
113
  }
114
+ /**
115
+ * Sets the text color.
116
+ * @param color Color as token or CSS string.
117
+ * @returns This TextButton instance.
118
+ */
83
119
  setTextColor(color) {
84
120
  this.textColorValue = Color.rgb(color);
85
121
  this.buttonText.setColor(this.textColorValue);
86
122
  return this;
87
123
  }
124
+ /**
125
+ * Sets the border radius.
126
+ * @param borderRadius Border radius in px or token.
127
+ * @returns This TextButton instance.
128
+ */
88
129
  setBorderRadius(borderRadius) {
89
130
  this.borderRadiusPx =
90
131
  typeof borderRadius === 'number'
@@ -93,6 +134,11 @@ export class TextButton extends GameObjects.Container {
93
134
  this.regenerateSprites();
94
135
  return this;
95
136
  }
137
+ /**
138
+ * Sets the margin (padding).
139
+ * @param margin Margin in px or token.
140
+ * @returns This TextButton instance.
141
+ */
96
142
  setMargin(margin) {
97
143
  this.marginPx =
98
144
  typeof margin === 'number'
@@ -101,24 +147,39 @@ export class TextButton extends GameObjects.Container {
101
147
  this.regenerateSprites();
102
148
  return this;
103
149
  }
150
+ /**
151
+ * Creates the button text GameObject.
152
+ * @param scene Phaser scene.
153
+ */
104
154
  createButtonText(scene) {
105
155
  this.buttonText = scene.add.text(0, 0, this.textValue, {
106
- fontSize: `${this.textSizePx}px`,
156
+ fontSize: `${this.fontSizePx}px`,
107
157
  fontFamily: this.fontValue,
108
158
  color: this.textColorValue,
109
159
  });
110
160
  this.buttonText.setOrigin(0.5, 0.5);
111
161
  }
162
+ /**
163
+ * Creates the shadow sprite for the button.
164
+ * @param scene Phaser scene.
165
+ */
112
166
  createShadowSprite(scene) {
113
167
  const shadowTexture = this.createShadowTexture(scene);
114
168
  this.shadowSprite = scene.add.sprite(0, SHADOW_OFFSET, shadowTexture);
115
169
  this.shadowSprite.setOrigin(0.5, 0.5);
116
170
  }
171
+ /**
172
+ * Creates the background sprite for the button.
173
+ * @param scene Phaser scene.
174
+ */
117
175
  createBackgroundSprite(scene) {
118
176
  const backgroundTexture = this.createBackgroundTexture(scene);
119
177
  this.backgroundSprite = scene.add.sprite(0, 0, backgroundTexture);
120
178
  this.backgroundSprite.setOrigin(0.5, 0.5);
121
179
  }
180
+ /**
181
+ * Regenerates the background and shadow textures based on current state.
182
+ */
122
183
  regenerateSprites() {
123
184
  // Update text bounds after text/font changes
124
185
  this.buttonText.setText(this.textValue);
@@ -128,12 +189,21 @@ export class TextButton extends GameObjects.Container {
128
189
  this.shadowSprite.setTexture(shadowTexture);
129
190
  this.backgroundSprite.setTexture(backgroundTexture);
130
191
  }
192
+ /**
193
+ * Calculates the button's width and height based on text and margin.
194
+ * @returns Object with width and height.
195
+ */
131
196
  getButtonDimensions() {
132
197
  const textBounds = this.buttonText.getBounds();
133
198
  const width = textBounds.width + this.marginPx * 2;
134
199
  const height = textBounds.height + this.marginPx * 2;
135
200
  return { width, height };
136
201
  }
202
+ /**
203
+ * Creates a texture for the button's shadow.
204
+ * @param scene Phaser scene.
205
+ * @returns The texture key.
206
+ */
137
207
  createShadowTexture(scene) {
138
208
  const { width, height } = this.getButtonDimensions();
139
209
  const textureKey = `textButton_shadow_${this.backgroundColorValue}_${this.borderRadiusPx}_${width}_${height}`;
@@ -152,6 +222,11 @@ export class TextButton extends GameObjects.Container {
152
222
  graphics.destroy();
153
223
  return textureKey;
154
224
  }
225
+ /**
226
+ * Creates a texture for the button's background.
227
+ * @param scene Phaser scene.
228
+ * @returns The texture key.
229
+ */
155
230
  createBackgroundTexture(scene) {
156
231
  const { width, height } = this.getButtonDimensions();
157
232
  const textureKey = `textButton_bg_${this.backgroundColorValue}_${this.borderRadiusPx}_${width}_${height}`;
@@ -170,9 +245,16 @@ export class TextButton extends GameObjects.Container {
170
245
  graphics.destroy();
171
246
  return textureKey;
172
247
  }
248
+ /**
249
+ * Adds the button's visual elements to the container.
250
+ */
173
251
  setupContainer() {
174
252
  this.add([this.shadowSprite, this.backgroundSprite, this.buttonText]);
175
253
  }
254
+ /**
255
+ * Sets up interactivity for the button, including hover and click effects.
256
+ * @param onClick Optional click callback.
257
+ */
176
258
  setupInteractivity(onClick) {
177
259
  this.backgroundSprite.setInteractive({ useHandCursor: true });
178
260
  // Hover effects
@@ -1 +1 @@
1
- {"version":3,"file":"text-button.js","sourceRoot":"","sources":["../../../src/components/text-button/text-button.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-button.js","sourceRoot":"","sources":["../../../src/components/text-button/text-button.ts"],"names":[],"mappings":"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"}
@@ -154,7 +154,7 @@ describe('TextButton', () => {
154
154
  x: 100,
155
155
  y: 100,
156
156
  text: 'Custom Button',
157
- textSize: 'lg',
157
+ fontSize: 'lg',
158
158
  backgroundColor: 'red',
159
159
  textColor: 'white',
160
160
  borderRadius: 'lg',
@@ -172,7 +172,7 @@ describe('TextButton', () => {
172
172
  });
173
173
  const result = textButton
174
174
  .setText('Chained')
175
- .setTextSize('lg')
175
+ .setFontSize('lg')
176
176
  .setBackgroundColor('green')
177
177
  .setBorderRadius('lg')
178
178
  .setMargin('4');
@@ -1 +1 @@
1
- {"version":3,"file":"text-button.spec.js","sourceRoot":"","sources":["../../../src/components/text-button/text-button.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-button.spec.js","sourceRoot":"","sources":["../../../src/components/text-button/text-button.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Scene } from "phaser";
2
+ import { BaseThemeConfig } from "phaser-wind";
3
+ import { HudiniPlugin } from '../plugin/plugin';
4
+ export declare const getHudini: <T extends BaseThemeConfig = BaseThemeConfig>(scene: Scene) => HudiniPlugin<T>;
5
+ //# sourceMappingURL=get-hudini.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-hudini.d.ts","sourceRoot":"","sources":["../../src/utils/get-hudini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,eAAe,GAAG,eAAe,EACjE,OAAO,KAAK,KACb,YAAY,CAAC,CAAC,CAEhB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const getHudini = (scene) => {
2
+ return scene.hudini;
3
+ };
4
+ //# sourceMappingURL=get-hudini.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-hudini.js","sourceRoot":"","sources":["../../src/utils/get-hudini.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,SAAS,GAAG,CACrB,KAAY,EACG,EAAE;IACjB,OAAQ,KAAuC,CAAC,MAAM,CAAC;AAC3D,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-pw-from-scene.d.ts","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAuB,MAAM,aAAa,CAAC;AAEpE,eAAO,MAAM,cAAc,GAAI,OAAO,KAAK,KAAG,gBAAgB,CAAC,EAAE,CAEhE,CAAC"}
1
+ {"version":3,"file":"get-pw-from-scene.d.ts","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAEjB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,cAAc,GAAI,OAAO,KAAK,KAAG,gBAAgB,CAAC,EAAE,CAEhE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-pw-from-scene.js","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAwB,EAAE;IACnE,OAAQ,KAA4C,CAAC,EAAE,CAAC;AAC1D,CAAC,CAAC"}
1
+ {"version":3,"file":"get-pw-from-scene.js","sourceRoot":"","sources":["../../src/utils/get-pw-from-scene.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAwB,EAAE;IACnE,OAAQ,KAA4C,CAAC,EAAE,CAAC;AAC1D,CAAC,CAAC"}
@@ -1,2 +1,3 @@
1
+ export * from './get-hudini';
1
2
  export * from './get-pw-from-scene';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
@@ -1,2 +1,3 @@
1
+ export * from './get-hudini';
1
2
  export * from './get-pw-from-scene';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hudini",
3
- "version": "0.10.1",
3
+ "version": "0.11.1",
4
4
  "description": "🎩 Magical Phaser UI components - Reusable HUD elements for game development. Is magic, like a wizard",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",