@vpmedia/phaser 1.94.0 → 1.96.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 (205) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/package.json +11 -11
  3. package/src/phaser/core/animation.js +79 -56
  4. package/src/phaser/core/animation_manager.js +55 -55
  5. package/src/phaser/core/animation_parser.js +2 -2
  6. package/src/phaser/core/cache.js +154 -154
  7. package/src/phaser/core/device.js +2 -1
  8. package/src/phaser/core/device_util.js +27 -27
  9. package/src/phaser/core/dom.js +43 -43
  10. package/src/phaser/core/event_manager.js +63 -63
  11. package/src/phaser/core/factory.js +47 -47
  12. package/src/phaser/core/frame.js +30 -30
  13. package/src/phaser/core/frame_data.js +30 -28
  14. package/src/phaser/core/frame_util.js +8 -8
  15. package/src/phaser/core/game.js +35 -19
  16. package/src/phaser/core/input_pointer.js +18 -0
  17. package/src/phaser/core/loader.js +171 -171
  18. package/src/phaser/core/loader_parser.js +22 -22
  19. package/src/phaser/core/raf.js +1 -1
  20. package/src/phaser/core/scale_manager.js +3 -2
  21. package/src/phaser/core/scene.js +16 -10
  22. package/src/phaser/core/scene_manager.js +51 -43
  23. package/src/phaser/core/signal.js +56 -52
  24. package/src/phaser/core/sound.js +54 -54
  25. package/src/phaser/core/sound_manager.js +49 -49
  26. package/src/phaser/core/stage.js +16 -16
  27. package/src/phaser/core/time.js +54 -30
  28. package/src/phaser/core/timer.js +82 -64
  29. package/src/phaser/core/timer_event.js +9 -9
  30. package/src/phaser/core/tween.js +106 -90
  31. package/src/phaser/core/tween_data.js +30 -30
  32. package/src/phaser/core/tween_manager.js +32 -24
  33. package/src/phaser/core/world.js +4 -3
  34. package/src/phaser/display/bitmap_text.js +72 -54
  35. package/src/phaser/display/button.js +48 -47
  36. package/src/phaser/display/canvas/buffer.js +8 -8
  37. package/src/phaser/display/canvas/graphics.js +8 -8
  38. package/src/phaser/display/canvas/masker.js +5 -5
  39. package/src/phaser/display/canvas/pool.js +18 -18
  40. package/src/phaser/display/canvas/renderer.js +17 -16
  41. package/src/phaser/display/canvas/tinter.js +22 -22
  42. package/src/phaser/display/canvas/util.js +42 -42
  43. package/src/phaser/display/display_object.js +119 -108
  44. package/src/phaser/display/graphics.js +129 -112
  45. package/src/phaser/display/graphics_data.js +10 -10
  46. package/src/phaser/display/graphics_data_util.js +3 -3
  47. package/src/phaser/display/group.js +63 -50
  48. package/src/phaser/display/image.js +68 -50
  49. package/src/phaser/display/sprite_batch.js +2 -2
  50. package/src/phaser/display/sprite_util.js +19 -19
  51. package/src/phaser/display/text.js +217 -187
  52. package/src/phaser/display/webgl/abstract_filter.js +4 -4
  53. package/src/phaser/display/webgl/base_texture.js +9 -9
  54. package/src/phaser/display/webgl/blend_manager.js +7 -7
  55. package/src/phaser/display/webgl/earcut.js +95 -95
  56. package/src/phaser/display/webgl/earcut_node.js +4 -4
  57. package/src/phaser/display/webgl/fast_sprite_batch.js +15 -15
  58. package/src/phaser/display/webgl/filter_manager.js +9 -9
  59. package/src/phaser/display/webgl/filter_texture.js +10 -10
  60. package/src/phaser/display/webgl/graphics.js +37 -37
  61. package/src/phaser/display/webgl/graphics_data.js +4 -4
  62. package/src/phaser/display/webgl/mask_manager.js +6 -6
  63. package/src/phaser/display/webgl/render_texture.js +16 -16
  64. package/src/phaser/display/webgl/renderer.js +21 -20
  65. package/src/phaser/display/webgl/shader/complex.js +4 -4
  66. package/src/phaser/display/webgl/shader/fast.js +4 -4
  67. package/src/phaser/display/webgl/shader/normal.js +8 -8
  68. package/src/phaser/display/webgl/shader/primitive.js +4 -4
  69. package/src/phaser/display/webgl/shader/strip.js +4 -4
  70. package/src/phaser/display/webgl/shader_manager.js +9 -9
  71. package/src/phaser/display/webgl/sprite_batch.js +18 -18
  72. package/src/phaser/display/webgl/stencil_manager.js +16 -16
  73. package/src/phaser/display/webgl/texture.js +13 -13
  74. package/src/phaser/display/webgl/texture_util.js +8 -8
  75. package/src/phaser/display/webgl/util.js +25 -25
  76. package/src/phaser/geom/circle.js +74 -69
  77. package/src/phaser/geom/ellipse.js +33 -28
  78. package/src/phaser/geom/line.js +96 -93
  79. package/src/phaser/geom/matrix.js +61 -54
  80. package/src/phaser/geom/point.js +99 -96
  81. package/src/phaser/geom/polygon.js +27 -22
  82. package/src/phaser/geom/rectangle.js +137 -132
  83. package/src/phaser/geom/rounded_rectangle.js +12 -12
  84. package/src/phaser/geom/util/circle.js +33 -33
  85. package/src/phaser/geom/util/ellipse.js +5 -5
  86. package/src/phaser/geom/util/line.js +26 -26
  87. package/src/phaser/geom/util/matrix.js +8 -8
  88. package/src/phaser/geom/util/point.js +97 -97
  89. package/src/phaser/geom/util/polygon.js +4 -4
  90. package/src/phaser/geom/util/rectangle.js +74 -74
  91. package/src/phaser/geom/util/rounded_rectangle.js +4 -4
  92. package/src/phaser/util/math.js +81 -81
  93. package/types/phaser/core/animation.d.ts +79 -56
  94. package/types/phaser/core/animation.d.ts.map +1 -1
  95. package/types/phaser/core/animation_manager.d.ts +55 -55
  96. package/types/phaser/core/animation_parser.d.ts +3 -2
  97. package/types/phaser/core/animation_parser.d.ts.map +1 -1
  98. package/types/phaser/core/cache.d.ts +154 -154
  99. package/types/phaser/core/device.d.ts.map +1 -1
  100. package/types/phaser/core/dom.d.ts +51 -44
  101. package/types/phaser/core/dom.d.ts.map +1 -1
  102. package/types/phaser/core/event_manager.d.ts +63 -63
  103. package/types/phaser/core/factory.d.ts +47 -47
  104. package/types/phaser/core/frame.d.ts +30 -30
  105. package/types/phaser/core/frame_data.d.ts +28 -27
  106. package/types/phaser/core/frame_data.d.ts.map +1 -1
  107. package/types/phaser/core/game.d.ts +54 -21
  108. package/types/phaser/core/game.d.ts.map +1 -1
  109. package/types/phaser/core/input_pointer.d.ts +18 -0
  110. package/types/phaser/core/input_pointer.d.ts.map +1 -1
  111. package/types/phaser/core/loader.d.ts +175 -172
  112. package/types/phaser/core/loader.d.ts.map +1 -1
  113. package/types/phaser/core/loader_parser.d.ts.map +1 -1
  114. package/types/phaser/core/raf.d.ts +1 -1
  115. package/types/phaser/core/scale_manager.d.ts +6 -5
  116. package/types/phaser/core/scale_manager.d.ts.map +1 -1
  117. package/types/phaser/core/scene.d.ts +15 -9
  118. package/types/phaser/core/scene.d.ts.map +1 -1
  119. package/types/phaser/core/scene_manager.d.ts +51 -43
  120. package/types/phaser/core/scene_manager.d.ts.map +1 -1
  121. package/types/phaser/core/signal.d.ts +54 -51
  122. package/types/phaser/core/signal.d.ts.map +1 -1
  123. package/types/phaser/core/sound.d.ts +54 -54
  124. package/types/phaser/core/sound_manager.d.ts +49 -49
  125. package/types/phaser/core/stage.d.ts +10 -10
  126. package/types/phaser/core/time.d.ts +54 -30
  127. package/types/phaser/core/time.d.ts.map +1 -1
  128. package/types/phaser/core/timer.d.ts +82 -64
  129. package/types/phaser/core/timer.d.ts.map +1 -1
  130. package/types/phaser/core/timer_event.d.ts +9 -9
  131. package/types/phaser/core/tween.d.ts +106 -90
  132. package/types/phaser/core/tween.d.ts.map +1 -1
  133. package/types/phaser/core/tween_data.d.ts +30 -30
  134. package/types/phaser/core/tween_manager.d.ts +35 -67
  135. package/types/phaser/core/tween_manager.d.ts.map +1 -1
  136. package/types/phaser/core/world.d.ts +4 -3
  137. package/types/phaser/core/world.d.ts.map +1 -1
  138. package/types/phaser/display/bitmap_text.d.ts +76 -53
  139. package/types/phaser/display/bitmap_text.d.ts.map +1 -1
  140. package/types/phaser/display/button.d.ts +47 -46
  141. package/types/phaser/display/button.d.ts.map +1 -1
  142. package/types/phaser/display/canvas/buffer.d.ts +8 -8
  143. package/types/phaser/display/canvas/graphics.d.ts +3 -3
  144. package/types/phaser/display/canvas/graphics.d.ts.map +1 -1
  145. package/types/phaser/display/canvas/pool.d.ts +6 -3
  146. package/types/phaser/display/canvas/pool.d.ts.map +1 -1
  147. package/types/phaser/display/canvas/renderer.d.ts +18 -17
  148. package/types/phaser/display/canvas/renderer.d.ts.map +1 -1
  149. package/types/phaser/display/canvas/util.d.ts +6 -6
  150. package/types/phaser/display/canvas/util.d.ts.map +1 -1
  151. package/types/phaser/display/display_object.d.ts +119 -108
  152. package/types/phaser/display/display_object.d.ts.map +1 -1
  153. package/types/phaser/display/graphics.d.ts +118 -102
  154. package/types/phaser/display/graphics.d.ts.map +1 -1
  155. package/types/phaser/display/graphics_data.d.ts +10 -10
  156. package/types/phaser/display/group.d.ts +59 -47
  157. package/types/phaser/display/group.d.ts.map +1 -1
  158. package/types/phaser/display/image.d.ts +58 -45
  159. package/types/phaser/display/image.d.ts.map +1 -1
  160. package/types/phaser/display/text.d.ts +237 -188
  161. package/types/phaser/display/text.d.ts.map +1 -1
  162. package/types/phaser/display/webgl/abstract_filter.d.ts +4 -4
  163. package/types/phaser/display/webgl/base_texture.d.ts +10 -10
  164. package/types/phaser/display/webgl/base_texture.d.ts.map +1 -1
  165. package/types/phaser/display/webgl/blend_manager.d.ts +6 -6
  166. package/types/phaser/display/webgl/earcut.d.ts +95 -95
  167. package/types/phaser/display/webgl/earcut_node.d.ts +4 -4
  168. package/types/phaser/display/webgl/fast_sprite_batch.d.ts +15 -15
  169. package/types/phaser/display/webgl/filter_manager.d.ts +8 -8
  170. package/types/phaser/display/webgl/filter_texture.d.ts +10 -10
  171. package/types/phaser/display/webgl/graphics.d.ts +2 -2
  172. package/types/phaser/display/webgl/graphics.d.ts.map +1 -1
  173. package/types/phaser/display/webgl/graphics_data.d.ts +4 -4
  174. package/types/phaser/display/webgl/render_texture.d.ts +16 -16
  175. package/types/phaser/display/webgl/renderer.d.ts +21 -20
  176. package/types/phaser/display/webgl/renderer.d.ts.map +1 -1
  177. package/types/phaser/display/webgl/shader/complex.d.ts +4 -4
  178. package/types/phaser/display/webgl/shader/fast.d.ts +4 -4
  179. package/types/phaser/display/webgl/shader/normal.d.ts +8 -8
  180. package/types/phaser/display/webgl/shader/primitive.d.ts +4 -4
  181. package/types/phaser/display/webgl/shader/strip.d.ts +4 -4
  182. package/types/phaser/display/webgl/shader_manager.d.ts +8 -8
  183. package/types/phaser/display/webgl/sprite_batch.d.ts +17 -17
  184. package/types/phaser/display/webgl/stencil_manager.d.ts +15 -15
  185. package/types/phaser/display/webgl/texture.d.ts +12 -12
  186. package/types/phaser/display/webgl/texture_util.d.ts +4 -2
  187. package/types/phaser/display/webgl/texture_util.d.ts.map +1 -1
  188. package/types/phaser/geom/circle.d.ts +74 -69
  189. package/types/phaser/geom/circle.d.ts.map +1 -1
  190. package/types/phaser/geom/ellipse.d.ts +33 -28
  191. package/types/phaser/geom/ellipse.d.ts.map +1 -1
  192. package/types/phaser/geom/line.d.ts +96 -93
  193. package/types/phaser/geom/line.d.ts.map +1 -1
  194. package/types/phaser/geom/matrix.d.ts +61 -54
  195. package/types/phaser/geom/matrix.d.ts.map +1 -1
  196. package/types/phaser/geom/point.d.ts +99 -96
  197. package/types/phaser/geom/point.d.ts.map +1 -1
  198. package/types/phaser/geom/polygon.d.ts +29 -23
  199. package/types/phaser/geom/polygon.d.ts.map +1 -1
  200. package/types/phaser/geom/rectangle.d.ts +137 -132
  201. package/types/phaser/geom/rectangle.d.ts.map +1 -1
  202. package/types/phaser/geom/rounded_rectangle.d.ts +12 -12
  203. package/types/phaser/geom/util/point.d.ts +1 -1
  204. package/types/phaser/geom/util/point.d.ts.map +1 -1
  205. package/pnpm-workspace.yaml +0 -4
