import{aX as a,R as u}from"./index-T8LZyOXI.js";import{F as c}from"./KHR_interactivity-BRnQ0PPJ.js";import{b as h,l as r,R as l}from"./declarationMapper-YJJdbZ_c.js";import"./index-BkylzejB.js";import"./objectModelMapping-D1pI71RW.js";class g extends c{constructor(t){super(t),this.config=t,this._easingFunctions={},this.mode=this.registerDataInput("mode",h,0),this.controlPoint1=this.registerDataInput("controlPoint1",r),this.controlPoint2=this.registerDataInput("controlPoint2",r),this.easingFunction=this.registerDataOutput("easingFunction",l)}_updateOutputs(t){const e=this.mode.getValue(t),i=this.controlPoint1.getValue(t),s=this.controlPoint2.getValue(t);if(e===void 0)return;const o=`${e}-${i.x}-${i.y}-${s.x}-${s.y}`;if(!this._easingFunctions[o]){const n=new a(i.x,i.y,s.x,s.y);n.setEasingMode(e),this._easingFunctions[o]=n}this.easingFunction.setValue(this._easingFunctions[o],t)}getClassName(){return"FlowGraphBezierCurveEasing"}}u("FlowGraphBezierCurveEasing",g);export{g as FlowGraphBezierCurveEasingBlock};
