@xiping/react-components 1.0.43 → 1.0.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/dist/cjs/_virtual/_commonjsHelpers.js +1 -0
  2. package/dist/cjs/_virtual/delegate.js +1 -0
  3. package/dist/cjs/_virtual/download.js +1 -0
  4. package/dist/cjs/_virtual/download2.js +1 -0
  5. package/dist/cjs/_virtual/index.js +1 -0
  6. package/dist/cjs/_virtual/index2.js +1 -0
  7. package/dist/cjs/components/shimmer-button/ShimmerButton.js +1 -1
  8. package/dist/cjs/components/shiny-button/ShinyButton.js +1 -1
  9. package/dist/cjs/components/sparkles-text/SparklesText.js +1 -1
  10. package/dist/cjs/components/subtitle-player/SubtitlePlayer.d.ts +51 -0
  11. package/dist/cjs/components/subtitle-player/SubtitlePlayer.js +3 -0
  12. package/dist/cjs/components/subtitle-player/index.d.ts +2 -0
  13. package/dist/cjs/components/txt-editor/TxtEditor.d.ts +5 -4
  14. package/dist/cjs/components/txt-editor/TxtEditor.js +32 -1
  15. package/dist/cjs/components/txt-reader/TxtReader.js +1 -1
  16. package/dist/cjs/components/txt-reader/index.module.css.js +1 -1
  17. package/dist/cjs/components/variable-proximity/index.d.ts +10 -0
  18. package/dist/cjs/components/variable-proximity/index.js +1 -1
  19. package/dist/cjs/components/video-subtitle-player/VideoSubtitlePlayer.d.ts +23 -0
  20. package/dist/cjs/components/video-subtitle-player/VideoSubtitlePlayer.js +1 -0
  21. package/dist/cjs/components/video-subtitle-player/index.d.ts +3 -0
  22. package/dist/cjs/components/video-subtitle-player/useVideoSubtitleStore.d.ts +61 -0
  23. package/dist/cjs/components/video-subtitle-player/useVideoSubtitleStore.js +1 -0
  24. package/dist/cjs/index.d.ts +2 -1
  25. package/dist/cjs/index.js +1 -1
  26. package/dist/cjs/node_modules/.pnpm/delegate@3.2.0/node_modules/delegate/src/closest.js +1 -0
  27. package/dist/cjs/node_modules/.pnpm/delegate@3.2.0/node_modules/delegate/src/delegate.js +1 -0
  28. package/dist/cjs/node_modules/.pnpm/downloadjs@1.4.7/node_modules/downloadjs/download.js +3 -0
  29. package/dist/cjs/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js +1 -0
  30. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/_virtual/_rollupPluginBabelHelpers.js +2 -0
  31. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/constant.js +1 -0
  32. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/defaultConfig.js +1 -0
  33. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/error.js +1 -0
  34. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/events.js +1 -0
  35. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/index.umd.js +1 -0
  36. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/instManager.js +1 -0
  37. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/en.js +1 -0
  38. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/i18n.js +1 -0
  39. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/zh-cn.js +1 -0
  40. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/mediaProxy.js +1 -0
  41. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/player.js +1 -0
  42. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/basePlugin.js +1 -0
  43. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/hooksDescriptor.js +1 -0
  44. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/plugin.js +1 -0
  45. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/pluginsManager.js +1 -0
  46. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/preset.js +1 -0
  47. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/resizeObserver.js +1 -0
  48. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/back.js +5 -0
  49. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/download.js +15 -0
  50. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/exitCssFull.js +4 -0
  51. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/exitFull.js +4 -0
  52. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/loading.js +4 -0
  53. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pause.js +4 -0
  54. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pipIcon.js +5 -0
  55. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pipIconExit.js +8 -0
  56. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/play.js +4 -0
  57. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/playNext.js +4 -0
  58. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/replay.js +4 -0
  59. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/requestCssFull.js +4 -0
  60. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/requestFull.js +4 -0
  61. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/rotate.js +12 -0
  62. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/seekicon.js +7 -0
  63. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeLarge.js +5 -0
  64. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeMuted.js +5 -0
  65. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeSmall.js +5 -0
  66. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/iconPlugin.js +1 -0
  67. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/iconTools.js +3 -0
  68. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/optionList.js +1 -0
  69. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/optionsIcon.js +4 -0
  70. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/thumbnail.js +1 -0
  71. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/controls/index.js +9 -0
  72. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/cssFullScreen/index.js +5 -0
  73. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/definition/index.js +1 -0
  74. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/download/index.js +5 -0
  75. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/dynamicBg/index.js +2 -0
  76. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/enter/index.js +1 -0
  77. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/error/index.js +6 -0
  78. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fpsDetect/index.js +1 -0
  79. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fullscreen/backicon.js +2 -0
  80. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fullscreen/index.js +5 -0
  81. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/gapJump/index.js +1 -0
  82. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/keyboard/index.js +1 -0
  83. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/loading/index.js +4 -0
  84. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/logger/index.js +1 -0
  85. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/miniScreen/index.js +13 -0
  86. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/miniScreen/miniScreenIcon.js +4 -0
  87. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/mobile/index.js +19 -0
  88. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/mobile/touch.js +1 -0
  89. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/pc/index.js +1 -0
  90. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/pip/index.js +8 -0
  91. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/play/index.js +5 -0
  92. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/playNext/index.js +7 -0
  93. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/playbackRate/index.js +1 -0
  94. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/poster/index.js +2 -0
  95. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/index.js +7 -0
  96. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/innerList.js +1 -0
  97. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/miniProgress.js +4 -0
  98. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progressPreview/dotsApi.js +1 -0
  99. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progressPreview/index.js +11 -0
  100. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/prompt/index.js +3 -0
  101. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/replay/index.js +3 -0
  102. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/rotate/index.js +6 -0
  103. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/screenShot/index.js +6 -0
  104. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/start/index.js +4 -0
  105. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/stats/index.js +1 -0
  106. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/testspeed/index.js +1 -0
  107. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/time/index.js +6 -0
  108. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/time/timesegments.js +1 -0
  109. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/volume/index.js +11 -0
  110. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/waitingTimeoutJump/index.js +1 -0
  111. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/presets/default.js +1 -0
  112. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/state.js +1 -0
  113. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/stateClassMap.js +1 -0
  114. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/database.js +1 -0
  115. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/debug.js +1 -0
  116. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/draggabilly.js +1 -0
  117. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/sniffer.js +1 -0
  118. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/util.js +1 -0
  119. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/xgplayerTimeRange.js +1 -0
  120. package/dist/cjs/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/version.js +1 -0
  121. package/dist/cjs/node_modules/.pnpm/zustand@5.0.9_@types_react@19.2.7_react@19.2.3_use-sync-external-store@1.6.0_react@19.2.3_/node_modules/zustand/esm/react.js +1 -0
  122. package/dist/cjs/node_modules/.pnpm/zustand@5.0.9_@types_react@19.2.7_react@19.2.3_use-sync-external-store@1.6.0_react@19.2.3_/node_modules/zustand/esm/vanilla.js +1 -0
  123. package/dist/cjs/packages/subtitle/lib/src/json-converter.js +1 -0
  124. package/dist/cjs/packages/subtitle/lib/src/parser.js +5 -0
  125. package/dist/cjs/react-components.css +1 -1
  126. package/dist/es/_virtual/_commonjsHelpers.js +6 -0
  127. package/dist/es/_virtual/delegate.js +7 -0
  128. package/dist/es/_virtual/download.js +7 -0
  129. package/dist/es/_virtual/download2.js +4 -0
  130. package/dist/es/_virtual/index.js +8 -0
  131. package/dist/es/_virtual/index2.js +4 -0
  132. package/dist/es/components/shimmer-button/ShimmerButton.js +29 -62
  133. package/dist/es/components/shiny-button/ShinyButton.js +15 -17
  134. package/dist/es/components/sparkles-text/SparklesText.js +30 -29
  135. package/dist/es/components/subtitle-player/SubtitlePlayer.d.ts +51 -0
  136. package/dist/es/components/subtitle-player/SubtitlePlayer.js +301 -0
  137. package/dist/es/components/subtitle-player/index.d.ts +2 -0
  138. package/dist/es/components/txt-editor/TxtEditor.d.ts +5 -4
  139. package/dist/es/components/txt-editor/TxtEditor.js +105 -43
  140. package/dist/es/components/txt-reader/TxtReader.js +48 -55
  141. package/dist/es/components/txt-reader/index.module.css.js +6 -2
  142. package/dist/es/components/variable-proximity/index.d.ts +10 -0
  143. package/dist/es/components/variable-proximity/index.js +166 -94
  144. package/dist/es/components/video-subtitle-player/VideoSubtitlePlayer.d.ts +23 -0
  145. package/dist/es/components/video-subtitle-player/VideoSubtitlePlayer.js +125 -0
  146. package/dist/es/components/video-subtitle-player/index.d.ts +3 -0
  147. package/dist/es/components/video-subtitle-player/useVideoSubtitleStore.d.ts +61 -0
  148. package/dist/es/components/video-subtitle-player/useVideoSubtitleStore.js +57 -0
  149. package/dist/es/index.d.ts +2 -1
  150. package/dist/es/index.js +60 -56
  151. package/dist/es/node_modules/.pnpm/delegate@3.2.0/node_modules/delegate/src/closest.js +21 -0
  152. package/dist/es/node_modules/.pnpm/delegate@3.2.0/node_modules/delegate/src/delegate.js +29 -0
  153. package/dist/es/node_modules/.pnpm/downloadjs@1.4.7/node_modules/downloadjs/download.js +77 -0
  154. package/dist/es/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js +111 -0
  155. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/_virtual/_rollupPluginBabelHelpers.js +197 -0
  156. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/constant.js +7 -0
  157. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/defaultConfig.js +87 -0
  158. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/error.js +64 -0
  159. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/events.js +67 -0
  160. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/index.umd.js +45 -0
  161. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/instManager.js +101 -0
  162. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/en.js +79 -0
  163. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/i18n.js +75 -0
  164. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/lang/zh-cn.js +79 -0
  165. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/mediaProxy.js +466 -0
  166. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/player.js +1240 -0
  167. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/basePlugin.js +207 -0
  168. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/hooksDescriptor.js +130 -0
  169. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/plugin.js +366 -0
  170. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/pluginsManager.js +204 -0
  171. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/preset.js +14 -0
  172. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugin/resizeObserver.js +81 -0
  173. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/back.js +10 -0
  174. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/download.js +20 -0
  175. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/exitCssFull.js +9 -0
  176. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/exitFull.js +9 -0
  177. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/loading.js +9 -0
  178. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pause.js +9 -0
  179. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pipIcon.js +10 -0
  180. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/pipIconExit.js +13 -0
  181. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/play.js +9 -0
  182. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/playNext.js +9 -0
  183. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/replay.js +9 -0
  184. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/requestCssFull.js +9 -0
  185. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/requestFull.js +9 -0
  186. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/rotate.js +17 -0
  187. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/seekicon.js +12 -0
  188. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeLarge.js +10 -0
  189. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeMuted.js +10 -0
  190. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/assets/volumeSmall.js +10 -0
  191. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/iconPlugin.js +35 -0
  192. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/iconTools.js +12 -0
  193. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/optionList.js +79 -0
  194. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/optionsIcon.js +193 -0
  195. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/common/thumbnail.js +141 -0
  196. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/controls/index.js +171 -0
  197. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/cssFullScreen/index.js +105 -0
  198. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/definition/index.js +110 -0
  199. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/download/index.js +83 -0
  200. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/dynamicBg/index.js +232 -0
  201. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/enter/index.js +42 -0
  202. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/error/index.js +68 -0
  203. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fpsDetect/index.js +116 -0
  204. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fullscreen/backicon.js +68 -0
  205. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/fullscreen/index.js +150 -0
  206. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/gapJump/index.js +96 -0
  207. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/keyboard/index.js +299 -0
  208. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/loading/index.js +46 -0
  209. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/logger/index.js +171 -0
  210. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/miniScreen/index.js +169 -0
  211. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/miniScreen/miniScreenIcon.js +55 -0
  212. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/mobile/index.js +448 -0
  213. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/mobile/touch.js +138 -0
  214. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/pc/index.js +122 -0
  215. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/pip/index.js +216 -0
  216. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/play/index.js +102 -0
  217. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/playNext/index.js +78 -0
  218. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/playbackRate/index.js +100 -0
  219. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/poster/index.js +119 -0
  220. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/index.js +431 -0
  221. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/innerList.js +215 -0
  222. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progress/miniProgress.js +93 -0
  223. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progressPreview/dotsApi.js +175 -0
  224. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/progressPreview/index.js +292 -0
  225. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/prompt/index.js +86 -0
  226. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/replay/index.js +92 -0
  227. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/rotate/index.js +106 -0
  228. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/screenShot/index.js +134 -0
  229. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/start/index.js +222 -0
  230. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/stats/index.js +152 -0
  231. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/testspeed/index.js +134 -0
  232. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/time/index.js +164 -0
  233. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/time/timesegments.js +146 -0
  234. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/volume/index.js +206 -0
  235. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/plugins/waitingTimeoutJump/index.js +53 -0
  236. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/presets/default.js +61 -0
  237. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/state.js +13 -0
  238. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/stateClassMap.js +34 -0
  239. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/database.js +83 -0
  240. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/debug.js +34 -0
  241. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/draggabilly.js +271 -0
  242. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/sniffer.js +111 -0
  243. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/util.js +517 -0
  244. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/utils/xgplayerTimeRange.js +25 -0
  245. package/dist/es/node_modules/.pnpm/xgplayer@3.0.23_core-js@3.47.0/node_modules/xgplayer/es/version.js +4 -0
  246. package/dist/es/node_modules/.pnpm/zustand@5.0.9_@types_react@19.2.7_react@19.2.3_use-sync-external-store@1.6.0_react@19.2.3_/node_modules/zustand/esm/react.js +19 -0
  247. package/dist/es/node_modules/.pnpm/zustand@5.0.9_@types_react@19.2.7_react@19.2.3_use-sync-external-store@1.6.0_react@19.2.3_/node_modules/zustand/esm/vanilla.js +14 -0
  248. package/dist/es/packages/subtitle/lib/src/json-converter.js +27 -0
  249. package/dist/es/packages/subtitle/lib/src/parser.js +56 -0
  250. package/dist/es/react-components.css +1 -1
  251. package/package.json +23 -21
  252. package/dist/cjs/components/qr-code/index.d.ts +0 -103
  253. package/dist/cjs/components/qr-code/index.js +0 -1
  254. package/dist/es/components/qr-code/index.d.ts +0 -103
  255. package/dist/es/components/qr-code/index.js +0 -49
