| import { cubicAt, cubicRootAt } from '../core/curve.js'; | 
| import { trim } from '../core/util.js'; | 
| var regexp = /cubic-bezier\(([0-9,\.e ]+)\)/; | 
| export function createCubicEasingFunc(cubicEasingStr) { | 
|     var cubic = cubicEasingStr && regexp.exec(cubicEasingStr); | 
|     if (cubic) { | 
|         var points = cubic[1].split(','); | 
|         var a_1 = +trim(points[0]); | 
|         var b_1 = +trim(points[1]); | 
|         var c_1 = +trim(points[2]); | 
|         var d_1 = +trim(points[3]); | 
|         if (isNaN(a_1 + b_1 + c_1 + d_1)) { | 
|             return; | 
|         } | 
|         var roots_1 = []; | 
|         return function (p) { | 
|             return p <= 0 | 
|                 ? 0 : p >= 1 | 
|                 ? 1 | 
|                 : cubicRootAt(0, a_1, c_1, 1, p, roots_1) && cubicAt(0, b_1, d_1, 1, roots_1[0]); | 
|         }; | 
|     } | 
| } |