@number10/phaserjsx 4.3.0 → 4.5.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 (101) hide show
  1. package/README.md +9 -3
  2. package/dist/colors/color-presets.d.ts +1 -1
  3. package/dist/colors/color-presets.d.ts.map +1 -1
  4. package/dist/colors/color-types.d.ts +20 -8
  5. package/dist/colors/color-types.d.ts.map +1 -1
  6. package/dist/colors/color-utils.d.ts +29 -27
  7. package/dist/colors/color-utils.d.ts.map +1 -1
  8. package/dist/colors/index.d.ts +3 -3
  9. package/dist/colors/index.d.ts.map +1 -1
  10. package/dist/colors/preset-manager.d.ts.map +1 -1
  11. package/dist/colors/use-colors.d.ts +0 -4
  12. package/dist/colors/use-colors.d.ts.map +1 -1
  13. package/dist/components/backgroundImage.d.ts.map +1 -1
  14. package/dist/components/custom/ActivityIndicator.d.ts +43 -0
  15. package/dist/components/custom/ActivityIndicator.d.ts.map +1 -0
  16. package/dist/components/custom/Badge.d.ts.map +1 -1
  17. package/dist/components/custom/BottomSheet.d.ts +86 -0
  18. package/dist/components/custom/BottomSheet.d.ts.map +1 -0
  19. package/dist/components/custom/Button.d.ts +25 -2
  20. package/dist/components/custom/Button.d.ts.map +1 -1
  21. package/dist/components/custom/CharTextInput.d.ts +10 -0
  22. package/dist/components/custom/CharTextInput.d.ts.map +1 -1
  23. package/dist/components/custom/Checkbox.d.ts.map +1 -1
  24. package/dist/components/custom/ColorPicker.d.ts +72 -0
  25. package/dist/components/custom/ColorPicker.d.ts.map +1 -0
  26. package/dist/components/custom/Dropdown.d.ts +1 -1
  27. package/dist/components/custom/Dropdown.d.ts.map +1 -1
  28. package/dist/components/custom/Icon.d.ts.map +1 -1
  29. package/dist/components/custom/Icon.test.d.ts +2 -0
  30. package/dist/components/custom/Icon.test.d.ts.map +1 -0
  31. package/dist/components/custom/ListBox.d.ts +77 -0
  32. package/dist/components/custom/ListBox.d.ts.map +1 -0
  33. package/dist/components/custom/MenuButton.d.ts +40 -0
  34. package/dist/components/custom/MenuButton.d.ts.map +1 -0
  35. package/dist/components/custom/NumberInput.d.ts +143 -0
  36. package/dist/components/custom/NumberInput.d.ts.map +1 -0
  37. package/dist/components/custom/PalettePicker.d.ts +96 -0
  38. package/dist/components/custom/PalettePicker.d.ts.map +1 -0
  39. package/dist/components/custom/Popover.d.ts +9 -0
  40. package/dist/components/custom/Popover.d.ts.map +1 -1
  41. package/dist/components/custom/ProgressBar.d.ts.map +1 -1
  42. package/dist/components/custom/ProgressView.d.ts +47 -0
  43. package/dist/components/custom/ProgressView.d.ts.map +1 -0
  44. package/dist/components/custom/RadioButton.d.ts +8 -0
  45. package/dist/components/custom/RadioButton.d.ts.map +1 -1
  46. package/dist/components/custom/RadioGroup.d.ts +4 -0
  47. package/dist/components/custom/RadioGroup.d.ts.map +1 -1
  48. package/dist/components/custom/RatingBar.d.ts +48 -0
  49. package/dist/components/custom/RatingBar.d.ts.map +1 -0
  50. package/dist/components/custom/ScrollSlider.d.ts +7 -1
  51. package/dist/components/custom/ScrollSlider.d.ts.map +1 -1
  52. package/dist/components/custom/ScrollView.d.ts.map +1 -1
  53. package/dist/components/custom/SegmentedControl.d.ts +99 -0
  54. package/dist/components/custom/SegmentedControl.d.ts.map +1 -0
  55. package/dist/components/custom/Toast.d.ts +89 -0
  56. package/dist/components/custom/Toast.d.ts.map +1 -0
  57. package/dist/components/custom/Toggle.d.ts.map +1 -1
  58. package/dist/components/custom/Toolbar.d.ts +134 -0
  59. package/dist/components/custom/Toolbar.d.ts.map +1 -0
  60. package/dist/components/custom/WheelPicker.d.ts +63 -0
  61. package/dist/components/custom/WheelPicker.d.ts.map +1 -0
  62. package/dist/components/custom/index.cjs +39 -1
  63. package/dist/components/custom/index.d.ts +18 -5
  64. package/dist/components/custom/index.d.ts.map +1 -1
  65. package/dist/components/custom/index.js +2 -2
  66. package/dist/components/custom/useOverlayPresence.d.ts +9 -0
  67. package/dist/components/custom/useOverlayPresence.d.ts.map +1 -0
  68. package/dist/components/index.d.ts +16 -5
  69. package/dist/components/index.d.ts.map +1 -1
  70. package/dist/{custom-DMZASXll.js → custom-pRNJ0_kS.js} +17044 -27908
  71. package/dist/custom-pRNJ0_kS.js.map +1 -0
  72. package/dist/{custom-37gL0VZG.cjs → custom-rkdLsk0U.cjs} +17358 -27863
  73. package/dist/custom-rkdLsk0U.cjs.map +1 -0
  74. package/dist/design-tokens/component-size-presets.d.ts +52 -0
  75. package/dist/design-tokens/component-size-presets.d.ts.map +1 -0
  76. package/dist/design-tokens/index.d.ts +2 -0
  77. package/dist/design-tokens/index.d.ts.map +1 -1
  78. package/dist/dev-config.d.ts.map +1 -1
  79. package/dist/index.cjs +61 -254
  80. package/dist/index.cjs.map +1 -1
  81. package/dist/index.js +2 -242
  82. package/dist/index.js.map +1 -1
  83. package/dist/jsx-runtime.cjs +4 -1
  84. package/dist/jsx-runtime.cjs.map +1 -1
  85. package/dist/jsx-runtime.d.ts.map +1 -1
  86. package/dist/jsx-runtime.js +4 -1
  87. package/dist/jsx-runtime.js.map +1 -1
  88. package/dist/layout/utils/child-utils.d.ts.map +1 -1
  89. package/dist/layout/utils/dimension-calculator.d.ts.map +1 -1
  90. package/dist/scripts/generate-icon-loaders.js +27 -1
  91. package/dist/scripts/generate-icons.d.ts.map +1 -1
  92. package/dist/scripts/generate-icons.js +27 -1
  93. package/dist/theme-custom.d.ts +293 -8
  94. package/dist/theme-custom.d.ts.map +1 -1
  95. package/dist/theme-defaults.d.ts.map +1 -1
  96. package/dist/theme.d.ts +9 -0
  97. package/dist/theme.d.ts.map +1 -1
  98. package/dist/vdom.d.ts.map +1 -1
  99. package/package.json +1 -3
  100. package/dist/custom-37gL0VZG.cjs.map +0 -1
  101. package/dist/custom-DMZASXll.js.map +0 -1
