| 1234567891011121314151617181920212223242526 |
- import { isBezierDefinition } from '../../../utils/is-bezier-definition.mjs';
- import { supportsLinearEasing } from '../../../utils/supports/linear-easing.mjs';
- import { generateLinearEasing } from '../utils/linear.mjs';
- import { cubicBezierAsString } from './cubic-bezier.mjs';
- import { supportedWaapiEasing } from './supported.mjs';
- function mapEasingToNativeEasing(easing, duration) {
- if (!easing) {
- return undefined;
- }
- else if (typeof easing === "function" && supportsLinearEasing()) {
- return generateLinearEasing(easing, duration);
- }
- else if (isBezierDefinition(easing)) {
- return cubicBezierAsString(easing);
- }
- else if (Array.isArray(easing)) {
- return easing.map((segmentEasing) => mapEasingToNativeEasing(segmentEasing, duration) ||
- supportedWaapiEasing.easeOut);
- }
- else {
- return supportedWaapiEasing[easing];
- }
- }
- export { mapEasingToNativeEasing };
|