exodeui 6.2.6 → 6.2.8
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/index.js +33 -33
- package/dist/index.mjs +3237 -2884
- package/dist/src/ExodeUICanvas.d.ts +9 -0
- package/dist/src/engine.d.ts +11 -1
- package/dist/src/types.d.ts +71 -25
- package/package.json +1 -1
|
@@ -21,6 +21,15 @@ export interface ExodeUICanvasProps {
|
|
|
21
21
|
onInputFocus?: (name: string) => void;
|
|
22
22
|
onInputBlur?: (name: string) => void;
|
|
23
23
|
onLog?: (msg: string) => void;
|
|
24
|
+
onLogicUpdate?: (values: Record<string, any>) => void;
|
|
24
25
|
currentTime?: number;
|
|
26
|
+
revision?: number;
|
|
27
|
+
scrollY?: number;
|
|
28
|
+
scrollX?: number;
|
|
29
|
+
mouseX?: number;
|
|
30
|
+
mouseY?: number;
|
|
31
|
+
isMouseDown?: boolean;
|
|
32
|
+
inputs?: Record<string, any>;
|
|
33
|
+
interactive?: boolean;
|
|
25
34
|
}
|
|
26
35
|
export declare const ExodeUICanvas: React.ForwardRefExoticComponent<ExodeUICanvasProps & React.RefAttributes<HTMLCanvasElement>>;
|
package/dist/src/engine.d.ts
CHANGED
|
@@ -41,15 +41,20 @@ export declare class ExodeUIEngine {
|
|
|
41
41
|
x: number;
|
|
42
42
|
y: number;
|
|
43
43
|
};
|
|
44
|
+
private _totalScroll;
|
|
44
45
|
private draggingBehaviors;
|
|
46
|
+
private isMouseDown;
|
|
45
47
|
private objectVelocities;
|
|
46
48
|
private currentTime;
|
|
47
49
|
private frameCount;
|
|
48
50
|
private fontLeadingFactors;
|
|
51
|
+
private onLogicUpdate?;
|
|
52
|
+
private logicNodeValues;
|
|
49
53
|
setTriggerCallback(cb: (triggerName: string, animationName: string) => void): void;
|
|
50
54
|
setInputUpdateCallback(cb: (nameOrId: string, value: any) => void): void;
|
|
51
55
|
setComponentChangeCallback(cb: (event: ComponentEvent) => void): void;
|
|
52
56
|
setToggleCallback(cb: (name: string, checked: boolean) => void): void;
|
|
57
|
+
setLogicUpdateCallback(cb: (values: Record<string, any>) => void): void;
|
|
53
58
|
setInputChangeCallback(cb: (name: string, text: string) => void): void;
|
|
54
59
|
private ensurePathPoints;
|
|
55
60
|
private svgPathToPoints;
|
|
@@ -86,7 +91,8 @@ export declare class ExodeUIEngine {
|
|
|
86
91
|
setInputText(nameOrId: string, value: string): void;
|
|
87
92
|
setInputNumberArray(nameOrId: string, value: number[]): void;
|
|
88
93
|
setInputStringArray(nameOrId: string, value: string[]): void;
|
|
89
|
-
|
|
94
|
+
updateObjectProperty(id: string, property: string, value: any): void;
|
|
95
|
+
updateInput(nameOrId: string, value: any): void;
|
|
90
96
|
private evaluateTransitions;
|
|
91
97
|
/**
|
|
92
98
|
* Find a global transition from any state in the layer whose conditions are met.
|
|
@@ -100,6 +106,8 @@ export declare class ExodeUIEngine {
|
|
|
100
106
|
private findGlobalTransition;
|
|
101
107
|
private checkConditions;
|
|
102
108
|
private evaluateLogicTree;
|
|
109
|
+
private runLogicNodes;
|
|
110
|
+
private resolvePath;
|
|
103
111
|
private activeTriggers;
|
|
104
112
|
seek(time: number): void;
|
|
105
113
|
advance(dt: number): void;
|
|
@@ -110,6 +118,7 @@ export declare class ExodeUIEngine {
|
|
|
110
118
|
private computeSpring;
|
|
111
119
|
handlePointerInput(type: string, canvasX: number, canvasY: number, canvasWidth: number, canvasHeight: number): void;
|
|
112
120
|
handleScroll(x: number, y: number): void;
|
|
121
|
+
handleWheel(deltaX: number, deltaY: number): void;
|
|
113
122
|
private handlePointerEvent;
|
|
114
123
|
handleKeyDown(e: KeyboardEvent): void;
|
|
115
124
|
private fireEventForObject;
|
|
@@ -136,6 +145,7 @@ export declare class ExodeUIEngine {
|
|
|
136
145
|
private getBezierPointAndAngle;
|
|
137
146
|
private applyAbsoluteTransform;
|
|
138
147
|
private applyObjectTransform;
|
|
148
|
+
private applyArtEffectOverlay;
|
|
139
149
|
private applyPath;
|
|
140
150
|
private _tracePath;
|
|
141
151
|
private renderInputBox;
|
package/dist/src/types.d.ts
CHANGED
|
@@ -89,7 +89,7 @@ export interface LiquidFillConfig {
|
|
|
89
89
|
/**
|
|
90
90
|
* Gen Z Art Effects - Inspired by modern design trends
|
|
91
91
|
*/
|
|
92
|
-
export type ArtEffectType = 'glitch' | 'halftone' | 'pixelate' | 'noise' | 'acid_gradient';
|
|
92
|
+
export type ArtEffectType = 'glitch' | 'halftone' | 'pixelate' | 'noise' | 'acid_gradient' | 'acid_rave' | 'shimmer';
|
|
93
93
|
export interface ArtEffectConfig {
|
|
94
94
|
enabled: boolean;
|
|
95
95
|
type: ArtEffectType;
|
|
@@ -327,37 +327,31 @@ export type Geometry = {
|
|
|
327
327
|
export declare enum BehaviorType {
|
|
328
328
|
Proximity = "Proximity",
|
|
329
329
|
Magnetic = "Magnetic",
|
|
330
|
-
Parallax = "Parallax",
|
|
331
|
-
Velocity = "Velocity",
|
|
332
|
-
Shear = "Shear",
|
|
333
330
|
Repel = "Repel",
|
|
334
331
|
Orbit = "Orbit",
|
|
335
|
-
Elastic = "Elastic",
|
|
336
|
-
Dilation = "Dilation",
|
|
337
332
|
Vortex = "Vortex",
|
|
338
333
|
Fluid = "Fluid",
|
|
334
|
+
Elastic = "Elastic",
|
|
339
335
|
Holographic = "Holographic",
|
|
340
336
|
Sticky = "Sticky",
|
|
341
|
-
|
|
337
|
+
Dilation = "Dilation",
|
|
338
|
+
Parallax = "Parallax",
|
|
342
339
|
Noise = "Noise",
|
|
340
|
+
Float = "Float",
|
|
341
|
+
Pulse = "Pulse",
|
|
343
342
|
Draggable = "Draggable",
|
|
344
343
|
Scroll = "Scroll",
|
|
345
|
-
Follower = "Follower",
|
|
346
|
-
Lens = "Lens",
|
|
347
344
|
LookAt = "LookAt",
|
|
348
|
-
Pulse = "Pulse",
|
|
349
|
-
Wrap = "Wrap",
|
|
350
345
|
Glint = "Glint",
|
|
351
|
-
|
|
346
|
+
Scan = "Scan",
|
|
352
347
|
Ratchet = "Ratchet",
|
|
353
348
|
Jitter = "Jitter",
|
|
354
|
-
|
|
355
|
-
|
|
349
|
+
Follower = "Follower",
|
|
350
|
+
Wrap = "Wrap",
|
|
356
351
|
Typewriter = "Typewriter",
|
|
357
352
|
Scramble = "Scramble",
|
|
358
353
|
Wave = "Wave",
|
|
359
354
|
Bounce = "Bounce",
|
|
360
|
-
GlitchText = "GlitchText",
|
|
361
355
|
TextTrail = "TextTrail",
|
|
362
356
|
Reveal3D = "Reveal3D",
|
|
363
357
|
RevealSlide = "RevealSlide",
|
|
@@ -367,21 +361,29 @@ export declare enum BehaviorType {
|
|
|
367
361
|
TextExplosion = "TextExplosion",
|
|
368
362
|
TextRain = "TextRain",
|
|
369
363
|
TextGravity = "TextGravity",
|
|
370
|
-
TextElastic = "TextElastic",
|
|
371
364
|
TextMatrix = "TextMatrix",
|
|
372
365
|
TextNeon = "TextNeon",
|
|
373
|
-
TextGlitch3D = "TextGlitch3D",
|
|
374
366
|
TextDissolve = "TextDissolve",
|
|
375
367
|
TextOrganic = "TextOrganic",
|
|
376
368
|
TextBreathe = "TextBreathe",
|
|
369
|
+
TextSpin = "TextSpin",
|
|
370
|
+
TextMagnet = "TextMagnet",
|
|
371
|
+
TextPerspective = "TextPerspective",
|
|
372
|
+
TextMirror = "TextMirror",
|
|
377
373
|
TextFloral = "TextFloral",
|
|
378
374
|
TextSmoke = "TextSmoke",
|
|
379
375
|
TextVariable = "TextVariable",
|
|
380
|
-
TextMagnet = "TextMagnet",
|
|
381
|
-
TextSpin = "TextSpin",
|
|
382
376
|
TextZing = "TextZing",
|
|
383
|
-
|
|
384
|
-
|
|
377
|
+
TextElastic = "TextElastic",
|
|
378
|
+
TextGlitch3D = "TextGlitch3D",
|
|
379
|
+
GlitchText = "GlitchText",
|
|
380
|
+
TextCounter = "TextCounter",
|
|
381
|
+
Squash = "Squash",
|
|
382
|
+
Spotlight = "Spotlight",
|
|
383
|
+
Lens = "Lens",
|
|
384
|
+
Gravity = "Gravity",
|
|
385
|
+
Velocity = "Velocity",
|
|
386
|
+
Shear = "Shear"
|
|
385
387
|
}
|
|
386
388
|
export declare enum BehaviorSensor {
|
|
387
389
|
Scale = "Scale",
|
|
@@ -423,8 +425,10 @@ export interface Trigger {
|
|
|
423
425
|
export interface Interaction {
|
|
424
426
|
id: string;
|
|
425
427
|
event: 'onClick' | 'onHold' | 'pointerDown' | 'pointerUp' | 'hover';
|
|
426
|
-
action: 'setInput' | 'fireTrigger';
|
|
427
|
-
targetInputId
|
|
428
|
+
action: 'setInput' | 'fireTrigger' | 'setProperty';
|
|
429
|
+
targetInputId?: string;
|
|
430
|
+
targetProperty?: string;
|
|
431
|
+
targetObjectId?: string;
|
|
428
432
|
value?: any;
|
|
429
433
|
}
|
|
430
434
|
export interface Physics {
|
|
@@ -571,6 +575,9 @@ export type InputValue = {
|
|
|
571
575
|
} | {
|
|
572
576
|
type: 'Text';
|
|
573
577
|
value: string;
|
|
578
|
+
} | {
|
|
579
|
+
type: 'Object';
|
|
580
|
+
value: string;
|
|
574
581
|
};
|
|
575
582
|
export interface InputNodePosition {
|
|
576
583
|
id: string;
|
|
@@ -595,7 +602,43 @@ export declare enum LogicOp {
|
|
|
595
602
|
AND = "AND",
|
|
596
603
|
OR = "OR",
|
|
597
604
|
NOT = "NOT",
|
|
598
|
-
XOR = "XOR"
|
|
605
|
+
XOR = "XOR",
|
|
606
|
+
OBJECT = "OBJECT",
|
|
607
|
+
PROPERTY = "PROPERTY",
|
|
608
|
+
GET_PROPERTY = "GET_PROPERTY",
|
|
609
|
+
SET_PROPERTY = "SET_PROPERTY",
|
|
610
|
+
ADD = "ADD",
|
|
611
|
+
SUB = "SUB",
|
|
612
|
+
MUL = "MUL",
|
|
613
|
+
DIV = "DIV",
|
|
614
|
+
MOD = "MOD",
|
|
615
|
+
POW = "POW",
|
|
616
|
+
ABS = "ABS",
|
|
617
|
+
ROUND = "ROUND",
|
|
618
|
+
FLOOR = "FLOOR",
|
|
619
|
+
CEIL = "CEIL",
|
|
620
|
+
SIN = "SIN",
|
|
621
|
+
COS = "COS",
|
|
622
|
+
TAN = "TAN",
|
|
623
|
+
CLAMP = "CLAMP",
|
|
624
|
+
REMAP = "REMAP",
|
|
625
|
+
EQ = "EQ",
|
|
626
|
+
NEQ = "NEQ",
|
|
627
|
+
GT = "GT",
|
|
628
|
+
LT = "LT",
|
|
629
|
+
GTE = "GTE",
|
|
630
|
+
LTE = "LTE",
|
|
631
|
+
IF_ELSE = "IF_ELSE",
|
|
632
|
+
VALUE = "VALUE",
|
|
633
|
+
INPUT = "INPUT",
|
|
634
|
+
LOG = "LOG",
|
|
635
|
+
SCROLL_X = "SCROLL_X",
|
|
636
|
+
SCROLL_Y = "SCROLL_Y",
|
|
637
|
+
MOUSE_X = "MOUSE_X",
|
|
638
|
+
MOUSE_Y = "MOUSE_Y",
|
|
639
|
+
IS_MOUSE_DOWN = "IS_MOUSE_DOWN",
|
|
640
|
+
EFFECTOR = "EFFECTOR",
|
|
641
|
+
MONITOR = "MONITOR"
|
|
599
642
|
}
|
|
600
643
|
export interface LogicNode {
|
|
601
644
|
id: string;
|
|
@@ -607,8 +650,10 @@ export interface LogicNode {
|
|
|
607
650
|
id: string;
|
|
608
651
|
sourceId?: string;
|
|
609
652
|
sourceHandleId?: string;
|
|
610
|
-
value?:
|
|
653
|
+
value?: any;
|
|
611
654
|
}[];
|
|
655
|
+
value?: any;
|
|
656
|
+
label?: string;
|
|
612
657
|
}
|
|
613
658
|
export interface StateMachine {
|
|
614
659
|
inputs: Input[];
|
|
@@ -656,6 +701,7 @@ export interface Artboard {
|
|
|
656
701
|
autoLayout?: AutoLayoutConfig;
|
|
657
702
|
layoutProps?: LayoutProps;
|
|
658
703
|
seo?: SEOConfig;
|
|
704
|
+
lastModified?: number;
|
|
659
705
|
}
|
|
660
706
|
export type Fit = 'Cover' | 'Contain' | 'Fill' | 'FitWidth' | 'FitHeight' | 'None' | 'ScaleDown';
|
|
661
707
|
export type Alignment = 'Center' | 'TopLeft' | 'TopCenter' | 'TopRight' | 'CenterLeft' | 'CenterRight' | 'BottomLeft' | 'BottomCenter' | 'BottomRight';
|