UNPKG

@viewdo/dxp-story-player-assets

Version:
297 lines (248 loc) 5.81 kB
.video-control-mixins() { .genPlayerStyles(@playerStyles:{ line-height: 0; }) { .ivx-state-video-player { @playerStyles(); } .ivx-video-controls { button { outline: none; } } } ._defaultControlButtons { padding: 0.75em; width: 2.5rem; height: 2.5rem; } ._containerStyles { position: relative; min-height: 4rem; } ._scrubStyle { position: absolute; top: 0; left: 0; } ._timeLapseStyle { height: 100%; } ._playPauseStyle { position: absolute; top: 1rem; left: 5%; ._defaultControlButtons; } ._muteStyle { position: absolute; top: 1rem; right: 5%; ._defaultControlButtons; } ._ccStyle { position: absolute; top: 1rem; right: ~'~"calc(5% + 2rem + .5em)"'; ._defaultControlButtons; } ._currentTimeStyle { position: absolute; left: ~'~"calc(5% + 2rem + 1em)"'; top: 1.625rem; font-size: 0.875em; } ._durationStyle { position: absolute; left: ~'~"calc(5% + 1.75rem + 4.375em)"'; top: 1.625rem; font-size: 0.875em; } ._trackStyle { margin: 0; padding-top: ~'~"calc(2rem + 2.5rem)"'; padding-left: 0; } .createVideoControls(@controlType:default, @containerStyles:{ ._containerStyles; }, @scrubStyle:{ ._scrubStyle; }, @timeLapseStyle:{ ._timeLapseStyle; }, @playPauseStyle:{ ._playPauseStyle; }, @muteStyle:{ ._muteStyle; }, @ccStyle:{ ._ccStyle; }, @currentTimeStyle:{ ._currentTimeStyle; }, @durationStyle:{ ._durationStyle; }, @trackStyle:{ ._trackStyle; }) when (@controlType = default) { .ivx-video-controls { .ivx-video-controls-container { @containerStyles(); .createPlayPauseButton(@playPauseStyle); .createMuteButton(@muteStyle); .createCCButton(@ccStyle); .createScrubBar(@scrubStyle, @timeLapseStyle); .createTimeStamp(@currentTimeStyle, @durationStyle); .createTrackSelect; .createChapterList(@trackStyle); } } } .createVideoControls(@controlType, @containerStyles:{ ._containerStyles; }, @scrubStyle:{ ._scrubStyle; }, @timeLapseStyle:{ ._timeLapseStyle; }, @playPauseStyle:{ ._playPauseStyle; }, @muteStyle:{ ._muteStyle; }, @ccStyle:{ ._ccStyle; }, @currentTimeStyle:{ ._currentTimeStyle; }, @durationStyle:{ ._durationStyle; }, @trackStyle:{ ._trackStyle; }) when not (@controlType = default) { .ivx-video-controls { .ivx-video-controls-container.ivx-video-controls-@{controlType} { @containerStyles(); .createPlayPauseButton(@playPauseStyle); .createMuteButton(@muteStyle); .createCCButton(@ccStyle); .createScrubBar(@scrubStyle, @timeLapseStyle); .createTimeStamp(@currentTimeStyle, @durationStyle); .createTrackSelect; .createChapterList(@trackStyle); } } } .createPlayPauseButton(@playPauseStyle: {}, @playIconContent: "\f04b", @pauseIconContent: "\f04c") { .ivx-video-controls-play-pause { ._defaultButtonStyles; .ivx-color-primary; @playPauseStyle(); } .ivx-video-controls-play-icon { display: inline; &:before { content: @playIconContent; } } .ivx-video-controls-pause-icon { display: inline; &:before { content: @pauseIconContent; } } } .createMuteButton(@muteStyles: {}, @muteIconContent: "\f026", @unmuteIconContent: "\f028") { .ivx-video-controls-mute { ._defaultButtonStyles; .ivx-color-primary; @muteStyles(); } .ivx-video-controls-volume-bar { display: none; } .ivx-video-controls-mute-icon { display: inline; &:before { content: @muteIconContent; } } .ivx-video-controls-unmute-icon { display: inline; &:before { content: @unmuteIconContent; } } } .createCCButton(@ccStyle: {}, @ccIcon: "\f20a") { .ivx-video-controls-tracks-toggle { ._defaultButtonStyles; @ccStyle(); } .ivx-video-controls-tracks-on { .ivx-color-primary; } .ivx-video-controls-tracks-off { .ivx-color-secondary; } .ivx-video-controls-tracks-toggle-icon { display: inline; &:before { content: @ccIcon; } } } .createScrubBar(@scrubStyle: {}, @timeLapseStyle: {}) { .ivx-video-controls-scrub-bar { width: 100%; height: 0.75rem; .ivx-color-secondary; @scrubStyle(); .ivx-video-controls-scrub-bar-timelapse { .ivx-color-primary; @timeLapseStyle(); } } } .createTimeStamp(@currentTimeStyle: {}, @durationStyle: {}) { .ivx-video-controls-timestamp-current-time { @currentTimeStyle(); } .ivx-video-controls-timestamp-duration { @durationStyle(); } } .createTrackSelect() { .ivx-video-controls-tracks-select { ._defaultOptionsInputStyles; } .ivx-video-controls-tracks-select-off { display: none; } } .createChapterList(@chapterStyle: {}) { .ivx-video-controls-chapters { list-style: none; @chapterStyle(); .ivx-video-controls-chapters-item-control { ._defaultButtonStyles; width: 100%; } } } }