canvasengine 2.0.0-beta.5 → 2.0.0-beta.50

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 (172) hide show
  1. package/dist/components/Button.d.ts +185 -0
  2. package/dist/components/Button.d.ts.map +1 -0
  3. package/dist/components/Canvas.d.ts +17 -0
  4. package/dist/components/Canvas.d.ts.map +1 -0
  5. package/dist/components/Container.d.ts +86 -0
  6. package/dist/components/Container.d.ts.map +1 -0
  7. package/dist/components/DOMContainer.d.ts +98 -0
  8. package/dist/components/DOMContainer.d.ts.map +1 -0
  9. package/dist/components/DOMElement.d.ts +54 -0
  10. package/dist/components/DOMElement.d.ts.map +1 -0
  11. package/dist/components/DOMSprite.d.ts +127 -0
  12. package/dist/components/DOMSprite.d.ts.map +1 -0
  13. package/dist/components/DisplayObject.d.ts +94 -0
  14. package/dist/components/DisplayObject.d.ts.map +1 -0
  15. package/dist/components/FocusContainer.d.ts +129 -0
  16. package/dist/components/FocusContainer.d.ts.map +1 -0
  17. package/dist/components/Graphic.d.ts +64 -0
  18. package/dist/components/Graphic.d.ts.map +1 -0
  19. package/dist/components/Joystick.d.ts +36 -0
  20. package/dist/components/Joystick.d.ts.map +1 -0
  21. package/dist/components/Mesh.d.ts +208 -0
  22. package/dist/components/Mesh.d.ts.map +1 -0
  23. package/dist/components/NineSliceSprite.d.ts +16 -0
  24. package/dist/components/NineSliceSprite.d.ts.map +1 -0
  25. package/dist/components/ParticleEmitter.d.ts +4 -0
  26. package/dist/components/ParticleEmitter.d.ts.map +1 -0
  27. package/dist/components/Scene.d.ts +2 -0
  28. package/dist/components/Scene.d.ts.map +1 -0
  29. package/dist/components/Sprite.d.ts +242 -0
  30. package/dist/components/Sprite.d.ts.map +1 -0
  31. package/dist/components/Text.d.ts +25 -0
  32. package/dist/components/Text.d.ts.map +1 -0
  33. package/dist/components/TilingSprite.d.ts +17 -0
  34. package/dist/components/TilingSprite.d.ts.map +1 -0
  35. package/dist/components/Video.d.ts +14 -0
  36. package/dist/components/Video.d.ts.map +1 -0
  37. package/dist/components/Viewport.d.ts +121 -0
  38. package/dist/components/Viewport.d.ts.map +1 -0
  39. package/dist/components/index.d.ts +20 -0
  40. package/dist/components/index.d.ts.map +1 -0
  41. package/dist/components/types/DisplayObject.d.ts +106 -0
  42. package/dist/components/types/DisplayObject.d.ts.map +1 -0
  43. package/dist/components/types/MouseEvent.d.ts +4 -0
  44. package/dist/components/types/MouseEvent.d.ts.map +1 -0
  45. package/dist/components/types/Spritesheet.d.ts +248 -0
  46. package/dist/components/types/Spritesheet.d.ts.map +1 -0
  47. package/dist/components/types/index.d.ts +4 -0
  48. package/dist/components/types/index.d.ts.map +1 -0
  49. package/dist/directives/Controls.d.ts +112 -0
  50. package/dist/directives/Controls.d.ts.map +1 -0
  51. package/dist/directives/ControlsBase.d.ts +199 -0
  52. package/dist/directives/ControlsBase.d.ts.map +1 -0
  53. package/dist/directives/Drag.d.ts +69 -0
  54. package/dist/directives/Drag.d.ts.map +1 -0
  55. package/dist/directives/Flash.d.ts +116 -0
  56. package/dist/directives/Flash.d.ts.map +1 -0
  57. package/dist/directives/FocusNavigation.d.ts +52 -0
  58. package/dist/directives/FocusNavigation.d.ts.map +1 -0
  59. package/dist/directives/GamepadControls.d.ts +224 -0
  60. package/dist/directives/GamepadControls.d.ts.map +1 -0
  61. package/dist/directives/JoystickControls.d.ts +171 -0
  62. package/dist/directives/JoystickControls.d.ts.map +1 -0
  63. package/dist/directives/KeyboardControls.d.ts +219 -0
  64. package/dist/directives/KeyboardControls.d.ts.map +1 -0
  65. package/dist/directives/Scheduler.d.ts +35 -0
  66. package/dist/directives/Scheduler.d.ts.map +1 -0
  67. package/dist/directives/Shake.d.ts +98 -0
  68. package/dist/directives/Shake.d.ts.map +1 -0
  69. package/dist/directives/Sound.d.ts +25 -0
  70. package/dist/directives/Sound.d.ts.map +1 -0
  71. package/dist/directives/Transition.d.ts +10 -0
  72. package/dist/directives/Transition.d.ts.map +1 -0
  73. package/dist/directives/ViewportCull.d.ts +11 -0
  74. package/dist/directives/ViewportCull.d.ts.map +1 -0
  75. package/dist/directives/ViewportFollow.d.ts +18 -0
  76. package/dist/directives/ViewportFollow.d.ts.map +1 -0
  77. package/dist/directives/index.d.ts +13 -0
  78. package/dist/directives/index.d.ts.map +1 -0
  79. package/dist/engine/FocusManager.d.ts +174 -0
  80. package/dist/engine/FocusManager.d.ts.map +1 -0
  81. package/dist/engine/animation.d.ts +72 -0
  82. package/dist/engine/animation.d.ts.map +1 -0
  83. package/dist/engine/bootstrap.d.ts +48 -0
  84. package/dist/engine/bootstrap.d.ts.map +1 -0
  85. package/dist/engine/directive.d.ts +13 -0
  86. package/dist/engine/directive.d.ts.map +1 -0
  87. package/dist/engine/reactive.d.ts +134 -0
  88. package/dist/engine/reactive.d.ts.map +1 -0
  89. package/dist/engine/signal.d.ts +71 -0
  90. package/dist/engine/signal.d.ts.map +1 -0
  91. package/dist/engine/trigger.d.ts +54 -0
  92. package/dist/engine/trigger.d.ts.map +1 -0
  93. package/dist/engine/utils.d.ts +89 -0
  94. package/dist/engine/utils.d.ts.map +1 -0
  95. package/dist/hooks/addContext.d.ts +2 -0
  96. package/dist/hooks/addContext.d.ts.map +1 -0
  97. package/dist/hooks/useFocus.d.ts +60 -0
  98. package/dist/hooks/useFocus.d.ts.map +1 -0
  99. package/dist/hooks/useProps.d.ts +42 -0
  100. package/dist/hooks/useProps.d.ts.map +1 -0
  101. package/dist/hooks/useRef.d.ts +4 -0
  102. package/dist/hooks/useRef.d.ts.map +1 -0
  103. package/dist/index-DaGekQUW.js +2218 -0
  104. package/dist/index-DaGekQUW.js.map +1 -0
  105. package/dist/index.d.ts +19 -1099
  106. package/dist/index.d.ts.map +1 -0
  107. package/dist/index.global.js +5 -0
  108. package/dist/index.global.js.map +1 -0
  109. package/dist/index.js +11749 -2901
  110. package/dist/index.js.map +1 -1
  111. package/dist/utils/Ease.d.ts +17 -0
  112. package/dist/utils/Ease.d.ts.map +1 -0
  113. package/dist/utils/GlobalAssetLoader.d.ts +141 -0
  114. package/dist/utils/GlobalAssetLoader.d.ts.map +1 -0
  115. package/dist/utils/RadialGradient.d.ts +57 -0
  116. package/dist/utils/RadialGradient.d.ts.map +1 -0
  117. package/dist/utils/functions.d.ts +2 -0
  118. package/dist/utils/functions.d.ts.map +1 -0
  119. package/dist/utils/tabindex.d.ts +16 -0
  120. package/dist/utils/tabindex.d.ts.map +1 -0
  121. package/package.json +13 -7
  122. package/src/components/Button.ts +399 -0
  123. package/src/components/Canvas.ts +62 -46
  124. package/src/components/Container.ts +21 -2
  125. package/src/components/DOMContainer.ts +379 -0
  126. package/src/components/DOMElement.ts +556 -0
  127. package/src/components/DOMSprite.ts +1040 -0
  128. package/src/components/DisplayObject.ts +392 -201
  129. package/src/components/FocusContainer.ts +368 -0
  130. package/src/components/Graphic.ts +227 -66
  131. package/src/components/Joystick.ts +363 -0
  132. package/src/components/Mesh.ts +222 -0
  133. package/src/components/NineSliceSprite.ts +4 -1
  134. package/src/components/ParticleEmitter.ts +12 -8
  135. package/src/components/Sprite.ts +297 -31
  136. package/src/components/Text.ts +125 -18
  137. package/src/components/Video.ts +2 -2
  138. package/src/components/Viewport.ts +118 -63
  139. package/src/components/index.ts +9 -2
  140. package/src/components/types/DisplayObject.ts +41 -4
  141. package/src/components/types/Spritesheet.ts +0 -118
  142. package/src/directives/Controls.ts +254 -0
  143. package/src/directives/ControlsBase.ts +267 -0
  144. package/src/directives/Drag.ts +357 -52
  145. package/src/directives/Flash.ts +419 -0
  146. package/src/directives/FocusNavigation.ts +113 -0
  147. package/src/directives/GamepadControls.ts +537 -0
  148. package/src/directives/JoystickControls.ts +396 -0
  149. package/src/directives/KeyboardControls.ts +85 -430
  150. package/src/directives/Scheduler.ts +12 -4
  151. package/src/directives/Shake.ts +298 -0
  152. package/src/directives/Sound.ts +94 -31
  153. package/src/directives/ViewportFollow.ts +40 -9
  154. package/src/directives/index.ts +12 -6
  155. package/src/engine/FocusManager.ts +510 -0
  156. package/src/engine/animation.ts +175 -21
  157. package/src/engine/bootstrap.ts +93 -3
  158. package/src/engine/directive.ts +4 -4
  159. package/src/engine/reactive.ts +901 -161
  160. package/src/engine/signal.ts +113 -25
  161. package/src/engine/trigger.ts +34 -7
  162. package/src/engine/utils.ts +19 -3
  163. package/src/hooks/useFocus.ts +91 -0
  164. package/src/hooks/useProps.ts +1 -1
  165. package/src/index.ts +8 -2
  166. package/src/types/pixi-cull.d.ts +7 -0
  167. package/src/utils/GlobalAssetLoader.ts +257 -0
  168. package/src/utils/functions.ts +7 -0
  169. package/src/utils/tabindex.ts +70 -0
  170. package/testing/index.ts +35 -4
  171. package/tsconfig.json +18 -0
  172. package/vite.config.ts +39 -0
