{"record":{"id":"11fe70f9eebfc16d","repo":"BabylonJS/Babylon.js","slug":"easing-type-not-yet-implemented","errorCode":null,"errorMessage":"Easing type not yet implemented","messagePattern":"Easing type not yet implemented","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/dev/core/src/FlowGraph/Blocks/Execution/Animation/flowGraphEasingBlock.pure.ts","lineNumber":55,"sourceCode":" */\nfunction CreateEasingFunction(type: EasingFunctionType, ...parameters: number[]): EasingFunction {\n    switch (type) {\n        case EasingFunctionType.BezierCurveEase:\n            return new BezierCurveEase(...parameters);\n        case EasingFunctionType.CircleEase:\n            return new CircleEase();\n        case EasingFunctionType.BackEase:\n            return new BackEase(...parameters);\n        case EasingFunctionType.BounceEase:\n            return new BounceEase(...parameters);\n        case EasingFunctionType.CubicEase:\n            return new CubicEase();\n        case EasingFunctionType.ElasticEase:\n            return new ElasticEase(...parameters);\n        case EasingFunctionType.ExponentialEase:\n            return new ExponentialEase(...parameters);\n        default:\n            throw new Error(\"Easing type not yet implemented\");\n    }\n}\n\n/**\n * An easing block that generates an easingFunction object based on the data provided.\n */\nexport class FlowGraphEasingBlock extends FlowGraphBlock {\n    /**\n     * Input connection: The type of the easing function.\n     */\n    public readonly type: FlowGraphDataConnection<EasingFunctionType>;\n\n    /**\n     * Input connection: The mode of the easing function.\n     * EasingFunction.EASINGMODE_EASEIN, EasingFunction.EASINGMODE_EASEOUT, EasingFunction.EASINGMODE_EASEINOUT\n     */\n    public readonly mode: FlowGraphDataConnection<number>;\n","sourceCodeStart":37,"sourceCodeEnd":73,"githubUrl":"https://github.com/BabylonJS/Babylon.js/blob/0592b347b8a4ee0236089ea86a749cacfdb266d8/packages/dev/core/src/FlowGraph/Blocks/Execution/Animation/flowGraphEasingBlock.pure.ts#L37-L73","documentation":"CreateEasingFunction maps an EasingFunctionType enum value to a concrete easing class, but only a subset (e.g. CubicEase, ElasticEase, ExponentialEase, ...) is implemented. Requesting any other easing type hits the default branch and throws this explicit not-implemented error.","triggerScenarios":"Configuring a FlowGraphEasingBlock with an easingFunction type value that the factory has no case for — e.g. BezierEase, BackEase, or an out-of-range/typo'd numeric enum value.","commonSituations":"Serialized graph configs produced by a newer editor version using easing types this core version doesn't support; typos or numeric literals in hand-written configs; confusion between easing-mode and easing-type values.","solutions":["Use one of the supported easing types (CubicEase, ElasticEase, ExponentialEase, etc. per the factory's switch)","Check the EasingFunctionType value in the block config against the types the installed core version implements","Upgrade @babylonjs/core if the desired easing type was added in a newer release, or implement a custom easing function"],"exampleFix":"// before\nconfig.easingFunction = EasingFunctionType.BezierEase; // not implemented\n// after\nconfig.easingFunction = EasingFunctionType.CubicEase;","handlingStrategy":"validation","validationCode":"const SUPPORTED = [EasingFunctionType.CubicEase, EasingFunctionType.ElasticEase, EasingFunctionType.ExponentialEase];\nif (!SUPPORTED.includes(config.easingFunction)) throw new Error('Unsupported easing type: ' + config.easingFunction);","typeGuard":null,"tryCatchPattern":"try { fn = CreateEasingFunction(type, params); } catch (e) { if (e.message === 'Easing type not yet implemented') { fn = new CubicEase(); } else throw e; }","preventionTips":["Only use easing types listed in the CreateEasingFunction switch for your core version","Version-check serialized graph configs against the installed Babylon version","Fall back to a supported easing type with a warning when loading foreign graphs"],"tags":["flow-graph","animation","not-implemented"],"backgroundTag":"feature-not-implemented","analyzedSha":"0592b347b8a4ee0236089ea86a749cacfdb266d8","analyzedAt":"2026-08-30T15:11:20.442Z","schemaVersion":2},"datasetVersion":"2026-08-30T18:17:15.746Z"}