package/README.md CHANGED
@@ -22,7 +22,7 @@ The 4.x line uses Phaser 4 render steps, filters, and WebGL behavior and is not
22
22
  - 🎨 **React-like API** - Familiar JSX syntax with hooks (useState, useEffect, useMemo, etc.)
23
23
  - 🎯 **Type-Safe** - Full TypeScript support with strict type checking
24
24
  - 🎨 **Powerful Theme System** - Global and component-level theming with runtime switching
25
- - 📦 **Rich Component Library** - Button, Text, Icon, Checkbox, ProgressBar, Badge, Popover, ContextMenu, and more
25
+ - 📦 **Rich Component Library** - Button, Text, Icon, Checkbox, ProgressBar, Badge, ListBox, BottomSheet, Toast, WheelPicker, and more
26
26
  - 🎭 **Built-in Effects** - 23+ animation effects (pulse, shake, fade, bounce, etc.)
27
27
  - 📱 **Responsive Design** - Flexible layout with multiple size value formats (px, %, vw/vh, fill, auto, calc)
28
28
  - 🔧 **Custom Components** - Easy to create and integrate custom components
@@ -33,16 +33,22 @@ The 4.x line uses Phaser 4 render steps, filters, and WebGL behavior and is not
33
33
 
34
34
  ## Current Release
35
35
 
36
- The current package line is `@number10/phaserjsx@4.3.0`, targeting Phaser 4.1+.
36
+ The current package line is `@number10/phaserjsx@4.5.0`, targeting Phaser 4.1+.
37
37
 
38
38
  Recent public API additions include:
39
39
 
40
+ - `BottomSheet` for portal-backed sheets with backdrop dismissal, drag-to-dismiss behavior, and configurable handle rendering.
41
+ - `NumberInput`, `ColorPicker`, `PalettePicker`, and `SegmentedControl` for settings, editor, and form-style game UIs.
42
+ - `Toolbar`, `MenuButton`, `ListBox`, `WheelPicker`, `ActivityIndicator`, `ProgressView`, `Toast`, and `RatingBar` for richer in-game controls and feedback surfaces.
43
+ - Shared compact component size presets and stronger contrast defaults across presets and color modes.
44
+ - Button `ghost` and `danger` variants, generated `label`/`text` content, nested Text/Icon theme slots, and themed size/variant maps.
40
45
  - `Checkbox` for form and settings UIs, including controlled/uncontrolled and tristate state.
41
46
  - `ProgressBar` for horizontal or vertical progress indicators with optional labels.
42
47
  - `Badge` and `Tag` for compact status, count, and label indicators.
43
- - `Popover` and `ContextMenu` for portal-based overlays with measured placement and viewport clamping.
48
+ - `Popover` and `ContextMenu` for portal-based overlays with measured placement, viewport clamping, and open/close presence animations.
44
49
  - `DebugPanel` for lightweight runtime diagnostics in development and performance demos.
45
50
  - Tooltip support as an API-level interaction feature for pointer/hover-capable displays.
51
+ - Removed `lodash` dependency — custom-component chunk size reduced by ~43% (490 kB).
46
52
 
47
53
  ## 📦 Installation
48
54
 
@@ -1,6 +1,6 @@
1
1
  import { ColorShade, ColorTokens } from './color-types';
2
2
  /**
3
- * Generate a complete color scale from a base color
3
+ * Generate a complete color scale from a base color using HSL-based perceptual scaling
4
4
  * Creates shades from lightest to darkest with DEFAULT pointing to medium
5
5
  * @param baseColor - The base color in hex format (e.g., '#2196f3')
6
6
  * @returns Complete ColorShade with all semantic levels as HexColor objects
@@ -1 +1 @@
1
- {"version":3,"file":"color-presets.d.ts","sourceRoot":"","sources":["../../src/colors/color-presets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAY,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAyB3E;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAQhE;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,MAAM,EAAE,WAAW,CAAA;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WA4C7B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,WA4C/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,WA4C5B,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAmC/D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAmC9D;AAED;;GAEG;AACH,eAAO,MAAM,OAAO;;;;CAIV,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,OAAO,CAAA;AAE7C;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAEvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAGvF"}
1
+ {"version":3,"file":"color-presets.d.ts","sourceRoot":"","sources":["../../src/colors/color-presets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAY,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAoG3E;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAWhE;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,MAAM,EAAE,WAAW,CAAA;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAoB7B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,WA4C/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,WAoB5B,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAW/D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAW9D;AAED;;GAEG;AACH,eAAO,MAAM,OAAO;;;;CAIV,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,OAAO,CAAA;AAE7C;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAEvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAGvF"}
@@ -8,15 +8,27 @@
8
8
  */
