feat: add Picture-in-Picture plugin for ArtPlayer

- Introduced `artplayer-plugin-pip` to enable Picture-in-Picture functionality.
- Updated `artplayer.d.ts` to export new types related to the plugin.
- Added example usage of the plugin in `pip.js`.
- Created TypeScript definitions for the plugin in `artplayer-plugin-pip.d.ts`.
- Implemented the plugin logic in `index.js` with necessary styles and event handling.
- Updated documentation to include the new plugin and its usage.
- Added README and package.json for the new plugin.
This commit is contained in:
Harvey Zack committed 2025-08-16 15:55:21 +08:00
1 parent bd071b2d63
commit c23520a4a6
12 files changed
+853 -279

No files matched your search

+16
View File
@@ -0,0 +1,16 @@
interface Option {
width?: number
height?: number
placeholder?: string
}
interface Result {
name: 'artplayerPluginPip'
}
declare const artplayerPluginPip: (option: Option) => (art: Artplayer) => Result
export default artplayerPluginPip
export = artplayerPluginPip;
export as namespace artplayerPluginPip;
+2
View File
@@ -1054,6 +1054,8 @@ export interface ComponentOption {
export type { Config, Events, I18n, Icons, Option, Player, Setting, SettingOption, Subtitle, Template, Utils }
export default class Artplayer extends Player {
constructor(option: Option, readyCallback?: (this: Artplayer, art: Artplayer) => unknown)