Files
ArtPlayer/packages/artplayer/src/contextmenu/aspectRatio.js
T
Harvey Zack 7b53de941d V5 (#500)
* update dep

* Update package.json

* update contextmenu

* update d.ts

* update onVttLoad

* build artplayer

* update style

* --art-theme

* update style

* update style

* update user-select

* add getIcon

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* update style

* add progress-hover

* update mini

* update style

* update style

* update style

* update style

* update style

* update volume

* update style

* add art-backdrop

* update style

* update style

* update style

* update currentLevel

* update artplayerPluginControl

* update artplayerPluginDanmuku

* Update package.json
2023-04-16 23:01:26 +08:00

39 lines
1.3 KiB
JavaScript

import { inverseClass, query, queryAll } from '../utils';
export default function aspectRatio(option) {
return (art) => {
const {
i18n,
constructor: { ASPECT_RATIO },
} = art;
const html = ASPECT_RATIO.map(
(item) => `<span data-value="${item}">${item === 'default' ? i18n.get('Default') : item}</span>`,
).join('');
return {
...option,
html: `${i18n.get('Aspect Ratio')}: ${html}`,
click: (contextmenu, event) => {
const { value } = event.target.dataset;
if (value) {
art.aspectRatio = value;
contextmenu.show = false;
}
},
mounted: ($panel) => {
const $default = query('[data-value="default"]', $panel);
if ($default) {
inverseClass($default, 'art-current');
}
art.on('aspectRatio', (value) => {
const $current = queryAll('span', $panel).find((item) => item.dataset.value === value);
if ($current) {
inverseClass($current, 'art-current');
}
});
},
};
};
}