@@ -1,7 +1,7 @@
1
1
  export class SoundManager {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
3
+ * Creates a new SoundManager instance.
4
+ * @param {import('./game.js').Game} game - Reference to the Phaser Game instance.
5
5
  */
6
6
  constructor(game: import("./game.js").Game);
7
7
  game: import("./game.js").Game;
@@ -24,127 +24,127 @@ export class SoundManager {
24
24
  _watchCallback: Function;
25
25
  _watchContext: any;
26
26
  /**
27
- * TBD.
27
+ * Initializes the sound manager and sets up audio context.
28
28
  */
29
29
  boot(): void;
30
30
  masterGain: any;
31
31
  /**
32
- * TBD.
32
+ * Handles page lifecycle changes for audio management.
33
33
  */
34
34
  onPageLifecycleChange: () => void;
35
35
  /**
36
- * TBD.
36
+ * Handles audio context state changes.
37
37
  */
38
38
  onContextStateChange: () => void;
39
39
  /**
40
- * TBD.
40
+ * Checks if audio unlock handlers need to be added or removed.
41
41
  */
42
42
  checkUnlockHandlers: () => void;
43
43
  /**
44
- * TBD.
44
+ * Adds event listeners to unlock audio context.
45
45
  */
46
46
  addUnlockHandlers: () => void;
47
47
  /**
48
- * TBD.
48
+ * Removes event listeners that unlock audio context.
49
49
  */
50
50
  removeUnlockHandlers: () => void;
51
51
  /**
52
- * TBD.
53
- * @param {Event} event - TBD.
52
+ * Handles unlock events to resume audio context.
53
+ * @param {Event} event - The DOM event that triggered the unlock.
54
54
  */
55
55
  onUnlockEvent: (event: Event) => void;
56
56
  /**
57
- * TBD.
57
+ * Stops all sounds in the manager.
58
58
  */
59
59
  stopAll(): void;
60
60
  /**
61
- * TBD.
61
+ * Pauses all sounds in the manager.
62
62
  */
63
63
  pauseAll(): void;
64
64
  /**
65
- * TBD.
65
+ * Resumes all sounds in the manager.
66
66
  */
67
67
  resumeAll(): void;
68
68
  /**
69
- * TBD.
70
- * @param {string} key - TBD.
69
+ * Decodes an audio file for playback.
70
+ * @param {string} key - The key of the sound to decode.
71
71
  */
72
72
  decode(key: string): void;
73
73
  /**
74
- * TBD.
75
- * @param {Sound[]|string[]} files - TBD.
76
- * @param {Function} callback - TBD.
77
- * @param {object} callbackContext - TBD.
74
+ * Sets up a callback to be called when audio files are decoded.
75
+ * @param {Sound[]|string[]} files - The sound files or keys to wait for.
76
+ * @param {Function} callback - The callback function to call when all files are decoded.
77
+ * @param {object} callbackContext - The context in which to call the callback.
78
78
  */
79
79
  setDecodedCallback(files: Sound[] | string[], callback: Function, callbackContext: object): void;
80
80
  /**
81
- * TBD.
81
+ * Updates the sound manager state.
82
82
  */
83
83
  update(): void;
84
84
  /**
85
- * TBD.
86
- * @param {string} key - TBD.
87
- * @param {number} volume - TBD.
88
- * @param {boolean} loop - TBD.
89
- * @param {boolean} connect - TBD.
90
- * @returns {Sound} TBD.
85
+ * Adds a new sound to the manager.
86
+ * @param {string} key - The key of the sound to add.
87
+ * @param {number} volume - The initial volume level (0.0 to 1.0).
88
+ * @param {boolean} loop - Whether the sound should loop.
89
+ * @param {boolean} connect - Whether to connect to the master gain node.
90
+ * @returns {Sound} The created Sound object.
91
91
  */
92
92
  add(key: string, volume?: number, loop?: boolean, connect?: boolean): Sound;
93
93
  /**
94
- * TBD.
95
- * @param {string} key - TBD.
96
- * @returns {SoundSprite} TBD.
94
+ * Adds a new sound sprite to the manager.
95
+ * @param {string} key - The key of the sound sprite to add.
96
+ * @returns {SoundSprite} The created SoundSprite object.
97
97
  */
98
98
  addSprite(key: string): SoundSprite;
99
99
  /**
100
- * TBD.
101
- * @param {Sound | null | undefined} sound - TBD.
102
- * @returns {boolean} TBD.
100
+ * Removes a sound from the manager.
101
+ * @param {Sound | null | undefined} sound - The sound object to remove.
102
+ * @returns {boolean} True if the sound was removed, false otherwise.
103
103
  */
104
104
  remove(sound: Sound | null | undefined): boolean;
105
105
  /**
106
- * TBD.
107
- * @param {string} key - TBD.
108
- * @returns {number} TBD.
106
+ * Removes all sounds with a specific key from the manager.
107
+ * @param {string} key - The key of sounds to remove.
108
+ * @returns {number} The number of sounds removed.
109
109
  */
110
110
  removeByKey(key: string): number;
111
111
  /**
112
- * TBD.
113
- * @param {string} key - TBD.
114
- * @param {number} volume - TBD.
115
- * @param {boolean} loop - TBD.
116
- * @returns {Sound} TBD.
112
+ * Plays a sound by key.
113
+ * @param {string} key - The key of the sound to play.
114
+ * @param {number} volume - The volume level (0.0 to 1.0).
115
+ * @param {boolean} loop - Whether the sound should loop.
116
+ * @returns {Sound} The created Sound object, or null if audio is disabled.
117
117
  */
118
118
  play(key: string, volume?: number, loop?: boolean): Sound;
119
119
  /**
120
- * TBD.
120
+ * Mutes all sounds in the manager.
121
121
  */
122
122
  setMute(): void;
123
123
  _muteVolume: any;
124
124
  /**
125
- * TBD.
125
+ * Unmutes all sounds in the manager.
126
126
  */
127
127
  unsetMute(): void;
128
128
  /**
129
- * TBD.
129
+ * Destroys the sound manager and cleans up resources.
130
130
  */
131
131
  destroy(): void;
132
132
  /**
133
- * TBD.
133
+ * Sets the muted state of the sound manager.
134
134
  */
135
135
  set mute(value: boolean);
136
136
  /**
137
- * TBD.
138
- * @returns {boolean} TBD.
137
+ * Gets the muted state of the sound manager.
138
+ * @returns {boolean} True if the manager is muted, false otherwise.
139
139
  */
140
140
  get mute(): boolean;
141
141
  /**
142
- * TBD.
142
+ * Sets the volume level of the sound manager.
143
143
  */
144
144
  set volume(value: number);
145
145
  /**
146
- * TBD.
147
- * @returns {number} TBD.
146
+ * Gets the volume level of the sound manager.
147
+ * @returns {number} The volume level (0.0 to 1.0).
148
148
  */
149
149
  get volume(): number;
150
150
  }
@@ -9,34 +9,34 @@ export class Stage extends DisplayObject {
9
9
  rgba: string;
10
10
  };
11
11
  /**
12
- * TBD.
13
- * @param {number} color - TBD.
12
+ * Sets the background color of the stage.
13
+ * @param {number} color - The color to set as the background.
14
14
  */
15
15
  setBackgroundColor(color: number): void;
16
16
  /**
17
- * TBD.
17
+ * Initializes the stage after game creation.
18
18
  */
19
19
  boot(): void;
20
20
  /**
21
- * TBD.
21
+ * Updates the stage's transformation matrix.
22
22
  */
23
23
  updateTransform(): void;
24
24
  /**
25
- * TBD.
25
+ * Sets the background color of the stage.
26
26
  */
27
27
  set backgroundColor(value: number);
28
28
  /**
29
- * TBD.
30
- * @returns {number} TBD.
29
+ * Gets the background color of the stage.
30
+ * @returns {number} The background color.
31
31
  */
32
32
  get backgroundColor(): number;
33
33
  /**
34
- * TBD.
34
+ * Sets whether texture smoothing is enabled.
35
35
  */
36
36
  set smoothed(value: boolean);
37
37
  /**
38
- * TBD.
39
- * @returns {boolean} TBD.
38
+ * Gets whether texture smoothing is enabled.
39
+ * @returns {boolean} True if texture smoothing is enabled, false otherwise.
40
40
  */
41
41
  get smoothed(): boolean;
42
42
  }
