@videojs/html 10.0.0-beta.7 → 10.0.0-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/cdn/audio-minimal.js +1 -1
  2. package/cdn/audio-minimal.js.map +1 -1
  3. package/cdn/audio.js +1 -1
  4. package/cdn/audio.js.map +1 -1
  5. package/cdn/background.dev.js +13 -0
  6. package/cdn/background.dev.js.map +1 -1
  7. package/cdn/background.js +1 -1
  8. package/cdn/background.js.map +1 -1
  9. package/cdn/video-minimal.js +1 -1
  10. package/cdn/video-minimal.js.map +1 -1
  11. package/cdn/video.js +1 -1
  12. package/cdn/video.js.map +1 -1
  13. package/dist/default/_virtual/inline-css_src/define/background/skin.js +6 -0
  14. package/dist/default/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  15. package/dist/default/define/audio/minimal-skin.js +1 -1
  16. package/dist/default/define/audio/minimal-skin.js.map +1 -1
  17. package/dist/default/define/audio/minimal-skin.tailwind.js +1 -1
  18. package/dist/default/define/audio/minimal-skin.tailwind.js.map +1 -1
  19. package/dist/default/define/audio/skin.js +1 -1
  20. package/dist/default/define/audio/skin.js.map +1 -1
  21. package/dist/default/define/audio/skin.tailwind.js +1 -1
  22. package/dist/default/define/audio/skin.tailwind.js.map +1 -1
  23. package/dist/default/define/background/skin.js +10 -0
  24. package/dist/default/define/background/skin.js.map +1 -1
  25. package/dist/default/define/video/minimal-skin.js +1 -1
  26. package/dist/default/define/video/minimal-skin.js.map +1 -1
  27. package/dist/default/define/video/minimal-skin.tailwind.js +1 -1
  28. package/dist/default/define/video/minimal-skin.tailwind.js.map +1 -1
  29. package/dist/default/define/video/skin.js +1 -1
  30. package/dist/default/define/video/skin.js.map +1 -1
  31. package/dist/default/define/video/skin.tailwind.js +1 -1
  32. package/dist/default/define/video/skin.tailwind.js.map +1 -1
  33. package/dist/dev/_virtual/inline-css_src/define/background/skin.js +6 -0
  34. package/dist/dev/_virtual/inline-css_src/define/background/skin.js.map +1 -0
  35. package/dist/dev/define/background/skin.d.ts.map +1 -1
  36. package/dist/dev/define/background/skin.js +10 -0
  37. package/dist/dev/define/background/skin.js.map +1 -1
  38. package/package.json +9 -9
  39. package/cdn/audio-minimal.css +0 -1
  40. package/cdn/audio.css +0 -1
  41. package/cdn/background.css +0 -1
  42. package/cdn/video-minimal.css +0 -1
  43. package/cdn/video.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"skin.js","names":[],"sources":["../../../../src/define/video/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport { createStyles, SkinMixin } from '../skin-mixin';\nimport styles from './skin.css?inline';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/buffering-indicator';\nimport '../ui/captions-button';\nimport '../ui/controls';\nimport '../ui/fullscreen-button';\nimport '../ui/mute-button';\nimport '../ui/pip-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/poster';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--video\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-poster>\n <slot name=\"poster\"></slot>\n </media-poster>\n\n <media-buffering-indicator class=\"media-buffering-indicator\">\n <div class=\"media-surface\">\n ${renderIcon('spinner', { class: 'media-icon' })}\n </div>\n </media-buffering-indicator>\n\n <media-controls class=\"media-surface media-controls\">\n <media-tooltip-group>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button media-button--icon media-button--play\">\n ${renderIcon('restart', { class: 'media-icon media-icon--restart' })}\n ${renderIcon('play', { class: 'media-icon media-icon--play' })}\n ${renderIcon('pause', { class: 'media-icon media-icon--pause' })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--replay\">Replay</span>\n <span class=\"media-tooltip-label media-tooltip-label--play\">Play</span>\n <span class=\"media-tooltip-label media-tooltip-label--pause\">Pause</span>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--flipped' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"media-time\">\n <media-time type=\"current\" class=\"media-time__value\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n\n <div class=\"media-surface media-preview media-slider__preview\">\n <media-slider-thumbnail class=\"media-preview__thumbnail\"></media-slider-thumbnail>\n <media-slider-value type=\"pointer\" class=\"media-preview__timestamp\"></media-slider-value>\n ${renderIcon('spinner', { class: 'media-preview__spinner media-icon' })}\n </div>\n </media-time-slider>\n <media-time type=\"duration\" class=\"media-time__value\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"media-button media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"video-volume-popover\" class=\"media-button media-button--icon media-button--mute\">\n ${renderIcon('volume-off', { class: 'media-icon media-icon--volume-off' })}\n ${renderIcon('volume-low', { class: 'media-icon media-icon--volume-low' })}\n ${renderIcon('volume-high', { class: 'media-icon media-icon--volume-high' })}\n </media-mute-button>\n\n <media-popover id=\"video-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"media-surface media-popover media-popover--volume\">\n <media-volume-slider class=\"media-slider\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb media-slider__thumb--persistent\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n\n <media-captions-button commandfor=\"captions-tooltip\" class=\"media-button media-button--icon media-button--captions\">\n ${renderIcon('captions-off', { class: 'media-icon media-icon--captions-off' })}\n ${renderIcon('captions-on', { class: 'media-icon media-icon--captions-on' })}\n </media-captions-button>\n <media-tooltip id=\"captions-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enable-captions\">Enable captions</span>\n <span class=\"media-tooltip-label media-tooltip-label--disable-captions\">Disable captions</span>\n </media-tooltip>\n\n <media-pip-button commandfor=\"pip-tooltip\" class=\"media-button media-button--icon media-button--pip\">\n ${renderIcon('pip-enter', { class: 'media-icon media-icon--pip-enter' })}\n ${renderIcon('pip-exit', { class: 'media-icon media-icon--pip-exit' })}\n </media-pip-button>\n <media-tooltip id=\"pip-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enter-pip\">Enter picture-in-picture</span>\n <span class=\"media-tooltip-label media-tooltip-label--exit-pip\">Exit picture-in-picture</span>\n </media-tooltip>\n\n <media-fullscreen-button commandfor=\"fullscreen-tooltip\" class=\"media-button media-button--icon media-button--fullscreen\">\n ${renderIcon('fullscreen-enter', { class: 'media-icon media-icon--fullscreen-enter' })}\n ${renderIcon('fullscreen-exit', { class: 'media-icon media-icon--fullscreen-exit' })}\n </media-fullscreen-button>\n <media-tooltip id=\"fullscreen-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enter-fullscreen\">Enter fullscreen</span>\n <span class=\"media-tooltip-label media-tooltip-label--exit-fullscreen\">Exit fullscreen</span>\n </media-tooltip>\n </media-tooltip-group>\n </media-controls>\n\n <div class=\"media-overlay\"></div>\n </media-container>\n `;\n}\n\nexport class VideoSkinElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'video-skin';\n static styles = createStyles(styles);\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(VideoSkinElement.tagName, VideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoSkinElement.tagName]: VideoSkinElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB,iQAAA,WAAA,WAAA,EAAA,OAAA,cAAA,CAAA,CAAA,wNAAA,WAAA,WAAA,EAAA,OAAA,kCAAA,CAAA,CAAA,GAAA,WAAA,QAAA,EAAA,OAAA,+BAAA,CAAA,CAAA,GAAA,WAAA,SAAA,EAAA,OAAA,gCAAA,CAAA,CAAA,iZAAA,CAAA,UAAA,oGAAA,WAAA,QAAA,EAAA,OAAA,kCAAA,CAAA,CAAA,mCAAA,UAAA,4IAAA,UAAA,yFAAA,UAAA,oGAAA,WAAA,QAAA,EAAA,OAAA,cAAA,CAAA,CAAA,mCAAA,UAAA,0IAAA,UAAA,yqBAAA,WAAA,WAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,mgBAAA,WAAA,cAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,GAAA,WAAA,cAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,GAAA,WAAA,eAAA,EAAA,OAAA,sCAAA,CAAA,CAAA,gpBAAA,WAAA,gBAAA,EAAA,OAAA,uCAAA,CAAA,CAAA,GAAA,WAAA,eAAA,EAAA,OAAA,sCAAA,CAAA,CAAA,iaAAA,WAAA,aAAA,EAAA,OAAA,oCAAA,CAAA,CAAA,GAAA,WAAA,YAAA,EAAA,OAAA,mCAAA,CAAA,CAAA,8aAAA,WAAA,oBAAA,EAAA,OAAA,2CAAA,CAAA,CAAA,GAAA,WAAA,mBAAA,EAAA,OAAA,0CAAA,CAAA,CAAA;;AAGlB,IAAY,mBAAZ,cAA+B,UAAA,gBAAA,CAAA;;iBACb;;;;;;yBAEC"}
