"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "createSlideStyles", { enumerable: true, get: function() { return createSlideStyles; } }); const _reacttheme = require("@fluentui/react-theme"); const _constants = require("./constants"); function createSlideStyles(mainAxis) { const fadeIn = { from: { opacity: 0 }, to: { opacity: 1 } }; const slideDistanceVarX = '--fui-positioning-slide-distance-x'; const slideDistanceVarY = '--fui-positioning-slide-distance-y'; return { animationComposition: 'accumulate', animationDuration: _reacttheme.tokens.durationSlower, animationTimingFunction: _reacttheme.tokens.curveDecelerateMid, [slideDistanceVarX]: `0px`, [slideDistanceVarY]: `${mainAxis}px`, [`&[${_constants.DATA_POSITIONING_PLACEMENT}^=right]`]: { [slideDistanceVarX]: `-${mainAxis}px`, [slideDistanceVarY]: '0px' }, [`&[${_constants.DATA_POSITIONING_PLACEMENT}^=bottom]`]: { [slideDistanceVarX]: '0px', [slideDistanceVarY]: `-${mainAxis}px` }, [`&[${_constants.DATA_POSITIONING_PLACEMENT}^=left]`]: { [slideDistanceVarX]: `${mainAxis}px`, [slideDistanceVarY]: '0px' }, animationName: [ fadeIn, { from: { transform: `translate(var(${slideDistanceVarX}), var(${slideDistanceVarY}))` }, to: {} } ], // Note: at-rules have more specificity in Griffel '@media(prefers-reduced-motion)': { [`&[${_constants.DATA_POSITIONING_PLACEMENT}]`]: { animationDuration: '1ms', animationName: fadeIn } }, // Tested in Firefox 79 '@supports not (animation-composition: accumulate)': { [`&[${_constants.DATA_POSITIONING_PLACEMENT}]`]: { animationName: fadeIn } } }; }