@@ -1,54 +1,116 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import h from "@monaco-editor/react";
3
- import { useRef as c } from "react";
4
- const M = ({
5
- height: e = "500px",
6
- width: t = "100%",
7
- language: i = "plaintext",
8
- defaultValue: a,
9
- value: r,
10
- theme: l = "light",
11
- readOnly: o = !1,
12
- onChange: d,
1
+ import { jsxs as k, jsx as c } from "react/jsx-runtime";
2
+ import { useEditor as M, EditorContent as w } from "@tiptap/react";
3
+ import C from "@tiptap/starter-kit";
4
+ import { useMemo as P, useEffect as a } from "react";
5
+ const U = ({
6
+ height: t = "500px",
7
+ width: i = "100%",
8
+ language: y = "plaintext",
9
+ // eslint-disable-line @typescript-eslint/no-unused-vars
10
+ defaultValue: d,
11
+ value: o,
12
+ theme: p = "light",
13
+ readOnly: n = !1,
14
+ onChange: m,
13
15
  onMount: s,
14
16
  className: u
15
17
  }) => {
16
- const f = c(null);
17
- return /* @__PURE__ */ m(
18
- h,
18
+ const l = o !== void 0, g = P(
19
+ () => d || o || "",
20
+ [d, o]
21
+ ), e = M({
22
+ extensions: [
23
+ C.configure({
24
+ // 禁用大部分格式化功能,保持纯文本编辑体验
25
+ bold: !1,
26
+ italic: !1,
27
+ strike: !1,
28
+ code: !1,
29
+ heading: !1,
30
+ blockquote: !1,
31
+ horizontalRule: !1,
32
+ hardBreak: !1
33
+ // 保留历史记录、拖拽光标和间隙光标功能(使用默认配置)
34
+ })
35
+ ],
36
+ content: g,
37
+ editable: !n,
38
+ immediatelyRender: !1,
39
+ onUpdate: ({ editor: f }) => {
40
+ const b = f.getText();
41
+ m?.(b);
42
+ }
43
+ });
44
+ if (a(() => {
45
+ if (!e || !l) return;
46
+ const f = e.getText();
47
+ o !== f && e.commands.setContent(o || "", { emitUpdate: !1 });
48
+ }, [e, o, l]), a(() => {
49
+ e && e.setEditable(!n);
50
+ }, [e, n]), a(() => {
51
+ e && s && s(e);
52
+ }, [e, s]), !e)
53
+ return null;
54
+ const x = typeof t == "number" ? `${t}px` : t, h = typeof i == "number" ? `${i}px` : i, r = p === "vs-dark";
55
+ return /* @__PURE__ */ k(
56
+ "div",
19
57
  {
20
58
  className: u,
21
- height: e,
22
- width: t,
23
- defaultLanguage: i,
24
- defaultValue: a,
25
- value: r,
26
- theme: l,
27
- onMount: (n, p) => {
28
- f.current = n, s?.(n, p), n.updateOptions({
29
- minimap: { enabled: !1 },
30
- // 禁用小地图
31
- lineNumbers: "on",
32
- // 显示行号
33
- roundedSelection: !1,
34
- // 方形选区
35
- scrollBeyondLastLine: !1,
36
- // 禁止滚动到最后一行之后
37
- readOnly: o,
38
- // 是否只读
39
- fontSize: 14
40
- // 字体大小
41
- });
42
- },
43
- onChange: (n) => {
44
- d?.(n || "");
59
+ style: {
60
+ width: h,
61
+ height: x,
62
+ border: `1px solid ${r ? "#3e3e3e" : "#d4d4d4"}`,
63
+ borderRadius: "4px",
64
+ overflow: "hidden",
65
+ backgroundColor: r ? "#1e1e1e" : "#ffffff"
45
66
  },
46
- options: {
47
- readOnly: o
48
- }
67
+ children: [
68
+ /* @__PURE__ */ c(
69
+ w,
70
+ {
71
+ editor: e,
72
+ style: {
73
+ height: "100%",
74
+ overflow: "auto"
75
+ }
76
+ }
77
+ ),
78
+ /* @__PURE__ */ c("style", { children: `
79
+ .ProseMirror {
80
+ outline: none;
81
+ padding: 12px;
82
+ min-height: 100%;
83
+ font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
84
+ font-size: 14px;
85
+ line-height: 1.5;
86
+ color: ${r ? "#d4d4d4" : "#333333"};
87
+ white-space: pre-wrap;
88
+ word-wrap: break-word;
89
+ }
90
+ .ProseMirror p {
91
+ margin: 0;
92
+ padding: 0;
93
+ }
94
+ .ProseMirror p + p {
95
+ margin-top: 0;
96
+ }
97
+ .ProseMirror:focus {
98
+ outline: none;
99
+ }
100
+ ${r ? `
101
+ .ProseMirror {
102
+ background-color: #1e1e1e;
103
+ }
104
+ ` : `
105
+ .ProseMirror {
106
+ background-color: #ffffff;
107
+ }
108
+ `}
109
+ ` })
110
+ ]
49
111
  }
50
112
  );
51
113
  };
52
114
  export {
53
- M as TxtEditor
115
+ U as TxtEditor
54
116
  };
@@ -1,83 +1,76 @@
1
- import { jsxs as w, Fragment as E, jsx as e } from "react/jsx-runtime";
2
- import { useRef as n } from "react";
3
- import t from "clsx";
4
- import { useScroll as F, useTransform as _, useMotionTemplate as v, motion as i } from "motion/react";
5
- import y from "./index.module.css.js";
6
- const I = 16, L = 1.5, R = "normal", k = ({
7
- content: c,
8
- lineHeight: a = L,
9
- fontSize: f = I,
10
- fontWeight: m = R,
11
- className: p = "",
12
- style: d = {},
1
+ import { jsxs as h, Fragment as v, jsx as t } from "react/jsx-runtime";
2
+ import { useRef as c } from "react";
3
+ import r from "clsx";
4
+ import { useScroll as y, useTransform as I, useMotionTemplate as L, motion as l } from "motion/react";
5
+ import e from "./index.module.css.js";
6
+ const R = 16, S = 1.5, A = "normal", O = ({
7
+ content: a,
8
+ lineHeight: m = S,
9
+ fontSize: p = R,
10
+ fontWeight: d = A,
11
+ className: f = "",
12
+ style: g = {},
13
13
  onProgressChange: u,
14
- initialScrollPosition: S,
15
- cacheKey: A,
16
- showTopProgress: h = !0,
17
- topProgressClassName: x,
18
- showBottomProgress: g = !0,
19
- bottomProgressClassName: T
14
+ initialScrollPosition: D,
15
+ cacheKey: H,
16
+ showTopProgress: x = !0,
17
+ topProgressClassName: T,
18
+ showBottomProgress: N = !0,
19
+ bottomProgressClassName: E
20
20
  }) => {
21
- const r = n(null), o = n(null), { scrollYProgress: l } = F({
22
- container: r,
23
- target: o
24
- }), s = _(() => (l.get() * 100).toFixed(2).replace(/\.0*$/, "")), N = v`${s}%`;
25
- return s.on("change", (b) => {
26
- u?.(Number(b));
27
- }), /* @__PURE__ */ w(E, { children: [
28
- h && /* @__PURE__ */ e(
29
- i.div,
21
+ const o = c(null), n = c(null), { scrollYProgress: s } = y({
22
+ container: o,
23
+ target: n
24
+ }), i = I(() => (s.get() * 100).toFixed(2).replace(/\.0*$/, "")), F = L`${i}%`;
25
+ return i.on("change", (_) => {
26
+ u?.(Number(_));
27
+ }), /* @__PURE__ */ h(v, { children: [
28
+ x && /* @__PURE__ */ t(
29
+ l.div,
30
30
  {
31
31
  id: "scroll-indicator",
32
- className: t(
33
- "fixed left-0 top-0 right-0 bg-[#ff0088] h-2.5",
34
- x
35
- ),
32
+ className: r(e["xiping-top-progress"], T),
36
33
  style: {
37
- scaleX: l,
34
+ scaleX: s,
38
35
  originX: 0
39
36
  }
40
37
  }
41
38
  ),
42
- /* @__PURE__ */ e(
39
+ /* @__PURE__ */ t(
43
40
  "div",
44
41
  {
45
- className: t(
46
- "relative w-full h-full overflow-y-auto",
47
- y.textContent
48
- // "scrollbar-thumb-rounded-full scrollbar-track-rounded-full scrollbar scrollbar-thumb-slate-700 scrollbar-track-slate-300",
49
- ),
50
- ref: r,
51
- children: /* @__PURE__ */ e(
42
+ className: r(e["xiping-container"], e.textContent),
43
+ ref: o,
44
+ children: /* @__PURE__ */ t(
52
45
  "div",
53
46
  {
54
- ref: o,
55
- className: t("w-full whitespace-pre-wrap break-words", p),
47
+ ref: n,
48
+ className: r(e["xiping-content"], f),
56
49
  style: {
57
- fontSize: `${f}px`,
58
- lineHeight: a,
59
- fontWeight: m,
60
- ...d
50
+ fontSize: `${p}px`,
51
+ lineHeight: m,
52
+ fontWeight: d,
53
+ ...g
61
54
  },
62
- children: c
55
+ children: a
63
56
  }
64
57
  )
65
58
  }
66
59
  ),
67
- g && /* @__PURE__ */ e(
68
- i.div,
60
+ N && /* @__PURE__ */ t(
61
+ l.div,
69
62
  {
70
63
  id: "scroll-present",
71
- className: t(
72
- "fixed text-white rounded text-sm bg-black/70 pl-2 pr-2 pb-1 pt-1 right-5 bottom-5",
73
- T
64
+ className: r(
65
+ e["xiping-bottom-progress"],
66
+ E
74
67
  ),
75
- children: N
68
+ children: F
76
69
  }
77
70
  )
78
71
  ] });
79
72
  };
80
73
  export {
81
- k as TxtReader,
82
- k as default
74
+ O as TxtReader,
75
+ O as default
83
76
  };
@@ -1,7 +1,11 @@
1
- const t = "_textContent_8n59h_23", e = {
1
+ const t = "_textContent_yv2bi_63", n = {
2
+ "xiping-top-progress": "_xiping-top-progress_yv2bi_23",
3
+ "xiping-container": "_xiping-container_yv2bi_33",
4
+ "xiping-content": "_xiping-content_yv2bi_41",
5
+ "xiping-bottom-progress": "_xiping-bottom-progress_yv2bi_48",
2
6
  textContent: t
3
7
  };
4
8
  export {
5
- e as default,
9
+ n as default,
6
10
  t as textContent
7
11
  };
@@ -9,6 +9,16 @@ interface VariableProximityProps extends HTMLAttributes<HTMLSpanElement> {
9
9
  className?: string;
10
10
  onClick?: () => void;
11
11
  style?: React.CSSProperties;
12
+ /**
13
+ * 自定义字体族,如果不提供则使用默认的可变字体
14
+ * 例如: "'Custom Font', 'Roboto Flex', sans-serif"
15
+ */
16
+ fontFamily?: string;
17
+ /**
18
+ * 是否自动加载默认字体(当 fontFamily 未提供时)
19
+ * @default true
20
+ */
21
+ autoLoadFonts?: boolean;
12
22
  }
13
23
  declare const VariableProximity: import('react').ForwardRefExoticComponent<VariableProximityProps & import('react').RefAttributes<HTMLSpanElement>>;
14
24
  export { VariableProximity };
@@ -1,140 +1,212 @@
1
- import { jsxs as $, jsx as C } from "react/jsx-runtime";
2
- import { forwardRef as k, useRef as d, useMemo as D, useEffect as F } from "react";
3
- import { motion as T } from "motion/react";
1
+ import { jsxs as G, jsx as k } from "react/jsx-runtime";
2
+ import { forwardRef as H, useRef as y, useMemo as N, useEffect as w } from "react";
3
+ import { motion as J } from "motion/react";
4
4
  /* empty css */
5
- function z(c) {
6
- F(() => {
7
- let i;
8
- const s = () => {
9
- c(), i = requestAnimationFrame(s);
5
+ const l = {
6
+ robotoFlex: !1,
7
+ notoSansSC: !1,
8
+ loading: !1
9
+ };
10
+ function V(n) {
11
+ if (typeof document > "u") return !1;
12
+ try {
13
+ return document.fonts.check(`1em "${n}"`);
14
+ } catch {
15
+ return !0;
16
+ }
17
+ }
18
+ function K() {
19
+ if (l.loading || l.robotoFlex && l.notoSansSC) return;
20
+ l.loading = !0;
21
+ const n = V("Roboto Flex"), r = V("Noto Sans SC");
22
+ if (n && (l.robotoFlex = !0), r && (l.notoSansSC = !0), n && r) {
23
+ l.loading = !1;
24
+ return;
25
+ }
26
+ const i = (t, s) => {
27
+ if (document.querySelector(`link[href="${t}"]`)) {
28
+ s?.();
29
+ return;
30
+ }
31
+ const c = document.createElement("link");
32
+ c.rel = "stylesheet", c.href = t, c.onload = () => s?.(), document.head.appendChild(c);
33
+ }, f = [
34
+ // 国内镜像(优先)
35
+ {
36
+ roboto: "https://fonts.loli.net/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap",
37
+ noto: "https://fonts.loli.net/css2?family=Noto+Sans+SC:wght@100..900&display=swap"
38
+ },
39
+ // Google Fonts(备选)
40
+ {
41
+ roboto: "https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap",
42
+ noto: "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100..900&display=swap"
43
+ }
44
+ ], d = (t) => {
45
+ if (t >= f.length) {
46
+ l.loading = !1;
47
+ return;
48
+ }
49
+ const s = f[t];
50
+ let m = 0;
51
+ const c = () => {
52
+ m++, m === 2 && (l.loading = !1);
53
+ };
54
+ n ? c() : i(s.roboto, () => {
55
+ l.robotoFlex = !0, c();
56
+ }), r ? c() : i(s.noto, () => {
57
+ l.notoSansSC = !0, c();
58
+ }), setTimeout(() => {
59
+ (!l.robotoFlex || !l.notoSansSC) && d(t + 1);
60
+ }, 3e3);
61
+ };
62
+ d(0);
63
+ }
64
+ function O(n = !0) {
65
+ w(() => {
66
+ n && typeof document < "u" && K();
67
+ }, [n]);
68
+ }
69
+ function Q(n) {
70
+ w(() => {
71
+ let r;
72
+ const i = () => {
73
+ n(), r = requestAnimationFrame(i);
10
74
  };
11
- return i = requestAnimationFrame(s), () => cancelAnimationFrame(i);
12
- }, [c]);
75
+ return r = requestAnimationFrame(i), () => cancelAnimationFrame(r);
76
+ }, [n]);
13
77
  }
14
- function G(c) {
15
- const i = d({ x: 0, y: 0 });
16
- return F(() => {
17
- const s = (r, a) => {
18
- if (c?.current) {
19
- const p = c.current.getBoundingClientRect();
20
- i.current = { x: r - p.left, y: a - p.top };
78
+ function W(n) {
79
+ const r = y({ x: 0, y: 0 });
80
+ return w(() => {
81
+ const i = (t, s) => {
82
+ if (n?.current) {
83
+ const m = n.current.getBoundingClientRect();
84
+ r.current = { x: t - m.left, y: s - m.top };
21
85
  } else
22
- i.current = { x: r, y: a };
23
- }, u = (r) => s(r.clientX, r.clientY), f = (r) => {
24
- const a = r.touches[0];
25
- s(a.clientX, a.clientY);
86
+ r.current = { x: t, y: s };
87
+ }, f = (t) => i(t.clientX, t.clientY), d = (t) => {
88
+ const s = t.touches[0];
89
+ i(s.clientX, s.clientY);
26
90
  };
27
- return window.addEventListener("mousemove", u), window.addEventListener("touchmove", f), () => {
28
- window.removeEventListener("mousemove", u), window.removeEventListener("touchmove", f);
91
+ return window.addEventListener("mousemove", f), window.addEventListener("touchmove", d), () => {
92
+ window.removeEventListener("mousemove", f), window.removeEventListener("touchmove", d);
29
93
  };
30
- }, [c]), i;
94
+ }, [n]), r;
31
95
  }
32
- const H = k(
33
- (c, i) => {
96
+ const Z = H(
97
+ (n, r) => {
34
98
  const {
35
- label: s,
36
- fromFontVariationSettings: u,
37
- toFontVariationSettings: f,
38
- containerRef: r,
39
- radius: a = 50,
40
- falloff: p = "linear",
41
- className: R = "",
42
- onClick: V,
43
- style: P,
44
- ...E
45
- } = c, x = d([]), v = d([]), h = G(r), g = d({
99
+ label: i,
100
+ fromFontVariationSettings: f,
101
+ toFontVariationSettings: d,
102
+ containerRef: t,
103
+ radius: s = 50,
104
+ falloff: m = "linear",
105
+ className: c = "",
106
+ onClick: E,
107
+ style: C,
108
+ fontFamily: g,
109
+ autoLoadFonts: P = !0,
110
+ ...A
111
+ } = n;
112
+ O(P && !g);
113
+ const b = y([]), v = y([]), S = W(t), F = y({
46
114
  x: null,
47
115
  y: null
48
- }), A = D(() => {
49
- const e = (t) => new Map(
50
- t.split(",").map((l) => l.trim()).map((l) => {
51
- const [m, y] = l.split(" ");
52
- return [m.replace(/['"]/g, ""), parseFloat(y)];
116
+ }), $ = N(() => {
117
+ const e = (o) => new Map(
118
+ o.split(",").map((p) => p.trim()).map((p) => {
119
+ const [h, x] = p.split(" ");
120
+ return [h.replace(/['"]/g, ""), parseFloat(x)];
53
121
  })
54
- ), n = e(u), o = e(f);
55
- return Array.from(n.entries()).map(([t, l]) => ({
56
- axis: t,
57
- fromValue: l,
58
- toValue: o.get(t) ?? l
122
+ ), a = e(f), u = e(d);
123
+ return Array.from(a.entries()).map(([o, p]) => ({
124
+ axis: o,
125
+ fromValue: p,
126
+ toValue: u.get(o) ?? p
59
127
  }));
60
- }, [u, f]), L = (e, n, o, t) => Math.sqrt((o - e) ** 2 + (t - n) ** 2), b = (e) => {
61
- const n = Math.min(Math.max(1 - e / a, 0), 1);
62
- switch (p) {
128
+ }, [f, d]), q = (e, a, u, o) => Math.sqrt((u - e) ** 2 + (o - a) ** 2), I = (e) => {
129
+ const a = Math.min(Math.max(1 - e / s, 0), 1);
130
+ switch (m) {
63
131
  case "exponential":
64
- return n ** 2;
132
+ return a ** 2;
65
133
  case "gaussian":
66
- return Math.exp(-((e / (a / 2)) ** 2) / 2);
134
+ return Math.exp(-((e / (s / 2)) ** 2) / 2);
67
135
  case "linear":
68
136
  default:
69
- return n;
137
+ return a;
70
138
  }
71
139
  };
72
- z(() => {
73
- if (!r?.current) return;
74
- const { x: e, y: n } = h.current;
75
- if (g.current.x === e && g.current.y === n)
140
+ Q(() => {
141
+ if (!t?.current) return;
142
+ const { x: e, y: a } = S.current;
143
+ if (F.current.x === e && F.current.y === a)
76
144
  return;
77
- g.current = { x: e, y: n };
78
- const o = r.current.getBoundingClientRect();
79
- x.current.forEach((t, l) => {
80
- if (!t) return;
81
- const m = t.getBoundingClientRect(), y = m.left + m.width / 2 - o.left, q = m.top + m.height / 2 - o.top, w = L(
82
- h.current.x,
83
- h.current.y,
84
- y,
85
- q
145
+ F.current = { x: e, y: a };
146
+ const u = t.current.getBoundingClientRect();
147
+ b.current.forEach((o, p) => {
148
+ if (!o) return;
149
+ const h = o.getBoundingClientRect(), x = h.left + h.width / 2 - u.left, Y = h.top + h.height / 2 - u.top, L = q(
150
+ S.current.x,
151
+ S.current.y,
152
+ x,
153
+ Y
86
154
  );
87
- if (w >= a) {
88
- t.style.fontVariationSettings = u;
155
+ if (L >= s) {
156
+ o.style.fontVariationSettings = f;
89
157
  return;
90
158
  }
91
- const B = b(w), M = A.map(({ axis: I, fromValue: S, toValue: X }) => {
92
- const Y = S + (X - S) * B;
93
- return `'${I}' ${Y}`;
159
+ const z = I(L), M = $.map(({ axis: T, fromValue: R, toValue: D }) => {
160
+ const U = R + (D - R) * z;
161
+ return `'${T}' ${U}`;
94
162
  }).join(", ");
95
- v.current[l] = M, t.style.fontVariationSettings = M;
163
+ v.current[p] = M, o.style.fontVariationSettings = M;
96
164
  });
97
165
  });
98
- const N = /[\u4e00-\u9fa5]/.test(s) ? s.split("") : s.split(" ").flatMap((e, n, o) => {
99
- const t = e.split("");
100
- return n < o.length - 1 ? [...t, " "] : t;
166
+ const j = /[\u4e00-\u9fa5]/.test(i) ? i.split("") : i.split(" ").flatMap((e, a, u) => {
167
+ const o = e.split("");
168
+ return a < u.length - 1 ? [...o, " "] : o;
101
169
  });
102
- let j = 0;
103
- return /* @__PURE__ */ $(
170
+ let B = 0;
171
+ const X = N(() => {
172
+ const e = { display: "inline", ...C };
173
+ return g && (e.fontFamily = g), e;
174
+ }, [g, C]);
175
+ return /* @__PURE__ */ G(
104
176
  "span",
105
177
  {
106
- ref: i,
107
- className: `${R} variable-proximity`,
108
- onClick: V,
109
- style: { display: "inline", ...P },
110
- ...E,
178
+ ref: r,
179
+ className: `${c} variable-proximity`,
180
+ onClick: E,
181
+ style: X,
182
+ ...A,
111
183
  children: [
112
- N.map((e, n) => {
113
- const o = j++;
114
- return /* @__PURE__ */ C(
115
- T.span,
184
+ j.map((e, a) => {
185
+ const u = B++;
186
+ return /* @__PURE__ */ k(
187
+ J.span,
116
188
  {
117
- ref: (t) => {
118
- x.current[o] = t;
189
+ ref: (o) => {
190
+ b.current[u] = o;
119
191
  },
120
192
  style: {
121
193
  display: e === " " ? "inline" : "inline-block",
122
- fontVariationSettings: v.current[o]
194
+ fontVariationSettings: v.current[u]
123
195
  },
124
196
  "aria-hidden": "true",
125
197
  children: e
126
198
  },
127
- n
199
+ a
128
200
  );
129
201
  }),
130
- /* @__PURE__ */ C("span", { className: "sr-only", children: s })
202
+ /* @__PURE__ */ k("span", { className: "sr-only", children: i })
131
203
  ]
132
204
  }
133
205
  );
134
206
  }
135
207
  );
136
- H.displayName = "VariableProximity";
208
+ Z.displayName = "VariableProximity";
137
209
  export {
138
- H as VariableProximity,
139
- H as default
210
+ Z as VariableProximity,
211
+ Z as default
140
212
  };
@@ -0,0 +1,23 @@
1
+ import { default as React } from 'react';
2
+ import { SubtitleData, HoverTarget } from '../subtitle-player/SubtitlePlayer';
3
+ export interface VideoSubtitlePlayerProps {
4
+ /** 视频URL */
5
+ videoUrl: string;
6
+ /** 字幕数据 */
7
+ subtitles: SubtitleData[];
8
+ /** 视频封面图 */
9
+ poster?: string;
10
+ /** 自定义类名 */
11
+ className?: string;
12
+ /** 自定义样式 */
13
+ style?: React.CSSProperties;
14
+ /** 自定义详情获取函数,用于调用大模型API */
15
+ onFetchDetail?: (target: HoverTarget | null) => Promise<void>;
16
+ }
17
+ /**
18
+ * 视频字幕播放器组件
19
+ * 左侧:上部分16:9视频播放器,下部分字幕显示
20
+ * 右侧:字幕详情(单词/短语的发音、解释等)
21
+ */
22
+ export declare const VideoSubtitlePlayer: React.FC<VideoSubtitlePlayerProps>;
23
+ export default VideoSubtitlePlayer;