@@ -0,0 +1,185 @@
1
+ import { Signal } from '@signe/reactive';
2
+ import { FederatedPointerEvent } from 'pixi.js';
3
+ import { ControlsDirective } from '../directives/Controls';
4
+ import { JoystickControls } from '../directives/JoystickControls';
5
+ import { Element } from '../engine/reactive';
6
+ /**
7
+ * Button states for visual feedback
8
+ */
9
+ export declare enum ButtonState {
10
+ Normal = "normal",
11
+ Hover = "hover",
12
+ Pressed = "pressed",
13
+ Disabled = "disabled"
14
+ }
15
+ /**
16
+ * Button style configuration for different visual approaches
17
+ */
18
+ export interface ButtonStyle {
19
+ /** Background color for each state */
20
+ backgroundColor?: {
21
+ [ButtonState.Normal]?: string;
22
+ [ButtonState.Hover]?: string;
23
+ [ButtonState.Pressed]?: string;
24
+ [ButtonState.Disabled]?: string;
25
+ };
26
+ /** Border configuration */
27
+ border?: {
28
+ color?: string;
29
+ width?: number;
30
+ radius?: number;
31
+ };
32
+ /** Text styling */
33
+ text?: {
34
+ color?: string;
35
+ fontSize?: number;
36
+ fontFamily?: string;
37
+ };
38
+ /** Sprite textures for each state (alternative to backgroundColor) */
39
+ textures?: {
40
+ [ButtonState.Normal]?: string;
41
+ [ButtonState.Hover]?: string;
42
+ [ButtonState.Pressed]?: string;
43
+ [ButtonState.Disabled]?: string;
44
+ };
45
+ }
46
+ /**
47
+ * Properties for the Button component
48
+ */
49
+ export interface ButtonProps {
50
+ /** Button text content */
51
+ text?: string;
52
+ /** Button disabled state */
53
+ disabled?: boolean;
54
+ /** Click event handler */
55
+ click?: (event: FederatedPointerEvent) => void;
56
+ /** Hover enter event handler */
57
+ hoverEnter?: (event: FederatedPointerEvent) => void;
58
+ /** Hover leave event handler */
59
+ hoverLeave?: (event: FederatedPointerEvent) => void;
60
+ /** Press down event handler */
61
+ pressDown?: (event: FederatedPointerEvent) => void;
62
+ /** Press up event handler */
63
+ pressUp?: (event: FederatedPointerEvent) => void;
64
+ /** Visual style configuration */
65
+ style?: ButtonStyle;
66
+ /** Button width */
67
+ width?: number;
68
+ /** Button height */
69
+ height?: number;
70
+ /** Button position X */
71
+ x?: number;
72
+ /** Button position Y */
73
+ y?: number;
74
+ /** Button alpha/opacity */
75
+ alpha?: number;
76
+ /** Button visibility */
77
+ visible?: boolean;
78
+ /** Button cursor */
79
+ cursor?: string;
80
+ /** Controls instance to automatically apply button events to (e.g., ControlsDirective or JoystickControls) */
81
+ controls?: ControlsDirective | JoystickControls | any;
82
+ /** Name of the control to trigger with applyControl when button is clicked */
83
+ controlName?: string;
84
+ /** Shape of the button background: 'rect', 'circle', or 'ellipse' */
85
+ shape?: 'rect' | 'circle' | 'ellipse';
86
+ /** Custom background component or element (replaces default background if provided) */
87
+ background?: Element | any;
88
+ /** Custom children components for button content (takes priority over text if provided) */
89
+ children?: Element[];
90
+ /** Focus index for the button */
91
+ tabindex?: number | Signal<number>;
92
+ }
93
+ /**
94
+ * Creates a Button component with interactive states and customizable styling.
95
+ *
96
+ * This component provides a fully interactive button with visual feedback
97
+ * for different states (normal, hover, pressed, disabled). It supports both
98
+ * sprite-based and graphics-based rendering approaches.
99
+ *
100
+ * The button is built using a Container with background and text elements,
101
+ * providing reactive state management and event handling.
102
+ *
103
+ * ## Features
104
+ *
105
+ * - **Controls Integration**: Automatically trigger controls via `applyControl` when clicked
106
+ * - **Multiple Shapes**: Support for rect, circle, and ellipse shapes
107
+ * - **Custom Content**: Use children components for custom button content
108
+ * - **Custom Background**: Provide a custom background component
109
+ *
110
+ * @param props - Button configuration including text, styling, controls, shape, and event handlers
111
+ * @returns A reactive Button component
112
+ * @example
113
+ * ```typescript
114
+ * // Simple button with text and click handler
115
+ * const simpleButton = Button({
116
+ * text: "Click Me",
117
+ * click: () => console.log("Button clicked!"),
118
+ * width: 150,
119
+ * height: 50
120
+ * });
121
+ *
122
+ * // Button with controls integration
123
+ * const jumpButton = Button({
124
+ * text: "Jump",
125
+ * controls: controlsInstance,
126
+ * controlName: "jump",
127
+ * width: 120,
128
+ * height: 40
129
+ * });
130
+ *
131
+ * // Circular button
132
+ * const circleButton = Button({
133
+ * text: "Action",
134
+ * shape: "circle",
135
+ * width: 100,
136
+ * height: 100
137
+ * });
138
+ *
139
+ * // Button with custom content (children)
140
+ * const customButton = Button({
141
+ * shape: "circle",
142
+ * width: 80,
143
+ * height: 80,
144
+ * children: [
145
+ * h(Sprite, { image: "icon.png", width: 50, height: 50 })
146
+ * ]
147
+ * });
148
+ *
149
+ * // Styled button with custom colors
150
+ * const styledButton = Button({
151
+ * text: "Styled Button",
152
+ * style: {
153
+ * backgroundColor: {
154
+ * normal: "#28a745",
155
+ * hover: "#218838",
156
+ * pressed: "#1e7e34",
157
+ * disabled: "#6c757d"
158
+ * },
159
+ * border: {
160
+ * radius: 8,
161
+ * width: 2,
162
+ * color: "#ffffff"
163
+ * },
164
+ * text: {
165
+ * fontSize: 18,
166
+ * color: "#ffffff"
167
+ * }
168
+ * }
169
+ * });
170
+ *
171
+ * // Sprite-based button
172
+ * const spriteButton = Button({
173
+ * text: "Play Game",
174
+ * style: {
175
+ * textures: {
176
+ * normal: "/assets/button-normal.png",
177
+ * hover: "/assets/button-hover.png",
178
+ * pressed: "/assets/button-pressed.png"
179
+ * }
180
+ * }
181
+ * });
182
+ * ```
183
+ */
184
+ export declare function Button(props: ButtonProps): Element<import('./DisplayObject').ComponentInstance> | Promise<Element<import('./DisplayObject').ComponentInstance>>;
185
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/components/Button.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Props } from '../engine/reactive';
2
+ import { ComponentFunction } from '../engine/signal';
3
+ import { SignalOrPrimitive } from './types';
4
+ import { Size } from './types/DisplayObject';
5
+ export interface CanvasProps extends Props {
6
+ cursorStyles?: () => any;
7
+ width?: SignalOrPrimitive<Size>;
8
+ height?: SignalOrPrimitive<Size>;
9
+ canvasEl?: HTMLElement;
10
+ selector?: string;
11
+ isRoot?: boolean;
12
+ tick?: any;
13
+ class?: SignalOrPrimitive<string>;
14
+ background?: string;
15
+ }
16
+ export declare const Canvas: ComponentFunction<CanvasProps>;
17
+ //# sourceMappingURL=Canvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Canvas.d.ts","sourceRoot":"","sources":["../../src/components/Canvas.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,EAIN,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAgB7C,MAAM,WAAW,WAAY,SAAQ,KAAK;IACxC,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,MAAM,EAAE,iBAAiB,CAAC,WAAW,CA6GjD,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { ComponentFunction } from '../engine/signal';
2
+ import { DisplayObjectProps } from './types/DisplayObject';
3
+ interface ContainerProps extends DisplayObjectProps {
4
+ sortableChildren?: boolean;
5
+ }
6
+ declare const CanvasContainer_base: {
7
+ new (): {
8
+ [x: string]: any;
9
+ "__#private@#canvasContext": {
10
+ [key: string]: any;
11
+ } | null;
12
+ isFlex: boolean;
13
+ fullProps: import('..').Props;
14
+ isMounted: boolean;
15
+ _anchorPoints: import('pixi.js').ObservablePoint;
16
+ isCustomAnchor: boolean;
17
+ displayWidth: import('@signe/reactive').WritableSignal<number>;
18
+ displayHeight: import('@signe/reactive').WritableSignal<number>;
19
+ overrideProps: string[];
20
+ layout: any;
21
+ onBeforeDestroy: import('./DisplayObject').OnHook | null;
22
+ onAfterMount: import('./DisplayObject').OnHook | null;
23
+ subjectInit: import('rxjs').BehaviorSubject<any>;
24
+ disableLayout: boolean;
25
+ "__#private@#registeredEvents": Map<string, Function>;
26
+ "__#private@#computedLayoutBox": {
27
+ width?: number;
28
+ height?: number;
29
+ } | null;
30
+ "__#private@#element": import('..').Element<any> | null;
31
+ getElement(): import('..').Element<any> | null;
32
+ onLayoutComputed(_event: any): void;
33
+ get deltaRatio(): any;
34
+ get parentIsFlex(): any;
35
+ onInit(props: import('..').Props): void;
36
+ onMount(element: import('..').Element<any>, index?: number): Promise<void>;
37
+ onUpdate(props: import('..').Props): void;
38
+ onDestroy(parent: import('..').Element, afterDestroy?: () => void): Promise<void>;
39
+ setFlexDirection(direction: import('./types/DisplayObject').FlexDirection): void;
40
+ setFlexWrap(wrap: "wrap" | "nowrap" | "wrap-reverse"): void;
41
+ setAlignContent(align: import('./types/DisplayObject').AlignContent): void;
42
+ setAlignSelf(align: import('./types/DisplayObject').AlignContent): void;
43
+ setAlignItems(align: import('./types/DisplayObject').AlignContent): void;
44
+ setJustifyContent(justifyContent: "flex-start" | "flex-end" | "center" | "space-between" | "space-around"): void;
45
+ setPosition(position: import('./types/DisplayObject').EdgeSize): void;
46
+ setX(x: number): void;
47
+ setY(y: number): void;
48
+ setPadding(padding: import('./types/DisplayObject').EdgeSize): void;
49
+ setMargin(margin: import('./types/DisplayObject').EdgeSize): void;
50
+ setGap(gap: import('./types/DisplayObject').EdgeSize): void;
51
+ setBorder(border: import('./types/DisplayObject').EdgeSize): void;
52
+ setPositionType(positionType: "relative" | "absolute"): void;
53
+ setWidth(width: number): void;
54
+ setHeight(height: number): void;
55
+ getWidth(): number;
56
+ getHeight(): number;
57
+ setMinWidth(minWidth: number | string): void;
58
+ setMinHeight(minHeight: number | string): void;
59
+ setMaxWidth(maxWidth: number | string): void;
60
+ setMaxHeight(maxHeight: number | string): void;
61
+ setAspectRatio(aspectRatio: number): void;
62
+ setFlexGrow(flexGrow: number): void;
63
+ setFlexShrink(flexShrink: number): void;
64
+ setFlexBasis(flexBasis: number | string): void;
65
+ setRowGap(rowGap: number): void;
66
+ setColumnGap(columnGap: number): void;
67
+ setTop(top: number | string): void;
68
+ setLeft(left: number | string): void;
69
+ setRight(right: number | string): void;
70
+ setBottom(bottom: number | string): void;
71
+ setObjectFit(objectFit: import('./types/DisplayObject').ObjectFit): void;
72
+ setObjectPosition(objectPosition: import('./types/DisplayObject').ObjectPosition): void;
73
+ setTransformOrigin(transformOrigin: import('./types/DisplayObject').TransformOrigin): void;
74
+ };
75
+ [x: string]: any;
76
+ };
77
+ export declare class CanvasContainer extends CanvasContainer_base {
78
+ isCustomAnchor: boolean;
79
+ onUpdate(props: any): void;
80
+ onMount(args: any): Promise<void>;
81
+ }
82
+ export interface CanvasContainer extends DisplayObjectProps {
83
+ }
84
+ export declare const Container: ComponentFunction<ContainerProps>;
85
+ export {};
86
+ //# sourceMappingURL=Container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../src/components/Container.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI3D,UAAU,cAAe,SAAQ,kBAAkB;IACjD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;;;;;;;;;;;;;;;;;;;;;;iBAuDq/B,CAAC;kBAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AArDxgC,qBAAa,eAAgB,SAAQ,oBAA4B;IAC/D,cAAc,UAAQ;IAEtB,QAAQ,CAAC,KAAK,KAAA;IAaR,OAAO,CAAC,IAAI,KAAA;CA0BnB;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;CAAG;AAI9D,eAAO,MAAM,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAIvD,CAAC"}
@@ -0,0 +1,98 @@
1
+ import { Element } from '../engine/reactive';
2
+ import { ComponentFunction } from '../engine/signal';
3
+ import { DisplayObjectProps } from './types/DisplayObject';
4
+ declare const CanvasDOMContainer_base: {
5
+ new (): {
6
+ [x: string]: any;
7
+ "__#private@#canvasContext": {
8
+ [key: string]: any;
9
+ } | null;
10
+ isFlex: boolean;
11
+ fullProps: import('..').Props;
12
+ isMounted: boolean;
13
+ _anchorPoints: import('pixi.js').ObservablePoint;
14
+ isCustomAnchor: boolean;
15
+ displayWidth: import('@signe/reactive').WritableSignal<number>;
16
+ displayHeight: import('@signe/reactive').WritableSignal<number>;
17
+ overrideProps: string[];
18
+ layout: any;
19
+ onBeforeDestroy: import('./DisplayObject').OnHook | null;
20
+ onAfterMount: import('./DisplayObject').OnHook | null;
21
+ subjectInit: import('rxjs').BehaviorSubject<any>;
22
+ disableLayout: boolean;
23
+ "__#private@#registeredEvents": Map<string, Function>;
24
+ "__#private@#computedLayoutBox": {
25
+ width?: number;
26
+ height?: number;
27
+ } | null;
28
+ "__#private@#element": Element<any> | null;
29
+ getElement(): Element<any> | null;
30
+ onLayoutComputed(_event: any): void;
31
+ get deltaRatio(): any;
32
+ get parentIsFlex(): any;
33
+ onInit(props: import('..').Props): void;
34
+ onMount(element: Element<any>, index?: number): Promise<void>;
35
+ onUpdate(props: import('..').Props): void;
36
+ onDestroy(parent: Element, afterDestroy?: () => void): Promise<void>;
37
+ setFlexDirection(direction: import('./types/DisplayObject').FlexDirection): void;
38
+ setFlexWrap(wrap: "wrap" | "nowrap" | "wrap-reverse"): void;
39
+ setAlignContent(align: import('./types/DisplayObject').AlignContent): void;
40
+ setAlignSelf(align: import('./types/DisplayObject').AlignContent): void;
41
+ setAlignItems(align: import('./types/DisplayObject').AlignContent): void;
42
+ setJustifyContent(justifyContent: "flex-start" | "flex-end" | "center" | "space-between" | "space-around"): void;
43
+ setPosition(position: import('./types/DisplayObject').EdgeSize): void;
44
+ setX(x: number): void;
45
+ setY(y: number): void;
46
+ setPadding(padding: import('./types/DisplayObject').EdgeSize): void;
47
+ setMargin(margin: import('./types/DisplayObject').EdgeSize): void;
48
+ setGap(gap: import('./types/DisplayObject').EdgeSize): void;
49
+ setBorder(border: import('./types/DisplayObject').EdgeSize): void;
50
+ setPositionType(positionType: "relative" | "absolute"): void;
51
+ setWidth(width: number): void;
52
+ setHeight(height: number): void;
53
+ getWidth(): number;
54
+ getHeight(): number;
55
+ setMinWidth(minWidth: number | string): void;
56
+ setMinHeight(minHeight: number | string): void;
57
+ setMaxWidth(maxWidth: number | string): void;
58
+ setMaxHeight(maxHeight: number | string): void;
59
+ setAspectRatio(aspectRatio: number): void;
60
+ setFlexGrow(flexGrow: number): void;
61
+ setFlexShrink(flexShrink: number): void;
62
+ setFlexBasis(flexBasis: number | string): void;
63
+ setRowGap(rowGap: number): void;
64
+ setColumnGap(columnGap: number): void;
65
+ setTop(top: number | string): void;
66
+ setLeft(left: number | string): void;
67
+ setRight(right: number | string): void;
68
+ setBottom(bottom: number | string): void;
69
+ setObjectFit(objectFit: import('./types/DisplayObject').ObjectFit): void;
70
+ setObjectPosition(objectPosition: import('./types/DisplayObject').ObjectPosition): void;
71
+ setTransformOrigin(transformOrigin: import('./types/DisplayObject').TransformOrigin): void;
72
+ };
73
+ [x: string]: any;
74
+ };
75
+ export declare class CanvasDOMContainer extends CanvasDOMContainer_base {
76
+ disableLayout: boolean;
77
+ private canvasSizeEffect;
78
+ private static readonly DOM_ROUTING_MAP;
79
+ private static readonly DOM_ALLOWED_TAGS;
80
+ private static readonly DOM_UNSUPPORTED_TAGS;
81
+ private hasDomContainerAncestor;
82
+ private getPercentRatio;
83
+ private getCanvasSize;
84
+ private shouldUseCanvasPercent;
85
+ private syncCanvasSizeEffect;
86
+ private applyElementSize;
87
+ private routeDomChildren;
88
+ onInit(props: any): void;
89
+ onMount(element: Element<any>, index?: number): Promise<void>;
90
+ onUpdate(props: any): void;
91
+ onLayoutComputed(): void;
92
+ onDestroy(parent: Element<any>, afterDestroy?: () => void): Promise<void>;
93
+ }
94
+ export interface CanvasDOMContainer extends DisplayObjectProps {
95
+ }
96
+ export declare const DOMContainer: ComponentFunction<any>;
97
+ export {};
98
+ //# sourceMappingURL=DOMContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMContainer.d.ts","sourceRoot":"","sources":["../../src/components/DOMContainer.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAK,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;;;;;;;;;;;;;;;;;;;;;;iBAsHnD,CAAC;kBACA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnBV,qBAAa,kBAAmB,SAAQ,uBAA+B;IACrE,aAAa,UAAQ;IACrB,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAErC;IACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAIrC;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAqBzC;IAEH,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,gBAAgB;IAgDxB,OAAO,CAAC,gBAAgB;IA8BxB,MAAM,CAAC,KAAK,EAAE,GAAG;IA8EX,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM;IAMnD,QAAQ,CAAC,KAAK,EAAE,GAAG;IAMnB,gBAAgB;IAIV,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,IAAI;CAUhE;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;CAAI;AAIlE,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAAC,GAAG,CAE/C,CAAC"}
@@ -0,0 +1,54 @@
1
+ import { Element } from '../engine/reactive';
2
+ import { OnHook } from './DisplayObject';
3
+ import { ComponentFunction } from '../engine/signal';
4
+ import { DisplayObjectProps } from './types/DisplayObject';
5
+ export interface DOMElementProps extends DisplayObjectProps {
6
+ element?: string | {
7
+ value: HTMLElement;
8
+ };
9
+ textContent?: string;
10
+ attrs?: Record<string, any> & {
11
+ class?: string | string[] | Record<string, boolean> | {
12
+ items?: string[];
13
+ } | {
14
+ value?: string | string[] | Record<string, boolean>;
15
+ };
16
+ style?: string | Record<string, string | number> | {
17
+ value?: string | Record<string, string | number>;
18
+ };
19
+ };
20
+ onBeforeDestroy?: OnHook;
21
+ }
22
+ export interface DOMContainerProps extends DOMElementProps {
23
+ element: string | {
24
+ value: HTMLElement;
25
+ };
26
+ }
27
+ export declare class CanvasDOMElement {
28
+ element: HTMLElement;
29
+ private eventListeners;
30
+ private onBeforeDestroy;
31
+ private valueSignal;
32
+ private isFormElementType;
33
+ private classSubscriptions;
34
+ private childTextSubscriptions;
35
+ /**
36
+ * Checks if the element is a form element that supports the value attribute
37
+ * @param elementType - The element type string from props
38
+ * @returns true if the element is a form element with value support
39
+ */
40
+ private isFormElement;
41
+ private collectClassTokens;
42
+ private collectClassSignals;
43
+ private applyClassList;
44
+ private syncClassSubscriptions;
45
+ private appendChildElement;
46
+ onInit(props: DOMElementProps): void;
47
+ onMount(context: Element<CanvasDOMElement>): void;
48
+ onUpdate(props: DOMElementProps): void;
49
+ onDestroy(parent: Element<CanvasDOMElement>, afterDestroy: () => void): Promise<void>;
50
+ }
51
+ export interface CanvasDOMElement extends DisplayObjectProps {
52
+ }
53
+ export declare const DOMElement: ComponentFunction<DOMContainerProps>;
54
+ //# sourceMappingURL=DOMElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMElement.d.ts","sourceRoot":"","sources":["../../src/components/DOMElement.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,OAAO,EAER,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAoC,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI3D,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,OAAO,CAAC,EACN,MAAM,GACN;QACA,KAAK,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;QAC5B,KAAK,CAAC,EACJ,MAAM,GACN,MAAM,EAAE,GACR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB;YAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,GACpB;YAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC1D,KAAK,CAAC,EACJ,MAAM,GACN,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAC/B;YAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAA;SAAE,CAAC;KACxD,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,OAAO,EACL,MAAM,GACN;QACA,KAAK,EAAE,WAAW,CAAC;KACpB,CAAC;CACH;AAwKD,qBAAa,gBAAgB;IACpB,OAAO,EAAE,WAAW,CAAC;IAC5B,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,sBAAsB,CAA0C;IAExE;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,sBAAsB;IAmB9B,OAAO,CAAC,kBAAkB;IAqD1B,MAAM,CAAC,KAAK,EAAE,eAAe;IAyD7B,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAgC1C,QAAQ,CAAC,KAAK,EAAE,eAAe;IAqEzB,SAAS,CACb,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,EACjC,YAAY,EAAE,MAAM,IAAI,GACvB,OAAO,CAAC,IAAI,CAAC;CA6BjB;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;CAAI;AAIhE,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,iBAAiB,CAE3D,CAAC"}
@@ -0,0 +1,127 @@
1
+ import { Signal } from '@signe/reactive';
2
+ import { Element } from '../engine/reactive';
3
+ import { ComponentFunction } from '../engine/signal';
4
+ import { CanvasDOMElement, DOMElementProps } from './DOMElement';
5
+ import { OnHook } from './DisplayObject';
6
+ import { Tick } from '../directives/Scheduler';
7
+ import { SpritesheetOptions } from './types/Spritesheet';
8
+ export interface DOMSpriteFrame {
9
+ x: number;
10
+ y: number;
11
+ width: number;
12
+ height: number;
13
+ }
14
+ export interface DOMSpriteProps extends DOMElementProps {
15
+ image?: string;
16
+ rectangle?: DOMSpriteFrame | {
17
+ value?: DOMSpriteFrame;
18
+ };
19
+ frames?: DOMSpriteFrame[];
20
+ frameIndex?: number;
21
+ fps?: number;
22
+ playing?: boolean;
23
+ loop?: boolean;
24
+ sheet?: {
25
+ definition?: DOMSpriteSheetDefinition | {
26
+ value?: DOMSpriteSheetDefinition;
27
+ } | Signal<DOMSpriteSheetDefinition | undefined> | Promise<DOMSpriteSheetDefinition>;
28
+ playing?: string;
29
+ params?: any;
30
+ onFinish?: () => void;
31
+ };
32
+ element?: "div" | "img";
33
+ class?: any;
34
+ style?: any;
35
+ attrs?: Record<string, any> & {
36
+ class?: string | string[] | Record<string, boolean> | {
37
+ items?: string[];
38
+ } | {
39
+ value?: string | string[] | Record<string, boolean>;
40
+ };
41
+ style?: string | Record<string, string | number> | {
42
+ value?: string | Record<string, string | number>;
43
+ };
44
+ };
45
+ onBeforeDestroy?: OnHook;
46
+ context?: {
47
+ tick?: Signal<Tick | null>;
48
+ };
49
+ }
50
+ type DOMSpriteSheetDefinition = SpritesheetOptions & {
51
+ image?: string;
52
+ };
53
+ export declare class CanvasDOMSprite extends CanvasDOMElement {
54
+ private frameIndex;
55
+ private frames;
56
+ private rectangle?;
57
+ private image?;
58
+ private fps;
59
+ private loop;
60
+ private playing;
61
+ private hasExternalFrameIndex;
62
+ private elapsed;
63
+ private tickSignal?;
64
+ private tickSubscription?;
65
+ private sheetSubscriptions;
66
+ private sheetDefinition?;
67
+ private sheetAnimations;
68
+ private sheetCurrentAnimation?;
69
+ private sheetCurrentName?;
70
+ private sheetParams;
71
+ private sheetTime;
72
+ private sheetFrameIndex;
73
+ private sheetFinished;
74
+ private sheetLoadToken;
75
+ private sheetOnFinish?;
76
+ private rafId?;
77
+ private lastRafTimestamp?;
78
+ private lastTickTimestamp?;
79
+ private renderElementType;
80
+ private wrapperElementType;
81
+ private isAnimating;
82
+ private playingSubscription?;
83
+ private playingSignal?;
84
+ private explicitWidth?;
85
+ private explicitHeight?;
86
+ private frameWidth;
87
+ private frameHeight;
88
+ private fitMode?;
89
+ private renderElement?;
90
+ private isContained;
91
+ onInit(props: DOMElementProps): void;
92
+ onMount(context: Element<CanvasDOMElement>): void;
93
+ onUpdate(props: DOMElementProps): void;
94
+ onDestroy(parent: Element<CanvasDOMElement>, afterDestroy: () => void): Promise<void>;
95
+ private resolveRectangle;
96
+ private resolveSheetDefinition;
97
+ private detectImageDimensions;
98
+ private createSheetAnimations;
99
+ private setSheetDefinition;
100
+ private playSheet;
101
+ private getCurrentSheetFrame;
102
+ private advanceSheet;
103
+ private mergeEventAttrs;
104
+ private applyProps;
105
+ private resolveValue;
106
+ private resolvePoint;
107
+ private resolveSize;
108
+ private resolvePixelSize;
109
+ private toCssColor;
110
+ private applyDisplayProps;
111
+ private syncRenderElement;
112
+ private getRenderElement;
113
+ private applyContainScale;
114
+ private bindPlayingSignal;
115
+ private bindSheetParams;
116
+ private getFrames;
117
+ private normalizeIndex;
118
+ private render;
119
+ private applyFrame;
120
+ private updateAnimationLoop;
121
+ private startAnimationLoop;
122
+ private stopAnimationLoop;
123
+ private advance;
124
+ }
125
+ export declare const DOMSprite: ComponentFunction<DOMSpriteProps>;
126
+ export {};
127
+ //# sourceMappingURL=DOMSprite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMSprite.d.ts","sourceRoot":"","sources":["../../src/components/DOMSprite.ts"],"names":[],"mappings":"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"}