Compare commits

...
567 Commits
Author SHA1 Message Date
Harvey Zack d33d59720f chore: 更新 CHANGELOG,新增 artplayer-plugin-dash-control 插件并修复相关问题 2024-10-26 15:54:31 +08:00
Harvey Zack 5e8047e33b Merge remote-tracking branch 'origin/artplayer-plugin-dash-control' 2024-10-26 15:26:14 +08:00
dependabot[bot] a7c45588fb chore(deps): bump @webav/av-cliper from 0.14.15 to 0.16.4 (#847)
Bumps [@webav/av-cliper](https://github.com/bilibili/WebAV) from 0.14.15 to 0.16.4.
- [Changelog](https://github.com/bilibili/WebAV/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bilibili/WebAV/commits)

---
updated-dependencies:
- dependency-name: "@webav/av-cliper"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 09:35:43 +08:00
Harvey Zack 11742b82dd Refactor Control class to remove unnecessary loading.show assignments 2024-10-21 18:48:41 +08:00
Harvey Zack cebbb6ec29 Refactor Control class to update control option variables and element references 2024-10-21 18:32:42 +08:00
Harvey Zack bb3fc27427 Refactor Control class to update control option variables and element references 2024-10-21 18:26:06 +08:00
Harvey Zack a01782732d Refactor Control class to update control option variables and element references 2024-10-21 17:32:48 +08:00
Harvey Zack 0b75f1d132 Refactor Control class to update control option variables and element references 2024-10-21 17:22:52 +08:00
Harvey Zack dcd6e081d8 Refactor Control class to update control option variables and element references 2024-10-21 16:16:29 +08:00
Harvey Zack cc13b9cc0f Refactor Control class to update control option variables and element references 2024-10-21 14:18:33 +08:00
Harvey Zack 2eb4be2bbe Refactor Control class to update control option variables and element references 2024-10-21 14:13:02 +08:00
Harvey Zack af1c769150 Update index.js 2024-10-21 12:42:49 +08:00
Harvey Zack 5dcb3e11c1 Refactor Artplayer class to use arrow functions for getter methods 2024-10-21 11:52:45 +08:00
Harvey Zack 395747f88f Refactor Artplayer class to update video URLs with query parameters 2024-10-21 11:49:14 +08:00
Harvey Zack 945ff841d5 Refactor Artplayer class to update qualityMix.js and component.js 2024-10-21 11:18:22 +08:00
Harvey Zack c82e381aa1 Refactor Artplayer class to remove unnecessary CSS transformations in setting.less 2024-10-21 10:27:26 +08:00
Harvey Zack ed88c73ab2 Refactor Artplayer class to update import path for Component 2024-10-21 00:18:28 +08:00
Harvey Zack 2db49bdede Refactor Artplayer class to update import path for Component 2024-10-20 23:58:07 +08:00
Harvey Zack c526b45820 Update index.js 2024-10-20 23:43:55 +08:00
Harvey Zack d87e120282 Update event.md 2024-10-20 22:44:25 +08:00
Harvey Zack 477331b0e2 Refactor Artplayer class to remove unnecessary CSS transformations in setting.less 2024-10-20 22:35:14 +08:00
Harvey Zack 0d5757b51c Refactor subtitleOffset function to update range values and append items 2024-10-20 22:03:35 +08:00
Harvey Zack 8566df6336 Refactor subtitleOffset function to update range values and append items 2024-10-20 22:02:01 +08:00
Harvey Zack 3cece10f9e Refactor Artplayer class to add isGetter utility function 2024-10-20 21:57:44 +08:00
Harvey Zack b6df6a6148 Refactor Artplayer class to add keydown event listener 2024-10-20 16:21:34 +08:00
Harvey Zack 0ddb7751a1 Refactor Artplayer class to update build timestamp 2024-10-20 15:06:06 +08:00
Harvey Zack fbfee926ca Refactor Setting class to update range values and append items 2024-10-20 14:46:40 +08:00
Harvey Zack d678378119 Update version to 5.2.1 in package.json and Artplayer class 2024-10-20 14:21:52 +08:00
Harvey Zack b949fedc06 Refactor Setting class to fix state loss issue, update range callback return type, and remove isStringOrNumber utility function 2024-10-20 13:56:22 +08:00
Harvey Zack 191c7736c4 Refactor Setting class to update range values 2024-10-20 13:28:39 +08:00
Harvey Zack c84157e30b Refactor Setting class to update and append items 2024-10-20 12:21:18 +08:00
Harvey Zack 1d191fe658 Refactor Setting class to update and append items 2024-10-20 10:49:45 +08:00
Harvey Zack bae22338dc Refactor Setting class to update and append items 2024-10-20 00:24:49 +08:00
Harvey Zack 6cf85b2f39 Refactor Setting class to update and append items 2024-10-20 00:09:09 +08:00
Harvey Zack 5e09d2e513 Refactor Setting class to append items to panel 2024-10-19 23:58:24 +08:00
Harvey Zack 49704ffc29 Refactor Setting class to fix formatting and event handling 2024-10-19 23:37:01 +08:00
Harvey Zack e8c317051a Refactor Setting class to fix formatting and event handling 2024-10-19 23:27:28 +08:00
Harvey Zack b16a845875 Refactor Setting class to fix formatting and event handling 2024-10-19 23:11:19 +08:00
Harvey Zack 885bbf5a6d Refactor Setting class to use correct import and naming conventions 2024-10-19 22:56:52 +08:00
Harvey Zack 5e38f2d3b5 Refactor Setting class to use correct import and naming conventions 2024-10-19 22:31:32 +08:00
Harvey Zack 74915ebf9f Refactor Setting class to use correct import and naming conventions 2024-10-19 18:19:37 +08:00
Harvey Zack f62640e6e9 Update artplayer package version to 5.2.0 2024-10-19 14:10:13 +08:00
Harvey Zack 9221d42964 Add artplayer-plugin-ambilight package and demo 2024-10-19 13:55:16 +08:00
Harvey Zack 5a4598f846 Update CHANGELOG_CN.md 2024-10-19 13:54:23 +08:00
Harvey Zack 5dfe50c719 Add artplayer-plugin-ambilight package and demo 2024-10-19 13:53:36 +08:00
Harvey Zack 406d71b53c Refactor thumbnailsMix to add hover event handling 2024-10-18 23:45:01 +08:00
Harvey Zack 8481bddba1 Update mobile.html 2024-10-14 23:16:51 +08:00
Harvey Zack edc33bb32f artplayer-plugin-vast@1.0.0 2024-10-12 16:58:23 +08:00
Harvey Zack 252c226473 chore: add .npmrc and .npmignore files to multiple packages 2024-10-08 19:49:55 +08:00
Harvey Zack b8c29f29dc refactor: remove unused $player reference and add segmenter initialization log 2024-10-08 19:29:25 +08:00
Harvey Zack ffe4dd0d37 Update index.js 2024-10-08 12:05:48 +08:00
Harvey Zack a7599c41b5 docs: update README and config to include danmuku-mask plugin link 2024-10-08 12:00:40 +08:00
Harvey Zack e9d544f416 Built@main artplayer-plugin-danmuku-mask 2024-10-08 11:57:45 +08:00
Harvey Zack 7a1240b889 fix Option 2024-10-08 11:53:26 +08:00
Harvey Zack fdfc44806c fix stopSegmentation 2024-10-08 10:09:29 +08:00
Harvey Zack bdecbffeeb add selfie_segmentation 2024-10-08 09:47:05 +08:00
Harvey Zack 56b71879e8 feat: add function to make white pixels transparent in danmuku mask canvas 2024-10-08 00:51:12 +08:00
Harvey Zack fed73a9409 feat: adjust canvas opacity and update color settings for danmuku mask functionality 2024-10-08 00:34:54 +08:00
Harvey Zack ef56482911 feat: remove unused style file and integrate TensorFlow body segmentation for danmuku mask functionality 2024-10-07 23:49:33 +08:00
Harvey Zack d9bdc9bdeb feat: add danmuku mask plugin for ArtPlayer with initial implementation and documentation 2024-10-07 22:41:51 +08:00
Harvey Zack a6f0dc50e5 feat: update version to 1.0.1 and enhance Chromecast plugin functionality 2024-09-24 10:50:26 +08:00
Harvey Zack c9d2d6c194 feat: filter empty lines in subtitle rendering for improved display 2024-09-22 21:33:42 +08:00
Harvey Zack 1e63b8dc83 feat: update version to 1.1.0 and simplify cue merging logic 2024-09-22 18:08:40 +08:00
Harvey Zack c0c5a12010 feat: update subtitle properties and events to enhance cue management and retrieval 2024-09-22 17:35:12 +08:00
Harvey Zack 8ea85476e0 feat: update subtitle handling to support multiple active cues and improve rendering logic 2024-09-22 17:23:43 +08:00
Harvey Zack 3d33458efc feat: update package version to 1.0.0 and remove deprecated HLS quality files 2024-09-22 16:38:44 +08:00
Harvey Zack 6b93dc95b0 feat: update HLS links in documentation to reflect migration to artplayer-plugin-hls-control 2024-09-22 16:37:20 +08:00
Harvey Zack e3db4125b0 feat: simplify HLS instance handling in update function 2024-09-22 16:29:23 +08:00
Harvey Zack b9878e43e0 feat: update HLS control example and improve audio/quality track selection logic 2024-09-22 14:37:01 +08:00
Harvey Zack 31bd66a33e feat: add audio control feature to artplayer-plugin-hls-control, include audio.svg and update documentation 2024-09-22 13:46:14 +08:00
Harvey Zack ef964c4bc0 feat: migrate from artplayer-plugin-hls-quality to artplayer-plugin-hls-control, update configurations and documentation 2024-09-22 12:46:59 +08:00
Harvey Zack 4a172377b5 feat: update artplayer-plugin-hls-quality to version 3.0.0, add quality.svg and remove image.svg 2024-09-22 12:17:30 +08:00
Harvey Zack 666d1d8585 Update option.md 2024-09-19 18:07:03 +08:00
Harvey Zack 610e1e6139 Update config.js 2024-09-19 10:54:31 +08:00
Harvey Zack 57725e8e27 feat: add initial implementation of artplayer-proxy-canvas with core functionality 2024-09-19 10:52:54 +08:00
Harvey Zack 1605df2943 feat: update artplayerProxyCanvas to accept a callback for custom rendering options 2024-09-17 11:11:52 +08:00
Harvey Zack 92654e911f feat: add picture-in-picture support and enhance event emission in artplayerProxyCanvas 2024-09-17 10:30:52 +08:00
Harvey Zack faa621c5be Update canvas.js 2024-09-17 10:11:44 +08:00
Harvey Zack 157d28a647 refactor: simplify artplayerProxyCanvas implementation and improve event handling 2024-09-17 09:38:57 +08:00
Harvey Zack 51e558dc50 feat: add Arabic language support to documentation and type definitions 2024-09-16 22:41:15 +08:00
Harvey Zack 8f4dab5005 feat: Arabic language support added 2024-09-16 22:35:14 +08:00
Sumer Ahmed 4f631a0d7f feat: Arabic language support added (#809) 2024-09-16 22:29:22 +08:00
Harvey Zack c0a280a6e8 fix: remove error throwing in artplayerProxyCanvas 2024-09-15 11:57:26 +08:00
Harvey Zack 2a864ad97d Update canvas.js 2024-09-15 11:13:08 +08:00
Harvey Zack 2ba1b7d77a fix: artplayerProxyCanvas 2024-09-15 11:05:56 +08:00
Harvey Zack a74e7bbff4 feat: createImageBitmap 2024-09-15 10:56:51 +08:00
Harvey Zack 710f9477f8 feat: artplayerProxyCanvas 2024-09-15 10:39:11 +08:00
Harvey Zack 22dce779d1 update controls 2024-09-15 00:24:02 +08:00
Harvey Zack 400ab2f9c4 fix drawImage 2024-09-15 00:15:03 +08:00
Harvey Zack 278119068c feat: 移除不必要的日志输出,优化视频元素的创建逻辑,增加视频播放时的内联属性 2024-09-15 00:03:32 +08:00
Harvey Zack d4a868621f feat: 重命名渲染函数,优化绘制逻辑,增加绘制事件的日志输出 2024-09-14 23:33:30 +08:00
Harvey Zack f867a97032 feat: 重构视频帧绘制逻辑,优化渲染流程,增加视频播放和暂停事件的日志输出 2024-09-14 18:32:37 +08:00
Harvey Zack 211e9d22a2 feat: 增加动态设置字幕偏移功能,更新相关文档 2024-09-14 17:37:47 +08:00
Harvey Zack 36fb27d7a1 feat: 优化字幕事件逻辑,新增字幕加载和更新事件,删除不再使用的字幕切换事件 2024-09-14 17:30:22 +08:00
Harvey Zack 9b87f9661d feat: 优化字幕偏移逻辑,增加对模板的支持,修复字幕切换事件参数 2024-09-14 16:59:24 +08:00
Harvey Zack 36b2c80666 add restoreInit 2024-09-14 16:48:30 +08:00
Harvey Zack 2b11d897ff feat: 增加字幕相关属性和事件,优化字幕切换逻辑 2024-09-14 16:14:59 +08:00
Harvey Zack a0b6af32d0 Refactor artplayer-proxy-canvas to use requestAnimationFrame for frame drawing 2024-09-11 18:48:33 +08:00
Harvey Zack c81364ca9a add sleep 2024-09-08 19:43:04 +08:00
Harvey Zack c8b5282af9 feat: Add sleep function for delayed frame drawing in artplayer-proxy-canvas 2024-09-08 18:53:00 +08:00
Harvey Zack 7bf8a00a7d chore: Update artplayer-proxy-canvas to support canvas proxy 2024-09-08 18:46:02 +08:00
Harvey Zack a4be7b0ee6 feat: Update artplayer-proxy-canvas to support canvas proxy 2024-09-08 18:28:39 +08:00
Harvey Zack 813528f916 chore: Update artplayer-proxy-canvas to support canvas proxy 2024-09-08 18:20:11 +08:00
Harvey Zack 0f60ea53ae chore: Update artplayer-proxy-canvas to support canvas proxy 2024-09-08 18:05:06 +08:00
Harvey Zack c984034234 Update package.json 2024-09-07 10:39:14 +08:00
Harvey Zack 9f1ba901bb Update package.json 2024-09-07 10:30:57 +08:00
Harvey Zack afcfebe01e Update Artplayer.vue 2024-09-06 10:02:29 +08:00
Harvey Zack 910c22391f Update Artplayer.vue 2024-09-06 10:02:18 +08:00
Harvey Zack 69133015e9 chore: Update auto.thumbnail.js and index.js 2024-09-01 12:14:53 +08:00
Harvey Zack 4e2d68854a Update README.md 2024-09-01 12:07:00 +08:00
Harvey Zack a33df191a4 feat: Add artplayer-plugin-auto-thumbnail plugin 2024-09-01 12:05:08 +08:00
Harvey Zack c44ec85ed2 refactor: Update artplayer-plugin-vtt-thumbnail version to 1.0.3 2024-08-31 12:02:16 +08:00
Harvey Zack 44171beb3a refactor: Update artplayer-plugin-vtt-thumbnail 2024-08-31 11:54:34 +08:00
Harvey Zack c7299b926e Merge branch 'master' of https://github.com/zhw2590582/ArtPlayer 2024-08-31 11:47:28 +08:00
Harvey Zack 3fdc11cf40 update artplayer-plugin-vtt-thumbnail 2024-08-31 11:47:23 +08:00
Harvey Zack 63223c8202 refactor: Remove unused libmedia proxy and related files 2024-08-25 14:44:11 +08:00
Harvey Zack 2fe7a09aaf refactor: Update Q群 link in index.html 2024-08-24 23:03:11 +08:00
Harvey Zack 9a4ebf7917 Update vast.js 2024-08-23 23:31:06 +08:00
Harvey Zack 4d43fffa87 refactor: Remove unused variables in VAST plugin 2024-08-23 23:27:09 +08:00
Harvey Zack 87b0506f51 refactor: Update VAST plugin in Artplayer 2024-08-23 23:23:50 +08:00
Harvey Zack f9192ff852 refactor: Update VAST plugin in Artplayer 2024-08-23 22:42:04 +08:00
Harvey Zack d2de5297d6 refactor: Update autoPlayback plugin in Artplayer 2024-08-23 16:20:25 +08:00
Harvey Zack 17b2268ce0 refactor: Remove unused loadImg function in Artplayer 2024-08-23 12:40:26 +08:00
Harvey Zack 27f161be40 refactor: Update thumbnail scale and video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-23 12:37:32 +08:00
Harvey Zack 1ee80cf012 refactor: Remove unused loadImg function in Artplayer 2024-08-23 12:06:49 +08:00
Harvey Zack 5764344aaf refactor: Update thumbnail scale in Artplayer 2024-08-23 12:05:06 +08:00
Harvey Zack 3a2e7addd9 refactor: Update video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-23 10:43:09 +08:00
Harvey Zack b2e54d6969 Update index.js 2024-08-23 10:17:17 +08:00
Harvey Zack 6f6d49bbae refactor: Update video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-22 18:29:23 +08:00
Harvey Zack 84986d384a Update option.d.ts 2024-08-22 15:40:46 +08:00
Harvey Zack 1d0139ee35 refactor: Improve video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-22 11:41:59 +08:00
Harvey Zack 71a1126aae Revert "refactor: Update video element resizing logic in Artplayer and artplayer-proxy-webav"
This reverts commit 77a3438e2d.
2024-08-22 11:38:24 +08:00
Harvey Zack 77a3438e2d refactor: Update video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-22 11:13:10 +08:00
Harvey Zack ce3503cc3a Update artplayer-proxy-webav.d.ts 2024-08-22 00:27:51 +08:00
Harvey Zack 52e424ad52 refactor: Update video element in Artplayer to support custom canvas or video 2024-08-22 00:21:23 +08:00
Harvey Zack 5bbbaa398e refactor: Update video element resizing logic in Artplayer and artplayer-proxy-webav 2024-08-22 00:09:03 +08:00
Harvey Zack b711291aee refactor: Update Artplayer's video element and add support for custom canvas or video
The code changes in this commit update the video element in Artplayer to support custom canvas or video. This enhancement allows for more flexibility in handling video playback and rendering. Additionally, new options such as volume, autoplay, autoSize, screenshot, setting, loop, flip, playbackRate, aspectRatio, fullscreen, fullscreenWeb, miniProgressBar, and autoPlayback are added to provide more control over the video player. These changes improve the functionality and usability of Artplayer.
2024-08-21 23:52:47 +08:00
Harvey Zack 5e37979e8f refactor: Update video element in Artplayer to support custom canvas or video 2024-08-21 23:44:01 +08:00
Harvey Zack ced8fb4fb1 refactor: Update video element in Artplayer to support custom canvas or video 2024-08-21 23:35:17 +08:00
Harvey Zack 984755b442 ```text
refactor: Update animation frame handling in artplayer-proxy-webav

The code changes replace the use of `requestAnimationFrame` with `setInterval` in the `start` function of `artplayer-proxy-webav`. This change improves the performance and stability of the animation frame handling, ensuring a smoother playback experience.
2024-08-21 23:29:38 +08:00
Harvey Zack 0374046606 refactor: Update loadedTime getter in Artplayer 2024-08-21 23:13:44 +08:00
Harvey Zack 796f25cea2 refactor: Update loadedTime getter in Artplayer
The code changes update the loadedTime getter in Artplayer to handle different scenarios. The getter now checks for the presence of the loadedTime property in the video element and returns it if available, otherwise it falls back to the previous logic of retrieving the buffered end time. This update improves the reliability and compatibility of Artplayer's loadedTime functionality.
2024-08-21 22:28:00 +08:00
Harvey Zack 0a7d3ca5aa refactor: Update loadedTime and playing getters in Artplayer 2024-08-21 22:10:24 +08:00
Harvey Zack 8613164368 refactor: Update loadedTime and playing getters in Artplayer
The code changes update the loadedTime and playing getters in Artplayer to handle different scenarios. The loadedTime getter now checks for the presence of the loadedTime property in the video element and returns it if available, otherwise it falls back to the previous logic of retrieving the buffered end time. Similarly, the playing getter now checks for the presence of the playing property in the video element and returns it if available, otherwise it falls back to the previous logic of determining if the video is playing based on its current time, paused state, ended state, and ready state. These updates improve the reliability and compatibility of Artplayer's loadedTime and playing functionality.
2024-08-21 21:56:08 +08:00
Harvey Zack 6dc6be5b9e refactor: Update library section heading in README and docs
The code changes update the heading for the library section in both the README and docs files. The heading is changed from "Library" to "Libraries" to provide a more accurate description of the content. This refactor improves the clarity and consistency of the documentation.
2024-08-18 21:46:11 +08:00
Harvey Zack 4fd012c20c feat: 添加动态代理支持
新增 `option.proxy` 选项,用于代理第三方的 `video` 和 `canvas`。新增 `artplayer-proxy-webav` 代理,来自 [bilibili/WebAV](https://github.com/bilibili/WebAV)。新增 `artplayer-proxy-libmedia` 代理,来自 [zhaohappy/libmedia](https://github.com/zhaohappy/libmedia)。
2024-08-18 21:19:34 +08:00
Harvey Zack 883762ed42 feat: Add support for dynamic proxies in Artplayer
The code changes introduce new proxy options (`artplayer-proxy-webav` and `artplayer-proxy-libmedia`) in Artplayer, allowing for the use of third-party video and canvas proxies. This enhancement provides more flexibility in handling video playback and rendering, improving the overall performance and compatibility of Artplayer.
2024-08-18 21:17:28 +08:00
Harvey Zack 7f6c9c8ee1 refactor: Update video element in Artplayer to support custom canvas or video 2024-08-18 21:06:56 +08:00
Harvey Zack 7fa69a7de8 refactor: Update video element in Artplayer to support custom canvas or video 2024-08-18 20:46:53 +08:00
Harvey Zack 66010cb376 refactor: Update video element in Artplayer to support custom canvas or video
This commit updates the `libmedia.js`, `option.d.ts`, `index.js`, `template.js`, and `scheme/index.js` files in the Artplayer repository. The changes introduce a new `video` property in the `Option` type, allowing for the use of a custom video element in Artplayer. The `video` property can be set to `null`, an `HTMLCanvasElement`, or an `HTMLVideoElement`. This enhancement provides flexibility in rendering video content and improves compatibility with different platforms and use cases.
2024-08-18 18:39:14 +08:00
Harvey Zack 5d6b94afa6 Update artplayer-plugin-canvas.d.ts 2024-08-17 21:04:32 +08:00
Harvey Zack 219956cabd refactor: Update build timestamp in Artplayer 2024-08-17 21:02:39 +08:00
Harvey Zack e9a488792c refactor: Update build timestamp in Artplayer
The build timestamp in Artplayer has been updated to "2024-08-15 23:17:21". This commit ensures that the build timestamp accurately reflects the latest changes made to the codebase.
2024-08-15 23:28:13 +08:00
Harvey Zack 65b0b2c53f refactor: Simplify thumbnails implementation in Artplayer 2024-08-15 23:08:33 +08:00
Harvey Zack 3e3b38fe07 feat: Refactor thumbnails implementation in Artplayer
This commit refactors the `thumbnails` implementation in Artplayer to improve code readability and maintainability. The code changes remove unnecessary variables and simplify the logic for displaying thumbnails. This refactor enhances the overall performance and user experience of the Artplayer plugin.
2024-08-15 22:56:19 +08:00
Harvey Zack 69168750f5 Update property.md 2024-08-15 22:51:20 +08:00
Harvey Zack 52d9064c8b feat: Add support for dynamic thumbnails in Artplayer
The code changes introduce a new `art.thumbnails` property that allows for dynamic setting of thumbnails in Artplayer. This feature enhances the user experience by providing a visual preview of the video content.
2024-08-15 22:50:21 +08:00
Harvey Zack 5655db4b20 feat: Disable hiding default right-click menu when Artplayer.CONTEXTMENU is set to false 2024-08-12 17:53:43 +08:00
Harvey Zack adff473f71 Update index.html 2024-08-06 15:03:55 +08:00
Harvey Zack 2e646ab4e1 Create ads.txt 2024-08-04 09:53:40 +08:00
Harvey Zack 0bb99184ca feat: Add Google AdSense script for ads in index.html and config.js 2024-08-04 09:43:38 +08:00
Harvey Zack 245ce6c6b7 feat: Add Google AdSense meta tag to index.html and config.js 2024-08-04 09:38:25 +08:00
Harvey Zack 0dd25d73c6 Update artplayer-plugin-chapter.d.ts 2024-07-18 09:43:41 +08:00
dependabot[bot] 00f0501c0e build(deps): Bump glob from 10.4.5 to 11.0.0 (#783)
Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.5 to 11.0.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v11.0.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 09:33:23 +08:00
Harvey Zack 7414f4a86a Update index.html 2024-07-07 22:44:31 +08:00
Harvey Zack a86664b3db Update package.json 2024-07-04 09:59:42 +08:00
Harvey Zack e71e6ad0dd feat: Add support for custom file names in screenshot functionality 2024-07-04 09:57:13 +08:00
Harvey Zack caddb2091e feat: Add support for custom file names in screenshot functionality 2024-07-03 15:56:49 +08:00
Harvey Zack b2796a1f6c feat: Add Artplayer.STYLE property to Artplayer class 2024-06-21 11:44:02 +08:00
Harvey Zack 5a0b80b03e feat: Add STYLE property to Artplayer class 2024-06-19 19:13:04 +08:00
Harvey Zack cf0c3d9b09 Update sponsor.html 2024-06-19 09:18:26 +08:00
Harvey Zack 85bf3ea0d3 Update package.json 2024-06-17 23:18:37 +08:00
Harvey Zack c6b6e13799 feat: Update Artplayer initialization in documentation 2024-06-16 23:26:40 +08:00
Harvey Zack 0cee288097 feat: Add responsive behavior to danmuku plugin and improve panel positioning 2024-06-15 19:56:06 +08:00
Harvey Zack 74460a765e add width 2024-06-14 09:31:47 +08:00
Harvey Zack e2f27e8ea5 feat: Improve panel positioning in danmuku plugin 2024-06-13 11:20:45 +08:00
Harvey Zack b4e3121917 feat: Improve panel positioning in danmuku plugin 2024-06-13 11:12:23 +08:00
Harvey Zack 685241de57 chore: Bump version to 5.1.4 and update resize method in danmuku plugin 2024-06-13 09:46:40 +08:00
Harvey Zack ef3a1f7064 feat: Add width option for danmuku plugin 2024-06-12 21:48:44 +08:00
Harvey Zack 665348ad55 feat: Update danmuku plugin with responsive behavior 2024-06-12 21:40:17 +08:00
Harvey Zack 744913b0bf feat: Optimize progress bar and add highlight feature 2024-06-08 17:38:41 +08:00
Harvey Zack e2a40e67a0 Update utils.d.ts 2024-06-08 13:01:09 +08:00
Harvey Zack 73bafc988a feat: Fix dropdown menu bug in dev.js and build.js 2024-06-08 12:47:24 +08:00
Harvey Zack 1192f18de6 chore: Update npm dependencies and package.json files 2024-06-08 12:25:05 +08:00
Harvey Zack 232b8a3e17 feat: Add getRect function to utils and update player and control modules to use it 2024-06-08 12:17:45 +08:00
Harvey Zack 2721f61b41 Merge branch 'thumbnails' 2024-06-08 12:13:18 +08:00
Harvey Zack a7f4b0bc84 feat: Add lazy loading for thumbnails in mobile.js 2024-06-08 12:11:47 +08:00
Harvey Zack f4c9f1f639 update thumbnails 2024-06-08 12:11:11 +08:00
Harvey Zack c4fd5b1a5d Update README.md 2024-06-06 10:17:38 +08:00
Harvey Zack 7c52a30833 Update CHANGELOG_CN.md 2024-06-05 09:21:00 +08:00
Harvey Zack 1ee0342f11 Update danmuku.md 2024-06-05 09:19:03 +08:00
Harvey Zack 9973cdc4da feat: Optimize chapter handling in artplayer-plugin-chapter 2024-06-05 09:17:39 +08:00
Harvey Zack 403be5dc6b chore: Bump version to 5.1.2 and update style.less in artplayer-plugin-danmuku 2024-06-05 09:13:11 +08:00
Harvey Zack 8aea92f40a Update index.js 2024-06-04 23:06:20 +08:00
Harvey Zack 0e269c2f41 Refactor danmuku.js to use async/await for emitting danmus 2024-06-04 22:08:23 +08:00
Harvey Zack 2d44d602e4 feat: Add parameter to append danmuku library in artplayer-plugin-danmuku 2024-06-04 21:59:55 +08:00
Harvey Zack 390be821d6 feat: Refactor danmuku.js to use async/await for emitting danmus 2024-06-04 19:20:26 +08:00
Harvey Zack 69d99cc478 feat: Refactor worker.js to use dynamic function dispatch 2024-06-04 19:12:11 +08:00
Harvey Zack d57a13a2bd Optimize bilibiliDanmuParseFromUrl function in artplayer-plugin-danmuku 2024-06-04 19:00:49 +08:00
Harvey Zack e58285f2dd Optimize bilibiliDanmuParseFromUrl function in artplayer-plugin-danmuku 2024-06-04 18:52:59 +08:00
Harvey Zack 999988465c feat: Optimize chapter handling in artplayer-plugin-chapter 2024-06-03 12:00:44 +08:00
Harvey Zack e11a2da806 Optimize chapter end time handling in artplayer-plugin-chapter 2024-06-03 11:51:58 +08:00
Harvey Zack 586375eeb0 Update danmuku.js 2024-06-03 10:27:11 +08:00
Harvey Zack c8d3e5b5a6 build artplayer-plugin-chapter 2024-06-03 10:09:18 +08:00
Harvey Zack 5160dcabca Optimize setBar event and remove unnecessary class manipulation in artplayer-plugin-chapter 2024-06-03 10:04:09 +08:00
Harvey Zack f3db438d6b Optimize setBar event and handle non-array chapters in artplayer-plugin-chapter 2024-06-03 01:11:35 +08:00
Harvey Zack d8ff61acf7 chore: Refactor artplayer-plugin-chapter to sort chapters before processing 2024-06-03 01:10:29 +08:00
Harvey Zack 5edf5af672 Optimize setBar event and fix chapter display in artplayer-plugin-chapter 2024-06-03 01:02:22 +08:00
Harvey Zack bc5761ecdb Optimize setBar event and add lazy loading for thumbnails in artplayer-plugin-chapter 2024-06-03 00:38:54 +08:00
Harvey Zack 2e72e0cec2 Optimize setBar event and update chapter display in artplayer-plugin-chapter 2024-06-03 00:35:47 +08:00
Harvey Zack 94e34320e0 Optimize setBar event and reduce delay for hiding chapter title in artplayer-plugin-chapter 2024-06-03 00:17:32 +08:00
Harvey Zack e8d7ae91f0 Optimize setBar event and add lazy loading for thumbnails in artplayer-plugin-chapter 2024-06-02 23:55:20 +08:00
Harvey Zack d99fa9447a Optimize setBar event and add lazy loading for thumbnails in artplayer-plugin-chapter 2024-06-02 22:59:42 +08:00
Harvey Zack aaa5ef310e Optimize setBar event and add lazy loading for thumbnails in artplayer-plugin-chapter 2024-06-02 22:23:22 +08:00
Harvey Zack 0e58ce8cd9 feat: Optimize setBar event and add artplayerPluginChapter plugin 2024-06-02 22:09:58 +08:00
Harvey Zack 570c1611d3 feat: Add lazy loading for thumbnails in artplayer-plugin-chapter 2024-06-02 20:06:47 +08:00
Harvey Zack 17ab163e91 chore: Bump artplayer-plugin-danmuku version to 5.1.1 2024-06-02 19:52:25 +08:00
Harvey Zack 41cdde4b79 feat: Improve chapter display in artplayer-plugin-chapter 2024-06-02 19:26:33 +08:00
Harvey Zack 2326628b86 feat: Update chapter title display in artplayer-plugin-chapter 2024-06-02 19:12:27 +08:00
Harvey Zack 0804d1790b feat: Add chapter text display on progress hover in artplayer-plugin-chapter 2024-06-02 18:51:16 +08:00
Harvey Zack 33eba49a3b fix: Remove unused code for progress hover in artplayer 2024-06-02 18:13:29 +08:00
Harvey Zack 3e3e355e34 feat: Add support for video chapters in artplayer-plugin-chapter 2024-06-02 18:06:11 +08:00
Harvey Zack a59942ca58 chore: Update ArtPlayer version to 5.1.5 2024-06-02 14:22:04 +08:00
Harvey Zack 0fce9f5ffe Update common.js 2024-06-02 14:01:08 +08:00
Harvey Zack eef1d675df feat: Add support for video chapters in artplayer-plugin-chapter 2024-06-02 13:07:26 +08:00
Harvey Zack 502865ef65 Update create.js 2024-06-02 12:56:26 +08:00
Harvey Zack 924c3513e8 Update create.js 2024-06-02 12:45:54 +08:00
Harvey Zack 0f7a3ce02c chore: Update window object property name to ArtplayerPluginVast 2024-06-02 12:37:30 +08:00
Harvey Zhao fac7d15726 Vast (#762)
* add artplayer-plugin-vast

* chore: Add create:plugin script to package.json

* chore: Remove deprecated artplayer-plugin-{{name}} and artplayer-plugin-vast types

* chore: Update artplayer-plugin-vast package description

* chore: Update Prettier configuration and dependencies
2024-06-02 12:28:17 +08:00
Harvey Zack b398749ef8 chore: Update ArtPlayer version to 5.1.4 2024-06-01 21:43:06 +08:00
Harvey Zack 551eb64ea7 Update mobile.js 2024-06-01 12:05:06 +08:00
Harvey Zack 994f9e4b04 feat: Update mobile.js to enable auto preload for better performance 2024-06-01 11:59:44 +08:00
Harvey Zack 32078b9669 fix: Fix fullscreen functionality in mobile.html and fullscreenMix.js 2024-06-01 11:47:27 +08:00
Harvey Zack 77fb5c6d12 add fullscreenchange 2024-06-01 10:11:48 +08:00
Harvey Zack 0ffd7980d2 Update ArtPlayer version to 5.1.3 2024-06-01 09:51:01 +08:00
Harvey Zack 4f66533021 feat: Improve fullscreen functionality in mobile.html and fullscreenMix.js 2024-06-01 09:42:47 +08:00
Harvey Zack 80aa030aaa fix: Fix fullscreen functionality in mobile.html 2024-06-01 09:37:38 +08:00
Harvey Zack 794ab9ec29 Update danmuku.js 2024-06-01 09:25:14 +08:00
Harvey Zack 31125ac790 fix: Fix fullscreen functionality in mobile.html 2024-06-01 09:13:16 +08:00
Harvey Zack 67fdb31717 Update danmuku.js 2024-06-01 09:10:19 +08:00
Harvey Zack cb87252bbd fix: Fix fullscreen functionality in mobile.html 2024-06-01 09:06:55 +08:00
Harvey Zack e7727c0fa1 Update fullscreenMix.js 2024-06-01 08:59:47 +08:00
Harvey Zack 9d20cb75f7 Update fullscreenMix.js 2024-06-01 08:46:40 +08:00
Harvey Zack cc64281bb8 Update fullscreenMix.js 2024-06-01 08:42:47 +08:00
Harvey Zack 4dc1e9164a chore: Update ArtPlayer version to 5.1.3 2024-06-01 08:02:53 +08:00
Harvey Zack c1de88c3f4 chore: Update ArtPlayer version to 5.1.3 2024-06-01 07:59:02 +08:00
Harvey Zack 34b7018e3d chore: Remove screen.orientation.lock functionality due to compatibility issues 2024-06-01 07:19:03 +08:00
Harvey Zack d86840749b chore: Update screen.orientation.lock usage for autoOrientation plugin 2024-06-01 07:11:53 +08:00
Harvey Zack 574bb14643 chore: Update webtorrent.js link in navigation bar 2024-06-01 07:07:33 +08:00
Harvey Zack 2c7430d524 chore: Update webtorrent.js link in navigation bar 2024-06-01 06:56:48 +08:00
Harvey Zack fab977711e Update fullscreenMix.js 2024-06-01 00:24:06 +08:00
Harvey Zack 495083aba1 Update webtorrent.js 2024-05-31 10:20:01 +08:00
Harvey Zack a8151ba4fb chore: Update webtorrent.js link in navigation bar 2024-05-31 10:13:45 +08:00
Harvey Zack f260f3a9ec Update index.html 2024-05-30 21:42:08 +08:00
Harvey Zack bddaf178d9 Update sponsor.html 2024-05-30 21:32:23 +08:00
Harvey Zack 82d263bc6c chore: Update donation link in navigation bar 2024-05-30 21:28:27 +08:00
Harvey Zack 0d830e04d8 chore: Add donation link and QQ group to navigation bar 2024-05-30 20:32:05 +08:00
Harvey Zack 6d1f8e1c7f chore: Update danmuku plugin configuration handling and improve performance 2024-05-30 08:11:13 +08:00
Harvey Zack 20752bc170 chore: Update danmuku plugin configuration handling and improve performance 2024-05-30 08:07:10 +08:00
Harvey Zack 0af549189a Update artplayer-plugin-danmuku.d.ts 2024-05-30 06:09:07 +08:00
Harvey Zack f62bd0558a chore: Update danmuku plugin configuration handling and improve performance 2024-05-30 00:06:36 +08:00
Harvey Zack 63e7b1a9e6 Update artplayer-plugin-danmuku.d.ts 2024-05-30 00:03:32 +08:00
Harvey Zack 58846384c8 chore: Update danmuku plugin configuration handling and improve performance 2024-05-29 23:55:07 +08:00
Harvey Zack 5cee83817a Update danmuku.js 2024-05-29 23:37:02 +08:00
Harvey Zack 6d74b32b33 chore: Update danmuku plugin configuration handling and improve performance 2024-05-29 23:36:34 +08:00
Harvey Zack 0ae3b05d0a Update artplayer-plugin-danmuku.d.ts 2024-05-29 22:37:52 +08:00
Harvey Zack eb5af00d82 Update config.js 2024-05-29 14:22:00 +08:00
Harvey Zack 1ee87c8c2b Update artplayer-plugin-danmuku.d.ts 2024-05-29 12:44:03 +08:00
Harvey Zack fcef233746 chore: Update danmuku plugin configuration handling and improve performance 2024-05-29 12:42:04 +08:00
Harvey Zack 4971eaa17c chore: Optimize danmuku plugin performance and update configuration handling 2024-05-29 11:19:13 +08:00
Harvey Zack d0f1f4a76c chore: Update danmuku plugin configuration handling and improve performance 2024-05-29 11:16:56 +08:00
Harvey Zack 034444d77d chore: Improve danmuku plugin performance and update configuration handling 2024-05-29 10:59:45 +08:00
Harvey Zack b2bf084fbc chore: Set DOM node state and update styles for danmuku plugin 2024-05-29 10:41:59 +08:00
Harvey Zack 54b20cdfcb Merge branch 'master' of https://github.com/zhw2590582/ArtPlayer 2024-05-28 11:26:10 +08:00
Harvey Zack d932aa95ff Update style.css 2024-05-28 11:26:07 +08:00
Harvey Zack 5f0b7ffc77 Update nodejs.yml 2024-05-28 11:14:12 +08:00
Harvey Zack c1edb1ac6e chore: Update checkbox labels and improve code editor functionality 2024-05-28 11:11:31 +08:00
Harvey Zack 7464cfa80f Update package.json 2024-05-28 10:37:52 +08:00
Harvey Zack bc4e8ec3f7 Update package.json 2024-05-28 10:10:18 +08:00
Harvey Zack 67a5025d9e chore: Optimize danmuku plugin performance and update configuration handling 2024-05-28 10:08:03 +08:00
Harvey Zack 264ad16790 chore: Optimize danmuku plugin performance and update configuration handling 2024-05-28 10:05:34 +08:00
Harvey Zack 6719f516a5 chore: Optimize danmuku plugin performance and update configuration handling 2024-05-28 10:01:45 +08:00
Harvey Zack a158c5ebdc chore: Optimize danmuku plugin performance and update configuration handling 2024-05-28 09:32:24 +08:00
Harvey Zack e91bcff3a8 chore: Update danmuku plugin to resize and reset displayed danmuku 2024-05-28 09:02:28 +08:00
Harvey Zack 313b6ae54d chore: Refactor artplayerPluginDanmuku plugin and add artplayerPluginChromecast plugin 2024-05-28 08:45:43 +08:00
Harvey Zack 9ca560fd05 chore: Update danmuku plugin to improve performance and optimize configuration updates 2024-05-27 22:13:49 +08:00
Harvey Zack 0661848f64 chore: Update tooltip for danmuku toggle button 2024-05-27 22:04:09 +08:00
Harvey Zack 8366b0673a chore: Update Artplayer option type imports and usage 2024-05-27 18:30:06 +08:00
Harvey Zack ab109a1acd chore: Update mount parameter type in Danmuku and Setting classes 2024-05-27 18:16:40 +08:00
Harvey Zack f4396308fe Update danmuku.js 2024-05-27 17:46:20 +08:00
Harvey Zack 7ed2f58e6a chore: Update mount parameter type in Danmuku and Setting classes 2024-05-27 17:27:55 +08:00
Harvey Zack 27284099d7 chore: Update font size range for danmuku plugin 2024-05-27 14:18:58 +08:00
Harvey Zack 24e51b96e2 chore: Update Danmuku show and hide methods 2024-05-27 13:55:59 +08:00
Harvey Zack f79538d259 chore: Optimize configuration updates in Danmuku and Setting classes 2024-05-27 13:52:23 +08:00
Harvey Zack 6c74db3a06 Update danmuku.md 2024-05-27 12:46:55 +08:00
Harvey Zack c1457dd9ae chore: Update build.js to return compressedHtmlString instead of compressedCssString 2024-05-27 12:43:50 +08:00
Harvey Zack 774ca866d2 chore: Update build.js to return compressedHtmlString instead of compressedCssString 2024-05-27 12:30:30 +08:00
Harvey Zack c7e91e3c8f chore: Reset danmuku queue and emit event on reset 2024-05-27 11:47:31 +08:00
Harvey Zack b2f2251c63 Update artplayer-plugin-danmuku.d.ts 2024-05-27 11:44:20 +08:00
Harvey Zack e53c051166 chore: Update plugin names to use proper capitalization 2024-05-27 11:37:27 +08:00
Harvey Zack 43309b72cf Update common.js 2024-05-27 11:19:59 +08:00
Harvey Zack fb700fa988 chore: Update dependencies and optimize configuration updates in Danmuku and Setting classes 2024-05-27 11:03:26 +08:00
Harvey Zack e3a337d9ab chore: Remove unnecessary console.log statements 2024-05-27 10:01:40 +08:00
Harvey Zack 45c122027a chore: Optimize configuration updates in Danmuku and Setting classes 2024-05-26 22:55:53 +08:00
Harvey Zack c3ea0bdeec chore: Add artplayer plugins for various video formats 2024-05-26 22:53:06 +08:00
Harvey Zack eb5369573d chore: Remove unnecessary code and optimize configuration updates in Danmuku and Setting classes 2024-05-26 22:16:30 +08:00
Harvey Zack a1569b9ddf chore: Remove console.log statements from Danmuku and Setting classes 2024-05-26 21:39:16 +08:00
Harvey Zack 8a9132ea91 chore: Optimize configuration updates in Danmuku and Setting classes 2024-05-26 21:29:14 +08:00
Harvey Zack 2c618bc7b4 Update switchMix.js 2024-05-26 21:09:09 +08:00
WeidiDeng 2f9604c44a seek when video metadata is ready in switch url (#743) 2024-05-26 21:08:00 +08:00
Harvey Zack bc1554d240 Update nodejs.yml 2024-05-26 20:45:23 +08:00
Harvey Zack 5bb44b4998 Update nodejs.yml 2024-05-26 20:41:47 +08:00
Harvey Zack e01f49821c Update nodejs.yml 2024-05-26 20:38:40 +08:00
Harvey Zack 12b1c1d347 chore: Update package.json to set "private" flag to true 2024-05-26 20:29:25 +08:00
Harvey Zack c08798fb05 refactor: Update ESLint configuration to use latest ECMAScript version and warn about indentation 2024-05-26 20:01:27 +08:00
Harvey Zack 2b8c1e2d32 chore: Update npmClient to use yarn instead of lerna bootstrap 2024-05-26 19:53:13 +08:00
Harvey Zack 2665177532 chore: Update npmClient to use yarn instead of lerna bootstrap 2024-05-26 19:48:15 +08:00
Harvey Zack bf7629e1d7 Update nodejs.yml 2024-05-26 19:39:11 +08:00
Harvey Zack 699135afcf Danmuku (#759)
* chore: Bump artplayer-plugin-danmuku version to 5.1.0

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Refactor getDanmuTop function to handle additional cases

* chore: Refactor getDanmuTop function to handle additional cases

* chore: Update danmuku plugin with new mount option

* chore: Update danmuku plugin with new mount option

* chore: Refactor danmuku plugin to always create a new Setting instance

* Refactor danmuku plugin to always create a new Setting instance

* Refactor danmuku plugin to always create a new Setting instance

* Update danmuku.js

* Update danmuku.js

* Refactor danmuku plugin to include a new Setting instance

* Refactor danmuku plugin to include a new Setting instance

* Refactor danmuku plugin styles for better alignment and spacing

* Refactor danmuku plugin styles for better alignment and spacing

* Refactor danmuku plugin styles for better alignment and spacing

* Refactor danmuku plugin styles for better alignment and spacing

* Refactor danmuku plugin styles for better alignment and spacing

* chore: Update package.json files

* Refactor danmuku plugin to remove unnecessary whitespace in the setting template

* chore: Remove ESLint configuration files and update npm dependencies

* chore: Update ESLint configuration to disable console warnings and fix unused variable warnings

* chore: Update ESLint configuration to fix quotes rule

* Update package.json

* Update package.json

* Update setting.js

* chore: Compress CSS code in build script

* chore: Update build script to compress JavaScript code

* chore: Update build script to compress JavaScript code

* chore: Refactor setting.js to improve code organization and remove unused variables

* chore: Add isHover flag to Control component for better control hiding behavior

* chore: Update Control component to use $bottom instead of $controls for better control hiding behavior

* Update package.json

* Update package.json

* Update package.json

* chore: Update lerna.json to use independent versioning and yarn as npm client

* refactor: Update Danmuku class to support configurable modes and visibility

* refactor: Update Danmuku styles for better visibility and configurability

* feat: Update font weight in Danmuku styles for better readability

* refactor: Update Danmuku class to support configurable modes and visibility

* refactor: Add opacity, area, font, and speed sliders to Danmuku settings

* refactor: Initialize sliders for opacity, area, font, and speed in Danmuku settings

* feat: Add slider UI for opacity, area, and speed in Danmuku settings

* feat: Update slider styles in Danmuku settings for better visibility and configurability

* refactor: Improve Danmuku settings UI for better visibility and configurability

* refactor: Improve Danmuku settings UI for better visibility and configurability

* refactor: Update slider styles in Danmuku settings for better visibility and configurability

* refactor: Update margin slider initialization in Danmuku settings

* refactor: Update slider styles and initialization in Danmuku settings

* refactor: Update Danmuku class to support configurable visibility

* refactor: Update Danmuku class to support configurable visibility

* refactor: Update Danmuku class to support configurable visibility

* refactor: Update Danmuku class to support configurable visibility

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Improve Danmuku settings UI for better visibility and configurability

* add lock

* refactor: Add lock and unlock methods to Danmuku settings

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* Update artplayer-plugin-danmuku.d.ts

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings event listeners

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability

* refactor: Update Danmuku settings UI for better visibility and configurability
2024-05-26 14:57:22 +08:00
Harvey Zack dfd1cf968d chore: Refactor lock plugin to improve code readability and maintainability 2024-05-11 12:44:14 +08:00
Harvey Zack 9daa14e32d Update index.js 2024-04-16 10:00:47 +08:00
Harvey Zack 3ca3a3b781 Update artplayer-plugin-chromecast.d.ts 2024-04-16 00:55:56 +08:00
Harvey Zack aa5dbd0418 Add artplayer-plugin-chromecast to index.html 2024-04-16 00:45:26 +08:00
Harvey Zack 8f8b69cc25 Update thumbnails.js 2024-04-12 10:50:57 +08:00
Harvey Zack 00f780a7dc Update index.html to remove QQ群•320881312 and add a new div for QQ群•320881312 in the tool section 2024-04-11 10:58:22 +08:00
Harvey Zack c47c39d13b Update index.html 2024-04-11 10:01:49 +08:00
Harvey Zack 5f694a7299 Update HTML files to improve language consistency and remove unused code 2024-04-10 22:13:01 +08:00
Harvey Zack 76a6c59e12 Update style.css to remove unused color property and improve layout 2024-04-10 22:06:17 +08:00
Harvey Zack 5f0e41ad40 Update donate link in index.html 2024-04-10 21:55:43 +08:00
Harvey Zack 5ae86a407f Update style.css to improve layout and design 2024-04-10 21:51:20 +08:00
Harvey Zack 1210eb8a98 Fix indentation in clickInit.js 2024-03-30 11:13:13 +08:00
WeidiDeng 8038397185 record click timestamps to calculate number of clicks (#728)
* record click timestamps to calculate number of clicks

* break after each case
2024-03-30 11:07:25 +08:00
Harvey Zack d982f4d3b1 Add supportsFlex() function and error handling for unsupported flex layout 2024-03-30 11:02:35 +08:00
Harvey Zack fb6179e2be Add fullscreenError event to Artplayer 2024-03-30 10:34:42 +08:00
Harvey Zack 7f295a5c84 Merge branch 'master' of https://github.com/zhw2590582/ArtPlayer 2024-03-29 17:16:25 +08:00
Harvey Zack 5e155770f6 Remove unused font files and deleted unnecessary JavaScript files 2024-03-29 17:16:05 +08:00
Harvey Zack 04905ff44f Update Artplayer version and service worker registration 2024-03-17 18:55:47 +08:00
Harvey Zack c9dd163ab5 Merge branch 'master' of https://github.com/zhw2590582/ArtPlayer 2024-03-17 18:28:35 +08:00
Harvey Zack 781b93523c Update fullscreen.less and package.json 2024-03-17 18:28:18 +08:00
Harvey Zack 83ab3419e0 Create frag_bunny.mp4 2024-02-04 11:25:26 +08:00
Harvey Zack 346bb0adf2 Update release date for version 5.1.1 2024-02-03 11:52:51 +08:00
Harvey Zack 3aa30de771 Update version to 5.1.1 and add support for synchronous and asynchronous plugin functions 2024-01-11 10:40:55 +08:00
Harvey Zack a1063c20ed update docs 2024-01-10 09:58:31 +08:00
Harvey Zack 50ba902df5 Update dependencies and remove unused files 2024-01-10 09:31:36 +08:00
Harvey Zack 0dee1ef446 update docs 2024-01-10 09:20:13 +08:00
Harvey Zack 434aa3d57d Update CHANGELOG_CN.md and template.js 2023-12-23 12:02:18 +08:00
Harvey Zack 0a0b1593ae Update style.css and index.html files 2023-12-11 17:34:06 +08:00
Harvey Zack c1d86cc029 Update checkbox styling and add PRO checkbox 2023-12-11 16:50:28 +08:00
Harvey Zack 8d4749c839 Delete unused files 2023-12-11 16:23:23 +08:00
Harvey Zack d3d8229496 Delete unused font files 2023-11-27 10:33:52 +08:00
Harvey Zack aa88683cbf Update danmuku.js file 2023-11-27 10:27:48 +08:00
Harvey Zack 4e7480fffc Delete video backup file and update video file 2023-11-27 10:14:20 +08:00
Harvey Zack 52be176830 Fix hotkey event handling for non-input elements 2023-11-27 10:00:10 +08:00
Harvey Zack 144ab64421 Merge branch 'master' of https://github.com/zhw2590582/ArtPlayer 2023-11-27 09:59:59 +08:00
Harvey Zack 52e4564776 Replace video file format in common.js 2023-11-27 09:59:52 +08:00
WeidiDeng 773618a177 not trigger shortcuts when ctrl or command key is pressed (#668)
* not trigger shortcuts when ctrl or command key is pressed

* exclude alt and shift keys from event trigger
2023-11-27 09:31:45 +08:00
Harvey Zack b2bffa8079 Refactor artplayerPluginLibass to use ES6 syntax 2023-11-26 15:03:17 +08:00
Harvey Zack 4360c1e695 Merge branch 'pr/654' 2023-11-26 14:51:34 +08:00
Harvey Zack d8720d3bcf Update artplayer plugin versions 2023-11-26 14:05:09 +08:00
Harvey Zack b235f9bbac Update dependencies and fix documentation 2023-11-26 13:35:34 +08:00
Harvey Zack 5a166f421d Add Danmuku plugin to config.js 2023-11-26 13:28:29 +08:00
Harvey Zack a2b57495a2 Update build:docs and trans:docs scripts 2023-11-26 13:23:21 +08:00
Harvey Zack a2d3e20479 Fix build:docs script order in package.json 2023-11-26 11:42:11 +08:00
Harvey Zack b6a62f8dc5 Update language and demo links in plugin
documentation
2023-11-26 11:26:18 +08:00
Harvey Zack 69197312cc Update OpenAI translation engine and increase max
tokens limit
2023-11-26 11:19:13 +08:00
Harvey Zack 7df74e227a Update package.json 2023-11-26 10:33:03 +08:00
Harvey Zack bbbeca6e4c Update HLS, FLV, and DASH player configurations
Update progress bar height in Artplayer

Add dynamic layer, controller, menu, and setting item management

Update Changelog_CN

Update utils.js

Update package.json

Update built-in management in Artplayer

Update i18n documentation

Add support for new languages

Update language import and modification
2023-11-26 10:30:24 +08:00
Harvey Zack 73fb04737a Update hover color and progress height in
variables.less and progress.less
2023-11-25 21:16:41 +08:00
Harvey Zack 24601dd18c Update transition property in bottom.less and
remove unnecessary styles in plugins.less and
miniProgressBar.js
2023-11-25 16:14:31 +08:00
Harvey Zack 2b18452644 Delete unnecessary files and update plugin names 2023-11-24 10:11:08 +08:00
Harvey Zack a2591533f3 Update CHANGELOG_CN.md 2023-11-24 10:03:12 +08:00
Harvey Zack 21a735f86b Fix async issue in plugin addition 2023-11-24 10:00:49 +08:00
Harvey Zack d579e7e86d Refactor subtitle loading function 2023-11-24 01:02:00 +08:00
Harvey Zack 7ba3098212 Fix subtitle merging issue 2023-11-24 00:37:37 +08:00
Harvey Zack 780124d84b Add new utility functions and update styles 2023-11-23 23:58:24 +08:00
Harvey Zack 29ff487547 Add isBrowser check in Artplayer initialization 2023-11-23 23:48:09 +08:00
Harvey Zack 53b5c4165c Fix bug in login functionality 2023-11-23 23:33:08 +08:00
Harvey Zack 783bf1cac3 Refactor loadSubtitleAsVtt to use
art.constructor.utils
2023-11-23 23:29:14 +08:00
Harvey Zack 89b8525f2f Add unescape utility function and
artplayerPluginMultipleSubtitles plugin
2023-11-23 23:23:51 +08:00
Harvey Zack 3db53c425e Remove loop event and property 2023-11-21 23:42:05 +08:00
Harvey Zack ce99b73d04 Add subtitle name to track label 2023-11-21 11:11:30 +08:00
Harvey Zack 3d8d22a98a Remove art.loop interval playback feature 2023-11-21 10:52:47 +08:00
journey-ad 08ec5716f9 feat(subtitle): add artplayer-plugin-libass 2023-11-14 12:36:35 +08:00
Harvey Zack cf8cea8283 Fix minor bugs and remove loop control 2023-11-11 10:20:45 +08:00
Harvey Zack 4e139ab6f0 Update FUNDING.yml 2023-10-28 12:41:20 +08:00
Harvey Zack 9de1d74b7a fix control 2023-10-24 23:42:23 +08:00
Harvey Zack c1780c3137 update control 2023-10-24 22:22:24 +08:00
Harvey Zack ea4ec61fd7 update style 2023-10-21 12:04:54 +08:00
Harvey Zack 9efdab28b9 fix style 2023-09-10 11:18:20 +08:00
Harvey Zack adc837e225 update next.js 2023-09-09 18:50:45 +08:00
Harvey Zack 59794f32c6 add art-subtitle-line 2023-09-01 21:27:59 +08:00
Harvey Zack 95ba1810b6 use || 2023-09-01 21:14:10 +08:00
VaSeala cafff9b155 fixed absolute url in the vtt file (#610)
fixed the type file path
2023-08-31 16:57:23 +08:00
Harvey Zack 1fe653e3c3 remove i18n 2023-08-27 12:41:27 +08:00
Harvey Zack ce012c1626 update d.ts 2023-08-26 17:01:40 +08:00
Harvey Zack a2034e643d update .gitignore 2023-08-26 16:53:34 +08:00
Harvey Zack 2fc9d4d3e9 Dep (#601)
* init

* update dep
2023-08-26 16:48:19 +08:00
Harvey Zack 45ec17798f update deps 2023-08-26 13:45:35 +08:00
Harvey Zack c930bafd67 add tr.js 2023-08-26 13:32:51 +08:00
Harvey Zack e71a683dfd I18n (#600)
* update i18n

* update i18n
2023-08-26 13:22:19 +08:00
Harvey Zack 9ba838aa52 add Artplayer.USE_RAF 2023-08-26 00:03:26 +08:00
Harvey Zack 6fc1532ada update CHANGELOG_CN 2023-08-25 21:57:05 +08:00
Harvey Zack 482d074ae2 fix video:seeked event 2023-08-22 20:54:47 +08:00
Harvey Zack 894a9db1d7 add Artplayer.LOG_VERSION 2023-08-22 20:51:39 +08:00
dependabot[bot] 3179d1241e Bump prettier from 2.8.8 to 3.0.0 (#574)
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.8 to 3.0.0.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.8...3.0.0)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-10 23:03:56 +08:00
Harvey Zack eac37379d3 add muted 2023-06-29 21:44:33 +08:00
Harvey Zack 6c7daa8dc7 update eventInit 2023-06-02 15:36:34 +08:00
O2bmm 16994e446e function-update-optimize (#549) 2023-06-02 15:18:03 +08:00
dependabot[bot] 7fc369d210 Bump workbox-build from 6.6.1 to 7.0.0 (#547)
Bumps [workbox-build](https://github.com/googlechrome/workbox) from 6.6.1 to 7.0.0.
- [Release notes](https://github.com/googlechrome/workbox/releases)
- [Commits](https://github.com/googlechrome/workbox/commits/v7.0.0)

---
updated-dependencies:
- dependency-name: workbox-build
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 15:17:51 +08:00
Harvey Zack 2dae9ed679 update docs 2023-05-24 16:05:01 +08:00
Harvey Zack 382b451bb9 update docs 2023-05-19 20:43:16 +08:00
Harvey Zack 4a088aebc4 update demo 2023-05-18 12:31:48 +08:00
Harvey Zack ac7667df29 update artplayer.d.ts 2023-05-14 11:39:44 +08:00
Harvey Zack 04be7f346c Update package.json 2023-05-14 11:30:35 +08:00
Harvey Zack f330081916 artplayer@5.0.9 2023-05-14 11:10:54 +08:00
Harvey Zack 7bb6af0731 artplayer@5.0.8 2023-05-13 23:48:59 +08:00
Harvey Zack f26db31777 Update miniMix.js 2023-05-13 23:25:16 +08:00
Harvey Zack e243d8b230 update docs 2023-05-13 22:48:24 +08:00
Harvey Zack 6ab5aec6d1 artplayer@5.0.7 2023-05-13 22:27:12 +08:00
Harvey Zack e3e42eb399 update docs 2023-05-13 21:57:45 +08:00
Harvey Zack 84c84e4cda Merge branch 'aspectRatio' 2023-05-13 21:41:06 +08:00
Harvey Zack 39452167c3 update resize 2023-05-13 21:39:45 +08:00
Harvey Zack 4902322808 Aspect ratio (#534)
* update

* update

* Create video2.mp4

* add art.quality

* fix art.theme
2023-05-13 21:23:05 +08:00
Harvey Zack 2faffecc00 fix art.theme 2023-05-13 21:22:43 +08:00
Harvey Zack 6c5393b691 add art.quality 2023-05-13 19:53:04 +08:00
Harvey Zack 8582259dd4 Create video2.mp4 2023-05-06 11:23:58 +08:00
Harvey Zack 0141129c74 update 2023-05-06 11:20:09 +08:00
Harvey Zack f8e07c4d25 update 2023-05-06 10:38:54 +08:00
Harvey Zack 1beff2c7fa update resizeInit 2023-05-06 10:21:04 +08:00
Harvey Zack 550aa0e7f2 update docs 2023-05-06 09:52:01 +08:00
Harvey Zack 2749d50209 Update nodejs.yml 2023-05-05 23:00:16 +08:00
Harvey Zack e095e45791 update heatmap.js 2023-05-05 22:56:00 +08:00
Harvey Zack 7cd91b8375 Test (#531)
* init

* init

* remove checkLeaks

* update browserslist
2023-05-05 22:20:04 +08:00
Harvey Zack edc99269bc update demo 2023-05-05 15:57:38 +08:00
Harvey Zack cf6670bc53 add isIOS13 2023-05-05 13:08:07 +08:00
Harvey Zack f6d6113423 update docs 2023-05-05 09:00:44 +08:00
Harvey Zack 8670175910 Update package.json 2023-05-04 15:36:04 +08:00
Harvey Zack 782a828758 update player.d.ts 2023-05-04 12:55:54 +08:00
Harvey Zack a6a9e93517 Update CHANGELOG_CN.md 2023-05-04 12:44:16 +08:00
Harvey Zack 37dc0a8203 update switchMix.js 2023-05-04 12:40:31 +08:00
Harvey Zack c301844a87 v5.0.6 2023-05-03 12:47:01 +08:00
Harvey Zack 601836c05c v5.0.5 2023-05-03 12:00:34 +08:00
Harvey Zack 8ff35b5f6f update demo 2023-05-03 11:08:49 +08:00
Harvey Zack 5959eb4669 build:all 2023-05-03 10:14:46 +08:00
Harvey Zack 283861b198 fix subtitle style 2023-05-03 09:57:28 +08:00
Harvey Zack 7dd21df106 update docs 2023-05-02 23:44:04 +08:00
Harvey Zack 0ad47e4cf1 build:all 2023-05-02 22:10:52 +08:00
Harvey Zack 88ae6d202c update docs 2023-05-02 21:41:01 +08:00
Harvey Zack 9ea091856b update heatmap 2023-05-02 20:03:29 +08:00
Harvey Zack ebc915e3ab update artplayerPluginDanmuku 2023-05-02 19:44:07 +08:00
Harvey Zack 85b3743a9f Update danmuku.js 2023-05-02 19:38:44 +08:00
Harvey Zack 4ff176c1bd fix heatmap style 2023-05-02 19:33:16 +08:00
Harvey Zack 272a98ada9 update danmuku.js 2023-05-02 19:22:47 +08:00
Harvey Zack 4d1a2acb51 Update sw.js 2023-05-02 19:14:48 +08:00
Harvey Zack 56af4ca4a4 update heatmap 2023-05-02 19:14:14 +08:00
Harvey Zack db5a7d3567 update danmuku 2023-05-02 15:51:33 +08:00
Harvey Zack ab4000d4f2 build artplayer-plugin-danmuku 2023-05-02 13:49:44 +08:00
Harvey Zack 4d9db7d1b5 update CHANGELOG_CN 2023-05-02 13:44:49 +08:00
Harvey Zack e3658aed6f Heatmap (#525)
* add heatmap

* update

* add heatmap
2023-05-02 13:43:05 +08:00
Harvey Zack 5ba1569f67 update demo 2023-04-30 13:37:34 +08:00
Harvey Zack 17f6d46fe0 update docs 2023-04-29 23:04:12 +08:00
Harvey Zack ab57157371 update docs 2023-04-29 22:52:08 +08:00
Harvey Zack 6264a54f93 build docs 2023-04-27 15:24:07 +08:00
Harvey Zack 2de2b991d5 5.0.4 2023-04-27 14:23:18 +08:00
Harvey Zack 217e83eac5 artplayer@5.0.3 2023-04-26 11:22:17 +08:00
Harvey Zack 336627cae3 build docs 2023-04-26 10:54:26 +08:00
Harvey Zack ddfce350ec update scripts 2023-04-26 10:25:02 +08:00
Harvey Zack 90a5f6d045 update Setting 2023-04-26 09:00:31 +08:00
Harvey Zack 7b65b414ff fix mobile m3u8 loading error 2023-04-25 21:59:25 +08:00
Harvey Zack b2084633db fix art-full 2023-04-24 22:47:54 +08:00
Harvey Zack 45c076bc3b 5.0.2 2023-04-24 17:14:23 +08:00
Harvey Zack 12c8b97af4 update fullscreenWeb.less 2023-04-24 11:34:44 +08:00
Harvey Zack 77b96112fb Update index.html 2023-04-24 11:22:05 +08:00
Harvey Zack 4583136d1f 5.0.1 2023-04-24 08:54:43 +08:00
Harvey Zack 93fe9a98f4 fix setting bug 2023-04-23 22:02:28 +08:00
Harvey Zack 59f8e984e2 add mobile.hls.html 2023-04-23 21:39:30 +08:00
Harvey Zack ac127bda77 v5.0.0 2023-04-23 18:15:36 +08:00
Harvey Zack 08ff3dd19d build:all 2023-04-23 16:14:40 +08:00
Harvey Zack 71199d7d0e update artplayer-plugin-control 2023-04-23 16:09:03 +08:00
Harvey Zack 2824b69174 build:all 2023-04-23 15:57:40 +08:00
Harvey Zack 868af2b230 Update CHANGELOG_CN.md 2023-04-23 15:40:52 +08:00
Harvey Zack 708fabbe61 update artplayer-plugin-danmuku 2023-04-23 15:37:05 +08:00
Harvey Zack 2371760d77 Update CHANGELOG_CN.md 2023-04-23 15:25:46 +08:00
Harvey Zack 55ca351b60 update docs 2023-04-23 15:11:08 +08:00
Harvey Zack 3f1e033152 update style 2023-04-23 14:38:13 +08:00
Harvey Zack ee49a0435e V5 (#509)
* update artplayer.d.ts

* update variables.less

* update artplayerPluginControl

* build:all

* update docs

* update docs

* update docs

* Update layers.md

* update index.js

* update docs

* update docs
2023-04-23 13:50:30 +08:00
Harvey Zack c8c08137c4 update setting 2023-04-23 00:24:05 +08:00
Harvey Zack 37d2ae1d01 Update events.d.ts 2023-04-23 00:22:20 +08:00
Harvey Zack 3b57470957 update docs 2023-04-23 00:21:38 +08:00
Harvey Zack 7c8a3c2c7d prettier 2023-04-22 19:00:25 +08:00
Harvey Zack 7fe80943a9 Update danmuku.js 2023-04-22 15:16:02 +08:00
Harvey Zack a801cd5613 fix setting add 2023-04-22 15:12:45 +08:00
Harvey Zack d34a6ba268 update property.js 2023-04-22 15:03:48 +08:00
Harvey Zack a3b767f15d update artplayer.d.ts 2023-04-21 22:55:16 +08:00
Harvey Zack 71fad99a6a update autoPlayback 2023-04-21 21:14:06 +08:00
Harvey Zack 51bee25800 Update player.d.ts 2023-04-21 16:49:37 +08:00
Harvey Zack 81edd00afc update d.ts 2023-04-21 16:44:32 +08:00
Harvey Zack 8904130837 update player.d.ts 2023-04-20 12:00:51 +08:00
Harvey Zack 4035135a69 update stateMix 2023-04-20 11:53:21 +08:00
Harvey Zack 609ccb4c46 update stateMix 2023-04-20 11:49:43 +08:00
Harvey Zack 6743144f44 update mobile.html 2023-04-20 11:14:42 +08:00
Harvey Zack b44394a3d8 Update mobile.html 2023-04-20 10:37:53 +08:00
Harvey Zack bac74f6202 Update mobile.html 2023-04-20 10:34:23 +08:00
Harvey Zack 232b12effb Update mobile.html 2023-04-20 00:34:20 +08:00
Harvey Zack ad8c50ddd7 update aspectRatioReset 2023-04-20 00:23:01 +08:00
Harvey Zack 61cf68f0bc update gestureInit 2023-04-19 23:27:02 +08:00
Harvey Zack c7a6e67940 update --art-settings-scale 2023-04-19 14:40:35 +08:00
Harvey Zack 274205a180 update --art-control-opacity 2023-04-19 14:27:36 +08:00
Harvey Zack 641b0abd64 update --art-indicator-size 2023-04-19 14:21:52 +08:00
Harvey Zack 909f9cab59 add --art-indicator-scale 2023-04-19 14:20:14 +08:00
Harvey Zack a8f0ea12c0 update time 2023-04-19 14:07:04 +08:00
Harvey Zack fb445bf669 add DBCLICK_FULLSCREEN 2023-04-19 11:43:50 +08:00
Harvey Zack 4244b085dc update artplayer-plugin-ads 2023-04-19 11:06:29 +08:00
Harvey Zack a490a0f5d9 build 2023-04-19 10:01:51 +08:00
Harvey Zack a6ab0aa276 add --art-border-radius 2023-04-19 09:59:57 +08:00
Harvey Zack 572788a9ab update style 2023-04-19 09:56:53 +08:00
Harvey Zack 48268ef091 update style 2023-04-19 09:39:52 +08:00
Harvey Zack 89206e3924 update style 2023-04-19 09:26:39 +08:00
Harvey Zack 4848b9e48c update style 2023-04-19 09:04:18 +08:00
Harvey Zack 677c99aa38 update events.d.ts 2023-04-19 02:55:29 +08:00
Harvey Zack 90915652aa update Component 2023-04-19 02:47:37 +08:00
Harvey Zack 3c8cb0e2e2 update component 2023-04-19 02:36:13 +08:00
Harvey Zack e23e828b3d Update component.d.ts 2023-04-18 23:06:43 +08:00
Harvey Zack 70f551b878 update component 2023-04-18 23:04:52 +08:00
Harvey Zack d1156a40b1 update Component 2023-04-18 23:02:51 +08:00
Harvey Zack 13f3398765 add beforeUnmount 2023-04-18 22:58:16 +08:00
Harvey Zack 645e2e2ec3 update component.d.ts 2023-04-18 22:52:33 +08:00
Harvey Zack cd28cc795f update toggle 2023-04-18 22:39:47 +08:00
Harvey Zack 776a02a221 update component 2023-04-18 22:24:06 +08:00
Harvey Zack 6d81287de9 update isStringOrNumber 2023-04-18 18:25:51 +08:00
Harvey Zack 6b6fca8b74 update setting 2023-04-18 18:17:39 +08:00
Harvey Zack 4ba822fdf2 update --art-control-height 2023-04-18 16:30:21 +08:00
Harvey Zack 058325d3cc Setting (#502)
* init

* remove updateStyle

* Revert "remove updateStyle"

This reverts commit 053654ae72.

* add --art-tip-background
2023-04-18 16:02:00 +08:00
Harvey Zack 4b9e8dfc9d Update artplayer.d.ts 2023-04-18 00:52:24 +08:00
Harvey Zack 7d6b7f2070 update setting 2023-04-18 00:51:06 +08:00
Harvey Zack 3ab2e96144 rename moveInit 2023-04-18 00:03:59 +08:00
Harvey Zack 455bd807a7 build:all 2023-04-17 23:16:44 +08:00
Harvey Zack 5354917b5a update mask.less 2023-04-17 23:06:40 +08:00
Harvey Zack c283504f0a update i18n.d.ts 2023-04-17 22:58:25 +08:00
Harvey Zack cf95177ad6 add --art-subtitle-border 2023-04-17 22:54:55 +08:00
Harvey Zack 27cf18a997 update player.d.ts 2023-04-17 22:50:11 +08:00
Harvey Zack 443afeb496 update optionInit 2023-04-17 22:45:08 +08:00
Harvey Zack 339034d30d add cssVar 2023-04-17 22:40:22 +08:00
Harvey Zack 49e1ed15b8 add cssPropertyMix 2023-04-17 22:39:18 +08:00
Harvey Zack f013f8604e add CssVar 2023-04-17 22:11:06 +08:00
Harvey Zack c4252b21b5 add documentInit 2023-04-17 22:04:57 +08:00
Harvey Zack d531c41735 update event.button === 0 2023-04-17 18:54:16 +08:00
Harvey Zack e9e1e08de5 update isMobile 2023-04-17 18:51:48 +08:00
Harvey Zack 18b4bae2fa update mobile style 2023-04-17 18:33:21 +08:00
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
Harvey Zack af12bd9634 update docs 2023-03-31 22:25:27 +08:00
Harvey Zack a7e7c2ea06 Update package.json 2023-03-31 22:24:03 +08:00
Nick Panteleeff 7e9f30bfe1 Add russian translation (#490) 2023-03-27 10:31:15 +08:00
Harvey Zack ec38a16be0 update docs 2023-02-24 21:52:52 +08:00
Harvey Zack 9700b2dff9 Update package.json 2023-02-24 21:31:09 +08:00
Harvey Zack 9433cbc2bb update docs 2023-02-24 21:29:55 +08:00
几句レし a3425da515 Add Indonesian (Bahasa Indonesia) Language (#477)
* Update artplayer.d.ts

* Update option.md

* Update option.md

* Create id.json

* Update index.js

* Update i18n.d.ts
2023-02-24 16:11:39 +08:00
Harvey Zack f43a2921b7 update docs 2023-02-24 11:20:58 +08:00
Harvey Zack 2011c77df4 update docs 2023-02-24 11:16:00 +08:00
Harvey Zack f73e00fde2 add webtorrent 2023-02-19 23:27:24 +08:00
Harvey Zack fee92a9247 Update package.json 2023-02-18 19:28:01 +08:00
Harvey Zack e0fcc50055 bugfix 2023-02-18 19:27:56 +08:00
Harvey Zack 4b9c7fd4cf Update package.json 2023-02-18 13:06:27 +08:00
Harvey Zack f472410a3b add artplayer-plugin-dash-quality 2023-02-18 13:06:23 +08:00
Harvey Zack 3f399e4b41 typo fix 2023-02-18 11:34:58 +08:00
Harvey Zack 3391ca1fed artplayer-plugin-hls-quality.js v1.0.1 2023-02-18 11:34:45 +08:00
Aurèle ZANNOU-TCHOKO d3862db0f3 Add french language (#460)
* Create fr.json

* Update index.js

* Update i18n.d.ts

* Update option.md

* Update option.md

* Update artplayer.d.ts
2023-01-31 10:39:56 +08:00
832 changed files with 196100 additions and 35180 deletions

No files matched your search

-7
View File
@@ -1,7 +0,0 @@
/docs
/dist
/test
/scripts
/node_modules
/packages/**/node_modules
/packages/**/dist
-20
View File
@@ -1,20 +0,0 @@
{
"parser": "@babel/eslint-parser",
"extends": "eslint:recommended",
"env": {
"browser": true,
"es6": true
},
"globals": {
"require": "readonly",
"process": "readonly"
},
"parserOptions": {
"sourceType": "module",
"ecmaVersion": "latest",
"requireConfigFile": false,
"babelOptions": {
"presets": ["@babel/preset-react"]
}
}
}
-1
View File
@@ -1,4 +1,3 @@
# These are supported funding model platforms
patreon: artplayer
custom: https://paypal.me/harveyzack
+15 -9
View File
@@ -4,11 +4,6 @@ on:
push:
branches:
- master
paths-ignore:
- '**.md'
- 'docs/**'
- 'dist/**'
- 'images/**'
jobs:
build:
@@ -17,12 +12,12 @@ jobs:
strategy:
matrix:
node-version: [16.x]
node-version: [20.x]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- name: npm install, lint, build, and test
@@ -30,6 +25,17 @@ jobs:
npm install
npm run lint
npm run build:all
npm run test
env:
CI: true
- name: Deploy to GitHub Pages
if: success()
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git add -f docs
git commit -m 'Deploy to GitHub Pages'
git subtree split --prefix docs master -b gh-pages-temp
git push origin gh-pages-temp:refs/heads/gh-pages --force
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+2
View File
@@ -1,6 +1,8 @@
.env
.vscode
.DS_Store
.parcel-cache
node_modules
package-lock.json
lerna-debug.log
yarn.lock
+2 -1
View File
@@ -7,4 +7,5 @@ packages/*/dist
packages/*/node_modules
packages/*/.parcel-cache
packages/artplayer-template/*/.next
packages/artplayer-template/*/.nuxt
packages/artplayer-template/*/.nuxt
scripts/plugin/template
+6 -1
View File
@@ -3,5 +3,10 @@
"tabWidth": 4,
"singleQuote": true,
"trailingComma": "all",
"printWidth": 120
"printWidth": 120,
"semi": true,
"bracketSpacing": true,
"arrowParens": "always",
"endOfLine": "lf",
"quoteProps": "as-needed"
}
+151 -1
View File
@@ -6,6 +6,156 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## [Unreleased]
## [5.2.1] - 2024-10-26
- 重构 `Setting` 组件,修复状态丢失的问题
- 类型是 `range` 的 `Setting`,现在回调函数返回的 `range` 是数字的数组,不再是单一数字
- 删除 `isStringOrNumber` 工具函数
- 修复 `artplayer-plugin-hls-control` 状态不统一的问题
- 废弃 `artplayer-plugin-dash-quality` 插件
- 新增 `artplayer-plugin-dash-control` 插件
- 使用 `code` 替代已废弃的`keyCode` 监听键盘事件
- 新增 `keydown` 事件,监听来自 `document` 的 `keydown` 事件
## [5.2.0] - 2024-10-19
- 新增 `option.proxy` 选项,用于代理第三方的 `video` 和 `canvas`
- 新增 `artplayer-proxy-canvas` 代理,可以使用 `canvas` 播放视频
- 新增 `artplayer-proxy-webav` 代理,来自 [bilibili/WebAV](https://github.com/bilibili/WebAV)
- 新增 `option.thumbnails.scale`, 用于预览图缩放
- 修复 `art.url` 更改不能触发 `autoPlayBack` 的 `bug`: [#797](https://github.com/zhw2590582/ArtPlayer/issues/797)
- 新增 `art.subtitle.cues` 属性, 获取整体的字幕列表
- 新增 `art.subtitle.activeCues` 属性, 获取活跃的字幕列表
- 新增 `subtitleBeforeUpdate` 事件, 在字幕元素渲染前触发
- 修改 `subtitleUpdate` 事件为 `subtitleAfterUpdate`, 在字幕元素渲染后触发
- 优化 `subtitleLoad` 事件的触发时机和回调参数
- 删除 `subtitleSwitch` 事件,请使用 `subtitleLoad` 代替
- 升级 `artplayer-plugin-hls-quality` 为 `artplayer-plugin-hls-control`
- 新增 `artplayer-plugin-ambilight` 插件
- 修复 `thumbnails` 显示 bug
## [5.1.7] - 2024-8-15
- 新增 `Artplayer.STYLE` 属性,返回播放器样式文本
- `art.screenshot('your-name')` 截图功能支持自定义文件名字
- `Artplayer.CONTEXTMENU` 为 `false` 时,不再隐藏默认右键菜单
- 新增 `art.thumbnails` 属性,用于动态设置 `thumbnails`
## [5.1.6] - 2024-6-15
- 优化 `setBar` 事件
- 新增 `artplayerPluginChapter` 插件
- 新增 `art.plugins.artplayerPluginDanmuku.load(target)` 参数,用于追加弹幕库
- 新增弹幕插件的 `width` 选项参数,当播放器宽度小于此值时,弹幕发射器置于播放器底部
- 修复 `artplayerPluginVttThumbnail` 在移动端不显示的问题
- 修复弹幕插件样式,和字号百分比显示的 `bug`
- 移动端也可以看到 `thumbnails` 了
- 恢复 `screen.orientation.lock` 功能
## [5.1.5] - 2024-6-1
- 重构 `artplayerPluginDanmuku` 插件
- 新增 `artplayerPluginChromecast` 插件
- 添加 `fullscreenError` 事件
- 优化双击事件: [#728](https://github.com/zhw2590582/ArtPlayer/pull/728)
- 修复 `thumbnails` 延迟显示问题
- 新增 `art.plugins.lock.state = true/false`, 用于手动控制 `lock` 状态
- 当鼠标在控制栏上,或者打开了设置面板,控制栏不再自动隐藏
- 由于兼容性不足,删除 `screen.orientation.lock` 功能
- 修复移动端的 `fullscreen` bug
## [5.1.1] - 2024-1-11
- 插件函数支持同步和异步返回
## [5.1.0] - 2023-12-23
- 插件函数改为支持异步返回
- 当播放地址发生错误到达上限后,不会再主动销毁播放器
- 分离语言文件,核心代码不再捆绑多国语言 [语言设置](https://artplayer.org/document/start/i18n.html)
- 更新组件时,支持填写只更新的字段 [pull/549](https://github.com/zhw2590582/ArtPlayer/pull/549)
- 添加 `muted` 事件,当静音的状态变化时触发
- 添加 `Artplayer.LOG_VERSION` 全局配置,设置是否打印播放器版本,默认为 `true`
- 添加 `Artplayer.USE_RAF` 全局配置,设置是否使用 `requestAnimationFrame` ,默认为 `false`,目前主要用于进度条的平滑效果
- 移除默认样式 `margin:0;padding:0;`,因为容易与第三方库起样式冲突,导致难以覆写
- 字幕行从 `p` 标签改为 `div` 标签,并且添加类名 `art-subtitle-line`
- 在移动端,点击视频会切换控制栏的显示与隐藏
- 由于功能不常用,删除 `art.loop` 区间播放功能
- 字幕轨添加 `label` 属性,用于在移动设备上显示字幕名字
- 添加 `unescape`, `isBrowser`, `setStyleText` 工具函数
- 添加 `artplayerPluginMultipleSubtitles` 插件,用于显示合并后的字幕文件: [demo](https://www.artplayer.org/?libs=./uncompiled/artplayer-plugin-multiple-subtitles/index.js&example=multiple.subtitles)
- 修改迷你进度条的显示方式
## [5.0.9] - 2023-5-14
- 修复 `art.autoOrientation` 样式错误问题
- 移除播放器容器的动画效果
## [5.0.8] - 2023-5-13
- 修复 `art.mini` 的互斥关系
- 修复 `art.aspectRatio` 动画效果问题
## [5.0.7] - 2023-5-13
- 使用 `switchUrl` 或者 `switchQuality` 方法切换地址后会保持原有的调整如:`aspectRatio`, `playbackRate`, `flip`, `autoSize`
- 删除 `switchUrl` 方法和 `switchQuality` 方法的第二个 `name` 参数
- 添加 `isIOS13` 工具,用于修复在 `IOS13` 以上版本的设备上的 `isMobile` 判断不准确的问题
- `art.autoSize` 和 `art.autoHeight` 改为方法的形式调用,即 `art.autoSize()` 和 `art.autoHeight()`
- 添加新的属性 `art.quality`,用于动态更新画质列表
- 修复 `art.aspectRatio` 属性不正确的问题
- 添加 `art.switch` Setter 属性, 功能和 `art.switchUrl` 方法一样
## [5.0.6] - 2023-5-3
- 修复设置面板的样式错误
## [5.0.5] - 2023-5-3
- 弹幕插件添加 `heatmap` 选项,用于是否开启热度图,默认为关闭
- 修复英文字幕换行的样式错误
- 修复设置面板的样式错误
- 移除多余的全局属性
- 移除 `title` 选项,因为目前用处不大
- 移除 `whitelist` 选项,因为目前用处不大
## [5.0.4] - 2023-4-27
- 修复控制器的上拉列表的样式 bug
## [5.0.3] - 2023-4-26
- 修复音量控制器 `event.pageY` 取值错误
- 修改构建配置,`artplayer.legacy.js` 可以兼容到 `IE 11`
## [5.0.2] - 2023-4-24
- 修复控制栏位置的样式兼容问题
## [5.0.1] - 2023-4-24
- 修复网页全屏的样式错误
- 修改内置设置项的文本错误
## [5.0.0] - 2023-4-23
- 重写了音量控制器
- 修复在移动端下,进度拖动的角度不正确的问题
- 重写了 `mini` 模式,现在这个模式下,视频会脱离原来的容器
- 全部组件(层,控制器,右键菜单,设置面板)支持动态删除和动态更新
- 字幕选项添加了 `onVttLoad` 方法,用于在字幕输出前修改 `vtt` 文本
- 重写了全部样式,添加了许多 `css` 变量
- 添加 `cssVar` 选项,用于初始化 `css` 变量
- 添加 `cssVar` 方法,用于设置和获取 `css` 变量
- 插件 `artplayer-plugin-hls-quality` 添加 `getResolution` 函数选项,用于获取从 `level` 中分辨率的文本
- 新增 `artplayer-plugin-dash-quality` 插件,用于添加 `Dash` 画质列表到播放器
- 修复 `lock` 和 `loop` 事件失效问题
- 添加俄语 `ru` 和印度尼西亚 `id` 语言
- 更新 `artplayer-plugin-control`,用于兼容`artplayer@5.0.0`
- 更新 `artplayer-plugin-dash-quality`,用于兼容`artplayer@5.0.0`
- 更新 `artplayer-plugin-hls-quality`,用于兼容`artplayer@5.0.0`
- 更新 `artplayer-plugin-danmuku`,用于兼容`artplayer@5.0.0`
## [4.6.2] - 2023-1-26
- `Artplayer.PROGRESS_HEIGHT` 默认值改为 `6`
@@ -101,7 +251,7 @@ var art = new Artplayer({
- 弹幕库插件暴露 `art.plugins.artplayerPluginDanmuku.reset()` 方法,用于清空当前弹幕显示
- 弹幕库插件暴露 `art.plugins.artplayerPluginDanmuku.option` 属性,用于获取当前弹幕配置
- 修复在 `IOS` 全屏模式下,字幕失效的问题
- 添加西班牙语支持
- 添加 `es` 语言
## [4.5.4] - 2022-8-1
+30
View File
@@ -93,6 +93,36 @@ var art = new Artplayer({
});
```
## Plugins
- [artplayer-plugin-danmuku](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-danmuku/index.js&example=danmuku)
- [artplayer-plugin-danmuku-mask](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-danmuku/index.js%0A./uncompiled/artplayer-plugin-danmuku-mask/index.js&example=danmuku.mask) (WIP)
- [artplayer-plugin-ads](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-ads/index.js&example=ads) (WIP)
- [artplayer-plugin-iframe](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-iframe/index.js&example=iframe)
- [artplayer-plugin-hls-control](https://artplayer.org/?libs=https://cdnjs.cloudflare.com/ajax/libs/hls.js/8.0.0-beta.3/hls.min.js%0A./uncompiled/artplayer-plugin-hls-control/index.js&example=hls.control)
- [artplayer-plugin-dash-control](https://artplayer.org/?libs=https://cdnjs.cloudflare.com/ajax/libs/dashjs/4.5.2/dash.all.min.js%0A./uncompiled/artplayer-plugin-dash-control/index.js&example=dash.control)
- [artplayer-plugin-vtt-thumbnail](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-vtt-thumbnail/index.js&example=vtt.thumbnail)
- [artplayer-plugin-multiple-subtitles](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-multiple-subtitles/index.js&example=multiple.subtitles)
- [artplayer-plugin-libass](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-libass/index.js&example=libass)
- [artplayer-plugin-chromecast](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-chromecast/index.js&example=chromecast)
- [artplayer-plugin-vast](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-vast/index.js&example=vast)
- [artplayer-plugin-chapter](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-chapter/index.js&example=chapter)
- [artplayer-plugin-auto-thumbnail](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-auto-thumbnail/index.js&example=auto.thumbnail)
- [artplayer-plugin-ambilight](https://artplayer.org/?libs=./uncompiled/artplayer-plugin-ambilight/index.js&example=ambilight)
## Libraries
- [hls.js](https://artplayer.org/?libs=https://cdnjs.cloudflare.com/ajax/libs/hls.js/8.0.0-beta.3/hls.min.js&example=hls)
- [dash.js](https://artplayer.org/?libs=https://cdnjs.cloudflare.com/ajax/libs/dashjs/4.5.2/dash.all.min.js&example=dash)
- [flv.js](https://artplayer.org/?libs=https://cdnjs.cloudflare.com/ajax/libs/flv.js/1.6.2/flv.min.js&example=flv)
- [mpegts.js](https://artplayer.org/?libs=https://cdn.jsdelivr.net/npm/mpegts.js@1.7.3/dist/mpegts.min.js&example=mpegts)
- [webtorrent.js](https://artplayer.org/?libs=https://cdn.jsdelivr.net/npm/webtorrent@1/webtorrent.min.js&example=webtorrent)
## Proxys
- [Canvas](https://artplayer.org/?libs=./uncompiled/artplayer-proxy-canvas/index.js&example=canvas)
- [WebAV](https://artplayer.org/?libs=./uncompiled/artplayer-proxy-webav/index.js&example=webav) (WIP)
## Changelog
[CHANGELOG_CN.md](./CHANGELOG_CN.md)
+1
View File
@@ -0,0 +1 @@
google.com, pub-8579453810848662, DIRECT, f08c47fec0942fa0
@@ -0,0 +1,10 @@
# MediaPipe JavaScript Solutions
MediaPipe offers out of the box solutions to use our ML technology with live and streaming media.
Visit us as [mediapipe.dev]()
See live demos of our JavaScript solutions at [code.mediapipe.dev/codepen]()
For more information on each of the solutions and how to use them, visit https://google.github.io/mediapipe/getting_started/javascript.
+111
View File
@@ -0,0 +1,111 @@
/**
* @fileoverview Declarations for the face tracking API.
*/
/**
* Version number of this package.
*/
export const VERSION: string;
/**
* We support several ways to get image inputs.
*/
export type InputImage = HTMLVideoElement | HTMLImageElement | HTMLCanvasElement;
/**
* Legal inputs.
*/
export interface InputMap {
image: InputImage;
}
/**
* GpuBuffers should all be compatible with Canvas' `drawImage`
*/
type GpuBuffer = HTMLCanvasElement | HTMLImageElement | ImageBitmap;
/**
* Possible results from SelfieSegmentation.
*/
export interface Results {
image: GpuBuffer;
segmentationMask: GpuBuffer;
}
/**
* Configurable options for SelfieSegmentation.
*/
export interface Options {
selfieMode?: boolean;
modelSelection?: number;
}
/**
* Listener for any results from SelfieSegmentation.
*/
export type ResultsListener = (results: Results) => (Promise<void>|void);
/**
* Contains all of the setup options to drive the face solution.
*/
export interface SelfieSegmentationConfig {
locateFile?: (path: string, prefix?: string) => string;
}
/**
* Declares the interface of SelfieSegmentation.
*/
declare interface SelfieSegmentationInterface {
close(): Promise<void>;
onResults(listener: ResultsListener): void;
initialize(): Promise<void>;
reset(): void;
send(inputs: InputMap): Promise<void>;
setOptions(options: Options): void;
}
/**
* Encapsulates the entire SelfieSegmentation solution. All that is needed from the
* developer is the source of the image data. The user will call `send`
* repeatedly and if a face is detected, then the user can receive callbacks
* with this metadata.
*/
export declare class SelfieSegmentation implements SelfieSegmentationInterface {
constructor(config?: SelfieSegmentationConfig);
/**
* Shuts down the object. Call before creating a new instance.
*/
close(): Promise<void>;
/**
* Registers a single callback that will carry any results that occur
* after calling Send().
*/
onResults(listener: ResultsListener): void;
/**
* Initializes the solution. This includes loading ML models and mediapipe
* configurations, as well as setting up potential listeners for metadata. If
* `initialize` is not called manually, then it will be called the first time
* the developer calls `send`.
*/
initialize(): Promise<void>;
/**
* Tells the graph to restart before the next frame is sent.
*/
reset(): void;
/**
* Processes a single frame of data, which depends on the options sent to the
* constructor.
*/
send(inputs: InputMap): Promise<void>;
/**
* Adjusts options in the solution. This may trigger a graph reload the next
* time the graph tries to run.
*/
setOptions(options: Options): void;
}
@@ -0,0 +1,27 @@
{
"name": "@mediapipe/selfie_segmentation",
"version": "0.1.1675465747",
"description": "Mediapipe Selfie Segmentation Solution",
"main": "selfie_segmentation.js",
"module": "selfie_segmentation.js",
"jsdelivr": "selfie_segmentation.js",
"unpkg": "selfie_segmentation.js",
"types": "index.d.ts",
"author": "mhays@google.com",
"license": "Apache-2.0",
"homepage": "https://google.github.io/mediapipe/solutions/selfie_segmentation",
"keywords": [ "AR", "ML", "Augmented" ],
"devDependencies": {
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
},
"browser": {
"node-fetch": false,
"util": false,
"crypto": false
},
"sideEffects" : []
}
@@ -0,0 +1,93 @@
(function(){/*
Copyright The Closure Library Authors.
SPDX-License-Identifier: Apache-2.0
*/
'use strict';var x;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}var ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};
function ca(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var y=ca(this);function z(a,b){if(b)a:{var c=y;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))break a;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&ba(c,a,{configurable:!0,writable:!0,value:b})}}
z("Symbol",function(a){function b(g){if(this instanceof b)throw new TypeError("Symbol is not a constructor");return new c(d+(g||"")+"_"+e++,g)}function c(g,f){this.h=g;ba(this,"description",{configurable:!0,writable:!0,value:f})}if(a)return a;c.prototype.toString=function(){return this.h};var d="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",e=0;return b});
z("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=y[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&ba(d.prototype,a,{configurable:!0,writable:!0,value:function(){return da(aa(this))}})}return a});function da(a){a={next:a};a[Symbol.iterator]=function(){return this};return a}
function A(a){var b="undefined"!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):{next:aa(a)}}function ea(a){if(!(a instanceof Array)){a=A(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}var fa="function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(a[e]=d[e])}return a};z("Object.assign",function(a){return a||fa});
var ha="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},ia;if("function"==typeof Object.setPrototypeOf)ia=Object.setPrototypeOf;else{var ja;a:{var ka={a:!0},la={};try{la.__proto__=ka;ja=la.a;break a}catch(a){}ja=!1}ia=ja?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var ma=ia;
function na(a,b){a.prototype=ha(b.prototype);a.prototype.constructor=a;if(ma)ma(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.za=b.prototype}function oa(){this.m=!1;this.j=null;this.i=void 0;this.h=1;this.v=this.s=0;this.l=null}function pa(a){if(a.m)throw new TypeError("Generator is already running");a.m=!0}oa.prototype.u=function(a){this.i=a};
function qa(a,b){a.l={ma:b,na:!0};a.h=a.s||a.v}oa.prototype.return=function(a){this.l={return:a};this.h=this.v};function D(a,b,c){a.h=c;return{value:b}}function ra(a){this.h=new oa;this.i=a}function sa(a,b){pa(a.h);var c=a.h.j;if(c)return ta(a,"return"in c?c["return"]:function(d){return{value:d,done:!0}},b,a.h.return);a.h.return(b);return ua(a)}
function ta(a,b,c,d){try{var e=b.call(a.h.j,c);if(!(e instanceof Object))throw new TypeError("Iterator result "+e+" is not an object");if(!e.done)return a.h.m=!1,e;var g=e.value}catch(f){return a.h.j=null,qa(a.h,f),ua(a)}a.h.j=null;d.call(a.h,g);return ua(a)}function ua(a){for(;a.h.h;)try{var b=a.i(a.h);if(b)return a.h.m=!1,{value:b.value,done:!1}}catch(c){a.h.i=void 0,qa(a.h,c)}a.h.m=!1;if(a.h.l){b=a.h.l;a.h.l=null;if(b.na)throw b.ma;return{value:b.return,done:!0}}return{value:void 0,done:!0}}
function va(a){this.next=function(b){pa(a.h);a.h.j?b=ta(a,a.h.j.next,b,a.h.u):(a.h.u(b),b=ua(a));return b};this.throw=function(b){pa(a.h);a.h.j?b=ta(a,a.h.j["throw"],b,a.h.u):(qa(a.h,b),b=ua(a));return b};this.return=function(b){return sa(a,b)};this[Symbol.iterator]=function(){return this}}function wa(a){function b(d){return a.next(d)}function c(d){return a.throw(d)}return new Promise(function(d,e){function g(f){f.done?d(f.value):Promise.resolve(f.value).then(b,c).then(g,e)}g(a.next())})}
function E(a){return wa(new va(new ra(a)))}
z("Promise",function(a){function b(f){this.i=0;this.j=void 0;this.h=[];this.u=!1;var h=this.l();try{f(h.resolve,h.reject)}catch(k){h.reject(k)}}function c(){this.h=null}function d(f){return f instanceof b?f:new b(function(h){h(f)})}if(a)return a;c.prototype.i=function(f){if(null==this.h){this.h=[];var h=this;this.j(function(){h.m()})}this.h.push(f)};var e=y.setTimeout;c.prototype.j=function(f){e(f,0)};c.prototype.m=function(){for(;this.h&&this.h.length;){var f=this.h;this.h=[];for(var h=0;h<f.length;++h){var k=
f[h];f[h]=null;try{k()}catch(l){this.l(l)}}}this.h=null};c.prototype.l=function(f){this.j(function(){throw f;})};b.prototype.l=function(){function f(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:f(this.I),reject:f(this.m)}};b.prototype.I=function(f){if(f===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(f instanceof b)this.L(f);else{a:switch(typeof f){case "object":var h=null!=f;break a;case "function":h=!0;break a;default:h=!1}h?this.F(f):this.s(f)}};
b.prototype.F=function(f){var h=void 0;try{h=f.then}catch(k){this.m(k);return}"function"==typeof h?this.M(h,f):this.s(f)};b.prototype.m=function(f){this.v(2,f)};b.prototype.s=function(f){this.v(1,f)};b.prototype.v=function(f,h){if(0!=this.i)throw Error("Cannot settle("+f+", "+h+"): Promise already settled in state"+this.i);this.i=f;this.j=h;2===this.i&&this.K();this.H()};b.prototype.K=function(){var f=this;e(function(){if(f.D()){var h=y.console;"undefined"!==typeof h&&h.error(f.j)}},1)};b.prototype.D=
function(){if(this.u)return!1;var f=y.CustomEvent,h=y.Event,k=y.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof f?f=new f("unhandledrejection",{cancelable:!0}):"function"===typeof h?f=new h("unhandledrejection",{cancelable:!0}):(f=y.document.createEvent("CustomEvent"),f.initCustomEvent("unhandledrejection",!1,!0,f));f.promise=this;f.reason=this.j;return k(f)};b.prototype.H=function(){if(null!=this.h){for(var f=0;f<this.h.length;++f)g.i(this.h[f]);this.h=null}};var g=new c;b.prototype.L=
function(f){var h=this.l();f.T(h.resolve,h.reject)};b.prototype.M=function(f,h){var k=this.l();try{f.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};b.prototype.then=function(f,h){function k(p,n){return"function"==typeof p?function(q){try{l(p(q))}catch(t){m(t)}}:n}var l,m,r=new b(function(p,n){l=p;m=n});this.T(k(f,l),k(h,m));return r};b.prototype.catch=function(f){return this.then(void 0,f)};b.prototype.T=function(f,h){function k(){switch(l.i){case 1:f(l.j);break;case 2:h(l.j);break;default:throw Error("Unexpected state: "+
l.i);}}var l=this;null==this.h?g.i(k):this.h.push(k);this.u=!0};b.resolve=d;b.reject=function(f){return new b(function(h,k){k(f)})};b.race=function(f){return new b(function(h,k){for(var l=A(f),m=l.next();!m.done;m=l.next())d(m.value).T(h,k)})};b.all=function(f){var h=A(f),k=h.next();return k.done?d([]):new b(function(l,m){function r(q){return function(t){p[q]=t;n--;0==n&&l(p)}}var p=[],n=0;do p.push(void 0),n++,d(k.value).T(r(p.length-1),m),k=h.next();while(!k.done)})};return b});
function xa(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var g=c++;return{value:b(g,a[g]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[Symbol.iterator]=function(){return e};return e}z("Array.prototype.keys",function(a){return a?a:function(){return xa(this,function(b){return b})}});
z("Array.prototype.fill",function(a){return a?a:function(b,c,d){var e=this.length||0;0>c&&(c=Math.max(0,e+c));if(null==d||d>e)d=e;d=Number(d);0>d&&(d=Math.max(0,e+d));for(c=Number(c||0);c<d;c++)this[c]=b;return this}});function F(a){return a?a:Array.prototype.fill}z("Int8Array.prototype.fill",F);z("Uint8Array.prototype.fill",F);z("Uint8ClampedArray.prototype.fill",F);z("Int16Array.prototype.fill",F);z("Uint16Array.prototype.fill",F);z("Int32Array.prototype.fill",F);
z("Uint32Array.prototype.fill",F);z("Float32Array.prototype.fill",F);z("Float64Array.prototype.fill",F);z("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}});z("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c<e;c++){var g=d[c];if(g===b||Object.is(g,b))return!0}return!1}});
z("String.prototype.includes",function(a){return a?a:function(b,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.includes must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype.includes must not be a regular expression");return-1!==this.indexOf(b,c||0)}});var ya=this||self;
function Aa(a,b){a=a.split(".");var c=ya;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=b};function Ba(a){var b;a:{if(b=ya.navigator)if(b=b.userAgent)break a;b=""}return-1!=b.indexOf(a)};var Ca=Array.prototype.map?function(a,b){return Array.prototype.map.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=Array(c),e="string"===typeof a?a.split(""):a,g=0;g<c;g++)g in e&&(d[g]=b.call(void 0,e[g],g,a));return d};var Da={},Ea=null;function Fa(a){var b=a.length,c=3*b/4;c%3?c=Math.floor(c):-1!="=.".indexOf(a[b-1])&&(c=-1!="=.".indexOf(a[b-2])?c-2:c-1);var d=new Uint8Array(c),e=0;Ga(a,function(g){d[e++]=g});return e!==c?d.subarray(0,e):d}
function Ga(a,b){function c(k){for(;d<a.length;){var l=a.charAt(d++),m=Ea[l];if(null!=m)return m;if(!/^[\s\xa0]*$/.test(l))throw Error("Unknown base64 encoding at char: "+l);}return k}Ha();for(var d=0;;){var e=c(-1),g=c(0),f=c(64),h=c(64);if(64===h&&-1===e)break;b(e<<2|g>>4);64!=f&&(b(g<<4&240|f>>2),64!=h&&b(f<<6&192|h))}}
function Ha(){if(!Ea){Ea={};for(var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var d=a.concat(b[c].split(""));Da[c]=d;for(var e=0;e<d.length;e++){var g=d[e];void 0===Ea[g]&&(Ea[g]=e)}}}};var Ia="undefined"!==typeof Uint8Array,Ja=!(Ba("Trident")||Ba("MSIE"))&&"function"===typeof ya.btoa;
function Ka(a){if(!Ja){var b;void 0===b&&(b=0);Ha();b=Da[b];for(var c=Array(Math.floor(a.length/3)),d=b[64]||"",e=0,g=0;e<a.length-2;e+=3){var f=a[e],h=a[e+1],k=a[e+2],l=b[f>>2];f=b[(f&3)<<4|h>>4];h=b[(h&15)<<2|k>>6];k=b[k&63];c[g++]=l+f+h+k}l=0;k=d;switch(a.length-e){case 2:l=a[e+1],k=b[(l&15)<<2]||d;case 1:a=a[e],c[g]=b[a>>2]+b[(a&3)<<4|l>>4]+k+d}return c.join("")}for(b="";10240<a.length;)b+=String.fromCharCode.apply(null,a.subarray(0,10240)),a=a.subarray(10240);b+=String.fromCharCode.apply(null,
a);return btoa(b)}var La=RegExp("[-_.]","g");function Ma(a){switch(a){case "-":return"+";case "_":return"/";case ".":return"=";default:return""}}function Na(a){if(!Ja)return Fa(a);La.test(a)&&(a=a.replace(La,Ma));a=atob(a);for(var b=new Uint8Array(a.length),c=0;c<a.length;c++)b[c]=a.charCodeAt(c);return b}var Oa;function Pa(){return Oa||(Oa=new Uint8Array(0))}var Qa={};var Ra="function"===typeof Uint8Array.prototype.slice,G=0,H=0;function Sa(a){var b=0>a;a=Math.abs(a);var c=a>>>0;a=Math.floor((a-c)/4294967296);b&&(c=A(Ta(c,a)),b=c.next().value,a=c.next().value,c=b);G=c>>>0;H=a>>>0}var Ua="function"===typeof BigInt;function Ta(a,b){b=~b;a?a=~a+1:b+=1;return[a,b]};function Va(a,b){this.i=a>>>0;this.h=b>>>0}
function Wa(a){if(!a)return Xa||(Xa=new Va(0,0));if(!/^-?\d+$/.test(a))return null;if(16>a.length)Sa(Number(a));else if(Ua)a=BigInt(a),G=Number(a&BigInt(4294967295))>>>0,H=Number(a>>BigInt(32)&BigInt(4294967295));else{var b=+("-"===a[0]);H=G=0;for(var c=a.length,d=b,e=(c-b)%6+b;e<=c;d=e,e+=6)d=Number(a.slice(d,e)),H*=1E6,G=1E6*G+d,4294967296<=G&&(H+=G/4294967296|0,G%=4294967296);b&&(b=A(Ta(G,H)),a=b.next().value,b=b.next().value,G=a,H=b)}return new Va(G,H)}var Xa;function Ya(a,b){return Error("Invalid wire type: "+a+" (at position "+b+")")}function Za(){return Error("Failed to read varint, encoding is invalid.")}function $a(a,b){return Error("Tried to read past the end of the data "+b+" > "+a)};function K(){throw Error("Invalid UTF8");}function ab(a,b){b=String.fromCharCode.apply(null,b);return null==a?b:a+b}var bb=void 0,cb,db="undefined"!==typeof TextDecoder,eb,fb="undefined"!==typeof TextEncoder;var gb;function hb(a){if(a!==Qa)throw Error("illegal external caller");}function ib(a,b){hb(b);this.V=a;if(null!=a&&0===a.length)throw Error("ByteString should be constructed with non-empty values");}function jb(){return gb||(gb=new ib(null,Qa))}function kb(a){hb(Qa);var b=a.V;b=null==b||Ia&&null!=b&&b instanceof Uint8Array?b:"string"===typeof b?Na(b):null;return null==b?b:a.V=b};function lb(a){if("string"===typeof a)return{buffer:Na(a),C:!1};if(Array.isArray(a))return{buffer:new Uint8Array(a),C:!1};if(a.constructor===Uint8Array)return{buffer:a,C:!1};if(a.constructor===ArrayBuffer)return{buffer:new Uint8Array(a),C:!1};if(a.constructor===ib)return{buffer:kb(a)||Pa(),C:!0};if(a instanceof Uint8Array)return{buffer:new Uint8Array(a.buffer,a.byteOffset,a.byteLength),C:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers");
};function mb(a,b){this.i=null;this.m=!1;this.h=this.j=this.l=0;nb(this,a,b)}function nb(a,b,c){c=void 0===c?{}:c;a.S=void 0===c.S?!1:c.S;b&&(b=lb(b),a.i=b.buffer,a.m=b.C,a.l=0,a.j=a.i.length,a.h=a.l)}mb.prototype.reset=function(){this.h=this.l};function L(a,b){a.h=b;if(b>a.j)throw $a(a.j,b);}
function ob(a){var b=a.i,c=a.h,d=b[c++],e=d&127;if(d&128&&(d=b[c++],e|=(d&127)<<7,d&128&&(d=b[c++],e|=(d&127)<<14,d&128&&(d=b[c++],e|=(d&127)<<21,d&128&&(d=b[c++],e|=d<<28,d&128&&b[c++]&128&&b[c++]&128&&b[c++]&128&&b[c++]&128&&b[c++]&128)))))throw Za();L(a,c);return e}function pb(a,b){if(0>b)throw Error("Tried to read a negative byte length: "+b);var c=a.h,d=c+b;if(d>a.j)throw $a(b,a.j-c);a.h=d;return c}var qb=[];function rb(){this.h=[]}rb.prototype.length=function(){return this.h.length};rb.prototype.end=function(){var a=this.h;this.h=[];return a};function sb(a,b,c){for(;0<c||127<b;)a.h.push(b&127|128),b=(b>>>7|c<<25)>>>0,c>>>=7;a.h.push(b)}function M(a,b){for(;127<b;)a.h.push(b&127|128),b>>>=7;a.h.push(b)};function tb(a,b){if(qb.length){var c=qb.pop();nb(c,a,b);a=c}else a=new mb(a,b);this.h=a;this.j=this.h.h;this.i=this.l=-1;this.setOptions(b)}tb.prototype.setOptions=function(a){a=void 0===a?{}:a;this.ca=void 0===a.ca?!1:a.ca};tb.prototype.reset=function(){this.h.reset();this.j=this.h.h;this.i=this.l=-1};
function ub(a){var b=a.h;if(b.h==b.j)return!1;a.j=a.h.h;var c=ob(a.h)>>>0;b=c>>>3;c&=7;if(!(0<=c&&5>=c))throw Ya(c,a.j);if(1>b)throw Error("Invalid field number: "+b+" (at position "+a.j+")");a.l=b;a.i=c;return!0}
function vb(a){switch(a.i){case 0:if(0!=a.i)vb(a);else a:{a=a.h;for(var b=a.h,c=b+10,d=a.i;b<c;)if(0===(d[b++]&128)){L(a,b);break a}throw Za();}break;case 1:a=a.h;L(a,a.h+8);break;case 2:2!=a.i?vb(a):(b=ob(a.h)>>>0,a=a.h,L(a,a.h+b));break;case 5:a=a.h;L(a,a.h+4);break;case 3:b=a.l;do{if(!ub(a))throw Error("Unmatched start-group tag: stream EOF");if(4==a.i){if(a.l!=b)throw Error("Unmatched end-group tag");break}vb(a)}while(1);break;default:throw Ya(a.i,a.j);}}var wb=[];function xb(){this.j=[];this.i=0;this.h=new rb}function N(a,b){0!==b.length&&(a.j.push(b),a.i+=b.length)}function yb(a,b){if(b=b.R){N(a,a.h.end());for(var c=0;c<b.length;c++)N(a,kb(b[c])||Pa())}};var O="function"===typeof Symbol&&"symbol"===typeof Symbol()?Symbol():void 0;function P(a,b){if(O)return a[O]|=b;if(void 0!==a.A)return a.A|=b;Object.defineProperties(a,{A:{value:b,configurable:!0,writable:!0,enumerable:!1}});return b}function zb(a,b){O?a[O]&&(a[O]&=~b):void 0!==a.A&&(a.A&=~b)}function Q(a){var b;O?b=a[O]:b=a.A;return null==b?0:b}function R(a,b){O?a[O]=b:void 0!==a.A?a.A=b:Object.defineProperties(a,{A:{value:b,configurable:!0,writable:!0,enumerable:!1}})}
function Ab(a){P(a,1);return a}function Bb(a,b){R(b,(a|0)&-51)}function Cb(a,b){R(b,(a|18)&-41)};var Db={};function Eb(a){return null!==a&&"object"===typeof a&&!Array.isArray(a)&&a.constructor===Object}var Fb,Gb=[];R(Gb,23);Fb=Object.freeze(Gb);function Hb(a){if(Q(a.o)&2)throw Error("Cannot mutate an immutable Message");}function Ib(a){var b=a.length;(b=b?a[b-1]:void 0)&&Eb(b)?b.g=1:(b={},a.push((b.g=1,b)))};function Jb(a){var b=a.i+a.G;return a.B||(a.B=a.o[b]={})}function S(a,b){return-1===b?null:b>=a.i?a.B?a.B[b]:void 0:a.o[b+a.G]}function U(a,b,c,d){Hb(a);Kb(a,b,c,d)}function Kb(a,b,c,d){a.j&&(a.j=void 0);b>=a.i||d?Jb(a)[b]=c:(a.o[b+a.G]=c,(a=a.B)&&b in a&&delete a[b])}function Lb(a,b,c,d){var e=S(a,b);Array.isArray(e)||(e=Fb);var g=Q(e);g&1||Ab(e);if(d)g&2||P(e,2),c&1||Object.freeze(e);else{d=!(c&2);var f=g&2;c&1||!f?d&&g&16&&!f&&zb(e,16):(e=Ab(Array.prototype.slice.call(e)),Kb(a,b,e))}return e}
function Mb(a,b){var c=S(a,b);var d=null==c?c:"number"===typeof c||"NaN"===c||"Infinity"===c||"-Infinity"===c?Number(c):void 0;null!=d&&d!==c&&Kb(a,b,d);return d}
function Nb(a,b,c,d,e){a.h||(a.h={});var g=a.h[c],f=Lb(a,c,3,e);if(!g){var h=f;g=[];var k=!!(Q(a.o)&16);f=!!(Q(h)&2);var l=h;!e&&f&&(h=Array.prototype.slice.call(h));for(var m=f,r=0;r<h.length;r++){var p=h[r];var n=b,q=!1;q=void 0===q?!1:q;p=Array.isArray(p)?new n(p):q?new n:void 0;if(void 0!==p){n=p.o;var t=q=Q(n);f&&(t|=2);k&&(t|=16);t!=q&&R(n,t);n=t;m=m||!!(2&n);g.push(p)}}a.h[c]=g;k=Q(h);b=k|33;b=m?b&-9:b|8;k!=b&&(m=h,Object.isFrozen(m)&&(m=Array.prototype.slice.call(m)),R(m,b),h=m);l!==h&&Kb(a,
c,h);(e||d&&f)&&P(g,2);d&&Object.freeze(g);return g}e||(e=Object.isFrozen(g),d&&!e?Object.freeze(g):!d&&e&&(g=Array.prototype.slice.call(g),a.h[c]=g));return g}function Ob(a,b,c){var d=!!(Q(a.o)&2);b=Nb(a,b,c,d,d);a=Lb(a,c,3,d);if(!(d||Q(a)&8)){for(d=0;d<b.length;d++){c=b[d];if(Q(c.o)&2){var e=Pb(c,!1);e.j=c}else e=c;c!==e&&(b[d]=e,a[d]=e.o)}P(a,8)}return b}
function V(a,b,c){if(null!=c&&"number"!==typeof c)throw Error("Value of float/double field must be a number|null|undefined, found "+typeof c+": "+c);U(a,b,c)}function Qb(a,b,c,d,e){Hb(a);var g=Nb(a,c,b,!1,!1);c=null!=d?d:new c;a=Lb(a,b,2,!1);void 0!=e?(g.splice(e,0,c),a.splice(e,0,c.o)):(g.push(c),a.push(c.o));c.C()&&zb(a,8);return c}function Rb(a,b){return null==a?b:a}function W(a,b,c){c=void 0===c?0:c;return Rb(Mb(a,b),c)};var Sb;function Tb(a){switch(typeof a){case "number":return isFinite(a)?a:String(a);case "object":if(a)if(Array.isArray(a)){if(0!==(Q(a)&128))return a=Array.prototype.slice.call(a),Ib(a),a}else{if(Ia&&null!=a&&a instanceof Uint8Array)return Ka(a);if(a instanceof ib){var b=a.V;return null==b?"":"string"===typeof b?b:a.V=Ka(b)}}}return a};function Ub(a,b,c,d){if(null!=a){if(Array.isArray(a))a=Vb(a,b,c,void 0!==d);else if(Eb(a)){var e={},g;for(g in a)e[g]=Ub(a[g],b,c,d);a=e}else a=b(a,d);return a}}function Vb(a,b,c,d){var e=Q(a);d=d?!!(e&16):void 0;a=Array.prototype.slice.call(a);for(var g=0;g<a.length;g++)a[g]=Ub(a[g],b,c,d);c(e,a);return a}function Wb(a){return a.ja===Db?a.toJSON():Tb(a)}function Xb(a,b){a&128&&Ib(b)};function Yb(a,b,c){c=void 0===c?Cb:c;if(null!=a){if(Ia&&a instanceof Uint8Array)return a.length?new ib(new Uint8Array(a),Qa):jb();if(Array.isArray(a)){var d=Q(a);if(d&2)return a;if(b&&!(d&32)&&(d&16||0===d))return R(a,d|2),a;a=Vb(a,Yb,d&4?Cb:c,!0);b=Q(a);b&4&&b&2&&Object.freeze(a);return a}return a.ja===Db?Zb(a):a}}
function $b(a,b,c,d,e,g,f){if(a=a.h&&a.h[c]){d=Q(a);d&2?d=a:(g=Ca(a,Zb),Cb(d,g),Object.freeze(g),d=g);Hb(b);f=null==d?Fb:Ab([]);if(null!=d){g=!!d.length;for(a=0;a<d.length;a++){var h=d[a];g=g&&!(Q(h.o)&2);f[a]=h.o}g=(g?8:0)|1;a=Q(f);(a&g)!==g&&(Object.isFrozen(f)&&(f=Array.prototype.slice.call(f)),R(f,a|g));b.h||(b.h={});b.h[c]=d}else b.h&&(b.h[c]=void 0);Kb(b,c,f,e)}else U(b,c,Yb(d,g,f),e)}function Zb(a){if(Q(a.o)&2)return a;a=Pb(a,!0);P(a.o,2);return a}
function Pb(a,b){var c=a.o,d=[];P(d,16);var e=a.constructor.h;e&&d.push(e);e=a.B;if(e){d.length=c.length;d.fill(void 0,d.length,c.length);var g={};d[d.length-1]=g}0!==(Q(c)&128)&&Ib(d);b=b||a.C()?Cb:Bb;g=a.constructor;Sb=d;d=new g(d);Sb=void 0;a.R&&(d.R=a.R.slice());g=!!(Q(c)&16);for(var f=e?c.length-1:c.length,h=0;h<f;h++)$b(a,d,h-a.G,c[h],!1,g,b);if(e)for(var k in e)$b(a,d,+k,e[k],!0,g,b);return d};function X(a,b,c){null==a&&(a=Sb);Sb=void 0;var d=this.constructor.i||0,e=0<d,g=this.constructor.h,f=!1;if(null==a){a=g?[g]:[];var h=48;var k=!0;e&&(d=0,h|=128);R(a,h)}else{if(!Array.isArray(a))throw Error();if(g&&g!==a[0])throw Error();var l=h=P(a,0);if(k=0!==(16&l))(f=0!==(32&l))||(l|=32);if(e)if(128&l)d=0;else{if(0<a.length){var m=a[a.length-1];if(Eb(m)&&"g"in m){d=0;l|=128;delete m.g;var r=!0,p;for(p in m){r=!1;break}r&&a.pop()}}}else if(128&l)throw Error();h!==l&&R(a,l)}this.G=(g?0:-1)-d;this.h=
void 0;this.o=a;a:{g=this.o.length;d=g-1;if(g&&(g=this.o[d],Eb(g))){this.B=g;this.i=d-this.G;break a}void 0!==b&&-1<b?(this.i=Math.max(b,d+1-this.G),this.B=void 0):this.i=Number.MAX_VALUE}if(!e&&this.B&&"g"in this.B)throw Error('Unexpected "g" flag in sparse object of message that is not a group type.');if(c){b=k&&!f&&!0;e=this.i;var n;for(k=0;k<c.length;k++)f=c[k],f<e?(f+=this.G,(d=a[f])?ac(d,b):a[f]=Fb):(n||(n=Jb(this)),(d=n[f])?ac(d,b):n[f]=Fb)}}
X.prototype.toJSON=function(){return Vb(this.o,Wb,Xb)};X.prototype.C=function(){return!!(Q(this.o)&2)};function ac(a,b){if(Array.isArray(a)){var c=Q(a),d=1;!b||c&2||(d|=16);(c&d)!==d&&R(a,c|d)}}X.prototype.ja=Db;X.prototype.toString=function(){return this.o.toString()};function bc(a,b,c){if(c){var d={},e;for(e in c){var g=c[e],f=g.ra;f||(d.J=g.xa||g.oa.W,g.ia?(d.aa=cc(g.ia),f=function(h){return function(k,l,m){return h.J(k,l,m,h.aa)}}(d)):g.ka?(d.Z=dc(g.da.P,g.ka),f=function(h){return function(k,l,m){return h.J(k,l,m,h.Z)}}(d)):f=d.J,g.ra=f);f(b,a,g.da);d={J:d.J,aa:d.aa,Z:d.Z}}}yb(b,a)}var ec=Symbol();function fc(a,b,c){return a[ec]||(a[ec]=function(d,e){return b(d,e,c)})}
function gc(a){var b=a[ec];if(!b){var c=hc(a);b=function(d,e){return ic(d,e,c)};a[ec]=b}return b}function jc(a){var b=a.ia;if(b)return gc(b);if(b=a.wa)return fc(a.da.P,b,a.ka)}function kc(a){var b=jc(a),c=a.da,d=a.oa.U;return b?function(e,g){return d(e,g,c,b)}:function(e,g){return d(e,g,c)}}function lc(a,b){var c=a[b];"function"==typeof c&&0===c.length&&(c=c(),a[b]=c);return Array.isArray(c)&&(mc in c||nc in c||0<c.length&&"function"==typeof c[0])?c:void 0}
function oc(a,b,c,d,e,g){b.P=a[0];var f=1;if(a.length>f&&"number"!==typeof a[f]){var h=a[f++];c(b,h)}for(;f<a.length;){c=a[f++];for(var k=f+1;k<a.length&&"number"!==typeof a[k];)k++;h=a[f++];k-=f;switch(k){case 0:d(b,c,h);break;case 1:(k=lc(a,f))?(f++,e(b,c,h,k)):d(b,c,h,a[f++]);break;case 2:k=f++;k=lc(a,k);e(b,c,h,k,a[f++]);break;case 3:g(b,c,h,a[f++],a[f++],a[f++]);break;case 4:g(b,c,h,a[f++],a[f++],a[f++],a[f++]);break;default:throw Error("unexpected number of binary field arguments: "+k);}}return b}
var pc=Symbol();function cc(a){var b=a[pc];if(!b){var c=qc(a);b=function(d,e){return rc(d,e,c)};a[pc]=b}return b}function dc(a,b){var c=a[pc];c||(c=function(d,e){return bc(d,e,b)},a[pc]=c);return c}var nc=Symbol();function sc(a,b){a.push(b)}function tc(a,b,c){a.push(b,c.W)}function uc(a,b,c,d){var e=cc(d),g=qc(d).P,f=c.W;a.push(b,function(h,k,l){return f(h,k,l,g,e)})}function vc(a,b,c,d,e,g){var f=dc(d,g),h=c.W;a.push(b,function(k,l,m){return h(k,l,m,d,f)})}
function qc(a){var b=a[nc];if(b)return b;b=oc(a,a[nc]=[],sc,tc,uc,vc);mc in a&&nc in a&&(a.length=0);return b}var mc=Symbol();function wc(a,b){a[0]=b}function xc(a,b,c,d){var e=c.U;a[b]=d?function(g,f,h){return e(g,f,h,d)}:e}function yc(a,b,c,d,e){var g=c.U,f=gc(d),h=hc(d).P;a[b]=function(k,l,m){return g(k,l,m,h,f,e)}}function zc(a,b,c,d,e,g,f){var h=c.U,k=fc(d,e,g);a[b]=function(l,m,r){return h(l,m,r,d,k,f)}}
function hc(a){var b=a[mc];if(b)return b;b=oc(a,a[mc]={},wc,xc,yc,zc);mc in a&&nc in a&&(a.length=0);return b}
function ic(a,b,c){for(;ub(b)&&4!=b.i;){var d=b.l,e=c[d];if(!e){var g=c[0];g&&(g=g[d])&&(e=c[d]=kc(g))}if(!e||!e(b,a,d)){e=b;d=a;g=e.j;vb(e);var f=e;if(!f.ca){e=f.h.h-g;f.h.h=g;f=f.h;if(0==e)e=jb();else{g=pb(f,e);if(f.S&&f.m)e=f.i.subarray(g,g+e);else{f=f.i;var h=g;e=g+e;e=h===e?Pa():Ra?f.slice(h,e):new Uint8Array(f.subarray(h,e))}e=0==e.length?jb():new ib(e,Qa)}(g=d.R)?g.push(e):d.R=[e]}}}return a}
function rc(a,b,c){for(var d=c.length,e=1==d%2,g=e?1:0;g<d;g+=2)(0,c[g+1])(b,a,c[g]);bc(a,b,e?c[0]:void 0)}function Ac(a,b){return{U:a,W:b}}
var Y=Ac(function(a,b,c){if(5!==a.i)return!1;a=a.h;var d=a.i,e=a.h,g=d[e];var f=d[e+1];var h=d[e+2];d=d[e+3];L(a,a.h+4);f=(g<<0|f<<8|h<<16|d<<24)>>>0;a=2*(f>>31)+1;g=f>>>23&255;f&=8388607;U(b,c,255==g?f?NaN:Infinity*a:0==g?a*Math.pow(2,-149)*f:a*Math.pow(2,g-150)*(f+Math.pow(2,23)));return!0},function(a,b,c){b=Mb(b,c);if(null!=b){M(a.h,8*c+5);a=a.h;var d=+b;0===d?0<1/d?G=H=0:(H=0,G=2147483648):isNaN(d)?(H=0,G=2147483647):(d=(c=0>d?-2147483648:0)?-d:d,3.4028234663852886E38<d?(H=0,G=(c|2139095040)>>>
0):1.1754943508222875E-38>d?(d=Math.round(d/Math.pow(2,-149)),H=0,G=(c|d)>>>0):(b=Math.floor(Math.log(d)/Math.LN2),d*=Math.pow(2,-b),d=Math.round(8388608*d),16777216<=d&&++b,H=0,G=(c|b+127<<23|d&8388607)>>>0));c=G;a.h.push(c>>>0&255);a.h.push(c>>>8&255);a.h.push(c>>>16&255);a.h.push(c>>>24&255)}}),Bc=Ac(function(a,b,c){if(0!==a.i)return!1;var d=a.h,e=0,g=a=0,f=d.i,h=d.h;do{var k=f[h++];e|=(k&127)<<g;g+=7}while(32>g&&k&128);32<g&&(a|=(k&127)>>4);for(g=3;32>g&&k&128;g+=7)k=f[h++],a|=(k&127)<<g;L(d,
h);if(128>k){d=e>>>0;k=a>>>0;if(a=k&2147483648)d=~d+1>>>0,k=~k>>>0,0==d&&(k=k+1>>>0);d=4294967296*k+(d>>>0)}else throw Za();U(b,c,a?-d:d);return!0},function(a,b,c){b=S(b,c);null!=b&&("string"===typeof b&&Wa(b),null!=b&&(M(a.h,8*c),"number"===typeof b?(a=a.h,Sa(b),sb(a,G,H)):(c=Wa(b),sb(a.h,c.i,c.h))))}),Cc=Ac(function(a,b,c){if(0!==a.i)return!1;U(b,c,ob(a.h));return!0},function(a,b,c){b=S(b,c);if(null!=b&&null!=b)if(M(a.h,8*c),a=a.h,c=b,0<=c)M(a,c);else{for(b=0;9>b;b++)a.h.push(c&127|128),c>>=7;a.h.push(1)}}),
Dc=Ac(function(a,b,c){if(2!==a.i)return!1;var d=ob(a.h)>>>0;a=a.h;var e=pb(a,d);a=a.i;if(db){var g=a,f;(f=cb)||(f=cb=new TextDecoder("utf-8",{fatal:!0}));a=e+d;g=0===e&&a===g.length?g:g.subarray(e,a);try{var h=f.decode(g)}catch(r){if(void 0===bb){try{f.decode(new Uint8Array([128]))}catch(p){}try{f.decode(new Uint8Array([97])),bb=!0}catch(p){bb=!1}}!bb&&(cb=void 0);throw r;}}else{h=e;d=h+d;e=[];for(var k=null,l,m;h<d;)l=a[h++],128>l?e.push(l):224>l?h>=d?K():(m=a[h++],194>l||128!==(m&192)?(h--,K()):
e.push((l&31)<<6|m&63)):240>l?h>=d-1?K():(m=a[h++],128!==(m&192)||224===l&&160>m||237===l&&160<=m||128!==((g=a[h++])&192)?(h--,K()):e.push((l&15)<<12|(m&63)<<6|g&63)):244>=l?h>=d-2?K():(m=a[h++],128!==(m&192)||0!==(l<<28)+(m-144)>>30||128!==((g=a[h++])&192)||128!==((f=a[h++])&192)?(h--,K()):(l=(l&7)<<18|(m&63)<<12|(g&63)<<6|f&63,l-=65536,e.push((l>>10&1023)+55296,(l&1023)+56320))):K(),8192<=e.length&&(k=ab(k,e),e.length=0);h=ab(k,e)}U(b,c,h);return!0},function(a,b,c){b=S(b,c);if(null!=b){var d=!1;
d=void 0===d?!1:d;if(fb){if(d&&/(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])/.test(b))throw Error("Found an unpaired surrogate");b=(eb||(eb=new TextEncoder)).encode(b)}else{for(var e=0,g=new Uint8Array(3*b.length),f=0;f<b.length;f++){var h=b.charCodeAt(f);if(128>h)g[e++]=h;else{if(2048>h)g[e++]=h>>6|192;else{if(55296<=h&&57343>=h){if(56319>=h&&f<b.length){var k=b.charCodeAt(++f);if(56320<=k&&57343>=k){h=1024*(h-55296)+k-56320+65536;g[e++]=h>>18|240;g[e++]=h>>12&63|128;
g[e++]=h>>6&63|128;g[e++]=h&63|128;continue}else f--}if(d)throw Error("Found an unpaired surrogate");h=65533}g[e++]=h>>12|224;g[e++]=h>>6&63|128}g[e++]=h&63|128}}b=e===g.length?g:g.subarray(0,e)}M(a.h,8*c+2);M(a.h,b.length);N(a,a.h.end());N(a,b)}}),Ec=Ac(function(a,b,c,d,e){if(2!==a.i)return!1;b=Qb(b,c,d);c=a.h.j;d=ob(a.h)>>>0;var g=a.h.h+d,f=g-c;0>=f&&(a.h.j=g,e(b,a,void 0,void 0,void 0),f=g-a.h.h);if(f)throw Error("Message parsing ended unexpectedly. Expected to read "+(d+" bytes, instead read "+
(d-f)+" bytes, either the data ended unexpectedly or the message misreported its own length"));a.h.h=g;a.h.j=c;return!0},function(a,b,c,d,e){b=Ob(b,d,c);if(null!=b)for(d=0;d<b.length;d++){var g=a;M(g.h,8*c+2);var f=g.h.end();N(g,f);f.push(g.i);g=f;e(b[d],a);f=a;var h=g.pop();for(h=f.i+f.h.length()-h;127<h;)g.push(h&127|128),h>>>=7,f.i++;g.push(h);f.i++}});function Fc(a){return function(b,c){a:{if(wb.length){var d=wb.pop();d.setOptions(c);nb(d.h,b,c);b=d}else b=new tb(b,c);try{var e=hc(a);var g=ic(new e.P,b,e);break a}finally{e=b.h,e.i=null,e.m=!1,e.l=0,e.j=0,e.h=0,e.S=!1,b.l=-1,b.i=-1,100>wb.length&&wb.push(b)}g=void 0}return g}}function Gc(a){return function(){var b=new xb;rc(this,b,qc(a));N(b,b.h.end());for(var c=new Uint8Array(b.i),d=b.j,e=d.length,g=0,f=0;f<e;f++){var h=d[f];c.set(h,g);g+=h.length}b.j=[c];return c}};function Z(a){X.call(this,a)}na(Z,X);var Hc=[Z,1,Cc,2,Y,3,Dc,4,Dc];Z.prototype.l=Gc(Hc);function Ic(a){X.call(this,a,-1,Jc)}na(Ic,X);Ic.prototype.addClassification=function(a,b){Qb(this,1,Z,a,b);return this};var Jc=[1],Kc=Fc([Ic,1,Ec,Hc]);function Lc(a){X.call(this,a)}na(Lc,X);var Mc=[Lc,1,Y,2,Y,3,Y,4,Y,5,Y];Lc.prototype.l=Gc(Mc);function Nc(a){X.call(this,a,-1,Oc)}na(Nc,X);var Oc=[1],Pc=Fc([Nc,1,Ec,Mc]);function Qc(a){X.call(this,a)}na(Qc,X);var Rc=[Qc,1,Y,2,Y,3,Y,4,Y,5,Y,6,Bc],Sc=Fc(Rc);Qc.prototype.l=Gc(Rc);function Tc(a,b,c){c=a.createShader(0===c?a.VERTEX_SHADER:a.FRAGMENT_SHADER);a.shaderSource(c,b);a.compileShader(c);if(!a.getShaderParameter(c,a.COMPILE_STATUS))throw Error("Could not compile WebGL shader.\n\n"+a.getShaderInfoLog(c));return c};function Uc(a){return Ob(a,Z,1).map(function(b){var c=S(b,1);return{index:null==c?0:c,qa:W(b,2),label:null!=S(b,3)?Rb(S(b,3),""):void 0,displayName:null!=S(b,4)?Rb(S(b,4),""):void 0}})};function Vc(a){return{x:W(a,1),y:W(a,2),z:W(a,3),visibility:null!=Mb(a,4)?W(a,4):void 0}};function Wc(a,b){this.i=a;this.h=b;this.m=0}
function Xc(a,b,c){Yc(a,b);if("function"===typeof a.h.canvas.transferToImageBitmap)return Promise.resolve(a.h.canvas.transferToImageBitmap());if(c)return Promise.resolve(a.h.canvas);if("function"===typeof createImageBitmap)return createImageBitmap(a.h.canvas);void 0===a.j&&(a.j=document.createElement("canvas"));return new Promise(function(d){a.j.height=a.h.canvas.height;a.j.width=a.h.canvas.width;a.j.getContext("2d",{}).drawImage(a.h.canvas,0,0,a.h.canvas.width,a.h.canvas.height);d(a.j)})}
function Yc(a,b){var c=a.h;if(void 0===a.s){var d=Tc(c,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",0),e=Tc(c,"\n precision mediump float;\n varying vec2 vTex;\n uniform sampler2D sampler0;\n void main(){\n gl_FragColor = texture2D(sampler0, vTex);\n }",1),g=c.createProgram();c.attachShader(g,d);c.attachShader(g,e);c.linkProgram(g);if(!c.getProgramParameter(g,c.LINK_STATUS))throw Error("Could not compile WebGL program.\n\n"+
c.getProgramInfoLog(g));d=a.s=g;c.useProgram(d);e=c.getUniformLocation(d,"sampler0");a.l={O:c.getAttribLocation(d,"aVertex"),N:c.getAttribLocation(d,"aTex"),ya:e};a.v=c.createBuffer();c.bindBuffer(c.ARRAY_BUFFER,a.v);c.enableVertexAttribArray(a.l.O);c.vertexAttribPointer(a.l.O,2,c.FLOAT,!1,0,0);c.bufferData(c.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),c.STATIC_DRAW);c.bindBuffer(c.ARRAY_BUFFER,null);a.u=c.createBuffer();c.bindBuffer(c.ARRAY_BUFFER,a.u);c.enableVertexAttribArray(a.l.N);c.vertexAttribPointer(a.l.N,
2,c.FLOAT,!1,0,0);c.bufferData(c.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,0,1,1]),c.STATIC_DRAW);c.bindBuffer(c.ARRAY_BUFFER,null);c.uniform1i(e,0)}d=a.l;c.useProgram(a.s);c.canvas.width=b.width;c.canvas.height=b.height;c.viewport(0,0,b.width,b.height);c.activeTexture(c.TEXTURE0);a.i.bindTexture2d(b.glName);c.enableVertexAttribArray(d.O);c.bindBuffer(c.ARRAY_BUFFER,a.v);c.vertexAttribPointer(d.O,2,c.FLOAT,!1,0,0);c.enableVertexAttribArray(d.N);c.bindBuffer(c.ARRAY_BUFFER,a.u);c.vertexAttribPointer(d.N,
2,c.FLOAT,!1,0,0);c.bindFramebuffer(c.DRAW_FRAMEBUFFER?c.DRAW_FRAMEBUFFER:c.FRAMEBUFFER,null);c.clearColor(0,0,0,0);c.clear(c.COLOR_BUFFER_BIT);c.colorMask(!0,!0,!0,!0);c.drawArrays(c.TRIANGLE_FAN,0,4);c.disableVertexAttribArray(d.O);c.disableVertexAttribArray(d.N);c.bindBuffer(c.ARRAY_BUFFER,null);a.i.bindTexture2d(0)}function Zc(a){this.h=a};var $c=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]);function ad(a,b){return b+a}function bd(a,b){window[a]=b}function cd(a){var b=document.createElement("script");b.setAttribute("src",a);b.setAttribute("crossorigin","anonymous");return new Promise(function(c){b.addEventListener("load",function(){c()},!1);b.addEventListener("error",function(){c()},!1);document.body.appendChild(b)})}
function dd(){return E(function(a){switch(a.h){case 1:return a.s=2,D(a,WebAssembly.instantiate($c),4);case 4:a.h=3;a.s=0;break;case 2:return a.s=0,a.l=null,a.return(!1);case 3:return a.return(!0)}})}
function ed(a){this.h=a;this.listeners={};this.l={};this.L={};this.s={};this.v={};this.M=this.u=this.ga=!0;this.I=Promise.resolve();this.fa="";this.D={};this.locateFile=a&&a.locateFile||ad;if("object"===typeof window)var b=window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/";else if("undefined"!==typeof location)b=location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/";else throw Error("solutions can only be loaded on a web page or in a web worker");
this.ha=b;if(a.options){b=A(Object.keys(a.options));for(var c=b.next();!c.done;c=b.next()){c=c.value;var d=a.options[c].default;void 0!==d&&(this.l[c]="function"===typeof d?d():d)}}}x=ed.prototype;x.close=function(){this.j&&this.j.delete();return Promise.resolve()};
function fd(a){var b,c,d,e,g,f,h,k,l,m,r;return E(function(p){switch(p.h){case 1:if(!a.ga)return p.return();b=void 0===a.h.files?[]:"function"===typeof a.h.files?a.h.files(a.l):a.h.files;return D(p,dd(),2);case 2:c=p.i;if("object"===typeof window)return bd("createMediapipeSolutionsWasm",{locateFile:a.locateFile}),bd("createMediapipeSolutionsPackedAssets",{locateFile:a.locateFile}),f=b.filter(function(n){return void 0!==n.data}),h=b.filter(function(n){return void 0===n.data}),k=Promise.all(f.map(function(n){var q=
gd(a,n.url);if(void 0!==n.path){var t=n.path;q=q.then(function(w){a.overrideFile(t,w);return Promise.resolve(w)})}return q})),l=Promise.all(h.map(function(n){return void 0===n.simd||n.simd&&c||!n.simd&&!c?cd(a.locateFile(n.url,a.ha)):Promise.resolve()})).then(function(){var n,q,t;return E(function(w){if(1==w.h)return n=window.createMediapipeSolutionsWasm,q=window.createMediapipeSolutionsPackedAssets,t=a,D(w,n(q),2);t.i=w.i;w.h=0})}),m=function(){return E(function(n){a.h.graph&&a.h.graph.url?n=D(n,
gd(a,a.h.graph.url),0):(n.h=0,n=void 0);return n})}(),D(p,Promise.all([l,k,m]),7);if("function"!==typeof importScripts)throw Error("solutions can only be loaded on a web page or in a web worker");d=b.filter(function(n){return void 0===n.simd||n.simd&&c||!n.simd&&!c}).map(function(n){return a.locateFile(n.url,a.ha)});importScripts.apply(null,ea(d));e=a;return D(p,createMediapipeSolutionsWasm(Module),6);case 6:e.i=p.i;a.m=new OffscreenCanvas(1,1);a.i.canvas=a.m;g=a.i.GL.createContext(a.m,{antialias:!1,
alpha:!1,va:"undefined"!==typeof WebGL2RenderingContext?2:1});a.i.GL.makeContextCurrent(g);p.h=4;break;case 7:a.m=document.createElement("canvas");r=a.m.getContext("webgl2",{});if(!r&&(r=a.m.getContext("webgl",{}),!r))return alert("Failed to create WebGL canvas context when passing video frame."),p.return();a.K=r;a.i.canvas=a.m;a.i.createContext(a.m,!0,!0,{});case 4:a.j=new a.i.SolutionWasm,a.ga=!1,p.h=0}})}
function hd(a){var b,c,d,e,g,f,h,k;return E(function(l){if(1==l.h){if(a.h.graph&&a.h.graph.url&&a.fa===a.h.graph.url)return l.return();a.u=!0;if(!a.h.graph||!a.h.graph.url){l.h=2;return}a.fa=a.h.graph.url;return D(l,gd(a,a.h.graph.url),3)}2!=l.h&&(b=l.i,a.j.loadGraph(b));c=A(Object.keys(a.D));for(d=c.next();!d.done;d=c.next())e=d.value,a.j.overrideFile(e,a.D[e]);a.D={};if(a.h.listeners)for(g=A(a.h.listeners),f=g.next();!f.done;f=g.next())h=f.value,id(a,h);k=a.l;a.l={};a.setOptions(k);l.h=0})}
x.reset=function(){var a=this;return E(function(b){a.j&&(a.j.reset(),a.s={},a.v={});b.h=0})};
x.setOptions=function(a,b){var c=this;if(b=b||this.h.options){for(var d=[],e=[],g={},f=A(Object.keys(a)),h=f.next();!h.done;g={X:g.X,Y:g.Y},h=f.next())if(h=h.value,!(h in this.l&&this.l[h]===a[h])){this.l[h]=a[h];var k=b[h];void 0!==k&&(k.onChange&&(g.X=k.onChange,g.Y=a[h],d.push(function(l){return function(){var m;return E(function(r){if(1==r.h)return D(r,l.X(l.Y),2);m=r.i;!0===m&&(c.u=!0);r.h=0})}}(g))),k.graphOptionXref&&(h=Object.assign({},{calculatorName:"",calculatorIndex:0},k.graphOptionXref,
{valueNumber:1===k.type?a[h]:0,valueBoolean:0===k.type?a[h]:!1,valueString:2===k.type?a[h]:""}),e.push(h)))}if(0!==d.length||0!==e.length)this.u=!0,this.H=(void 0===this.H?[]:this.H).concat(e),this.F=(void 0===this.F?[]:this.F).concat(d)}};
function jd(a){var b,c,d,e,g,f,h;return E(function(k){switch(k.h){case 1:if(!a.u)return k.return();if(!a.F){k.h=2;break}b=A(a.F);c=b.next();case 3:if(c.done){k.h=5;break}d=c.value;return D(k,d(),4);case 4:c=b.next();k.h=3;break;case 5:a.F=void 0;case 2:if(a.H){e=new a.i.GraphOptionChangeRequestList;g=A(a.H);for(f=g.next();!f.done;f=g.next())h=f.value,e.push_back(h);a.j.changeOptions(e);e.delete();a.H=void 0}a.u=!1;k.h=0}})}
x.initialize=function(){var a=this;return E(function(b){return 1==b.h?D(b,fd(a),2):3!=b.h?D(b,hd(a),3):D(b,jd(a),0)})};function gd(a,b){var c,d;return E(function(e){if(b in a.L)return e.return(a.L[b]);c=a.locateFile(b,"");d=fetch(c).then(function(g){return g.arrayBuffer()});a.L[b]=d;return e.return(d)})}x.overrideFile=function(a,b){this.j?this.j.overrideFile(a,b):this.D[a]=b};x.clearOverriddenFiles=function(){this.D={};this.j&&this.j.clearOverriddenFiles()};
x.send=function(a,b){var c=this,d,e,g,f,h,k,l,m,r;return E(function(p){switch(p.h){case 1:if(!c.h.inputs)return p.return();d=1E3*(void 0===b||null===b?performance.now():b);return D(p,c.I,2);case 2:return D(p,c.initialize(),3);case 3:e=new c.i.PacketDataList;g=A(Object.keys(a));for(f=g.next();!f.done;f=g.next())if(h=f.value,k=c.h.inputs[h]){a:{var n=a[h];switch(k.type){case "video":var q=c.s[k.stream];q||(q=new Wc(c.i,c.K),c.s[k.stream]=q);0===q.m&&(q.m=q.i.createTexture());if("undefined"!==typeof HTMLVideoElement&&
n instanceof HTMLVideoElement){var t=n.videoWidth;var w=n.videoHeight}else"undefined"!==typeof HTMLImageElement&&n instanceof HTMLImageElement?(t=n.naturalWidth,w=n.naturalHeight):(t=n.width,w=n.height);w={glName:q.m,width:t,height:w};t=q.h;t.canvas.width=w.width;t.canvas.height=w.height;t.activeTexture(t.TEXTURE0);q.i.bindTexture2d(q.m);t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n);q.i.bindTexture2d(0);q=w;break a;case "detections":q=c.s[k.stream];q||(q=new Zc(c.i),c.s[k.stream]=q);
q.data||(q.data=new q.h.DetectionListData);q.data.reset(n.length);for(w=0;w<n.length;++w){t=n[w];var v=q.data,B=v.setBoundingBox,J=w;var I=t.la;var u=new Qc;V(u,1,I.sa);V(u,2,I.ta);V(u,3,I.height);V(u,4,I.width);V(u,5,I.rotation);U(u,6,I.pa);I=u.l();B.call(v,J,I);if(t.ea)for(v=0;v<t.ea.length;++v){u=t.ea[v];B=q.data;J=B.addNormalizedLandmark;I=w;u=Object.assign({},u,{visibility:u.visibility?u.visibility:0});var C=new Lc;V(C,1,u.x);V(C,2,u.y);V(C,3,u.z);u.visibility&&V(C,4,u.visibility);u=C.l();J.call(B,
I,u)}if(t.ba)for(v=0;v<t.ba.length;++v)B=q.data,J=B.addClassification,I=w,u=t.ba[v],C=new Z,V(C,2,u.qa),u.index&&U(C,1,u.index),u.label&&U(C,3,u.label),u.displayName&&U(C,4,u.displayName),u=C.l(),J.call(B,I,u)}q=q.data;break a;default:q={}}}l=q;m=k.stream;switch(k.type){case "video":e.pushTexture2d(Object.assign({},l,{stream:m,timestamp:d}));break;case "detections":r=l;r.stream=m;r.timestamp=d;e.pushDetectionList(r);break;default:throw Error("Unknown input config type: '"+k.type+"'");}}c.j.send(e);
return D(p,c.I,4);case 4:e.delete(),p.h=0}})};
function kd(a,b,c){var d,e,g,f,h,k,l,m,r,p,n,q,t,w;return E(function(v){switch(v.h){case 1:if(!c)return v.return(b);d={};e=0;g=A(Object.keys(c));for(f=g.next();!f.done;f=g.next())h=f.value,k=c[h],"string"!==typeof k&&"texture"===k.type&&void 0!==b[k.stream]&&++e;1<e&&(a.M=!1);l=A(Object.keys(c));f=l.next();case 2:if(f.done){v.h=4;break}m=f.value;r=c[m];if("string"===typeof r)return t=d,w=m,D(v,ld(a,m,b[r]),14);p=b[r.stream];if("detection_list"===r.type){if(p){var B=p.getRectList();for(var J=p.getLandmarksList(),
I=p.getClassificationsList(),u=[],C=0;C<B.size();++C){var T=Sc(B.get(C)),od=W(T,1),pd=W(T,2),qd=W(T,3),rd=W(T,4),sd=W(T,5,0),za=void 0;za=void 0===za?0:za;T={la:{sa:od,ta:pd,height:qd,width:rd,rotation:sd,pa:Rb(S(T,6),za)},ea:Ob(Pc(J.get(C)),Lc,1).map(Vc),ba:Uc(Kc(I.get(C)))};u.push(T)}B=u}else B=[];d[m]=B;v.h=7;break}if("proto_list"===r.type){if(p){B=Array(p.size());for(J=0;J<p.size();J++)B[J]=p.get(J);p.delete()}else B=[];d[m]=B;v.h=7;break}if(void 0===p){v.h=3;break}if("float_list"===r.type){d[m]=
p;v.h=7;break}if("proto"===r.type){d[m]=p;v.h=7;break}if("texture"!==r.type)throw Error("Unknown output config type: '"+r.type+"'");n=a.v[m];n||(n=new Wc(a.i,a.K),a.v[m]=n);return D(v,Xc(n,p,a.M),13);case 13:q=v.i,d[m]=q;case 7:r.transform&&d[m]&&(d[m]=r.transform(d[m]));v.h=3;break;case 14:t[w]=v.i;case 3:f=l.next();v.h=2;break;case 4:return v.return(d)}})}
function ld(a,b,c){var d;return E(function(e){return"number"===typeof c||c instanceof Uint8Array||c instanceof a.i.Uint8BlobList?e.return(c):c instanceof a.i.Texture2dDataOut?(d=a.v[b],d||(d=new Wc(a.i,a.K),a.v[b]=d),e.return(Xc(d,c,a.M))):e.return(void 0)})}
function id(a,b){for(var c=b.name||"$",d=[].concat(ea(b.wants)),e=new a.i.StringList,g=A(b.wants),f=g.next();!f.done;f=g.next())e.push_back(f.value);g=a.i.PacketListener.implement({onResults:function(h){for(var k={},l=0;l<b.wants.length;++l)k[d[l]]=h.get(l);var m=a.listeners[c];m&&(a.I=kd(a,k,b.outs).then(function(r){r=m(r);for(var p=0;p<b.wants.length;++p){var n=k[d[p]];"object"===typeof n&&n.hasOwnProperty&&n.hasOwnProperty("delete")&&n.delete()}r&&(a.I=r)}))}});a.j.attachMultiListener(e,g);e.delete()}
x.onResults=function(a,b){this.listeners[b||"$"]=a};Aa("Solution",ed);Aa("OptionType",{BOOL:0,NUMBER:1,ua:2,0:"BOOL",1:"NUMBER",2:"STRING"});function md(a){void 0===a&&(a=0);switch(a){case 1:return"selfie_segmentation_landscape.tflite";default:return"selfie_segmentation.tflite"}}
function nd(a){var b=this;a=a||{};this.h=new ed({locateFile:a.locateFile,files:function(c){return[{simd:!0,url:"selfie_segmentation_solution_simd_wasm_bin.js"},{simd:!1,url:"selfie_segmentation_solution_wasm_bin.js"},{data:!0,url:md(c.modelSelection)}]},graph:{url:"selfie_segmentation.binarypb"},listeners:[{wants:["segmentation_mask","image_transformed"],outs:{image:{type:"texture",stream:"image_transformed"},segmentationMask:{type:"texture",stream:"segmentation_mask"}}}],inputs:{image:{type:"video",
stream:"input_frames_gpu"}},options:{useCpuInference:{type:0,graphOptionXref:{calculatorType:"InferenceCalculator",fieldName:"use_cpu_inference"},default:"object"!==typeof window||void 0===window.navigator?!1:"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document},selfieMode:{type:0,graphOptionXref:{calculatorType:"GlScalerCalculator",calculatorIndex:1,fieldName:"flip_horizontal"}},modelSelection:{type:1,
graphOptionXref:{calculatorType:"ConstantSidePacketCalculator",calculatorName:"ConstantSidePacketCalculatorModelSelection",fieldName:"int_value"},onChange:function(c){var d,e,g;return E(function(f){if(1==f.h)return d=md(c),e="third_party/mediapipe/modules/selfie_segmentation/"+d,D(f,gd(b.h,d),2);g=f.i;b.h.overrideFile(e,g);return f.return(!0)})}}}})}x=nd.prototype;x.close=function(){this.h.close();return Promise.resolve()};x.onResults=function(a){this.h.onResults(a)};
x.initialize=function(){var a=this;return E(function(b){return D(b,a.h.initialize(),0)})};x.reset=function(){this.h.reset()};x.send=function(a){var b=this;return E(function(c){return D(c,b.h.send(a),0)})};x.setOptions=function(a){this.h.setOptions(a)};Aa("SelfieSegmentation",nd);Aa("VERSION","0.1.1675465747");}).call(this);
@@ -0,0 +1,21 @@
var createMediapipeSolutionsWasm = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(createMediapipeSolutionsWasm) {
createMediapipeSolutionsWasm = createMediapipeSolutionsWasm || {};
var Module=typeof createMediapipeSolutionsWasm!="undefined"?createMediapipeSolutionsWasm:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});["_main","_fflush","___getTypeName","__embind_initialize_bindings","onRuntimeInitialized"].forEach(prop=>{if(!Object.getOwnPropertyDescriptor(Module["ready"],prop)){Object.defineProperty(Module["ready"],prop,{get:()=>abort("You are getting "+prop+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js"),set:()=>abort("You are setting "+prop+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")})}});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e=="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}if(ENVIRONMENT_IS_NODE){if(typeof process=="undefined"||!process.release||process.release.name!=="node")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=(filename,onload,onerror)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=(status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process=="object"&&typeof require==="function"||typeof window=="object"||typeof importScripts=="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){let data;if(typeof readbuffer=="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data=="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit=="function"){quit_=(status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)}}if(typeof print!="undefined"){if(typeof console=="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window=="object"||typeof importScripts=="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - anLine truncated
return createMediapipeSolutionsWasm.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = createMediapipeSolutionsWasm;
else if (typeof define === 'function' && define['amd'])
define([], function() { return createMediapipeSolutionsWasm; });
else if (typeof exports === 'object')
exports["createMediapipeSolutionsWasm"] = createMediapipeSolutionsWasm;
@@ -0,0 +1,21 @@
var createMediapipeSolutionsWasm = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(createMediapipeSolutionsWasm) {
createMediapipeSolutionsWasm = createMediapipeSolutionsWasm || {};
var Module=typeof createMediapipeSolutionsWasm!="undefined"?createMediapipeSolutionsWasm:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});["_main","_fflush","___getTypeName","__embind_initialize_bindings","onRuntimeInitialized"].forEach(prop=>{if(!Object.getOwnPropertyDescriptor(Module["ready"],prop)){Object.defineProperty(Module["ready"],prop,{get:()=>abort("You are getting "+prop+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js"),set:()=>abort("You are setting "+prop+" on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")})}});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e=="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}if(ENVIRONMENT_IS_NODE){if(typeof process=="undefined"||!process.release||process.release.name!=="node")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=(filename,onload,onerror)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=(status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process=="object"&&typeof require==="function"||typeof window=="object"||typeof importScripts=="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){let data;if(typeof readbuffer=="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data=="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit=="function"){quit_=(status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)}}if(typeof print!="undefined"){if(typeof console=="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window=="object"||typeof importScripts=="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - anLine truncated
return createMediapipeSolutionsWasm.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = createMediapipeSolutionsWasm;
else if (typeof define === 'function' && define['amd'])
define([], function() { return createMediapipeSolutionsWasm; });
else if (typeof exports === 'object')
exports["createMediapipeSolutionsWasm"] = createMediapipeSolutionsWasm;
+59 -24
View File
@@ -14,6 +14,9 @@ body {
padding: 0;
color: #ccc;
background: rgb(16, 17, 19);
display: flex;
flex-direction: column;
overflow: hidden;
}
*,
@@ -36,6 +39,10 @@ img {
vertical-align: top;
}
input[type="file"] {
cursor: pointer;
}
::-webkit-scrollbar {
width: 5px;
height: 5px;
@@ -53,9 +60,10 @@ img {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 13px;
font-size: 14px;
height: 48px;
width: 100%;
flex-shrink: 0;
padding: 0 0 0 20px;
border-bottom: 1px solid rgb(17, 21, 24);
background-color: rgb(28, 32, 34);
@@ -65,6 +73,7 @@ img {
display: flex;
justify-content: space-between;
align-items: center;
margin-right: 30px;
}
.header .logo img {
@@ -73,25 +82,19 @@ img {
.header .tool {
display: flex;
align-items: center;
justify-content: space-between;
height: 100%;
line-height: 1;
gap: 20px;
}
.header .qq {
.header .checkbox {
display: flex;
align-items: center;
margin-right: 15px;
color: rgb(255 255 255 / 50%);
}
.header .typeScript {
display: flex;
align-items: center;
margin-right: 15px;
}
.header .typeScript input {
.header .checkbox input {
margin-right: 5px;
}
@@ -100,19 +103,18 @@ img {
align-items: center;
flex: 1;
height: 100%;
gap: 30px;
}
.header .menus .item {
display: flex;
align-items: center;
margin-left: 15px;
height: 100%;
line-height: 1;
}
.header .menus .has-sub-menu {
position: relative;
cursor: pointer;
}
.header .menus .has-sub-menu:hover .sub-menu {
@@ -122,36 +124,44 @@ img {
.header .menus .has-sub-menu .sub-menu {
display: none;
position: absolute;
z-index: 9;
top: 45px;
z-index: 9999;
top: 40px;
left: 0;
width: 250px;
width: 280px;
padding: 0 10px;
background: #2b2b2b;
background: #1b1b1b;
border-radius: 3px;
border: 1px solid rgb(255, 255, 255, 0.05);
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.header .menus .has-sub-menu .sub-menu ul {
padding: 0;
margin-bottom: 15px;
margin-bottom: 20px;
}
.header .menus .has-sub-menu .sub-menu li {
display: block;
list-style: none;
margin-bottom: 15px;
margin-bottom: 10px;
}
.header .menus .has-sub-menu .sub-menu li.title {
color: #fff;
font-size: 16px;
margin-bottom: 15px;
font-weight: bold;
}
.header .menus .has-sub-menu .sub-menu li a:hover {
text-decoration: underline;
}
.header .run {
display: flex;
justify-content: center;
align-items: center;
padding: 0 10px;
padding: 0 15px;
height: 100%;
line-height: 1;
cursor: pointer;
@@ -179,19 +189,41 @@ img {
}
.main .part-left .libs {
height: 55px;
display: flex;
height: 50px;
border-bottom: 1px solid rgb(17, 21, 24);
}
.main .part-left .upload {
position: relative;
display: flex;
align-items: center;
justify-content: center;
padding: 0 15px;
height: 100%;
font-size: 13px;
color: #f1fa8c;
border-right: 1px solid rgb(17, 21, 24);
background-color: rgb(39, 41, 54);
}
.main .part-left #file {
opacity: 0;
position: absolute;
inset: 0;
width: 100%;
height: 100%;
}
.main .part-left .libsInput {
height: 100%;
width: 100%;
flex: 1;
padding: 10px;
outline: none;
resize: none;
border: none;
font-size: 13px;
color: #ccc;
border-bottom: 1px solid rgb(17, 21, 24);
background-color: rgb(28, 32, 34);
}
@@ -205,11 +237,13 @@ img {
.main .part-right {
flex: 1;
display: flex;
flex-direction: column;
}
.part-right .video-wrap {
display: flex;
height: 70%;
flex: 1;
align-items: center;
justify-content: center;
flex-direction: column;
@@ -218,6 +252,7 @@ img {
.part-right .video-wrap .artplayer-app {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 20px;
+3
View File
@@ -1,3 +1,6 @@
// npm i artplayer-plugin-ads
// import artplayerPluginAds from 'artplayer-plugin-ads';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
+16
View File
@@ -0,0 +1,16 @@
// npm i artplayer-plugin-ambilight
// import artplayerPluginAmbilight from 'artplayer-plugin-ambilight';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
autoSize: true,
plugins: [
artplayerPluginAmbilight({
blur: '50px',
opacity: 1,
frequency: 10,
duration: 0.3,
}),
],
});
+12
View File
@@ -0,0 +1,12 @@
// npm i artplayer-plugin-auto-thumbnail
// import artplayerPluginAutoThumbnail from 'artplayer-plugin-auto-thumbnail';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
plugins: [
artplayerPluginAutoThumbnail({
//
}),
],
});
+30
View File
@@ -0,0 +1,30 @@
// npm i artplayer-proxy-canvas
// import artplayerProxyCanvas from 'artplayer-proxy-canvas';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
poster: '/assets/sample/poster.jpg',
volume: 0.5,
autoplay: false,
autoSize: false,
screenshot: true,
setting: true,
loop: true,
flip: true,
pip: true,
playbackRate: true,
aspectRatio: true,
fullscreen: true,
fullscreenWeb: true,
miniProgressBar: true,
autoPlayback: true,
autoOrientation: true,
thumbnails: {
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
scale: 0.85,
},
proxy: artplayerProxyCanvas(),
});
+28
View File
@@ -0,0 +1,28 @@
// npm i artplayer-plugin-chapter
// import artplayerPluginChapter from 'artplayer-plugin-chapter';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
autoSize: true,
fullscreen: true,
fullscreenWeb: true,
miniProgressBar: true,
autoOrientation: true,
thumbnails: {
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
},
plugins: [
artplayerPluginChapter({
chapters: [
{ start: 0, end: 18, title: 'One more chance' },
{ start: 18, end: 36, title: '谁でもいいはずなのに' },
{ start: 36, end: 54, title: '夏の想い出がまわる' },
{ start: 54, end: 72, title: 'こんなとこにあるはずもないのに' },
{ start: 72, end: Infinity, title: '终わり' },
]
}),
],
});
+15
View File
@@ -0,0 +1,15 @@
// npm i artplayer-plugin-chromecast
// import artplayerPluginChromecast from 'artplayer-plugin-chromecast';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
fullscreen: true,
fullscreenWeb: true,
plugins: [
artplayerPluginChromecast({
// sdk: '', // The URL of the Cast SDK
// mimeType: '', // The MIME type of the media
}),
],
});
-76
View File
@@ -1,76 +0,0 @@
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
pip: true,
screenshot: true,
setting: true,
loop: true,
flip: true,
playbackRate: true,
aspectRatio: true,
fullscreen: true,
fullscreenWeb: true,
subtitleOffset: true,
miniProgressBar: true,
airplay: true,
theme: '#23ade5',
thumbnails: {
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
},
subtitle: {
url: '/assets/sample/subtitle.srt',
type: 'srt',
style: {
color: '#fe9200',
fontSize: '20px',
},
encoding: 'utf-8',
},
highlight: [
{
time: 15,
text: 'One more chance',
},
{
time: 30,
text: '谁でもいいはずなのに',
},
{
time: 45,
text: '夏の想い出がまわる',
},
{
time: 60,
text: 'こんなとこにあるはずもないのに',
},
{
time: 75,
text: '终わり',
},
],
icons: {
loading: '<img src="/assets/img/ploading.gif">',
state: '<img width="150" heigth="150" src="/assets/img/state.svg">',
indicator: '<img width="16" heigth="16" src="/assets/img/indicator.svg">',
},
settings: [
{
html: 'Control UI',
icon: '<img width="22" heigth="22" src="/assets/img/state.svg">',
tooltip: 'OFF',
switch: true,
onSwitch: async function (item) {
item.tooltip = item.switch ? 'OFF' : 'ON';
art.plugins.artplayerPluginControl.enable = !item.switch;
await Artplayer.utils.sleep(300);
art.setting.updateStyle();
return !item.switch;
},
},
],
plugins: [
artplayerPluginControl()
],
});
+43 -69
View File
@@ -1,80 +1,54 @@
// npm i artplayer-plugin-danmuku
// import artplayerPluginDanmuku from 'artplayer-plugin-danmuku';
// 使用文档 https://artplayer.org/document/plugin/danmuku.html
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
autoSize: true,
fullscreen: true,
fullscreenWeb: true,
flip: true,
playbackRate: true,
aspectRatio: true,
setting: true,
autoOrientation: true,
plugins: [
artplayerPluginDanmuku({
danmuku: '/assets/sample/danmuku-v2.xml',
speed: 5, // 弹幕持续时间,单位秒,范围在[1 ~ 10]
opacity: 1, // 弹幕透明度,范围在[0 ~ 1]
fontSize: 25, // 字体大小,支持数字和百分比
color: '#FFFFFF', // 默认字体颜色
mode: 0, // 默认模式,0-滚动,1-静止
margin: [10, '25%'], // 弹幕上下边距,支持数字和百分比
antiOverlap: true, // 是否防重叠
useWorker: true, // 是否使用 web worker
synchronousPlayback: false, // 是否同步到播放速度
filter: (danmu) => danmu.text.length < 50, // 弹幕过滤函数,返回 true 则可以发送
lockTime: 5, // 输入框锁定时间,单位秒,范围在[1 ~ 60]
maxLength: 100, // 输入框最大可输入的字数,范围在[0 ~ 500]
minWidth: 200, // 输入框最小宽度,范围在[0 ~ 500],填 0 则为无限制
maxWidth: 400, // 输入框最大宽度,范围在[0 ~ Infinity],填 0 则为 100% 宽度
theme: 'dark', // 输入框自定义挂载时的主题色,默认为 dark,可以选填亮色 light
beforeEmit: (danmu) => !!danmu.text.trim(), // 发送弹幕前的自定义校验,返回 true 则可以发送
danmuku: '/assets/sample/danmuku.xml',
// 通过 mount 选项可以自定义输入框挂载的位置,默认挂载于播放器底部,仅在当宽度小于最小值时生效
// mount: document.querySelector('.artplayer-danmuku'),
// 以下为非必填
speed: 5, // 弹幕持续时间,范围在[1 ~ 10]
margin: [10, '25%'], // 弹幕上下边距,支持像素数字和百分比
opacity: 1, // 弹幕透明度,范围在[0 ~ 1]
color: '#FFFFFF', // 默认弹幕颜色,可以被单独弹幕项覆盖
mode: 0, // 默认弹幕模式: 0: 滚动,1: 顶部,2: 底部
modes: [0, 1, 2], // 弹幕可见的模式
fontSize: 25, // 弹幕字体大小,支持像素数字和百分比
antiOverlap: true, // 弹幕是否防重叠
synchronousPlayback: false, // 是否同步播放速度
mount: undefined, // 弹幕发射器挂载点, 默认为播放器控制栏中部
heatmap: true, // 是否开启热力图
width: 512, // 当播放器宽度小于此值时,弹幕发射器置于播放器底部
points: [], // 热力图数据
filter: (danmu) => danmu.text.length <= 100, // 弹幕载入前的过滤器
beforeVisible: () => true, // 弹幕显示前的过滤器,返回 true 则可以发送
visible: true, // 弹幕层是否可见
emitter: true, // 是否开启弹幕发射器
maxLength: 200, // 弹幕输入框最大长度, 范围在[1 ~ 1000]
lockTime: 5, // 输入框锁定时间,范围在[1 ~ 60]
theme: 'dark', // 弹幕主题,支持 dark 和 light,只在自定义挂载时生效
OPACITY: {}, // 不透明度配置项
FONT_SIZE: {}, // 弹幕字号配置项
MARGIN: {}, // 显示区域配置项
SPEED: {}, // 弹幕速度配置项
COLOR: [], // 颜色列表配置项
// 手动发送弹幕前的过滤器,返回 true 则可以发送,可以做存库处理
beforeEmit(danmu) {
return new Promise((resolve) => {
console.log(danmu);
setTimeout(() => {
resolve(true);
}, 1000);
});
},
}),
],
});
// 监听手动输入的弹幕,保存到数据库
art.on('artplayerPluginDanmuku:emit', (danmu) => {
console.info('新增弹幕', danmu);
});
// 监听加载到的弹幕数组
art.on('artplayerPluginDanmuku:loaded', (danmus) => {
console.info('加载弹幕', danmus.length);
});
// 监听加载到弹幕的错误
art.on('artplayerPluginDanmuku:error', (error) => {
console.info('加载错误', error);
});
// 监听弹幕配置变化
art.on('artplayerPluginDanmuku:config', (option) => {
console.info('配置变化', option);
});
// 监听弹幕停止
art.on('artplayerPluginDanmuku:stop', () => {
console.info('弹幕停止');
});
// 监听弹幕开始
art.on('artplayerPluginDanmuku:start', () => {
console.info('弹幕开始');
});
// 监听弹幕隐藏
art.on('artplayerPluginDanmuku:hide', () => {
console.info('弹幕隐藏');
});
// 监听弹幕显示
art.on('artplayerPluginDanmuku:show', () => {
console.info('弹幕显示');
});
// 监听弹幕销毁
art.on('artplayerPluginDanmuku:destroy', () => {
console.info('弹幕销毁');
});
});
+22
View File
@@ -0,0 +1,22 @@
// npm i artplayer-plugin-danmuku-mask
// import artplayerPluginDanmukuMask from 'artplayer-plugin-danmuku-mask';
// npm i @mediapipe/selfie_segmentation
// 把 node_modules/@mediapipe/selfie_segmentation 目录复制到你的项目下
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
autoSize: true,
fullscreen: true,
fullscreenWeb: true,
autoOrientation: true,
plugins: [
artplayerPluginDanmuku({
danmuku: '/assets/sample/danmuku.xml'
}),
artplayerPluginDanmukuMask({
solutionPath: '/assets/@mediapipe/selfie_segmentation',
}),
],
});
+50
View File
@@ -0,0 +1,50 @@
// npm i dashjs
// npm i artplayer-plugin-dash-control
// import dashjs from 'dashjs';
// import artplayerPluginDashControl from 'artplayer-plugin-dash-control';
var art = new Artplayer({
container: '.artplayer-app',
url: 'https://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd',
setting: true,
plugins: [
artplayerPluginDashControl({
quality: {
// Show qualitys in control
control: true,
// Show qualitys in setting
setting: true,
// Get the quality name from level
getName: (level) => level.height + 'P',
// I18n
title: 'Quality',
auto: 'Auto',
},
audio: {
// Show audios in control
control: true,
// Show audios in setting
setting: true,
// Get the audio name from track
getName: (track) => track.lang.toUpperCase(),
// I18n
title: 'Audio',
auto: 'Auto',
}
}),
],
customType: {
mpd: function playMpd(video, url, art) {
if (dashjs.supportsMediaSource()) {
if (art.dash) art.dash.destroy();
const dash = dashjs.MediaPlayer().create();
dash.initialize(video, url, art.option.autoplay);
art.dash = dash;
art.on('destroy', () => dash.destroy());
} else {
art.notice.show = 'Unsupported playback format: mpd';
}
}
},
});
@@ -1,21 +1,13 @@
# dash.js
// npm i dashjs
// import dashjs from 'dashjs';
👉 [https://github.com/Dash-Industry-Forum/dash.js](https://github.com/Dash-Industry-Forum/dash.js)
<div className="run-code" data-libs="https://cdnjs.cloudflare.com/ajax/libs/dashjs/4.5.2/dash.all.min.js">
▶ Run Code
</div>
```js{18-21,25}
function playMpd(video, url, art) {
if (dashjs.supportsMediaSource()) {
if (art.dash) art.dash.destroy();
const dash = dashjs.MediaPlayer().create();
dash.initialize(video, url, art.option.autoplay);
// optional
art.dash = dash;
art.once('url', () => dash.destroy());
art.once('destroy', () => dash.destroy());
art.on('destroy', () => dash.destroy());
} else {
art.notice.show = 'Unsupported playback format: mpd';
}
@@ -23,7 +15,7 @@ function playMpd(video, url, art) {
var art = new Artplayer({
container: '.artplayer-app',
url: 'https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd',
url: 'https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd',
type: 'mpd',
customType: {
mpd: playMpd
@@ -32,5 +24,4 @@ var art = new Artplayer({
art.on('ready', () => {
console.info(art.dash);
});
```
});
@@ -1,22 +1,14 @@
# flv.js
// npm i flv.js
// import flvjs from 'flv.js';
👉 [https://github.com/Bilibili/flv.js](https://github.com/Bilibili/flv.js)
<div className="run-code" data-libs="https://cdnjs.cloudflare.com/ajax/libs/flv.js/1.6.2/flv.min.js">
▶ Run Code
</div>
```js{19-22,26}
function playFlv(video, url, art) {
if (flvjs.isSupported()) {
if (art.flv) art.flv.destroy();
const flv = flvjs.createPlayer({ type: 'flv', url });
flv.attachMediaElement(video);
flv.load();
// optional
art.flv = flv;
art.once('url', () => flv.destroy());
art.once('destroy', () => flv.destroy());
art.on('destroy', () => flv.destroy());
} else {
art.notice.show = 'Unsupported playback format: flv';
}
@@ -33,5 +25,4 @@ var art = new Artplayer({
art.on('ready', () => {
console.info(art.flv);
});
```
});
+53
View File
@@ -0,0 +1,53 @@
// npm i hls.js
// npm i artplayer-plugin-hls-control
// import Hls from 'hls.js';
// import artplayerPluginHlsControl from 'artplayer-plugin-hls-control';
var art = new Artplayer({
container: '.artplayer-app',
url: 'https://playertest.longtailvideo.com/adaptive/elephants_dream_v4/index.m3u8',
setting: true,
plugins: [
artplayerPluginHlsControl({
quality: {
// Show qualitys in control
control: true,
// Show qualitys in setting
setting: true,
// Get the quality name from level
getName: (level) => level.height + 'P',
// I18n
title: 'Quality',
auto: 'Auto',
},
audio: {
// Show audios in control
control: true,
// Show audios in setting
setting: true,
// Get the audio name from track
getName: (track) => track.name,
// I18n
title: 'Audio',
auto: 'Auto',
}
}),
],
customType: {
m3u8: function playM3u8(video, url, art) {
if (Hls.isSupported()) {
if (art.hls) art.hls.destroy();
const hls = new Hls();
hls.loadSource(url);
hls.attachMedia(video);
art.hls = hls;
art.on('destroy', () => hls.destroy());
} else if (video.canPlayType('application/vnd.apple.mpegurl')) {
video.src = url;
} else {
art.notice.show = 'Unsupported playback format: m3u8';
}
}
},
});
@@ -1,22 +1,14 @@
# hls.js
// npm i hls.js
// import Hls from 'hls.js';
👉 [https://github.com/video-dev/hls.js](https://github.com/video-dev/hls.js)
<div className="run-code" data-libs="https://cdnjs.cloudflare.com/ajax/libs/hls.js/8.0.0-beta.3/hls.min.js">
▶ Run Code
</div>
```js{21-24,28}
function playM3u8(video, url, art) {
if (Hls.isSupported()) {
if (art.hls) art.hls.destroy();
const hls = new Hls();
hls.loadSource(url);
hls.attachMedia(video);
// optional
art.hls = hls;
art.once('url', () => hls.destroy());
art.once('destroy', () => hls.destroy());
art.on('destroy', () => hls.destroy());
} else if (video.canPlayType('application/vnd.apple.mpegurl')) {
video.src = url;
} else {
@@ -35,5 +27,4 @@ var art = new Artplayer({
art.on('ready', () => {
console.info(art.hls);
});
```
});
-26
View File
@@ -1,26 +0,0 @@
var art = new Artplayer({
container: '.artplayer-app',
url: 'https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8',
setting: true,
plugins: [
artplayerPluginHlsQuality({
// Show quality in control
control: true,
// Show quality in setting
setting: true,
// I18n
title: 'Quality',
auto: 'Auto',
}),
],
customType: {
m3u8: function (video, url) {
// Attach the Hls instance to the Artplayer instance
art.hls = new Hls();
art.hls.loadSource(url);
art.hls.attachMedia(video);
},
},
});
+3
View File
@@ -1,3 +1,6 @@
// npm i artplayer-plugin-iframe
// import ArtplayerPluginIframe from 'artplayer-plugin-iframe';
const $iframe = document.createElement('iframe');
$iframe.allowFullscreen = true;
$iframe.width = '100%';
+4 -5
View File
@@ -1,7 +1,6 @@
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
title: 'Your Name',
poster: '/assets/sample/poster.jpg',
volume: 0.5,
isLive: false,
@@ -27,7 +26,6 @@ var art = new Artplayer({
airplay: true,
theme: '#23ade5',
lang: navigator.language.toLowerCase(),
whitelist: ['*'],
moreVideoAttr: {
crossOrigin: 'anonymous',
},
@@ -86,7 +84,7 @@ var art = new Artplayer({
tooltip: '5x',
range: [5, 1, 10, 0.1],
onRange: function (item) {
return item.range + 'x';
return item.range[0] + 'x';
},
},
],
@@ -118,17 +116,18 @@ var art = new Artplayer({
{
default: true,
html: 'SD 480P',
url: '/assets/sample/video.mp4',
url: '/assets/sample/video.mp4?q=480',
},
{
html: 'HD 720P',
url: '/assets/sample/video.mp4',
url: '/assets/sample/video.mp4?q=720',
},
],
thumbnails: {
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
scale: 0.85,
},
subtitle: {
url: '/assets/sample/subtitle.srt',
+44
View File
@@ -0,0 +1,44 @@
// npm i artplayer-plugin-libass
// import artplayerPluginLibass from 'artplayer-plugin-libass';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
fullscreenWeb: true,
subtitle: {
url: '/assets/sample/style-test.ass',
},
plugins: [
artplayerPluginLibass({
// debug: true,
workerUrl: 'https://unpkg.com/libass-wasm@4.1.0/dist/js/subtitles-octopus-worker.js',
// wasmUrl: 'https://unpkg.com/libass-wasm@4.1.0/dist/js/subtitles-octopus-worker.wasm',
fallbackFont: '/assets/misc/SourceHanSansCN-Bold.woff2'
}),
],
});
// init
art.on('artplayerPluginLibass:init', (adapter) => {
console.info('artplayerPluginLibass:init', adapter);
});
// subtitle switch
art.on('artplayerPluginLibass:switch', (url) => {
console.info('artplayerPluginLibass:switch', url);
})
// subtitle visible
art.on('artplayerPluginLibass:visible', (visible) => {
console.info('artplayerPluginLibass:visible', visible);
})
// subtitle timeOffset
art.on('artplayerPluginLibass:timeOffset', (timeOffset) => {
console.info('artplayerPluginLibass:timeOffset', timeOffset);
})
// destroy
art.on('artplayerPluginLibass:destroy', () => {
console.info('artplayerPluginLibass:destroy');
})
+98
View File
@@ -0,0 +1,98 @@
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
poster: '/assets/sample/poster.jpg',
autoSize: true,
loop: true,
mutex: true,
setting: true,
flip: true,
lock: true,
fastForward: true,
playbackRate: true,
aspectRatio: true,
theme: '#ff0057',
fullscreen: true,
fullscreenWeb: true,
miniProgressBar: true,
autoOrientation: true,
airplay: true,
moreVideoAttr: {
'x5-video-player-type': 'h5',
'x5-video-player-fullscreen': false,
'x5-video-orientation': 'portraint',
preload: "metadata"
},
thumbnails: {
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
scale: 0.6
},
subtitle: {
name: '中日双语',
url: '/assets/sample/subtitle.srt',
style: {
color: '#48aff0',
fontSize: '16px',
},
},
layers: [
{
html: `<img width="50" src="/assets/sample/layer.png">`,
click: function () {
art.notice.show = "你点击了自定义层";
},
style: {
position: 'absolute',
top: '10px',
right: '10px',
opacity: '.9',
},
},
],
icons: {
loading: '<img src="/assets/img/ploading.gif">',
state: '<img width="150" heigth="150" src="/assets/img/state.svg">',
indicator: '<img width="16" heigth="16" src="/assets/img/indicator.svg">',
},
settings: [
{
width: 200,
html: '切换字幕',
tooltip: '双语',
icon: '<img width="22" heigth="22" src="/assets/img/subtitle.svg">',
selector: [
{
html: '开关',
switch: true,
tooltip: '显示',
onSwitch: function (item) {
item.tooltip = item.switch ? '隐藏' : '显示';
art.subtitle.show = !item.switch;
return !item.switch;
},
},
{
default: true,
html: '双语',
url: '/assets/sample/subtitle.srt'
},
{
html: '中文',
url: '/assets/sample/subtitle.cn.srt'
},
{
html: '日文',
url: '/assets/sample/subtitle.jp.srt'
},
],
onSelect: function (item) {
art.subtitle.switch(item.url, {
name: item.html
});
return item.html;
},
},
],
});
+34
View File
@@ -0,0 +1,34 @@
// npm i mpegts
// import mpegts from 'mpegts';
function playFlv(video, url, art) {
if (mpegts.isSupported()) {
if (art.flv) art.flv.destroy();
const flv = mpegts.createPlayer({
type: 'flv',
url: url
});
flv.attachMediaElement(video);
flv.load();
flv.play();
art.flv = flv;
art.on('destroy', () => flv.destroy());
} else {
art.notice.show = 'Unsupported playback format: flv';
}
}
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.flv',
type: 'flv',
customType: {
flv: playFlv,
},
});
art.on('ready', () => {
console.info(art.flv);
});
+111
View File
@@ -0,0 +1,111 @@
// npm i artplayer-plugin-multiple-subtitles
// import artplayerPluginMultipleSubtitles from 'artplayer-plugin-multiple-subtitles';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
setting: true,
plugins: [
artplayerPluginMultipleSubtitles({
subtitles: [
{
name: 'chinese',
url: '/assets/sample/subtitle.cn.srt',
},
{
name: 'japanese',
url: '/assets/sample/subtitle.jp.srt',
}
],
})
],
settings: [
{
width: 200,
html: 'Subtitle',
tooltip: 'Double',
icon: '<img width="22" heigth="22" src="/assets/img/subtitle.svg">',
selector: [
{
html: 'Display',
tooltip: 'Show',
switch: true,
onSwitch: function (item) {
item.tooltip = item.switch ? 'Hide' : 'Show';
// 显示/隐藏字幕
// Show/hide subtitles
art.subtitle.show = !item.switch;
return !item.switch;
},
},
{
html: 'Reverse',
tooltip: 'Off',
switch: false,
onSwitch: function (item) {
item.tooltip = item.switch ? 'Off' : 'On';
// 修改字幕顺序
// Change the order of subtitles
if (item.switch) {
art.plugins.multipleSubtitles.tracks(['chinese', 'japanese']);
} else {
art.plugins.multipleSubtitles.tracks(['japanese', 'chinese']);
}
return !item.switch;
},
},
{
default: true,
html: 'Double',
name: 'double',
},
{
html: 'Chinese',
name: 'chinese',
},
{
html: 'Japanese',
name: 'japanese',
},
],
onSelect: function (item) {
if (item.name === 'double') {
// 重置字幕
// Reset subtitles
art.plugins.multipleSubtitles.reset();
} else {
// 显示单个字幕
// Show single subtitle
art.plugins.multipleSubtitles.tracks([item.name]);
}
return item.html;
},
},
],
});
// 自定义你自己的样式,请勿复制以下代码
// Customize your own style, please do not copy the following code
const style = `
.art-subtitle-chinese {
color: red;
font-size: 18px;
}
.art-subtitle-japanese {
color: yellow;
font-size: 12px;
}
`;
const $style = document.getElementById('artplayer-subtitle-style');
if ($style) {
$style.textContent = style;
} else {
const $style = document.createElement('style');
$style.id = 'artplayer-subtitle-style';
$style.textContent = style;
document.head.appendChild($style);
}
+138
View File
@@ -0,0 +1,138 @@
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
setting: true,
flip: true,
playbackRate: true,
aspectRatio: true,
subtitleOffset: true,
settings: [
{
width: 200,
html: 'Subtitle',
name: 'subtitle',
tooltip: 'Bilingual',
icon: '<img width="22" heigth="22" src="/assets/img/subtitle.svg">',
selector: [
{
html: 'Display',
tooltip: 'Show',
switch: true,
onSwitch: function (item) {
item.tooltip = item.switch ? 'Hide' : 'Show';
art.subtitle.show = !item.switch;
return !item.switch;
},
},
{
default: true,
html: 'Bilingual',
url: '/assets/sample/subtitle.srt',
},
{
html: 'Chinese',
url: '/assets/sample/subtitle.cn.srt',
},
{
html: 'Japanese',
url: '/assets/sample/subtitle.jp.srt',
},
],
onSelect: function (item) {
art.subtitle.switch(item.url, {
name: item.html,
});
return item.html;
},
mounted: function (...args) {
console.info(args);
},
},
{
html: 'Switcher',
icon: '<img width="22" heigth="22" src="/assets/img/state.svg">',
tooltip: 'OFF',
switch: false,
onSwitch: function (item) {
item.tooltip = item.switch ? 'OFF' : 'ON';
console.info('You clicked on the custom switch', item.switch);
return !item.switch;
},
mounted: function (...args) {
console.info(args);
},
},
{
html: 'Slider',
icon: '<img width="22" heigth="22" src="/assets/img/state.svg">',
tooltip: '5x',
range: [5, 1, 10, 0.1],
onRange: function (item) {
return item.range[0] + 'x';
},
mounted: function (...args) {
console.info(args);
},
},
],
}, async () => {
const { sleep } = Artplayer.utils;
art.setting.show = true;
console.log(art.setting.builtin);
console.log(art.setting.find('aspect-ratio'));
console.log(art.setting.find('aspect-ratio2'));
await sleep(1000);
art.setting.resize();
await sleep(1000);
art.setting.inactivate(art.setting.find('subtitle'));
art.setting.remove('aspect-ratio');
try {
art.setting.remove('aspect-ratio2');
} catch (error) {
console.log(error.message);
}
await sleep(1000);
art.setting.update({
name: 'subtitle-offset',
html: 'new offset',
range: [5, -11, 11, 1],
});
await sleep(1000);
art.setting.find('subtitle-offset').range = [0, -0, 10, 1];
await sleep(1000);
art.setting.update({
name: 'subtitle-offset2',
html: 'new offset 2',
range: [5, -11, 11, 1],
onChange(item) {
return item.range[0] + 's';
},
});
await sleep(1000);
art.setting.update({
name: 'flip',
html: 'new flip',
tooltip: 'OFF',
switch: false,
});
await sleep(1000);
art.setting.find('flip').switch = true;
await sleep(1000);
art.setting.update({
name: 'flip2',
html: 'new flip2',
tooltip: 'OFF',
switch: true,
});
await sleep(1000);
try {
art.setting.add({
name: 'flip2',
html: 'new flip2',
tooltip: 'OFF',
switch: true,
});
} catch (error) {
console.log(error.message);
}
});
+13 -68
View File
@@ -1,69 +1,14 @@
if (window.lastThumbnail) {
window.lastThumbnail.destroy();
}
// npm i artplayer-plugin-thumbnail
// import artplayerPluginThumbnail from 'artplayer-plugin-thumbnail';
var $popups = document.querySelector('.popups');
var $popinner = document.querySelector('.popinner');
var $artplayer = document.querySelector('.artplayer-app');
$artplayer.innerHTML = 'Drop video file here or click to upload.';
var thumbnail = new ArtplayerToolThumbnail({
fileInput: $artplayer,
number: 60, // 数量
width: 160, // 宽度
column: 10, // 列数
begin: 0, // 开始
end: NaN, // 结束
});
window.lastThumbnail = thumbnail;
thumbnail.on('file', function (file) {
console.log('Read video successfully: ' + file.name);
});
thumbnail.on('video', function (video) {
console.log('Video size: ' + video.videoWidth + ' x ' + video.videoHeight);
console.log('Video duration: ' + video.duration + 's');
thumbnail.start();
});
thumbnail.on('canvas', function (canvas) {
console.log('Build canvas successfully');
console.log('Canvas size: ' + canvas.width + ' x ' + canvas.height);
console.log('Preview density: ' + thumbnail.density + ' p/s');
});
thumbnail.on('update', function (url, percentage) {
console.log('Processing: ' + Math.floor(percentage.toFixed(2) * 100) + '%');
$popups.style.display = 'flex';
$popinner.style.backgroundImage = 'url(' + url + ')';
});
thumbnail.on('download', function (name) {
console.log('Start download preview: ' + name);
});
thumbnail.on('done', function () {
$popups.style.display = 'none';
thumbnail.download();
console.log('Build preview image complete');
[...Artplayer.instances].forEach(function (art) {
art.destroy(true);
});
new Artplayer({
container: $artplayer,
url: thumbnail.videoUrl,
autoSize: true,
poster: thumbnail.thumbnailUrl,
thumbnails: {
url: thumbnail.thumbnailUrl,
number: thumbnail.option.number,
column: thumbnail.option.column,
},
});
console.log('Build player complete');
});
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
plugins: [
artplayerPluginThumbnail({
width: 160,
number: 100,
scale: 1,
}),
],
});
+24
View File
@@ -0,0 +1,24 @@
// Depends on:
// https://glomex.github.io/vast-ima-player/
// https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side
// Google's IMA SDK are blocked by your Ad blocker.
// Please Turn Off Your Ad Blocker.
// npm i artplayer-plugin-vast
// import artplayerPluginVast from 'artplayer-plugin-vast';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
fullscreen: true,
fullscreenWeb: true,
plugins: [
artplayerPluginVast(({ playUrl, imaPlayer, ima }) => {
// Play the ad when the video is played
art.once('play', () => {
playUrl('https://artplayer.org/assets/vast/linear-ad.xml');
});
}),
],
});
+3
View File
@@ -1,3 +1,6 @@
// npm i artplayer-plugin-vtt-thumbnail
// import artplayerPluginVttThumbnail from 'artplayer-plugin-vtt-thumbnail';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/bbb-video.mp4',
+31
View File
@@ -0,0 +1,31 @@
// From: https://github.com/bilibili/WebAV
// npm i artplayer-proxy-webav
// import artplayerProxyWebAV from 'artplayer-proxy-webav';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/bbb-video.mp4',
volume: 0.5,
autoplay: false,
autoSize: false,
screenshot: true,
setting: true,
loop: true,
flip: true,
playbackRate: true,
aspectRatio: true,
fullscreen: true,
fullscreenWeb: true,
miniProgressBar: true,
autoPlayback: true,
thumbnails: {
url: '/assets/sample/bbb-sprite.jpg',
number: 121,
column: 11,
width: 128,
height: 72,
},
proxy: artplayerProxyWebAV({
//
}),
});
+36
View File
@@ -0,0 +1,36 @@
// npm i webtorrent
// import WebTorrent from 'webtorrent';
async function playTorrent(video, url, art) {
if (WebTorrent.WEBRTC_SUPPORT) {
if (art.torrent) art.torrent.destroy();
art.torrent = new WebTorrent();
await navigator.serviceWorker.register('/webtorrent.sw.min.js');
art.torrent.loadWorker(navigator.serviceWorker.controller);
art.torrent.add(url, (torrent) => {
const file = torrent.files.find((file) => {
return file.name.endsWith('.mp4');
});
file.streamTo(video);
});
art.on('destroy', () => art.torrent.destroy());
} else {
art.notice.show = 'Unsupported playback format: torrent';
}
}
var art = new Artplayer({
container: '.artplayer-app',
url: 'magnet:?xt=urn:btih:08ada5a7a6183aae1e09d831df6748d566095a10&dn=Sintel&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fsintel.torrent',
type: 'torrent',
customType: {
torrent: playTorrent,
},
});
art.on('ready', () => {
console.info(art.torrent);
});
Binary file not shown.

After

Width:  |  Height:  |  Size: 248 KiB

+34
View File
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg viewBox="0 0 80 80" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<polygon id="dcacc03d-ebe2-486b-86c6-02f40070ed49" points="0 0 80 0 80 80 0 80"></polygon>
<path d="M52.5463795,8.01403034 C54.5470371,7.84763808 56.3253994,9.18911826 56.7676959,11.0911381 C56.8718466,11.5365362 56.8612939,11.8985083 56.8069245,12.2287648 C56.7500316,12.556723 56.6424397,12.8481393 56.4951605,13.110368 C56.4219797,13.2418271 56.3354933,13.3636336 56.2494657,13.4856699 L56.2494657,13.4856699 L55.9916124,13.8522385 L55.4708587,14.5816985 C54.7716265,15.5508645 54.0556475,16.50762 53.3171867,17.4480581 C53.3121398,17.4544931 53.3068634,17.4606984 53.3020459,17.4671334 C54.2015503,17.5075824 55.1010548,17.5517085 56.0005592,17.6022697 C57.096436,17.6624835 58.1918539,17.7339586 59.2877307,17.8093407 L59.2877307,17.8093407 L60.9309723,17.9320665 L61.7527078,17.9980259 L62.1635756,18.0324994 L62.3688948,18.0495064 L62.471669,18.0580098 L62.5872901,18.0699607 C63.8533868,18.1864812 65.1027368,18.520185 66.2644533,19.0451021 C67.4263993,19.5697893 68.5000236,20.2872985 69.4304979,21.1587894 C70.3609723,22.0295909 71.1487556,23.0543742 71.7511781,24.1807396 C72.3552065,25.3059558 72.7702036,26.5343627 72.9750639,27.7944854 C73.0051162,27.9514549 73.0214041,28.1100331 73.0429684,28.2681518 L73.0429684,28.2681518 L73.0581092,28.3867407 L73.0714148,28.4988946 L73.0927497,28.7045867 L73.178089,29.5271253 L73.3366092,31.1733515 C73.4377777,32.2714485 73.5267875,33.3709245 73.6061623,34.4713197 C73.9220556,38.8708323 74.0704819,43.2995325 73.9677076,47.7257047 C73.8695214,52.1475102 73.5717513,56.5518491 73.123949,60.9389512 C73.1124787,61.0662734 73.0904556,61.2356534 73.070956,61.3930826 C73.0530623,61.5521205 73.0269099,61.7104689 72.9989223,61.8683577 L72.9583172,62.1053058 L72.9083065,62.3406451 C72.8745837,62.4976146 72.8410903,62.6543543 72.7979618,62.8092554 C72.638524,63.4309282 72.4281579,64.0401904 72.1691575,64.6280791 C71.6523038,65.8043162 70.9393071,66.8927606 70.0700844,67.8368758 C69.2020087,68.7819103 68.1783951,69.5837648 67.0510896,70.1990025 C65.9240135,70.8153893 64.6934749,71.2433208 63.4282958,71.4609637 C63.2697757,71.485325 63.1117143,71.5129038 62.9525059,71.5331283 L62.9525059,71.5331283 L62.4762572,71.5859877 L61.6545217,71.6574628 L60.0108212,71.7907605 C58.9151739,71.8769444 57.8190677,71.9509475 56.723191,72.0210437 C54.5309786,72.1573291 52.3383075,72.2648865 50.1451775,72.3455546 C41.3733459,72.6696058 32.5989908,72.5652659 23.8315179,72.0442559 C22.7356412,71.9799053 21.6402232,71.9031442 20.5445759,71.8238551 L20.5445759,71.8238551 L18.9015636,71.6951539 L18.0802869,71.6264367 L17.6696486,71.5910438 L17.4643294,71.5731176 C17.3957368,71.5671422 17.3305852,71.5620861 17.2461635,71.5522036 C15.9706611,71.433155 14.7132819,71.091867 13.5460596,70.5609746 C12.3779196,70.0296225 11.3006248,69.3040695 10.368774,68.4252242 C9.4371526,67.5466086 8.64822227,66.5163096 8.04901145,65.3832794 C7.4486536,64.2513983 7.03686821,63.0188545 6.83407251,61.7557442 C6.80952597,61.5978554 6.78268537,61.4401964 6.7670857,61.2811585 L6.7670857,61.2811585 L6.7407039,61.0428314 L6.72762771,60.9240127 L6.71868084,60.8210517 L6.6475647,59.9978237 L6.51565574,58.3504483 C6.43283985,57.2518916 6.35942964,56.1524157 6.29565452,55.0522503 C6.03986583,50.6529675 5.93755035,46.2348392 6.03825998,41.8194687 C6.13667554,37.4068562 6.41012856,33.0075734 6.82604327,28.6223099 C6.94441723,27.3608083 7.26696333,26.1147049 7.78312886,24.9545555 C8.29814735,23.7937167 9.0047206,22.7195213 9.86476706,21.7871271 C10.7243547,20.8542732 11.7390214,20.0655187 12.8543978,19.4603933 C13.9695447,18.8548081 15.1865483,18.43561 16.4368159,18.2241723 C16.5935008,18.2007303 16.7494975,18.1726918 16.9068707,18.1540761 L16.9068707,18.1540761 L17.3762372,18.1030552 L18.1975139,18.0336485 L19.8398379,17.9037982 C20.9350264,17.8199126 22.0302149,17.7482077 23.1254035,17.6801799 C24.2455974,17.6123819 25.3662501,17.552398 26.4866734,17.4993087 C26.4731384,17.4823018 26.459374,17.465065 26.4458389,17.4480581 C25.7073781,16.50762 24.9911698,15.5508645 24.2919376,14.5816985 L24.2919376,14.5816985 L23.7714133,13.8522385 L23.51356,13.4856699 C23.4275324,13.3636336 23.3408166,13.2418271 23.2678652,13.110368 C23.1203565,12.8481393 23.0129941,12.556723 22.9558718,12.2287648 C22.9017318,11.8985083 22.8909496,11.5365362 22.9953298,11.0911381 C23.4527671,9.13281148 25.2740285,7.85039596 27.2166461,8.01403034 C27.6717894,8.05195123 28.0122293,8.1735279 28.3093112,8.32682022 C28.6031814,8.48195113 28.8468116,8.67408363 29.0507543,8.89540373 C29.1530698,9.00548922 29.2418502,9.12568695 29.3313189,9.24519521 L29.3313189,9.24519521 L29.6001838,9.60371998 L30.1328666,10.3244467 C30.8380634,11.289246 31.5265136,12.266226 32.1922524,13.2595235 C32.8575324,14.2532806 33.5042304,15.2605973 34.1217938,16.2890578 C34.3094487,16.6025372 34.4950388,16.9178551 34.6778761,17.2350116 C37.4016243,17.1878978 40.125143,17.1791645 42.8488911,17.1968609 C43.5962988,17.2026065 44.3441653,17.2120293 45.0918023,17.2232906 C45.2723456,16.9100411 45.4558711,16.59886 45.6410025,16.2890578 C46.2587952,15.2605973 46.9054933,14.2532806 47.5707733,1Line truncated
<filter x="-15.4%" y="-16.3%" width="130.9%" height="132.5%" filterUnits="objectBoundingBox" id="6229a4d6-d7ef-4db2-a990-2e5a9a80e5fb">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>
<feOffset dx="0" dy="0" in="SourceAlpha" result="shadowOffsetOuter2"></feOffset>
<feGaussianBlur stdDeviation="3.5" in="shadowOffsetOuter2" result="shadowBlurOuter2"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0" type="matrix" in="shadowBlurOuter2" result="shadowMatrixOuter2"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="shadowMatrixOuter2"></feMergeNode>
</feMerge>
</filter>
</defs>
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" opacity="0.800000012">
<g transform="translate(-674.000000, -832.000000)">
<g transform="translate(514.000000, 759.000000)">
<g transform="translate(160.000000, 73.000000)">
<mask id="6571edcb-5f96-450a-80cd-4185b762ee4d" fill="white">
<use xlink:href="#dcacc03d-ebe2-486b-86c6-02f40070ed49"></use>
</mask>
<g mask="url(#6571edcb-5f96-450a-80cd-4185b762ee4d)">
<use fill="black" fill-opacity="1" filter="url(#6229a4d6-d7ef-4db2-a990-2e5a9a80e5fb)" xlink:href="#271c2bc0-87b1-41ff-8ceb-2ef24f2896fe"></use>
<use fill="#FFFFFF" fill-rule="evenodd" xlink:href="#271c2bc0-87b1-41ff-8ceb-2ef24f2896fe"></use>
</g>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.7 KiB

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 74" height="54"><g fill="none" fill-rule="evenodd"><rect width="199" height="73" x="0.5" y="0.5" fill="#FFF" fill-opacity="0.889" stroke="#979797" stroke-opacity="0.207" rx="8"></rect><path fill="#003087" fill-rule="nonzero" d="M77.5599861,42.672 C82.5421299,42.6678941 86.7787401,39.0351801 87.5429861,34.112 C88.3229861,29.145 84.4419861,24.8089419 78.9429861,24.8089419 L70.0799861,24.8089419 C69.7362553,24.8045668 69.4418457,25.054175 69.3899861,25.394 L65.4399861,50.466 C65.411103,50.6513547 65.4646051,50.8400802 65.5864664,50.9827001 C65.7083276,51.1253201 65.8863949,51.2076112 66.0739861,51.2080349 L70.7639861,51.2080349 C71.1069609,51.2114294 71.4002308,50.9620648 71.4519861,50.623 L72.6139861,43.258 C72.665345,42.9181575 72.9593063,42.6681411 73.3029861,42.672 L77.5599861,42.672 Z M81.4849861,33.886 C81.1949861,35.722 79.7759861,37.075 77.0599861,37.075 L73.5859861,37.075 L74.6389861,30.395 L78.0499861,30.395 C80.8599861,30.401 81.7729861,32.058 81.4849861,33.891 L81.4849861,33.886 Z M107.862986,32.706 L103.409986,32.706 C103.066412,32.702002 102.772249,32.9514007 102.719986,33.291 L102.575986,34.215 C102.575986,34.215 99.1189861,30.44 93.0009861,32.99 C89.4909861,34.451 87.8069861,37.47 87.0909861,39.68 C87.0909861,39.68 84.8139861,46.398 89.9609861,50.097 C89.9609861,50.097 94.7319861,53.653 100.105986,49.877 L100.012986,50.466 C99.9837482,50.6514164 100.037121,50.8403412 100.159058,50.9830492 C100.280994,51.1257572 100.459279,51.207952 100.646986,51.208 L105.097986,51.208 C105.441717,51.2124332 105.736126,50.962825 105.787986,50.623 L108.495986,33.448 C108.524869,33.2626453 108.471367,33.0739198 108.349506,32.9312999 C108.227645,32.7886799 108.049577,32.7063888 107.861986,32.706 L107.862986,32.706 Z M101.315986,42.198 C100.955689,44.6729154 98.8208538,46.5000884 96.3199861,46.474 C95.8464479,46.4793866 95.3750127,46.4102067 94.9229861,46.269 C93.0029861,45.653 91.9079861,43.807 92.2229861,41.807 C92.5837159,39.3248218 94.7289785,37.494888 97.2369861,37.53 C97.7109861,37.525 98.1829861,37.595 98.6349861,37.736 C100.547986,38.35 101.635986,40.196 101.320986,42.198 L101.315986,42.198 L101.315986,42.198 Z"></path><path fill="#0070E0" fill-rule="nonzero" d="M141.671986,42.672 C146.656916,42.6706404 150.897643,39.037672 151.663986,34.112 C152.442986,29.145 148.562986,24.8089637 143.061986,24.8089637 L134.201986,24.8089637 C133.85879,24.805503 133.565196,25.0547804 133.512986,25.394 L129.550986,50.473 C129.504409,50.756977 129.654011,51.0369155 129.915986,51.156 C130.000231,51.1952988 130.092026,51.2160348 130.184986,51.2160348 L134.875986,51.2160348 C135.219509,51.2194242 135.513223,50.9696175 135.564986,50.63 L136.727986,43.265 C136.778939,42.9249317 137.073149,42.6747042 137.416986,42.679 L141.671986,42.672 L141.671986,42.672 Z M145.596986,33.886 C145.306986,35.722 143.887986,37.075 141.170986,37.075 L137.697986,37.075 L138.751986,30.395 L142.162986,30.395 C144.970986,30.401 145.885986,32.058 145.596986,33.891 L145.596986,33.886 Z M171.973986,32.706 L167.525986,32.706 C167.18279,32.702503 166.889196,32.9517804 166.836986,33.291 L166.690986,34.215 C166.690986,34.215 163.234986,30.44 157.116986,32.99 C153.607986,34.451 151.922986,37.47 151.205986,39.68 C151.205986,39.68 148.929986,46.398 154.075986,50.097 C154.075986,50.097 158.847986,53.653 164.221986,49.877 L164.128986,50.466 C164.082409,50.749977 164.232011,51.0299155 164.493986,51.149 C164.577986,51.189 164.669986,51.209 164.762986,51.209 L169.213986,51.209 C169.55814,51.2141761 169.852851,50.9635224 169.902986,50.623 L172.611986,33.448 C172.638967,33.2621157 172.585098,33.073572 172.463986,32.93 C172.342253,32.7859662 172.162559,32.7038202 171.973986,32.706 L171.973986,32.706 Z M165.427986,42.198 C165.071797,44.6751772 162.934454,46.5044962 160.431986,46.474 C159.957778,46.4795969 159.485652,46.4104146 159.032986,46.269 C157.111986,45.653 156.015986,43.807 156.330986,41.807 C156.69083,39.3316868 158.825789,37.5039809 161.326986,37.53 C161.801986,37.525 162.273986,37.594 162.725986,37.736 C164.658986,38.35 165.749986,40.196 165.432986,42.198 L165.427986,42.198 L165.427986,42.198 Z"></path><path fill="#003087" fill-rule="nonzero" d="M124.204986,33.131 L118.837986,42.19 L116.114986,33.198 C116.0272,32.9049326 115.756916,32.7046623 115.450986,32.7059048 L110.608986,32.7059048 C110.439552,32.7027489 110.279321,32.782901 110.180312,32.9204358 C110.081303,33.0579706 110.056138,33.2353538 110.112986,33.395 L114.992986,48.541 L110.579986,55.679 C110.47841,55.8390534 110.472572,56.0418621 110.564775,56.2074929 C110.656977,56.3731236 110.832432,56.4750118 111.021986,56.4730293 L116.238986,56.4730293 C116.542538,56.474558 116.82432,56.3156042 116.979986,56.055 L130.611986,33.503 C130.711981,33.342671 130.716344,33.140509 130.62336,32.9760149 C130.530376,32.8115209 130.354918,32.7110068 130.165986,32.714 L124.950986,32.714 C124.645859,32.7104527 124.361807,32.8692321 124.204986,33.131 L124.204986,33.131 ZLine truncated

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

+126 -55
View File
@@ -1,13 +1,8 @@
(function () {
Artplayer.DEBUG = true;
var userAgent = window.navigator.userAgent;
var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent);
var isIE = /MSIE|Trident/.test(userAgent);
if (isMobile || isIE) {
window.location.href = './mobile.html';
return;
if (Artplayer.utils.isMobile) {
window.location.href = './mobile.html' + location.search;
}
var $codeMirror = document.querySelector('.codeMirrorWrap');
@@ -15,57 +10,86 @@
var $run = document.querySelector('.run');
var $popups = document.querySelector('.popups');
var $console = document.querySelector('.console');
var loaddLib = [];
var $prod = document.querySelector('#prod');
var $ts = document.querySelector('#ts');
var $code = document.querySelector('#code');
var $log = document.querySelector('#log');
var $file = document.querySelector('#file');
var $editor = document.querySelector('#editor');
window.consoleLog($console);
window['consoleLog']($console);
var $typeScript = document.querySelector('#typeScript');
$typeScript.checked = localStorage.getItem('typeScript') === 'true';
$prod.checked = localStorage.getItem('prod') === 'true';
$ts.checked = localStorage.getItem('ts') === 'true';
$code.checked = localStorage.getItem('code') === 'true';
$log.checked = localStorage.getItem('log') === 'true';
if ($code.checked) {
$editor.style.display = 'none';
}
if ($log.checked) {
$console.style.display = 'none';
}
var editor = null;
var loadedLibs = [];
require.config({ paths: { vs: './assets/js/vs' } });
require(['vs/editor/editor.main'], function () {
var libUri = './assets/ts/artplayer.d.ts';
fetch(libUri)
.then((res) => res.text())
.then((libSource) => {
monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
noSemanticValidation: true,
noSyntaxValidation: false,
});
require(['vs/editor/editor.main'], async function () {
monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
noSemanticValidation: true,
noSyntaxValidation: false,
});
monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
target: monaco.languages.typescript.ScriptTarget.ES6,
allowNonTsExtensions: true,
});
monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
target: monaco.languages.typescript.ScriptTarget.ES6,
allowNonTsExtensions: true,
});
monaco.languages.typescript.javascriptDefaults.addExtraLib(libSource, libUri);
monaco.editor.createModel(libSource, 'typescript', monaco.Uri.parse(libUri));
var libUris = [
'./assets/ts/artplayer.d.ts',
'./assets/ts/artplayer-plugin-ads.d.ts',
'./assets/ts/artplayer-plugin-control.d.ts',
'./assets/ts/artplayer-plugin-danmuku.d.ts',
'./assets/ts/artplayer-plugin-dash-quality.d.ts',
'./assets/ts/artplayer-plugin-hls-quality.d.ts',
'./assets/ts/artplayer-plugin-iframe.d.ts',
'./assets/ts/artplayer-plugin-chromecast.d.ts',
'./assets/ts/artplayer-plugin-libass.d.ts',
'./assets/ts/artplayer-plugin-multiple-subtitles.d.ts',
'./assets/ts/artplayer-plugin-vtt-thumbnail.d.ts',
];
for (let index = 0; index < libUris.length; index++) {
var libUri = libUris[index];
var libSource = await (await fetch(libUri)).text();
monaco.languages.typescript.javascriptDefaults.addExtraLib(libSource, libUri);
monaco.editor.createModel(libSource, 'typescript', monaco.Uri.parse(libUri));
}
var disposable = monaco.editor.onDidCreateEditor(function () {
disposable.dispose();
setTimeout(initApp, 1000);
});
var disposable = monaco.editor.onDidCreateEditor(function () {
disposable.dispose();
setTimeout(initApp, 1000);
});
editor = monaco.editor.create($codeMirror, {
theme: 'vs-dark',
automaticLayout: true,
quickSuggestions: {
other: true,
comments: true,
strings: true,
},
model: monaco.editor.createModel(
[
'var art = new Artplayer({',
"\tcontainer: '.artplayer-app',",
"\turl: '/assets/sample/video.mp4',",
'});',
].join('\n'),
$typeScript.checked ? 'typescript' : 'javascript',
),
});
});
editor = monaco.editor.create($codeMirror, {
theme: 'vs-dark',
automaticLayout: true,
quickSuggestions: {
other: true,
comments: true,
strings: true,
},
model: monaco.editor.createModel(
[
'var art = new Artplayer({',
"\tcontainer: '.artplayer-app',",
"\turl: '/assets/sample/video.mp4',",
'});',
].join('\n'),
$ts.checked ? 'typescript' : 'javascript',
),
});
});
function getURLParameters(url) {
@@ -125,7 +149,7 @@
libsDecode
.split(/\r?\n/)
.filter(function (url) {
return !loaddLib.includes(url);
return !loadedLibs.includes(url);
})
.forEach(function (url) {
var ext = getExt(url);
@@ -168,7 +192,8 @@
[...Artplayer.instances].forEach(function (art) {
art.destroy(true);
});
eval(editor.getValue());
const value = editor.getValue();
eval(value);
window.art = Artplayer.instances[0];
}
@@ -180,7 +205,7 @@
loadLib(libs)
.then(function (result) {
loaddLib = loaddLib.concat(result);
loadedLibs = loadedLibs.concat(result);
loadCode(code, example);
})
.catch(function (err) {
@@ -196,6 +221,14 @@
initApp();
}
function readFile(file) {
return new Promise((resolve) => {
const reader = new FileReader();
reader.onload = () => resolve(reader.result);
reader.readAsText(file);
})
}
$run.addEventListener('click', function () {
restart();
});
@@ -206,11 +239,49 @@
}
});
$typeScript.addEventListener('change', function () {
localStorage.setItem('typeScript', $typeScript.checked ? 'true' : 'false');
$prod.addEventListener('change', function () {
localStorage.setItem('prod', $prod.checked ? 'true' : 'false');
window.location.reload();
});
$ts.addEventListener('change', function () {
localStorage.setItem('ts', $ts.checked ? 'true' : 'false');
window.location.reload();
});
$code.addEventListener('change', function () {
localStorage.setItem('code', $code.checked ? 'true' : 'false');
window.location.reload();
});
$log.addEventListener('change', function () {
localStorage.setItem('log', $log.checked ? 'true' : 'false');
window.location.reload();
});
$file.addEventListener('change', async function () {
for (let index = 0; index < $file.files.length; index++) {
const file = $file.files[index];
const name = file.name.toLowerCase().trim()
if (name.endsWith('.css')) {
const text = await readFile(file);
const $style = document.createElement('style');
$style.textContent = text;
document.body.appendChild($style);
$lib.value = `\n[${name}]`;
$lib.value = $lib.value.trim();
}
if (name.endsWith('.js')) {
const text = await readFile(file);
const $script = document.createElement('script');
$script.textContent = text;
document.body.appendChild($script);
$lib.value = `\n[${name}]`;
$lib.value = $lib.value.trim();
}
}
});
window.addEventListener('error', function (err) {
console.error(err);
});
@@ -225,4 +296,4 @@
restart();
}
});
})();
})();
+100
View File
@@ -0,0 +1,100 @@
(function () {
Artplayer.DEBUG = true;
function getURLParameters(url) {
return (url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce(function (a, v) {
return (a[v.slice(0, v.indexOf('='))] = v.slice(v.indexOf('=') + 1)), a;
}, {});
}
function getExt(url) {
if (url.includes('?')) {
return getExt(url.split('?')[0]);
}
if (url.includes('#')) {
return getExt(url.split('#')[0]);
}
return url.trim().toLowerCase().split('.').pop();
}
function loadScript(url) {
return new Promise(function (resolve, reject) {
var define2 = window.define;
window.define = undefined;
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
script.onload = function () {
window.define = define2;
resolve(url);
};
script.onerror = function () {
reject(new Error('Loading script failed:' + url));
};
document.querySelector('head').appendChild(script);
});
}
function loadStyle(url) {
return new Promise(function (resolve, reject) {
var link = document.createElement('link');
link.rel = 'stylesheet';
link.href = url;
link.onload = function () {
resolve(url);
};
link.onerror = function () {
reject(new Error('Loading style failed:' + url));
};
document.querySelector('head').appendChild(link);
});
}
function loadLib(libs) {
var libPromise = [];
var libsDecode = decodeURIComponent(libs || '');
libsDecode
.split(/\r?\n/)
.forEach(function (url) {
var ext = getExt(url);
if (ext === 'js') {
libPromise.push(loadScript(url));
} else if (ext === 'css') {
libPromise.push(loadStyle(url));
}
});
return Promise.all(libPromise);
}
function runExample(name) {
fetch('./assets/example/' + name + '.js')
.then(function (response) {
return response.text();
})
.then(function (text) {
eval(text);
})
}
function loadCode(code, example) {
if (example) {
runExample(example);
} else if (code) {
eval(decodeURIComponent(code).trim());
} else {
runExample('mobile');
}
}
var _getURLParameters = getURLParameters(window.location.href),
code = _getURLParameters.code,
libs = _getURLParameters.libs;
example = _getURLParameters.example;
loadLib(libs)
.then(function () {
loadCode(code, example);
})
})();
-13
View File
@@ -1,13 +0,0 @@
/**
* core-js 3.19.2
* https://github.com/zloirock/core-js
* License: http://rock.mit-license.org
* © 2021 Denis Pushkarev (zloirock.ru)
*/
!function(t){"use strict";var r,e,n;r=[function(t,r,e){e(1),e(84),e(85),e(86),e(87),e(88),e(89),e(90),e(91),e(92),e(93),e(94),e(95),e(96),e(97),e(98),e(113),e(115),e(117),e(119),e(121),e(123),e(124),e(125),e(126),e(128),e(129),e(131),e(135),e(136),e(137),e(138),e(142),e(143),e(145),e(146),e(147),e(150),e(151),e(152),e(153),e(154),e(159),e(161),e(162),e(163),e(164),e(171),e(173),e(176),e(177),e(178),e(179),e(180),e(181),e(185),e(186),e(188),e(189),e(190),e(192),e(193),e(194),e(195),e(196),e(197),e(205),e(207),e(208),e(209),e(211),e(212),e(214),e(215),e(217),e(218),e(219),e(220),e(221),e(222),e(223),e(224),e(225),e(226),e(227),e(231),e(232),e(234),e(236),e(237),e(238),e(239),e(240),e(242),e(244),e(245),e(246),e(248),e(249),e(251),e(252),e(253),e(254),e(256),e(257),e(258),e(259),e(260),e(261),e(262),e(263),e(265),e(266),e(267),e(268),e(269),e(270),e(271),e(272),e(273),e(274),e(276),e(277),e(278),e(279),e(291),e(292),e(293),e(294),e(295),e(296),e(297),e(298),e(300),e(301),e(302),e(303),e(304),e(305),e(306),e(307),e(308),e(309),e(315),e(316),e(318),e(319),e(320),e(321),e(322),e(323),e(324),e(326),e(329),e(330),e(331),e(332),e(336),e(337),e(339),e(340),e(341),e(342),e(344),e(345),e(346),e(347),e(348),e(349),e(351),e(352),e(353),e(356),e(357),e(358),e(359),e(360),e(361),e(362),e(363),e(364),e(365),e(366),e(367),e(368),e(374),e(375),e(376),e(377),e(378),e(379),e(380),e(381),e(382),e(383),e(384),e(385),e(386),e(390),e(391),e(392),e(393),e(394),e(395),e(396),e(397),e(398),e(399),e(400),e(401),e(402),e(403),e(404),e(405),e(406),e(407),e(408),e(409),e(410),e(411),e(412),e(414),e(415),e(416),e(423),e(424),e(425),e(426),e(428),e(429),e(431),e(432),e(433),e(434),e(436),e(437),e(439),e(440),e(441),e(442),e(443),e(444),e(445),e(446),e(447),e(448),e(449),e(450),e(451),e(453),e(455),e(456),e(457),e(458),e(460),e(461),e(462),e(463),e(464),e(465),e(466),e(467),e(468),e(469),e(470),e(471),e(472),e(474),e(476),e(478),e(479),e(480),e(481),e(483),e(484),e(486),e(487),e(488),e(489),e(490),e(491),e(493),e(494),e(495),e(496),e(498),e(499),e(500),e(501),e(502),e(504),e(505),e(506),e(507),e(508),e(509),e(510),e(511),e(512),e(513),e(514),e(515),e(516),e(518),e(519),e(520),e(521),e(522),e(523),e(524),e(526),e(527),e(528),e(529),e(530),e(531),e(532),e(533),e(534),e(536),e(537),e(538),e(540),e(541),e(542),e(543),e(544),e(545),e(546),e(547),e(548),e(549),e(550),e(551),e(552),e(553),e(554),e(555),e(556),e(557),e(558),e(559),e(560),e(561),e(562),e(563),e(564),e(565),e(566),e(567),e(568),e(569),e(570),e(571),e(572),e(573),e(574),e(575),e(576),e(577),e(578),e(579),e(580),e(581),e(582),e(585),e(586),e(587),e(588),e(589),e(593),t.exports=e(592)},function(r,e,n){var o,i=n(2),a=n(3),u=n(20),f=n(62),c=n(7),s=n(12),l=n(32),h=n(5),p=n(23),g=n(6),v=n(35),d=n(63),y=n(18),m=n(17),x=n(21),b=n(19),w=n(42),S=n(36),A=n(10),I=n(15),E=n(64),R=n(9),T=n(67),O=n(69),M=n(52),P=n(71),j=n(60),N=n(4),k=n(41),_=n(8),U=n(74),L=n(43),D=n(31),C=n(47),B=n(48),z=n(37),W=n(30),q=n(75),G=n(76),V=n(78),Y=n(45),K=n(79).forEach,H=C("hidden"),$="Symbol",J=W("toPrimitive"),X=Y.set,Q=Y.getterFor($),Z=Object.prototype,tt=a.Symbol,rt=tt&&tt.prototype,et=a.TypeError,nt=a.QObject,ot=u("JSON","stringify"),it=N.f,ut=k.f,ft=P.f,ct=_.f,st=s([].push),lt=D("symbols"),ht=D("op-symbols"),pt=D("string-to-symbol-registry"),gt=D("symbol-to-string-registry"),vt=D("wks"),dt=!nt||!nt.prototype||!nt.prototype.findChild,yt=h&&g((function(){return 7!=T(ut({},"a",{get:function(){return ut(this,"a",{value:7}).a}})).a}))?function(t,r,e){var n=it(Z,r);n&&delete Z[r],ut(t,r,e),n&&t!==Z&&ut(Z,r,n)}:ut,wrap=function(t,r){var e=lt[t]=T(rt);return X(e,{type:$,tag:t,description:r}),h||(e.description=r),e},mt=function defineProperty(t,r,e){t===Z&&mt(ht,r,e),w(t);var n=I(r);return w(e),v(lt,n)?(e.enumerable?(v(t,H)&&t[H][n]&&(t[H][n]=!1),e=T(e,{enumerable:R(0,!1)})):(v(t,H)||ut(t,H,R(1,{})),t[H][n]=!0),yt(t,n,e)):ut(t,n,e)},xt=function defineProperties(t,r){var e,n;return w(t),e=A(r),n=O(e).concat(At(e)),K(n,(function(r){h&&!c(bt,e,r)||mt(t,r,e[r])})),t},bt=function propertyIsEnumerable(t){var r=I(t),e=c(ct,this,r);return!(this===Z&&v(lt,r)&&!v(ht,r))&&(!(e||!v(this,r)||!v(lt,r)||v(this,H)&&this[H][r])||e)},wt=function getOwnPropertyDescriptor(t,r){var e,n=A(t),o=I(r);if(n!==Z||!v(lt,o)||v(ht,o))return!(e=it(n,o))||!v(lt,o)||v(n,H)&&n[H][o]||(e.enumerable=!0),e},St=function getOwnPropertyNames(t){var r=ft(A(t)),e=[];return K(r,(function(t){v(lt,t)||v(B,t)||st(e,t)})),e},At=function getOwnPropertySymbols(t){var r=t===Z,e=ft(r?ht:A(t)),n=[];return K(e,(function(t){!v(lt,t)||r&&!v(Z,t)||st(n,lt[t])})),n};p||(tt=function Symbol(){var r,e,n;if(x(rt,this))throw et("Symbol is not a constructor");return r=arguments.length&&arguments[0]!==t?E(arguments[0]):t,e=z(r),n=function(t){this===Z&&c(n,ht,t),v(this,H)&&v(this[H],e)&&(this[H][e]=!1),yt(this,e,R(1,t))},h&&dt&&yt(Z,e,{configurable:!0,set:n}),wrap(e,r)},L(rt=tt.prototype,"toString",(function toString(){return Q(this).tag})),L(tt,"withoutSetter",(function(t){return wrapLine truncated
})}),(function(){var r=l(this),e=r.target,n=r.kind,o=r.index++;return!e||o>=e.length?(r.target=t,{value:t,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:e[o],done:!1}:{value:[o,e[o]],done:!1}}),"values"),a.Arguments=a.Array,i("keys"),i("values"),i("entries")},function(t,r,e){var n=e(2),o=e(7),i=e(32),a=e(49),u=e(18),f=e(140),c=e(99),s=e(101),l=e(78),h=e(40),p=e(43),g=e(30),v=e(107),d=e(141),y=a.PROPER,m=a.CONFIGURABLE,x=d.IteratorPrototype,b=d.BUGGY_SAFARI_ITERATORS,w=g("iterator"),S="keys",A="values",I="entries",returnThis=function(){return this};t.exports=function(t,r,e,a,g,d,E){var R,T,O,M,P,j,N,k,_,U;if(f(e,r,a),R=function(t){if(t===g&&j)return j;if(!b&&t in M)return M[t];switch(t){case S:return function keys(){return new e(this,t)};case A:return function values(){return new e(this,t)};case I:return function entries(){return new e(this,t)}}return function(){return new e(this)}},T=r+" Iterator",O=!1,P=(M=t.prototype)[w]||M["@@iterator"]||g&&M[g],j=!b&&P||R(g),(N="Array"==r&&M.entries||P)&&(k=c(N.call(new t)))!==Object.prototype&&k.next&&(i||c(k)===x||(s?s(k,x):u(k[w])||p(k,w,returnThis)),l(k,T,!0,!0),i&&(v[T]=returnThis)),y&&g==A&&P&&P.name!==A&&(!i&&m?h(M,"name",A):(O=!0,j=function values(){return o(P,this)})),g)if(_={values:R(A),keys:d?j:R(S),entries:R(I)},E)for(U in _)(b||O||!(U in M))&&p(M,U,_[U]);else n({target:r,proto:!0,forced:b||O},_);return i&&!E||M[w]===j||p(M,w,j,{name:g}),v[r]=j,_}},function(t,r,e){var n=e(141).IteratorPrototype,o=e(67),i=e(9),a=e(78),u=e(107),returnThis=function(){return this};t.exports=function(t,r,e){var f=r+" Iterator";return t.prototype=o(n,{next:i(1,e)}),a(t,f,!1,!0),u[f]=returnThis,t}},function(r,e,n){var o,i,a,u=n(6),f=n(18),c=n(67),s=n(99),l=n(43),h=n(30),p=n(32),g=h("iterator"),v=!1;[].keys&&("next"in(a=[].keys())?(i=s(s(a)))!==Object.prototype&&(o=i):v=!0),o==t||u((function(){var t={};return o[g].call(t)!==t}))?o={}:p&&(o=c(o)),f(o[g])||l(o,g,(function(){return this})),r.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:v}},function(r,e,n){var o=n(2),i=n(12),a=n(11),u=n(10),f=n(120),c=i([].join),s=a!=Object,l=f("join",",");o({target:"Array",proto:!0,forced:s||!l},{join:function join(r){return c(u(this),r===t?",":r)}})},function(t,r,e){var n=e(2),o=e(144);n({target:"Array",proto:!0,forced:o!==[].lastIndexOf},{lastIndexOf:o})},function(t,r,e){var n=e(62),o=e(10),i=e(56),a=e(57),u=e(120),f=Math.min,c=[].lastIndexOf,s=!!c&&1/[1].lastIndexOf(1,-0)<0,l=u("lastIndexOf");t.exports=s||!l?function lastIndexOf(t){var r,e,u;if(s)return n(c,this,arguments)||0;for(r=o(this),u=(e=a(r))-1,arguments.length>1&&(u=f(u,i(arguments[1]))),u<0&&(u=e+u);u>=0;u--)if(u in r&&r[u]===t)return u||0;return-1}:c},function(r,e,n){var o=n(2),i=n(79).map;o({target:"Array",proto:!0,forced:!n(116)("map")},{map:function map(r){return i(this,r,arguments.length>1?arguments[1]:t)}})},function(t,r,e){var n=e(2),o=e(3),i=e(6),a=e(83),u=e(73),f=o.Array;n({target:"Array",stat:!0,forced:i((function(){function F(){}return!(f.of.call(F)instanceof F)}))},{of:function of(){for(var t=0,r=arguments.length,e=new(a(this)?this:f)(r);r>t;)u(e,t,arguments[t++]);return e.length=r,e}})},function(r,e,n){var o=n(2),i=n(148).left,a=n(120),u=n(24),f=n(149);o({target:"Array",proto:!0,forced:!a("reduce")||!f&&u>79&&u<83},{reduce:function reduce(r){var e=arguments.length;return i(this,r,e,e>1?arguments[1]:t)}})},function(t,r,e){var n=e(3),o=e(27),i=e(36),a=e(11),u=e(57),f=n.TypeError,createMethod=function(t){return function(r,e,n,c){var s,l,h,p,g;if(o(e),s=i(r),l=a(s),h=u(s),p=t?h-1:0,g=t?-1:1,n<2)for(;;){if(p in l){c=l[p],p+=g;break}if(p+=g,t?p<0:h<=p)throw f("Reduce of empty array with no initial value")}for(;t?p>=0:h>p;p+=g)p in l&&(c=e(c,l[p],p,s));return c}};t.exports={left:createMethod(!1),right:createMethod(!0)}},function(t,r,e){var n=e(13),o=e(3);t.exports="process"==n(o.process)},function(r,e,n){var o=n(2),i=n(148).right,a=n(120),u=n(24),f=n(149);o({target:"Array",proto:!0,forced:!a("reduceRight")||!f&&u>79&&u<83},{reduceRight:function reduceRight(r){return i(this,r,arguments.length,arguments.length>1?arguments[1]:t)}})},function(t,r,e){var n=e(2),o=e(12),i=e(63),a=o([].reverse),u=[1,2];n({target:"Array",proto:!0,forced:String(u)===String(u.reverse())},{reverse:function reverse(){return i(this)&&(this.length=this.length),a(this)}})},function(r,e,n){var o=n(2),i=n(3),a=n(63),u=n(83),f=n(17),c=n(55),s=n(57),l=n(10),h=n(73),p=n(30),g=n(116),v=n(74),d=g("slice"),y=p("species"),m=i.Array,x=Math.max;o({target:"Array",proto:!0,forced:!d},{slice:function slice(r,e){var n,o,i,p=l(this),g=s(p),d=c(r,g),b=c(e===t?g:e,g);if(a(p)&&((u(n=p.constructor)&&(n===m||a(n.prototype))||f(n)&&null===(n=n[y]))&&(n=t),n===m||n===t))return v(p,d,b);for(o=new(n===t?m:n)(x(b-d,0)),i=0;d<b;d++,i++)d in p&&h(o,i,p[d]);return o.length=i,o}})},function(r,e,n){var o=n(2),i=n(79).some;o({target:"Array",proto:!0,forced:!n(120)("some")},{some:function some(r){return i(this,r,arguments.length>1?arguments[1]:t)}})},function(r,e,n){var o=n(2),i=Line truncated
})},function(t,r,e){var n=e(3),o=e(6),i=e(12),a=e(64),u=e(229).trim,f=e(230),c=n.parseInt,s=n.Symbol,l=s&&s.iterator,h=/^[+-]?0x/i,p=i(h.exec),g=8!==c(f+"08")||22!==c(f+"0x16")||l&&!o((function(){c(Object(l))}));t.exports=g?function parseInt(t,r){var e=u(a(t));return c(e,r>>>0||(p(h,e)?16:10))}:c},function(t,r,e){var n=e(2),o=e(3),i=e(12),a=e(56),u=e(228),f=e(184),c=e(6),s=o.RangeError,l=o.String,h=Math.floor,p=i(f),g=i("".slice),v=i(1..toFixed),pow=function(t,r,e){return 0===r?e:r%2==1?pow(t,r-1,e*t):pow(t*t,r/2,e)},multiply=function(t,r,e){for(var n=-1,o=e;++n<6;)t[n]=(o+=r*t[n])%1e7,o=h(o/1e7)},divide=function(t,r){for(var e=6,n=0;--e>=0;)t[e]=h((n+=t[e])/r),n=n%r*1e7},dataToString=function(t){for(var r,e=6,n="";--e>=0;)""===n&&0!==e&&0===t[e]||(r=l(t[e]),n=""===n?r:n+p("0",7-r.length)+r);return n};n({target:"Number",proto:!0,forced:c((function(){return"0.000"!==v(8e-5,3)||"1"!==v(.9,0)||"1.25"!==v(1.255,2)||"1000000000000000128"!==v(0xde0b6b3a7640080,0)}))||!c((function(){v({})}))},{toFixed:function toFixed(t){var r,e,n,o,i=u(this),f=a(t),c=[0,0,0,0,0,0],h="",v="0";if(f<0||f>20)throw s("Incorrect fraction digits");if(i!=i)return"NaN";if(i<=-1e21||i>=1e21)return l(i);if(i<0&&(h="-",i=-i),i>1e-21)if(e=(r=function(t){for(var r=0,e=t;e>=4096;)r+=12,e/=4096;for(;e>=2;)r+=1,e/=2;return r}(i*pow(2,69,1))-69)<0?i*pow(2,-r,1):i/pow(2,r,1),e*=4503599627370496,(r=52-r)>0){for(multiply(c,0,e),n=f;n>=7;)multiply(c,1e7,0),n-=7;for(multiply(c,pow(10,n,1),0),n=r-1;n>=23;)divide(c,1<<23),n-=23;divide(c,1<<n),multiply(c,1,1),divide(c,2),v=dataToString(c)}else multiply(c,0,e),multiply(c,1<<-r,0),v=dataToString(c)+p("0",f);return f>0?h+((o=v.length)<=f?"0."+p("0",f-o)+v:g(v,0,o-f)+"."+g(v,o-f)):h+v}})},function(r,e,n){var o=n(2),i=n(12),a=n(6),u=n(228),f=i(1..toPrecision);o({target:"Number",proto:!0,forced:a((function(){return"1"!==f(1,t)}))||!a((function(){f({})}))},{toPrecision:function toPrecision(r){return r===t?f(u(this)):f(u(this),r)}})},function(t,r,e){var n=e(2),o=e(247);n({target:"Object",stat:!0,forced:Object.assign!==o},{assign:o})},function(t,r,e){var n=e(5),o=e(12),i=e(7),a=e(6),u=e(69),f=e(60),c=e(8),s=e(36),l=e(11),h=Object.assign,p=Object.defineProperty,g=o([].concat);t.exports=!h||a((function(){var t,r,e,o;return!(!n||1===h({b:1},h(p({},"a",{enumerable:!0,get:function(){p(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)||(r={},o="abcdefghijklmnopqrst",(t={})[e=Symbol()]=7,o.split("").forEach((function(t){r[t]=t})),7!=h({},t)[e]||u(h({},r)).join("")!=o)}))?function assign(t,r){for(var e,o,a,h,p,v=s(t),d=arguments.length,y=1,m=f.f,x=c.f;d>y;)for(e=l(arguments[y++]),a=(o=m?g(u(e),m(e)):u(e)).length,h=0;a>h;)p=o[h++],n&&!i(x,e,p)||(v[p]=e[p]);return v}:h},function(t,r,e){e(2)({target:"Object",stat:!0,sham:!e(5)},{create:e(67)})},function(t,r,e){var n=e(2),o=e(5),i=e(250),a=e(27),u=e(36),f=e(41);o&&n({target:"Object",proto:!0,forced:i},{__defineGetter__:function __defineGetter__(t,r){f.f(u(this),t,{get:a(r),enumerable:!0,configurable:!0})}})},function(t,r,e){var n=e(32),o=e(3),i=e(6),a=e(158);t.exports=n||!i((function(){if(!(a&&a<535)){var t=Math.random();__defineSetter__.call(null,t,(function(){})),delete o[t]}}))},function(t,r,e){var n=e(2),o=e(5);n({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperties:e(68)})},function(t,r,e){var n=e(2),o=e(5);n({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:e(41).f})},function(t,r,e){var n=e(2),o=e(5),i=e(250),a=e(27),u=e(36),f=e(41);o&&n({target:"Object",proto:!0,forced:i},{__defineSetter__:function __defineSetter__(t,r){f.f(u(this),t,{set:a(r),enumerable:!0,configurable:!0})}})},function(t,r,e){var n=e(2),o=e(255).entries;n({target:"Object",stat:!0},{entries:function entries(t){return o(t)}})},function(t,r,e){var n=e(5),o=e(12),i=e(69),a=e(10),u=o(e(8).f),f=o([].push),createMethod=function(t){return function(r){for(var e,o=a(r),c=i(o),s=c.length,l=0,h=[];s>l;)e=c[l++],n&&!u(o,e)||f(h,t?[e,o[e]]:o[e]);return h}};t.exports={entries:createMethod(!0),values:createMethod(!1)}},function(t,r,e){var n=e(2),o=e(202),i=e(6),a=e(17),u=e(199).onFreeze,f=Object.freeze;n({target:"Object",stat:!0,forced:i((function(){f(1)})),sham:!o},{freeze:function freeze(t){return f&&a(t)?f(u(t)):t}})},function(t,r,e){var n=e(2),o=e(105),i=e(73);n({target:"Object",stat:!0},{fromEntries:function fromEntries(t){var r={};return o(t,(function(t,e){i(r,t,e)}),{AS_ENTRIES:!0}),r}})},function(t,r,e){var n=e(2),o=e(6),i=e(10),a=e(4).f,u=e(5),f=o((function(){a(1)}));n({target:"Object",stat:!0,forced:!u||f,sham:!u},{getOwnPropertyDescriptor:function getOwnPropertyDescriptor(t,r){return a(i(t),r)}})},function(r,e,n){var o=n(2),i=n(5),a=n(51),u=n(10),f=n(4),c=n(73);o({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(r){for(var e,n,o=u(r),i=f.f,s=a(o),l={},h=0;s.length>h;)(n=i(o,e=s[h++]))!==t&&c(l,e,n);return l}})},function(t,r,e){var n=e(2),o=e(6),i=e(71).f;n({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},Line truncated
;if("string"==typeof i&&-1===I(i,a)&&-1===I(i,"$<")&&(u=n(e,C,B,i)).done)return u.value;for((f=s(i))||(i=p(i)),(g=C.global)&&(d=C.unicode,C.lastIndex=0),x=[];null!==(R=m(C,B))&&(A(x,R),g);)""===p(R[0])&&(C.lastIndex=v(B,h(C.lastIndex),d));for(T="",O=0,M=0;M<x.length;M++){for(P=p((R=x[M])[0]),j=b(w(l(R.index),B.length),0),N=[],k=1;k<R.length;k++)A(N,(D=R[k])===t?D:String(D));_=R.groups,f?(U=S([P],N,j,B),_!==t&&A(U,_),L=p(o(i,t,U))):L=y(P,B,j,N,_,i),j>=O&&(T+=E(B,O,j)+L,O=j+P.length)}return T+E(B,O)}]}),!!f((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}))||!R||T)},function(r,e,n){var o=n(12),i=n(36),a=Math.floor,u=o("".charAt),f=o("".replace),c=o("".slice),s=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,l=/\$([$&'`]|\d{1,2})/g;r.exports=function(r,e,n,o,h,p){var g=n+r.length,v=o.length,d=l;return h!==t&&(h=i(h),d=s),f(p,d,(function(i,f){var s,l,p;switch(u(f,0)){case"$":return"$";case"&":return r;case"`":return c(e,0,n);case"'":return c(e,g);case"<":s=h[c(f,1,-1)];break;default:if(0==(l=+f))return i;if(l>v)return 0===(p=a(l/10))?i:p<=v?o[p-1]===t?u(f,1):o[p-1]+u(f,1):i;s=o[l-1]}return s===t?"":s}))}},function(r,e,n){var o=n(2),i=n(3),a=n(7),u=n(12),f=n(14),c=n(18),s=n(310),l=n(64),h=n(26),p=n(311),g=n(343),v=n(30),d=n(32),y=v("replace"),m=RegExp.prototype,x=i.TypeError,b=u(p),w=u("".indexOf),S=u("".replace),A=u("".slice),I=Math.max,stringIndexOf=function(t,r,e){return e>t.length?-1:""===r?e:w(t,r,e)};o({target:"String",proto:!0},{replaceAll:function replaceAll(r,e){var n,o,i,u,p,v,E,R,T,O=f(this),M=0,P=0,j="";if(null!=r){if((n=s(r))&&(o=l(f("flags"in m?r.flags:b(r))),!~w(o,"g")))throw x("`.replaceAll` does not allow non-global regexes");if(i=h(r,y))return a(i,r,O,e);if(d&&n)return S(l(O),r,e)}for(u=l(O),p=l(r),(v=c(e))||(e=l(e)),R=I(1,E=p.length),M=stringIndexOf(u,p,0);-1!==M;)T=v?l(e(p,M,u)):g(p,u,M,[],t,e),j+=A(u,P,M)+T,P=M+E,M=stringIndexOf(u,p,M+R);return P<u.length&&(j+=A(u,P)),j}})},function(r,e,n){var o=n(7),i=n(333),a=n(42),u=n(14),f=n(264),c=n(64),s=n(26),l=n(335);i("search",(function(r,e,n){return[function search(e){var n=u(this),i=e==t?t:s(e,r);return i?o(i,e,n):new RegExp(e)[r](c(n))},function(t){var r,o,i=a(this),u=c(t),s=n(e,i,u);return s.done?s.value:(f(r=i.lastIndex,0)||(i.lastIndex=0),o=l(i,u),f(i.lastIndex,r)||(i.lastIndex=r),null===o?-1:o.index)}]}))},function(r,e,n){var o=n(62),i=n(7),a=n(12),u=n(333),f=n(310),c=n(42),s=n(14),l=n(174),h=n(334),p=n(58),g=n(64),v=n(26),d=n(72),y=n(335),m=n(317),x=n(312),b=n(6),w=x.UNSUPPORTED_Y,S=4294967295,A=Math.min,I=[].push,E=a(/./.exec),R=a(I),T=a("".slice),O=!b((function(){var t,r=/(?:)/,e=r.exec;return r.exec=function(){return e.apply(this,arguments)},2!==(t="ab".split(r)).length||"a"!==t[0]||"b"!==t[1]}));u("split",(function(r,e,n){var a;return a="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(r,n){var a,u,c,l,h,p,v=g(s(this)),y=n===t?S:n>>>0;if(0===y)return[];if(r===t)return[v];if(!f(r))return i(e,v,r,y);for(a=[],u=0,c=new RegExp(r.source,(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(r.sticky?"y":"")+"g");(l=i(m,c,v))&&!((h=c.lastIndex)>u&&(R(a,T(v,u,l.index)),l.length>1&&l.index<v.length&&o(I,a,d(l,1)),p=l[0].length,u=h,a.length>=y));)c.lastIndex===l.index&&c.lastIndex++;return u===v.length?!p&&E(c,"")||R(a,""):R(a,T(v,u)),a.length>y?d(a,0,y):a}:"0".split(t,0).length?function(r,n){return r===t&&0===n?[]:i(e,this,r,n)}:e,[function split(e,n){var o=s(this),u=e==t?t:v(e,r);return u?i(u,e,o,n):i(a,g(o),e,n)},function(r,o){var i,u,f,s,v,d,m,x,b,I,E=c(this),O=g(r),M=n(a,E,O,o,a!==e);if(M.done)return M.value;if(i=l(E,RegExp),u=E.unicode,f=new i(w?"^(?:"+E.source+")":E,(E.ignoreCase?"i":"")+(E.multiline?"m":"")+(E.unicode?"u":"")+(w?"g":"y")),0===(s=o===t?S:o>>>0))return[];if(0===O.length)return null===y(f,O)?[O]:[];for(v=0,d=0,m=[];d<O.length;)if(f.lastIndex=w?0:d,null===(x=y(f,w?T(O,d):O))||(b=A(p(f.lastIndex+(w?d:0)),O.length))===v)d=h(O,d,u);else{if(R(m,T(O,v,d)),m.length===s)return m;for(I=1;I<=x.length-1;I++)if(R(m,x[I]),m.length===s)return m;d=v=b}return R(m,T(O,v)),m}]}),!O,w)},function(r,e,n){var o,i=n(2),a=n(12),u=n(4).f,f=n(58),c=n(64),s=n(327),l=n(14),h=n(328),p=n(32),g=a("".startsWith),v=a("".slice),d=Math.min,y=h("startsWith");i({target:"String",proto:!0,forced:!(!p&&!y&&(o=u(String.prototype,"startsWith"),o&&!o.writable)||y)},{startsWith:function startsWith(r){var e,n,o=c(l(this));return s(r),e=f(d(arguments.length>1?arguments[1]:t,o.length)),n=c(r),g?g(o,n,e):v(o,e,e+n.length)===n}})},function(r,e,n){var o=n(2),i=n(12),a=n(14),u=n(56),f=n(64),c=i("".slice),s=Math.max,l=Math.min;o({target:"String",proto:!0,forced:!"".substr||"b"!=="ab".substr(-1)},{substr:function substr(r,e){var n,o,i=f(a(this)),h=i.length,p=u(r);return p===Infinity&&(p=0),p<0&&(p=s(h+p,0)),(n=e===t?h:u(e))<=0||n===Infinity||p>=(o=l(p+n,h))?"":c(i,p,o)}})},function(t,r,eLine truncated
from:function from(r){var e,n=u(r),o=g(n,y);return o&&(e=l(n,o),f(c,e))?e:e===t&&(o=p(n))?new d(h(n,o)):new m({iterator:e!==t?e:n})}})},function(r,e,n){var o=n(2),i=n(62),a=n(27),u=n(42),f=n(438)((function(r,e){var n=this,o=n.mapper;return r.resolve(u(i(n.next,n.iterator,e))).then((function(e){return u(e).done?(n.done=!0,{done:!0,value:t}):r.resolve(o(e.value)).then((function(t){return{done:!1,value:t}}))}))}));o({target:"AsyncIterator",proto:!0,real:!0},{map:function map(t){return new f({iterator:u(this),mapper:a(t)})}})},function(r,e,n){var o=n(2),i=n(3),a=n(7),u=n(27),f=n(42),c=n(20)("Promise"),s=i.TypeError;o({target:"AsyncIterator",proto:!0,real:!0},{reduce:function reduce(r){var e=f(this),n=u(e.next),o=arguments.length<2,i=o?t:arguments[1];return u(r),new c((function(t,u){var loop=function(){try{c.resolve(f(a(n,e))).then((function(e){try{if(f(e).done)o?u(s("Reduce of empty iterator with no initial value")):t(i);else{var n=e.value;o?(o=!1,i=n,loop()):c.resolve(r(i,n)).then((function(t){i=t,loop()}),u)}}catch(a){u(a)}}),u)}catch(l){u(l)}};loop()}))}})},function(t,r,e){var n=e(2),o=e(422).some;n({target:"AsyncIterator",proto:!0,real:!0},{some:function some(t){return o(this,t)}})},function(r,e,n){var o=n(2),i=n(62),a=n(7),u=n(42),f=n(372),c=n(438)((function(r,e){var n,o,u=this.iterator;return this.remaining--?i(this.next,u,e):(o={done:!0,value:t},this.done=!0,(n=u["return"])!==t?r.resolve(a(n,u)).then((function(){return o})):o)}));o({target:"AsyncIterator",proto:!0,real:!0},{take:function take(t){return new c({iterator:u(this),remaining:f(t)})}})},function(r,e,n){var o=n(2),i=n(422).toArray;o({target:"AsyncIterator",proto:!0,real:!0},{toArray:function toArray(){return i(this,t,[])}})},function(t,r,e){var n=e(2),o=e(452);"function"==typeof BigInt&&n({target:"BigInt",stat:!0},{range:function range(t,r,e){return new o(t,r,e,"bigint",BigInt(0),BigInt(1))}})},function(r,e,n){var o=n(3),i=n(45),a=n(140),u=n(17),f=n(68),c=n(5),s="Incorrect Number.range arguments",l="NumericRangeIterator",h=i.set,p=i.getterFor(l),g=o.RangeError,v=o.TypeError,d=a((function NumericRangeIterator(r,e,n,o,i,a){var f,p,d;if(typeof r!=o||e!==Infinity&&e!==-Infinity&&typeof e!=o)throw new v(s);if(r===Infinity||r===-Infinity)throw new g(s);if(f=e>r,p=!1,n===t)d=t;else if(u(n))d=n.step,p=!!n.inclusive;else{if(typeof n!=o)throw new v(s);d=n}if(null==d&&(d=f?a:-a),typeof d!=o)throw new v(s);if(d===Infinity||d===-Infinity||d===i&&r!==e)throw new g(s);h(this,{type:l,start:r,end:e,step:d,inclusiveEnd:p,hitsEnd:r!=r||e!=e||d!=d||e>r!=d>i,currentCount:i,zero:i}),c||(this.start=r,this.end=e,this.step=d,this.inclusive=p)}),l,(function next(){var r,e,n,o,i=p(this);return i.hitsEnd?{value:t,done:!0}:(e=i.end,(n=(r=i.start)+i.step*i.currentCount++)===e&&(i.hitsEnd=!0),o=i.inclusiveEnd,(e>r?o?n>e:n>=e:o?e>n:e>=n)?{value:t,done:i.hitsEnd=!0}:{value:n,done:!1})})),getter=function(t){return{get:t,set:function(){},configurable:!0,enumerable:!1}};c&&f(d.prototype,{start:getter((function(){return p(this).start})),end:getter((function(){return p(this).end})),inclusive:getter((function(){return p(this).inclusiveEnd})),step:getter((function(){return p(this).step}))}),r.exports=d},function(t,r,e){var n=e(2),o=e(3),i=e(62),a=e(454),u=e(20),f=e(67),c=o.Object,initializer=function(){var t=u("Object","freeze");return t?t(f(null)):f(null)};n({global:!0},{compositeKey:function compositeKey(){return i(a,c,arguments).get("object",initializer)}})},function(t,r,e){var n,o,i,a,u,f,c,s,l,h;e(197),e(412),n=e(3),o=e(20),i=e(67),a=e(17),u=n.Object,f=n.TypeError,c=o("Map"),s=o("WeakMap"),(l=function(){this.object=null,this.symbol=null,this.primitives=null,this.objectsByIndex=i(null)}).prototype.get=function(t,r){return this[t]||(this[t]=r())},l.prototype.next=function(t,r,e){var n=e?this.objectsByIndex[t]||(this.objectsByIndex[t]=new s):this.primitives||(this.primitives=new c),o=n.get(r);return o||n.set(r,o=new l),o},h=new l,t.exports=function(){var t,r,e=h,n=arguments.length;for(t=0;t<n;t++)a(r=arguments[t])&&(e=e.next(t,r,!0));if(this===u&&e===h)throw f("Composite keys must contain a non-primitive component");for(t=0;t<n;t++)a(r=arguments[t])||(e=e.next(t,r,!1));return e}},function(t,r,e){var n=e(2),o=e(454),i=e(20),a=e(62);n({global:!0},{compositeSymbol:function compositeSymbol(){return 1==arguments.length&&"string"==typeof arguments[0]?i("Symbol")["for"](arguments[0]):a(o,null,arguments).get("symbol",i("Symbol"))}})},function(t,r,e){e(194)},function(t,r,e){var n=e(2),o=e(3),i=e(168),a=e(18),u=e(40),f=e(6),c=e(35),s=e(30),l=e(141).IteratorPrototype,h=e(32),p=s("toStringTag"),g=o.Iterator,v=h||!a(g)||g.prototype!==l||!f((function(){g({})})),d=function Iterator(){i(this,l)};c(l,p)||u(l,p,"Iterator"),!v&&c(l,"constructor")&&l.constructor!==Object||u(l,"constructor",d),d.prototype=l,n({global:!0,forced:v},{Iterator:d})},function(t,r,e){var n=e(2),o=e(62),i=e(42),a=e(459)((function(t){var r=i(o(this.next,this.iterator,t));if(!(this.done=!!r.done))return[this.index++,r.value]}));Line truncated
var o=n(172),i=n(430),a=n(389),u=o.aTypedArray;(0,o.exportTypedArrayMethod)("groupBy",(function groupBy(r){var e=arguments.length>1?arguments[1]:t;return i(u(this),r,e,a)}))},function(t,r,e){var n=e(12),o=e(172),i=e(435),a=e(387),u=o.aTypedArray,f=o.exportTypedArrayMethod,c=n(i);f("uniqueBy",(function uniqueBy(t){return a(this,c(u(this),t))}))},function(t,r,e){e(2)({target:"WeakMap",proto:!0,real:!0,forced:e(32)},{deleteAll:e(473)})},function(t,r,e){e(2)({target:"WeakMap",stat:!0},{from:e(482)})},function(t,r,e){e(2)({target:"WeakMap",stat:!0},{of:e(492)})},function(t,r,e){e(2)({target:"WeakMap",proto:!0,real:!0,forced:e(32)},{emplace:e(475)})},function(t,r,e){e(2)({target:"WeakMap",proto:!0,real:!0,forced:e(32)},{upsert:e(497)})},function(t,r,e){e(2)({target:"WeakSet",proto:!0,real:!0,forced:e(32)},{addAll:e(535)})},function(t,r,e){e(2)({target:"WeakSet",proto:!0,real:!0,forced:e(32)},{deleteAll:e(473)})},function(t,r,e){e(2)({target:"WeakSet",stat:!0},{from:e(482)})},function(t,r,e){e(2)({target:"WeakSet",stat:!0},{of:e(492)})},function(t,r,e){var n,o=e(3),i=e(583),a=e(584),u=e(130),f=e(40),handlePrototype=function(t){if(t&&t.forEach!==u)try{f(t,"forEach",u)}catch(r){t.forEach=u}};for(n in i)i[n]&&handlePrototype(o[n]&&o[n].prototype);handlePrototype(a)},function(t,r){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(r,e,n){var o=n(39)("span").classList,i=o&&o.constructor&&o.constructor.prototype;r.exports=i===Object.prototype?t:i},function(t,r,e){var n,o=e(3),i=e(583),a=e(584),u=e(138),f=e(40),c=e(30),s=c("iterator"),l=c("toStringTag"),h=u.values,handlePrototype=function(t,r){if(t){if(t[s]!==h)try{f(t,s,h)}catch(n){t[s]=h}if(t[l]||f(t,l,r),i[r])for(var e in u)if(t[e]!==u[e])try{f(t,e,u[e])}catch(n){t[e]=u[e]}}};for(n in i)handlePrototype(o[n]&&o[n].prototype,n);handlePrototype(a,"DOMTokenList")},function(t,r,e){var n=e(2),o=e(3),i=e(281);n({global:!0,bind:!0,enumerable:!0,forced:!o.setImmediate||!o.clearImmediate},{setImmediate:i.set,clearImmediate:i.clear})},function(t,r,e){var n=e(2),o=e(3),i=e(283),a=e(149),u=o.process;n({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function queueMicrotask(t){var r=a&&u.domain;i(r?r.bind(t):t)}})},function(r,e,n){var o=n(2),i=n(3),a=n(62),u=n(18),f=n(25),c=n(74),s=/MSIE .\./.test(f),l=i.Function,wrap=function(r){return function(e,n){var o=arguments.length>2,i=o?c(arguments,2):t;return r(o?function(){a(u(e)?e:l(e),this,i)}:e,n)}};o({global:!0,bind:!0,forced:s},{setTimeout:wrap(i.setTimeout),setInterval:wrap(i.setInterval)})},function(r,e,n){var o,i,a,u,f,c,s,l,h,p,g,v,d,y,m,x,b,w,S,A,I,E,R,T,O,M,P,j,N,k,_,U,L,D,C,B,z,W,q,G,V,Y,K,H,$,J,X,Q,Z,tt,rt,et,nt,ot,it,ut,ft,ct,st,lt,ht,pt,gt,vt,dt,yt,mt,xt,bt,wt,St,At,It,Et,Rt,Tt,Ot,Mt,Pt,jt,Nt,kt,_t,Ut,Lt,Ft,Dt,Ct,Bt,zt,Wt,qt,Gt,Vt,Yt,Kt;n(331),o=n(2),i=n(5),a=n(590),u=n(3),f=n(80),c=n(12),s=n(68),l=n(43),h=n(168),p=n(35),g=n(247),v=n(132),d=n(72),y=n(325).codeAt,m=n(591),x=n(64),b=n(78),w=n(592),S=n(45),A=S.set,I=S.getterFor("URL"),E=w.URLSearchParams,R=w.getState,T=u.URL,O=u.TypeError,M=u.parseInt,P=Math.floor,j=Math.pow,N=c("".charAt),k=c(/./.exec),_=c([].join),U=c(1..toString),L=c([].pop),D=c([].push),C=c("".replace),B=c([].shift),z=c("".split),W=c("".slice),q=c("".toLowerCase),G=c([].unshift),V="Invalid scheme",Y="Invalid host",K="Invalid port",H=/[a-z]/i,$=/[\d+-.a-z]/i,J=/\d/,X=/^0x/i,Q=/^[0-7]+$/,Z=/^\d+$/,tt=/^[\da-f]+$/i,rt=/[\0\t\n\r #%/:<>?@[\\\]^|]/,et=/[\0\t\n\r #/:<>?@[\\\]^|]/,nt=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,ot=/[\t\n\r]/g,ut=function(t){var r,e,n,o,i,a,u,f=z(t,".");if(f.length&&""==f[f.length-1]&&f.length--,(r=f.length)>4)return t;for(e=[],n=0;n<r;n++){if(""==(o=f[n]))return t;if(i=10,o.length>1&&"0"==N(o,0)&&(i=k(X,o)?16:8,o=W(o,8==i?1:2)),""===o)a=0;else{if(!k(10==i?Z:8==i?Q:tt,o))return t;a=M(o,i)}D(e,a)}for(n=0;n<r;n++)if(a=e[n],n==r-1){if(a>=j(256,5-r))return null}else if(a>255)return null;for(u=L(e),n=0;n<e.length;n++)u+=e[n]*j(256,3-n);return u},ft=function(t){var r,e,n,o,i,a,u,f=[0,0,0,0,0,0,0,0],c=0,s=null,l=0,chr=function(){return N(t,l)};if(":"==chr()){if(":"!=N(t,1))return;l+=2,s=++c}for(;chr();){if(8==c)return;if(":"!=chr()){for(r=e=0;e<4&&k(tt,chr());)r=16*r+M(chr(),16),l++,e++;if("."==chr()){if(0==e)return;if(l-=e,c>6)return;for(n=0;chr();){if(o=null,n>0){if(!("."==chr()&&n<4))return;l++}if(!k(J,chr()))return;for(;k(J,chr());){if(i=M(chr(),10),null===o)o=i;else{if(0==o)return;o=10*o+i}if(o>255)return;l++}f[c]=256*f[c]+o,2!=++n&&4!=n||c++}if(4!=n)return;break}if(":"==chr()){if(l++,!chr())return}else if(chr())retuLine truncated
//# sourceMappingURL=minified.js.map
@@ -1,47 +0,0 @@
(function(global) {
'use strict';
if (typeof module !== "undefined" && module.exports) {
module.exports = global;
}
global["encoding-indexes"] =
{
"big5":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,17392,19506,17923,17830,17784,160359,19831,17843,162993,19682,163013,15253,18230,18244,19527,19520,148159,144919,160594,159371,159954,19543,172881,18255,17882,19589,162924,19719,19108,18081,158499,29221,154196,137827,146950,147297,26189,22267,null,32149,22813,166841,15860,38708,Line truncated
"euc-kr":[44034,44035,44037,44038,44043,44044,44045,44046,44047,44056,44062,44063,44065,44066,44067,44069,44070,44071,44072,44073,44074,44075,44078,44082,44083,44084,null,null,null,null,null,null,44085,44086,44087,44090,44091,44093,44094,44095,44097,44098,44099,44100,44101,44102,44103,44104,44105,44106,44108,44110,44111,44112,44113,44114,44115,44117,null,null,null,null,null,null,44118,44119,44121,44122,44123,44125,44126,44127,44128,44129,44130,44131,44132,44133,44134,44135,44136,44137,44138,44139,44140,44141,44142,44143,44146,44147,44149,44150,44153,44155,44156,44157,44158,44159,44162,44167,44168,44173,44174,44175,44177,44178,44179,44181,44182,44183,44184,44185,44186,44187,44190,44194,44195,44196,44197,44198,44199,44203,44205,44206,44209,44210,44211,44212,44213,44214,44215,44218,44222,44223,44224,44226,44227,44229,44230,44231,44233,44234,44235,44237,44238,44239,44240,44241,44242,44243,44244,44246,44248,44249,44250,44251,44252,44253,44254,44255,44258,44259,44261,44262,44265,44267,44269,44270,44274,44276,44279,44280,44281,44282,44283,44286,44287,44289,44290,44291,44293,44295,44296,44297,44298,44299,44302,44304,44306,44307,44308,44309,44310,44311,44313,44314,44315,44317,44318,44319,44321,44322,44323,44324,44325,44326,44327,44328,44330,44331,44334,44335,44336,44337,44338,44339,null,null,null,null,null,null,44342,44343,44345,44346,44347,44349,44350,44351,44352,44353,44354,44355,44358,44360,44362,44363,44364,44365,44366,44367,44369,44370,44371,44373,44374,44375,null,null,null,null,null,null,44377,44378,44379,44380,44381,44382,44383,44384,44386,44388,44389,44390,44391,44392,44393,44394,44395,44398,44399,44401,44402,44407,44408,44409,44410,44414,44416,44419,44420,44421,44422,44423,44426,44427,44429,44430,44431,44433,44434,44435,44436,44437,44438,44439,44440,44441,44442,44443,44446,44447,44448,44449,44450,44451,44453,44454,44455,44456,44457,44458,44459,44460,44461,44462,44463,44464,44465,44466,44467,44468,44469,44470,44472,44473,44474,44475,44476,44477,44478,44479,44482,44483,44485,44486,44487,44489,44490,44491,44492,44493,44494,44495,44498,44500,44501,44502,44503,44504,44505,44506,44507,44509,44510,44511,44513,44514,44515,44517,44518,44519,44520,44521,44522,44523,44524,44525,44526,44527,44528,44529,44530,44531,44532,44533,44534,44535,44538,44539,44541,44542,44546,44547,44548,44549,44550,44551,44554,44556,44558,44559,44560,44561,44562,44563,44565,44566,44567,44568,44569,44570,44571,44572,null,null,null,null,null,null,44573,44574,44575,44576,44577,44578,44579,44580,44581,44582,44583,44584,44585,44586,44587,44588,44589,44590,44591,44594,44595,44597,44598,44601,44603,44604,null,null,null,null,null,null,44605,44606,44607,44610,44612,44615,44616,44617,44619,44623,44625,44626,44627,44629,44631,44632,44633,44634,44635,44638,44642,44643,44644,44646,44647,44650,44651,44653,44654,44655,44657,44658,44659,44660,44661,44662,44663,44666,44670,44671,44672,44673,44674,44675,44678,44679,44680,44681,44682,44683,44685,44686,44687,44688,44689,44690,44691,44692,44693,44694,44695,44696,44697,44698,44699,44700,44701,44702,44703,44704,44705,44706,44707,44708,44709,44710,44711,44712,44713,44714,44715,44716,44717,44718,44719,44720,44721,44722,44723,44724,44725,44726,44727,44728,44729,44730,44731,44735,44737,44738,44739,44741,44742,44743,44744,44745,44746,44747,44750,44754,44755,44756,44757,44758,44759,44762,44763,44765,44766,44767,44768,44769,44770,44771,44772,44773,44774,44775,44777,44778,44780,44782,44783,44784,44785,44786,44787,44789,44790,44791,44793,44794,44795,44797,44798,44799,44800,44801,44802,44803,44804,44805,null,null,null,null,null,null,44806,44809,44810,44811,44812,44814,44815,44817,44818,44819,44820,44821,44822,44823,44824,44825,44826,44827,44828,44829,44830,44831,44832,44833,44834,44835,null,null,null,null,null,null,44836,44837,44838,44839,44840,44841,44842,44843,44846,44847,44849,44851,44853,44854,44855,44856,44857,44858,44859,44862,44864,44868,44869,44870,44871,44874,44875,44876,44877,44878,44879,44881,44882,44883,44884,44885,44886,44887,44888,44889,44890,44891,44894,44895,44896,44897,44898,44899,44902,44903,44904,44905,44906,44907,44908,44909,44910,44911,44912,44913,44914,44915,44916,44917,44918,44919,44920,44922,44923,44924,44925,44926,44927,44929,44930,44931,44933,44934,44935,44937,44938,44939,44940,44941,44942,44943,44946,44947,44948,44950,44951,44952,44953,44954,44955,44957,44958,44959,44960,44961,44962,44963,44964,44965,44966,44967,44968,44969,44970,44971,44972,44973,44974,44975,44976,44977,44978,44979,44980,44981,44982,44983,44986,44987,44989,44990,44991,44993,44994,44995,44996,44997,44998,45002,45004,45007,45008,45009,45010,45011,45013,45014,45015,45016,45017,45018,45019,45021,45022,45023,45024,45025,null,null,null,null,null,null,45026,45027,45028,45029,45030,45031,45034,45035,45036,45037,45038,45039,45042,45043,45045,45046,45047,45049,45050,45051,45052,45053,45054,45055,45058,45059,null,null,null,null,null,null,45061,45062,45063,45064,45065,45066,45067,45069,45070,45071,45073,45074,45075,45077,45078,45079,45080,4Line truncated
"gb18030":[19970,19972,19973,19974,19983,19986,19991,19999,20000,20001,20003,20006,20009,20014,20015,20017,20019,20021,20023,20028,20032,20033,20034,20036,20038,20042,20049,20053,20055,20058,20059,20066,20067,20068,20069,20071,20072,20074,20075,20076,20077,20078,20079,20082,20084,20085,20086,20087,20088,20089,20090,20091,20092,20093,20095,20096,20097,20098,20099,20100,20101,20103,20106,20112,20118,20119,20121,20124,20125,20126,20131,20138,20143,20144,20145,20148,20150,20151,20152,20153,20156,20157,20158,20168,20172,20175,20176,20178,20186,20187,20188,20192,20194,20198,20199,20201,20205,20206,20207,20209,20212,20216,20217,20218,20220,20222,20224,20226,20227,20228,20229,20230,20231,20232,20235,20236,20242,20243,20244,20245,20246,20252,20253,20257,20259,20264,20265,20268,20269,20270,20273,20275,20277,20279,20281,20283,20286,20287,20288,20289,20290,20292,20293,20295,20296,20297,20298,20299,20300,20306,20308,20310,20321,20322,20326,20328,20330,20331,20333,20334,20337,20338,20341,20343,20344,20345,20346,20349,20352,20353,20354,20357,20358,20359,20362,20364,20366,20368,20370,20371,20373,20374,20376,20377,20378,20380,20382,20383,20385,20386,20388,20395,20397,20400,20401,20402,20403,20404,20406,20407,20408,20409,20410,20411,20412,20413,20414,20416,20417,20418,20422,20423,20424,20425,20427,20428,20429,20434,20435,20436,20437,20438,20441,20443,20448,20450,20452,20453,20455,20459,20460,20464,20466,20468,20469,20470,20471,20473,20475,20476,20477,20479,20480,20481,20482,20483,20484,20485,20486,20487,20488,20489,20490,20491,20494,20496,20497,20499,20501,20502,20503,20507,20509,20510,20512,20514,20515,20516,20519,20523,20527,20528,20529,20530,20531,20532,20533,20534,20535,20536,20537,20539,20541,20543,20544,20545,20546,20548,20549,20550,20553,20554,20555,20557,20560,20561,20562,20563,20564,20566,20567,20568,20569,20571,20573,20574,20575,20576,20577,20578,20579,20580,20582,20583,20584,20585,20586,20587,20589,20590,20591,20592,20593,20594,20595,20596,20597,20600,20601,20602,20604,20605,20609,20610,20611,20612,20614,20615,20617,20618,20619,20620,20622,20623,20624,20625,20626,20627,20628,20629,20630,20631,20632,20633,20634,20635,20636,20637,20638,20639,20640,20641,20642,20644,20646,20650,20651,20653,20654,20655,20656,20657,20659,20660,20661,20662,20663,20664,20665,20668,20669,20670,20671,20672,20673,20674,20675,20676,20677,20678,20679,20680,20681,20682,20683,20684,20685,20686,20688,20689,20690,20691,20692,20693,20695,20696,20697,20699,20700,20701,20702,20703,20704,20705,20706,20707,20708,20709,20712,20713,20714,20715,20719,20720,20721,20722,20724,20726,20727,20728,20729,20730,20732,20733,20734,20735,20736,20737,20738,20739,20740,20741,20744,20745,20746,20748,20749,20750,20751,20752,20753,20755,20756,20757,20758,20759,20760,20761,20762,20763,20764,20765,20766,20767,20768,20770,20771,20772,20773,20774,20775,20776,20777,20778,20779,20780,20781,20782,20783,20784,20785,20786,20787,20788,20789,20790,20791,20792,20793,20794,20795,20796,20797,20798,20802,20807,20810,20812,20814,20815,20816,20818,20819,20823,20824,20825,20827,20829,20830,20831,20832,20833,20835,20836,20838,20839,20841,20842,20847,20850,20858,20862,20863,20867,20868,20870,20871,20874,20875,20878,20879,20880,20881,20883,20884,20888,20890,20893,20894,20895,20897,20899,20902,20903,20904,20905,20906,20909,20910,20916,20920,20921,20922,20926,20927,20929,20930,20931,20933,20936,20938,20941,20942,20944,20946,20947,20948,20949,20950,20951,20952,20953,20954,20956,20958,20959,20962,20963,20965,20966,20967,20968,20969,20970,20972,20974,20977,20978,20980,20983,20990,20996,20997,21001,21003,21004,21007,21008,21011,21012,21013,21020,21022,21023,21025,21026,21027,21029,21030,21031,21034,21036,21039,21041,21042,21044,21045,21052,21054,21060,21061,21062,21063,21064,21065,21067,21070,21071,21074,21075,21077,21079,21080,21081,21082,21083,21085,21087,21088,21090,21091,21092,21094,21096,21099,21100,21101,21102,21104,21105,21107,21108,21109,21110,21111,21112,21113,21114,21115,21116,21118,21120,21123,21124,21125,21126,21127,21129,21130,21131,21132,21133,21134,21135,21137,21138,21140,21141,21142,21143,21144,21145,21146,21148,21156,21157,21158,21159,21166,21167,21168,21172,21173,21174,21175,21176,21177,21178,21179,21180,21181,21184,21185,21186,21188,21189,21190,21192,21194,21196,21197,21198,21199,21201,21203,21204,21205,21207,21209,21210,21211,21212,21213,21214,21216,21217,21218,21219,21221,21222,21223,21224,21225,21226,21227,21228,21229,21230,21231,21233,21234,21235,21236,21237,21238,21239,21240,21243,21244,21245,21249,21250,21251,21252,21255,21257,21258,21259,21260,21262,21265,21266,21267,21268,21272,21275,21276,21278,21279,21282,21284,21285,21287,21288,21289,21291,21292,21293,21295,21296,21297,21298,21299,21300,21301,21302,21303,21304,21308,21309,21312,21314,21316,21318,21323,21324,21325,21328,21332,21336,21337,21339,21341,21349,21352,21354,21356,21357,21362,21366,21369,21371,21372,21373,21374,21376,21377,21379,21383,21384,21386,21390,21391,21392,21393,21394,21395,21396,21398,21399,21401,Line truncated
"gb18030-ranges":[[0,128],[36,165],[38,169],[45,178],[50,184],[81,216],[89,226],[95,235],[96,238],[100,244],[103,248],[104,251],[105,253],[109,258],[126,276],[133,284],[148,300],[172,325],[175,329],[179,334],[208,364],[306,463],[307,465],[308,467],[309,469],[310,471],[311,473],[312,475],[313,477],[341,506],[428,594],[443,610],[544,712],[545,716],[558,730],[741,930],[742,938],[749,962],[750,970],[805,1026],[819,1104],[820,1106],[7922,8209],[7924,8215],[7925,8218],[7927,8222],[7934,8231],[7943,8241],[7944,8244],[7945,8246],[7950,8252],[8062,8365],[8148,8452],[8149,8454],[8152,8458],[8164,8471],[8174,8482],[8236,8556],[8240,8570],[8262,8596],[8264,8602],[8374,8713],[8380,8720],[8381,8722],[8384,8726],[8388,8731],[8390,8737],[8392,8740],[8393,8742],[8394,8748],[8396,8751],[8401,8760],[8406,8766],[8416,8777],[8419,8781],[8424,8787],[8437,8802],[8439,8808],[8445,8816],[8482,8854],[8485,8858],[8496,8870],[8521,8896],[8603,8979],[8936,9322],[8946,9372],[9046,9548],[9050,9588],[9063,9616],[9066,9622],[9076,9634],[9092,9652],[9100,9662],[9108,9672],[9111,9676],[9113,9680],[9131,9702],[9162,9735],[9164,9738],[9218,9793],[9219,9795],[11329,11906],[11331,11909],[11334,11913],[11336,11917],[11346,11928],[11361,11944],[11363,11947],[11366,11951],[11370,11956],[11372,11960],[11375,11964],[11389,11979],[11682,12284],[11686,12292],[11687,12312],[11692,12319],[11694,12330],[11714,12351],[11716,12436],[11723,12447],[11725,12535],[11730,12543],[11736,12586],[11982,12842],[11989,12850],[12102,12964],[12336,13200],[12348,13215],[12350,13218],[12384,13253],[12393,13263],[12395,13267],[12397,13270],[12510,13384],[12553,13428],[12851,13727],[12962,13839],[12973,13851],[13738,14617],[13823,14703],[13919,14801],[13933,14816],[14080,14964],[14298,15183],[14585,15471],[14698,15585],[15583,16471],[15847,16736],[16318,17208],[16434,17325],[16438,17330],[16481,17374],[16729,17623],[17102,17997],[17122,18018],[17315,18212],[17320,18218],[17402,18301],[17418,18318],[17859,18760],[17909,18811],[17911,18814],[17915,18820],[17916,18823],[17936,18844],[17939,18848],[17961,18872],[18664,19576],[18703,19620],[18814,19738],[18962,19887],[19043,40870],[33469,59244],[33470,59336],[33471,59367],[33484,59413],[33485,59417],[33490,59423],[33497,59431],[33501,59437],[33505,59443],[33513,59452],[33520,59460],[33536,59478],[33550,59493],[37845,63789],[37921,63866],[37948,63894],[38029,63976],[38038,63986],[38064,64016],[38065,64018],[38066,64021],[38069,64025],[38075,64034],[38076,64037],[38078,64042],[39108,65074],[39109,65093],[39113,65107],[39114,65112],[39115,65127],[39116,65132],[39265,65375],[39394,65510],[189000,65536]],
"jis0208":[12288,12289,12290,65292,65294,12539,65306,65307,65311,65281,12443,12444,180,65344,168,65342,65507,65343,12541,12542,12445,12446,12291,20189,12293,12294,12295,12540,8213,8208,65295,65340,65374,8741,65372,8230,8229,8216,8217,8220,8221,65288,65289,12308,12309,65339,65341,65371,65373,12296,12297,12298,12299,12300,12301,12302,12303,12304,12305,65291,65293,177,215,247,65309,8800,65308,65310,8806,8807,8734,8756,9794,9792,176,8242,8243,8451,65509,65284,65504,65505,65285,65283,65286,65290,65312,167,9734,9733,9675,9679,9678,9671,9670,9633,9632,9651,9650,9661,9660,8251,12306,8594,8592,8593,8595,12307,null,null,null,null,null,null,null,null,null,null,null,8712,8715,8838,8839,8834,8835,8746,8745,null,null,null,null,null,null,null,null,8743,8744,65506,8658,8660,8704,8707,null,null,null,null,null,null,null,null,null,null,null,8736,8869,8978,8706,8711,8801,8786,8810,8811,8730,8765,8733,8757,8747,8748,null,null,null,null,null,null,null,8491,8240,9839,9837,9834,8224,8225,182,null,null,null,null,9711,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,65296,65297,65298,65299,65300,65301,65302,65303,65304,65305,null,null,null,null,null,null,null,65313,65314,65315,65316,65317,65318,65319,65320,65321,65322,65323,65324,65325,65326,65327,65328,65329,65330,65331,65332,65333,65334,65335,65336,65337,65338,null,null,null,null,null,null,65345,65346,65347,65348,65349,65350,65351,65352,65353,65354,65355,65356,65357,65358,65359,65360,65361,65362,65363,65364,65365,65366,65367,65368,65369,65370,null,null,null,null,12353,12354,12355,12356,12357,12358,12359,12360,12361,12362,12363,12364,12365,12366,12367,12368,12369,12370,12371,12372,12373,12374,12375,12376,12377,12378,12379,12380,12381,12382,12383,12384,12385,12386,12387,12388,12389,12390,12391,12392,12393,12394,12395,12396,12397,12398,12399,12400,12401,12402,12403,12404,12405,12406,12407,12408,12409,12410,12411,12412,12413,12414,12415,12416,12417,12418,12419,12420,12421,12422,12423,12424,12425,12426,12427,12428,12429,12430,12431,12432,12433,12434,12435,null,null,null,null,null,null,null,null,null,null,null,12449,12450,12451,12452,12453,12454,12455,12456,12457,12458,12459,12460,12461,12462,12463,12464,12465,12466,12467,12468,12469,12470,12471,12472,12473,12474,12475,12476,12477,12478,12479,12480,12481,12482,12483,12484,12485,12486,12487,12488,12489,12490,12491,12492,12493,12494,12495,12496,12497,12498,12499,12500,12501,12502,12503,12504,12505,12506,12507,12508,12509,12510,12511,12512,12513,12514,12515,12516,12517,12518,12519,12520,12521,12522,12523,12524,12525,12526,12527,12528,12529,12530,12531,12532,12533,12534,null,null,null,null,null,null,null,null,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,null,null,null,null,null,null,null,null,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,963,964,965,966,967,968,969,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1040,1041,1042,1043,1044,1045,1025,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1072,1073,1074,1075,1076,1077,1105,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,null,null,null,null,null,null,null,null,null,null,null,null,null,9472,9474,9484,9488,9496,9492,9500,9516,9508,9524,9532,9473,9475,9487,9491,9499,9495,9507,9523,9515,9531,9547,9504,9519,9512,9527,9535,9501,9520,9509,9528,9538,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,nLine truncated
"jis0212":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,728,711,184,729,733,175,731,730,65374,900,901,null,null,null,null,null,null,null,null,161,166,191,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,186,170,169,174,8482,164,8470,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,902,904,905,906,938,null,908,null,910,939,null,911,null,null,null,null,940,941,942,943,970,912,972,962,973,971,944,974,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1038,1039,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1118,1119,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,198,272,null,294,null,306,null,321,319,null,330,216,338,null,358,222,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,230,273,240,295,305,307,312,322,320,329,331,248,339,223,359,254,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,193,192,196,194,258,461,256,260,197,195,262,264,268,199,266,270,201,200,203,202,282,278,274,280,null,284,286,290,288,292,205,204,207,206,463,304,298,302,296,308,310,313,317,315,323,327,325,209,211,210,214,212,465,336,332,213,340,344,342,346,348,352,350,356,354,218,217,220,219,364,467,368,362,370,366,360,471,475,473,469,372,221,376,374,377,381,379,null,null,null,null,null,null,null,225,224,228,226,259,462,257,261,229,227,263,265,269,231,267,271,233,232,235,234,283,279,275,281,501,285,287,null,289,293,237,236,239,238,464,null,299,303,297,309,311,314,318,316,324,328,326,241,243,242,246,244,466,337,333,245,341,345,343,347,349,353,351,357,355,250,249,252,251,365,468,369,363,371,367,361,472,476,474,470,373,253,255,375,378,382,380,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,nuLine truncated
"ibm866":[1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,9617,9618,9619,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9561,9560,9554,9555,9579,9578,9496,9484,9608,9604,9612,9616,9600,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1025,1105,1028,1108,1031,1111,1038,1118,176,8729,183,8730,8470,164,9632,160],
"iso-8859-2":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,260,728,321,164,317,346,167,168,352,350,356,377,173,381,379,176,261,731,322,180,318,347,711,184,353,351,357,378,733,382,380,340,193,194,258,196,313,262,199,268,201,280,203,282,205,206,270,272,323,327,211,212,336,214,215,344,366,218,368,220,221,354,223,341,225,226,259,228,314,263,231,269,233,281,235,283,237,238,271,273,324,328,243,244,337,246,247,345,367,250,369,252,253,355,729],
"iso-8859-3":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,294,728,163,164,null,292,167,168,304,350,286,308,173,null,379,176,295,178,179,180,181,293,183,184,305,351,287,309,189,null,380,192,193,194,null,196,266,264,199,200,201,202,203,204,205,206,207,null,209,210,211,212,288,214,215,284,217,218,219,220,364,348,223,224,225,226,null,228,267,265,231,232,233,234,235,236,237,238,239,null,241,242,243,244,289,246,247,285,249,250,251,252,365,349,729],
"iso-8859-4":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,260,312,342,164,296,315,167,168,352,274,290,358,173,381,175,176,261,731,343,180,297,316,711,184,353,275,291,359,330,382,331,256,193,194,195,196,197,198,302,268,201,280,203,278,205,206,298,272,325,332,310,212,213,214,215,216,370,218,219,220,360,362,223,257,225,226,227,228,229,230,303,269,233,281,235,279,237,238,299,273,326,333,311,244,245,246,247,248,371,250,251,252,361,363,729],
"iso-8859-5":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,173,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,8470,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,167,1118,1119],
"iso-8859-6":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,null,null,null,164,null,null,null,null,null,null,null,1548,173,null,null,null,null,null,null,null,null,null,null,null,null,null,1563,null,null,null,1567,null,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,null,null,null,null,null,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,null,null,null,null,null,null,null,null,null,null,null,null,null],
"iso-8859-7":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,8216,8217,163,8364,8367,166,167,168,169,890,171,172,173,null,8213,176,177,178,179,900,901,902,183,904,905,906,187,908,189,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,null,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,null],
"iso-8859-8":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,null,162,163,164,165,166,167,168,169,215,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,247,187,188,189,190,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,8215,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,null,null,8206,8207,null],
"iso-8859-10":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,260,274,290,298,296,310,167,315,272,352,358,381,173,362,330,176,261,275,291,299,297,311,183,316,273,353,359,382,8213,363,331,256,193,194,195,196,197,198,302,268,201,280,203,278,205,206,207,208,325,332,211,212,213,214,360,216,370,218,219,220,221,222,223,257,225,226,227,228,229,230,303,269,233,281,235,279,237,238,239,240,326,333,243,244,245,246,361,248,371,250,251,252,253,254,312],
"iso-8859-13":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,8221,162,163,164,8222,166,167,216,169,342,171,172,173,174,198,176,177,178,179,8220,181,182,183,248,185,343,187,188,189,190,230,260,302,256,262,196,197,280,274,268,201,377,278,290,310,298,315,352,323,325,211,332,213,214,215,370,321,346,362,220,379,381,223,261,303,257,263,228,229,281,275,269,233,378,279,291,311,299,316,353,324,326,243,333,245,246,247,371,322,347,363,252,380,382,8217],
"iso-8859-14":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,7682,7683,163,266,267,7690,167,7808,169,7810,7691,7922,173,174,376,7710,7711,288,289,7744,7745,182,7766,7809,7767,7811,7776,7923,7812,7813,7777,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,372,209,210,211,212,213,214,7786,216,217,218,219,220,221,374,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,373,241,242,243,244,245,246,7787,248,249,250,251,252,253,375,255],
"iso-8859-15":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,8364,165,352,167,353,169,170,171,172,173,174,175,176,177,178,179,381,181,182,183,382,185,186,187,338,339,376,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],
"iso-8859-16":[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,260,261,321,8364,8222,352,167,353,169,536,171,377,173,378,379,176,177,268,322,381,8221,182,183,382,269,537,187,338,339,376,380,192,193,194,258,196,262,198,199,200,201,202,203,204,205,206,207,272,323,210,211,212,336,214,346,368,217,218,219,220,280,538,223,224,225,226,259,228,263,230,231,232,233,234,235,236,237,238,239,273,324,242,243,244,337,246,347,369,249,250,251,252,281,539,255],
"koi8-r":[9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9600,9604,9608,9612,9616,9617,9618,9619,8992,9632,8729,8730,8776,8804,8805,160,8993,176,178,183,247,9552,9553,9554,1105,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,1025,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,169,1102,1072,1073,1094,1076,1077,1092,1075,1093,1080,1081,1082,1083,1084,1085,1086,1087,1103,1088,1089,1090,1091,1078,1074,1100,1099,1079,1096,1101,1097,1095,1098,1070,1040,1041,1062,1044,1045,1060,1043,1061,1048,1049,1050,1051,1052,1053,1054,1055,1071,1056,1057,1058,1059,1046,1042,1068,1067,1047,1064,1069,1065,1063,1066],
"koi8-u":[9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9600,9604,9608,9612,9616,9617,9618,9619,8992,9632,8729,8730,8776,8804,8805,160,8993,176,178,183,247,9552,9553,9554,1105,1108,9556,1110,1111,9559,9560,9561,9562,9563,1169,1118,9566,9567,9568,9569,1025,1028,9571,1030,1031,9574,9575,9576,9577,9578,1168,1038,169,1102,1072,1073,1094,1076,1077,1092,1075,1093,1080,1081,1082,1083,1084,1085,1086,1087,1103,1088,1089,1090,1091,1078,1074,1100,1099,1079,1096,1101,1097,1095,1098,1070,1040,1041,1062,1044,1045,1060,1043,1061,1048,1049,1050,1051,1052,1053,1054,1055,1071,1056,1057,1058,1059,1046,1042,1068,1067,1047,1064,1069,1065,1063,1066],
"macintosh":[196,197,199,201,209,214,220,225,224,226,228,227,229,231,233,232,234,235,237,236,238,239,241,243,242,244,246,245,250,249,251,252,8224,176,162,163,167,8226,182,223,174,169,8482,180,168,8800,198,216,8734,177,8804,8805,165,181,8706,8721,8719,960,8747,170,186,937,230,248,191,161,172,8730,402,8776,8710,171,187,8230,160,192,195,213,338,339,8211,8212,8220,8221,8216,8217,247,9674,255,376,8260,8364,8249,8250,64257,64258,8225,183,8218,8222,8240,194,202,193,203,200,205,206,207,204,211,212,63743,210,218,219,217,305,710,732,175,728,729,730,184,733,731,711],
"windows-874":[8364,129,130,131,132,8230,134,135,136,137,138,139,140,141,142,143,144,8216,8217,8220,8221,8226,8211,8212,152,153,154,155,156,157,158,159,160,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3605,3606,3607,3608,3609,3610,3611,3612,3613,3614,3615,3616,3617,3618,3619,3620,3621,3622,3623,3624,3625,3626,3627,3628,3629,3630,3631,3632,3633,3634,3635,3636,3637,3638,3639,3640,3641,3642,null,null,null,null,3647,3648,3649,3650,3651,3652,3653,3654,3655,3656,3657,3658,3659,3660,3661,3662,3663,3664,3665,3666,3667,3668,3669,3670,3671,3672,3673,3674,3675,null,null,null,null],
"windows-1250":[8364,129,8218,131,8222,8230,8224,8225,136,8240,352,8249,346,356,381,377,144,8216,8217,8220,8221,8226,8211,8212,152,8482,353,8250,347,357,382,378,160,711,728,321,164,260,166,167,168,169,350,171,172,173,174,379,176,177,731,322,180,181,182,183,184,261,351,187,317,733,318,380,340,193,194,258,196,313,262,199,268,201,280,203,282,205,206,270,272,323,327,211,212,336,214,215,344,366,218,368,220,221,354,223,341,225,226,259,228,314,263,231,269,233,281,235,283,237,238,271,273,324,328,243,244,337,246,247,345,367,250,369,252,253,355,729],
"windows-1251":[1026,1027,8218,1107,8222,8230,8224,8225,8364,8240,1033,8249,1034,1036,1035,1039,1106,8216,8217,8220,8221,8226,8211,8212,152,8482,1113,8250,1114,1116,1115,1119,160,1038,1118,1032,164,1168,166,167,1025,169,1028,171,172,173,174,1031,176,177,1030,1110,1169,181,182,183,1105,8470,1108,187,1112,1029,1109,1111,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103],
"windows-1252":[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],
"windows-1253":[8364,129,8218,402,8222,8230,8224,8225,136,8240,138,8249,140,141,142,143,144,8216,8217,8220,8221,8226,8211,8212,152,8482,154,8250,156,157,158,159,160,901,902,163,164,165,166,167,168,169,null,171,172,173,174,8213,176,177,178,179,900,181,182,183,904,905,906,187,908,189,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,null,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,null],
"windows-1254":[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,142,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,158,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,286,209,210,211,212,213,214,215,216,217,218,219,220,304,350,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,287,241,242,243,244,245,246,247,248,249,250,251,252,305,351,255],
"windows-1255":[8364,129,8218,402,8222,8230,8224,8225,710,8240,138,8249,140,141,142,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,154,8250,156,157,158,159,160,161,162,163,8362,165,166,167,168,169,215,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,247,187,188,189,190,191,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1520,1521,1522,1523,1524,null,null,null,null,null,null,null,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,null,null,8206,8207,null],
"windows-1256":[8364,1662,8218,402,8222,8230,8224,8225,710,8240,1657,8249,338,1670,1688,1672,1711,8216,8217,8220,8221,8226,8211,8212,1705,8482,1681,8250,339,8204,8205,1722,160,1548,162,163,164,165,166,167,168,169,1726,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,1563,187,188,189,190,1567,1729,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,215,1591,1592,1593,1594,1600,1601,1602,1603,224,1604,226,1605,1606,1607,1608,231,232,233,234,235,1609,1610,238,239,1611,1612,1613,1614,244,1615,1616,247,1617,249,1618,251,252,8206,8207,1746],
"windows-1257":[8364,129,8218,131,8222,8230,8224,8225,136,8240,138,8249,140,168,711,184,144,8216,8217,8220,8221,8226,8211,8212,152,8482,154,8250,156,175,731,159,160,null,162,163,164,null,166,167,216,169,342,171,172,173,174,198,176,177,178,179,180,181,182,183,248,185,343,187,188,189,190,230,260,302,256,262,196,197,280,274,268,201,377,278,290,310,298,315,352,323,325,211,332,213,214,215,370,321,346,362,220,379,381,223,261,303,257,263,228,229,281,275,269,233,378,279,291,311,299,316,353,324,326,243,333,245,246,247,371,322,347,363,252,380,382,729],
"windows-1258":[8364,129,8218,402,8222,8230,8224,8225,710,8240,138,8249,338,141,142,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,154,8250,339,157,158,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,258,196,197,198,199,200,201,202,203,768,205,206,207,272,209,777,211,212,416,214,215,216,217,218,219,220,431,771,223,224,225,226,259,228,229,230,231,232,233,234,235,769,237,238,239,273,241,803,243,244,417,246,247,248,249,250,251,252,432,8363,255],
"x-mac-cyrillic":[1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,8224,176,1168,163,167,8226,182,1030,174,169,8482,1026,1106,8800,1027,1107,8734,177,8804,8805,1110,181,1169,1032,1028,1108,1031,1111,1033,1113,1034,1114,1112,1029,172,8730,402,8776,8710,171,187,8230,160,1035,1115,1036,1116,1109,8211,8212,8220,8221,8216,8217,247,8222,1038,1118,1039,1119,8470,1025,1105,1103,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,8364]
};
// For strict environments where `this` inside the global scope
// is `undefined`, take a pure object instead
}(this || {}));
File diff suppressed because it is too large. Load diff
-418
View File
@@ -1,418 +0,0 @@
(function(self) {
'use strict';
// if __disableNativeFetch is set to true, the it will always polyfill fetch
// with Ajax.
if (!self.__disableNativeFetch && self.fetch) {
return
}
function normalizeName(name) {
if (typeof name !== 'string') {
name = String(name)
}
if (/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)) {
throw new TypeError('Invalid character in header field name')
}
return name.toLowerCase()
}
function normalizeValue(value) {
if (typeof value !== 'string') {
value = String(value)
}
return value
}
function Headers(headers) {
this.map = {}
if (headers instanceof Headers) {
headers.forEach(function(value, name) {
this.append(name, value)
}, this)
} else if (headers) {
Object.getOwnPropertyNames(headers).forEach(function(name) {
this.append(name, headers[name])
}, this)
}
}
Headers.prototype.append = function(name, value) {
name = normalizeName(name)
value = normalizeValue(value)
var list = this.map[name]
if (!list) {
list = []
this.map[name] = list
}
list.push(value)
}
Headers.prototype['delete'] = function(name) {
delete this.map[normalizeName(name)]
}
Headers.prototype.get = function(name) {
var values = this.map[normalizeName(name)]
return values ? values[0] : null
}
Headers.prototype.getAll = function(name) {
return this.map[normalizeName(name)] || []
}
Headers.prototype.has = function(name) {
return this.map.hasOwnProperty(normalizeName(name))
}
Headers.prototype.set = function(name, value) {
this.map[normalizeName(name)] = [normalizeValue(value)]
}
Headers.prototype.forEach = function(callback, thisArg) {
Object.getOwnPropertyNames(this.map).forEach(function(name) {
this.map[name].forEach(function(value) {
callback.call(thisArg, value, name, this)
}, this)
}, this)
}
function consumed(body) {
if (body.bodyUsed) {
return Promise.reject(new TypeError('Already read'))
}
body.bodyUsed = true
}
function fileReaderReady(reader) {
return new Promise(function(resolve, reject) {
reader.onload = function() {
resolve(reader.result)
}
reader.onerror = function() {
reject(reader.error)
}
})
}
function readBlobAsArrayBuffer(blob) {
var reader = new FileReader()
reader.readAsArrayBuffer(blob)
return fileReaderReady(reader)
}
function readBlobAsText(blob, options) {
var reader = new FileReader()
var contentType = options.headers.map['content-type'] ? options.headers.map['content-type'].toString() : ''
var regex = /charset\=[0-9a-zA-Z\-\_]*;?/
var _charset = blob.type.match(regex) || contentType.match(regex)
var args = [blob]
if(_charset) {
args.push(_charset[0].replace(/^charset\=/, '').replace(/;$/, ''))
}
reader.readAsText.apply(reader, args)
return fileReaderReady(reader)
}
var support = {
blob: 'FileReader' in self && 'Blob' in self && (function() {
try {
new Blob();
return true
} catch(e) {
return false
}
})(),
formData: 'FormData' in self,
arrayBuffer: 'ArrayBuffer' in self
}
function Body() {
this.bodyUsed = false
this._initBody = function(body, options) {
this._bodyInit = body
if (typeof body === 'string') {
this._bodyText = body
} else if (support.blob && Blob.prototype.isPrototypeOf(body)) {
this._bodyBlob = body
this._options = options
} else if (support.formData && FormData.prototype.isPrototypeOf(body)) {
this._bodyFormData = body
} else if (!body) {
this._bodyText = ''
} else if (support.arrayBuffer && ArrayBuffer.prototype.isPrototypeOf(body)) {
// Only support ArrayBuffers for POST method.
// Receiving ArrayBuffers happens via Blobs, instead.
} else {
throw new Error('unsupported BodyInit type')
}
}
if (support.blob) {
this.blob = function() {
var rejected = consumed(this)
if (rejected) {
return rejected
}
if (this._bodyBlob) {
return Promise.resolve(this._bodyBlob)
} else if (this._bodyFormData) {
throw new Error('could not read FormData body as blob')
} else {
return Promise.resolve(new Blob([this._bodyText]))
}
}
this.arrayBuffer = function() {
return this.blob().then(readBlobAsArrayBuffer)
}
this.text = function() {
var rejected = consumed(this)
if (rejected) {
return rejected
}
if (this._bodyBlob) {
return readBlobAsText(this._bodyBlob, this._options)
} else if (this._bodyFormData) {
throw new Error('could not read FormData body as text')
} else {
return Promise.resolve(this._bodyText)
}
}
} else {
this.text = function() {
var rejected = consumed(this)
return rejected ? rejected : Promise.resolve(this._bodyText)
}
}
if (support.formData) {
this.formData = function() {
return this.text().then(decode)
}
}
this.json = function() {
return this.text().then(JSON.parse)
}
return this
}
// HTTP methods whose capitalization should be normalized
var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']
function normalizeMethod(method) {
var upcased = method.toUpperCase()
return (methods.indexOf(upcased) > -1) ? upcased : method
}
function Request(input, options) {
options = options || {}
var body = options.body
if (Request.prototype.isPrototypeOf(input)) {
if (input.bodyUsed) {
throw new TypeError('Already read')
}
this.url = input.url
this.credentials = input.credentials
if (!options.headers) {
this.headers = new Headers(input.headers)
}
this.method = input.method
this.mode = input.mode
if (!body) {
body = input._bodyInit
input.bodyUsed = true
}
} else {
this.url = input
}
this.credentials = options.credentials || this.credentials || 'omit'
if (options.headers || !this.headers) {
this.headers = new Headers(options.headers)
}
this.method = normalizeMethod(options.method || this.method || 'GET')
this.mode = options.mode || this.mode || null
this.referrer = null
if ((this.method === 'GET' || this.method === 'HEAD') && body) {
throw new TypeError('Body not allowed for GET or HEAD requests')
}
this._initBody(body, options)
}
Request.prototype.clone = function() {
return new Request(this)
}
function decode(body) {
var form = new FormData()
body.trim().split('&').forEach(function(bytes) {
if (bytes) {
var split = bytes.split('=')
var name = split.shift().replace(/\+/g, ' ')
var value = split.join('=').replace(/\+/g, ' ')
form.append(decodeURIComponent(name), decodeURIComponent(value))
}
})
return form
}
function headers(xhr) {
var head = new Headers()
var pairs = xhr.getAllResponseHeaders().trim().split('\n')
pairs.forEach(function(header) {
var split = header.trim().split(':')
var key = split.shift().trim()
var value = split.join(':').trim()
head.append(key, value)
})
return head
}
Body.call(Request.prototype)
function Response(bodyInit, options) {
if (!options) {
options = {}
}
this._initBody(bodyInit, options)
this.type = 'default'
this.status = options.status
this.ok = this.status >= 200 && this.status < 300
this.statusText = options.statusText
this.headers = options.headers instanceof Headers ? options.headers : new Headers(options.headers)
this.url = options.url || ''
}
Body.call(Response.prototype)
Response.prototype.clone = function() {
return new Response(this._bodyInit, {
status: this.status,
statusText: this.statusText,
headers: new Headers(this.headers),
url: this.url
})
}
Response.error = function() {
var response = new Response(null, {status: 0, statusText: ''})
response.type = 'error'
return response
}
var redirectStatuses = [301, 302, 303, 307, 308]
Response.redirect = function(url, status) {
if (redirectStatuses.indexOf(status) === -1) {
throw new RangeError('Invalid status code')
}
return new Response(null, {status: status, headers: {location: url}})
}
self.Headers = Headers;
self.Request = Request;
self.Response = Response;
self.fetch = function(input, init) {
return new Promise(function(resolve, reject) {
var request
if (Request.prototype.isPrototypeOf(input) && !init) {
request = input
} else {
request = new Request(input, init)
}
var xhr = new XMLHttpRequest()
function responseURL() {
if ('responseURL' in xhr) {
return xhr.responseURL
}
// Avoid security warnings on getResponseHeader when not allowed by CORS
if (/^X-Request-URL:/m.test(xhr.getAllResponseHeaders())) {
return xhr.getResponseHeader('X-Request-URL')
}
return;
}
var __onLoadHandled = false;
function onload() {
if (xhr.readyState !== 4) {
return
}
var status = (xhr.status === 1223) ? 204 : xhr.status
if (status < 100 || status > 599) {
if (__onLoadHandled) { return; } else { __onLoadHandled = true; }
reject(new TypeError('Network request failed'))
return
}
var options = {
status: status,
statusText: xhr.statusText,
headers: headers(xhr),
url: responseURL()
}
var body = 'response' in xhr ? xhr.response : xhr.responseText;
if (__onLoadHandled) { return; } else { __onLoadHandled = true; }
resolve(new Response(body, options))
}
xhr.onreadystatechange = onload;
xhr.onload = onload;
xhr.onerror = function() {
if (__onLoadHandled) { return; } else { __onLoadHandled = true; }
reject(new TypeError('Network request failed'))
}
xhr.open(request.method, request.url, true)
// `withCredentials` should be setted after calling `.open` in IE10
// http://stackoverflow.com/a/19667959/1219343
try {
if (request.credentials === 'include') {
if ('withCredentials' in xhr) {
xhr.withCredentials = true;
} else {
console && console.warn && console.warn('withCredentials is not supported, you can ignore this warning');
}
}
} catch (e) {
console && console.warn && console.warn('set withCredentials error:' + e);
}
if ('responseType' in xhr && support.blob) {
xhr.responseType = 'blob'
}
request.headers.forEach(function(value, name) {
xhr.setRequestHeader(name, value)
})
xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)
})
}
self.fetch.polyfill = true
// Support CommonJS
if (typeof module !== 'undefined' && module.exports) {
module.exports = self.fetch;
}
})(typeof self !== 'undefined' ? self : this);
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
[{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u8d4f\u5fc3\u60a6\u76ee","time":60.139,"color":"#FFFFFF"},{"text":"\u6765\u770b\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6f14\u6280\u5927\u8d4f","time":61.765,"color":"#FABE96"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u597d\u4e0a\u955c","time":61.857,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u975e\u5e38\u884c\u4e91\u6d41\u6c34","time":61,"color":"#FFFFFF"},{"text":"\u60f3\u5230\u4e86\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6a21\u4eff\u522b\u4eba\u5b66\u7740\u4f9d\u504e\u7684\u6837\u5b50","time":61.486,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u4eea\u6001\u597d\u6c14\u8d28\u4f73","time":62.995,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u8d4f\u5fc3\u60a6\u76ee","time":62.925,"color":"#FFFFFF"},{"text":"\u770b\u4e86\u8fd9\u4e2a\u5267\u66f4\u559c\u6b22\u7f57\u4e91\u7199\u4e86","time":62.717,"color":"#FFFFFF"},{"text":"\u6211\u53ef\u592a\u559c\u6b22\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7684\u7709\u773c\u4e86","time":63.529,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u554a\u554a\u554a\u554a","time":63.287,"color":"#FFFFFF"},{"text":"\u5927\u7231\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7684\u989c\u503c\u6c14\u8d28","time":64.412,"color":"#FFFFFF"},{"text":"\u9ed1\u5316\u5427\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec","time":64.365,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6f14\u6280\u975e\u5e38\u597d","time":65.875,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u771f\u7cbe\u5f69","time":66.107,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u8ff7\u7684\u6211\u4e94\u8ff7\u4e09\u9053","time":66.316,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u62ff\u7a33\u88ab\u8650\u5267\u672c","time":66.873,"color":"#FFFFFF"},{"text":"\u6765\u770b\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6f14\u6280\u5927\u8d4f","time":67.407,"color":"#FABE96"},{"text":"\u770b\u5b8c\u4e0a\u5b98\u900f\u6765\u770b\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u8fa3","time":67.848,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u884c\u4e91\u6d41\u6c34","time":67.964,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u725b\u903c","time":67.454,"color":"#FFFFFF"},{"text":"\u7247\u5934\u90fd\u820d\u4e0d\u5f97\u8df3","time":68.336,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6253\u620f\u5f88\u597d","time":68.661,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u51fa\u573a\u5373\u60ca\u8273","time":68.474,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u7684\u6bcf\u4e00\u4e2a\u89d2\u8272\u90fd\u8ba9\u4eba\u65e0\u6cd5\u6297\u62d2","time":68.984,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u786e\u5b9e\u503c\u5f97\u4e00\u770b","time":69.311,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u6211\u592a\u53ef\u4ee5\u4e86","time":69,"color":"#FFFFFF"},{"text":"\u770b\u4e86\u8fd9\u4e2a\u5267\u66f4\u559c\u6b22\u7f57\u4e91\u7199\u4e86","time":69.915,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u80fd\u628a\u60ac\u6d6e\u7684\u6fb9\u53f0\u70ec\u9970\u6f14\u7684\u8ba9\u4eba\u5171\u60c5","time":69,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6f14\u6280\u592a\u597d\u4e86","time":69.775,"color":"#FFFFFF"},{"text":"\u5439\u7206\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec","time":70.356,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u771f\u662f\u624b\u63a7\u798f\u5229","time":70.913,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u60c5\u5546\u6ee1\u5206","time":70.797,"color":"#FFFFFF"},{"text":"\u4e0b\u73ed\u5403\u996d\u5b8c\u5c31\u6253\u5f00\u7535\u8111","time":70.89,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u53e4\u88c5\u9ca8\u6211","time":70.1,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u597d\u5e05","time":70,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7f57\u4e91\u7199","time":70.978,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u65f6\u9694\u4e94\u5e74\u7684\u53e4\u88c5\u4ed9\u4fa0\u957f\u6708\u70ec\u660e","time":70.867,"color":"#FFFFFF"},{"text":"\u5927\u7231\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7684\u989c\u503c\u6c14\u8d28","time":71.238,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u7684\u6fb9\u53f0\u70ec\u975e\u5e38\u6709\u827a\u672f\u5438\u5f15\u529b","time":71,"color":"#FFFFFF"},{"text":"\u770b\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7b80\u76f4\u662f\u79cd\u4eab\u53d7","time":72.515,"color":"#FFFFFF"},{"text":"\u597d\u559c\u6b22\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u7684\u8fd9\u4e2a\u611f\u89c9","time":72.33,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec\u597d\u82cf\u554a","time":72,"color":"#FFFFFF"},{"text":"\u559c\u6b22\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec","time":72.33,"color":"#FFFFFF"},{"text":"\u71ac\u591c\u770b\u7f57\u4e91\u7199\u6fb9\u53f0\u70ec","time":72.98,"color":"#FFFFFF"},{"text":"\u7f57\u4e91\u7199\u6fb9\u53fLine truncated
Binary file not shown.
+26
View File
@@ -0,0 +1,26 @@
WEBVTT
1
00:00:00.000 --> 00:01:30.000
<i>[1]: 00:00 -> 01:30</i>
<i>[1]: 00:00 -> 01:30</i>
2
00:00:00.000 --> 00:00:05.000
<b>[2]: 00:00 -> 00:05</b>
<b>[2]: 00:00 -> 00:05</b>
3
00:00:00.000 --> 00:00:10.000
<b style="color:red">[3]: 00:00 -> 00:10</b>
<b style="color:red">[3]: 00:00 -> 00:10</b>
4
00:00:05.000 --> 00:00:20.000
<i style="color:yellow">[4]: 00:05 -> 00:20</i>
<i style="color:yellow">[4]: 00:05 -> 00:20</i>
5
00:00:10.000 --> 00:00:30.000
<del style="font-size:24px">[5]: 00:20 -> 01:00</del>
<del style="font-size:24px">[5]: 00:20 -> 01:00</del>
+56
View File
@@ -0,0 +1,56 @@
[Script Info]
Title:
ScriptType: v4.00+
WrapStyle: 0
PlayResX: 640
PlayResY: 480
ScaledBorderAndShadow: yes
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,0
Style: Alt,Times New Roman,40,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,8,10,10,10,0
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: 0,0:00:00.00,0:00:05.00,Default,,0000,0000,0000,,This line is a comment and should not display on rendered output. This file is intended to be rendered on a 640x480 video, preferably a single solid colour, or maybe a checkerboard pattern.
Dialogue: 0,0:00:00.00,0:00:05.00,Default,,0000,0000,0000,,This is a test of the ASS format and some basic features in it.
Dialogue: 0,0:00:05.00,0:00:07.00,Default,,0000,0000,0000,,This and the previous line should both show at the bottom of the video in 20 pixel high white Arial with a 2 pixel black outline and 2 pixel offset shadow. This line is long so it should automatically be broken into several lines that are approximately even length, with upper lines being longer.
Dialogue: 0,0:00:07.00,0:00:09.00,Default,,0000,0000,0000,,Now going to test conflict resolution. {By the way, this is a common abuse, "inline-comments" in override tag groups. They should not be rendered and not generate errors, just be ignored.}
Dialogue: 0,0:00:07.50,0:00:09.00,Default,,0000,0000,0000,,This line should be above the previous.
Dialogue: 0,0:00:09.00,0:00:11.00,Default,,0000,0000,0000,,{\an1}This line should be lower-left aligned using the \an1 override.
Dialogue: 0,0:00:11.00,0:00:13.00,Default,,0000,0000,0000,,{\an9}Upper right
Dialogue: 0,0:00:12.00,0:00:14.00,Alt,,0000,0000,0000,,This one should be below the "Upper right" line and be centered on screen. It should also be in 40 pixel high Times New Roman.
Dialogue: 0,0:00:14.00,0:00:16.00,Alt,,0000,0000,0000,,{\fs10}This should also be a toptitle in Times New Roman, but much smaller. Using an override tag to change size.
Dialogue: 0,0:00:16.00,0:00:18.00,Alt,,0000,0000,0000,,{\a5}Top-left using the legacy \a5 tag
Dialogue: 0,0:00:18.00,0:00:20.00,Default,,0000,0000,0000,,{\an5}This line is centered on screen.\NAt the bottom of the screen should be two lines in different layers, they are rendered on top of each other because conflict resolution only considers lines in the same layer.
Dialogue: 0,0:00:18.00,0:00:20.00,Default,,0000,0000,0000,,This is in layer 0
Dialogue: 1,0:00:18.00,0:00:20.00,Default,,0000,0000,0000,,And this line is in layer 1
Dialogue: 0,0:00:20.00,0:00:22.00,Default,,0000,0000,0000,,Another line in layer 0
Dialogue: 1,0:00:20.00,0:00:22.00,Default,,0050,0000,0020,,And this line is in layer 1, but has changed its margins so it isn't exactly centered, and it's raised above the other line.
Dialogue: 0,0:00:22.00,0:00:24.00,Default,,0000,0000,0000,,Switching {\fnTimes New Roman}font inline, {\r}and resetting styles
Dialogue: 0,0:00:24.00,0:00:26.00,Default,,0000,0000,0000,,Also {\rAlt}switching to a different style {\r}inline
Dialogue: 0,0:00:26.00,0:00:28.00,Default,,0000,0000,0000,,{\an5\pos(258,131)}Positioning... this line should be in an odd place
Dialogue: 0,0:00:26.00,0:00:28.00,Default,,0000,0000,0000,,{\an5\pos(222,338)\frz29.559}So should this one, and be rotated
Dialogue: 0,0:00:28.00,0:00:30.00,Default,,0000,0000,0000,,{\pos(371,314)\frz338.403\frx42\fry30\org(187,165)}Some more rotation tricks, this time in 3D and with a different origin
Dialogue: 0,0:00:30.00,0:00:32.00,Default,,0000,0000,0000,,{\an5\t(\frz360)}This line is animated and rotates 360 degrees over its duration
Dialogue: 0,0:00:32.00,0:00:34.00,Default,,0000,0000,0000,,{\an5\move(182,157,414,311)}This line moves
Dialogue: 0,0:00:34.00,0:00:36.00,Default,,0000,0000,0000,,{\an5\clip(126,192,487,241)}This line is only partially visible\Nso if you can see this, \clip is handled incorrectly
Dialogue: 0,0:00:36.00,0:00:38.00,Default,,0000,0000,0000,,{\an5\clip(m 178 212 l 163 249 212 302 257 232 309 249 366 241 392 285 473 267 487 210 421 241 353 219 207 258)}And this line has a funnily-shaped clip area
Dialogue: 0,0:00:38.00,0:00:40.00,Default,,0000,0000,0000,,{\an5\pos(321,193)}Here should be a pretty feather with a thin border and no shadow:
Dialogue: 0,0:00:38.00,0:00:40.00,Default,,0000,0000,0000,,{\an5\bord1\shad0\p1\fscx300\fscy300\pos(316,312)}m 0 0 b 33 -3 48 -7 61 -19 b 53 -7 31 -1 1 2 m 9 0 b 9 -5 10 -6 14 -12 b 9 -5 10 -3 10 0 m 10 -1 b 10 -5 11 -8 16 -12 b 17 -12 18 -13 22 -14 b 18 -10 16 -6 15 -1 b 17 -6 19 -10 23 -14 l 26 -15 b 22 -11 20 -6 19 -2 b 24 -11 27 -14 28 -15 b 31 -16 35 -16 39 -16 b 37 -14 36 -10 36 -5 b 36 -9 38 -14 39 -16 b 41 -16 43 -16 45 -15 b 44 -13 43 -10 43 -7 l 29 -3 m 43 -7 b 44 -11 45 -13 47 -15 b 46 -13 46 -11 46 -9 b 46 -11 47 -13 49 -15 b 51 -15 48 -13 48 -9 b 49 -11 49 -14 52 -16 b 55 -16 53 -17 51 -11 l 48 -8 m 54 -13 b 53 -14 54 -15 54 -16 b 54 -15 54 -14 55 -13 b 57 -13 60 -12 62 -14 b 61 -12 55 -12 53 -12 b 55 -11 56 -10 61 -10 b 61 -7 53 -9 52 -11 b 53 -8 55 -7 58 -6 b 57 -5 56 -4 54 -3 b 49 -5 48 -6 47 -9 b 47 -6 50 -4 53 -2 b 49 -3 47 -6 45 -8 b 46 -6 49 -3 52 -1 b 46 2 45 3 43 3 b 40 0 39 -3 40 -6 b 39 -3 39 1 42 3 b 40 6 36 1 34 -4 b 35 -1 36 2 38 5 b 32 7 26 9 22 8 b 19 5 17 2 16 -1 b 17 3 19 5 20 7 b 17 4 16 2 15 0 b 15 2 17 5 19 8 b 15 9 13 3 12 0 l 25 -2 l 42 -7 m 12 0 b 13 3 13 7 17 9 b 12 7 10 1 10 0
Dialogue: 0,0:00:40.00,0:00:42.00,Default,,0000,0000,0000,,Some other basic font style tests:\NNormal, {\b1}Boldface{\r}, {\i1}Italics{\r}, {\u1}Underline{\r}, {\s1}Strikethrough
Dialogue: 0,0:00:42.00,0:00:44.00,Default,,0000,0000,0000,,There should be no linebreak here,\nbut there should be one here\Nso this is on a separate line.
Dialogue: 0,0:00:44.00,0:00:46.00,Default,,0000,0000,0000,,This line is pushed left by adding some hard spaces to the right\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h\h
Dialogue: 0,0:00:44.00,0:00:46.00,Default,,0000,0000,0000,, Regular spaces at line start/end are ignored, so this line is centered
Dialogue: 0,0:00:46.00,0:00:48.00,Default,,0000,0000,0000,,{\an8\q2}This is a long line but it is not broken into several because it's using the \q override tag which changes the line-wrapping mode for a single line. The tag can take several values, 0 is the default which is "smart wrapping" with top lines longer, 1 is regular wrapping, 2 is no wrapping and 3 is smart-wrapping with bottom lines longer.
Dialogue: 0,0:00:46.00,0:00:48.00,Default,,0000,0000,0000,,{\an5\q1}This is a long line using the \q1 override tag to get "dumb" wrapping, make as long lines as possible and first wrap when it'd go off screen. This is mostly visible when the last line generated is short.
Dialogue: 0,0:00:46.00,0:00:48.00,Default,,0000,0000,0000,,{\q3}And this line uses the \q3 wrapping style, which is similar to the \q0 default smart-wrap style, but has lower lines longer than the upper ones.
Dialogue: 0,0:00:48.00,0:00:50.00,Default,,0000,0000,0000,,{\an5}{\bord0\t(\bord10)}This text has a growing border\N{\r\shad0\t(\shad10)}This text has an increasing shadow\N{\r\t(\fry360)}This text is rotating around the Y axis\N{\r\t(\frz720)}This text rotates {\t(\frx360)}and this one even more
Dialogue: 0,0:00:50.00,0:00:52.00,Default,,0000,0000,0000,,{\an5\bord0\shad0}All of this has no border or shadow...\N{\1c&H0000FF&}This is bright red, {\1c&H00FF00&}green, {\1c&HFF0000}blue{\1c&HFFFFFF&}\N{\1a&H80&}50% transparent
Dialogue: 0,0:00:52.00,0:00:54.00,Default,,0000,0000,0000,,{\fsp10}Large inter-letter spacing
Dialogue: 0,0:00:54.00,0:00:56.00,Default,,0000,0000,0000,,{\shad0}No shadow here, just regular border, {\be1}but this is \be1 blurred edges!
Dialogue: 0,0:00:56.00,0:00:58.00,Default,,0000,0000,0000,,{\t(1000,2000,\alpha&HFF&)}Fading out after 1 sec on screen, using \alpha. Everything should fade.
Dialogue: 0,0:00:58.00,0:01:00.00,Default,,0000,0000,0000,,{\fad(1000,1000)}Fading in and out using \fad
Dialogue: 0,0:01:00.00,0:01:02.00,Default,,0000,0000,0000,,{\k10}And {\k5}now {\k20}for {\kf50}ka{\kf20}ra{\K70}o{\K10}ke{\k0}!
Dialogue: 0,0:01:02.00,0:01:04.00,Default,,0000,0000,0000,,{\an5\t()\clip(69,215,573,267)\t(1000,2000,3,\clip(573,267,573,267))}And the last thing on the programme, an animated rectangular \clip, delayed by 1 second. And it even uses acceleration...!
Binary file not shown.
+52
View File
@@ -0,0 +1,52 @@
import type Artplayer from 'artplayer';
export = artplayerPluginAds;
export as namespace artplayerPluginAds;
type Option = {
/**
* 广告源文本,支持视频链接、图片链接、HTML文本
*/
source: string;
/**
* 知名广告的类型:'video' | 'image' | 'html'
*/
type: 'video' | 'image' | 'html';
/**
* 广告必看的时长,单位为秒
*/
playDuration?: number;
/**
* 广告总的时长,单位为秒
*/
totalDuration?: number;
/**
* 视频广告是否默认静音
*/
muted?: boolean;
};
type Ads = {
name: 'artplayerPluginAds';
/**
* 跳过广告
*/
skip: () => void;
/**
* 暂停广告
*/
pause: () => void;
/**
* 播放广告
*/
play: () => void;
};
declare const artplayerPluginAds: (option: Option) => (art: Artplayer) => Ads;
+17
View File
@@ -0,0 +1,17 @@
import type Artplayer from 'artplayer';
export = artplayerPluginChromecast;
export as namespace artplayerPluginChromecast;
type Option = {
url?: string;
sdk?: string;
icon?: string;
mimeType?: string;
};
type Chromecast = {
name: 'artplayerPluginChromecast';
};
declare const artplayerPluginChromecast: (option: Option) => (art: Artplayer) => Chromecast;
+214
View File
@@ -0,0 +1,214 @@
import type Artplayer from 'artplayer';
export = artplayerPluginDanmuku;
export as namespace artplayerPluginDanmuku;
type Mode = 0 | 1 | 2;
type Danmu = {
/**
* 弹幕文本
*/
text: string;
/**
* 弹幕发送模式: 0: 滚动,1: 顶部,2: 底部
*/
mode?: Mode;
/**
* 弹幕颜色
*/
color?: string;
/**
* 弹幕出现的时间,单位为秒
*/
time?: number;
/**
* 弹幕是否有描边, 默认为 false
*/
border?: boolean;
/**
* 弹幕自定义样式
*/
style?: Partial<CSSStyleDeclaration>;
/**
* 弹幕文本是否转义, 默认为 true
*/
escape?: boolean;
};
type Option = {
/**
* 弹幕数据: 函数,数组,Promise,URL
*/
danmuku: Danmu[] | string | (() => Promise<Danmu[]>) | Promise<Danmu[]>;
/**
* 弹幕持续时间,范围在[1 ~ 10]
*/
speed?: number;
/**
* 弹幕上下边距,支持像素数字和百分比
*/
margin?: [number | `${number}%`, number | `${number}%`];
/**
* 弹幕透明度,范围在[0 ~ 1]
*/
opacity?: number;
/**
* 默认弹幕颜色,可以被单独弹幕项覆盖
*/
color?: string;
/**
* 弹幕模式: 0: 滚动,1: 顶部,2: 底部
*/
mode?: Mode;
/**
* 弹幕可见的模式
*/
modes?: Mode[];
/**
* 弹幕字体大小,支持像素数字和百分比
*/
fontSize?: number | `${number}%`;
/**
* 弹幕是否防重叠
*/
antiOverlap?: boolean;
/**
* 是否同步播放速度
*/
synchronousPlayback?: boolean;
/**
* 弹幕发射器挂载点, 默认为播放器控制栏中部
*/
mount?: HTMLDivElement | string;
/**
* 是否开启弹幕热度图
*/
heatmap?:
| boolean
| {
xMin?: number;
xMax?: number;
yMin?: number;
yMax?: number;
scale?: number;
opacity?: number;
minHeight?: number;
sampling?: number;
smoothing?: number;
flattening?: number;
};
/**
* 热力图数据
*/
points?: any[];
/**
* 弹幕载入前的过滤器,只支持返回布尔值
*/
filter?: (danmu: Danmu) => boolean;
/**
* 弹幕发送前的过滤器,支持返回 Promise
*/
beforeEmit?: (danmu: Danmu) => boolean | Promise<boolean>;
/**
* 弹幕显示前的过滤器,支持返回 Promise
*/
beforeVisible?: (danmu: Danmu) => boolean | Promise<boolean>;
/**
* 弹幕是否可见
*/
visible?: boolean;
/**
* 弹幕输入框最大长度, 范围在[1 ~ 1000]
*/
maxLength?: number;
/**
* 输入框锁定时间,范围在[1 ~ 60]
*/
lockTime?: number;
/**
* 弹幕主题,只在自定义挂载时生效
*/
theme?: 'light' | 'dark';
};
type Danmuku = {
name: 'artplayerPluginDanmuku';
/**
* 发送一条实时弹幕
*/
emit: (danmu: Danmu) => Danmuku;
/**
* 重载弹幕源,或者切换新弹幕
*/
load: () => Promise<Danmuku>;
/**
* 实时改变弹幕配置
*/
config: (option: Option) => Danmuku;
/**
* 隐藏弹幕层
*/
hide: () => Danmuku;
/**
* 显示弹幕层
*/
show: () => Danmuku;
/**
* 挂载弹幕输入框
*/
mount: (el?: HTMLDivElement | string) => void;
/**
* 重置弹幕
*/
reset: () => Danmuku;
/**
* 弹幕配置
*/
option: Option;
/**
* 是否隐藏弹幕层
*/
isHide: boolean;
/**
* 是否弹幕层停止状态
*/
isStop: boolean;
};
declare const artplayerPluginDanmuku: (option: Option) => (art: Artplayer) => Danmuku;
+14
View File
@@ -0,0 +1,14 @@
import type Artplayer from 'artplayer';
export = artplayerPluginDashQuality;
export as namespace artplayerPluginDashQuality;
declare const artplayerPluginDashQuality: (option: {
control?: boolean;
setting?: boolean;
title?: string;
auto?: string;
getResolution?(level: any): String;
}) => (art: Artplayer) => {
name: 'artplayerPluginDashQuality';
};
@@ -8,6 +8,7 @@ declare const artplayerPluginHlsQuality: (option: {
setting?: boolean;
title?: string;
auto?: string;
getResolution?(level: any): String;
}) => (art: Artplayer) => {
name: 'artplayerPluginHlsQuality';
};
+30
View File
@@ -0,0 +1,30 @@
export = ArtplayerPluginIframe;
export as namespace ArtplayerPluginIframe;
type Message = {
type: string;
data: any;
id?: number;
};
declare class ArtplayerPluginIframe {
constructor(option: { iframe: HTMLIFrameElement; url: string });
static iframe: boolean;
static postMessage(message: Message): void;
static onMessage(event: MessageEvent & { data: Message }): void;
static inject(): void;
readonly promises: Record<number, { resove: Function; reject: Function }>;
readonly injected: boolean;
readonly destroyed: boolean;
readonly $iframe: HTMLIFrameElement;
readonly url: string;
readonly messageCallback: (...args: any[]) => any;
onMessage(event: MessageEvent & { data: Message }): void;
postMessage(message: Message): Promise<any>;
commit<T extends (...args: any[]) => any>(callback: T): Promise<ReturnType<T>>;
message(callback: (...args: any[]) => any): void;
destroy(): void;
}
+17
View File
@@ -0,0 +1,17 @@
import type Artplayer from 'artplayer';
import type SubtitlesOctopus from '@hrgui/libass-wasm-ts';
import { type Options } from 'libass-wasm';
export = artplayerPluginAss;
export as namespace artplayerPluginAss;
declare const artplayerPluginAss: (options: Options) => (art: Artplayer) => {
name: 'artplayerPluginLibass';
libass: SubtitlesOctopus;
visible: boolean;
init: () => void;
switch: (url: string) => void;
show: () => void;
hide: () => void;
destroy: () => void;
};
+16
View File
@@ -0,0 +1,16 @@
import type Artplayer from 'artplayer';
export = artplayerPluginMultipleSubtitles;
export as namespace artplayerPluginMultipleSubtitles;
declare const artplayerPluginMultipleSubtitles: (option: {
subtitles: {
url?: string;
name?: string;
type?: 'vtt' | 'srt' | 'ass';
encoding?: string;
onParser?(...args: object[]): object;
}[];
}) => (art: Artplayer) => {
name: 'multipleSubtitles';
};
+818 -704
View File
File diff suppressed because it is too large. Load diff
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:01]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video-1s.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:02]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video-2s.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:04]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

+31
View File
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<NonLinearAds>
<NonLinear width="728" height="90" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-728x90.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
<NonLinear width="480" height="70" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-480x70.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
<NonLinear width="320" height="50" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-320x50.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
</NonLinearAds>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+39
View File
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper fallbackOnNoAd="true">
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="0"/>
</Extensions>
</Wrapper>
</Ad>
<Ad>
<Wrapper fallbackOnNoAd="true">
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[does-not-exist]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="1"/>
</Extensions>
</Wrapper>
</Ad>
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="2"/>
</Extensions>
</Wrapper>
</Ad>
</VAST>
+80
View File
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<VMAP xmlns:vmap="http://www.iab.net/vmap-1.0" version="1.0">
<vmap:AdBreak timeOffset="start" breakType="linear" breakId="start-0">
<vmap:AdSource id="start-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad sequence="1">
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
<Ad sequence="2">
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="00:00:05.000" breakType="linear" breakId="midroll-0">
<vmap:AdSource id="midroll-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/nonlinear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="00:00:15.000" breakType="linear" breakId="midroll-1">
<vmap:AdSource id="midroll-1" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="end" breakType="linear" breakId="postroll-0">
<vmap:AdSource id="postroll-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
</VMAP>
+1 -7
View File
@@ -1,7 +1 @@
/*!
* artplayer-plugin-ads.js v1.0.6
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2023 Harvey Zack
* Released under the MIT License.
*/
!function(e,n,l,t,i){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r="function"==typeof a[t]&&a[t],o=r.cache||{},d="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function s(n,l){if(!o[n]){if(!e[n]){var i="function"==typeof a[t]&&a[t];if(!l&&i)return i(n,!0);if(r)return r(n,!0);if(d&&"string"==typeof n)return d(n);var p=new Error("Cannot find module '"+n+"'");throw p.code="MODULE_NOT_FOUND",p}c.resolve=function(l){var t=e[n][1][l];return null!=t?t:l},c.cache={};var u=o[n]=new s.Module(n);e[n][0].call(u.exports,c,u,u.exports,this)}return o[n].exports;function c(e){var n=c.resolve(e);return!1===n?{}:s(n)}}s.isParcelRequire=!0,s.Module=function(e){this.id=e,this.bundle=s,this.exports={}},s.modules=e,s.cache=o,s.parent=r,s.register=function(n,l){e[n]=[function(e,n){n.exports=l},{}]},Object.defineProperty(s,"root",{get:function(){return a[t]}}),a[t]=s;for(var p=0;p<n.length;p++)s(n[p]);if(l){var u=s(l);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define((function(){return u}))}}({hUYA0:[function(e,n,l){var t=e("@parcel/transformer-js/src/esmodule-helpers.js");t.defineInteropFlag(l);var i=e("bundle-text:./style.less"),a=t.interopDefault(i);function r(e){return n=>{const{template:{$player:l},icons:{volume:t,volumeClose:i,fullscreenOn:a,fullscreenOff:r,loading:o},constructor:{validator:d,utils:{query:s,append:p,setStyle:u}}}=n;e=d({html:"",video:"",url:"",playDuration:5,totalDuration:10,muted:!1,i18n:{close:"关闭广告",countdown:"%s秒",detail:"查看详情",canBeClosed:"%s秒后可关闭广告"},...e},{html:"?string",video:"?string",url:"?string",playDuration:"number",totalDuration:"number",muted:"?boolean",i18n:{close:"string",countdown:"string",detail:"string",canBeClosed:"string"}});let c=null,y=null,f=null,g=null,m=null,v=null,x=0,h=null,b=!1,w=!1,D=!1;function j(e,n){return n.replace("%s",e)}function k(){b=!0,n.play(),e.video&&c.pause(),u(n.template.$ads,"display","none"),n.emit("artplayerPluginAds:skip",e)}function $(){b||(h=setTimeout((()=>{x+=1;const n=e.playDuration-x;n>=1?f.innerHTML=j(n,e.i18n.canBeClosed):(f.innerHTML=e.i18n.close,D||(D=!0)),g.innerHTML=j(e.totalDuration-x,e.i18n.countdown),x>=e.totalDuration?k():$()}),1e3))}function O(){b||clearTimeout(h)}function P(){w||(w=!0,function(){n.template.$ads=p(l,'<div class="artplayer-plugin-ads"></div>'),c=p(n.template.$ads,e.video?`<video class="artplayer-plugin-ads-video" src="${e.video}" loop playsInline></video>`:`<div class="artplayer-plugin-ads-html">${e.html}</div>`),v=p(n.template.$ads,'<div class="artplayer-plugin-ads-loading"></div>'),p(v,o),y=p(n.template.$ads,`<div class="artplayer-plugin-ads-timer"><div class="artplayer-plugin-ads-close">${e.playDuration<=0?e.i18n.close:j(e.playDuration,e.i18n.canBeClosed)}</div><div class="artplayer-plugin-ads-countdown">${j(e.totalDuration,e.i18n.countdown)}</div></div>`),f=s(".artplayer-plugin-ads-close",y),g=s(".artplayer-plugin-ads-countdown",y),e.playDuration>=e.totalDuration&&u(f,"display","none"),n.proxy(f,"click",(()=>{D&&k()})),m=p(n.template.$ads,`<div class="artplayer-plugin-ads-control"><div class="artplayer-plugin-ads-detail">${e.i18n.detail}</div><div class="artplayer-plugin-ads-muted"></div><div class="artplayer-plugin-ads-fullscreen"></div></div>`);const d=s(".artplayer-plugin-ads-detail",m),x=s(".artplayer-plugin-ads-muted",m),h=s(".artplayer-plugin-ads-fullscreen",m);if(e.url?n.proxy(d,"click",(()=>{window.open(e.url),n.emit("artplayerPluginAds:click",e)})):u(d,"display","none"),e.video){const l=p(x,t),a=p(x,i);u(a,"display","none"),e.muted&&(c.muted=!0,u(l,"display","none"),u(a,"display","inline-flex")),n.proxy(x,"click",(()=>{c.muted=!c.muted,c.muted?(u(l,"display","none"),u(a,"display","inline-flex")):(u(l,"display","inline-flex"),u(a,"display","none"))}))}else u(x,"display","none");const b=p(h,a),w=p(h,r);u(w,"display","none"),n.proxy(h,"click",(()=>{n.fullscreen=!n.fullscreen,n.fullscreen?(u(b,"display","inline-flex"),u(w,"display","none")):(u(b,"display","none"),u(w,"display","inline-flex"))})),n.proxy(c,"click",(()=>{e.url&&window.open(e.url),n.emit("artplayerPluginAds:click",e)}))}(),n.pause(),e.video?(n.proxy(c,"error",k),n.proxy(c,"loadedmetadata",(()=>{$(),c.play(),u(y,"display","flex"),u(m,"display","flex"),u(v,"display","none")}))):($(),u(y,"display","flex"),u(m,"display","flex"),u(v,"display","none")),n.proxy(document,"visibilitychange",(()=>{document.hidden?O():$()})))}return n.on("ready",(()=>{n.once("play",P),n.once("video:playing",P)})),{name:"artplayerPluginAds",skip:k,pause:O,play:$}}}if(l.default=r,r.env="production",r.version="1.0.6",r.build="2023-01-26 15:27:03","undefined"!=typeof document&&!document.getElementById("artplayer-plugin-ads")){const e=document.createElement("style");e.id="artplayer-plugin-ads",e.textContent=a.default,document.head.appendChild(eLine truncated
/*! * artplayer-plugin-ads.js v2.0.0 * Github:https://github.com/zhw2590582/ArtPlayer * (c) 2017-2024 Harvey Zack * Released under the MIT License. */ !function(e,n,l,t,i){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r="function"==typeof a[t]&&a[t],o=r.cache||{},d="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(n,l){if(!o[n]){if(!e[n]){var i="function"==typeof a[t]&&a[t];if(!l&&i)return i(n,!0);if(r)return r(n,!0);if(d&&"string"==typeof n)return d(n);var s=Error("Cannot find module '"+n+"'");throw s.code="MODULE_NOT_FOUND",s}c.resolve=function(l){var t=e[n][1][l];return null!=t?t:l},c.cache={};var u=o[n]=new p.Module(n);e[n][0].call(u.exports,c,u,u.exports,this)}return o[n].exports;function c(e){var n=c.resolve(e);return!1===n?{}:p(n)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=o,p.parent=r,p.register=function(n,l){e[n]=[function(e,n){n.exports=l},{}]},Object.defineProperty(p,"root",{get:function(){return a[t]}}),a[t]=p;for(var s=0;s<n.length;s++)p(n[s]);if(l){var u=p(l);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define(function(){return u})}}({hUYA0:[function(e,n,l){var t=e("@parcel/transformer-js/src/esmodule-helpers.js");t.defineInteropFlag(l),t.export(l,"default",()=>r);var i=e("bundle-text:./style.less"),a=t.interopDefault(i);function r(e){return n=>{!function(e){let{version:n,utils:{errorHandle:l}}=e.constructor,t=n.split(".").map(Number);l(t[0]+t[1]/100>=5,`Artplayer.js@${n}is not compatible the artplayerPluginAds@${r.version}. Please update it to version Artplayer.js@5.x.x`)}(n);let{template:{$player:l},icons:{volume:t,volumeClose:i,fullscreenOn:a,fullscreenOff:o,loading:d},constructor:{validator:p,utils:{query:s,append:u,setStyle:c}}}=n;e=p({html:"",video:"",url:"",playDuration:5,totalDuration:10,muted:!1,i18n:{close:"关闭广告",countdown:"%s秒",detail:"查看详情",canBeClosed:"%s秒后可关闭广告"},...e},{html:"?string",video:"?string",url:"?string",playDuration:"number",totalDuration:"number",muted:"?boolean",i18n:{close:"string",countdown:"string",detail:"string",canBeClosed:"string"}});let y=null,f=null,g=null,m=null,x=null,v=null,h=0,b=null,w=!1,j=!1,D=!1;function P(e,n){return n.replace("%s",e)}function $(){w=!0,n.play(),e.video&&y.pause(),c(n.template.$ads,"display","none"),n.emit("artplayerPluginAds:skip",e)}function k(){w||(b=setTimeout(()=>{h+=1;let n=e.playDuration-h;n>=1?g.innerHTML=P(n,e.i18n.canBeClosed):(g.innerHTML=e.i18n.close,D||(D=!0)),m.innerHTML=P(e.totalDuration-h,e.i18n.countdown),h>=e.totalDuration?$():k()},1e3))}function A(){w||clearTimeout(b)}function O(){j||(j=!0,function(){n.template.$ads=u(l,'<div class="artplayer-plugin-ads"></div>'),y=u(n.template.$ads,e.video?`<video class="artplayer-plugin-ads-video" src="${e.video}" loop playsInline></video>`:`<div class="artplayer-plugin-ads-html">${e.html}</div>`),v=u(n.template.$ads,'<div class="artplayer-plugin-ads-loading"></div>'),u(v,d),g=s(".artplayer-plugin-ads-close",f=u(n.template.$ads,`<div class="artplayer-plugin-ads-timer"><div class="artplayer-plugin-ads-close">${e.playDuration<=0?e.i18n.close:P(e.playDuration,e.i18n.canBeClosed)}</div><div class="artplayer-plugin-ads-countdown">${P(e.totalDuration,e.i18n.countdown)}</div></div>`)),m=s(".artplayer-plugin-ads-countdown",f),e.playDuration>=e.totalDuration&&c(g,"display","none"),n.proxy(g,"click",()=>{D&&$()});let r=s(".artplayer-plugin-ads-detail",x=u(n.template.$ads,`<div class="artplayer-plugin-ads-control"><div class="artplayer-plugin-ads-detail">${e.i18n.detail}</div><div class="artplayer-plugin-ads-muted"></div><div class="artplayer-plugin-ads-fullscreen"></div></div>`)),p=s(".artplayer-plugin-ads-muted",x),h=s(".artplayer-plugin-ads-fullscreen",x);if(e.url?n.proxy(r,"click",()=>{window.open(e.url),n.emit("artplayerPluginAds:click",e)}):c(r,"display","none"),e.video){let l=u(p,t),a=u(p,i);c(a,"display","none"),e.muted&&(y.muted=!0,c(l,"display","none"),c(a,"display","inline-flex")),n.proxy(p,"click",()=>{y.muted=!y.muted,y.muted?(c(l,"display","none"),c(a,"display","inline-flex")):(c(l,"display","inline-flex"),c(a,"display","none"))})}else c(p,"display","none");let b=u(h,a),w=u(h,o);c(w,"display","none"),n.proxy(h,"click",()=>{n.fullscreen=!n.fullscreen,n.fullscreen?(c(b,"display","inline-flex"),c(w,"display","none")):(c(b,"display","none"),c(w,"display","inline-flex"))}),n.proxy(y,"click",()=>{e.url&&window.open(e.url),n.emit("artplayerPluginAds:click",e)})}(),n.pause(),e.video?(n.proxy(y,"error",$),n.proxy(y,"loadedmetadata",()=>{k(),y.play(),c(f,"display","flex"),c(x,"display","flex"),c(v,"display","none")})):(k(),c(f,"display","flex"),c(x,"display","flex"),c(v,"display","none")),n.proxy(document,"visibilitychange",()=>{document.hidden?A():k()}))}return n.on("ready",()=>{Line truncated
+1 -7
View File
@@ -1,7 +1 @@
/*!
* artplayer-plugin-ads.js v1.0.6
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2023 Harvey Zack
* Released under the MIT License.
*/
!function(e,n,l,t,i){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r="function"==typeof a[t]&&a[t],o=r.cache||{},d="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function s(n,l){if(!o[n]){if(!e[n]){var i="function"==typeof a[t]&&a[t];if(!l&&i)return i(n,!0);if(r)return r(n,!0);if(d&&"string"==typeof n)return d(n);var p=new Error("Cannot find module '"+n+"'");throw p.code="MODULE_NOT_FOUND",p}c.resolve=function(l){var t=e[n][1][l];return null!=t?t:l},c.cache={};var u=o[n]=new s.Module(n);e[n][0].call(u.exports,c,u,u.exports,this)}return o[n].exports;function c(e){var n=c.resolve(e);return!1===n?{}:s(n)}}s.isParcelRequire=!0,s.Module=function(e){this.id=e,this.bundle=s,this.exports={}},s.modules=e,s.cache=o,s.parent=r,s.register=function(n,l){e[n]=[function(e,n){n.exports=l},{}]},Object.defineProperty(s,"root",{get:function(){return a[t]}}),a[t]=s;for(var p=0;p<n.length;p++)s(n[p]);if(l){var u=s(l);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define((function(){return u}))}}({hs8jd:[function(e,n,l){var t=e("@parcel/transformer-js/src/esmodule-helpers.js");t.defineInteropFlag(l);var i=e("bundle-text:./style.less"),a=t.interopDefault(i);function r(e){return n=>{const{template:{$player:l},icons:{volume:t,volumeClose:i,fullscreenOn:a,fullscreenOff:r,loading:o},constructor:{validator:d,utils:{query:s,append:p,setStyle:u}}}=n;e=d({html:"",video:"",url:"",playDuration:5,totalDuration:10,muted:!1,i18n:{close:"关闭广告",countdown:"%s秒",detail:"查看详情",canBeClosed:"%s秒后可关闭广告"},...e},{html:"?string",video:"?string",url:"?string",playDuration:"number",totalDuration:"number",muted:"?boolean",i18n:{close:"string",countdown:"string",detail:"string",canBeClosed:"string"}});let c=null,y=null,f=null,g=null,m=null,v=null,x=0,h=null,b=!1,w=!1,D=!1;function j(e,n){return n.replace("%s",e)}function k(){b=!0,n.play(),e.video&&c.pause(),u(n.template.$ads,"display","none"),n.emit("artplayerPluginAds:skip",e)}function P(){b||(h=setTimeout((()=>{x+=1;const n=e.playDuration-x;n>=1?f.innerHTML=j(n,e.i18n.canBeClosed):(f.innerHTML=e.i18n.close,D||(D=!0)),g.innerHTML=j(e.totalDuration-x,e.i18n.countdown),x>=e.totalDuration?k():P()}),1e3))}function $(){b||clearTimeout(h)}function O(){w||(w=!0,function(){n.template.$ads=p(l,'<div class="artplayer-plugin-ads"></div>'),c=p(n.template.$ads,e.video?`<video class="artplayer-plugin-ads-video" src="${e.video}" loop playsInline></video>`:`<div class="artplayer-plugin-ads-html">${e.html}</div>`),v=p(n.template.$ads,'<div class="artplayer-plugin-ads-loading"></div>'),p(v,o),y=p(n.template.$ads,`<div class="artplayer-plugin-ads-timer"><div class="artplayer-plugin-ads-close">${e.playDuration<=0?e.i18n.close:j(e.playDuration,e.i18n.canBeClosed)}</div><div class="artplayer-plugin-ads-countdown">${j(e.totalDuration,e.i18n.countdown)}</div></div>`),f=s(".artplayer-plugin-ads-close",y),g=s(".artplayer-plugin-ads-countdown",y),e.playDuration>=e.totalDuration&&u(f,"display","none"),n.proxy(f,"click",(()=>{D&&k()})),m=p(n.template.$ads,`<div class="artplayer-plugin-ads-control"><div class="artplayer-plugin-ads-detail">${e.i18n.detail}</div><div class="artplayer-plugin-ads-muted"></div><div class="artplayer-plugin-ads-fullscreen"></div></div>`);const d=s(".artplayer-plugin-ads-detail",m),x=s(".artplayer-plugin-ads-muted",m),h=s(".artplayer-plugin-ads-fullscreen",m);if(e.url?n.proxy(d,"click",(()=>{window.open(e.url),n.emit("artplayerPluginAds:click",e)})):u(d,"display","none"),e.video){const l=p(x,t),a=p(x,i);u(a,"display","none"),e.muted&&(c.muted=!0,u(l,"display","none"),u(a,"display","inline-flex")),n.proxy(x,"click",(()=>{c.muted=!c.muted,c.muted?(u(l,"display","none"),u(a,"display","inline-flex")):(u(l,"display","inline-flex"),u(a,"display","none"))}))}else u(x,"display","none");const b=p(h,a),w=p(h,r);u(w,"display","none"),n.proxy(h,"click",(()=>{n.fullscreen=!n.fullscreen,n.fullscreen?(u(b,"display","inline-flex"),u(w,"display","none")):(u(b,"display","none"),u(w,"display","inline-flex"))})),n.proxy(c,"click",(()=>{e.url&&window.open(e.url),n.emit("artplayerPluginAds:click",e)}))}(),n.pause(),e.video?(n.proxy(c,"error",k),n.proxy(c,"loadedmetadata",(()=>{P(),c.play(),u(y,"display","flex"),u(m,"display","flex"),u(v,"display","none")}))):(P(),u(y,"display","flex"),u(m,"display","flex"),u(v,"display","none")),n.proxy(document,"visibilitychange",(()=>{document.hidden?$():P()})))}return n.on("ready",(()=>{n.once("play",O),n.once("video:playing",O)})),{name:"artplayerPluginAds",skip:k,pause:$,play:P}}}if(l.default=r,r.env="production",r.version="1.0.6",r.build="2023-01-26 15:27:04","undefined"!=typeof document&&!document.getElementById("artplayer-plugin-ads")){const e=document.createElement("style");e.id="artplayer-plugin-ads",e.textContent=a.default,document.head.appendChild(eLine truncated
/*! * artplayer-plugin-ads.js v2.0.0 * Github:https://github.com/zhw2590582/ArtPlayer * (c) 2017-2024 Harvey Zack * Released under the MIT License. */ !function(e,n,t,r,l){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a="function"==typeof i[r]&&i[r],o=a.cache||{},s="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(n,t){if(!o[n]){if(!e[n]){var l="function"==typeof i[r]&&i[r];if(!t&&l)return l(n,!0);if(a)return a(n,!0);if(s&&"string"==typeof n)return s(n);var d=Error("Cannot find module '"+n+"'");throw d.code="MODULE_NOT_FOUND",d}c.resolve=function(t){var r=e[n][1][t];return null!=r?r:t},c.cache={};var u=o[n]=new p.Module(n);e[n][0].call(u.exports,c,u,u.exports,this)}return o[n].exports;function c(e){var n=c.resolve(e);return!1===n?{}:p(n)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=o,p.parent=a,p.register=function(n,t){e[n]=[function(e,n){n.exports=t},{}]},Object.defineProperty(p,"root",{get:function(){return i[r]}}),i[r]=p;for(var d=0;d<n.length;d++)p(n[d]);if(t){var u=p(t);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define(function(){return u})}}({"69VIU":[function(e,n,t){var r=e("@parcel/transformer-js/src/esmodule-helpers.js");r.defineInteropFlag(t),r.export(t,"default",function(){return o});var l=e("@swc/helpers/_/_object_spread"),i=e("bundle-text:./style.less"),a=r.interopDefault(i);function o(e){return function(n){r=(t=n.constructor).version,(0,t.utils.errorHandle)((i=r.split(".").map(Number))[0]+i[1]/100>=5,"Artplayer.js@".concat(r," is not compatible the artplayerPluginAds@").concat(o.version,". Please update it to version Artplayer.js@5.x.x"));var t,r,i,a=n.template.$player,s=n.icons,p=s.volume,d=s.volumeClose,u=s.fullscreenOn,c=s.fullscreenOff,f=s.loading,y=n.constructor,g=y.validator,m=y.utils,v=m.query,h=m.append,x=m.setStyle;e=g((0,l._)({html:"",video:"",url:"",playDuration:5,totalDuration:10,muted:!1,i18n:{close:"关闭广告",countdown:"%s秒",detail:"查看详情",canBeClosed:"%s秒后可关闭广告"}},e),{html:"?string",video:"?string",url:"?string",playDuration:"number",totalDuration:"number",muted:"?boolean",i18n:{close:"string",countdown:"string",detail:"string",canBeClosed:"string"}});var b=null,j=null,w=null,_=null,D=null,O=null,P=0,k=null,A=!1,I=!1,M=!1;function C(e,n){return n.replace("%s",e)}function L(){A=!0,n.play(),e.video&&b.pause(),x(n.template.$ads,"display","none"),n.emit("artplayerPluginAds:skip",e)}function T(){A||(k=setTimeout(function(){P+=1;var n=e.playDuration-P;n>=1?w.innerHTML=C(n,e.i18n.canBeClosed):(w.innerHTML=e.i18n.close,M||(M=!0)),_.innerHTML=C(e.totalDuration-P,e.i18n.countdown),P>=e.totalDuration?L():T()},1e3))}function F(){A||clearTimeout(k)}function U(){I||(I=!0,function(){n.template.$ads=h(a,'<div class="artplayer-plugin-ads"></div>'),b=h(n.template.$ads,e.video?'<video class="artplayer-plugin-ads-video" src="'.concat(e.video,'" loop playsInline></video>'):'<div class="artplayer-plugin-ads-html">'.concat(e.html,"</div>")),O=h(n.template.$ads,'<div class="artplayer-plugin-ads-loading"></div>'),h(O,f),w=v(".artplayer-plugin-ads-close",j=h(n.template.$ads,'<div class="artplayer-plugin-ads-timer">\n<div class="artplayer-plugin-ads-close">'.concat(e.playDuration<=0?e.i18n.close:C(e.playDuration,e.i18n.canBeClosed),'</div>\n<div class="artplayer-plugin-ads-countdown">').concat(C(e.totalDuration,e.i18n.countdown),"</div>\n</div>"))),_=v(".artplayer-plugin-ads-countdown",j),e.playDuration>=e.totalDuration&&x(w,"display","none"),n.proxy(w,"click",function(){M&&L()});var t=v(".artplayer-plugin-ads-detail",D=h(n.template.$ads,'<div class="artplayer-plugin-ads-control">\n<div class="artplayer-plugin-ads-detail">'.concat(e.i18n.detail,'</div>\n<div class="artplayer-plugin-ads-muted"></div>\n<div class="artplayer-plugin-ads-fullscreen"></div>\n</div>'))),r=v(".artplayer-plugin-ads-muted",D),l=v(".artplayer-plugin-ads-fullscreen",D);if(e.url?n.proxy(t,"click",function(){window.open(e.url),n.emit("artplayerPluginAds:click",e)}):x(t,"display","none"),e.video){var i=h(r,p),o=h(r,d);x(o,"display","none"),e.muted&&(b.muted=!0,x(i,"display","none"),x(o,"display","inline-flex")),n.proxy(r,"click",function(){b.muted=!b.muted,b.muted?(x(i,"display","none"),x(o,"display","inline-flex")):(x(i,"display","inline-flex"),x(o,"display","none"))})}else x(r,"display","none");var s=h(l,u),y=h(l,c);x(y,"display","none"),n.proxy(l,"click",function(){n.fullscreen=!n.fullscreen,n.fullscreen?(x(s,"display","inline-flex"),x(y,"display","none")):(x(s,"display","none"),x(y,"display","inline-flex"))}),n.proxy(b,"click",function(){e.url&&window.open(e.url),n.emit("artplayerPluginAds:click",e)})}(),n.pause(),e.video?(n.proxy(b,"error",L),n.proxy(b,"loadedmetadata",function(){T(),b.play(),x(j,"display","flex"),x(D,"display","Line truncated
@@ -0,0 +1,8 @@
/*!
* artplayer-plugin-ambilight.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(e,t,n,r,o){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},u="function"==typeof i[r]&&i[r],l=u.cache||{},f="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function a(t,n){if(!l[t]){if(!e[t]){var o="function"==typeof i[r]&&i[r];if(!n&&o)return o(t,!0);if(u)return u(t,!0);if(f&&"string"==typeof t)return f(t);var d=Error("Cannot find module '"+t+"'");throw d.code="MODULE_NOT_FOUND",d}p.resolve=function(n){var r=e[t][1][n];return null!=r?r:n},p.cache={};var c=l[t]=new a.Module(t);e[t][0].call(c.exports,p,c,c.exports,this)}return l[t].exports;function p(e){var t=p.resolve(e);return!1===t?{}:a(t)}}a.isParcelRequire=!0,a.Module=function(e){this.id=e,this.bundle=a,this.exports={}},a.modules=e,a.cache=l,a.parent=u,a.register=function(t,n){e[t]=[function(e,t){t.exports=n},{}]},Object.defineProperty(a,"root",{get:function(){return i[r]}}),i[r]=a;for(var d=0;d<t.length;d++)a(t[d]);if(n){var c=a(n);"object"==typeof exports&&"undefined"!=typeof module?module.exports=c:"function"==typeof define&&define.amd&&define(function(){return c})}}({"4TtJY":[function(e,t,n){var r=e("@parcel/transformer-js/src/esmodule-helpers.js");function o(e={}){return t=>{let{$video:n}=t.template,{createElement:r,addClass:o,setStyles:i}=t.constructor.utils,{blur:u="50px",opacity:l=.5,frequency:f=10,duration:a=.3}=e,d=r("div"),c=(d.innerHTML=Array(9).fill("<div></div>").join(""),Array.from(d.children));o(d,"artplayer-plugin-ambilight"),n.parentNode.insertBefore(d,n),i(d,{position:"absolute",top:0,left:0,zIndex:9,inset:0,display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gridTemplateRows:"1fr 1fr 1fr"}),function(e,t,n,r){e.forEach(e=>{i(e,{opacity:n,filter:`blur(${t})`,transition:`background-color ${r}s ease`})})}(c,u,l,a);let p=function(e,n,o){let i=r("canvas"),u=i.getContext("2d");i.width=3,i.height=3;let l=0;return function r(){let i=performance.now();if(i-l<1e3/o||!t.playing){s=requestAnimationFrame(r);return}l=i;let f=e.videoWidth/3,a=e.videoHeight/3,d=[[0,0],[f,0],[2*f,0],[0,a],[f,a],[2*f,a],[0,2*a],[f,2*a],[2*f,2*a]].map(([t,n])=>(function(t,n,r,o){u.drawImage(e,t,n,r,o,0,0,1,1);let[i,l,f]=u.getImageData(0,0,1,1).data;return`rgb(${i}, ${l}, ${f})`})(t,n,f,a));n.forEach((e,t)=>{e.style.backgroundColor=d[t]}),s=requestAnimationFrame(r)}}(n,c,f),s=null;function m(){s||p()}function g(){s&&(cancelAnimationFrame(s),s=null)}return t.on("ready",m),t.on("destroy",g),{name:"artplayerPluginAmbilight",start:m,stop:g}}}r.defineInteropFlag(n),r.export(n,"default",()=>o),"undefined"!=typeof window&&(window.artplayerPluginAmbilight=o)},{"@parcel/transformer-js/src/esmodule-helpers.js":"9pCYc"}],"9pCYc":[function(e,t,n){n.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},n.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.exportAll=function(e,t){return Object.keys(e).forEach(function(n){"default"===n||"__esModule"===n||Object.prototype.hasOwnProperty.call(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[n]}})}),t},n.export=function(e,t,n){Object.defineProperty(e,t,{enumerable:!0,get:n})}},{}]},["4TtJY"],"4TtJY","parcelRequire4dc0");
@@ -0,0 +1,8 @@
/*!
* artplayer-plugin-ambilight.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(e,r,t,n,o){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},i="function"==typeof a[n]&&a[n],l=i.cache||{},s="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function u(r,t){if(!l[r]){if(!e[r]){var o="function"==typeof a[n]&&a[n];if(!t&&o)return o(r,!0);if(i)return i(r,!0);if(s&&"string"==typeof r)return s(r);var f=Error("Cannot find module '"+r+"'");throw f.code="MODULE_NOT_FOUND",f}d.resolve=function(t){var n=e[r][1][t];return null!=n?n:t},d.cache={};var c=l[r]=new u.Module(r);e[r][0].call(c.exports,d,c,c.exports,this)}return l[r].exports;function d(e){var r=d.resolve(e);return!1===r?{}:u(r)}}u.isParcelRequire=!0,u.Module=function(e){this.id=e,this.bundle=u,this.exports={}},u.modules=e,u.cache=l,u.parent=i,u.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]},Object.defineProperty(u,"root",{get:function(){return a[n]}}),a[n]=u;for(var f=0;f<r.length;f++)u(r[f]);if(t){var c=u(t);"object"==typeof exports&&"undefined"!=typeof module?module.exports=c:"function"==typeof define&&define.amd&&define(function(){return c})}}({aefyu:[function(e,r,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(t),n.export(t,"default",function(){return a});var o=e("@swc/helpers/_/_sliced_to_array");function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(r){var t,n,a,i,l=r.template.$video,s=r.constructor.utils,u=s.createElement,f=s.addClass,c=s.setStyles,d=e.blur,p=e.opacity,m=e.frequency,y=e.duration,_=u("div"),h=(_.innerHTML=Array(9).fill("<div></div>").join(""),Array.from(_.children));f(_,"artplayer-plugin-ambilight"),l.parentNode.insertBefore(_,l),c(_,{position:"absolute",top:0,left:0,zIndex:9,inset:0,display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gridTemplateRows:"1fr 1fr 1fr"}),function(e,r,t,n){e.forEach(function(e){c(e,{opacity:t,filter:"blur(".concat(r,")"),transition:"background-color ".concat(n,"s ease")})})}(h,void 0===d?"50px":d,void 0===p?.5:p,void 0===y?.3:y);var j=(t=void 0===m?10:m,a=(n=u("canvas")).getContext("2d"),n.width=3,n.height=3,i=0,function e(){var n=performance.now();if(n-i<1e3/t||!r.playing){v=requestAnimationFrame(e);return}i=n;var s=l.videoWidth/3,u=l.videoHeight/3,f=[[0,0],[s,0],[2*s,0],[0,u],[s,u],[2*s,u],[0,2*u],[s,2*u],[2*s,2*u]].map(function(e){var r,t,n,i,f=(0,o._)(e,2),c=f[0],d=f[1];return a.drawImage(l,c,d,s,u,0,0,1,1),t=(r=(0,o._)(a.getImageData(0,0,1,1).data,3))[0],n=r[1],i=r[2],"rgb(".concat(t,", ").concat(n,", ").concat(i,")")});h.forEach(function(e,r){e.style.backgroundColor=f[r]}),v=requestAnimationFrame(e)}),v=null;function g(){v||j()}function b(){v&&(cancelAnimationFrame(v),v=null)}return r.on("ready",g),r.on("destroy",b),{name:"artplayerPluginAmbilight",start:g,stop:b}}}"undefined"!=typeof window&&(window.artplayerPluginAmbilight=a)},{"@swc/helpers/_/_sliced_to_array":"uVQht","@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],uVQht:[function(e,r,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(t),n.export(t,"_",function(){return s});var o=e("./_array_with_holes.js"),a=e("./_iterable_to_array_limit.js"),i=e("./_non_iterable_rest.js"),l=e("./_unsupported_iterable_to_array.js");function s(e,r){return(0,o._)(e)||(0,a._)(e,r)||(0,l._)(e,r)||(0,i._)()}},{"./_array_with_holes.js":"hF14e","./_iterable_to_array_limit.js":"loYCM","./_non_iterable_rest.js":"2Mjp1","./_unsupported_iterable_to_array.js":"5m31D","@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],hF14e:[function(e,r,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");function o(e){if(Array.isArray(e))return e}n.defineInteropFlag(t),n.export(t,"_",function(){return o})},{"@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],iWrD0:[function(e,r,t){t.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},t.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},t.exportAll=function(e,r){return Object.keys(e).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(r,t)||Object.defineProperty(r,t,{enumerable:!0,get:function(){return e[t]}})}),r},t.export=function(e,r,t){Object.defineProperty(e,r,{enumerable:!0,get:t})}},{}],loYCM:[function(e,r,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");function o(e,r){var t,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,l=!1;try{for(o=o.call(e);!(i=(t=o.next()).done)&&(a.push(t.value),!r||a.length!==r);i=!0);}catch(e){l=!0,n=e}finally{try{i||null==o.return||o.return()}finally{if(l)throw n}}return a}}n.defineInteropFlag(t),n.export(t,"_",function(){return o})},{"@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],"2Mjp1":[function(e,r,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");function o(){throw TypeError("Invalid attempt to destructure non-iterable insLine truncated
@@ -0,0 +1,8 @@
/*!
* artplayer-plugin-chapter.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(e,t,r,a,n){var o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},i="function"==typeof o[a]&&o[a],l=i.cache||{},d="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(t,r){if(!l[t]){if(!e[t]){var n="function"==typeof o[a]&&o[a];if(!r&&n)return n(t,!0);if(i)return i(t,!0);if(d&&"string"==typeof t)return d(t);var s=Error("Cannot find module '"+t+"'");throw s.code="MODULE_NOT_FOUND",s}c.resolve=function(r){var a=e[t][1][r];return null!=a?a:r},c.cache={};var u=l[t]=new p.Module(t);e[t][0].call(u.exports,c,u,u.exports,this)}return l[t].exports;function c(e){var t=c.resolve(e);return!1===t?{}:p(t)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=l,p.parent=i,p.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(p,"root",{get:function(){return o[a]}}),o[a]=p;for(var s=0;s<t.length;s++)p(t[s]);if(r){var u=p(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define(function(){return u})}}({eSFsM:[function(e,t,r){var a=e("@parcel/transformer-js/src/esmodule-helpers.js");a.defineInteropFlag(r),a.export(r,"default",()=>i);var n=e("bundle-text:./style.less"),o=a.interopDefault(n);function i(e={}){return t=>{let{$player:r}=t.template,{setStyle:a,append:n,clamp:o,query:i,isMobile:l,addClass:d,removeClass:p}=t.constructor.utils,s=`<div class="art-chapter"><div class="art-chapter-inner"><div class="art-progress-hover"></div><div class="art-progress-loaded"></div><div class="art-progress-played"></div></div></div>`,u=null,c=[],f=t.query(".art-control-progress"),h=t.query(".art-control-progress-inner"),g=n(h,'<div class="art-chapters"></div>'),y=n(h,'<div class="art-chapter-title"></div>');function m({$chapter:e,width:t}){let r=e.dataset.title.trim();if(r){a(y,"display","flex"),y.innerText=r;let e=y.clientWidth;t<=e/2?a(y,"left",0):t>h.clientWidth-e/2?a(y,"left",`${h.clientWidth-e}px`):a(y,"left",`${t-e/2}px`)}else a(y,"display","none")}function v(e=[]){if(c=[],g.innerText="",p(r,"artplayer-plugin-chapter"),Array.isArray(e)&&e.length&&t.duration){e=e.sort((e,t)=>e.start-t.start);for(let r=0;r<e.length;r++){let a=e[r],n=e[r+1];if(a.end===1/0&&(a.end=t.duration),"number"!=typeof a.start||"number"!=typeof a.end||"string"!=typeof a.title)throw Error("Illegal chapter data type");if(a.start<0||a.end>t.duration||a.start>=a.end||n&&a.end>n.start)throw Error("Illegal chapter time point")}e[0].start>0&&e.unshift({start:0,end:e[0].start,title:""}),e[e.length-1].end<t.duration&&e.push({start:e[e.length-1].end,end:t.duration,title:""});for(let t=0;t<e.length-1;t++)e[t].end!==e[t+1].start&&e.splice(t+1,0,{start:e[t].end,end:e[t+1].start,title:""});c=e.map(e=>{let r=n(g,s),a=o(e.start,0,t.duration),l=o(e.end,0,t.duration),d=l-a,p=d/t.duration;return r.dataset.start=a,r.dataset.end=l,r.dataset.duration=d,r.dataset.title=e.title.trim(),r.style.width=`${100*p}%`,{$chapter:r,$hover:i(".art-progress-hover",r),$loaded:i(".art-progress-loaded",r),$played:i(".art-progress-played",r)}}),d(r,"artplayer-plugin-chapter"),t.emit("setBar","loaded",t.loaded||0)}}return t.on("setBar",(e,r,n)=>{if(c.length)for(let o=0;o<c.length;o++){let{$chapter:i,$loaded:d,$played:p,$hover:s}=c[o],f={hover:s,loaded:d,played:p}[e];if(!f)return;let h=g.clientWidth*r,v=t.duration*r,x=parseFloat(i.dataset.duration),b=parseFloat(i.dataset.start),w=parseFloat(i.dataset.end);if(v<b&&a(f,"width",0),v>w&&a(f,"width","100%"),v>=b&&v<=w){let t=(v-b)/x;a(f,"width",`${100*t}%`),l?"played"===e&&n&&(m({$chapter:i,width:h}),clearTimeout(u),u=setTimeout(()=>{a(y,"display","none")},500)):"hover"===e&&m({$chapter:i,width:h})}}}),l||t.proxy(f,"mouseleave",()=>{c.length&&a(y,"display","none")}),t.once("video:loadedmetadata",()=>v(e.chapters)),{name:"artplayerPluginChapter",update:({chapters:e})=>v(e)}}}if("undefined"!=typeof document){let e="artplayer-plugin-chapter",t=document.getElementById(e);if(t)t.textContent=o.default;else{let t=document.createElement("style");t.id=e,t.textContent=o.default,document.head.appendChild(t)}}"undefined"!=typeof window&&(window.artplayerPluginChapter=i)},{"bundle-text:./style.less":"9CXLk","@parcel/transformer-js/src/esmodule-helpers.js":"9pCYc"}],"9CXLk":[function(e,t,r){t.exports=".artplayer-plugin-chapter .art-control-progress-inner{background-color:#0000!important;height:100%!important}.artplayer-plugin-chapter .art-control-progress-inner>.art-progress-hover,.artplayer-plugin-chapter .art-control-progress-inner>.art-progress-loaded,.artplayer-plugin-chapter .art-control-progress-inner>.art-progress-played{display:none!important}.artplayer-plugin-chapter .art-control-thumbnails{bottom:calc(var(--art-bottom-gap) + 64px)!important}.artplayer-plugin-chapter .art-chapters{z-index:0;align-items:center;gap:4px;height:100%;display:flex;position:absolute;inset:0;transfLine truncated
@@ -0,0 +1,8 @@
/*!
* artplayer-plugin-chapter.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(e,t,r,a,n){var o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},i="function"==typeof o[a]&&o[a],l=i.cache||{},d="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function p(t,r){if(!l[t]){if(!e[t]){var n="function"==typeof o[a]&&o[a];if(!r&&n)return n(t,!0);if(i)return i(t,!0);if(d&&"string"==typeof t)return d(t);var s=Error("Cannot find module '"+t+"'");throw s.code="MODULE_NOT_FOUND",s}c.resolve=function(r){var a=e[t][1][r];return null!=a?a:r},c.cache={};var u=l[t]=new p.Module(t);e[t][0].call(u.exports,c,u,u.exports,this)}return l[t].exports;function c(e){var t=c.resolve(e);return!1===t?{}:p(t)}}p.isParcelRequire=!0,p.Module=function(e){this.id=e,this.bundle=p,this.exports={}},p.modules=e,p.cache=l,p.parent=i,p.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(p,"root",{get:function(){return o[a]}}),o[a]=p;for(var s=0;s<t.length;s++)p(t[s]);if(r){var u=p(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define(function(){return u})}}({"9rqDr":[function(e,t,r){var a=e("@parcel/transformer-js/src/esmodule-helpers.js");a.defineInteropFlag(r),a.export(r,"default",function(){return i});var n=e("bundle-text:./style.less"),o=a.interopDefault(n);function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t){var r=t.template.$player,a=t.constructor.utils,n=a.setStyle,o=a.append,i=a.clamp,l=a.query,d=a.isMobile,p=a.addClass,s=a.removeClass,u=null,c=[],f=t.query(".art-control-progress"),h=t.query(".art-control-progress-inner"),g=o(h,'<div class="art-chapters"></div>'),y=o(h,'<div class="art-chapter-title"></div>');function v(e){var t=e.$chapter,r=e.width,a=t.dataset.title.trim();if(a){n(y,"display","flex"),y.innerText=a;var o=y.clientWidth;r<=o/2?n(y,"left",0):r>h.clientWidth-o/2?n(y,"left","".concat(h.clientWidth-o,"px")):n(y,"left","".concat(r-o/2,"px"))}else n(y,"display","none")}function m(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(c=[],g.innerText="",s(r,"artplayer-plugin-chapter"),Array.isArray(e)&&e.length&&t.duration){e=e.sort(function(e,t){return e.start-t.start});for(var a=0;a<e.length;a++){var n=e[a],d=e[a+1];if(n.end===1/0&&(n.end=t.duration),"number"!=typeof n.start||"number"!=typeof n.end||"string"!=typeof n.title)throw Error("Illegal chapter data type");if(n.start<0||n.end>t.duration||n.start>=n.end||d&&n.end>d.start)throw Error("Illegal chapter time point")}e[0].start>0&&e.unshift({start:0,end:e[0].start,title:""}),e[e.length-1].end<t.duration&&e.push({start:e[e.length-1].end,end:t.duration,title:""});for(var u=0;u<e.length-1;u++)e[u].end!==e[u+1].start&&e.splice(u+1,0,{start:e[u].end,end:e[u+1].start,title:""});c=e.map(function(e){var r=o(g,'\n <div class="art-chapter">\n<div class="art-chapter-inner">\n<div class="art-progress-hover"></div>\n<div class="art-progress-loaded"></div>\n<div class="art-progress-played"></div>\n</div>\n</div>\n '),a=i(e.start,0,t.duration),n=i(e.end,0,t.duration),d=n-a,p=d/t.duration;return r.dataset.start=a,r.dataset.end=n,r.dataset.duration=d,r.dataset.title=e.title.trim(),r.style.width="".concat(100*p,"%"),{$chapter:r,$hover:l(".art-progress-hover",r),$loaded:l(".art-progress-loaded",r),$played:l(".art-progress-played",r)}}),p(r,"artplayer-plugin-chapter"),t.emit("setBar","loaded",t.loaded||0)}}return t.on("setBar",function(e,r,a){if(c.length)for(var o=0;o<c.length;o++){var i=c[o],l=i.$chapter,p=i.$loaded,s=i.$played,f={hover:i.$hover,loaded:p,played:s}[e];if(!f)return;var h=g.clientWidth*r,m=t.duration*r,b=parseFloat(l.dataset.duration),x=parseFloat(l.dataset.start),w=parseFloat(l.dataset.end);if(m<x&&n(f,"width",0),m>w&&n(f,"width","100%"),m>=x&&m<=w){var j=(m-x)/b;n(f,"width","".concat(100*j,"%")),d?"played"===e&&a&&(v({$chapter:l,width:h}),clearTimeout(u),u=setTimeout(function(){n(y,"display","none")},500)):"hover"===e&&v({$chapter:l,width:h})}}}),d||t.proxy(f,"mouseleave",function(){c.length&&n(y,"display","none")}),t.once("video:loadedmetadata",function(){return m(e.chapters)}),{name:"artplayerPluginChapter",update:function(e){return m(e.chapters)}}}}if("undefined"!=typeof document){var l="artplayer-plugin-chapter",d=document.getElementById(l);if(d)d.textContent=o.default;else{var p=document.createElement("style");p.id=l,p.textContent=o.default,document.head.appendChild(p)}}"undefined"!=typeof window&&(window.artplayerPluginChapter=i)},{"bundle-text:./style.less":"4jhrf","@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],"4jhrf":[function(e,t,r){t.exports=".artplayer-plugin-chapter .art-control-progress-inner{background-color:transparent!important;height:100%!important}.artplayer-plugin-chapter .art-control-progress-inner>.art-progress-hover,.artplayer-plugin-chapter .art-control-progress-inner>.art-progress-loaded,.artplayer-plugin-chapter .art-control-proLine truncated
@@ -0,0 +1 @@
/*! * artplayer-plugin-chromecast.js v2.0.0 * Github:https://github.com/zhw2590582/ArtPlayer * (c) 2017-2024 Harvey Zack * Released under the MIT License. */ !function(e,o,t,n,i){var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},c="function"==typeof r[n]&&r[n],a=c.cache||{},s="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function d(o,t){if(!a[o]){if(!e[o]){var i="function"==typeof r[n]&&r[n];if(!t&&i)return i(o,!0);if(c)return c(o,!0);if(s&&"string"==typeof o)return s(o);var l=Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}f.resolve=function(t){var n=e[o][1][t];return null!=n?n:t},f.cache={};var u=a[o]=new d.Module(o);e[o][0].call(u.exports,f,u,u.exports,this)}return a[o].exports;function f(e){var o=f.resolve(e);return!1===o?{}:d(o)}}d.isParcelRequire=!0,d.Module=function(e){this.id=e,this.bundle=d,this.exports={}},d.modules=e,d.cache=a,d.parent=c,d.register=function(o,t){e[o]=[function(e,o){o.exports=t},{}]},Object.defineProperty(d,"root",{get:function(){return r[n]}}),r[n]=d;for(var l=0;l<o.length;l++)d(o[l]);if(t){var u=d(t);"object"==typeof exports&&"undefined"!=typeof module?module.exports=u:"function"==typeof define&&define.amd&&define(function(){return u})}}({"3wl5Y":[function(e,o,t){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");function i(e){return window.__onGCastApiAvailable=function(e){e&&window.cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:window.chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:window.chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED})},async o=>{if(!window.chrome||!window.chrome.cast){var t;await (t=e.sdk||"https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",new Promise((e,o)=>{let n=document.createElement("script");n.src=t,n.onload=e,n.onerror=o,document.body.appendChild(n)}))}function n(t){let n=e.url||o.option.url,i=e.mimeType||({mp4:"video/mp4",webm:"video/webm",ogg:"video/ogg",ogv:"video/ogg",mp3:"audio/mp3",wav:"audio/wav",flv:"video/x-flv",mov:"video/quicktime",avi:"video/x-msvideo",wmv:"video/x-ms-wmv",mpd:"application/dash+xml",m3u8:"application/x-mpegURL"})[n.split("?")[0].split("#")[0].split(".").pop().toLowerCase()]||"application/octet-stream",r=new window.chrome.cast.media.MediaInfo(n,i),c=new window.chrome.cast.media.LoadRequest(r);t.loadMedia(c).then(function(){console.log("Media loaded successfully")},function(e){o.notice.show="Error casting media",console.log("Error casting media",e)})}return o.controls.add({name:"chromecast",position:"right",tooltip:"Chromecast",html:`<i class="art-icon art-icon-cast">${e.icon||'<svg height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M512 96H64v99c-13-2-26.4-3-40-3H0V96C0 60.7 28.7 32 64 32H512c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H288V456c0-13.6-1-27-3-40H512V96zM24 224c128.1 0 232 103.9 232 232c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-101.6-82.4-184-184-184c-13.3 0-24-10.7-24-24s10.7-24 24-24zm8 192a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM0 344c0-13.3 10.7-24 24-24c75.1 0 136 60.9 136 136c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6-39.4-88-88-88c-13.3 0-24-10.7-24-24z"/></svg>'}</i>`,click(){let e=window.cast.framework.CastContext.getInstance().getCurrentSession();e?n(e):window.cast.framework.CastContext.getInstance().requestSession().then(function(e){n(e)},function(e){o.notice.show="Error connecting to cast session",console.log("Error connecting to cast session",e)})}}),{name:"artplayerPluginChromecast"}}}n.defineInteropFlag(t),n.export(t,"default",()=>i),"undefined"!=typeof window&&(window.artplayerPluginChromecast=i)},{"@parcel/transformer-js/src/esmodule-helpers.js":"9pCYc"}],"9pCYc":[function(e,o,t){t.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},t.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},t.exportAll=function(e,o){return Object.keys(e).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(o,t)||Object.defineProperty(o,t,{enumerable:!0,get:function(){return e[t]}})}),o},t.export=function(e,o,t){Object.defineProperty(e,o,{enumerable:!0,get:t})}},{}]},["3wl5Y"],"3wl5Y","parcelRequire4dc0");
@@ -0,0 +1 @@
/*! * artplayer-plugin-chromecast.js v2.0.0 * Github:https://github.com/zhw2590582/ArtPlayer * (c) 2017-2024 Harvey Zack * Released under the MIT License. */ !function(e,t,r,n,o){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a="function"==typeof i[n]&&i[n],c=a.cache||{},u="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function s(t,r){if(!c[t]){if(!e[t]){var o="function"==typeof i[n]&&i[n];if(!r&&o)return o(t,!0);if(a)return a(t,!0);if(u&&"string"==typeof t)return u(t);var f=Error("Cannot find module '"+t+"'");throw f.code="MODULE_NOT_FOUND",f}p.resolve=function(r){var n=e[t][1][r];return null!=n?n:r},p.cache={};var l=c[t]=new s.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return c[t].exports;function p(e){var t=p.resolve(e);return!1===t?{}:s(t)}}s.isParcelRequire=!0,s.Module=function(e){this.id=e,this.bundle=s,this.exports={}},s.modules=e,s.cache=c,s.parent=a,s.register=function(t,r){e[t]=[function(e,t){t.exports=r},{}]},Object.defineProperty(s,"root",{get:function(){return i[n]}}),i[n]=s;for(var f=0;f<t.length;f++)s(t[f]);if(r){var l=s(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd&&define(function(){return l})}}({ipx5S:[function(e,t,r){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r),n.export(r,"default",function(){return a});var o=e("@swc/helpers/_/_async_to_generator"),i=e("@swc/helpers/_/_ts_generator");function a(e){var t;return window.__onGCastApiAvailable=function(e){e&&window.cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:window.chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:window.chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED})},t=(0,o._)(function(t){function r(r){var n=e.url||t.option.url,o=e.mimeType||({mp4:"video/mp4",webm:"video/webm",ogg:"video/ogg",ogv:"video/ogg",mp3:"audio/mp3",wav:"audio/wav",flv:"video/x-flv",mov:"video/quicktime",avi:"video/x-msvideo",wmv:"video/x-ms-wmv",mpd:"application/dash+xml",m3u8:"application/x-mpegURL"})[n.split("?")[0].split("#")[0].split(".").pop().toLowerCase()]||"application/octet-stream",i=new window.chrome.cast.media.MediaInfo(n,o),a=new window.chrome.cast.media.LoadRequest(i);r.loadMedia(a).then(function(){console.log("Media loaded successfully")},function(e){t.notice.show="Error casting media",console.log("Error casting media",e)})}return(0,i._)(this,function(n){switch(n.label){case 0:var o;if(!(!window.chrome||!window.chrome.cast))return[3,2];return[4,(o=e.sdk||"https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",new Promise(function(e,t){var r=document.createElement("script");r.src=o,r.onload=e,r.onerror=t,document.body.appendChild(r)}))];case 1:n.sent(),n.label=2;case 2:return t.controls.add({name:"chromecast",position:"right",tooltip:"Chromecast",html:'<i class="art-icon art-icon-cast">'.concat(e.icon||'<svg height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M512 96H64v99c-13-2-26.4-3-40-3H0V96C0 60.7 28.7 32 64 32H512c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H288V456c0-13.6-1-27-3-40H512V96zM24 224c128.1 0 232 103.9 232 232c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-101.6-82.4-184-184-184c-13.3 0-24-10.7-24-24s10.7-24 24-24zm8 192a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM0 344c0-13.3 10.7-24 24-24c75.1 0 136 60.9 136 136c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6-39.4-88-88-88c-13.3 0-24-10.7-24-24z"/></svg>',"</i>"),click:function(){var e=window.cast.framework.CastContext.getInstance().getCurrentSession();e?r(e):window.cast.framework.CastContext.getInstance().requestSession().then(function(e){r(e)},function(e){t.notice.show="Error connecting to cast session",console.log("Error connecting to cast session",e)})}}),[2,{name:"artplayerPluginChromecast"}]}})}),function(e){return t.apply(this,arguments)}}"undefined"!=typeof window&&(window.artplayerPluginChromecast=a)},{"@swc/helpers/_/_async_to_generator":"eONSn","@swc/helpers/_/_ts_generator":"6Xyd0","@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],eONSn:[function(e,t,r){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");function o(e,t,r,n,o,i,a){try{var c=e[i](a),u=c.value}catch(e){r(e);return}c.done?t(u):Promise.resolve(u).then(n,o)}function i(e){return function(){var t=this,r=arguments;return new Promise(function(n,i){var a=e.apply(t,r);function c(e){o(a,n,i,c,u,"next",e)}function u(e){o(a,n,i,c,u,"throw",e)}c(void 0)})}}n.defineInteropFlag(r),n.export(r,"_async_to_generator",function(){return i}),n.export(r,"_",function(){return i})},{"@parcel/transformer-js/src/esmodule-helpers.js":"iWrD0"}],iWrD0:[function(e,t,r){r.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},r.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},r.exportAll=function(e,t){return Object.keys(e).forEach(function(r){"default"===r|Line truncated
@@ -1,7 +0,0 @@
/*!
* artplayer-plugin-control.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2023 Harvey Zack
* Released under the MIT License.
*/
!function(t,r,e,o,n){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},l="function"==typeof a[o]&&a[o],i=l.cache||{},p="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function s(r,e){if(!i[r]){if(!t[r]){var n="function"==typeof a[o]&&a[o];if(!e&&n)return n(r,!0);if(l)return l(r,!0);if(p&&"string"==typeof r)return p(r);var u=new Error("Cannot find module '"+r+"'");throw u.code="MODULE_NOT_FOUND",u}d.resolve=function(e){var o=t[r][1][e];return null!=o?o:e},d.cache={};var c=i[r]=new s.Module(r);t[r][0].call(c.exports,d,c,c.exports,this)}return i[r].exports;function d(t){var r=d.resolve(t);return!1===r?{}:s(r)}}s.isParcelRequire=!0,s.Module=function(t){this.id=t,this.bundle=s,this.exports={}},s.modules=t,s.cache=i,s.parent=l,s.register=function(r,e){t[r]=[function(t,r){r.exports=e},{}]},Object.defineProperty(s,"root",{get:function(){return a[o]}}),a[o]=s;for(var u=0;u<r.length;u++)s(r[u]);if(e){var c=s(e);"object"==typeof exports&&"undefined"!=typeof module?module.exports=c:"function"==typeof define&&define.amd&&define((function(){return c}))}}({"16V0T":[function(t,r,e){var o=t("@parcel/transformer-js/src/esmodule-helpers.js");o.defineInteropFlag(e);var n=t("bundle-text:./style.less"),a=o.interopDefault(n);function l(){return t=>{!function(t){const{version:r,utils:{errorHandle:e}}=t.constructor,o=r.split(".").map(Number);e(o[0]+o[1]/100>=4.06,`Artplayer.js@${r} is not compatible the artplayerPluginControl@${l.version}. Please update it to version Artplayer.js@4.6.x`)}(t);const{template:{$bottom:r,$player:e},constructor:{utils:{append:o,secondToTime:n,addClass:a,removeClass:i,hasClass:p,isMobile:s}}}=t;if(s)return;const u="artplayer-plugin-control";a(e,u);const c=o(r,'<div class="apa-control-current"></div>'),d=o(r,'<div class="apa-control-duration"></div>'),f=["video:loadedmetadata","video:timeupdate","video:progress"];for(let r=0;r<f.length;r++)t.on(f[r],(()=>{c.innerText=n(t.currentTime),d.innerText=n(t.duration)}));return{name:"artplayerPluginControl",get enable(){return p(e,u)},set enable(t){t?a(e,u):i(e,u)}}}}if(e.default=l,l.env="production",l.version="1.0.0",l.build="2023-01-26 15:27:05","undefined"!=typeof document&&!document.getElementById("artplayer-plugin-control")){const t=document.createElement("style");t.id="artplayer-plugin-control",t.textContent=a.default,document.head.appendChild(t)}"undefined"!=typeof window&&(window.artplayerPluginControl=l)},{"bundle-text:./style.less":"klrMD","@parcel/transformer-js/src/esmodule-helpers.js":"9pCYc"}],klrMD:[function(t,r,e){r.exports=".artplayer-plugin-control .art-bottom{height:68px;min-width:400px;max-width:600px;user-select:none;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);pointer-events:auto;background-color:#000000b3;background-image:none;border-radius:10px;flex-direction:column;align-items:center;padding:0;font-size:13px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%);box-shadow:0 10px 15px -3px #0003,0 4px 6px -4px #0003}.artplayer-plugin-control .art-bottom .art-progress{width:65%;justify-content:space-between;align-items:center;gap:10px;display:flex}.artplayer-plugin-control .art-bottom .art-progress .art-control-thumbnails{bottom:35px}.artplayer-plugin-control .art-bottom .art-progress .art-control-progress{width:100%}.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-control-progress-inner,.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-progress-loaded,.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-progress-played{border-radius:5px}.artplayer-plugin-control .art-bottom .art-progress .art-progress-tip{top:-40px!important}.artplayer-plugin-control .art-bottom .art-controls{width:100%;height:auto;flex:1;padding:0 5px}.artplayer-plugin-control .art-bottom .art-controls .art-control-time,.artplayer-plugin-control .art-bottom .art-controls .art-controls-center{display:none}.artplayer-plugin-control .art-bottom .art-controls .art-volume-panel{width:60px!important}.artplayer-plugin-control .art-bottom .art-selector-list{background-color:#000c!important}.artplayer-plugin-control .art-bottom .apa-control-current,.artplayer-plugin-control .art-bottom .apa-control-duration{width:17.5%;justify-content:center;line-height:1;display:flex;position:absolute;top:10px}.artplayer-plugin-control .art-bottom .apa-control-current{left:0}.artplayer-plugin-control .art-bottom .apa-control-duration{right:0}.artplayer-plugin-control .art-settings{bottom:85px}.artplayer-plugin-control.art-control-show .art-subtitle{bottom:80px}.apa-control-current,.apa-control-duration{display:none}"},{}],"9pCYc":[function(t,r,e){e.interopDefault=function(t){return t&&t.__esModule?t:{default:t}},e.defineInteropFlag=function(t){Object.defineProperty(t,"__esModule",{value:!0})},e.exportAll=fLine truncated
@@ -1,7 +0,0 @@
/*!
* artplayer-plugin-control.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2023 Harvey Zack
* Released under the MIT License.
*/
!function(t,r,e,o,n){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},l="function"==typeof a[o]&&a[o],i=l.cache||{},p="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function u(r,e){if(!i[r]){if(!t[r]){var n="function"==typeof a[o]&&a[o];if(!e&&n)return n(r,!0);if(l)return l(r,!0);if(p&&"string"==typeof r)return p(r);var s=new Error("Cannot find module '"+r+"'");throw s.code="MODULE_NOT_FOUND",s}d.resolve=function(e){var o=t[r][1][e];return null!=o?o:e},d.cache={};var c=i[r]=new u.Module(r);t[r][0].call(c.exports,d,c,c.exports,this)}return i[r].exports;function d(t){var r=d.resolve(t);return!1===r?{}:u(r)}}u.isParcelRequire=!0,u.Module=function(t){this.id=t,this.bundle=u,this.exports={}},u.modules=t,u.cache=i,u.parent=l,u.register=function(r,e){t[r]=[function(t,r){r.exports=e},{}]},Object.defineProperty(u,"root",{get:function(){return a[o]}}),a[o]=u;for(var s=0;s<r.length;s++)u(r[s]);if(e){var c=u(e);"object"==typeof exports&&"undefined"!=typeof module?module.exports=c:"function"==typeof define&&define.amd&&define((function(){return c}))}}({d3G6W:[function(t,r,e){var o=t("@parcel/transformer-js/src/esmodule-helpers.js");o.defineInteropFlag(e);var n=t("bundle-text:./style.less"),a=o.interopDefault(n);function l(){return t=>{!function(t){const{version:r,utils:{errorHandle:e}}=t.constructor,o=r.split(".").map(Number);e(o[0]+o[1]/100>=4.06,`Artplayer.js@${r} is not compatible the artplayerPluginControl@${l.version}. Please update it to version Artplayer.js@4.6.x`)}(t);const{template:{$bottom:r,$player:e},constructor:{utils:{append:o,secondToTime:n,addClass:a,removeClass:i,hasClass:p,isMobile:u}}}=t;if(u)return;const s="artplayer-plugin-control";a(e,s);const c=o(r,'<div class="apa-control-current"></div>'),d=o(r,'<div class="apa-control-duration"></div>'),f=["video:loadedmetadata","video:timeupdate","video:progress"];for(let r=0;r<f.length;r++)t.on(f[r],(()=>{c.innerText=n(t.currentTime),d.innerText=n(t.duration)}));return{name:"artplayerPluginControl",get enable(){return p(e,s)},set enable(t){t?a(e,s):i(e,s)}}}}if(e.default=l,l.env="production",l.version="1.0.0",l.build="2023-01-26 15:27:06","undefined"!=typeof document&&!document.getElementById("artplayer-plugin-control")){const t=document.createElement("style");t.id="artplayer-plugin-control",t.textContent=a.default,document.head.appendChild(t)}"undefined"!=typeof window&&(window.artplayerPluginControl=l)},{"bundle-text:./style.less":"8jCnX","@parcel/transformer-js/src/esmodule-helpers.js":"47PTV"}],"8jCnX":[function(t,r,e){r.exports=".artplayer-plugin-control .art-bottom{height:68px;min-width:400px;max-width:600px;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:saturate(180%)blur(20px);-webkit-backdrop-filter:saturate(180%)blur(20px);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);pointer-events:auto;background-color:#000000b3;background-image:none;border-radius:10px;flex-direction:column;align-items:center;padding:0;font-size:13px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%);box-shadow:0 10px 15px -3px #0003,0 4px 6px -4px #0003}.artplayer-plugin-control .art-bottom .art-progress{width:65%;justify-content:space-between;align-items:center;gap:10px;display:flex}.artplayer-plugin-control .art-bottom .art-progress .art-control-thumbnails{bottom:35px}.artplayer-plugin-control .art-bottom .art-progress .art-control-progress{width:100%}.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-control-progress-inner,.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-progress-loaded,.artplayer-plugin-control .art-bottom .art-progress .art-control-progress .art-progress-played{border-radius:5px}.artplayer-plugin-control .art-bottom .art-progress .art-progress-tip{top:-40px!important}.artplayer-plugin-control .art-bottom .art-controls{width:100%;height:auto;flex:1;padding:0 5px}.artplayer-plugin-control .art-bottom .art-controls .art-control-time,.artplayer-plugin-control .art-bottom .art-controls .art-controls-center{display:none}.artplayer-plugin-control .art-bottom .art-controls .art-volume-panel{width:60px!important}.artplayer-plugin-control .art-bottom .art-selector-list{background-color:#000c!important}.artplayer-plugin-control .art-bottom .apa-control-current,.artplayer-plugin-control .art-bottom .apa-control-duration{width:17.5%;justify-content:center;line-height:1;display:flex;position:absolute;top:10px}.artplayer-plugin-control .art-bottom .apa-control-current{left:0}.artplayer-plugin-control .art-bottom .apa-control-duration{right:0}.artplayer-plugin-control .art-settings{bottom:85px}.artplayer-plugin-control.art-control-show .art-subtitle{bottom:80px}.apa-control-current,.apa-control-duration{display:none}"},{}],"47PTV":[function(t,r,e){e.interopDefault=function(t){return t&&Line truncated
Loaded 100 of 832 files, more files were not shown because too many files have changed in this diff. Show more