9
9
  export type ShadeLevel = 'lightest' | 'light' | 'medium' | 'dark' | 'darkest';
10
10
  /**
11
- * Hex color string with conversion method
12
- * Extends string but adds toNumber() for Phaser compatibility
11
+ * Hex color with conversion method for Phaser compatibility
12
+ * Wraps a string value and provides toNumber() for Phaser color integration
13
13
  */
14
- export declare class HexColor extends String {
14
+ export declare class HexColor {
15
+ #private;
16
+ constructor(hex: string);
15
17
  /**
16
18
  * Convert to Phaser number format
17
19
  * @returns Color as number (0xffffff)
18
20
  */
19
21
  toNumber(): number;
22
+ /**
23
+ * Return the hex string value
24
+ * @returns Hex color string
25
+ */
26
+ toString(): string;
27
+ /**
28
+ * Primitive string value for coercion contexts
29
+ * @returns Hex color string
30
+ */
31
+ valueOf(): string;
20
32
  /**
21
33
  * Create a HexColor from a hex string
22
34
  * @param hex - Hex color string
@@ -27,7 +39,7 @@ export declare class HexColor extends String {
27
39
  * Color shade scale with semantic naming
28
40
  * Each color token has multiple shades for different use cases
29
41
  * Uses HexColor type for VS Code color picker support and .toNumber() method
30
- * DEFAULT is computed property pointing to medium (not in interface)
42
+ * DEFAULT is an alias for medium
31
43
  * @example
32
44
  * ```typescript
33
45
  * const primaryShade: ColorShade = {
@@ -36,10 +48,10 @@ export declare class HexColor extends String {
36
48
  * medium: HexColor.from('#42a5f5'),
37
49
  * dark: HexColor.from('#1976d2'),
38
50
  * darkest: HexColor.from('#0d47a1'),
51
+ * DEFAULT: HexColor.from('#42a5f5'), // alias to medium
39
52
  * }
40
- * // DEFAULT is available via getter:
41
- * backgroundColor: colors.primary.DEFAULT.toNumber() // returns medium
42
- * // Direct usage:
53
+ * // Usage:
54
+ * backgroundColor: colors.primary.DEFAULT.toNumber() // same as medium
43
55
  * backgroundColor: colors.primary.medium.toNumber()
44
56
  * ```
45
57
  */
@@ -54,7 +66,7 @@ export interface ColorShade {
54
66
  dark: HexColor;
55
67
  /** Darkest shade - text, emphasis */
56
68
  darkest: HexColor;
57
- /** DEFAULT shade - computed property that points to medium */
69
+ /** DEFAULT shade - alias for medium */
58
70
  readonly DEFAULT: HexColor;
59
71
  }
60
72
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"color-types.d.ts","sourceRoot":"","sources":["../../src/colors/color-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAA;AAE7E;;;GAGG;AACH,qBAAa,QAAS,SAAQ,MAAM;IAClC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAKlB;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;CAGnC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,UAAU;IACzB,iDAAiD;IACjD,QAAQ,EAAE,QAAQ,CAAA;IAClB,uCAAuC;IACvC,KAAK,EAAE,QAAQ,CAAA;IACf,sEAAsE;IACtE,MAAM,EAAE,QAAQ,CAAA;IAChB,qCAAqC;IACrC,IAAI,EAAE,QAAQ,CAAA;IACd,qCAAqC;IACrC,OAAO,EAAE,QAAQ,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,OAAO,EAAE,UAAU,CAAA;IACnB,iDAAiD;IACjD,SAAS,EAAE,UAAU,CAAA;IACrB,qDAAqD;IACrD,MAAM,EAAE,UAAU,CAAA;IAElB,6DAA6D;IAC7D,OAAO,EAAE,UAAU,CAAA;IACnB,6CAA6C;IAC7C,OAAO,EAAE,UAAU,CAAA;IACnB,sDAAsD;IACtD,KAAK,EAAE,UAAU,CAAA;IACjB,gDAAgD;IAChD,IAAI,EAAE,UAAU,CAAA;IAEhB,+CAA+C;IAC/C,UAAU,EAAE,UAAU,CAAA;IACtB,wDAAwD;IACxD,OAAO,EAAE,UAAU,CAAA;IACnB,yCAAyC;IACzC,IAAI,EAAE,UAAU,CAAA;IAChB,yCAAyC;IACzC,MAAM,EAAE,UAAU,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;AAExC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV"}
1
+ {"version":3,"file":"color-types.d.ts","sourceRoot":"","sources":["../../src/colors/color-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAA;AAE7E;;;GAGG;AACH,qBAAa,QAAQ;;gBAGP,GAAG,EAAE,MAAM;IAIvB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,OAAO,IAAI,MAAM;IAIjB;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;CAGnC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,UAAU;IACzB,iDAAiD;IACjD,QAAQ,EAAE,QAAQ,CAAA;IAClB,uCAAuC;IACvC,KAAK,EAAE,QAAQ,CAAA;IACf,sEAAsE;IACtE,MAAM,EAAE,QAAQ,CAAA;IAChB,qCAAqC;IACrC,IAAI,EAAE,QAAQ,CAAA;IACd,qCAAqC;IACrC,OAAO,EAAE,QAAQ,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,OAAO,EAAE,UAAU,CAAA;IACnB,iDAAiD;IACjD,SAAS,EAAE,UAAU,CAAA;IACrB,qDAAqD;IACrD,MAAM,EAAE,UAAU,CAAA;IAElB,6DAA6D;IAC7D,OAAO,EAAE,UAAU,CAAA;IACnB,6CAA6C;IAC7C,OAAO,EAAE,UAAU,CAAA;IACnB,sDAAsD;IACtD,KAAK,EAAE,UAAU,CAAA;IACjB,gDAAgD;IAChD,IAAI,EAAE,UAAU,CAAA;IAEhB,+CAA+C;IAC/C,UAAU,EAAE,UAAU,CAAA;IACtB,wDAAwD;IACxD,OAAO,EAAE,UAAU,CAAA;IACnB,yCAAyC;IACzC,IAAI,EAAE,UAAU,CAAA;IAChB,yCAAyC;IACzC,MAAM,EAAE,UAAU,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;AAExC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV"}
@@ -23,6 +23,12 @@ export declare function hexToNumber(hex: string): number;
23
23
  * ```
24
24
  */
25
25
  export declare function numberToHex(num: number, withHash?: boolean): string;
26
+ /**
27
+ * Normalize a color number to Phaser's 0x000000-0xffffff RGB range.
28
+ * @param color - Color number to normalize
29
+ * @returns RGB color number in the 24-bit range
30
+ */
31
+ export declare function normalizeColorNumber(color: number): number;
26
32
  /**
27
33
  * Convert RGB values to Phaser number format
28
34
  * @param r - Red component (0-255)
@@ -72,6 +78,28 @@ export interface HSLColor {
72
78
  * ```
73
79
  */
74
80
  export declare function rgbToHsl(r: number, g: number, b: number): HSLColor;
81
+ /**
82
+ * Convert normalized HSL values to RGB components.
83
+ * @param h - Hue in normalized range (0.0 to 1.0)
84
+ * @param s - Saturation in normalized range (0.0 to 1.0)
85
+ * @param l - Lightness in normalized range (0.0 to 1.0)
86
+ * @returns RGB color object
87
+ */
88
+ export declare function hslToRgb(h: number, s: number, l: number): RGBColor;
89
+ /**
90
+ * Convert normalized HSL values to Phaser number format.
91
+ * @param h - Hue in normalized range (0.0 to 1.0)
92
+ * @param s - Saturation in normalized range (0.0 to 1.0)
93
+ * @param l - Lightness in normalized range (0.0 to 1.0)
94
+ * @returns Phaser color number
95
+ */
96
+ export declare function hslToNumber(h: number, s: number, l: number): number;
97
+ /**
98
+ * Convert Phaser number format to normalized HSL values.
99
+ * @param color - Phaser color number
100
+ * @returns HSL color values with normalized components
101
+ */
102
+ export declare function numberToHsl(color: number): HSLColor;
75
103
  /**
76
104
  * Lighten a color by a given amount
77
105
  * @param color - Phaser color number
@@ -120,33 +148,6 @@ export declare function lightenHex(hex: string, amount: number): HexColor;
120
148
  * ```
121
149
  */
122
150
  export declare function darkenHex(hex: string, amount: number): HexColor;
123
- /**
124
- * Hex color wrapper with chainable conversion methods
125
- * Provides fluent API for color conversions
126
- */
127
- export interface HexColorWrapper {
128
- /** Original hex string value */
129
- value: string;
130
- /** Convert to Phaser number format */
131
- toNumber: () => number;
132
- /** Convert to string (returns hex) */
133
- toString: () => string;
134
- }
135
- /**
136
- * Create a hex color wrapper with chainable methods
137
- * @param hex - Hex color string
138
- * @returns Wrapper object with conversion methods
139
- * @example
140
- * ```typescript
141
- * const color = hex('#ff0000')
142
- * color.toNumber() // 0xff0000
143
- * color.toString() // '#ff0000'
144
- *
145
- * // Direct usage:
146
- * backgroundColor: hex(colors.primary.DEFAULT).toNumber()
147
- * ```
148
- */
149
- export declare function hex(hexColor: string): HexColorWrapper;
150
151
  /**
151
152
  * Convert color to rgba string for Phaser Text style
152
153
  * @param color - Phaser color number
@@ -174,6 +175,7 @@ export declare function alpha(color: number, alphaValue?: number): string;
174
175
  export declare function getContrastRatio(foreground: number, background: number): number;
175
176
  /**
176
177
  * Ensure minimum contrast ratio by adjusting foreground color
178
+ * Uses binary search for efficiency (O(log n) vs O(n))
177
179
  * @param foreground - Foreground color to adjust
178
180
  * @param background - Background color (fixed)
179
181
  * @param minRatio - Minimum contrast ratio (default: 4.5 for WCAG AA)
@@ -1 +1 @@
1
- {"version":3,"file":"color-utils.d.ts","sourceRoot":"","sources":["../../src/colors/color-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,MAAM,CAGhE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAMjD;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,CAAC,EAAE,MAAM,CAAA;IACT,kDAAkD;IAClD,CAAC,EAAE,MAAM,CAAA;IACT,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,CAuBlE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAS7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAS5D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAIhE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAI/D;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,sCAAsC;IACtC,QAAQ,EAAE,MAAM,MAAM,CAAA;IACtB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,MAAM,CAAA;CACvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAMrD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAM,GAAG,MAAM,CAI7D;AAwBD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQ/E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,MAAM,CAsB7F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,EAC9C,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GACjC,cAAc,CAShB"}
1
+ {"version":3,"file":"color-utils.d.ts","sourceRoot":"","sources":["../../src/colors/color-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAA;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,MAAM,CAGhE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAQjD;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,CAAC,EAAE,MAAM,CAAA;IACT,kDAAkD;IAClD,CAAC,EAAE,MAAM,CAAA;IACT,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,CAuBlE;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,CA6BlE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGnE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAGnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAS7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAS5D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAIhE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAI/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAM,GAAG,MAAM,CAI7D;AAwBD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQ/E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,MAAM,CA0B7F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,EAC9C,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GACjC,cAAc,CAShB"}
@@ -4,9 +4,9 @@
4
4
  */
5
5
  export { HexColor } from './color-types';
6
6
  export type { ColorMode, ColorShade, ColorTokens, RGBColor, ShadeLevel } from './color-types';
7
- export { hexToNumber, numberToHex, numberToRgb, rgbToHsl, rgbToNumber } from './color-utils';
8
- export { alpha, darken, darkenHex, hex, lighten, lightenHex } from './color-utils';
9
- export type { HexColorWrapper, HSLColor } from './color-utils';
7
+ export { hexToNumber, hslToNumber, hslToRgb, normalizeColorNumber, numberToHex, numberToHsl, numberToRgb, rgbToHsl, rgbToNumber, } from './color-utils';
8
+ export { alpha, darken, darkenHex, lighten, lightenHex } from './color-utils';
9
+ export type { HSLColor } from './color-utils';
10
10
  export { createTextStyle, ensureContrast, getContrastRatio } from './color-utils';
11
11
  export { applyDarkMode, applyLightMode, forestGreenPreset, generateColorScale, getPreset, getPresetWithMode, midnightPreset, oceanBluePreset, presets, } from './color-presets';
12
12
  export type { ColorPreset, PresetName } from './color-presets';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/colors/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG7F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAG5F,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAClF,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAG9D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGjF,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,OAAO,GACR,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAG9D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAG9D,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/colors/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG7F,OAAO,EACL,WAAW,EACX,WAAW,EACX,QAAQ,EACR,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,WAAW,EACX,QAAQ,EACR,WAAW,GACZ,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC7E,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAG7C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGjF,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,OAAO,GACR,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAG9D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAG9D,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"preset-manager.d.ts","sourceRoot":"","sources":["../../src/colors/preset-manager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGjD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoBzF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAErD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEzD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,UAAU,EAAE,CAElD"}
1
+ {"version":3,"file":"preset-manager.d.ts","sourceRoot":"","sources":["../../src/colors/preset-manager.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGjD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoBzF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAErD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEzD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,UAAU,EAAE,CAElD"}
@@ -12,10 +12,6 @@ import { ColorTokens } from './color-types';
12
12
  * // New way:
13
13
  * const tokens = useThemeTokens()
14
14
  * const colors = tokens?.colors
15
- *
16
- * // Access text styles, spacing, etc.:
17
- * <Text style={tokens.textStyles.DEFAULT} />
18
- * <View padding={tokens.spacing.lg} />
19
15
  * ```
20
16
  */
21
17
  export declare function useColors(): ColorTokens | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"use-colors.d.ts","sourceRoot":"","sources":["../../src/colors/use-colors.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,IAAI,WAAW,GAAG,SAAS,CA4CnD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAS3C"}
1
+ {"version":3,"file":"use-colors.d.ts","sourceRoot":"","sources":["../../src/colors/use-colors.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,IAAI,WAAW,GAAG,SAAS,CAkCnD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAS3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundImage.d.ts","sourceRoot":"","sources":["../../src/components/backgroundImage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG;IACvD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,2BAA2B,CAAC,EAAE,OAAO,CAAA;CACtC,CAAA;AA6FD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,MAAM,CAaR;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,eAAe,GAAG,SAAS,CAiC7B;AAiCD,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAExE"}
1
+ {"version":3,"file":"backgroundImage.d.ts","sourceRoot":"","sources":["../../src/components/backgroundImage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG;IACvD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,2BAA2B,CAAC,EAAE,OAAO,CAAA;CACtC,CAAA;AA6ID,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,MAAM,CAaR;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,eAAe,GAAG,SAAS,CAiC7B;AAiCD,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAExE"}
@@ -0,0 +1,43 @@
1
+ import { PartialTheme, ViewTheme } from '../../theme-base';
2
+ import { VNodeLike } from '../../vdom';
3
+ import { ViewProps } from '../index';
4
+ export type ActivityIndicatorVariant = 'spinner' | 'dots' | 'pulse';
5
+ export type ActivityIndicatorSize = 'small' | 'medium' | 'large';
6
+ export interface ActivityIndicatorLabels {
7
+ loading?: string;
8
+ }
9
+ export interface ActivityIndicatorThemeSlot extends ViewTheme {
10
+ variant?: ActivityIndicatorVariant;
11
+ size?: ActivityIndicatorSize;
12
+ color?: number;
13
+ trackColor?: number;
14
+ lineWidth?: number;
15
+ gap?: number;
16
+ dotCount?: number;
17
+ dotSize?: number;
18
+ pulseScale?: number;
19
+ animationSpeed?: number;
20
+ labelStyle?: Phaser.Types.GameObjects.Text.TextStyle;
21
+ labels?: ActivityIndicatorLabels;
22
+ }
23
+ export interface ActivityIndicatorProps extends Omit<ViewProps, 'children'> {
24
+ /** Visual variant. */
25
+ variant?: ActivityIndicatorVariant;
26
+ /** Size preset. */
27
+ size?: ActivityIndicatorSize;
28
+ /** Foreground color of the spinner arc / dots / pulse. */
29
+ color?: number;
30
+ /** Track (background) color for the spinner ring. */
31
+ trackColor?: number;
32
+ /** Optional visible label below the indicator. */
33
+ label?: string;
34
+ /** Localized labels. */
35
+ labels?: ActivityIndicatorLabels;
36
+ /** Theme overrides. */
37
+ theme?: PartialTheme;
38
+ }
39
+ /**
40
+ * ActivityIndicator — indeterminate loading indicator.
41
+ */
42
+ export declare function ActivityIndicator(props: ActivityIndicatorProps): VNodeLike;
43
+ //# sourceMappingURL=ActivityIndicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActivityIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/custom/ActivityIndicator.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE/D,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;AACnE,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;AAEhE,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,OAAO,CAAC,EAAE,wBAAwB,CAAA;IAClC,IAAI,CAAC,EAAE,qBAAqB,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAA;IACpD,MAAM,CAAC,EAAE,uBAAuB,CAAA;CACjC;AAED,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACzE,sBAAsB;IACtB,OAAO,CAAC,EAAE,wBAAwB,CAAA;IAClC,mBAAmB;IACnB,IAAI,CAAC,EAAE,qBAAqB,CAAA;IAC5B,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,MAAM,CAAC,EAAE,uBAAuB,CAAA;IAChC,uBAAuB;IACvB,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB;AA2FD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,SAAS,CAuF1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Badge.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Badge.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { CornerRadiusInsets } from '../../../packages/ui/src/core-props';
2
+ import { PartialTheme, ViewTheme } from '../../theme-base';
3
+ import { ChildrenType } from '../../types';
4
+ import { VNodeLike } from '../../vdom';
5
+ export declare const BottomSheetDepth = 1100;
6
+ export interface BottomSheetLabels {
7
+ close?: string;
8
+ handle?: string;
9
+ }
10
+ /** Props passed to renderHandle function for custom handle rendering. */
11
+ export interface HandleRenderProps {
12
+ width: number;
13
+ height: number;
14
+ color: number;
15
+ cornerRadius: number;
16
+ }
17
+ export interface BottomSheetThemeSlot extends ViewTheme {
18
+ backdropAlpha?: number;
19
+ backdropColor?: number;
20
+ panelCornerRadius?: number | CornerRadiusInsets;
21
+ handleWidth?: number;
22
+ handleHeight?: number;
23
+ handleColor?: number;
24
+ handleCornerRadius?: number;
25
+ handleAreaHeight?: number;
26
+ handleAreaColor?: number;
27
+ dismissThreshold?: number;
28
+ labels?: BottomSheetLabels;
29
+ }
30
+ export interface BottomSheetProps {
31
+ /** Unique key for VDOM identification. */
32
+ key?: string | number | undefined;
33
+ /** Controlled open state. */
34
+ open?: boolean;
35
+ /** Initial open state for uncontrolled usage. */
36
+ defaultOpen?: boolean;
37
+ /** Called when open state changes. */
38
+ onOpenChange?: (open: boolean) => void;
39
+ /** Sheet content. */
40
+ children: ChildrenType;
41
+ /** Height as fraction of viewport (0–1). Default 0.5. */
42
+ height?: number;
43
+ /** Drag distance in pixels to trigger dismiss. Default is half the available drag distance. */
44
+ dismissThreshold?: number;
45
+ /** Show drag handle. Default true. */
46
+ showHandle?: boolean;
47
+ /** Portal depth. */
48
+ depth?: number;
49
+ /** Whether tapping the backdrop closes the sheet. Default false. */
50
+ closeOnBackdrop?: boolean;
51
+ /** Backdrop alpha when closeOnBackdrop is active. Default 0.5. */
52
+ backdropAlpha?: number;
53
+ /** Height of the drag-handle touch area in px. Also used as max-drag cap. Default 32. */
54
+ handleAreaHeight?: number;
55
+ /** Custom handle renderer. Receives themed dimensions. Falls back to default bar. */
56
+ renderHandle?: VNodeLike | ((props: HandleRenderProps) => VNodeLike);
57
+ /** Theme overrides. */
58
+ theme?: PartialTheme;
59
+ }
60
+ /**
61
+ * BottomSheet — slide-up panel with backdrop and drag-to-dismiss.
62
+ *
63
+ * Portal lifecycle: once opened, the Portal stays mounted to avoid
64
+ * duplicate backdrop issues from mount/unmount races in the VDOM.
65
+ * Visibility is controlled via conditional children, not by returning null.
66
+ */
67
+ export declare function BottomSheet(props: BottomSheetProps): VNodeLike;
68
+ /**
69
+ * Pre-built handle renderers for use with {@link BottomSheetProps.renderHandle}.
70
+ *
71
+ * @example
72
+ * ```tsx
73
+ * <BottomSheet renderHandle={BottomSheetHandle.Bar} />
74
+ * <BottomSheet renderHandle={BottomSheetHandle.Pill} />
75
+ * <BottomSheet renderHandle={(h) => <View width={h.width} height={h.height} backgroundColor={0xff0000} cornerRadius={4} />} />
76
+ * ```
77
+ */
78
+ export declare const BottomSheetHandle: {
79
+ /** Default bar — uses themed width, height, color, cornerRadius. */
80
+ Bar: (props: HandleRenderProps) => VNodeLike;
81
+ /** Pill variant — cornerRadius for a fully rounded look. */
82
+ Pill: (props: HandleRenderProps) => VNodeLike;
83
+ /** Gripper variant*/
84
+ Grip: (props: HandleRenderProps) => VNodeLike;
85
+ };
86
+ //# sourceMappingURL=BottomSheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../src/components/custom/BottomSheet.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;;GAEG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAKxE,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAK3C,eAAO,MAAM,gBAAgB,OAAO,CAAA;AAEpC,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAA;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,MAAM,CAAC,EAAE,iBAAiB,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACjC,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,sCAAsC;IACtC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,qBAAqB;IACrB,QAAQ,EAAE,YAAY,CAAA;IACtB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yFAAyF;IACzF,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,qFAAqF;IACrF,YAAY,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,iBAAiB,KAAK,SAAS,CAAC,CAAA;IACpE,uBAAuB;IACvB,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS,CAsK9D;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB;IAC5B,oEAAoE;iBACvD,iBAAiB,KAAG,SAAS;IAQ1C,4DAA4D;kBAC9C,iBAAiB,KAAG,SAAS;IAQ3C,qBAAqB;kBACP,iBAAiB,KAAG,SAAS;CAsB5C,CAAA"}
@@ -6,15 +6,32 @@ import { VNodeLike } from '../../vdom';
6
6
  /**
7
7
  * Button variant theme
8
8
  */
9
- export type ButtonVariantTheme = ViewTheme & EffectDefinition;
10
- export type ButtonVariant = 'primary' | 'secondary' | 'outline';
9
+ export type ButtonVariantTheme = ViewTheme & EffectDefinition & {
10
+ textStyle?: Phaser.Types.GameObjects.Text.TextStyle;
11
+ iconSize?: number;
12
+ disabledColor?: number;
13
+ disabledTextColor?: string;
14
+ disabledIconTint?: number;
15
+ disabledAlpha?: number;
16
+ };
17
+ export type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger';
11
18
  export type ButtonSize = 'small' | 'medium' | 'large';
19
+ export type ButtonTheme = ButtonVariantTheme & {
20
+ variant?: ButtonVariant;
21
+ size?: ButtonSize;
22
+ variants?: Partial<Record<ButtonVariant, ButtonVariantTheme>>;
23
+ sizes?: Partial<Record<ButtonSize, ButtonVariantTheme>>;
24
+ } & Partial<Record<ButtonVariant, ButtonVariantTheme>> & Partial<Record<ButtonSize, ButtonVariantTheme>>;
12
25
  /**
13
26
  * Props for Button component
14
27
  */
15
28
  export interface ButtonProps extends ViewProps, EffectDefinition {
16
29
  /** Button content - can be text, icons, or any JSX */
17
30
  children?: ChildrenType | undefined;
31
+ /** Convenience text label. Children take precedence when provided. */
32
+ label?: string | number | undefined;
33
+ /** Backward-compatible alias for label. */
34
+ text?: string | number | undefined;
18
35
  /** Click handler */
19
36
  onClick?: (() => void) | undefined;
20
37
  /** Disabled state */
@@ -23,6 +40,12 @@ export interface ButtonProps extends ViewProps, EffectDefinition {
23
40
  variant?: ButtonVariant | undefined;
24
41
  /** Size variant */
25
42
  size?: ButtonSize | undefined;
43
+ /** Text style for generated label/text content and nested Text defaults. */
44
+ textStyle?: Phaser.Types.GameObjects.Text.TextStyle | undefined;
45
+ /** Icon size for nested Icon defaults. */
46
+ iconSize?: number | undefined;
47
+ /** Alpha applied while disabled. */
48
+ disabledAlpha?: number | undefined;
26
49
  }
27
50
  /**
28
51
  * Generic Button component
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Button.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;;;GAGG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AACnC,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAA;AAGtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,gBAAgB,CAAA;AAC7D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAA;AAC/D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;AACrD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,gBAAgB;IAC9D,sDAAsD;IACtD,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;IACnC,oBAAoB;IACpB,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAClC,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,qBAAqB;IACrB,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAA;IACnC,mBAAmB;IACnB,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC9B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CA0FpD"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Button.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;;;GAGG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AACnC,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAA;AAGtB,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GACxC,gBAAgB,GAAG;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAA;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;AACpF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;AAErD,MAAM,MAAM,WAAW,GAAG,kBAAkB,GAAG;IAC7C,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,CAAA;IAC7D,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAA;CACxD,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,GACpD,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAA;AAEjD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,gBAAgB;IAC9D,sDAAsD;IACtD,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;IACnC,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACnC,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IAClC,oBAAoB;IACpB,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAClC,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,qBAAqB;IACrB,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAA;IACnC,mBAAmB;IACnB,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC7B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC/D,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACnC;AAkED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAkJpD"}
@@ -16,6 +16,8 @@ export interface CharTextInputProps extends Omit<ViewProps, 'children'> {
16
16
  multiline?: boolean;
17
17
  /** Text style for characters */
18
18
  textStyle?: Phaser.Types.GameObjects.Text.TextStyle;
19
+ /** Text style for placeholder characters */
20
+ placeholderStyle?: Phaser.Types.GameObjects.Text.TextStyle;
19
21
  /** Spacing between characters */
20
22
  charSpacing?: number;
21
23
  /** Line height multiplier for multi-line */
@@ -36,6 +38,14 @@ export interface CharTextInputProps extends Omit<ViewProps, 'children'> {
36
38
  selectionColor?: number;
37
39
  /** Selection background alpha */
38
40
  selectionAlpha?: number;
41
+ /** Border color while focused */
42
+ focusedBorderColor?: number;
43
+ /** Background color while disabled */
44
+ disabledBackgroundColor?: number;
45
+ /** Border color while disabled */
46
+ disabledBorderColor?: number;
47
+ /** Alpha applied while disabled */
48
+ disabledAlpha?: number;
39
49
  /** show html input area */
40
50
  debugHtmlInput?: boolean;
41
51
  /** Called when input value changes */
@@ -1 +1 @@
1
- {"version":3,"file":"CharTextInput.d.ts","sourceRoot":"","sources":["../../../src/components/custom/CharTextInput.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAGnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACrE,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,mCAAmC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAA;IAEnD,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;IAElC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAEpB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAEnB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAiZlE"}
1
+ {"version":3,"file":"CharTextInput.d.ts","sourceRoot":"","sources":["../../../src/components/custom/CharTextInput.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAInC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACrE,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,mCAAmC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAA;IAEnD,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAA;IAE1D,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;IAElC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,iCAAiC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B,sCAAsC;IACtC,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAEhC,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAEpB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAEnB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAsblE"}
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Checkbox.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,eAAe,CAAA;AACrD,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;AAE7D,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,aAAa,CAAA;IACtB,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACjC,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,gDAAgD;IAChD,cAAc,CAAC,EAAE,aAAa,CAAA;IAC9B,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,wCAAwC;IACxC,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,4CAA4C;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,4BAA4B,KAAK,YAAY,CAAA;IACvE,+BAA+B;IAC/B,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAA;CAC5C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,aAAa,CAK5F;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,aAAa,CAE9F;AAwCD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CA4ExD"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Checkbox.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,eAAe,CAAA;AACrD,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;AAE7D,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,aAAa,CAAA;IACtB,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IACjC,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,gDAAgD;IAChD,cAAc,CAAC,EAAE,aAAa,CAAA;IAC9B,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,wCAAwC;IACxC,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,4CAA4C;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,4BAA4B,KAAK,YAAY,CAAA;IACvE,+BAA+B;IAC/B,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAA;CAC5C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,aAAa,CAK5F;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,aAAa,CAE9F;AAwCD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CA6ExD"}
@@ -0,0 +1,72 @@
1
+ import { ViewProps } from '..';
2
+ import { PartialTheme } from '../../theme-base';
3
+ import { VNodeLike } from '../../vdom';
4
+ export type ColorPickerTone = 'vivid' | 'muted';
5
+ export interface ColorPickerState {
6
+ /** Hue in degrees, 0 to 360 */
7
+ hue: number;
8
+ /** Saturation percentage, 0 to 100 */
9
+ saturation: number;
10
+ /** Lightness percentage, 0 to 100 */
11
+ lightness: number;
12
+ /** Last selected tone preset */
13
+ tone: ColorPickerTone;
14
+ }
15
+ export interface ColorPickerLabels {
16
+ title?: string;
17
+ tone?: string;
18
+ vivid?: string;
19
+ muted?: string;
20
+ hue?: string;
21
+ saturation?: string;
22
+ lightness?: string;
23
+ close?: string;
24
+ formatHue?: (value: number) => string;
25
+ formatSaturation?: (value: number) => string;
26
+ formatLightness?: (value: number) => string;
27
+ formatRgb?: (rgb: {
28
+ r: number;
29
+ g: number;
30
+ b: number;
31
+ }) => string;
32
+ }
33
+ export interface ColorPickerProps extends Omit<ViewProps, 'children'> {
34
+ /** Current color as Phaser color number (controlled mode). */
35
+ value?: number;
36
+ /** Initial color as Phaser color number (uncontrolled mode). */
37
+ defaultValue?: number;
38
+ /** Callback fired when the selected color changes. */
39
+ onChange?: (color: number, state: ColorPickerState) => void;
40
+ /** Current tone preset (controlled mode). */
41
+ tone?: ColorPickerTone;
42
+ /** Initial tone preset. */
43
+ defaultTone?: ColorPickerTone;
44
+ /** Callback fired when the tone preset changes. */
45
+ onToneChange?: (tone: ColorPickerTone) => void;
46
+ /** Callback for the optional close button. */
47
+ onClose?: () => void;
48
+ /** Show close button. Defaults to true when onClose is provided. */
49
+ showCloseButton?: boolean;
50
+ /** Show vivid/muted tone controls. */
51
+ showTone?: boolean;
52
+ /** Show generated shade swatches. */
53
+ showSwatches?: boolean;
54
+ /** Show RGB text below the preview. */
55
+ showRgbLabel?: boolean;
56
+ /** Localized labels and value formatters. */
57
+ labels?: ColorPickerLabels;
58
+ /** Slider track length in pixels. */
59
+ trackLength?: number;
60
+ /** Preview swatch size in pixels. */
61
+ previewSize?: number;
62
+ /** Number of color steps used for gradient tracks. */
63
+ gradientSteps?: number;
64
+ /** Theme overrides. */
65
+ theme?: PartialTheme;
66
+ }
67
+ /**
68
+ * ColorPicker component
69
+ * Provides an HSL color picker using the existing Slider and RadioGroup controls.
70
+ */
71
+ export declare function ColorPicker(props: ColorPickerProps): VNodeLike;
72
+ //# sourceMappingURL=ColorPicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker.d.ts","sourceRoot":"","sources":["../../../src/components/custom/ColorPicker.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAInC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAI3C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,CAAA;AAE/C,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,sCAAsC;IACtC,UAAU,EAAE,MAAM,CAAA;IAClB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,gCAAgC;IAChC,IAAI,EAAE,eAAe,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACrC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;CACjE;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACnE,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC3D,6CAA6C;IAC7C,IAAI,CAAC,EAAE,eAAe,CAAA;IACtB,2BAA2B;IAC3B,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,mDAAmD;IACnD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;IAC9C,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uBAAuB;IACvB,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB;AAqCD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS,CAqV9D"}
@@ -24,7 +24,7 @@ export interface DropdownOption<T = string> {
24
24
  export interface DropdownProps<T = string> extends Omit<ViewProps, 'children'>, EffectDefinition {
25
25
  /** Available options */
26
26
  options: DropdownOption<T>[];
27
- /** optional use stack layout, then only the trigger is part of automatic layout, rest as overlay */
27
+ /** @deprecated Dropdown overlays are portal-based; this legacy prop is ignored. */
28
28
  stackLayout?: boolean;
29
29
  /** Selected value (controlled) */
30
30
  value?: T | T[];