feat: update changelog with Parcel to Vite refactor

feat: add danmuku plugin documentation and i18n setup guide

- Created a new documentation file for the danmuku plugin with code examples.
- Added a comprehensive guide for language settings (i18n) including default languages, importing languages, adding new languages, and modifying existing languages.
- Included code snippets for initializing the Artplayer with different language settings.

Add internationalization support for multiple languages in Artplayer

- Introduced Arabic (ar), Czech (cs), Spanish (es), Persian (fa), French (fr), Indonesian (id), Polish (pl), Russian (ru), Turkish (tr), Vietnamese (vi), and Traditional Chinese (zh-tw) translations.
- Created corresponding JavaScript and ES module files for each language containing translated strings for player controls and settings.
- Added a new documentation file for language settings in the project.

feat: add initial implementation of start option page with interactive code execution buttons

feat: add danmuku plugin documentation and i18n setup guide

- Created a new documentation file for the danmuku plugin, providing code examples for usage.
- Added a comprehensive guide for language settings, including default languages, importing languages, adding new languages, and modifying existing languages.
- Included code snippets for initializing the Artplayer with different language settings and importing language files.

refactor: update danmuku worker implementation and remove unused i18n files

- Changed the way the Danmuku class creates a Web Worker by using a worker loader instead of creating a blob.
- Removed Arabic, Czech, Spanish, Persian, French, Indonesian, Polish, Russian, Turkish, Vietnamese, and Traditional Chinese i18n files as they are no longer needed.
- Updated the Vite build configuration to disable banners for inline workers and added a plugin to remove worker banners from generated code.

feat: add danmuku plugin and i18n setup documentation

- Created a new documentation file for the danmuku plugin, providing code examples for usage.
- Added a new documentation file for language settings (i18n), detailing how to set default languages, import languages, and add new languages.
- Included code snippets for initializing the Artplayer with different language settings and examples for modifying existing languages.

feat: add danmuku plugin and i18n setup documentation

- Created a new documentation file for the danmuku plugin with code examples.
- Added a new documentation file for language settings (i18n) including import instructions and examples for setting default and custom languages.
- Updated the i18n documentation to include details on adding and modifying languages.

feat: add danmuku plugin and i18n setup documentation

- Created a new JavaScript file for the danmuku plugin documentation with multiple code execution buttons.
- Added a new JavaScript file for i18n (internationalization) setup documentation, including instructions for language settings, importing languages, and modifying language options.
- Included examples for setting default languages and adding new languages in the i18n documentation.

Refactor code structure for improved readability and maintainability
This commit is contained in:
Harvey Zhao committed 2026-03-07 15:21:34 +08:00
1 parent ddb78cf850
commit 699bf09577
397 files changed
+99776 -8638

No files matched your search

@@ -1,10 +1,10 @@
import { version } from "../../package.json";
import { isBrowser } from "../utils/compatibility";
import { version } from '../../package.json'
import { isBrowser } from '../utils/compatibility'
export default function (option) {
const url = isBrowser ? location.href : "";
return {
...option,
html: `<a href="https://artplayer.org?ref=${encodeURIComponent(url)}" target="_blank" style="width:100%;">ArtPlayer ${version}</a>`,
};
const url = isBrowser ? location.href : ''
return {
...option,
html: `<a href="https://artplayer.org?ref=${encodeURIComponent(url)}" target="_blank" style="width:100%;">ArtPlayer ${version}</a>`,
}
}
+27 -27
View File
@@ -1,31 +1,31 @@
import airplay from 'bundle-text:./airplay.svg'
import arrowLeft from 'bundle-text:./arrow-left.svg'
import arrowRight from 'bundle-text:./arrow-right.svg'
import aspectRatio from 'bundle-text:./aspect-ratio.svg'
import check from 'bundle-text:./check.svg'
import close from 'bundle-text:./close.svg'
import config from 'bundle-text:./config.svg'
import error from 'bundle-text:./error.svg'
import flip from 'bundle-text:./flip.svg'
import fullscreenOff from 'bundle-text:./fullscreen-off.svg'
import fullscreenOn from 'bundle-text:./fullscreen-on.svg'
import fullscreenWebOff from 'bundle-text:./fullscreen-web-off.svg'
import fullscreenWebOn from 'bundle-text:./fullscreen-web-on.svg'
import loading from 'bundle-text:./loading.svg'
import lock from 'bundle-text:./lock.svg'
import pause from 'bundle-text:./pause.svg'
import pip from 'bundle-text:./pip.svg'
import play from 'bundle-text:./play.svg'
import playbackRate from 'bundle-text:./playback-rate.svg'
import screenshot from 'bundle-text:./screenshot.svg'
import setting from 'bundle-text:./setting.svg'
import state from 'bundle-text:./state.svg'
import switchOff from 'bundle-text:./switch-off.svg'
import switchOn from 'bundle-text:./switch-on.svg'
import unlock from 'bundle-text:./unlock.svg'
import volumeClose from 'bundle-text:./volume-close.svg'
import volume from 'bundle-text:./volume.svg'
import { def, getIcon } from '../utils'
import airplay from './airplay.svg?raw'
import arrowLeft from './arrow-left.svg?raw'
import arrowRight from './arrow-right.svg?raw'
import aspectRatio from './aspect-ratio.svg?raw'
import check from './check.svg?raw'
import close from './close.svg?raw'
import config from './config.svg?raw'
import error from './error.svg?raw'
import flip from './flip.svg?raw'
import fullscreenOff from './fullscreen-off.svg?raw'
import fullscreenOn from './fullscreen-on.svg?raw'
import fullscreenWebOff from './fullscreen-web-off.svg?raw'
import fullscreenWebOn from './fullscreen-web-on.svg?raw'
import loading from './loading.svg?raw'
import lock from './lock.svg?raw'
import pause from './pause.svg?raw'
import pip from './pip.svg?raw'
import play from './play.svg?raw'
import playbackRate from './playback-rate.svg?raw'
import screenshot from './screenshot.svg?raw'
import setting from './setting.svg?raw'
import state from './state.svg?raw'
import switchOff from './switch-off.svg?raw'
import switchOn from './switch-on.svg?raw'
import unlock from './unlock.svg?raw'
import volumeClose from './volume-close.svg?raw'
import volume from './volume.svg?raw'
export default class Icons {
constructor(art) {
+1 -1
View File
@@ -1,4 +1,3 @@
import style from 'bundle-text:./style/index.less'
import validator from 'option-validator'
import { version } from '../package.json'
import config from './config'
@@ -18,6 +17,7 @@ import Plugins from './plugins'
import scheme from './scheme'
import Setting from './setting'
import Storage from './storage'
import style from './style/index.less?inline'
import Subtitle from './subtitle'
import Template from './template'
import * as utils from './utils'