exodeui 2.4.0 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/types.d.ts CHANGED
@@ -15,6 +15,23 @@ export interface Shadow {
15
15
  export interface Blur {
16
16
  amount: number;
17
17
  }
18
+ export interface LineDataset {
19
+ id: string;
20
+ label: string;
21
+ data: number[];
22
+ lineColor: string;
23
+ lineWidth: number;
24
+ showArea: boolean;
25
+ areaColor: string;
26
+ smoothing: boolean;
27
+ showPoints: boolean;
28
+ pointSize: number;
29
+ pointFill: string;
30
+ pointStrokeColor: string;
31
+ pointStrokeWidth: number;
32
+ inputId?: string;
33
+ isVarEnabled?: boolean;
34
+ }
18
35
  export interface Style {
19
36
  fill?: {
20
37
  type: 'Solid' | 'LinearGradient' | 'RadialGradient' | 'None';
@@ -80,6 +97,34 @@ export type Geometry = {
80
97
  src: string;
81
98
  width: number;
82
99
  height: number;
100
+ } | {
101
+ type: "LineGraph";
102
+ datasets?: LineDataset[];
103
+ data?: number[];
104
+ width: number;
105
+ height: number;
106
+ lineColor?: string;
107
+ lineWidth?: number;
108
+ showArea?: boolean;
109
+ areaColor?: string;
110
+ smoothing?: boolean;
111
+ showPoints?: boolean;
112
+ pointSize?: number;
113
+ pointFill?: string;
114
+ pointStrokeColor?: string;
115
+ pointStrokeWidth?: number;
116
+ showXAxis?: boolean;
117
+ showYAxis?: boolean;
118
+ xAxisColor?: string;
119
+ yAxisColor?: string;
120
+ showXLabels?: boolean;
121
+ showYLabels?: boolean;
122
+ axisLabelColor?: string;
123
+ axisLabelFontSize?: number;
124
+ showLegend?: boolean;
125
+ legendColor?: string;
126
+ legendFontSize?: number;
127
+ areaOpacity?: number;
83
128
  };
84
129
  export interface Trigger {
85
130
  id: string;
@@ -205,9 +250,29 @@ export interface Layer {
205
250
  entryConditions?: Condition[];
206
251
  states: State[];
207
252
  }
253
+ export declare enum LogicOp {
254
+ AND = "AND",
255
+ OR = "OR",
256
+ NOT = "NOT",
257
+ XOR = "XOR"
258
+ }
259
+ export interface LogicNode {
260
+ id: string;
261
+ name: string;
262
+ op: LogicOp;
263
+ x: number;
264
+ y: number;
265
+ inputs: {
266
+ id: string;
267
+ sourceId?: string;
268
+ sourceHandleId?: string;
269
+ value?: number | boolean;
270
+ }[];
271
+ }
208
272
  export interface StateMachine {
209
273
  inputs: Input[];
210
274
  layers: Layer[];
275
+ logicNodes?: LogicNode[];
211
276
  }
212
277
  export interface Artboard {
213
278
  name: string;
@@ -7,4 +7,5 @@ export declare function useExodeUI(): {
7
7
  setInputNumber: (name: string, value: number) => void;
8
8
  fireTrigger: (name: string) => void;
9
9
  setInputText: (name: string, value: string) => void;
10
+ setInputNumberArray: (name: string, value: number[]) => void;
10
11
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exodeui",
3
- "version": "2.4.0",
3
+ "version": "2.5.1",
4
4
  "description": "React Runtime for ExodeUI Animation Engine",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -11,20 +11,25 @@
11
11
  ],
12
12
  "scripts": {
13
13
  "build": "vite build",
14
- "dev": "vite build --watch"
14
+ "dev": "vite build --watch",
15
+ "test": "vitest run",
16
+ "test:watch": "vitest"
15
17
  },
16
18
  "peerDependencies": {
17
19
  "react": ">=16.8.0",
18
20
  "react-dom": ">=16.8.0"
19
21
  },
20
22
  "devDependencies": {
23
+ "@types/node": "^25.0.9",
21
24
  "@types/react": "^18.2.0",
22
25
  "@types/react-dom": "^18.2.0",
26
+ "jsdom": "^27.4.0",
23
27
  "react": "^18.2.0",
24
28
  "react-dom": "^18.2.0",
25
29
  "typescript": "^5.0.0",
26
30
  "vite": "^5.0.0",
27
- "vite-plugin-dts": "^3.0.0"
31
+ "vite-plugin-dts": "^3.0.0",
32
+ "vitest": "^4.0.17"
28
33
  },
29
34
  "dependencies": {
30
35
  "@dimforge/rapier2d-compat": "^0.19.3"