@@ -1,114 +1,138 @@
1
1
  export class Time {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
3
+ * Creates a new Time instance.
4
+ * @param {import('./game.js').Game} game - Reference to the Phaser Game instance.
5
5
  */
6
6
  constructor(game: import("./game.js").Game);
7
7
  game: import("./game.js").Game;
8
+ /** @type {number} */
8
9
  time: number;
10
+ /** @type {number} */
9
11
  prevTime: number;
12
+ /** @type {number} */
10
13
  now: number;
14
+ /** @type {number} */
11
15
  elapsed: number;
16
+ /** @type {number} */
12
17
  elapsedMS: number;
18
+ /** @type {number} */
13
19
  desiredFpsMult: number;
20
+ /** @type {number} */
14
21
  _desiredFps: number;
22
+ /** @type {number} */
15
23
  suggestedFps: number;
24
+ /** @type {boolean} */
16
25
  advancedTiming: boolean;
26
+ /** @type {number} */
17
27
  frames: number;
28
+ /** @type {number} */
18
29
  fps: number;
30
+ /** @type {number} */
19
31
  fpsMin: number;
32
+ /** @type {number} */
20
33
  fpsMax: number;
34
+ /** @type {number} */
21
35
  msMin: number;
36
+ /** @type {number} */
22
37
  msMax: number;
38
+ /** @type {number} */
23
39
  pauseDuration: number;
40
+ /** @type {number} */
24
41
  timeToCall: number;
42
+ /** @type {number} */
25
43
  timeExpected: number;
44
+ /** @type {Timer} */
26
45
  events: Timer;
46
+ /** @type {number} */
27
47
  _frameCount: number;
48
+ /** @type {number} */
28
49
  _elapsedAccumulator: number;
29
50
  _started: number;
51
+ /** @type {number} */
30
52
  _timeLastSecond: number;
53
+ /** @type {number} */
31
54
  _pauseStarted: number;
55
+ /** @type {boolean} */
32
56
  _justResumed: boolean;
33
57
  /** @type {Timer[]} */
34
58
  _timers: Timer[];
35
59
  /**
36
- * TBD.
60
+ * Initializes the time manager and starts tracking time.
37
61
  */
38
62
  boot(): void;
39
63
  /**
40
- * TBD.
41
- * @param {Timer} timer - TBD.
42
- * @returns {Timer} TBD.
64
+ * Adds a Timer to the Time manager.
65
+ * @param {Timer} timer - The Timer to add.
66
+ * @returns {Timer} The added Timer object.
43
67
  */
44
68
  add(timer: Timer): Timer;
45
69
  /**
46
- * TBD.
47
- * @param {boolean} autoDestroy - TBD.
48
- * @returns {Timer} TBD.
70
+ * Creates a new Timer and adds it to the Time manager.
71
+ * @param {boolean} autoDestroy - Whether the timer should be automatically destroyed when it completes.
72
+ * @returns {Timer} The created Timer object.
49
73
  */
50
74
  create(autoDestroy?: boolean): Timer;
51
75
  /**
52
- * TBD.
76
+ * Removes all timers from the Time manager.
53
77
  */
54
78
  removeAll(): void;
55
79
  /**
56
- * TBD.
80
+ * Refreshes the time tracking values.
57
81
  */
58
82
  refresh(): void;
59
83
  /**
60
- * TBD.
61
- * @param {number} time - TBD.
84
+ * Updates the Time manager with a new timestamp.
85
+ * @param {number} time - The new timestamp to use for updating.
62
86
  */
63
87
  update(time: number): void;
64
88
  /**
65
- * TBD.
89
+ * Updates all timers managed by the Time manager.
66
90
  */
67
91
  updateTimers(): void;
68
92
  /**
69
- * TBD.
93
+ * Updates the advanced timing values.
70
94
  */
71
95
  updateAdvancedTiming(): void;
72
96
  /**
73
- * TBD.
97
+ * Handles game pause event.
74
98
  */
75
99
  gamePaused(): void;
76
100
  /**
77
- * TBD.
101
+ * Handles game resume event.
78
102
  */
79
103
  gameResumed(): void;
80
104
  /**
81
- * TBD.
82
- * @returns {number} TBD.
105
+ * Gets the total elapsed time in seconds since the game started.
106
+ * @returns {number} The total elapsed time in seconds.
83
107
  */
84
108
  totalElapsedSeconds(): number;
85
109
  /**
86
- * TBD.
87
- * @param {number} since - TBD.
88
- * @returns {number} TBD.
110
+ * Gets the elapsed time in milliseconds since a given timestamp.
111
+ * @param {number} since - The timestamp to calculate elapsed time from.
112
+ * @returns {number} The elapsed time in milliseconds.
89
113
  */
90
114
  elapsedSince(since: number): number;
91
115
  /**
92
- * TBD.
93
- * @param {number} since - TBD.
94
- * @returns {number} TBD.
116
+ * Gets the elapsed time in seconds since a given timestamp.
117
+ * @param {number} since - The timestamp to calculate elapsed time from.
118
+ * @returns {number} The elapsed time in seconds.
95
119
  */
96
120
  elapsedSecondsSince(since: number): number;
97
121
  /**
98
- * TBD.
122
+ * Resets the time tracking values.
99
123
  */
100
124
  reset(): void;
101
125
  /**
102
- * TBD.
126
+ * Destroys the Time manager and cleans up resources.
103
127
  */
104
128
  destroy(): void;
105
129
  /**
106
- * TBD.
130
+ * Sets the desired frames per second.
107
131
  */
108
132
  set desiredFps(value: number);
109
133
  /**
110
- * TBD.
111
- * @returns {number} TBD.
134
+ * Gets the desired frames per second.
135
+ * @returns {number} The desired frames per second.
112
136
  */
113
137
  get desiredFps(): number;
114
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/time.js"],"names":[],"mappings":"AAEA;IACE;;;OAGG;IACH,kBAFW,OAAO,WAAW,EAAE,IAAI,EA+BlC;IA5BC,+BAAgB;IAChB,aAAa;IACb,iBAAiB;IACjB,YAAY;IACZ,gBAAgB;IAChB,kBAAkB;IAClB,uBAA4B;IAC5B,oBAAqB;IACrB,qBAAmC;IACnC,wBAA2B;IAC3B,eAAe;IACf,YAAY;IACZ,eAAkB;IAClB,eAAe;IACf,cAAiB;IACjB,cAAc;IACd,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,cAAyC;IACzC,oBAAoB;IACpB,4BAA4B;IAC5B,iBAAiB;IACjB,wBAAwB;IACxB,sBAAsB;IACtB,sBAAyB;IACzB,sBAAsB;IACtB,SADW,KAAK,EAAE,CACD;IAGnB;;OAEG;IACH,aAKC;IAED;;;;OAIG;IACH,WAHW,KAAK,GACH,KAAK,CAKjB;IAED;;;;OAIG;IACH,qBAHW,OAAO,GACL,KAAK,CAMjB;IAED;;OAEG;IACH,kBAMC;IAED;;OAEG;IACH,gBAMC;IAED;;;OAGG;IACH,aAFW,MAAM,QA0BhB;IAED;;OAEG;IACH,qBAYC;IAED;;OAEG;IACH,6BAqBC;IAED;;OAEG;IACH,mBAQC;IAED;;OAEG;IACH,oBASC;IAED;;;OAGG;IACH,uBAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;;;OAIG;IACH,2BAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;OAEG;IACH,cAGC;IAED;;OAEG;IACH,gBAEC;IAUD;;OAEG;IACH,sBATa,MAAM,EAYlB;IAdD;;;OAGG;IACH,kBAFa,MAAM,CAIlB;CASF;sBAvPqB,YAAY"}
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/time.js"],"names":[],"mappings":"AAEA;IACE;;;OAGG;IACH,kBAFW,OAAO,WAAW,EAAE,IAAI,EAuDlC;IApDC,+BAAgB;IAChB,qBAAqB;IACrB,MADW,MAAM,CACJ;IACb,qBAAqB;IACrB,UADW,MAAM,CACA;IACjB,qBAAqB;IACrB,KADW,MAAM,CACL;IACZ,qBAAqB;IACrB,SADW,MAAM,CACD;IAChB,qBAAqB;IACrB,WADW,MAAM,CACC;IAClB,qBAAqB;IACrB,gBADW,MAAM,CACW;IAC5B,qBAAqB;IACrB,aADW,MAAM,CACI;IACrB,qBAAqB;IACrB,cADW,MAAM,CACkB;IACnC,sBAAsB;IACtB,gBADW,OAAO,CACS;IAC3B,qBAAqB;IACrB,QADW,MAAM,CACF;IACf,qBAAqB;IACrB,KADW,MAAM,CACL;IACZ,qBAAqB;IACrB,QADW,MAAM,CACC;IAClB,qBAAqB;IACrB,QADW,MAAM,CACF;IACf,qBAAqB;IACrB,OADW,MAAM,CACA;IACjB,qBAAqB;IACrB,OADW,MAAM,CACH;IACd,qBAAqB;IACrB,eADW,MAAM,CACK;IACtB,qBAAqB;IACrB,YADW,MAAM,CACE;IACnB,qBAAqB;IACrB,cADW,MAAM,CACI;IACrB,oBAAoB;IACpB,QADW,KAAK,CACyB;IACzC,qBAAqB;IACrB,aADW,MAAM,CACG;IACpB,qBAAqB;IACrB,qBADW,MAAM,CACW;IAC5B,iBAAiB;IACjB,qBAAqB;IACrB,iBADW,MAAM,CACO;IACxB,qBAAqB;IACrB,eADW,MAAM,CACK;IACtB,sBAAsB;IACtB,cADW,OAAO,CACO;IACzB,sBAAsB;IACtB,SADW,KAAK,EAAE,CACD;IAGnB;;OAEG;IACH,aAKC;IAED;;;;OAIG;IACH,WAHW,KAAK,GACH,KAAK,CAKjB;IAED;;;;OAIG;IACH,qBAHW,OAAO,GACL,KAAK,CAMjB;IAED;;OAEG;IACH,kBAMC;IAED;;OAEG;IACH,gBAMC;IAED;;;OAGG;IACH,aAFW,MAAM,QA0BhB;IAED;;OAEG;IACH,qBAYC;IAED;;OAEG;IACH,6BAqBC;IAED;;OAEG;IACH,mBAQC;IAED;;OAEG;IACH,oBASC;IAED;;;OAGG;IACH,uBAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;;;OAIG;IACH,2BAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;OAEG;IACH,cAGC;IAED;;OAEG;IACH,gBAEC;IAUD;;OAEG;IACH,sBATa,MAAM,EAYlB;IAdD;;;OAGG;IACH,kBAFa,MAAM,CAIlB;CASF;sBA/QqB,YAAY"}
@@ -1,159 +1,177 @@
1
1
  export class Timer {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
5
- * @param {boolean} autoDestroy - TBD.
3
+ * Creates a new Timer instance.
4
+ * @param {import('./game.js').Game} game - The game instance.
5
+ * @param {boolean} autoDestroy - Whether to automatically destroy the timer when it completes.
6
6
  */
7
7
  constructor(game: import("./game.js").Game, autoDestroy?: boolean);
8
8
  game: import("./game.js").Game;
9
+ /** @type {boolean} */
9
10
  running: boolean;
11
+ /** @type {boolean} */
10
12
  autoDestroy: boolean;
13
+ /** @type {boolean} */
11
14
  expired: boolean;
15
+ /** @type {number} */
12
16
  elapsed: number;
13
17
  /** @type {TimerEvent[]} */
14
18
  events: TimerEvent[];
19
+ /** @type {Signal} */
15
20
  onComplete: Signal;
21
+ /** @type {number} */
16
22
  nextTick: number;
23
+ /** @type {number} */
17
24
  timeCap: number;
25
+ /** @type {boolean} */
18
26
  paused: boolean;
27
+ /** @type {boolean} */
19
28
  _codePaused: boolean;
29
+ /** @type {number} */
20
30
  _started: number;
31
+ /** @type {number} */
21
32
  _pauseStarted: number;
33
+ /** @type {number} */
22
34
  _pauseTotal: number;
35
+ /** @type {number} */
23
36
  _now: number;
37
+ /** @type {number} */
24
38
  _len: number;
39
+ /** @type {number} */
25
40
  _marked: number;
41
+ /** @type {number} */
26
42
  _i: number;
43
+ /** @type {number} */
27
44
  _diff: number;
45
+ /** @type {number} */
28
46
  _newTick: number;
29
47
  /**
30
- * TBD.
31
- * @param {number} delay - TBD.
32
- * @param {boolean} loop - TBD.
33
- * @param {number} repeatCount - TBD.
34
- * @param {Function} callback - TBD.
35
- * @param {object} callbackContext - TBD.
36
- * @param {...any} args - TBD.
37
- * @returns {TimerEvent} TBD.
48
+ * Creates a new TimerEvent.
49
+ * @param {number} delay - The delay in milliseconds before the event fires.
50
+ * @param {boolean} loop - Whether the event should loop indefinitely.
51
+ * @param {number} repeatCount - The number of times to repeat the event (0 = infinite).
52
+ * @param {Function} callback - The function to call when the event fires.
53
+ * @param {object} callbackContext - The context in which to call the callback.
54
+ * @param {...any} args - Arguments to pass to the callback function.
55
+ * @returns {TimerEvent} The created TimerEvent.
38
56
  */
39
57
  create(delay: number, loop: boolean, repeatCount: number, callback: Function, callbackContext: object, args: any[]): TimerEvent;
40
58
  /**
41
- * TBD.
42
- * @param {number} delay - TBD.
43
- * @param {Function} callback - TBD.
44
- * @param {object} callbackContext - TBD.
45
- * @param {...any} args - TBD.
46
- * @returns {TimerEvent} TBD.
59
+ * Creates a new TimerEvent that runs once.
60
+ * @param {number} delay - The delay in milliseconds before the event fires.
61
+ * @param {Function} callback - The function to call when the event fires.
62
+ * @param {object} callbackContext - The context in which to call the callback.
63
+ * @param {...any} args - Arguments to pass to the callback function.
64
+ * @returns {TimerEvent} The created TimerEvent.
47
65
  */
48
66
  add(delay: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
49
67
  /**
50
- * TBD.
51
- * @param {number} delay - TBD.
52
- * @param {number} repeatCount - TBD.
53
- * @param {Function} callback - TBD.
54
- * @param {object} callbackContext - TBD.
55
- * @param {...any} args - TBD.
56
- * @returns {TimerEvent} TBD.
68
+ * Creates a new TimerEvent that repeats a specified number of times.
69
+ * @param {number} delay - The delay in milliseconds before the event fires.
70
+ * @param {number} repeatCount - The number of times to repeat the event (0 = infinite).
71
+ * @param {Function} callback - The function to call when the event fires.
72
+ * @param {object} callbackContext - The context in which to call the callback.
73
+ * @param {...any} args - Arguments to pass to the callback function.
74
+ * @returns {TimerEvent} The created TimerEvent.
57
75
  */
58
76
  repeat(delay: number, repeatCount: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
59
77
  /**
60
- * TBD.
61
- * @param {number} delay - TBD.
62
- * @param {Function} callback - TBD.
63
- * @param {object} callbackContext - TBD.
64
- * @param {...any} args - TBD.
65
- * @returns {TimerEvent} TBD.
78
+ * Creates a new TimerEvent that loops indefinitely.
79
+ * @param {number} delay - The delay in milliseconds before the event fires.
80
+ * @param {Function} callback - The function to call when the event fires.
81
+ * @param {object} callbackContext - The context in which to call the callback.
82
+ * @param {...any} args - Arguments to pass to the callback function.
83
+ * @returns {TimerEvent} The created TimerEvent.
66
84
  */
67
85
  loop(delay: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
68
86
  /**
69
- * TBD.
70
- * @param {number} delay - TBD.
87
+ * Starts the timer.
88
+ * @param {number} delay - The delay in milliseconds before starting (optional).
71
89
  */
72
90
  start(delay?: number): void;
73
91
  /**
74
- * TBD.
75
- * @param {boolean} clearEvents - TBD.
92
+ * Stops the timer.
93
+ * @param {boolean} clearEvents - Whether to clear all events (default: true).
76
94
  */
77
95
  stop(clearEvents?: boolean): void;
78
96
  /**
79
- * TBD.
80
- * @param {TimerEvent | null | undefined} event - TBD.
81
- * @returns {boolean} TBD.
97
+ * Removes a TimerEvent from the timer.
98
+ * @param {TimerEvent | null | undefined} event - The TimerEvent to remove.
99
+ * @returns {boolean} True if the event was removed, false otherwise.
82
100
  */
83
101
  remove(event: TimerEvent | null | undefined): boolean;
84
102
  /**
85
- * TBD.
103
+ * Orders the timer events by their next tick time.
86
104
  */
87
105
  order(): void;
88
106
  /**
89
- * TBD.
90
- * @param {TimerEvent} a - TBD.
91
- * @param {TimerEvent} b - TBD.
92
- * @returns {number} TBD.
107
+ * Sorts TimerEvents by their tick time.
108
+ * @param {TimerEvent} a - First TimerEvent to compare.
109
+ * @param {TimerEvent} b - Second TimerEvent to compare.
110
+ * @returns {number} Comparison result (-1, 0, or 1).
93
111
  */
94
112
  sortHandler(a: TimerEvent, b: TimerEvent): number;
95
113
  /**
96
- * TBD.
114
+ * Clears pending events from the timer.
97
115
  */
98
116
  clearPendingEvents(): void;
99
117
  /**
100
- * TBD.
101
- * @param {number} time - TBD.
102
- * @returns {boolean} TBD.
118
+ * Updates the timer state at a given time.
119
+ * @param {number} time - The current time in milliseconds.
120
+ * @returns {boolean} True if the timer should continue running, false if it should be destroyed.
103
121
  */
104
122
  update(time: number): boolean;
105
123
  /**
106
- * TBD.
124
+ * Pauses the timer.
107
125
  */
108
126
  pause(): void;
109
127
  /**
110
- * TBD.
128
+ * Internal pause method for the timer.
111
129
  */
112
130
  _pause(): void;
113
131
  /**
114
- * TBD.
115
- * @param {number} baseTime - TBD.
132
+ * Adjusts timer events when time has jumped (e.g., when tab is switched).
133
+ * @param {number} baseTime - The time to adjust from.
116
134
  */
117
135
  adjustEvents(baseTime: number): void;
118
136
  /**
119
- * TBD.
137
+ * Resumes the timer.
120
138
  */
121
139
  resume(): void;
122
140
  /**
123
- * TBD.
141
+ * Internal resume method for the timer.
124
142
  */
125
143
  _resume(): void;
126
144
  /**
127
- * TBD.
145
+ * Removes all events from the timer.
128
146
  */
129
147
  removeAll(): void;
130
148
  /**
131
- * TBD.
149
+ * Destroys the timer and cleans up resources.
132
150
  */
133
151
  destroy(): void;
134
152
  /**
135
- * TBD.
136
- * @returns {number} TBD.
153
+ * Gets the next tick time for the timer.
154
+ * @returns {number} The next tick time in milliseconds.
137
155
  */
138
156
  get next(): number;
139
157
  /**
140
- * TBD.
141
- * @returns {number} TBD.
158
+ * Gets the duration until the next event.
159
+ * @returns {number} The duration in milliseconds.
142
160
  */
143
161
  get duration(): number;
144
162
  /**
145
- * TBD.
146
- * @returns {number} TBD.
163
+ * Gets the number of active events in the timer.
164
+ * @returns {number} The number of events.
147
165
  */
148
166
  get length(): number;
149
167
  /**
150
- * TBD.
151
- * @returns {number} TBD.
168
+ * Gets the elapsed time since the timer started.
169
+ * @returns {number} The elapsed time in milliseconds.
152
170
  */
153
171
  get ms(): number;
154
172
  /**
155
- * TBD.
156
- * @returns {number} TBD.
173
+ * Gets the elapsed time in seconds since the timer started.
174
+ * @returns {number} The elapsed time in seconds.
157
175
  */
158
176
  get seconds(): number;
159
177
  }
@@ -1 +1 @@
1
- {"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/timer.js"],"names":[],"mappings":"AAGA;IACE;;;;OAIG;IACH,kBAHW,OAAO,WAAW,EAAE,IAAI,gBACxB,OAAO,EAwBjB;IArBC,+BAAgB;IAChB,iBAAoB;IACpB,qBAA8B;IAC9B,iBAAoB;IACpB,gBAAgB;IAChB,2BAA2B;IAC3B,QADW,UAAU,EAAE,CACP;IAChB,mBAA8B;IAC9B,iBAAiB;IACjB,gBAAmB;IACnB,gBAAmB;IACnB,qBAAwB;IACxB,iBAAiB;IACjB,sBAAsB;IACtB,oBAAoB;IACpB,aAAsB;IACtB,aAAa;IACb,gBAAgB;IAChB,WAAW;IACX,cAAc;IACd,iBAAiB;IAGnB;;;;;;;;;OASG;IACH,cARW,MAAM,QACN,OAAO,eACP,MAAM,uCAEN,MAAM,QACH,GAAG,EAAA,GACJ,UAAU,CAetB;IAED;;;;;;;OAOG;IACH,WANW,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;;;;;;OAQG;IACH,cAPW,MAAM,eACN,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;;;;;OAOG;IACH,YANW,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;OAGG;IACH,cAFW,MAAM,QAWhB;IAED;;;OAGG;IACH,mBAFW,OAAO,QAOjB;IAED;;;;OAIG;IACH,cAHW,UAAU,GAAG,IAAI,GAAG,SAAS,GAC3B,OAAO,CAUnB;IAED;;OAEG;IACH,cAMC;IAED;;;;;OAKG;IACH,eAJW,UAAU,KACV,UAAU,GACR,MAAM,CASlB;IAED;;OAEG;IACH,2BAUC;IAED;;;;OAIG;IACH,aAHW,MAAM,GACJ,OAAO,CAuDnB;IAED;;OAEG;IACH,cAUC;IAED;;OAEG;IACH,eAMC;IAED;;;OAGG;IACH,uBAFW,MAAM,QAoBhB;IAED;;OAEG;IACH,eAUC;IAED;;OAEG;IACH,gBAKC;IAED;;OAEG;IACH,kBAKC;IAED;;OAEG;IACH,gBAMC;IAED;;;OAGG;IACH,YAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,gBAFa,MAAM,CAOlB;IAED;;;OAGG;IACH,cAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,UAFa,MAAM,CAOlB;IAED;;;OAGG;IACH,eAFa,MAAM,CAOlB;CACF;2BA5X0B,kBAAkB;uBADtB,aAAa"}
1
+ {"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../../src/phaser/core/timer.js"],"names":[],"mappings":"AAGA;IACE;;;;OAIG;IACH,kBAHW,OAAO,WAAW,EAAE,IAAI,gBACxB,OAAO,EA0CjB;IAvCC,+BAAgB;IAChB,sBAAsB;IACtB,SADW,OAAO,CACE;IACpB,sBAAsB;IACtB,aADW,OAAO,CACY;IAC9B,sBAAsB;IACtB,SADW,OAAO,CACE;IACpB,qBAAqB;IACrB,SADW,MAAM,CACD;IAChB,2BAA2B;IAC3B,QADW,UAAU,EAAE,CACP;IAChB,qBAAqB;IACrB,YADW,MAAM,CACa;IAC9B,qBAAqB;IACrB,UADW,MAAM,CACA;IACjB,qBAAqB;IACrB,SADW,MAAM,CACE;IACnB,sBAAsB;IACtB,QADW,OAAO,CACC;IACnB,sBAAsB;IACtB,aADW,OAAO,CACM;IACxB,qBAAqB;IACrB,UADW,MAAM,CACA;IACjB,qBAAqB;IACrB,eADW,MAAM,CACK;IACtB,qBAAqB;IACrB,aADW,MAAM,CACG;IACpB,qBAAqB;IACrB,MADW,MAAM,CACK;IACtB,qBAAqB;IACrB,MADW,MAAM,CACJ;IACb,qBAAqB;IACrB,SADW,MAAM,CACD;IAChB,qBAAqB;IACrB,IADW,MAAM,CACN;IACX,qBAAqB;IACrB,OADW,MAAM,CACH;IACd,qBAAqB;IACrB,UADW,MAAM,CACA;IAGnB;;;;;;;;;OASG;IACH,cARW,MAAM,QACN,OAAO,eACP,MAAM,uCAEN,MAAM,QACH,GAAG,EAAA,GACJ,UAAU,CAetB;IAED;;;;;;;OAOG;IACH,WANW,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;;;;;;OAQG;IACH,cAPW,MAAM,eACN,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;;;;;OAOG;IACH,YANW,MAAM,wCAEN,MAAM,WACH,GAAG,EAAA,GACJ,UAAU,CAItB;IAED;;;OAGG;IACH,cAFW,MAAM,QAWhB;IAED;;;OAGG;IACH,mBAFW,OAAO,QAOjB;IAED;;;;OAIG;IACH,cAHW,UAAU,GAAG,IAAI,GAAG,SAAS,GAC3B,OAAO,CAUnB;IAED;;OAEG;IACH,cAMC;IAED;;;;;OAKG;IACH,eAJW,UAAU,KACV,UAAU,GACR,MAAM,CASlB;IAED;;OAEG;IACH,2BAUC;IAED;;;;OAIG;IACH,aAHW,MAAM,GACJ,OAAO,CAuDnB;IAED;;OAEG;IACH,cAUC;IAED;;OAEG;IACH,eAMC;IAED;;;OAGG;IACH,uBAFW,MAAM,QAoBhB;IAED;;OAEG;IACH,eAUC;IAED;;OAEG;IACH,gBAKC;IAED;;OAEG;IACH,kBAKC;IAED;;OAEG;IACH,gBAMC;IAED;;;OAGG;IACH,YAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,gBAFa,MAAM,CAOlB;IAED;;;OAGG;IACH,cAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,UAFa,MAAM,CAOlB;IAED;;;OAGG;IACH,eAFa,MAAM,CAOlB;CACF;2BA9Y0B,kBAAkB;uBADtB,aAAa"}