1
+ {"version":3,"file":"skin.js","names":[],"sources":["../../../../src/define/video/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport { createStyles, SkinMixin } from '../skin-mixin';\nimport styles from './skin.css?inline';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/buffering-indicator';\nimport '../ui/captions-button';\nimport '../ui/controls';\nimport '../ui/fullscreen-button';\nimport '../ui/mute-button';\nimport '../ui/pip-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/poster';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"media-default-skin media-default-skin--video\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-poster>\n <slot name=\"poster\"></slot>\n </media-poster>\n\n <media-buffering-indicator class=\"media-buffering-indicator\">\n <div class=\"media-surface\">\n ${renderIcon('spinner', { class: 'media-icon' })}\n </div>\n </media-buffering-indicator>\n\n <media-controls class=\"media-surface media-controls\">\n <media-tooltip-group>\n <media-play-button commandfor=\"play-tooltip\" class=\"media-button media-button--icon media-button--play\">\n ${renderIcon('restart', { class: 'media-icon media-icon--restart' })}\n ${renderIcon('play', { class: 'media-icon media-icon--play' })}\n ${renderIcon('pause', { class: 'media-icon media-icon--pause' })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--replay\">Replay</span>\n <span class=\"media-tooltip-label media-tooltip-label--play\">Play</span>\n <span class=\"media-tooltip-label media-tooltip-label--pause\">Pause</span>\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"media-button media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon media-icon--flipped' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"media-button media-button--icon media-button--seek\">\n <span class=\"media-icon__container\">\n ${renderIcon('seek', { class: 'media-icon' })}\n <span class=\"media-icon__label\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"media-time\">\n <media-time type=\"current\" class=\"media-time__value\"></media-time>\n <media-time-slider class=\"media-slider\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n <media-slider-buffer class=\"media-slider__buffer\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb\"></media-slider-thumb>\n\n <div class=\"media-surface media-preview media-slider__preview\">\n <media-slider-thumbnail class=\"media-preview__thumbnail\"></media-slider-thumbnail>\n <media-slider-value type=\"pointer\" class=\"media-preview__timestamp\"></media-slider-value>\n ${renderIcon('spinner', { class: 'media-preview__spinner media-icon' })}\n </div>\n </media-time-slider>\n <media-time type=\"duration\" class=\"media-time__value\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"media-button media-button--icon media-button--playback-rate\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"video-volume-popover\" class=\"media-button media-button--icon media-button--mute\">\n ${renderIcon('volume-off', { class: 'media-icon media-icon--volume-off' })}\n ${renderIcon('volume-low', { class: 'media-icon media-icon--volume-low' })}\n ${renderIcon('volume-high', { class: 'media-icon media-icon--volume-high' })}\n </media-mute-button>\n\n <media-popover id=\"video-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"media-surface media-popover media-popover--volume\">\n <media-volume-slider class=\"media-slider\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"media-slider__track\">\n <media-slider-fill class=\"media-slider__fill\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"media-slider__thumb media-slider__thumb--persistent\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n\n <media-captions-button commandfor=\"captions-tooltip\" class=\"media-button media-button--icon media-button--captions\">\n ${renderIcon('captions-off', { class: 'media-icon media-icon--captions-off' })}\n ${renderIcon('captions-on', { class: 'media-icon media-icon--captions-on' })}\n </media-captions-button>\n <media-tooltip id=\"captions-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enable-captions\">Enable captions</span>\n <span class=\"media-tooltip-label media-tooltip-label--disable-captions\">Disable captions</span>\n </media-tooltip>\n\n <media-pip-button commandfor=\"pip-tooltip\" class=\"media-button media-button--icon media-button--pip\">\n ${renderIcon('pip-enter', { class: 'media-icon media-icon--pip-enter' })}\n ${renderIcon('pip-exit', { class: 'media-icon media-icon--pip-exit' })}\n </media-pip-button>\n <media-tooltip id=\"pip-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enter-pip\">Enter picture-in-picture</span>\n <span class=\"media-tooltip-label media-tooltip-label--exit-pip\">Exit picture-in-picture</span>\n </media-tooltip>\n\n <media-fullscreen-button commandfor=\"fullscreen-tooltip\" class=\"media-button media-button--icon media-button--fullscreen\">\n ${renderIcon('fullscreen-enter', { class: 'media-icon media-icon--fullscreen-enter' })}\n ${renderIcon('fullscreen-exit', { class: 'media-icon media-icon--fullscreen-exit' })}\n </media-fullscreen-button>\n <media-tooltip id=\"fullscreen-tooltip\" side=\"top\" class=\"media-surface media-tooltip\">\n <span class=\"media-tooltip-label media-tooltip-label--enter-fullscreen\">Enter fullscreen</span>\n <span class=\"media-tooltip-label media-tooltip-label--exit-fullscreen\">Exit fullscreen</span>\n </media-tooltip>\n </media-tooltip-group>\n </media-controls>\n\n <div class=\"media-overlay\"></div>\n </media-container>\n `;\n}\n\nexport class VideoSkinElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'video-skin';\n static styles = createStyles(styles);\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(VideoSkinElement.tagName, VideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoSkinElement.tagName]: VideoSkinElement;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,YAAY;AAElB,SAAS,kBAAkB;AACzB,QAAgB,iQAAA,WAAA,WAAA,EAAA,OAAA,cAAA,CAAA,CAAA,wNAAA,WAAA,WAAA,EAAA,OAAA,kCAAA,CAAA,CAAA,GAAA,WAAA,QAAA,EAAA,OAAA,+BAAA,CAAA,CAAA,GAAA,WAAA,SAAA,EAAA,OAAA,gCAAA,CAAA,CAAA,iZAAA,CAAA,UAAA,qGAAA,WAAA,QAAA,EAAA,OAAA,kCAAA,CAAA,CAAA,mCAAA,UAAA,4IAAA,UAAA,yFAAA,UAAA,qGAAA,WAAA,QAAA,EAAA,OAAA,cAAA,CAAA,CAAA,mCAAA,UAAA,0IAAA,UAAA,yqBAAA,WAAA,WAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,mgBAAA,WAAA,cAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,GAAA,WAAA,cAAA,EAAA,OAAA,qCAAA,CAAA,CAAA,GAAA,WAAA,eAAA,EAAA,OAAA,sCAAA,CAAA,CAAA,gpBAAA,WAAA,gBAAA,EAAA,OAAA,uCAAA,CAAA,CAAA,GAAA,WAAA,eAAA,EAAA,OAAA,sCAAA,CAAA,CAAA,iaAAA,WAAA,aAAA,EAAA,OAAA,oCAAA,CAAA,CAAA,GAAA,WAAA,YAAA,EAAA,OAAA,mCAAA,CAAA,CAAA,8aAAA,WAAA,oBAAA,EAAA,OAAA,2CAAA,CAAA,CAAA,GAAA,WAAA,mBAAA,EAAA,OAAA,0CAAA,CAAA,CAAA;;AAGlB,IAAY,mBAAZ,cAA+B,UAAA,gBAAA,CAAA;;iBACb;;;;;;yBAEC"}
@@ -33,7 +33,7 @@ import { cn } from "@videojs/utils/style";
33
33
  //#region src/define/video/skin.tailwind.ts
34
34
  const SEEK_TIME = 10;
35
35
  function getTemplateHTML() {
36
- return `<media-container class="${root(true)}"><slot name="media"></slot><slot></slot><media-poster class="${poster(true)}"><slot name="poster"></slot></media-poster><media-buffering-indicator class="${bufferingIndicator.root}"><div class="${bufferingIndicator.container}"> ${renderIcon("spinner")} </div></media-buffering-indicator><media-controls data-controls="" class="${controls}"><media-tooltip-group><span class="${tooltipState.play.wrapper}"><media-play-button commandfor="play-tooltip" class="${cn(button.base, button.icon, iconState.play.button)}"> ${renderIcon("restart", { class: cn(icon, iconState.play.restart) })} ${renderIcon("play", { class: cn(icon, iconState.play.play) })} ${renderIcon("pause", { class: cn(icon, iconState.play.pause) })} </media-play-button><media-tooltip id="play-tooltip" side="top" class="${cn(popup.tooltip)}"><span class="${tooltipState.play.replay}">Replay</span><span class="${tooltipState.play.play}">Play</span><span class="${tooltipState.play.pause}">Pause</span></media-tooltip></span><media-seek-button commandfor="seek-backward-tooltip" seconds="${-SEEK_TIME}" class="${cn(button.base, button.icon, seek.button)}"><span class="${iconContainer}"> ${renderIcon("seek", { class: cn(icon, iconFlipped) })} <span class="${cn(seek.label, seek.labelBackward)}">${SEEK_TIME}</span></span></media-seek-button><media-tooltip id="seek-backward-tooltip" side="top" class="${cn(popup.tooltip)}"> Seek backward ${SEEK_TIME} seconds </media-tooltip><media-seek-button commandfor="seek-forward-tooltip" seconds="${SEEK_TIME}" class="${cn(button.base, button.icon, seek.button)}"><span class="${iconContainer}"> ${renderIcon("seek", { class: icon })} <span class="${cn(seek.label, seek.labelForward)}">${SEEK_TIME}</span></span></media-seek-button><media-tooltip id="seek-forward-tooltip" side="top" class="${cn(popup.tooltip)}"> Seek forward ${SEEK_TIME} seconds </media-tooltip><media-time-group class="${time.group}"><media-time type="current" class="${time.current}"></media-time><media-time-slider class="${slider.root}"><media-slider-track class="${slider.track}"><media-slider-fill class="${cn(slider.fill.base, slider.fill.fill)}"></media-slider-fill><media-slider-buffer class="${cn(slider.fill.base, slider.fill.buffer)}"></media-slider-buffer></media-slider-track><media-slider-thumb class="${cn(slider.thumb.base, slider.thumb.interactive)}"></media-slider-thumb><div class="${preview.root}"><media-slider-thumbnail class="${preview.thumbnail}"></media-slider-thumbnail><media-slider-value type="pointer" class="${preview.timestamp}"></media-slider-value> ${renderIcon("spinner", { class: cn(icon, preview.spinner) })} </div></media-time-slider><media-time type="duration" class="${time.duration}"></media-time></media-time-group><media-playback-rate-button commandfor="playback-rate-tooltip" class="${cn(button.base, button.icon, playbackRate.button)}"></media-playback-rate-button><media-tooltip id="playback-rate-tooltip" side="top" class="${cn(popup.tooltip)}"> Toggle playback rate </media-tooltip><media-mute-button commandfor="video-volume-popover" class="${cn(button.base, button.icon, iconState.mute.button)}"> ${renderIcon("volume-off", { class: cn(icon, iconState.mute.volumeOff) })} ${renderIcon("volume-low", { class: cn(icon, iconState.mute.volumeLow) })} ${renderIcon("volume-high", { class: cn(icon, iconState.mute.volumeHigh) })} </media-mute-button><media-popover id="video-volume-popover" open-on-hover delay="200" close-delay="100" side="top" class="${cn(popup.popover, popup.volume)}"><media-volume-slider class="${slider.root}" orientation="vertical" thumb-alignment="edge"><media-slider-track class="${slider.track}"><media-slider-fill class="${cn(slider.fill.base, slider.fill.fill)}"></media-slider-fill></media-slider-track><media-slider-thumb class="${cn(slider.thumb.base, slider.thumb.persistent)}"></media-slider-thumb></media-volume-slider></media-popover><span class="${tooltipState.captions.wrapper}"><media-captions-button commandfor="captions-tooltip" class="${cn(button.base, button.icon, iconState.captions.button)}"> ${renderIcon("captions-off", { class: cn(icon, iconState.captions.off) })} ${renderIcon("captions-on", { class: cn(icon, iconState.captions.on) })} </media-captions-button><media-tooltip id="captions-tooltip" side="top" class="${cn(popup.tooltip)}"><span class="${tooltipState.captions.enable}">Enable captions</span><span class="${tooltipState.captions.disable}">Disable captions</span></media-tooltip></span><span class="${tooltipState.pip.wrapper}"><media-pip-button commandfor="pip-tooltip" class="${cn(button.base, button.icon, iconState.pip.button)}"> ${renderIcon("pip-enter", { class: cn(icon, iconState.pip.off) })} ${renderIcon("pip-exit", { class: cn(icon, iconState.pip.on) })} </media-pip-button><media-tooltip id="pip-tooltip" side="top" class="${cn(popup.tooltip)}"><span class="${tooltipState.pip.enter}">Enter picture-in-picture</span><span class="${tooltipState.pip.exit}">Exit picture-in-picture</span></media-tooltip></span><span class="${tooltipState.fullscreen.wrapper}"><media-fullscreen-button commandfor="fullscreen-tooltip" class="${cn(button.base, button.icon, iconState.fullscreen.button)}"> ${renderIcon("fullscreen-enter", { class: cn(icon, iconState.fullscreen.enter) })} ${renderIcon("fullscreen-exit", { class: cn(icon, iconState.fullscreen.exit) })} </media-fullscreen-button><media-tooltip id="fullscreen-tooltip" side="top" class="${cn(popup.tooltip)}"><span class="${tooltipState.fullscreen.enter}">Enter fullscreen</span><span class="${tooltipState.fullscreen.exit}">Exit fullscreen</span></media-tooltip></span></media-tooltip-group></media-controls><div class="${overlay}"></div></media-container>`;
36
+ return `<media-container class="${root(true)}"> <slot name="media"></slot><slot></slot><media-poster class="${poster(true)}"> <slot name="poster"></slot></media-poster><media-buffering-indicator class="${bufferingIndicator.root}"> <div class="${bufferingIndicator.container}"> ${renderIcon("spinner")} </div></media-buffering-indicator><media-controls data-controls="" class="${controls}"> <media-tooltip-group><span class="${tooltipState.play.wrapper}"> <media-play-button commandfor="play-tooltip" class="${cn(button.base, button.icon, iconState.play.button)}"> ${renderIcon("restart", { class: cn(icon, iconState.play.restart) })} ${renderIcon("play", { class: cn(icon, iconState.play.play) })} ${renderIcon("pause", { class: cn(icon, iconState.play.pause) })} </media-play-button><media-tooltip id="play-tooltip" side="top" class="${cn(popup.tooltip)}"> <span class="${tooltipState.play.replay}">Replay</span><span class="${tooltipState.play.play}">Play</span><span class="${tooltipState.play.pause}">Pause</span></media-tooltip></span><media-seek-button commandfor="seek-backward-tooltip" seconds="${-SEEK_TIME}" class="${cn(button.base, button.icon, seek.button)}"> <span class="${iconContainer}"> ${renderIcon("seek", { class: cn(icon, iconFlipped) })} <span class="${cn(seek.label, seek.labelBackward)}">${SEEK_TIME}</span></span></media-seek-button><media-tooltip id="seek-backward-tooltip" side="top" class="${cn(popup.tooltip)}"> Seek backward ${SEEK_TIME} seconds </media-tooltip><media-seek-button commandfor="seek-forward-tooltip" seconds="${SEEK_TIME}" class="${cn(button.base, button.icon, seek.button)}"> <span class="${iconContainer}"> ${renderIcon("seek", { class: icon })} <span class="${cn(seek.label, seek.labelForward)}">${SEEK_TIME}</span></span></media-seek-button><media-tooltip id="seek-forward-tooltip" side="top" class="${cn(popup.tooltip)}"> Seek forward ${SEEK_TIME} seconds </media-tooltip><media-time-group class="${time.group}"> <media-time type="current" class="${time.current}"></media-time><media-time-slider class="${slider.root}"> <media-slider-track class="${slider.track}"> <media-slider-fill class="${cn(slider.fill.base, slider.fill.fill)}"></media-slider-fill><media-slider-buffer class="${cn(slider.fill.base, slider.fill.buffer)}"></media-slider-buffer></media-slider-track><media-slider-thumb class="${cn(slider.thumb.base, slider.thumb.interactive)}"></media-slider-thumb><div class="${preview.root}"> <media-slider-thumbnail class="${preview.thumbnail}"></media-slider-thumbnail><media-slider-value type="pointer" class="${preview.timestamp}"></media-slider-value> ${renderIcon("spinner", { class: cn(icon, preview.spinner) })} </div></media-time-slider><media-time type="duration" class="${time.duration}"></media-time></media-time-group><media-playback-rate-button commandfor="playback-rate-tooltip" class="${cn(button.base, button.icon, playbackRate.button)}"></media-playback-rate-button><media-tooltip id="playback-rate-tooltip" side="top" class="${cn(popup.tooltip)}"> Toggle playback rate </media-tooltip><media-mute-button commandfor="video-volume-popover" class="${cn(button.base, button.icon, iconState.mute.button)}"> ${renderIcon("volume-off", { class: cn(icon, iconState.mute.volumeOff) })} ${renderIcon("volume-low", { class: cn(icon, iconState.mute.volumeLow) })} ${renderIcon("volume-high", { class: cn(icon, iconState.mute.volumeHigh) })} </media-mute-button><media-popover id="video-volume-popover" open-on-hover delay="200" close-delay="100" side="top" class="${cn(popup.popover, popup.volume)}"> <media-volume-slider class="${slider.root}" orientation="vertical" thumb-alignment="edge"> <media-slider-track class="${slider.track}"> <media-slider-fill class="${cn(slider.fill.base, slider.fill.fill)}"></media-slider-fill></media-slider-track><media-slider-thumb class="${cn(slider.thumb.base, slider.thumb.persistent)}"></media-slider-thumb></media-volume-slider></media-popover><span class="${tooltipState.captions.wrapper}"> <media-captions-button commandfor="captions-tooltip" class="${cn(button.base, button.icon, iconState.captions.button)}"> ${renderIcon("captions-off", { class: cn(icon, iconState.captions.off) })} ${renderIcon("captions-on", { class: cn(icon, iconState.captions.on) })} </media-captions-button><media-tooltip id="captions-tooltip" side="top" class="${cn(popup.tooltip)}"> <span class="${tooltipState.captions.enable}">Enable captions</span><span class="${tooltipState.captions.disable}">Disable captions</span></media-tooltip></span><span class="${tooltipState.pip.wrapper}"> <media-pip-button commandfor="pip-tooltip" class="${cn(button.base, button.icon, iconState.pip.button)}"> ${renderIcon("pip-enter", { class: cn(icon, iconState.pip.off) })} ${renderIcon("pip-exit", { class: cn(icon, iconState.pip.on) })} </media-pip-button><media-tooltip id="pip-tooltip" side="top" class="${cn(popup.tooltip)}"> <span class="${tooltipState.pip.enter}">Enter picture-in-picture</span><span class="${tooltipState.pip.exit}">Exit picture-in-picture</span></media-tooltip></span><span class="${tooltipState.fullscreen.wrapper}"> <media-fullscreen-button commandfor="fullscreen-tooltip" class="${cn(button.base, button.icon, iconState.fullscreen.button)}"> ${renderIcon("fullscreen-enter", { class: cn(icon, iconState.fullscreen.enter) })} ${renderIcon("fullscreen-exit", { class: cn(icon, iconState.fullscreen.exit) })} </media-fullscreen-button><media-tooltip id="fullscreen-tooltip" side="top" class="${cn(popup.tooltip)}"> <span class="${tooltipState.fullscreen.enter}">Enter fullscreen</span><span class="${tooltipState.fullscreen.exit}">Exit fullscreen</span></media-tooltip></span></media-tooltip-group></media-controls><div class="${overlay}"></div></media-container>`;
37
37
  }
38
38
  var VideoSkinTailwindElement = class extends SkinMixin(ReactiveElement) {
39
39
  static {
@@ -1 +1 @@
1
- {"version":3,"file":"skin.tailwind.js","names":[],"sources":["../../../../src/define/video/skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport {\n bufferingIndicator,\n button,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n overlay,\n playbackRate,\n popup,\n poster,\n preview,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/default/tailwind/video.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/buffering-indicator';\nimport '../ui/captions-button';\nimport '../ui/controls';\nimport '../ui/fullscreen-button';\nimport '../ui/mute-button';\nimport '../ui/pip-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/poster';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root(true)}\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-poster class=\"${poster(true)}\">\n <slot name=\"poster\"></slot>\n </media-poster>\n\n <media-buffering-indicator class=\"${bufferingIndicator.root}\">\n <div class=\"${bufferingIndicator.container}\">\n ${renderIcon('spinner')}\n </div>\n </media-buffering-indicator>\n\n <media-controls data-controls=\"\" class=\"${controls}\">\n <media-tooltip-group>\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n\n <div class=\"${preview.root}\">\n <media-slider-thumbnail class=\"${preview.thumbnail}\"></media-slider-thumbnail>\n <media-slider-value type=\"pointer\" class=\"${preview.timestamp}\"></media-slider-value>\n ${renderIcon('spinner', { class: cn(icon, preview.spinner) })}\n </div>\n </media-time-slider>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"video-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"video-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"${cn(popup.popover, popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.persistent)}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n\n <span class=\"${tooltipState.captions.wrapper}\">\n <media-captions-button commandfor=\"captions-tooltip\" class=\"${cn(button.base, button.icon, iconState.captions.button)}\">\n ${renderIcon('captions-off', { class: cn(icon, iconState.captions.off) })}\n ${renderIcon('captions-on', { class: cn(icon, iconState.captions.on) })}\n </media-captions-button>\n <media-tooltip id=\"captions-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.captions.enable}\">Enable captions</span>\n <span class=\"${tooltipState.captions.disable}\">Disable captions</span>\n </media-tooltip>\n </span>\n\n <span class=\"${tooltipState.pip.wrapper}\">\n <media-pip-button commandfor=\"pip-tooltip\" class=\"${cn(button.base, button.icon, iconState.pip.button)}\">\n ${renderIcon('pip-enter', { class: cn(icon, iconState.pip.off) })}\n ${renderIcon('pip-exit', { class: cn(icon, iconState.pip.on) })}\n </media-pip-button>\n <media-tooltip id=\"pip-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.pip.enter}\">Enter picture-in-picture</span>\n <span class=\"${tooltipState.pip.exit}\">Exit picture-in-picture</span>\n </media-tooltip>\n </span>\n\n <span class=\"${tooltipState.fullscreen.wrapper}\">\n <media-fullscreen-button commandfor=\"fullscreen-tooltip\" class=\"${cn(button.base, button.icon, iconState.fullscreen.button)}\">\n ${renderIcon('fullscreen-enter', { class: cn(icon, iconState.fullscreen.enter) })}\n ${renderIcon('fullscreen-exit', { class: cn(icon, iconState.fullscreen.exit) })}\n </media-fullscreen-button>\n <media-tooltip id=\"fullscreen-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.fullscreen.enter}\">Enter fullscreen</span>\n <span class=\"${tooltipState.fullscreen.exit}\">Exit fullscreen</span>\n </media-tooltip>\n </span>\n </media-tooltip-group>\n </media-controls>\n\n <div class=\"${overlay}\"></div>\n </media-container>\n `;\n}\n\nexport class VideoSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'video-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(VideoSkinTailwindElement.tagName, VideoSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoSkinTailwindElement.tagName]: VideoSkinTailwindElement;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"skin.tailwind.js","names":[],"sources":["../../../../src/define/video/skin.tailwind.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { renderIcon } from '@videojs/icons/render';\nimport {\n bufferingIndicator,\n button,\n controls,\n icon,\n iconContainer,\n iconFlipped,\n iconState,\n overlay,\n playbackRate,\n popup,\n poster,\n preview,\n root,\n seek,\n slider,\n time,\n tooltipState,\n} from '@videojs/skins/default/tailwind/video.tailwind';\nimport { cn } from '@videojs/utils/style';\nimport { SkinMixin } from '../skin-mixin';\n\n// Side-effect imports: register all custom elements used in the template.\nimport '../media/container';\nimport '../ui/buffering-indicator';\nimport '../ui/captions-button';\nimport '../ui/controls';\nimport '../ui/fullscreen-button';\nimport '../ui/mute-button';\nimport '../ui/pip-button';\nimport '../ui/play-button';\nimport '../ui/playback-rate-button';\nimport '../ui/popover';\nimport '../ui/poster';\nimport '../ui/seek-button';\nimport '../ui/time';\nimport '../ui/time-slider';\nimport '../ui/tooltip';\nimport '../ui/tooltip-group';\nimport '../ui/volume-slider';\n\nconst SEEK_TIME = 10;\n\nfunction getTemplateHTML() {\n return /*html*/ `\n <media-container class=\"${root(true)}\">\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n\n <media-poster class=\"${poster(true)}\">\n <slot name=\"poster\"></slot>\n </media-poster>\n\n <media-buffering-indicator class=\"${bufferingIndicator.root}\">\n <div class=\"${bufferingIndicator.container}\">\n ${renderIcon('spinner')}\n </div>\n </media-buffering-indicator>\n\n <media-controls data-controls=\"\" class=\"${controls}\">\n <media-tooltip-group>\n <span class=\"${tooltipState.play.wrapper}\">\n <media-play-button commandfor=\"play-tooltip\" class=\"${cn(button.base, button.icon, iconState.play.button)}\">\n ${renderIcon('restart', { class: cn(icon, iconState.play.restart) })}\n ${renderIcon('play', { class: cn(icon, iconState.play.play) })}\n ${renderIcon('pause', { class: cn(icon, iconState.play.pause) })}\n </media-play-button>\n <media-tooltip id=\"play-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.play.replay}\">Replay</span>\n <span class=\"${tooltipState.play.play}\">Play</span>\n <span class=\"${tooltipState.play.pause}\">Pause</span>\n </media-tooltip>\n </span>\n\n <media-seek-button commandfor=\"seek-backward-tooltip\" seconds=\"${-SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: cn(icon, iconFlipped) })}\n <span class=\"${cn(seek.label, seek.labelBackward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-backward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek backward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-seek-button commandfor=\"seek-forward-tooltip\" seconds=\"${SEEK_TIME}\" class=\"${cn(button.base, button.icon, seek.button)}\">\n <span class=\"${iconContainer}\">\n ${renderIcon('seek', { class: icon })}\n <span class=\"${cn(seek.label, seek.labelForward)}\">${SEEK_TIME}</span>\n </span>\n </media-seek-button>\n <media-tooltip id=\"seek-forward-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Seek forward ${SEEK_TIME} seconds\n </media-tooltip>\n\n <media-time-group class=\"${time.group}\">\n <media-time type=\"current\" class=\"${time.current}\"></media-time>\n <media-time-slider class=\"${slider.root}\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n <media-slider-buffer class=\"${cn(slider.fill.base, slider.fill.buffer)}\"></media-slider-buffer>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.interactive)}\"></media-slider-thumb>\n\n <div class=\"${preview.root}\">\n <media-slider-thumbnail class=\"${preview.thumbnail}\"></media-slider-thumbnail>\n <media-slider-value type=\"pointer\" class=\"${preview.timestamp}\"></media-slider-value>\n ${renderIcon('spinner', { class: cn(icon, preview.spinner) })}\n </div>\n </media-time-slider>\n <media-time type=\"duration\" class=\"${time.duration}\"></media-time>\n </media-time-group>\n\n <media-playback-rate-button commandfor=\"playback-rate-tooltip\" class=\"${cn(button.base, button.icon, playbackRate.button)}\"></media-playback-rate-button>\n <media-tooltip id=\"playback-rate-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n Toggle playback rate\n </media-tooltip>\n\n <media-mute-button commandfor=\"video-volume-popover\" class=\"${cn(button.base, button.icon, iconState.mute.button)}\">\n ${renderIcon('volume-off', { class: cn(icon, iconState.mute.volumeOff) })}\n ${renderIcon('volume-low', { class: cn(icon, iconState.mute.volumeLow) })}\n ${renderIcon('volume-high', { class: cn(icon, iconState.mute.volumeHigh) })}\n </media-mute-button>\n\n <media-popover id=\"video-volume-popover\" open-on-hover delay=\"200\" close-delay=\"100\" side=\"top\" class=\"${cn(popup.popover, popup.volume)}\">\n <media-volume-slider class=\"${slider.root}\" orientation=\"vertical\" thumb-alignment=\"edge\">\n <media-slider-track class=\"${slider.track}\">\n <media-slider-fill class=\"${cn(slider.fill.base, slider.fill.fill)}\"></media-slider-fill>\n </media-slider-track>\n <media-slider-thumb class=\"${cn(slider.thumb.base, slider.thumb.persistent)}\"></media-slider-thumb>\n </media-volume-slider>\n </media-popover>\n\n <span class=\"${tooltipState.captions.wrapper}\">\n <media-captions-button commandfor=\"captions-tooltip\" class=\"${cn(button.base, button.icon, iconState.captions.button)}\">\n ${renderIcon('captions-off', { class: cn(icon, iconState.captions.off) })}\n ${renderIcon('captions-on', { class: cn(icon, iconState.captions.on) })}\n </media-captions-button>\n <media-tooltip id=\"captions-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.captions.enable}\">Enable captions</span>\n <span class=\"${tooltipState.captions.disable}\">Disable captions</span>\n </media-tooltip>\n </span>\n\n <span class=\"${tooltipState.pip.wrapper}\">\n <media-pip-button commandfor=\"pip-tooltip\" class=\"${cn(button.base, button.icon, iconState.pip.button)}\">\n ${renderIcon('pip-enter', { class: cn(icon, iconState.pip.off) })}\n ${renderIcon('pip-exit', { class: cn(icon, iconState.pip.on) })}\n </media-pip-button>\n <media-tooltip id=\"pip-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.pip.enter}\">Enter picture-in-picture</span>\n <span class=\"${tooltipState.pip.exit}\">Exit picture-in-picture</span>\n </media-tooltip>\n </span>\n\n <span class=\"${tooltipState.fullscreen.wrapper}\">\n <media-fullscreen-button commandfor=\"fullscreen-tooltip\" class=\"${cn(button.base, button.icon, iconState.fullscreen.button)}\">\n ${renderIcon('fullscreen-enter', { class: cn(icon, iconState.fullscreen.enter) })}\n ${renderIcon('fullscreen-exit', { class: cn(icon, iconState.fullscreen.exit) })}\n </media-fullscreen-button>\n <media-tooltip id=\"fullscreen-tooltip\" side=\"top\" class=\"${cn(popup.tooltip)}\">\n <span class=\"${tooltipState.fullscreen.enter}\">Enter fullscreen</span>\n <span class=\"${tooltipState.fullscreen.exit}\">Exit fullscreen</span>\n </media-tooltip>\n </span>\n </media-tooltip-group>\n </media-controls>\n\n <div class=\"${overlay}\"></div>\n </media-container>\n `;\n}\n\nexport class VideoSkinTailwindElement extends SkinMixin(ReactiveElement) {\n static readonly tagName = 'video-skin-tailwind';\n static getTemplateHTML = getTemplateHTML;\n}\n\ncustomElements.define(VideoSkinTailwindElement.tagName, VideoSkinTailwindElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [VideoSkinTailwindElement.tagName]: VideoSkinTailwindElement;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ //#region inline-css:src/define/background/skin.js
2
+ var skin_default = "background-video-player {\n display: contents;\n}\n\nbackground-video-skin {\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n --media-object-fit: cover;\n object-fit: var(--media-object-fit);\n}\n\nbackground-video-skin > background-video {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: inherit;\n}\n\nbackground-video-skin > img,\nbackground-video-skin > picture {\n width: 100%;\n height: 100%;\n object-fit: inherit;\n}\n";
3
+
4
+ //#endregion
5
+ export { skin_default as default };
6
+ //# sourceMappingURL=skin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skin.js","names":[],"sources":["../../../../../../inline-css:src/define/background/skin.js"],"sourcesContent":["export default \"background-video-player {\\n display: contents;\\n}\\n\\nbackground-video-skin {\\n display: block;\\n position: relative;\\n width: 100%;\\n height: 100%;\\n --media-object-fit: cover;\\n object-fit: var(--media-object-fit);\\n}\\n\\nbackground-video-skin > background-video {\\n position: absolute;\\n inset: 0;\\n width: 100%;\\n height: 100%;\\n object-fit: inherit;\\n}\\n\\nbackground-video-skin > img,\\nbackground-video-skin > picture {\\n width: 100%;\\n height: 100%;\\n object-fit: inherit;\\n}\\n\";"],"mappings":";AAAA,mBAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/background/skin.ts"],"mappings":";;;iBAIS,eAAA,CAAgB,MAAA,EAAQ,MAAA;AAAA,cAUpB,0BAAA,SAAmC,eAAA;EAAA,gBAC9B,OAAA;EAAA,OACT,iBAAA;UAAsC,cAAA;EAAA;EAAA,OACtC,eAAA,SAAe,eAAA;;;QAchB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,0BAAA,CAA2B,OAAA,GAAU,0BAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"skin.d.ts","names":[],"sources":["../../../../src/define/background/skin.ts"],"mappings":";;;iBAeS,eAAA,CAAgB,MAAA,EAAQ,MAAA;AAAA,cAUpB,0BAAA,SAAmC,eAAA;EAAA,gBAC9B,OAAA;EAAA,OACT,iBAAA;UAAsC,cAAA;EAAA;EAAA,OACtC,eAAA,SAAe,eAAA;;;QAgBhB,MAAA;EAAA,UACI,qBAAA;IAAA,CACP,0BAAA,CAA2B,OAAA,GAAU,0BAAA;EAAA;AAAA"}
@@ -1,8 +1,17 @@
1
1
  import { safeDefine } from "../safe-define.js";
2
+ import skin_default from "../../_virtual/inline-css_src/define/background/skin.js";
2
3
  import { ReactiveElement } from "@videojs/element";
3
4
  import { namedNodeMapToObject } from "@videojs/utils/dom";
4
5
 
5
6
  //#region src/define/background/skin.ts
7
+ const STYLES_ID = "__media-background-styles";
8
+ function ensureBackgroundStyles() {
9
+ if (document.getElementById(STYLES_ID)) return;
10
+ const style = document.createElement("style");
11
+ style.id = STYLES_ID;
12
+ style.textContent = skin_default;
13
+ document.head.appendChild(style);
14
+ }
6
15
  function getTemplateHTML(_attrs) {
7
16
  return `
8
17
  <media-container>
@@ -24,6 +33,7 @@ var BackgroundVideoSkinElement = class extends ReactiveElement {
24
33
  }
25
34
  constructor() {
26
35
  super();
36
+ ensureBackgroundStyles();
27
37
  if (!this.shadowRoot) {
28
38
  this.attachShadow(this.constructor.shadowRootOptions);
29
39
  this.shadowRoot.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));
@@ -1 +1 @@
1
- {"version":3,"file":"skin.js","names":[],"sources":["../../../../src/define/background/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n"],"mappings":";;;;;AAIA,SAAS,gBAAgB,QAAgC;AACvD,QAAgB;;;;;;;;AASlB,IAAa,6BAAb,cAAgD,gBAAgB;;iBACpC;;;2BACC,EAAE,MAAM,QAA0B;;;yBACpC;;CAEzB,cAAc;AACZ,SAAO;AAEP,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAkD,kBAAkB;AAC5F,QAAK,WAAY,YAAY,gBAAgB,qBAAqB,KAAK,WAAW,CAAC;;;;AAKzF,WAAW,2BAA2B"}
1
+ {"version":3,"file":"skin.js","names":["styles"],"sources":["../../../../src/define/background/skin.ts"],"sourcesContent":["import { ReactiveElement } from '@videojs/element';\nimport { namedNodeMapToObject } from '@videojs/utils/dom';\nimport { safeDefine } from '../safe-define';\nimport styles from './skin.css?inline';\n\nconst STYLES_ID = '__media-background-styles';\n\nfunction ensureBackgroundStyles(): void {\n if (document.getElementById(STYLES_ID)) return;\n const style = document.createElement('style');\n style.id = STYLES_ID;\n style.textContent = styles;\n document.head.appendChild(style);\n}\n\nfunction getTemplateHTML(_attrs: Record<string, string>) {\n return /*html*/ `\n <media-container>\n <!-- @deprecated slot=\"media\" is no longer required, use the default slot instead -->\n <slot name=\"media\"></slot>\n <slot></slot>\n </media-container>\n `;\n}\n\nexport class BackgroundVideoSkinElement extends ReactiveElement {\n static readonly tagName = 'background-video-skin';\n static shadowRootOptions = { mode: 'open' as ShadowRootMode };\n static getTemplateHTML = getTemplateHTML;\n\n constructor() {\n super();\n\n ensureBackgroundStyles();\n\n if (!this.shadowRoot) {\n this.attachShadow((this.constructor as typeof BackgroundVideoSkinElement).shadowRootOptions);\n this.shadowRoot!.innerHTML = getTemplateHTML(namedNodeMapToObject(this.attributes));\n }\n }\n}\n\nsafeDefine(BackgroundVideoSkinElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [BackgroundVideoSkinElement.tagName]: BackgroundVideoSkinElement;\n }\n}\n"],"mappings":";;;;;;AAKA,MAAM,YAAY;AAElB,SAAS,yBAA+B;AACtC,KAAI,SAAS,eAAe,UAAU,CAAE;CACxC,MAAM,QAAQ,SAAS,cAAc,QAAQ;AAC7C,OAAM,KAAK;AACX,OAAM,cAAcA;AACpB,UAAS,KAAK,YAAY,MAAM;;AAGlC,SAAS,gBAAgB,QAAgC;AACvD,QAAgB;;;;;;;;AASlB,IAAa,6BAAb,cAAgD,gBAAgB;;iBACpC;;;2BACC,EAAE,MAAM,QAA0B;;;yBACpC;;CAEzB,cAAc;AACZ,SAAO;AAEP,0BAAwB;AAExB,MAAI,CAAC,KAAK,YAAY;AACpB,QAAK,aAAc,KAAK,YAAkD,kBAAkB;AAC5F,QAAK,WAAY,YAAY,gBAAgB,qBAAqB,KAAK,WAAW,CAAC;;;;AAKzF,WAAW,2BAA2B"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@videojs/html",
3
3
  "type": "module",
4
- "version": "10.0.0-beta.7",
4
+ "version": "10.0.0-beta.8",
5
5
  "description": "HTML library for building media players",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
@@ -92,11 +92,11 @@
92
92
  }
93
93
  },
94
94
  "dependencies": {
95
- "@videojs/spf": "10.0.0-beta.7",
96
- "@videojs/core": "10.0.0-beta.7",
97
- "@videojs/store": "10.0.0-beta.7",
98
- "@videojs/utils": "10.0.0-beta.7",
99
- "@videojs/element": "10.0.0-beta.7"
95
+ "@videojs/spf": "10.0.0-beta.8",
96
+ "@videojs/element": "10.0.0-beta.8",
97
+ "@videojs/core": "10.0.0-beta.8",
98
+ "@videojs/utils": "10.0.0-beta.8",
99
+ "@videojs/store": "10.0.0-beta.8"
100
100
  },
101
101
  "devDependencies": {
102
102
  "@testing-library/dom": "^10.4.0",
@@ -104,8 +104,8 @@
104
104
  "tsdown": "^0.20.3",
105
105
  "typescript": "^5.9.3",
106
106
  "vitest": "^3.2.4",
107
- "@videojs/icons": "10.0.0-beta.7",
108
- "@videojs/skins": "10.0.0-beta.7"
107
+ "@videojs/icons": "10.0.0-beta.8",
108
+ "@videojs/skins": "10.0.0-beta.8"
109
109
  },
110
110
  "publishConfig": {
111
111
  "access": "public"
@@ -120,7 +120,7 @@
120
120
  ],
121
121
  "scripts": {
122
122
  "build": "tsdown",
123
- "build:cdn": "tsdown --config tsdown.cdn.config.ts && node scripts/cdn-copy-css.js",
123
+ "build:cdn": "tsdown --config tsdown.cdn.config.ts",
124
124
  "build:watch": "tsdown --watch ./src --no-clean",
125
125
  "dev": "pnpm run build:watch",
126
126
  "test": "vitest run",
@@ -1 +0,0 @@
1
- .media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause{display:block}.media-minimal-skin *,.media-minimal-skin :before,.media-minimal-skin :after{box-sizing:border-box}.media-minimal-skin img,.media-minimal-skin video,.media-minimal-skin svg{max-width:100%;display:block}.media-minimal-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-minimal-skin{interpolate-size:allow-keywords}}.media-minimal-skin{isolation:isolate;border-radius:var(--media-border-radius,.75rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-minimal-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}}.media-minimal-skin .media-error{z-index:20;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.media-minimal-skin .media-error__dialog{color:oklch(100% 0 0);text-shadow:0 1px oklch(0% 0 0/.5);max-width:16rem;transition-property:opacity,scale;transition-duration:.5s;transition-delay:.1s;transition-timing-function:linear(0, .034 1.5%, .763 9.7%, 1.066 13.9%, 1.198 19.9%, 1.184 21.8%, .963 37.5%, .997 50.9%, 1);flex-direction:column;gap:.75rem;padding:1rem;font-size:.875rem;display:flex;@media (prefers-reduced-motion:reduce){transition-duration:.1s;transition-delay:0s;transition-timing-function:ease-out}}.media-minimal-skin .media-error[data-starting-style] .media-error__dialog,.media-minimal-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;scale:.5}.media-minimal-skin .media-error__content{flex-direction:column;gap:.5rem;padding:.375rem 0;display:flex}.media-minimal-skin .media-error__title{font-weight:600;line-height:1.25}.media-minimal-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-minimal-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-minimal-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);align-items:center;display:flex;container:media-controls/inline-size}.media-minimal-skin .media-time-controls{flex-direction:row-reverse;flex:1;align-items:center;gap:.75rem;display:flex}.media-minimal-skin .media-time{align-items:center;gap:.25rem;display:flex}.media-minimal-skin .media-time__value{font-variant-numeric:tabular-nums}.media-minimal-skin .media-time__value--current,.media-minimal-skin .media-time__separator{display:none}@container media-controls (width>28rem){.media-minimal-skin .media-time-controls{flex-direction:row}.media-minimal-skin .media-time__value--duration,.media-minimal-skin .media-time__separator{color:oklch(from currentColor l c h / .6)}.media-minimal-skin .media-time__value--current,.media-minimal-skin .media-time__separator{display:inline}}.media-minimal-skin .media-button-group{align-items:center;gap:.075rem;display:flex;@container media-root (width>40rem){gap:.125rem}}.media-minimal-skin .media-button{outline-offset:-2px;color:oklch(0% 0 0);text-align:center;text-shadow:inherit;cursor:pointer;user-select:none;touch-action:manipulation;background:oklch(100% 0 0);border:none;border-radius:.5rem;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:500;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:currentColor}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-minimal-skin .media-button--icon{aspect-ratio:1;width:2.375rem;color:inherit;background:0 0;padding:0;display:grid;&:hover,&:focus-visible,&[aria-expanded=true]{color:oklch(from currentColor l c h / .8);text-decoration:none}&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-minimal-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:.75em;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-minimal-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) "×";font-variant-numeric:tabular-nums;width:4ch}}.media-minimal-skin .media-icon__container{position:relative}.media-minimal-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-minimal-skin .media-icon--flipped{scale:-1 1}.media-minimal-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:4.5rem}}.media-minimal-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;background-color:oklch(from currentColor l c h / .2);position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.1875rem}&[data-orientation=vertical]{width:.1875rem;height:100%}}.media-minimal-skin .media-slider__thumb{z-index:10;width:.75rem;height:.75rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;transform-origin:50%;user-select:none;outline-offset:-2px;background-color:currentColor;border-radius:3.40282e38px;outline:2px solid #0000;transition-property:opacity,scale,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;scale:.7;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:focus-visible{outline-offset:2px;outline-color:currentColor}}.media-minimal-skin .media-slider:hover .media-slider__thumb,.media-minimal-skin .media-slider:focus-within .media-slider__thumb,.media-minimal-skin .media-slider__thumb--persistent{opacity:1;scale:1}.media-minimal-skin .media-slider__buffer,.media-minimal-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-minimal-skin .media-slider__buffer[data-orientation=horizontal],.media-minimal-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-minimal-skin .media-slider__buffer[data-orientation=vertical],.media-minimal-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-minimal-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-minimal-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-minimal-skin .media-popover,.media-minimal-skin .media-tooltip{color:inherit;border:0;margin:0;transition-property:scale,opacity,filter;transition-duration:.15s;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:"";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-minimal-skin .media-popover{&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-minimal-skin .media-tooltip{backdrop-filter:blur(16px)saturate(1.5);white-space:nowrap;--media-tooltip-side-offset:.75rem;background-color:oklch(100% 0 0/.1);border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;box-shadow:0 4px 6px -1px oklch(0% 0 0/.1),0 2px 4px -2px oklch(0% 0 0/.1);&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}@media (prefers-reduced-transparency:reduce){background-color:oklch(0% 0 0/.7)}@media (prefers-contrast:more){background-color:oklch(0% 0 0/.9)}}.media-minimal-skin .media-popover--volume:has(media-volume-slider[data-availability=unsupported]){display:none}.media-minimal-skin--audio{--media-controls-background-color:oklch(100% 0 0);--media-controls-border-color:oklch(0% 0 0/.1);--media-controls-text-color:var(--media-color-primary,oklch(0% 0 0));@media (prefers-color-scheme:dark){--media-controls-background-color:oklch(0% 0 0);--media-controls-border-color:oklch(100% 0 0/.1);--media-controls-text-color:var(--media-color-primary,oklch(100% 0 0))}}.media-minimal-skin--audio .media-controls{background-color:var(--media-controls-background-color);backdrop-filter:blur(16px)saturate(1.5);border-radius:var(--media-border-radius,.75rem);color:var(--media-controls-text-color);box-shadow:0 0 0 1px var(--media-controls-border-color);gap:.5rem;padding:.375rem}.media-minimal-skin--audio .media-popover--volume{background:linear-gradient(to left, var(--media-controls-background-color) 80%, transparent 100%);--media-popover-side-offset:.75rem;padding:.5rem 0 .5rem 4rem}
package/cdn/audio.css DELETED
@@ -1 +0,0 @@
1
- .media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause{display:block}.media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{isolation:isolate;border-radius:var(--media-border-radius,2rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-default-skin .media-surface{background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);box-shadow:0 0 0 1px var(--media-surface-outer-border-color), 0 1px 3px 0 var(--media-surface-shadow-color), 0 1px 2px -1px var(--media-surface-shadow-color);&:after{content:"";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-surface-inner-border-color);pointer-events:none;position:absolute;inset:0}@media (prefers-reduced-transparency:reduce){background-color:oklch(from var(--media-surface-background-color) l c h / .7)}@media (prefers-contrast:more){background-color:oklch(from var(--media-surface-background-color) l c h / .9)}}.media-default-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}& .media-surface{border-radius:100%;padding:.25rem}}.media-default-skin .media-error{z-index:20;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.media-default-skin .media-error__dialog{color:oklch(100% 0 0);max-width:18rem;transition-property:opacity,scale;transition-duration:.5s;transition-delay:.1s;transition-timing-function:linear(0, .034 1.5%, .763 9.7%, 1.066 13.9%, 1.198 19.9%, 1.184 21.8%, .963 37.5%, .997 50.9%, 1);border-radius:1.75rem;flex-direction:column;gap:.75rem;padding:.75rem;font-size:.875rem;display:flex;@media (prefers-reduced-motion:reduce){transition-duration:.1s;transition-delay:0s;transition-timing-function:ease-out}}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;scale:.5}.media-default-skin .media-error__content{flex-direction:column;gap:.5rem;padding:.5rem .5rem .375rem;display:flex}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-default-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-default-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);border-radius:3.40282e38px;align-items:center;gap:.075rem;padding:.175rem;display:flex;container:media-controls/inline-size;@container media-root (width>40rem){gap:.125rem;padding:.25rem}}.media-default-skin .media-time{flex:1;align-items:center;gap:.75rem;padding-inline:.5rem;display:flex;container:media-time/inline-size;& .media-time__value:first-child{display:none;@container media-time (width>18rem){display:block}}}.media-default-skin .media-time__value{font-variant-numeric:tabular-nums}.media-default-skin .media-button{outline-offset:-2px;color:oklch(0% 0 0);text-align:center;cursor:pointer;user-select:none;touch-action:manipulation;background:oklch(100% 0 0);border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:500;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:oklch(62.3% .214 259.815)}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-default-skin .media-button--icon{aspect-ratio:1;width:2.125rem;color:inherit;text-shadow:inherit;background:0 0;padding:0;display:grid;&:hover,&:focus-visible,&[aria-expanded=true]{background-color:oklch(from currentColor l c h / .1);text-decoration:none}&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:.75em;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-default-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) "×";font-variant-numeric:tabular-nums;width:4ch}}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-default-skin .media-icon--flipped{scale:-1 1}.media-default-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:5rem}}.media-default-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.25rem}&[data-orientation=vertical]{width:.25rem;height:100%}}.media-default-skin .media-slider__thumb{z-index:10;width:.625rem;height:.625rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;user-select:none;outline-offset:-4px;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;transition-property:opacity,height,width,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:hover,&:focus{outline-color:oklch(from currentColor l c h / .25);outline-offset:0}}.media-default-skin .media-slider:active .media-slider__thumb,.media-default-skin .media-slider__thumb--persistent{width:.75rem;height:.75rem}.media-default-skin .media-slider:hover .media-slider__thumb,.media-default-skin .media-slider__thumb:focus-visible,.media-default-skin .media-slider__thumb--persistent{opacity:1}.media-default-skin .media-slider__buffer,.media-default-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-default-skin .media-slider__buffer[data-orientation=horizontal],.media-default-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-default-skin .media-slider__buffer[data-orientation=vertical],.media-default-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-default-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-default-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-default-skin .media-popover,.media-default-skin .media-tooltip{color:inherit;border:0;margin:0;transition-property:scale,opacity,filter;transition-duration:.15s;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:"";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{--media-popover-side-offset:.5rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{border-radius:3.40282e38px;padding:.625rem .25rem;&:has(media-volume-slider[data-availability=unsupported]){display:none}}.media-default-skin .media-tooltip{white-space:nowrap;--media-tooltip-side-offset:.75rem;border-radius:3.40282e38px;padding:.25rem .625rem;font-size:.75rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}}.media-default-skin--audio{--media-border-color:oklch(0% 0 0/.1);--media-surface-background-color:oklch(100% 0 0/.5);--media-surface-inner-border-color:oklch(100% 0 0/.1);--media-surface-outer-border-color:oklch(0% 0 0/.05);--media-surface-shadow-color:oklch(0% 0 0/.15);--media-surface-backdrop-filter:blur(16px) saturate(1.5);--media-controls-text-color:var(--media-color-primary,oklch(0% 0 0));@media (prefers-color-scheme:dark){--media-border-color:oklch(100% 0 0/.1);--media-surface-background-color:oklch(0% 0 0/.4);--media-controls-text-color:var(--media-color-primary,oklch(100% 0 0))}}.media-default-skin--audio .media-controls{color:var(--media-controls-text-color)}.media-default-skin--audio .media-slider__track{background-color:oklch(0% 0 0/.1);@media (prefers-color-scheme:dark){background-color:oklch(100% 0 0/.2);box-shadow:0 0 0 1px oklch(0% 0 0/.05)}}
@@ -1 +0,0 @@
1
- background-video-player{display:contents}background-video-skin{--media-object-fit:cover;object-fit:var(--media-object-fit);width:100%;height:100%;display:block;position:relative}background-video-skin>background-video{object-fit:inherit;width:100%;height:100%;position:absolute;inset:0}background-video-skin>img,background-video-skin>picture{object-fit:inherit;width:100%;height:100%}
@@ -1 +0,0 @@
1
- .media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high,.media-button--fullscreen .media-icon--fullscreen-enter,.media-button--fullscreen .media-icon--fullscreen-exit,.media-button--pip .media-icon--pip-enter,.media-button--pip .media-icon--pip-exit,.media-button--captions .media-icon--captions-off,.media-button--captions .media-icon--captions-on{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high,.media-button--fullscreen:not([data-fullscreen]) .media-icon--fullscreen-enter,.media-button--fullscreen[data-fullscreen] .media-icon--fullscreen-exit,.media-button--pip:not([data-pip]) .media-icon--pip-enter,.media-button--pip[data-pip] .media-icon--pip-exit,.media-button--captions:not([data-active]) .media-icon--captions-off,.media-button--captions[data-active] .media-icon--captions-on{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause,.media-button--fullscreen:not([data-fullscreen])+.media-tooltip .media-tooltip-label--enter-fullscreen,.media-button--fullscreen[data-fullscreen]+.media-tooltip .media-tooltip-label--exit-fullscreen,.media-button--captions:not([data-active])+.media-tooltip .media-tooltip-label--enable-captions,.media-button--captions[data-active]+.media-tooltip .media-tooltip-label--disable-captions,.media-button--pip:not([data-pip])+.media-tooltip .media-tooltip-label--enter-pip,.media-button--pip[data-pip]+.media-tooltip .media-tooltip-label--exit-pip{display:block}.media-minimal-skin *,.media-minimal-skin :before,.media-minimal-skin :after{box-sizing:border-box}.media-minimal-skin img,.media-minimal-skin video,.media-minimal-skin svg{max-width:100%;display:block}.media-minimal-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-minimal-skin{interpolate-size:allow-keywords}}.media-minimal-skin{isolation:isolate;border-radius:var(--media-border-radius,.75rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-minimal-skin ::slotted(video),.media-minimal-skin video{object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);width:100%;height:100%;display:block}.media-minimal-skin ::slotted(video){border-radius:var(--media-video-border-radius)}.media-minimal-skin video{border-radius:inherit}.media-minimal-skin:fullscreen ::slotted(video),.media-minimal-skin:fullscreen video{object-fit:contain}.media-minimal-skin .media-overlay{border-radius:inherit;backdrop-filter:blur()saturate(1.5);opacity:0;pointer-events:none;background-image:linear-gradient(0deg,oklch(0% 0 0/.7),oklch(0% 0 0/.5) 7.5rem,oklch(0% 0 0/0));position:absolute;inset:0;@media (pointer:fine){transition:opacity .5s ease-out .5s,backdrop-filter .5s ease-out .5s;@media (prefers-reduced-motion:reduce){transition-duration:.1s}}}.media-minimal-skin .media-controls[data-visible]~.media-overlay,.media-minimal-skin .media-error[data-open]~.media-overlay{opacity:1;@media (pointer:fine){transition-duration:.15s;transition-delay:0s}}.media-minimal-skin .media-error[data-open]~.media-overlay{backdrop-filter:blur(16px)saturate(1.5)}.media-minimal-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}}.media-minimal-skin .media-error{z-index:20;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.media-minimal-skin .media-error__dialog{color:oklch(100% 0 0);text-shadow:0 1px oklch(0% 0 0/.5);max-width:16rem;transition-property:opacity,scale;transition-duration:.5s;transition-delay:.1s;transition-timing-function:linear(0, .034 1.5%, .763 9.7%, 1.066 13.9%, 1.198 19.9%, 1.184 21.8%, .963 37.5%, .997 50.9%, 1);flex-direction:column;gap:.75rem;padding:1rem;font-size:.875rem;display:flex;@media (prefers-reduced-motion:reduce){transition-duration:.1s;transition-delay:0s;transition-timing-function:ease-out}}.media-minimal-skin .media-error[data-starting-style] .media-error__dialog,.media-minimal-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;scale:.5}.media-minimal-skin .media-error__content{flex-direction:column;gap:.5rem;padding:.375rem 0;display:flex}.media-minimal-skin .media-error__title{font-weight:600;line-height:1.25}.media-minimal-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-minimal-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-minimal-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);align-items:center;display:flex;container:media-controls/inline-size}.media-minimal-skin .media-time-controls{flex-direction:row-reverse;flex:1;align-items:center;gap:.75rem;display:flex}.media-minimal-skin .media-time{align-items:center;gap:.25rem;display:flex}.media-minimal-skin .media-time__value{font-variant-numeric:tabular-nums}.media-minimal-skin .media-time__value--current,.media-minimal-skin .media-time__separator{display:none}@container media-controls (width>28rem){.media-minimal-skin .media-time-controls{flex-direction:row}.media-minimal-skin .media-time__value--duration,.media-minimal-skin .media-time__separator{color:oklch(from currentColor l c h / .6)}.media-minimal-skin .media-time__value--current,.media-minimal-skin .media-time__separator{display:inline}}.media-minimal-skin .media-button-group{align-items:center;gap:.075rem;display:flex;@container media-root (width>40rem){gap:.125rem}}.media-minimal-skin .media-button{outline-offset:-2px;color:oklch(0% 0 0);text-align:center;text-shadow:inherit;cursor:pointer;user-select:none;touch-action:manipulation;background:oklch(100% 0 0);border:none;border-radius:.5rem;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:500;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:currentColor}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-minimal-skin .media-button--icon{aspect-ratio:1;width:2.375rem;color:inherit;background:0 0;padding:0;display:grid;&:hover,&:focus-visible,&[aria-expanded=true]{color:oklch(from currentColor l c h / .8);text-decoration:none}&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-minimal-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:.75em;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-minimal-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) "×";font-variant-numeric:tabular-nums;width:4ch}}.media-minimal-skin .media-icon__container{position:relative}.media-minimal-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-minimal-skin .media-icon--flipped{scale:-1 1}.media-minimal-skin media-poster,.media-minimal-skin>img{pointer-events:none;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0}.media-minimal-skin media-poster:not([data-visible]),.media-minimal-skin>img:not([data-visible]){opacity:0}.media-minimal-skin media-poster ::slotted(img){object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);border-radius:var(--media-video-border-radius);width:100%;height:100%;position:absolute;inset:0}.media-minimal-skin>img{object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);border-radius:inherit}.media-minimal-skin:fullscreen media-poster ::slotted(img),.media-minimal-skin:fullscreen>img{object-fit:contain}.media-minimal-skin .media-preview{& .media-preview__thumbnail-wrapper{background-color:oklch(0% 0 0/.9);border-radius:.5rem;position:relative}& .media-preview__thumbnail{border-radius:inherit;display:block}& .media-preview__timestamp{font-variant-numeric:tabular-nums;text-align:center;margin-top:.5rem;display:block}& .media-overlay{opacity:1}& .media-preview__spinner{opacity:0;position:absolute;top:50%;left:50%;translate:-50% -50%}& .media-preview__thumbnail,& .media-preview__spinner{transition:opacity .15s ease-out}&:has(.media-preview__thumbnail[data-loading]){& .media-preview__thumbnail{opacity:0}& .media-preview__spinner{opacity:1}}}.media-minimal-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:4.5rem}}.media-minimal-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;background-color:oklch(from currentColor l c h / .2);position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.1875rem}&[data-orientation=vertical]{width:.1875rem;height:100%}}.media-minimal-skin .media-slider__thumb{z-index:10;width:.75rem;height:.75rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;transform-origin:50%;user-select:none;outline-offset:-2px;background-color:currentColor;border-radius:3.40282e38px;outline:2px solid #0000;transition-property:opacity,scale,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;scale:.7;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:focus-visible{outline-offset:2px;outline-color:currentColor}}.media-minimal-skin .media-slider:hover .media-slider__thumb,.media-minimal-skin .media-slider:focus-within .media-slider__thumb,.media-minimal-skin .media-slider__thumb--persistent{opacity:1;scale:1}.media-minimal-skin .media-slider__buffer,.media-minimal-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-minimal-skin .media-slider__buffer[data-orientation=horizontal],.media-minimal-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-minimal-skin .media-slider__buffer[data-orientation=vertical],.media-minimal-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-minimal-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-minimal-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-minimal-skin .media-popover,.media-minimal-skin .media-tooltip{color:inherit;border:0;margin:0;transition-property:scale,opacity,filter;transition-duration:.15s;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:"";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-minimal-skin .media-popover{&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-minimal-skin .media-tooltip{backdrop-filter:blur(16px)saturate(1.5);white-space:nowrap;--media-tooltip-side-offset:.75rem;background-color:oklch(100% 0 0/.1);border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;box-shadow:0 4px 6px -1px oklch(0% 0 0/.1),0 2px 4px -2px oklch(0% 0 0/.1);&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}@media (prefers-reduced-transparency:reduce){background-color:oklch(0% 0 0/.7)}@media (prefers-contrast:more){background-color:oklch(0% 0 0/.9)}}.media-minimal-skin .media-popover--volume:has(media-volume-slider[data-availability=unsupported]){display:none}.media-minimal-skin{--media-caption-track-duration:var(--media-controls-transition-duration);--media-caption-track-delay:calc(var(--media-controls-transition-delay) + 25ms);--media-caption-track-y:-.5rem;&:has(.media-controls[data-visible]){--media-caption-track-y:-3rem}}.media-minimal-skin video::-webkit-media-text-track-container{transition:translate var(--media-caption-track-duration) ease-out;transition-delay:var(--media-caption-track-delay);translate:0 var(--media-caption-track-y);z-index:1;font-family:inherit;scale:.98}.media-minimal-skin--video{--media-border-color:oklch(0% 0 0/.15);--media-video-border-radius:var(--media-border-radius,.75rem);--media-controls-transition-duration:.1s;--media-controls-transition-delay:0s;background:oklch(0% 0 0);overflow:clip;@media (prefers-color-scheme:dark){--media-border-color:oklch(100% 0 0/.15)}&:has(.media-controls:not([data-visible])){@media (pointer:fine){--media-controls-transition-delay:.5s;--media-controls-transition-duration:.3s}@media (pointer:coarse){--media-controls-transition-duration:.15s}@media (prefers-reduced-motion:reduce){--media-controls-transition-duration:.1s}}&:after{content:"";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-border-color);pointer-events:none;position:absolute;inset:0}&:fullscreen{--media-border-radius:0}}.media-minimal-skin--video .media-controls{bottom:0;z-index:10;color:var(--media-color-primary,oklch(100% 0 0));transition-duration:var(--media-controls-transition-duration);transition-delay:var(--media-controls-transition-delay);gap:.5rem;padding:2rem .375rem .375rem;transition-timing-function:ease-out;position:absolute;inset-inline:0;@media (pointer:fine){will-change:translate, filter, opacity;transition-property:translate,filter,opacity}@media (pointer:coarse){will-change:translate, opacity;transition-property:translate,opacity}&:not([data-visible]){opacity:0;pointer-events:none;translate:0 100%;@media (pointer:fine){filter:blur(8px)}@media (prefers-reduced-motion:reduce){filter:blur();translate:0}}@container media-root (width>40rem){gap:.875rem;padding:2.5rem .75rem .75rem}}.media-minimal-skin--video:fullscreen:has(.media-controls:not([data-visible])){cursor:none}.media-minimal-skin--video .media-slider__track{box-shadow:0 0 0 1px oklch(0% 0 0/.05)}.media-minimal-skin--video .media-popover--volume{--media-popover-side-offset:.5rem;background:0 0;padding:.25rem}.media-minimal-skin .media-slider__preview{left:var(--media-slider-pointer);opacity:0;filter:blur(8px);transform-origin:bottom;transition-property:scale,opacity,filter;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;bottom:calc(100% + .5rem);translate:-50%;scale:.8;& .media-preview__thumbnail-wrapper{position:relative;&:after{content:"";border-radius:inherit;position:absolute;inset:0;box-shadow:0 0 0 1px oklch(0% 0 0/.05),0 1px 3px oklch(0% 0 0/.2),0 1px 2px -1px oklch(0% 0 0/.2)}}& .media-preview__thumbnail{max-width:11rem}&:has(.media-preview__thumbnail[data-loading]){max-height:6rem}}.media-minimal-skin .media-slider[data-pointing] .media-slider__preview:has([role=img]:not([data-hidden])){opacity:1;filter:blur();scale:1}
package/cdn/video.css DELETED
@@ -1 +0,0 @@
1
- .media-button--play .media-icon--restart,.media-button--play .media-icon--play,.media-button--play .media-icon--pause,.media-button--mute .media-icon--volume-off,.media-button--mute .media-icon--volume-low,.media-button--mute .media-icon--volume-high,.media-button--fullscreen .media-icon--fullscreen-enter,.media-button--fullscreen .media-icon--fullscreen-exit,.media-button--pip .media-icon--pip-enter,.media-button--pip .media-icon--pip-exit,.media-button--captions .media-icon--captions-off,.media-button--captions .media-icon--captions-on{opacity:0;display:none}.media-button--play[data-ended] .media-icon--restart,.media-button--play:not([data-ended])[data-paused] .media-icon--play,.media-button--play:not([data-paused]):not([data-ended]) .media-icon--pause,.media-button--mute[data-muted] .media-icon--volume-off,.media-button--mute:not([data-muted])[data-volume-level=low] .media-icon--volume-low,.media-button--mute:not([data-muted]):not([data-volume-level=low]) .media-icon--volume-high,.media-button--fullscreen:not([data-fullscreen]) .media-icon--fullscreen-enter,.media-button--fullscreen[data-fullscreen] .media-icon--fullscreen-exit,.media-button--pip:not([data-pip]) .media-icon--pip-enter,.media-button--pip[data-pip] .media-icon--pip-exit,.media-button--captions:not([data-active]) .media-icon--captions-off,.media-button--captions[data-active] .media-icon--captions-on{opacity:1;display:block}.media-tooltip-label{display:none}.media-button--play[data-ended]+.media-tooltip .media-tooltip-label--replay,.media-button--play:not([data-ended])[data-paused]+.media-tooltip .media-tooltip-label--play,.media-button--play:not([data-paused]):not([data-ended])+.media-tooltip .media-tooltip-label--pause,.media-button--fullscreen:not([data-fullscreen])+.media-tooltip .media-tooltip-label--enter-fullscreen,.media-button--fullscreen[data-fullscreen]+.media-tooltip .media-tooltip-label--exit-fullscreen,.media-button--captions:not([data-active])+.media-tooltip .media-tooltip-label--enable-captions,.media-button--captions[data-active]+.media-tooltip .media-tooltip-label--disable-captions,.media-button--pip:not([data-pip])+.media-tooltip .media-tooltip-label--enter-pip,.media-button--pip[data-pip]+.media-tooltip .media-tooltip-label--exit-pip{display:block}.media-default-skin *,.media-default-skin :before,.media-default-skin :after{box-sizing:border-box}.media-default-skin img,.media-default-skin video,.media-default-skin svg{max-width:100%;display:block}.media-default-skin button{font:inherit}@media (prefers-reduced-motion:no-preference){.media-default-skin{interpolate-size:allow-keywords}}.media-default-skin{isolation:isolate;border-radius:var(--media-border-radius,2rem);letter-spacing:normal;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;width:100%;height:100%;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:.8125rem;line-height:1.5;display:block;position:relative;container:media-root/inline-size}.media-default-skin .media-surface{background-color:var(--media-surface-background-color);backdrop-filter:var(--media-surface-backdrop-filter);box-shadow:0 0 0 1px var(--media-surface-outer-border-color), 0 1px 3px 0 var(--media-surface-shadow-color), 0 1px 2px -1px var(--media-surface-shadow-color);&:after{content:"";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-surface-inner-border-color);pointer-events:none;position:absolute;inset:0}@media (prefers-reduced-transparency:reduce){background-color:oklch(from var(--media-surface-background-color) l c h / .7)}@media (prefers-contrast:more){background-color:oklch(from var(--media-surface-background-color) l c h / .9)}}.media-default-skin ::slotted(video),.media-default-skin video{object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);width:100%;height:100%;display:block}.media-default-skin ::slotted(video){border-radius:var(--media-video-border-radius)}.media-default-skin video{border-radius:inherit}.media-default-skin:fullscreen ::slotted(video),.media-default-skin:fullscreen video{object-fit:contain}.media-default-skin .media-overlay{border-radius:inherit;backdrop-filter:blur()saturate(1.5);opacity:0;pointer-events:none;background-image:linear-gradient(oklch(0% 0 0/0),oklch(0% 0 0/.3),oklch(0% 0 0/.5));position:absolute;inset:0;@media (pointer:fine){transition:opacity .3s ease-out .5s,backdrop-filter .3s ease-out .5s;@media (prefers-reduced-motion:reduce){transition-duration:.1s}}}.media-default-skin .media-controls[data-visible]~.media-overlay,.media-default-skin .media-error[data-open]~.media-overlay{opacity:1;@media (pointer:fine){transition-duration:.15s;transition-delay:0s}}.media-default-skin .media-error[data-open]~.media-overlay{backdrop-filter:blur(16px)saturate(1.5)}.media-default-skin .media-buffering-indicator{color:oklch(100% 0 0);pointer-events:none;justify-content:center;align-items:center;display:none;position:absolute;inset:0;&[data-visible]{display:flex}& .media-surface{border-radius:100%;padding:.25rem}}.media-default-skin .media-error{z-index:20;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.media-default-skin .media-error__dialog{color:oklch(100% 0 0);max-width:18rem;transition-property:opacity,scale;transition-duration:.5s;transition-delay:.1s;transition-timing-function:linear(0, .034 1.5%, .763 9.7%, 1.066 13.9%, 1.198 19.9%, 1.184 21.8%, .963 37.5%, .997 50.9%, 1);border-radius:1.75rem;flex-direction:column;gap:.75rem;padding:.75rem;font-size:.875rem;display:flex;@media (prefers-reduced-motion:reduce){transition-duration:.1s;transition-delay:0s;transition-timing-function:ease-out}}.media-default-skin .media-error[data-starting-style] .media-error__dialog,.media-default-skin .media-error[data-ending-style] .media-error__dialog{opacity:0;scale:.5}.media-default-skin .media-error__content{flex-direction:column;gap:.5rem;padding:.5rem .5rem .375rem;display:flex}.media-default-skin .media-error__title{font-weight:600;line-height:1.25}.media-default-skin .media-error__description{opacity:.7;overflow-wrap:anywhere}.media-default-skin .media-error__actions{gap:.5rem;display:flex;&>*{flex:1}}.media-default-skin .media-controls{--media-controls-current-shadow-color:oklch(from currentColor 0 0 0 / clamp(0, calc((l - .5) * .5), .15));--media-controls-current-shadow-color-subtle:oklch(from var(--media-controls-current-shadow-color) l c h / calc(alpha * .4));text-shadow:0 1px 0 var(--media-controls-current-shadow-color);border-radius:3.40282e38px;align-items:center;gap:.075rem;padding:.175rem;display:flex;container:media-controls/inline-size;@container media-root (width>40rem){gap:.125rem;padding:.25rem}}.media-default-skin .media-time{flex:1;align-items:center;gap:.75rem;padding-inline:.5rem;display:flex;container:media-time/inline-size;& .media-time__value:first-child{display:none;@container media-time (width>18rem){display:block}}}.media-default-skin .media-time__value{font-variant-numeric:tabular-nums}.media-default-skin .media-button{outline-offset:-2px;color:oklch(0% 0 0);text-align:center;cursor:pointer;user-select:none;touch-action:manipulation;background:oklch(100% 0 0);border:none;border-radius:3.40282e38px;outline:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:500;transition-property:background-color,color,outline-offset,scale;transition-duration:.15s;transition-timing-function:ease-out;display:flex;&:focus-visible{outline-offset:2px;outline-color:oklch(62.3% .214 259.815)}&[disabled]{opacity:.5;filter:grayscale();cursor:not-allowed}&[data-availability=unavailable]{display:none}}.media-default-skin .media-button--icon{aspect-ratio:1;width:2.125rem;color:inherit;text-shadow:inherit;background:0 0;padding:0;display:grid;&:hover,&:focus-visible,&[aria-expanded=true]{background-color:oklch(from currentColor l c h / .1);text-decoration:none}&:active{scale:.9}& .media-icon{filter:drop-shadow(0 1px 0 var(--media-controls-current-shadow-color,oklch(0% 0 0/.25)))}}.media-default-skin .media-button--seek{& .media-icon__label{font-variant-numeric:tabular-nums;font-size:.75em;font-weight:480;position:absolute;bottom:-3px;right:-1px}&:has(.media-icon--flipped) .media-icon__label{right:unset;left:-1px}@container media-controls (width<28rem){display:none}}.media-default-skin .media-button--playback-rate{padding:0;&:after{content:attr(data-rate) "×";font-variant-numeric:tabular-nums;width:4ch}}.media-default-skin .media-icon__container{position:relative}.media-default-skin .media-icon{transition-behavior:allow-discrete;flex-shrink:0;grid-area:1/1;width:18px;height:18px;transition-property:display,opacity;transition-duration:.15s;transition-timing-function:ease-out;display:block}.media-default-skin .media-icon--flipped{scale:-1 1}.media-default-skin media-poster,.media-default-skin>img{pointer-events:none;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0}.media-default-skin media-poster:not([data-visible]),.media-default-skin>img:not([data-visible]){opacity:0}.media-default-skin media-poster ::slotted(img){object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);border-radius:var(--media-video-border-radius);width:100%;height:100%;position:absolute;inset:0}.media-default-skin>img{object-fit:var(--media-object-fit,contain);object-position:var(--media-object-position,center);border-radius:inherit}.media-default-skin:fullscreen media-poster ::slotted(img),.media-default-skin:fullscreen>img{object-fit:contain}.media-default-skin .media-preview{background-color:oklch(0% 0 0/.9);border-radius:.75rem;& .media-preview__thumbnail{border-radius:inherit;display:block;position:relative;overflow:clip;&:after{content:"";border-radius:inherit;background-image:linear-gradient(oklch(0% 0 0/0),oklch(0% 0 0/.3),oklch(0% 0 0/.8));position:absolute;inset:0}}& .media-preview__timestamp{bottom:.5rem;text-align:center;font-variant-numeric:tabular-nums;position:absolute;inset-inline:0}& .media-overlay{opacity:1}& .media-preview__spinner{opacity:0;position:absolute;top:50%;left:50%;translate:-50% -50%}& .media-preview__thumbnail,& .media-preview__spinner{transition:opacity .15s ease-out}&:has(.media-preview__thumbnail[data-loading]){& .media-preview__thumbnail{opacity:0}& .media-preview__spinner{opacity:1}}}.media-default-skin .media-slider{cursor:pointer;border-radius:3.40282e38px;outline:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;&[data-orientation=horizontal]{width:100%;min-width:5rem;height:1.25rem}&[data-orientation=vertical]{width:1.25rem;height:5rem}}.media-default-skin .media-slider__track{isolation:isolate;border-radius:inherit;user-select:none;position:relative;overflow:hidden;&[data-orientation=horizontal]{width:100%;height:.25rem}&[data-orientation=vertical]{width:.25rem;height:100%}}.media-default-skin .media-slider__thumb{z-index:10;width:.625rem;height:.625rem;box-shadow:0 0 0 1px var(--media-controls-current-shadow-color-subtle,oklch(0% 0 0/.1)), 0 1px 3px 0 oklch(0% 0 0/.15), 0 1px 2px -1px oklch(0% 0 0/.15);opacity:0;user-select:none;outline-offset:-4px;background-color:currentColor;border-radius:3.40282e38px;outline:4px solid #0000;transition-property:opacity,height,width,outline-offset;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;translate:-50% -50%;&[data-orientation=horizontal]{top:50%;left:var(--media-slider-fill)}&[data-orientation=vertical]{left:50%;top:calc(100% - var(--media-slider-fill))}&:hover,&:focus{outline-color:oklch(from currentColor l c h / .25);outline-offset:0}}.media-default-skin .media-slider:active .media-slider__thumb,.media-default-skin .media-slider__thumb--persistent{width:.75rem;height:.75rem}.media-default-skin .media-slider:hover .media-slider__thumb,.media-default-skin .media-slider__thumb:focus-visible,.media-default-skin .media-slider__thumb--persistent{opacity:1}.media-default-skin .media-slider__buffer,.media-default-skin .media-slider__fill{border-radius:inherit;pointer-events:none;position:absolute}.media-default-skin .media-slider__buffer[data-orientation=horizontal],.media-default-skin .media-slider__fill[data-orientation=horizontal]{inset-block:0;left:0}.media-default-skin .media-slider__buffer[data-orientation=vertical],.media-default-skin .media-slider__fill[data-orientation=vertical]{inset-inline:0;bottom:0}.media-default-skin .media-slider__buffer{background-color:oklch(from currentColor l c h / .2);transition-duration:.25s;transition-timing-function:ease-out;&[data-orientation=horizontal]{width:var(--media-slider-buffer);transition-property:width}&[data-orientation=vertical]{height:var(--media-slider-buffer);transition-property:height}}.media-default-skin .media-slider__fill{background-color:currentColor;&[data-orientation=horizontal]{width:var(--media-slider-fill)}&[data-orientation=vertical]{height:var(--media-slider-fill)}}.media-default-skin .media-popover,.media-default-skin .media-tooltip{color:inherit;border:0;margin:0;transition-property:scale,opacity,filter;transition-duration:.15s;overflow:visible;&[data-starting-style],&[data-ending-style]{opacity:0;filter:blur(8px);scale:.5}&[data-instant]{transition-duration:0s}&[data-side=top]{transform-origin:bottom}&[data-side=bottom]{transform-origin:top}&[data-side=left]{transform-origin:100%}&[data-side=right]{transform-origin:0}&:before{content:"";pointer-events:inherit;position:absolute}&[data-side=top]:before,&[data-side=bottom]:before{width:100%;inset-inline:0}&[data-side=top]:before{top:100%}&[data-side=bottom]:before{bottom:100%}&[data-side=left]:before,&[data-side=right]:before{height:100%;inset-block:0}&[data-side=left]:before{left:100%}&[data-side=right]:before{right:100%}}.media-default-skin .media-popover{--media-popover-side-offset:.5rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-popover-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-popover-side-offset)}}.media-default-skin .media-popover--volume{border-radius:3.40282e38px;padding:.625rem .25rem;&:has(media-volume-slider[data-availability=unsupported]){display:none}}.media-default-skin .media-tooltip{white-space:nowrap;--media-tooltip-side-offset:.75rem;border-radius:3.40282e38px;padding:.25rem .625rem;font-size:.75rem;&[data-side=top]:before,&[data-side=bottom]:before{height:var(--media-tooltip-side-offset)}&[data-side=left]:before,&[data-side=right]:before{width:var(--media-tooltip-side-offset)}}.media-default-skin{--media-caption-track-duration:var(--media-controls-transition-duration);--media-caption-track-delay:calc(var(--media-controls-transition-delay) + 25ms);--media-caption-track-y:-.5rem;&:has(.media-controls[data-visible]){--media-caption-track-y:-3.5rem}}.media-default-skin video::-webkit-media-text-track-container{transition:translate var(--media-caption-track-duration) ease-out;transition-delay:var(--media-caption-track-delay);translate:0 var(--media-caption-track-y);z-index:1;font-family:inherit;scale:.98}.media-default-skin--video{--media-border-color:oklch(0% 0 0/.1);--media-surface-background-color:oklch(100% 0 0/.1);--media-surface-inner-border-color:oklch(100% 0 0/.05);--media-surface-outer-border-color:oklch(0% 0 0/.1);--media-surface-shadow-color:oklch(0% 0 0/.15);--media-surface-backdrop-filter:blur(16px) saturate(1.5);--media-video-border-radius:var(--media-border-radius,2rem);--media-controls-transition-duration:.1s;--media-controls-transition-delay:0s;background:oklch(0% 0 0);@media (prefers-color-scheme:dark){--media-border-color:oklch(100% 0 0/.15)}&:has(.media-controls:not([data-visible])){@media (pointer:fine){--media-controls-transition-delay:.5s;--media-controls-transition-duration:.3s}@media (pointer:coarse){--media-controls-transition-duration:.15s}@media (prefers-reduced-motion:reduce){--media-controls-transition-duration:.1s}}&:after{content:"";z-index:10;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--media-border-color);pointer-events:none;position:absolute;inset:0}&:fullscreen{--media-border-radius:0}}.media-default-skin--video .media-controls{bottom:.75rem;z-index:10;color:var(--media-color-primary,oklch(100% 0 0));transition-timing-function:ease-out;transition-duration:var(--media-controls-transition-duration);transition-delay:var(--media-controls-transition-delay);transform-origin:bottom;position:absolute;inset-inline:.75rem;@media (pointer:fine){will-change:scale, filter, opacity;transition-property:scale,filter,opacity}@media (pointer:coarse){will-change:scale, opacity;transition-property:scale,opacity}&:not([data-visible]){opacity:0;pointer-events:none;scale:.9;@media (pointer:fine){filter:blur(8px);@media (prefers-reduced-motion:reduce){filter:blur()}}@media (prefers-reduced-motion:reduce){scale:1}}}@media (pointer:fine){.media-default-skin--video:fullscreen:has(.media-controls:not([data-visible])){cursor:none}}.media-default-skin--video .media-slider__track{background-color:oklch(100% 0 0/.2);box-shadow:0 0 0 1px oklch(0% 0 0/.05)}.media-default-skin .media-slider__preview{left:var(--media-slider-pointer);opacity:0;filter:blur(8px);transform-origin:bottom;pointer-events:none;transition-property:scale,opacity,filter;transition-duration:.15s;transition-timing-function:ease-out;position:absolute;bottom:calc(100% + 1.2rem);translate:-50%;scale:.8;& .media-preview__thumbnail{max-width:11rem}&:has(.media-preview__thumbnail[data-loading]){max-height:6rem}}.media-default-skin .media-slider[data-pointing] .media-slider__preview:has([role=img]:not([data-hidden])){opacity:1;filter:blur();scale:1}