@robot-admin/naive-ui-components 0.17.1 → 0.17.3

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 (129) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/C_AntV.css +105 -105
  3. package/dist/C_AntV2.cjs +3 -3
  4. package/dist/C_AntV2.js +3 -3
  5. package/dist/C_AudioPlayer.css +53 -53
  6. package/dist/C_AudioPlayer2.cjs +1 -1
  7. package/dist/C_AudioPlayer2.js +1 -1
  8. package/dist/C_FilePreview.css +38 -38
  9. package/dist/C_FilePreview2.cjs +1 -1
  10. package/dist/C_FilePreview2.js +1 -1
  11. package/dist/C_FullCalendar.css +10 -11
  12. package/dist/C_FullCalendar2.cjs +1 -1
  13. package/dist/C_FullCalendar2.js +1 -1
  14. package/dist/C_Table.base.css +109 -109
  15. package/dist/C_Table.css +109 -109
  16. package/dist/C_Tabs.css +18 -18
  17. package/dist/C_TagsView.css +51 -51
  18. package/dist/C_TagsView2.cjs +1 -1
  19. package/dist/C_TagsView2.js +1 -1
  20. package/dist/C_VideoPlayer.css +20 -20
  21. package/dist/C_VideoPlayer2.cjs +2 -2
  22. package/dist/C_VideoPlayer2.js +3 -3
  23. package/dist/C_VtableGantt.css +44 -29
  24. package/dist/C_VtableGantt2.cjs +1 -1
  25. package/dist/C_VtableGantt2.js +1 -1
  26. package/dist/C_WorkFlow.css +111 -111
  27. package/dist/C_WorkFlow2.cjs +1 -1
  28. package/dist/C_WorkFlow2.js +1 -1
  29. package/dist/constants.d.cts +3 -3
  30. package/dist/constants.d.ts +3 -3
  31. package/dist/constants2.d.cts +2 -2
  32. package/dist/constants2.d.ts +2 -2
  33. package/dist/constants4.d.cts +6 -6
  34. package/dist/constants4.d.ts +6 -6
  35. package/dist/constants5.d.cts +11 -10
  36. package/dist/constants5.d.ts +11 -10
  37. package/dist/data.d.cts +13 -13
  38. package/dist/data.d.ts +13 -13
  39. package/dist/data2.cjs +1 -1
  40. package/dist/data2.js +1 -1
  41. package/dist/index.vue.d.cts +6 -6
  42. package/dist/index.vue.d.ts +6 -6
  43. package/dist/index10.vue.d.cts +5 -5
  44. package/dist/index10.vue.d.ts +4 -4
  45. package/dist/index11.vue.d.cts +4 -4
  46. package/dist/index11.vue.d.ts +6 -6
  47. package/dist/index12.vue.d.cts +6 -6
  48. package/dist/index13.vue.d.ts +5 -5
  49. package/dist/index14.vue.d.cts +5 -5
  50. package/dist/index14.vue.d.ts +5 -5
  51. package/dist/index15.vue.d.cts +5 -5
  52. package/dist/index15.vue.d.ts +2 -2
  53. package/dist/index16.vue.d.cts +2 -2
  54. package/dist/index17.vue.d.ts +1 -1
  55. package/dist/index18.vue.d.cts +1 -1
  56. package/dist/index18.vue.d.ts +6 -6
  57. package/dist/index19.vue.d.cts +6 -6
  58. package/dist/index19.vue.d.ts +5 -5
  59. package/dist/index2.vue.d.cts +2 -2
  60. package/dist/index2.vue.d.ts +2 -2
  61. package/dist/index20.vue.d.cts +1 -1
  62. package/dist/index20.vue.d.ts +1 -1
  63. package/dist/index21.vue.d.cts +1 -1
  64. package/dist/index21.vue.d.ts +1 -1
  65. package/dist/index22.vue.d.cts +2 -2
  66. package/dist/index22.vue.d.ts +2 -2
  67. package/dist/index23.vue.d.cts +1 -1
  68. package/dist/index23.vue.d.ts +1 -1
  69. package/dist/index25.vue.d.cts +8 -3
  70. package/dist/index25.vue.d.ts +8 -3
  71. package/dist/index27.vue.d.cts +2 -2
  72. package/dist/index27.vue.d.ts +2 -2
  73. package/dist/index28.vue.d.cts +4 -4
  74. package/dist/index28.vue.d.ts +4 -4
  75. package/dist/index3.vue.d.cts +2 -2
  76. package/dist/index3.vue.d.ts +2 -2
  77. package/dist/index4.vue.d.cts +5 -5
  78. package/dist/index5.vue.d.ts +2 -2
  79. package/dist/index6.vue.d.cts +2 -2
  80. package/dist/index6.vue.d.ts +4 -4
  81. package/dist/index7.vue.d.cts +4 -4
  82. package/dist/index7.vue.d.ts +2 -2
  83. package/dist/index8.vue.d.cts +2 -2
  84. package/dist/index8.vue.d.ts +4 -4
  85. package/dist/index9.vue.d.cts +4 -4
  86. package/dist/index9.vue.d.ts +5 -5
  87. package/dist/mapUtils.d.cts +2 -2
  88. package/dist/mapUtils.d.ts +2 -2
  89. package/dist/presets.d.cts +1 -1
  90. package/dist/presets.d.ts +1 -1
  91. package/dist/style.css +559 -545
  92. package/dist/useCalendarEvents.d.cts +10 -0
  93. package/dist/useCalendarEvents.d.ts +10 -0
  94. package/dist/useCollapsePanel.d.cts +3 -3
  95. package/dist/useCollapsePanel.d.ts +3 -3
  96. package/dist/useCropperCore.d.cts +5 -5
  97. package/dist/useCropperCore.d.ts +5 -5
  98. package/dist/useDraggableLayout.d.cts +7 -7
  99. package/dist/useDraggableLayout.d.ts +7 -7
  100. package/dist/useDynamicFormState.d.cts +3 -3
  101. package/dist/useDynamicFormState.d.ts +3 -3
  102. package/dist/useEdgeInteraction.d.cts +4 -2
  103. package/dist/useEdgeInteraction.d.ts +4 -2
  104. package/dist/useFullscreen.d.cts +5 -3
  105. package/dist/useFullscreen.d.ts +5 -3
  106. package/dist/useInfiniteScroll.d.cts +2 -2
  107. package/dist/useInfiniteScroll.d.ts +2 -2
  108. package/dist/useQRCode.d.cts +3 -3
  109. package/dist/useQRCode.d.ts +3 -3
  110. package/dist/useSearchState.d.cts +5 -5
  111. package/dist/useSearchState.d.ts +5 -5
  112. package/dist/useSignatureHistory.d.cts +6 -6
  113. package/dist/useSignatureHistory.d.ts +6 -6
  114. package/dist/useSplitResize.d.cts +8 -8
  115. package/dist/useSplitResize.d.ts +8 -8
  116. package/dist/useTableQuery.cjs +3 -3
  117. package/dist/useTableQuery.d.cts +12 -12
  118. package/dist/useTableQuery.d.ts +12 -12
  119. package/dist/useTableQuery.js +3 -3
  120. package/dist/useTimeSelection.d.cts +4 -4
  121. package/dist/useTimeSelection.d.ts +4 -4
  122. package/dist/useWorkflowValidation.d.cts +9 -4
  123. package/dist/useWorkflowValidation.d.ts +9 -4
  124. package/dist/verification.d.cts +5 -5
  125. package/dist/verification.d.ts +5 -5
  126. package/docs/components.en.md +4 -0
  127. package/docs/components.md +4 -0
  128. package/docs/guides/table-density.md +6 -0
  129. package/package.json +1 -1
@@ -69,7 +69,7 @@
69
69
  * 标签组件样式 - 精简版
70
70
  * =========================================== */
71
71
  /* --------- 标签视图容器 --------- */
72
- .tags-view-container[data-v-83599594] {
72
+ .tags-view-container[data-v-bd2a9250] {
73
73
  border-bottom: 1px solid var(--color-border);
74
74
  padding: 8px 16px 0;
75
75
  position: relative;
@@ -77,14 +77,14 @@
77
77
  }
78
78
 
79
79
  /* --------- 滚动轨道容器 --------- */
80
- .tags-track[data-v-83599594] {
80
+ .tags-track[data-v-bd2a9250] {
81
81
  width: 100%;
82
82
  overflow: hidden;
83
83
  position: relative;
84
84
  }
85
85
 
86
86
  /* --------- 滚动容器 --------- */
87
- .tags-container[data-v-83599594] {
87
+ .tags-container[data-v-bd2a9250] {
88
88
  display: flex;
89
89
  overflow-x: auto;
90
90
  overflow-y: hidden;
@@ -94,12 +94,12 @@
94
94
  align-items: center;
95
95
  min-height: 40px;
96
96
  }
97
- .tags-container[data-v-83599594]::-webkit-scrollbar {
97
+ .tags-container[data-v-bd2a9250]::-webkit-scrollbar {
98
98
  display: none;
99
99
  }
100
100
 
101
101
  /* --------- 现代化标签样式 --------- */
102
- .n-tag[data-v-83599594] {
102
+ .n-tag[data-v-bd2a9250] {
103
103
  position: relative;
104
104
  display: inline-flex;
105
105
  align-items: center;
@@ -116,7 +116,7 @@
116
116
  white-space: nowrap;
117
117
  /* 内部高光效果 */
118
118
  }
119
- .n-tag[data-v-83599594]::before {
119
+ .n-tag[data-v-bd2a9250]::before {
120
120
  content: "";
121
121
  position: absolute;
122
122
  top: 1px;
@@ -128,67 +128,67 @@
128
128
  opacity: 0.5;
129
129
  transition: opacity 0.22s ease;
130
130
  }
131
- .n-tag[data-v-83599594] {
131
+ .n-tag[data-v-bd2a9250] {
132
132
  /* --------- 悬停效果 --------- */
133
133
  }
134
- .n-tag[data-v-83599594]:hover:not([type=primary]) {
134
+ .n-tag[data-v-bd2a9250]:hover:not([type=primary]) {
135
135
  color: var(--color-primary) !important;
136
136
  border-color: var(--color-primary);
137
137
  transform: scale(1.02);
138
138
  }
139
- .n-tag[data-v-83599594]:hover:not([type=primary])::before {
139
+ .n-tag[data-v-bd2a9250]:hover:not([type=primary])::before {
140
140
  opacity: 0.8;
141
141
  }
142
- .n-tag[data-v-83599594]:hover:not([type=primary]) .c-icon,
143
- .n-tag[data-v-83599594]:hover:not([type=primary]) [class*='c-icon'] {
142
+ .n-tag[data-v-bd2a9250]:hover:not([type=primary]) .c-icon,
143
+ .n-tag[data-v-bd2a9250]:hover:not([type=primary]) [class*='c-icon'] {
144
144
  color: var(--color-primary) !important;
145
145
  }
146
- .n-tag:hover:not([type=primary]) i[data-v-83599594],
147
- .n-tag:hover:not([type=primary]) .icon[data-v-83599594] {
146
+ .n-tag:hover:not([type=primary]) i[data-v-bd2a9250],
147
+ .n-tag:hover:not([type=primary]) .icon[data-v-bd2a9250] {
148
148
  color: var(--color-primary) !important;
149
149
  }
150
- .n-tag[data-v-83599594]:hover:not([type=primary]) .n-tag__close {
150
+ .n-tag[data-v-bd2a9250]:hover:not([type=primary]) .n-tag__close {
151
151
  color: var(--color-primary) !important;
152
152
  opacity: 0.8;
153
153
  transform: scale(1.05);
154
154
  }
155
- .n-tag[data-v-83599594] {
155
+ .n-tag[data-v-bd2a9250] {
156
156
  /* --------- 激活状态 --------- */
157
157
  }
158
- .n-tag[type=primary][data-v-83599594] {
158
+ .n-tag[type=primary][data-v-bd2a9250] {
159
159
  background: var(--tag-active-bg, rgba(32, 128, 240, 0.08)) !important;
160
160
  color: var(--color-primary) !important;
161
161
  border-color: var(--color-primary) !important;
162
162
  font-weight: 600;
163
163
  transform: scale(1.02);
164
164
  }
165
- .n-tag[type=primary][data-v-83599594]::before {
165
+ .n-tag[type=primary][data-v-bd2a9250]::before {
166
166
  opacity: 0.6;
167
167
  }
168
- .n-tag[type=primary][data-v-83599594] .n-tag__content,
169
- .n-tag[type=primary][data-v-83599594] *:not(.n-tag__close) {
168
+ .n-tag[type=primary][data-v-bd2a9250] .n-tag__content,
169
+ .n-tag[type=primary][data-v-bd2a9250] *:not(.n-tag__close) {
170
170
  color: var(--color-primary) !important;
171
171
  }
172
- .n-tag[type=primary][data-v-83599594] .c-icon,
173
- .n-tag[type=primary][data-v-83599594] [class*='c-icon'] {
172
+ .n-tag[type=primary][data-v-bd2a9250] .c-icon,
173
+ .n-tag[type=primary][data-v-bd2a9250] [class*='c-icon'] {
174
174
  color: var(--color-primary) !important;
175
175
  }
176
- .n-tag[type=primary] i[data-v-83599594],
177
- .n-tag[type=primary] .icon[data-v-83599594] {
176
+ .n-tag[type=primary] i[data-v-bd2a9250],
177
+ .n-tag[type=primary] .icon[data-v-bd2a9250] {
178
178
  color: var(--color-primary) !important;
179
179
  }
180
- .n-tag[type=primary][data-v-83599594]:hover {
180
+ .n-tag[type=primary][data-v-bd2a9250]:hover {
181
181
  background: var(--tag-active-hover-bg, rgba(32, 128, 240, 0.12)) !important;
182
182
  transform: scale(1.03);
183
183
  }
184
- .n-tag[type=primary][data-v-83599594] .n-tag__close {
184
+ .n-tag[type=primary][data-v-bd2a9250] .n-tag__close {
185
185
  color: var(--color-primary) !important;
186
186
  opacity: 0.8;
187
187
  }
188
- .n-tag[data-v-83599594] {
188
+ .n-tag[data-v-bd2a9250] {
189
189
  /* --------- 关闭按钮 --------- */
190
190
  }
191
- .n-tag[data-v-83599594] .n-tag__close {
191
+ .n-tag[data-v-bd2a9250] .n-tag__close {
192
192
  width: 16px !important;
193
193
  height: 16px !important;
194
194
  border-radius: 8px !important;
@@ -203,10 +203,10 @@
203
203
  background: rgba(0, 0, 0, 0.02) !important;
204
204
  border: 1px solid transparent;
205
205
  }
206
- .n-tag[data-v-83599594] .n-tag__close:not(:hover) {
206
+ .n-tag[data-v-bd2a9250] .n-tag__close:not(:hover) {
207
207
  transform: scale(0.9);
208
208
  }
209
- .n-tag[data-v-83599594] .n-tag__close:hover {
209
+ .n-tag[data-v-bd2a9250] .n-tag__close:hover {
210
210
  background: linear-gradient(135deg, rgba(248, 113, 113, 0.1), rgba(239, 68, 68, 0.08)) !important;
211
211
  border-color: rgba(239, 68, 68, 0.15) !important;
212
212
  color: #ef4444 !important;
@@ -214,13 +214,13 @@
214
214
  transform: scale(0.6) !important;
215
215
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.2) !important;
216
216
  }
217
- .n-tag[data-v-83599594] .n-tag__close:active {
217
+ .n-tag[data-v-bd2a9250] .n-tag__close:active {
218
218
  transform: scale(0.95) !important;
219
219
  transition-duration: 0.1s !important;
220
220
  }
221
221
 
222
222
  /* --------- C_Icon --------- */
223
- [data-v-83599594] .c-icon {
223
+ [data-v-bd2a9250] .c-icon {
224
224
  margin-right: 4px;
225
225
  font-size: 12px;
226
226
  transition: color 0.22s ease;
@@ -230,63 +230,63 @@
230
230
 
231
231
  /* --------- 响应式 --------- */
232
232
  @media (max-width: 768px) {
233
- .tags-view-container[data-v-83599594] {
233
+ .tags-view-container[data-v-bd2a9250] {
234
234
  padding: 6px 12px 0;
235
235
  }
236
- .n-tag[data-v-83599594] {
236
+ .n-tag[data-v-bd2a9250] {
237
237
  height: 26px;
238
238
  padding: 0 10px;
239
239
  font-size: 11px;
240
240
  margin-right: 3px;
241
241
  border-radius: 13px;
242
242
  }
243
- .n-tag[data-v-83599594] .n-tag__close {
243
+ .n-tag[data-v-bd2a9250] .n-tag__close {
244
244
  width: 14px;
245
245
  height: 14px;
246
246
  font-size: 11px;
247
247
  margin-left: 4px;
248
248
  }
249
- .tags-container[data-v-83599594] {
249
+ .tags-container[data-v-bd2a9250] {
250
250
  padding: 0 12px;
251
251
  min-height: 36px;
252
252
  }
253
- [data-v-83599594] .c-icon {
253
+ [data-v-bd2a9250] .c-icon {
254
254
  font-size: 11px;
255
255
  margin-right: 3px;
256
256
  }
257
257
  }
258
258
  /* --------- 暗色主题 --------- */
259
- [data-theme=dark] .n-tag[data-v-83599594] .n-tag__close {
259
+ [data-theme=dark] .n-tag[data-v-bd2a9250] .n-tag__close {
260
260
  background: rgba(255, 255, 255, 0.03) !important;
261
261
  }
262
- [data-theme=dark] .n-tag[data-v-83599594] .n-tag__close:hover {
262
+ [data-theme=dark] .n-tag[data-v-bd2a9250] .n-tag__close:hover {
263
263
  background: linear-gradient(135deg, rgba(248, 113, 113, 0.12), rgba(239, 68, 68, 0.1)) !important;
264
264
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.25) !important;
265
265
  }
266
266
 
267
267
  /* layer: icons */
268
- .i-mdi\:align-horizontal-left[data-v-83599594]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 22H2V2h2zM22 7H6v3h16zm-6 7H6v3h10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
269
- .i-mdi\:align-horizontal-right[data-v-83599594]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20 2h2v20h-2zM2 10h16V7H2zm6 7h10v-3H8z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
270
- .i-mdi\:arrow-left-right-bold[data-v-83599594]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8 14v4l-6-6l6-6v4h8V6l6 6l-6 6v-4z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
271
- .i-mdi\:close[data-v-83599594]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
272
- .i-mdi\:tally-mark-5[data-v-83599594]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 10.73V19h-2v-7.64L15 12v7h-2v-6.38l-2 .64V19H9v-5.11l-2 .61V19H5v-3.85l-2.43.77L2 14l3-.95V5h2v7.42l2-.63V5h2v6.16l2-.63V5h2v4.9l2-.64V5h2v3.63L21 8l.57 1.92z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
268
+ .i-mdi\:align-horizontal-left[data-v-bd2a9250]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 22H2V2h2zM22 7H6v3h16zm-6 7H6v3h10z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
269
+ .i-mdi\:align-horizontal-right[data-v-bd2a9250]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20 2h2v20h-2zM2 10h16V7H2zm6 7h10v-3H8z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
270
+ .i-mdi\:arrow-left-right-bold[data-v-bd2a9250]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8 14v4l-6-6l6-6v4h8V6l6 6l-6 6v-4z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
271
+ .i-mdi\:close[data-v-bd2a9250]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
272
+ .i-mdi\:tally-mark-5[data-v-bd2a9250]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 10.73V19h-2v-7.64L15 12v7h-2v-6.38l-2 .64V19H9v-5.11l-2 .61V19H5v-3.85l-2.43.77L2 14l3-.95V5h2v7.42l2-.63V5h2v6.16l2-.63V5h2v4.9l2-.64V5h2v3.63L21 8l.57 1.92z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;vertical-align:middle;width:1em;height:1em;}
273
273
  /* layer: shortcuts */
274
- .container[data-v-83599594]{width:100%;}
274
+ .container[data-v-bd2a9250]{width:100%;}
275
275
  @media (min-width: 640px){
276
- .container[data-v-83599594]{max-width:640px;}
276
+ .container[data-v-bd2a9250]{max-width:640px;}
277
277
  }
278
278
  @media (min-width: 768px){
279
- .container[data-v-83599594]{max-width:768px;}
279
+ .container[data-v-bd2a9250]{max-width:768px;}
280
280
  }
281
281
  @media (min-width: 1024px){
282
- .container[data-v-83599594]{max-width:1024px;}
282
+ .container[data-v-bd2a9250]{max-width:1024px;}
283
283
  }
284
284
  @media (min-width: 1280px){
285
- .container[data-v-83599594]{max-width:1280px;}
285
+ .container[data-v-bd2a9250]{max-width:1280px;}
286
286
  }
287
287
  @media (min-width: 1536px){
288
- .container[data-v-83599594]{max-width:1536px;}
288
+ .container[data-v-bd2a9250]{max-width:1536px;}
289
289
  }
290
290
  /* layer: default */
291
- .inline[data-v-83599594]{display:inline;}
292
- .block[data-v-83599594]{display:block;}
291
+ .inline[data-v-bd2a9250]{display:inline;}
292
+ .block[data-v-bd2a9250]{display:block;}
@@ -1 +1 @@
1
- require(`./chunk.cjs`);const e=require(`./C_Icon2.cjs`),t=require(`./export-helper.cjs`);let n=require(`vue`),r=require(`naive-ui`),i=require(`vue-router`);const a=e=>{if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.path==`string`&&t.path.startsWith(`/`)&&!t.path.startsWith(`//`)&&typeof t.title==`string`},o=e=>{if(!(!e||typeof e!=`object`||Array.isArray(e)))return Object.fromEntries(Object.entries(e).filter(([e,t])=>![`__proto__`,`prototype`,`constructor`].includes(e)&&(e!==`affix`||typeof t==`boolean`)))};function s(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>a(e)?[{path:e.path,title:e.title,originalTitle:typeof e.originalTitle==`string`?e.originalTitle:void 0,icon:typeof e.icon==`string`?e.icon:void 0,meta:o(e.meta)}]:[]):[]}catch{return[]}}function c(e={}){let{persistKey:t=`__tags_view_list__`,homePath:r=`/home`}=e,i=()=>{if(!t)return[];try{return s(localStorage.getItem(t))}catch{return[]}},a=e=>{if(t)try{localStorage.setItem(t,JSON.stringify(e))}catch{}},o=(0,n.ref)(i()),c=(0,n.ref)(``),l=()=>a(o.value),u=e=>{e?o.value=e:o.value=[...new Map(o.value.map(e=>[e.path,e])).values()],l()},d=e=>{c.value=e};return{tagsViewList:o,activeTag:c,homePath:r,initTags:u,setActiveTag:d,addTag:e=>{let t=o.value.findIndex(t=>t.path===e.path);if(t===-1)o.value.push(e);else{let n=o.value[t];(n.title!==e.title||!n.originalTitle)&&(n.title=e.title,n.originalTitle=e.originalTitle||n.originalTitle)}d(e.path),l()},removeTag:e=>{if(e>=0&&e<o.value.length){let t=o.value.splice(e,1)[0]?.path??null;return l(),t}return null},removeOtherTags:e=>{o.value=o.value.filter((t,n)=>n===0||t.meta?.affix||n===e),l()},removeLeftTags:e=>{o.value=o.value.filter((t,n)=>n===0||t.meta?.affix||n>=e),l()},removeRightTags:e=>{o.value=o.value.filter((t,n)=>t.meta?.affix||n<=e),l()},removeAllTags:()=>{o.value=o.value.filter(e=>e.meta?.affix),l()}}}const l={class:`tags-view-container`},u=(0,n.defineComponent)({name:`C_TagsView`,__name:`index`,props:{labelFormatter:{},homePath:{default:`/home`},homeTitle:{default:`首页`},homeIcon:{default:`mdi:home`},persistKey:{default:`__tags_view_list__`},contextMenuLabels:{default:()=>({close:`关闭`,closeOthers:`关闭其他`,closeLeft:`关闭左侧`,closeRight:`关闭右侧`,closeAll:`关闭所有`})},tagsViewOptions:{}},emits:[`close`,`closeAll`],setup(t,{expose:a,emit:o}){let s=t,u=o,d=(0,i.useRoute)(),f=(0,i.useRouter)(),p=c(s.tagsViewOptions??{persistKey:s.persistKey,homePath:s.homePath});if(p.tagsViewList.value.length>0&&s.labelFormatter){let e=f.getRoutes(),t=p.tagsViewList.value.map(t=>{let n=e.find(e=>e.path===t.path),r=t.originalTitle||n?.meta?.title||t.title;return{...t,originalTitle:r,title:s.labelFormatter(r)}});p.initTags(t)}let m=e=>s.labelFormatter?s.labelFormatter(e):e,h=(0,n.ref)(!1),g=(0,n.ref)(0),_=(0,n.ref)(0),v=(0,n.ref)(null),y=(0,n.ref)(-1),b=(0,n.ref)(),x=(0,n.ref)(),S=e=>e.path===d.path,C=e=>e.meta?.affix,w=e=>{let t=x.value;t&&(e.preventDefault(),t.scrollTo({left:t.scrollLeft+e.deltaY,behavior:`smooth`}))},T=e=>{(0,n.nextTick)(()=>{let t=[...x.value?.querySelectorAll(`[data-path]`)??[]].find(t=>t.dataset.path===e);t&&t.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})})},E=e=>{e.path!==d.path&&f.push(e.path).catch(()=>void 0),T(e.path)},D=(e,t)=>{if(C(e))return;let n=S(e),r=p.tagsViewList.value.length;if(p.removeTag(t),n){let e=p.tagsViewList.value,n=t===r-1,i;i=n?e[t-1]?.path||s.homePath:e[e.length-1]?.path||s.homePath,f.push(i).catch(()=>void 0),u(`close`,i)}},O=(e,t,n)=>{e.preventDefault(),v.value=t,y.value=n,h.value=!0,g.value=e.clientX,_.value=e.clientY},k=()=>h.value=!1,A=(0,n.computed)(()=>{let e=s.contextMenuLabels;return[{type:`option`,label:e.close??`关闭`,key:`close`,disabled:C(v.value),icon:()=>(0,n.h)(`span`,{class:`i-mdi:close`})},{type:`option`,label:e.closeOthers??`关闭其他`,key:`closeOthers`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:arrow-left-right-bold`})},{type:`option`,label:e.closeLeft??`关闭左侧`,key:`closeLeft`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:align-horizontal-left`})},{type:`option`,label:e.closeRight??`关闭右侧`,key:`closeRight`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:align-horizontal-right`})},{type:`option`,label:e.closeAll??`关闭所有`,key:`closeAll`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:tally-mark-5`})}]}),j=e=>{if(!(!v.value||y.value===-1)){switch(e){case`close`:D(v.value,y.value);break;case`closeOthers`:p.removeOtherTags(y.value);break;case`closeLeft`:p.removeLeftTags(y.value);break;case`closeRight`:p.removeRightTags(y.value);break;case`closeAll`:p.removeAllTags(),f.push(s.homePath).catch(()=>void 0),u(`closeAll`);break}k()}};return(0,n.watch)(()=>d.path,e=>{let t=e===s.homePath?s.homeTitle:d.meta.title||`Unnamed Page`;p.addTag({path:e,originalTitle:t,title:m(t),icon:e===s.homePath?s.homeIcon:d.meta.icon,meta:{affix:d.meta.affix}}),p.setActiveTag(e),T(e)},{immediate:!0}),a({tags:p,scrollToTag:T}),(t,i)=>{let a=r.NTag,o=r.NDropdown;return(0,n.openBlock)(),(0,n.createElementBlock)(`div`,l,[(0,n.createElementVNode)(`div`,{class:`tags-track`,ref_key:`tagsTrack`,ref:b,onWheel:w},[(0,n.createElementVNode)(`div`,{class:`tags-container`,ref_key:`tagsContainer`,ref:x},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)((0,n.unref)(p).tagsViewList.value,(t,r)=>((0,n.openBlock)(),(0,n.createBlock)(a,{key:t.path,type:S(t)?`primary`:`default`,closable:!C(t),"data-path":t.path,onClose:(0,n.withModifiers)(e=>D(t,r),[`stop`]),onClick:e=>E(t),onContextmenu:(0,n.withModifiers)(e=>O(e,t,r),[`prevent`])},{icon:(0,n.withCtx)(()=>[t.icon?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:0,name:t.icon,size:12},null,8,[`name`])):(0,n.createCommentVNode)(`v-if`,!0)]),default:(0,n.withCtx)(()=>[(0,n.createTextVNode)(` `+(0,n.toDisplayString)(t.title),1)]),_:2},1032,[`type`,`closable`,`data-path`,`onClose`,`onClick`,`onContextmenu`]))),128))],512)],544),h.value?((0,n.openBlock)(),(0,n.createBlock)(o,{key:0,show:h.value,options:A.value,x:g.value,y:_.value,onClickoutside:k,onSelect:j},null,8,[`show`,`options`,`x`,`y`])):(0,n.createCommentVNode)(`v-if`,!0)])}}});var d=t.t(u,[[`__scopeId`,`data-v-83599594`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return d}});
1
+ require(`./chunk.cjs`);const e=require(`./C_Icon2.cjs`),t=require(`./export-helper.cjs`);let n=require(`vue`),r=require(`naive-ui`),i=require(`vue-router`);const a=e=>{if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.path==`string`&&t.path.startsWith(`/`)&&!t.path.startsWith(`//`)&&typeof t.title==`string`},o=e=>{if(!(!e||typeof e!=`object`||Array.isArray(e)))return Object.fromEntries(Object.entries(e).filter(([e,t])=>![`__proto__`,`prototype`,`constructor`].includes(e)&&(e!==`affix`||typeof t==`boolean`)))};function s(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>a(e)?[{path:e.path,title:e.title,originalTitle:typeof e.originalTitle==`string`?e.originalTitle:void 0,icon:typeof e.icon==`string`?e.icon:void 0,meta:o(e.meta)}]:[]):[]}catch{return[]}}function c(e={}){let{persistKey:t=`__tags_view_list__`,homePath:r=`/home`}=e,i=()=>{if(!t)return[];try{return s(localStorage.getItem(t))}catch{return[]}},a=e=>{if(t)try{localStorage.setItem(t,JSON.stringify(e))}catch{}},o=(0,n.ref)(i()),c=(0,n.ref)(``),l=()=>a(o.value),u=e=>{e?o.value=e:o.value=[...new Map(o.value.map(e=>[e.path,e])).values()],l()},d=e=>{c.value=e};return{tagsViewList:o,activeTag:c,homePath:r,initTags:u,setActiveTag:d,addTag:e=>{let t=o.value.findIndex(t=>t.path===e.path);if(t===-1)o.value.push(e);else{let n=o.value[t];(n.title!==e.title||!n.originalTitle)&&(n.title=e.title,n.originalTitle=e.originalTitle||n.originalTitle)}d(e.path),l()},removeTag:e=>{if(e>=0&&e<o.value.length){let t=o.value.splice(e,1)[0]?.path??null;return l(),t}return null},removeOtherTags:e=>{o.value=o.value.filter((t,n)=>n===0||t.meta?.affix||n===e),l()},removeLeftTags:e=>{o.value=o.value.filter((t,n)=>n===0||t.meta?.affix||n>=e),l()},removeRightTags:e=>{o.value=o.value.filter((t,n)=>t.meta?.affix||n<=e),l()},removeAllTags:()=>{o.value=o.value.filter(e=>e.meta?.affix),l()}}}const l={class:`tags-view-container`},u=(0,n.defineComponent)({name:`C_TagsView`,__name:`index`,props:{labelFormatter:{},homePath:{default:`/home`},homeTitle:{default:`首页`},homeIcon:{default:`mdi:home`},persistKey:{default:`__tags_view_list__`},contextMenuLabels:{default:()=>({close:`关闭`,closeOthers:`关闭其他`,closeLeft:`关闭左侧`,closeRight:`关闭右侧`,closeAll:`关闭所有`})},tagsViewOptions:{}},emits:[`close`,`closeAll`],setup(t,{expose:a,emit:o}){let s=t,u=o,d=(0,i.useRoute)(),f=(0,i.useRouter)(),p=c(s.tagsViewOptions??{persistKey:s.persistKey,homePath:s.homePath});if(p.tagsViewList.value.length>0&&s.labelFormatter){let e=f.getRoutes(),t=p.tagsViewList.value.map(t=>{let n=e.find(e=>e.path===t.path),r=t.originalTitle||n?.meta?.title||t.title;return{...t,originalTitle:r,title:s.labelFormatter(r)}});p.initTags(t)}let m=e=>s.labelFormatter?s.labelFormatter(e):e,h=()=>{let e=d.path===s.homePath,t=e?s.homeTitle:d.meta.title||`Unnamed Page`;return{path:d.path,originalTitle:t,title:m(t),icon:e?s.homeIcon:d.meta.icon,meta:{affix:d.meta.affix}}},g=(0,n.ref)(!1),_=(0,n.ref)(0),v=(0,n.ref)(0),y=(0,n.ref)(null),b=(0,n.ref)(),x=(0,n.ref)(),S=e=>e.path===d.path,C=e=>e.meta?.affix,w=e=>{let t=x.value;t&&(e.preventDefault(),t.scrollTo({left:t.scrollLeft+e.deltaY,behavior:`smooth`}))},T=e=>{(0,n.nextTick)(()=>{let t=[...x.value?.querySelectorAll(`[data-path]`)??[]].find(t=>t.dataset.path===e);t&&t.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})})},E=e=>{e.path!==d.path&&f.push(e.path).catch(()=>void 0),T(e.path)},D=0,O=!1,k=async e=>{try{let t=await f.push(e);return!(0,i.isNavigationFailure)(t)||(0,i.isNavigationFailure)(t,i.NavigationFailureType.duplicated)}catch{return!1}},A=async(e,t,n=!1)=>{let r=++D;if((n||!e.some(e=>e.path===d.path))&&!await k(t)||O||r!==D)return!1;let i=p.tagsViewList.value.find(e=>e.path===d.path)??h();return p.initTags(e.some(e=>e.path===i.path)?e:[...e,i]),p.setActiveTag(d.path),T(d.path),!0},j=async e=>{if(C(e))return;let t=p.tagsViewList.value,n=t.findIndex(t=>t.path===e.path);if(n===-1)return;let r=S(e),i=t.filter(t=>t.path!==e.path),a=n===t.length-1?i[n-1]?.path||s.homePath:i[i.length-1]?.path||s.homePath;await A(i,a)&&r&&u(`close`,a)};(0,n.onBeforeUnmount)(()=>{O=!0,D+=1});let M=(e,t)=>{e.preventDefault(),y.value=t,g.value=!0,_.value=e.clientX,v.value=e.clientY},N=()=>g.value=!1,P=(0,n.computed)(()=>{let e=s.contextMenuLabels;return[{type:`option`,label:e.close??`关闭`,key:`close`,disabled:C(y.value),icon:()=>(0,n.h)(`span`,{class:`i-mdi:close`})},{type:`option`,label:e.closeOthers??`关闭其他`,key:`closeOthers`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:arrow-left-right-bold`})},{type:`option`,label:e.closeLeft??`关闭左侧`,key:`closeLeft`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:align-horizontal-left`})},{type:`option`,label:e.closeRight??`关闭右侧`,key:`closeRight`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:align-horizontal-right`})},{type:`option`,label:e.closeAll??`关闭所有`,key:`closeAll`,icon:()=>(0,n.h)(`span`,{class:`i-mdi:tally-mark-5`})}]}),F=async e=>{let t=y.value,n=p.tagsViewList.value,r=n.findIndex(e=>e.path===t?.path);if(N(),!t||r===-1)return;if(e===`close`){await j(t);return}let i=n.filter((t,n)=>t.meta?.affix?!0:e===`closeOthers`?n===0||n===r:e===`closeLeft`?n===0||n>=r:e===`closeRight`?n<=r:e!==`closeAll`);[`closeOthers`,`closeLeft`,`closeRight`,`closeAll`].includes(e)&&await A(i,e===`closeAll`?s.homePath:t.path,e===`closeAll`)&&e===`closeAll`&&u(`closeAll`)};return(0,n.watch)(()=>d.path,e=>{p.addTag(h()),p.setActiveTag(e),T(e)},{immediate:!0}),a({tags:p,scrollToTag:T}),(t,i)=>{let a=r.NTag,o=r.NDropdown;return(0,n.openBlock)(),(0,n.createElementBlock)(`div`,l,[(0,n.createElementVNode)(`div`,{class:`tags-track`,ref_key:`tagsTrack`,ref:b,onWheel:w},[(0,n.createElementVNode)(`div`,{class:`tags-container`,ref_key:`tagsContainer`,ref:x},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)((0,n.unref)(p).tagsViewList.value,t=>((0,n.openBlock)(),(0,n.createBlock)(a,{key:t.path,type:S(t)?`primary`:`default`,closable:!C(t),"data-path":t.path,onClose:(0,n.withModifiers)(e=>j(t),[`stop`]),onClick:e=>E(t),onContextmenu:(0,n.withModifiers)(e=>M(e,t),[`prevent`])},{icon:(0,n.withCtx)(()=>[t.icon?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:0,name:t.icon,size:12},null,8,[`name`])):(0,n.createCommentVNode)(`v-if`,!0)]),default:(0,n.withCtx)(()=>[(0,n.createTextVNode)(` `+(0,n.toDisplayString)(t.title),1)]),_:2},1032,[`type`,`closable`,`data-path`,`onClose`,`onClick`,`onContextmenu`]))),128))],512)],544),g.value?((0,n.openBlock)(),(0,n.createBlock)(o,{key:0,show:g.value,options:P.value,x:_.value,y:v.value,onClickoutside:N,onSelect:F},null,8,[`show`,`options`,`x`,`y`])):(0,n.createCommentVNode)(`v-if`,!0)])}}});var d=t.t(u,[[`__scopeId`,`data-v-bd2a9250`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return d}});
@@ -1 +1 @@
1
- import{t as e}from"./C_Icon2.js";import{t}from"./export-helper.js";import{Fragment as n,computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createTextVNode as c,defineComponent as l,h as u,nextTick as d,openBlock as f,ref as p,renderList as m,resolveComponent as h,toDisplayString as g,unref as _,watch as v,withCtx as y,withModifiers as b}from"vue";import{NDropdown as x,NTag as S}from"naive-ui";import{useRoute as C,useRouter as w}from"vue-router";const T=e=>{if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.path==`string`&&t.path.startsWith(`/`)&&!t.path.startsWith(`//`)&&typeof t.title==`string`},E=e=>{if(!(!e||typeof e!=`object`||Array.isArray(e)))return Object.fromEntries(Object.entries(e).filter(([e,t])=>![`__proto__`,`prototype`,`constructor`].includes(e)&&(e!==`affix`||typeof t==`boolean`)))};function D(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>T(e)?[{path:e.path,title:e.title,originalTitle:typeof e.originalTitle==`string`?e.originalTitle:void 0,icon:typeof e.icon==`string`?e.icon:void 0,meta:E(e.meta)}]:[]):[]}catch{return[]}}function O(e={}){let{persistKey:t=`__tags_view_list__`,homePath:n=`/home`}=e,r=()=>{if(!t)return[];try{return D(localStorage.getItem(t))}catch{return[]}},i=e=>{if(t)try{localStorage.setItem(t,JSON.stringify(e))}catch{}},a=p(r()),o=p(``),s=()=>i(a.value),c=e=>{e?a.value=e:a.value=[...new Map(a.value.map(e=>[e.path,e])).values()],s()},l=e=>{o.value=e};return{tagsViewList:a,activeTag:o,homePath:n,initTags:c,setActiveTag:l,addTag:e=>{let t=a.value.findIndex(t=>t.path===e.path);if(t===-1)a.value.push(e);else{let n=a.value[t];(n.title!==e.title||!n.originalTitle)&&(n.title=e.title,n.originalTitle=e.originalTitle||n.originalTitle)}l(e.path),s()},removeTag:e=>{if(e>=0&&e<a.value.length){let t=a.value.splice(e,1)[0]?.path??null;return s(),t}return null},removeOtherTags:e=>{a.value=a.value.filter((t,n)=>n===0||t.meta?.affix||n===e),s()},removeLeftTags:e=>{a.value=a.value.filter((t,n)=>n===0||t.meta?.affix||n>=e),s()},removeRightTags:e=>{a.value=a.value.filter((t,n)=>t.meta?.affix||n<=e),s()},removeAllTags:()=>{a.value=a.value.filter(e=>e.meta?.affix),s()}}}const k={class:`tags-view-container`};var A=t(l({name:`C_TagsView`,__name:`index`,props:{labelFormatter:{},homePath:{default:`/home`},homeTitle:{default:`首页`},homeIcon:{default:`mdi:home`},persistKey:{default:`__tags_view_list__`},contextMenuLabels:{default:()=>({close:`关闭`,closeOthers:`关闭其他`,closeLeft:`关闭左侧`,closeRight:`关闭右侧`,closeAll:`关闭所有`})},tagsViewOptions:{}},emits:[`close`,`closeAll`],setup(t,{expose:l,emit:h}){let T=t,E=h,D=C(),A=w(),j=O(T.tagsViewOptions??{persistKey:T.persistKey,homePath:T.homePath});if(j.tagsViewList.value.length>0&&T.labelFormatter){let e=A.getRoutes(),t=j.tagsViewList.value.map(t=>{let n=e.find(e=>e.path===t.path),r=t.originalTitle||n?.meta?.title||t.title;return{...t,originalTitle:r,title:T.labelFormatter(r)}});j.initTags(t)}let M=e=>T.labelFormatter?T.labelFormatter(e):e,N=p(!1),P=p(0),F=p(0),I=p(null),L=p(-1),R=p(),z=p(),B=e=>e.path===D.path,V=e=>e.meta?.affix,H=e=>{let t=z.value;t&&(e.preventDefault(),t.scrollTo({left:t.scrollLeft+e.deltaY,behavior:`smooth`}))},U=e=>{d(()=>{let t=[...z.value?.querySelectorAll(`[data-path]`)??[]].find(t=>t.dataset.path===e);t&&t.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})})},W=e=>{e.path!==D.path&&A.push(e.path).catch(()=>void 0),U(e.path)},G=(e,t)=>{if(V(e))return;let n=B(e),r=j.tagsViewList.value.length;if(j.removeTag(t),n){let e=j.tagsViewList.value,n=t===r-1,i;i=n?e[t-1]?.path||T.homePath:e[e.length-1]?.path||T.homePath,A.push(i).catch(()=>void 0),E(`close`,i)}},K=(e,t,n)=>{e.preventDefault(),I.value=t,L.value=n,N.value=!0,P.value=e.clientX,F.value=e.clientY},q=()=>N.value=!1,J=r(()=>{let e=T.contextMenuLabels;return[{type:`option`,label:e.close??`关闭`,key:`close`,disabled:V(I.value),icon:()=>u(`span`,{class:`i-mdi:close`})},{type:`option`,label:e.closeOthers??`关闭其他`,key:`closeOthers`,icon:()=>u(`span`,{class:`i-mdi:arrow-left-right-bold`})},{type:`option`,label:e.closeLeft??`关闭左侧`,key:`closeLeft`,icon:()=>u(`span`,{class:`i-mdi:align-horizontal-left`})},{type:`option`,label:e.closeRight??`关闭右侧`,key:`closeRight`,icon:()=>u(`span`,{class:`i-mdi:align-horizontal-right`})},{type:`option`,label:e.closeAll??`关闭所有`,key:`closeAll`,icon:()=>u(`span`,{class:`i-mdi:tally-mark-5`})}]}),Y=e=>{if(!(!I.value||L.value===-1)){switch(e){case`close`:G(I.value,L.value);break;case`closeOthers`:j.removeOtherTags(L.value);break;case`closeLeft`:j.removeLeftTags(L.value);break;case`closeRight`:j.removeRightTags(L.value);break;case`closeAll`:j.removeAllTags(),A.push(T.homePath).catch(()=>void 0),E(`closeAll`);break}q()}};return v(()=>D.path,e=>{let t=e===T.homePath?T.homeTitle:D.meta.title||`Unnamed Page`;j.addTag({path:e,originalTitle:t,title:M(t),icon:e===T.homePath?T.homeIcon:D.meta.icon,meta:{affix:D.meta.affix}}),j.setActiveTag(e),U(e)},{immediate:!0}),l({tags:j,scrollToTag:U}),(t,r)=>{let l=S,u=x;return f(),o(`div`,k,[s(`div`,{class:`tags-track`,ref_key:`tagsTrack`,ref:R,onWheel:H},[s(`div`,{class:`tags-container`,ref_key:`tagsContainer`,ref:z},[(f(!0),o(n,null,m(_(j).tagsViewList.value,(t,n)=>(f(),i(l,{key:t.path,type:B(t)?`primary`:`default`,closable:!V(t),"data-path":t.path,onClose:b(e=>G(t,n),[`stop`]),onClick:e=>W(t),onContextmenu:b(e=>K(e,t,n),[`prevent`])},{icon:y(()=>[t.icon?(f(),i(_(e),{key:0,name:t.icon,size:12},null,8,[`name`])):a(`v-if`,!0)]),default:y(()=>[c(` `+g(t.title),1)]),_:2},1032,[`type`,`closable`,`data-path`,`onClose`,`onClick`,`onContextmenu`]))),128))],512)],544),N.value?(f(),i(u,{key:0,show:N.value,options:J.value,x:P.value,y:F.value,onClickoutside:q,onSelect:Y},null,8,[`show`,`options`,`x`,`y`])):a(`v-if`,!0)])}}}),[[`__scopeId`,`data-v-83599594`]]);export{O as n,A as t};
1
+ import{t as e}from"./C_Icon2.js";import{t}from"./export-helper.js";import{Fragment as n,computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createTextVNode as c,defineComponent as l,h as u,nextTick as d,onBeforeUnmount as f,openBlock as p,ref as m,renderList as h,resolveComponent as g,toDisplayString as ee,unref as _,watch as v,withCtx as y,withModifiers as b}from"vue";import{NDropdown as x,NTag as S}from"naive-ui";import{NavigationFailureType as C,isNavigationFailure as w,useRoute as T,useRouter as E}from"vue-router";const D=e=>{if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.path==`string`&&t.path.startsWith(`/`)&&!t.path.startsWith(`//`)&&typeof t.title==`string`},O=e=>{if(!(!e||typeof e!=`object`||Array.isArray(e)))return Object.fromEntries(Object.entries(e).filter(([e,t])=>![`__proto__`,`prototype`,`constructor`].includes(e)&&(e!==`affix`||typeof t==`boolean`)))};function k(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>D(e)?[{path:e.path,title:e.title,originalTitle:typeof e.originalTitle==`string`?e.originalTitle:void 0,icon:typeof e.icon==`string`?e.icon:void 0,meta:O(e.meta)}]:[]):[]}catch{return[]}}function A(e={}){let{persistKey:t=`__tags_view_list__`,homePath:n=`/home`}=e,r=()=>{if(!t)return[];try{return k(localStorage.getItem(t))}catch{return[]}},i=e=>{if(t)try{localStorage.setItem(t,JSON.stringify(e))}catch{}},a=m(r()),o=m(``),s=()=>i(a.value),c=e=>{e?a.value=e:a.value=[...new Map(a.value.map(e=>[e.path,e])).values()],s()},l=e=>{o.value=e};return{tagsViewList:a,activeTag:o,homePath:n,initTags:c,setActiveTag:l,addTag:e=>{let t=a.value.findIndex(t=>t.path===e.path);if(t===-1)a.value.push(e);else{let n=a.value[t];(n.title!==e.title||!n.originalTitle)&&(n.title=e.title,n.originalTitle=e.originalTitle||n.originalTitle)}l(e.path),s()},removeTag:e=>{if(e>=0&&e<a.value.length){let t=a.value.splice(e,1)[0]?.path??null;return s(),t}return null},removeOtherTags:e=>{a.value=a.value.filter((t,n)=>n===0||t.meta?.affix||n===e),s()},removeLeftTags:e=>{a.value=a.value.filter((t,n)=>n===0||t.meta?.affix||n>=e),s()},removeRightTags:e=>{a.value=a.value.filter((t,n)=>t.meta?.affix||n<=e),s()},removeAllTags:()=>{a.value=a.value.filter(e=>e.meta?.affix),s()}}}const j={class:`tags-view-container`};var M=t(l({name:`C_TagsView`,__name:`index`,props:{labelFormatter:{},homePath:{default:`/home`},homeTitle:{default:`首页`},homeIcon:{default:`mdi:home`},persistKey:{default:`__tags_view_list__`},contextMenuLabels:{default:()=>({close:`关闭`,closeOthers:`关闭其他`,closeLeft:`关闭左侧`,closeRight:`关闭右侧`,closeAll:`关闭所有`})},tagsViewOptions:{}},emits:[`close`,`closeAll`],setup(t,{expose:l,emit:g}){let D=t,O=g,k=T(),M=E(),N=A(D.tagsViewOptions??{persistKey:D.persistKey,homePath:D.homePath});if(N.tagsViewList.value.length>0&&D.labelFormatter){let e=M.getRoutes(),t=N.tagsViewList.value.map(t=>{let n=e.find(e=>e.path===t.path),r=t.originalTitle||n?.meta?.title||t.title;return{...t,originalTitle:r,title:D.labelFormatter(r)}});N.initTags(t)}let P=e=>D.labelFormatter?D.labelFormatter(e):e,F=()=>{let e=k.path===D.homePath,t=e?D.homeTitle:k.meta.title||`Unnamed Page`;return{path:k.path,originalTitle:t,title:P(t),icon:e?D.homeIcon:k.meta.icon,meta:{affix:k.meta.affix}}},I=m(!1),L=m(0),R=m(0),z=m(null),B=m(),V=m(),H=e=>e.path===k.path,U=e=>e.meta?.affix,W=e=>{let t=V.value;t&&(e.preventDefault(),t.scrollTo({left:t.scrollLeft+e.deltaY,behavior:`smooth`}))},G=e=>{d(()=>{let t=[...V.value?.querySelectorAll(`[data-path]`)??[]].find(t=>t.dataset.path===e);t&&t.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})})},K=e=>{e.path!==k.path&&M.push(e.path).catch(()=>void 0),G(e.path)},q=0,J=!1,Y=async e=>{try{let t=await M.push(e);return!w(t)||w(t,C.duplicated)}catch{return!1}},X=async(e,t,n=!1)=>{let r=++q;if((n||!e.some(e=>e.path===k.path))&&!await Y(t)||J||r!==q)return!1;let i=N.tagsViewList.value.find(e=>e.path===k.path)??F();return N.initTags(e.some(e=>e.path===i.path)?e:[...e,i]),N.setActiveTag(k.path),G(k.path),!0},Z=async e=>{if(U(e))return;let t=N.tagsViewList.value,n=t.findIndex(t=>t.path===e.path);if(n===-1)return;let r=H(e),i=t.filter(t=>t.path!==e.path),a=n===t.length-1?i[n-1]?.path||D.homePath:i[i.length-1]?.path||D.homePath;await X(i,a)&&r&&O(`close`,a)};f(()=>{J=!0,q+=1});let Q=(e,t)=>{e.preventDefault(),z.value=t,I.value=!0,L.value=e.clientX,R.value=e.clientY},$=()=>I.value=!1,te=r(()=>{let e=D.contextMenuLabels;return[{type:`option`,label:e.close??`关闭`,key:`close`,disabled:U(z.value),icon:()=>u(`span`,{class:`i-mdi:close`})},{type:`option`,label:e.closeOthers??`关闭其他`,key:`closeOthers`,icon:()=>u(`span`,{class:`i-mdi:arrow-left-right-bold`})},{type:`option`,label:e.closeLeft??`关闭左侧`,key:`closeLeft`,icon:()=>u(`span`,{class:`i-mdi:align-horizontal-left`})},{type:`option`,label:e.closeRight??`关闭右侧`,key:`closeRight`,icon:()=>u(`span`,{class:`i-mdi:align-horizontal-right`})},{type:`option`,label:e.closeAll??`关闭所有`,key:`closeAll`,icon:()=>u(`span`,{class:`i-mdi:tally-mark-5`})}]}),ne=async e=>{let t=z.value,n=N.tagsViewList.value,r=n.findIndex(e=>e.path===t?.path);if($(),!t||r===-1)return;if(e===`close`){await Z(t);return}let i=n.filter((t,n)=>t.meta?.affix?!0:e===`closeOthers`?n===0||n===r:e===`closeLeft`?n===0||n>=r:e===`closeRight`?n<=r:e!==`closeAll`);[`closeOthers`,`closeLeft`,`closeRight`,`closeAll`].includes(e)&&await X(i,e===`closeAll`?D.homePath:t.path,e===`closeAll`)&&e===`closeAll`&&O(`closeAll`)};return v(()=>k.path,e=>{N.addTag(F()),N.setActiveTag(e),G(e)},{immediate:!0}),l({tags:N,scrollToTag:G}),(t,r)=>{let l=S,u=x;return p(),o(`div`,j,[s(`div`,{class:`tags-track`,ref_key:`tagsTrack`,ref:B,onWheel:W},[s(`div`,{class:`tags-container`,ref_key:`tagsContainer`,ref:V},[(p(!0),o(n,null,h(_(N).tagsViewList.value,t=>(p(),i(l,{key:t.path,type:H(t)?`primary`:`default`,closable:!U(t),"data-path":t.path,onClose:b(e=>Z(t),[`stop`]),onClick:e=>K(t),onContextmenu:b(e=>Q(e,t),[`prevent`])},{icon:y(()=>[t.icon?(p(),i(_(e),{key:0,name:t.icon,size:12},null,8,[`name`])):a(`v-if`,!0)]),default:y(()=>[c(` `+ee(t.title),1)]),_:2},1032,[`type`,`closable`,`data-path`,`onClose`,`onClick`,`onContextmenu`]))),128))],512)],544),I.value?(p(),i(u,{key:0,show:I.value,options:te.value,x:L.value,y:R.value,onClickoutside:$,onSelect:ne},null,8,[`show`,`options`,`x`,`y`])):a(`v-if`,!0)])}}}),[[`__scopeId`,`data-v-bd2a9250`]]);export{A as n,M as t};
@@ -342,7 +342,7 @@
342
342
  .px[data-v-9a051cb4]{padding-left:1rem;padding-right:1rem;}
343
343
 
344
344
  /* C_VideoPlayer 组件样式 */
345
- .c-video-player[data-v-e6dc58ed] {
345
+ .c-video-player[data-v-11b6a582] {
346
346
  position: relative;
347
347
  width: 100%;
348
348
  background: #000;
@@ -351,25 +351,25 @@
351
351
  outline: none;
352
352
  /* 覆盖 xgplayer v3 默认红色主题(倍速/清晰度选中项改蓝) */
353
353
  }
354
- .c-video-player[data-v-e6dc58ed] .xgplayer .xg-options-list li:hover,
355
- .c-video-player[data-v-e6dc58ed] .xgplayer .xg-options-list li.selected,
356
- .c-video-player[data-v-e6dc58ed] .xgplayer-mobile .xg-options-list li.selected {
354
+ .c-video-player[data-v-11b6a582] .xgplayer .xg-options-list li:hover,
355
+ .c-video-player[data-v-11b6a582] .xgplayer .xg-options-list li.selected,
356
+ .c-video-player[data-v-11b6a582] .xgplayer-mobile .xg-options-list li.selected {
357
357
  color: #409eff !important;
358
358
  }
359
- .c-video-player[data-v-e6dc58ed] .xgplayer xg-trigger .time-preview .xg-cur {
359
+ .c-video-player[data-v-11b6a582] .xgplayer xg-trigger .time-preview .xg-cur {
360
360
  color: #409eff !important;
361
361
  }
362
- .c-video-player[data-v-e6dc58ed] .xgplayer .xgplayer-progress-btn.active::before {
362
+ .c-video-player[data-v-11b6a582] .xgplayer .xgplayer-progress-btn.active::before {
363
363
  box-shadow: 0 0 3px rgba(64, 152, 255, 0.7) !important;
364
364
  }
365
- .c-video-player__container[data-v-e6dc58ed] {
365
+ .c-video-player__container[data-v-11b6a582] {
366
366
  width: 100%;
367
367
  height: 100%;
368
368
  }
369
- .c-video-player[data-v-e6dc58ed] {
369
+ .c-video-player[data-v-11b6a582] {
370
370
  /* 小窗模式样式 */
371
371
  }
372
- .c-video-player.is-mini[data-v-e6dc58ed] {
372
+ .c-video-player.is-mini[data-v-11b6a582] {
373
373
  position: fixed;
374
374
  right: 20px;
375
375
  bottom: 20px;
@@ -380,7 +380,7 @@
380
380
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
381
381
  transition: width 0.3s ease, height 0.3s ease;
382
382
  }
383
- .c-video-player__mini-close[data-v-e6dc58ed] {
383
+ .c-video-player__mini-close[data-v-11b6a582] {
384
384
  appearance: none;
385
385
  border: 0;
386
386
  position: absolute;
@@ -398,10 +398,10 @@
398
398
  font-size: 12px;
399
399
  z-index: 10;
400
400
  }
401
- .c-video-player__mini-close[data-v-e6dc58ed]:hover {
401
+ .c-video-player__mini-close[data-v-11b6a582]:hover {
402
402
  background: rgba(0, 0, 0, 0.8);
403
403
  }
404
- .c-video-player__mini-back[data-v-e6dc58ed] {
404
+ .c-video-player__mini-back[data-v-11b6a582] {
405
405
  appearance: none;
406
406
  border: 0;
407
407
  position: absolute;
@@ -417,26 +417,26 @@
417
417
  z-index: 10;
418
418
  white-space: nowrap;
419
419
  }
420
- .c-video-player__mini-back[data-v-e6dc58ed]:hover {
420
+ .c-video-player__mini-back[data-v-11b6a582]:hover {
421
421
  background: rgba(0, 0, 0, 0.8);
422
422
  }
423
423
 
424
424
  /* layer: shortcuts */
425
- .container[data-v-e6dc58ed]{width:100%;}
425
+ .container[data-v-11b6a582]{width:100%;}
426
426
  @media (min-width: 640px){
427
- .container[data-v-e6dc58ed]{max-width:640px;}
427
+ .container[data-v-11b6a582]{max-width:640px;}
428
428
  }
429
429
  @media (min-width: 768px){
430
- .container[data-v-e6dc58ed]{max-width:768px;}
430
+ .container[data-v-11b6a582]{max-width:768px;}
431
431
  }
432
432
  @media (min-width: 1024px){
433
- .container[data-v-e6dc58ed]{max-width:1024px;}
433
+ .container[data-v-11b6a582]{max-width:1024px;}
434
434
  }
435
435
  @media (min-width: 1280px){
436
- .container[data-v-e6dc58ed]{max-width:1280px;}
436
+ .container[data-v-11b6a582]{max-width:1280px;}
437
437
  }
438
438
  @media (min-width: 1536px){
439
- .container[data-v-e6dc58ed]{max-width:1536px;}
439
+ .container[data-v-11b6a582]{max-width:1536px;}
440
440
  }
441
441
  /* layer: default */
442
- .block[data-v-e6dc58ed]{display:block;}
442
+ .block[data-v-11b6a582]{display:block;}
@@ -1,4 +1,4 @@
1
- require(`./chunk.cjs`);const e=require(`./export-helper.cjs`),t=require(`./storage.cjs`);let n=require(`vue`),r=require(`naive-ui`);const i=[.5,.75,1,1.25,1.5,2,3],a=.75,o=3e4,s=5e3,c={"360p":`流畅 360P`,"480p":`标清 480P`,"720p":`高清 720P`,"1080p":`超清 1080P`,"1440p":`2K 1440P`,"4K":`4K 超高清`},l={".mp4":`mp4`,".m3u8":`hls`,".mpd":`dash`,".flv":`flv`},u={SPACE:`播放/暂停`,ARROW_LEFT:`快退 5 秒`,ARROW_RIGHT:`快进 5 秒`,ARROW_UP:`音量增加 10%`,ARROW_DOWN:`音量减少 10%`,F:`全屏/退出全屏`,M:`静音/取消静音`,ESC:`退出全屏`},d=.1,f=`c_video_player_`,p={VOLUME:`${f}volume`,PLAYBACK_RATE:`${f}playback_rate`,PROGRESS:`${f}progress_`,BOOKMARKS:`${f}bookmarks_`},m={READY:`ready`,PLAY:`play`,PAUSE:`pause`,ENDED:`ended`,ERROR:`error`,SEEKING:`seeking`,SEEKED:`seeked`,TIME_UPDATE:`timeupdate`,WAITING:`waiting`,DURATION_CHANGE:`durationchange`,RATE_CHANGE:`ratechange`,FULLSCREEN_CHANGE:`fullscreen_change`,DEFINITION_CHANGE:`definition_change`,BEFORE_DEFINITION_CHANGE:`before_definition_change`,AFTER_DEFINITION_CHANGE:`after_definition_change`},h={fontSize:14,color:`rgba(150, 150, 150, 0.15)`,rotate:-25,gap:120};function g(e){try{let{pathname:t}=new URL(e,location.href);return l[t.slice(t.lastIndexOf(`.`)).toLowerCase()]??`mp4`}catch{return`mp4`}}function _(e){let t=(0,n.ref)(null),r=(0,n.shallowRef)(null),i=(0,n.ref)(`idle`),o=(0,n.ref)(0),s=(0,n.ref)(0),c=(0,n.ref)(!1),l=0,u=!1;function d(){return{el:t.value,url:e.url,width:e.width??`100%`,height:e.height??`100%`,fluid:e.fluid!==!1,fitVideoSize:`fixWidth`,poster:e.poster??``,playsinline:!0,videoAttributes:{crossOrigin:`anonymous`},lang:e.lang??`zh-cn`,inactive:3e3}}function f(){return{autoplay:e.autoplay??!1,autoplayMuted:e.autoplayMuted??!1,loop:e.loop??!1,volume:e.volume??a,startTime:e.startTime??0,defaultPlaybackRate:e.defaultPlaybackRate??1,playbackRate:e.playbackRates?{list:e.playbackRates.map(e=>e)}:!0}}function p(){return{pip:e.pip!==!1,screenShot:e.screenshot??!1,mini:e.miniPlayer??!1,fullscreen:e.fullscreen!==!1,cssFullscreen:e.cssFullscreen!==!1,keyShortcut:!1}}function h(t){e.thumbnail&&(t.thumbnail={urls:e.thumbnail.urls,pic_num:e.thumbnail.picNum,col:e.thumbnail.col,row:e.thumbnail.row,width:e.thumbnail.width,height:e.thumbnail.height}),e.qualityList?.length&&(t.definition={list:e.qualityList.map(e=>({url:e.url,definition:e.label,text:{zh:e.label,en:e.label},bitrate:e.bitrate})),defaultDefinition:e.defaultQuality??e.qualityList[0].label}),e.playerOptions&&Object.assign(t,e.playerOptions)}function _(){let t=e.sourceType??g(e.url),n={...d(),...f(),...p()};return h(n),n.__sourceType=t,n}async function v(){if(u||!t.value)return;let e=++l;i.value=`loading`;let n=_(),a=n.__sourceType;delete n.__sourceType;let d;try{if(a===`hls`){let{default:e}=await import(`xgplayer-hls`);d=e}else{let{default:e}=await import(`xgplayer`);d=e}if(u||e!==l||!t.value)return;r.value=new d(n)}catch(t){if(u||e!==l)return;throw i.value=`error`,t}let f=r.value;f.on(m.READY,()=>{i.value=`ready`}),f.on(m.PLAY,()=>{i.value=`playing`}),f.on(m.PAUSE,()=>{i.value=`paused`}),f.on(m.ENDED,()=>{i.value=`ended`}),f.on(m.ERROR,()=>{i.value=`error`}),f.on(m.TIME_UPDATE,()=>{o.value=f.currentTime??0,s.value=f.duration??0}),f.on(m.DURATION_CHANGE,()=>{s.value=f.duration??0}),f.on(m.FULLSCREEN_CHANGE,e=>{c.value=e})}function y(){l++;let e=r.value;e&&(e.destroy(),r.value=null),i.value=`idle`,o.value=0,s.value=0,c.value=!1}return(0,n.onBeforeUnmount)(()=>{u=!0,y()}),{containerRef:t,playerRef:r,playerState:i,currentTime:o,duration:s,isFullscreen:c,initPlayer:v,destroyPlayer:y}}function v(e){let r=(0,n.ref)(y()),i=(0,n.ref)(b()),a=(0,n.ref)(!1);function o(){e.value?.play()}function s(){e.value?.pause()}function c(){let t=e.value;t&&(t.paused?t.play():t.pause())}function l(t){let n=e.value;n&&(n.currentTime=Math.max(0,Math.min(t,n.duration??0)))}function u(n){let i=e.value;if(!i)return;let o=Math.max(0,Math.min(1,n));i.volume=o,r.value=o,a.value=o===0,t.i(p.VOLUME,o)}function d(){let t=e.value;t&&(a.value?u(r.value>0?r.value:.5):(t.volume=0,a.value=!0))}function f(n){let r=e.value;r&&(r.playbackRate=n,i.value=n,t.i(p.PLAYBACK_RATE,n))}function m(){let t=e.value;t&&(t.volume=r.value,t.playbackRate=i.value,a.value=r.value===0)}return(0,n.watch)(e,e=>{e&&m()}),{volume:r,playbackRate:i,isMuted:a,play:o,pause:s,togglePlay:c,seek:l,setVolume:u,toggleMute:d,setPlaybackRate:f}}function y(){let e=Number(t.t(p.VOLUME));return Number.isFinite(e)&&e>=0&&e<=1?e:.75}function b(){let e=Number(t.t(p.PLAYBACK_RATE));return Number.isFinite(e)&&e>0?e:1}function x(e,r,i,a,c,l){let u=(0,n.ref)(0),d=(0,n.ref)(0),f=0,m=!1,h=null,g=null;function _(){return p.PROGRESS+encodeURIComponent(a.value)}function v(){let e=t.t(_());return!e||typeof e!=`object`?0:(u.value=S(e.watchedDuration),d.value=Math.min(100,S(e.completionPercent)),S(e.currentTime))}function y(){return{currentTime:r.value,duration:i.value,watchedDuration:u.value,completionPercent:d.value,updatedAt:Date.now()}}function b(){t.i(_(),y())}function x(e,t){if(e)try{Promise.resolve(e(t)).catch(()=>void 0)}catch{}}function C(){x(c,y()),b()}function w(){if(!m)return;let e=performance.now();if(f>0){let t=(e-f)/1e3;t>0&&t<5&&(u.value+=t)}f=e,i.value>0&&(d.value=Math.min(100,Math.round(u.value/i.value*100)))}function T(){let e=l?.heartbeatInterval??o;!Number.isFinite(e)||e<=0||(h=setInterval(()=>{m&&x(l?.onHeartbeat,y())},e))}function E(){g=setInterval(()=>{m&&C()},s)}function D(){let e=y();b(),x(c,e)}function O(){if(document.hidden)w(),C(),m=!1;else{let t=e.value;t&&!t.paused&&(m=!0,f=performance.now())}}function k(){j(),T(),E(),window.addEventListener(`beforeunload`,D),document.addEventListener(`visibilitychange`,O)}function A(){m=!1,j(),b()}function j(){h&&=(clearInterval(h),null),g&&=(clearInterval(g),null),window.removeEventListener(`beforeunload`,D),document.removeEventListener(`visibilitychange`,O)}function M(){m=!0,f=performance.now()}function N(){w(),m=!1,f=0,b()}function P(){w()}return(0,n.watch)(e,e=>{e?k():j()}),(0,n.onBeforeUnmount)(()=>{A()}),{watchedDuration:u,completionPercent:d,getProgressData:y,restoreProgress:v,saveProgress:b,startTracking:k,stopTracking:A,onPlay:M,onPause:N,onTimeUpdate:P}}function S(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:0}function C(e,t=[]){let r=(0,n.ref)(null),i=(0,n.ref)(!1);function a(e){e.on(m.AFTER_DEFINITION_CHANGE,e=>{r.value=e.to,i.value=!1}),e.on(m.BEFORE_DEFINITION_CHANGE,()=>{i.value=!0})}function o(n){let r=e.value;if(!r||!t.length)return;let a=t.find(e=>e.label===n);if(!a){console.warn(`[C_VideoPlayer] 未找到清晰度: ${n}`);return}i.value=!0,r.changeDefinition?.({url:a.url,definition:a.label,text:{zh:a.label,en:a.label},bitrate:a.bitrate})}return{currentQuality:r,isSwitching:i,switchQuality:o,bindEvents:a}}function w(e,t,r,i){let a=(0,n.computed)(()=>{if(!e.value.length)return null;let n=t.value;return e.value.find(e=>n>=e.startTime&&n<e.endTime)??null}),o=(0,n.computed)(()=>a.value?e.value.findIndex(e=>e.id===a.value.id):-1),s=(0,n.computed)(()=>!r.value||!e.value.length?[]:e.value.map(e=>({...e,startPercent:e.startTime/r.value*100,endPercent:e.endTime/r.value*100,widthPercent:(e.endTime-e.startTime)/r.value*100})));function c(t){let n=e.value.find(e=>e.id===t);n&&i(n.startTime)}function l(){let t=o.value;t>0&&i(e.value[t-1].startTime)}function u(){let t=o.value;t>=0&&t<e.value.length-1&&i(e.value[t+1].startTime)}return{currentChapter:a,currentChapterIndex:o,chapterMarkers:s,goToChapter:c,prevChapter:l,nextChapter:u}}function T(e,r,i,a=[]){let o=(0,n.ref)([...a]);function s(){return p.BOOKMARKS+encodeURIComponent(e.value)}function c(){let e=t.t(s());Array.isArray(e)&&(o.value=e.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`&&typeof e.time==`number`&&Number.isFinite(e.time)&&typeof e.note==`string`&&typeof e.createdAt==`number`),u())}function l(){t.i(s(),o.value)}function u(){o.value.sort((e,t)=>e.time-t.time)}function d(e=``){let t={id:typeof crypto<`u`&&`randomUUID`in crypto?`bm_${crypto.randomUUID()}`:`bm_${Date.now()}_${o.value.length}`,time:r.value,note:e,createdAt:Date.now()};return o.value.push(t),u(),l(),t}function f(e){let t=o.value.findIndex(t=>t.id===e);t!==-1&&(o.value.splice(t,1),l())}function m(e,t){let n=o.value.find(t=>t.id===e);n&&(n.note=t,l())}function h(e){let t=o.value.find(t=>t.id===e);t&&i(t.time)}function g(){o.value=[],l()}return a.length||c(),{bookmarks:o,addBookmark:d,removeBookmark:f,updateBookmark:m,goToBookmark:h,clearBookmarks:g}}function E(e,t,r){let i=(0,n.ref)(0),a=(0,n.ref)(!0),o=(0,n.ref)(!1),s=(0,n.ref)(r?.watermark??!1),c=(0,n.ref)(r?.watermarkText??``);function l(e){e>i.value&&(i.value=e)}function u(e){!r?.preventSeekOnFirstWatch||!a.value||(e.currentTime??0)>i.value+2&&(e.currentTime=i.value)}function d(){if(!r?.focusDetection)return;let t=e.value;t&&(document.hidden?(o.value=!0,t.paused||t.pause()):o.value=!1)}function f(e){r?.preventSeekOnFirstWatch&&e.on(m.SEEKING,()=>u(e)),e.on(m.TIME_UPDATE,()=>{l(t.value)}),r?.focusDetection&&document.addEventListener(`visibilitychange`,d)}function p(){a.value=!1}function h(e){c.value=e}return(0,n.onBeforeUnmount)(()=>{document.removeEventListener(`visibilitychange`,d)}),{maxWatchedTime:i,isFirstWatch:a,isBlurred:o,showWatermark:s,watermarkText:c,bindEvents:f,markAsWatched:p,setWatermarkText:h}}function D(e){let t=[];e.forEach((e,n)=>{!Number.isFinite(e.start)||!Number.isFinite(e.end)||e.end<=e.start||t.push({time:e.start,index:n,active:!0},{time:e.end,index:n,active:!1})}),t.sort((e,t)=>e.time-t.time);let n=new Uint8Array(e.length),r=[],i=[],a=e=>{let t=r.length;for(r.push(e);t>0;){let n=t-1>>>1;if(r[n]<=e)break;r[t]=r[n],t=n}r[t]=e},o=()=>{for(;r.length&&!n[r[0]];){let e=r.pop();if(!r.length)break;let t=0;for(;t*2+1<r.length;){let n=t*2+1;if(n+1<r.length&&r[n+1]<r[n]&&n++,r[n]>=e)break;r[t]=r[n],t=n}r[t]=e}},s=0;for(;s<t.length;){let c=t[s].time;for(;s<t.length&&t[s].time===c;){let e=t[s++];n[e.index]=Number(e.active),e.active&&a(e.index)}if(o(),!r.length||s===t.length)continue;let l=t[s].time,{text:u}=e[r[0]],d=i[i.length-1];d?.end===c&&d.text===u?d.end=l:i.push({start:c,end:l,text:u})}return i}function O(e,t){if(!Number.isFinite(t))return``;let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;e[i].start<=t?n=i+1:r=i}let i=e[n-1];return i&&t<i.end?i.text:``}function k(e){let t=e.trim().match(/^(?:(\d{2,}):)?(\d{2}):(\d{2})\.(\d{3})$/);if(!t)return NaN;let[,n=`0`,r,i,a]=t;return Number(r)>59||Number(i)>59?NaN:Number(n)*3600+Number(r)*60+Number(i)+Number(a)/1e3}function A(e){let t=[],n=e.replace(/\r\n?/g,`
1
+ require(`./chunk.cjs`);const e=require(`./export-helper.cjs`),t=require(`./storage.cjs`);let n=require(`vue`),r=require(`naive-ui`);const i=[.5,.75,1,1.25,1.5,2,3],a=.75,o=3e4,s=5e3,c={"360p":`流畅 360P`,"480p":`标清 480P`,"720p":`高清 720P`,"1080p":`超清 1080P`,"1440p":`2K 1440P`,"4K":`4K 超高清`},l={".mp4":`mp4`,".m3u8":`hls`,".mpd":`dash`,".flv":`flv`},u={SPACE:`播放/暂停`,ARROW_LEFT:`快退 5 秒`,ARROW_RIGHT:`快进 5 秒`,ARROW_UP:`音量增加 10%`,ARROW_DOWN:`音量减少 10%`,F:`全屏/退出全屏`,M:`静音/取消静音`,ESC:`退出全屏`},d=.1,f=`c_video_player_`,p={VOLUME:`${f}volume`,PLAYBACK_RATE:`${f}playback_rate`,PROGRESS:`${f}progress_`,BOOKMARKS:`${f}bookmarks_`},m={READY:`ready`,PLAY:`play`,PAUSE:`pause`,ENDED:`ended`,ERROR:`error`,SEEKING:`seeking`,SEEKED:`seeked`,TIME_UPDATE:`timeupdate`,WAITING:`waiting`,DURATION_CHANGE:`durationchange`,RATE_CHANGE:`ratechange`,FULLSCREEN_CHANGE:`fullscreen_change`,DEFINITION_CHANGE:`definition_change`,BEFORE_DEFINITION_CHANGE:`before_definition_change`,AFTER_DEFINITION_CHANGE:`after_definition_change`},h={fontSize:14,color:`rgba(150, 150, 150, 0.15)`,rotate:-25,gap:120};function g(e){try{let{pathname:t}=new URL(e,location.href);return l[t.slice(t.lastIndexOf(`.`)).toLowerCase()]??`mp4`}catch{return`mp4`}}function _(e){let t=(0,n.ref)(null),r=(0,n.shallowRef)(null),i=(0,n.ref)(`idle`),o=(0,n.ref)(0),s=(0,n.ref)(0),c=(0,n.ref)(!1),l=0,u=!1;function d(){return{el:t.value,url:e.url,width:e.width??`100%`,height:e.height??`100%`,fluid:e.fluid!==!1,fitVideoSize:`fixWidth`,poster:e.poster??``,playsinline:!0,videoAttributes:{crossOrigin:`anonymous`},lang:e.lang??`zh-cn`,inactive:3e3}}function f(){return{autoplay:e.autoplay??!1,autoplayMuted:e.autoplayMuted??!1,loop:e.loop??!1,volume:e.volume??a,startTime:e.startTime??0,defaultPlaybackRate:e.defaultPlaybackRate??1,playbackRate:e.playbackRates?{list:e.playbackRates.map(e=>e)}:!0}}function p(){return{pip:e.pip!==!1,screenShot:e.screenshot??!1,mini:e.miniPlayer??!1,fullscreen:e.fullscreen!==!1,cssFullscreen:e.cssFullscreen!==!1,keyShortcut:!1}}function h(t){e.thumbnail&&(t.thumbnail={urls:e.thumbnail.urls,pic_num:e.thumbnail.picNum,col:e.thumbnail.col,row:e.thumbnail.row,width:e.thumbnail.width,height:e.thumbnail.height}),e.qualityList?.length&&(t.definition={list:e.qualityList.map(e=>({url:e.url,definition:e.label,text:{zh:e.label,en:e.label},bitrate:e.bitrate})),defaultDefinition:e.defaultQuality??e.qualityList[0].label}),e.playerOptions&&Object.assign(t,e.playerOptions)}function _(){let t=e.sourceType??g(e.url),n={...d(),...f(),...p()};return h(n),n.__sourceType=t,n}async function v(){if(u||!t.value)return;y();let e=++l;i.value=`loading`;let n=_(),a=n.__sourceType;delete n.__sourceType;let d;try{if(a===`hls`){let{default:e}=await import(`xgplayer-hls`);d=e}else{let{default:e}=await import(`xgplayer`);d=e}if(u||e!==l||!t.value)return;r.value=new d(n)}catch(t){if(u||e!==l)return;throw i.value=`error`,t}let f=r.value,p=()=>!u&&e===l&&r.value===f;f.on(m.READY,()=>{p()&&(i.value=`ready`)}),f.on(m.PLAY,()=>{p()&&(i.value=`playing`)}),f.on(m.PAUSE,()=>{p()&&(i.value=`paused`)}),f.on(m.ENDED,()=>{p()&&(i.value=`ended`)}),f.on(m.ERROR,()=>{p()&&(i.value=`error`)}),f.on(m.TIME_UPDATE,()=>{p()&&(o.value=f.currentTime??0,s.value=f.duration??0)}),f.on(m.DURATION_CHANGE,()=>{p()&&(s.value=f.duration??0)}),f.on(m.FULLSCREEN_CHANGE,e=>{p()&&(c.value=e)})}function y(){l++;let e=r.value;e&&(r.value=null,e.destroy()),i.value=`idle`,o.value=0,s.value=0,c.value=!1}return(0,n.onBeforeUnmount)(()=>{u=!0}),(0,n.onUnmounted)(()=>{u=!0,y()}),{containerRef:t,playerRef:r,playerState:i,currentTime:o,duration:s,isFullscreen:c,initPlayer:v,destroyPlayer:y}}function v(e){let r=(0,n.ref)(y()),i=(0,n.ref)(b()),a=(0,n.ref)(!1);function o(){e.value?.play()}function s(){e.value?.pause()}function c(){let t=e.value;t&&(t.paused?t.play():t.pause())}function l(t){let n=e.value;n&&(n.currentTime=Math.max(0,Math.min(t,n.duration??0)))}function u(n){let i=e.value;if(!i)return;let o=Math.max(0,Math.min(1,n));i.volume=o,r.value=o,a.value=o===0,t.i(p.VOLUME,o)}function d(){let t=e.value;t&&(a.value?u(r.value>0?r.value:.5):(t.volume=0,a.value=!0))}function f(n){let r=e.value;r&&(r.playbackRate=n,i.value=n,t.i(p.PLAYBACK_RATE,n))}function m(){let t=e.value;t&&(t.volume=r.value,t.playbackRate=i.value,a.value=r.value===0)}return(0,n.watch)(e,e=>{e&&m()}),{volume:r,playbackRate:i,isMuted:a,play:o,pause:s,togglePlay:c,seek:l,setVolume:u,toggleMute:d,setPlaybackRate:f}}function y(){let e=Number(t.t(p.VOLUME));return Number.isFinite(e)&&e>=0&&e<=1?e:.75}function b(){let e=Number(t.t(p.PLAYBACK_RATE));return Number.isFinite(e)&&e>0?e:1}function x(e,r,i,a,c,l){let u=(0,n.ref)(0),d=(0,n.ref)(0),f=0,m=!1,h=!1,g=null,_=null,v=a.value;function y(){return p.PROGRESS+encodeURIComponent(v)}function b(){let e=t.t(y());return!e||typeof e!=`object`?0:(u.value=S(e.watchedDuration),d.value=Math.min(100,S(e.completionPercent)),S(e.currentTime))}function x(){return{currentTime:r.value,duration:i.value,watchedDuration:u.value,completionPercent:d.value,updatedAt:Date.now()}}function C(){v&&t.i(y(),x())}function w(e,t){if(e)try{Promise.resolve(e(t)).catch(()=>void 0)}catch{}}function T(){w(c,x()),C()}function E(){if(!m)return;let e=performance.now();if(f>0){let t=(e-f)/1e3;t>0&&t<5&&(u.value+=t)}f=e,i.value>0&&(d.value=Math.min(100,Math.round(u.value/i.value*100)))}function D(){let e=l?.heartbeatInterval??o;!Number.isFinite(e)||e<=0||(g=setInterval(()=>{m&&w(l?.onHeartbeat,x())},e))}function O(){_=setInterval(()=>{m&&T()},s)}function k(){let e=x();C(),w(c,e)}function A(){if(document.hidden)E(),T(),m=!1;else{let t=e.value;t&&!t.paused&&(m=!0,f=performance.now())}}function j(){N(),h=!0,D(),O(),window.addEventListener(`beforeunload`,k),document.addEventListener(`visibilitychange`,A)}function M(){let e=h;E(),m=!1,h=!1,N(),e&&C()}function N(){g&&=(clearInterval(g),null),_&&=(clearInterval(_),null),window.removeEventListener(`beforeunload`,k),document.removeEventListener(`visibilitychange`,A)}function P(){h||j(),m=!0,f=performance.now()}function F(){E(),m=!1,f=0,C()}function I(){E()}return(0,n.watch)(a,e=>{M(),v=e,u.value=0,d.value=0,f=0,r.value=0,i.value=0},{flush:`sync`}),(0,n.watch)(e,e=>{e?j():N()}),(0,n.onBeforeUnmount)(()=>{M()}),{watchedDuration:u,completionPercent:d,getProgressData:x,restoreProgress:b,saveProgress:C,startTracking:j,stopTracking:M,onPlay:P,onPause:F,onTimeUpdate:I}}function S(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:0}function C(e,t){let r=(0,n.ref)(null),i=(0,n.ref)(!1),a=()=>(0,n.toValue)(t)??[],o=e=>({url:e.url,definition:e.label,text:{zh:e.label,en:e.label},bitrate:e.bitrate});function s(){let a=(0,n.toValue)(t);if(a===void 0)return;let s=a,c=e.value;c&&(c.definitionList=s.map(o)),s.some(e=>e.label===r.value)||(r.value=null,i.value=!1)}(0,n.watch)([e,()=>(0,n.toValue)(t)],s,{deep:!0});function c(o){o.on(m.AFTER_DEFINITION_CHANGE,s=>{if(e.value!==o)return;let c=typeof s.to==`string`?s.to:s.to.definition;(0,n.toValue)(t)!==void 0&&!a().some(e=>e.label===c)||(r.value=c,i.value=!1)}),o.on(m.BEFORE_DEFINITION_CHANGE,()=>{e.value===o&&(i.value=!0)})}function l(t){let n=e.value,r=a().find(e=>e.label===t);!n||!r||(i.value=!0,n.changeDefinition(o(r)))}return{currentQuality:r,isSwitching:i,switchQuality:l,bindEvents:c}}function w(e,t,r,i){let a=(0,n.computed)(()=>{if(!e.value.length)return null;let n=t.value;return e.value.find(e=>n>=e.startTime&&n<e.endTime)??null}),o=(0,n.computed)(()=>a.value?e.value.findIndex(e=>e.id===a.value.id):-1),s=(0,n.computed)(()=>!r.value||!e.value.length?[]:e.value.map(e=>({...e,startPercent:e.startTime/r.value*100,endPercent:e.endTime/r.value*100,widthPercent:(e.endTime-e.startTime)/r.value*100})));function c(t){let n=e.value.find(e=>e.id===t);n&&i(n.startTime)}function l(){let t=o.value;t>0&&i(e.value[t-1].startTime)}function u(){let t=o.value;t>=0&&t<e.value.length-1&&i(e.value[t+1].startTime)}return{currentChapter:a,currentChapterIndex:o,chapterMarkers:s,goToChapter:c,prevChapter:l,nextChapter:u}}function T(e,r,i,a=[]){let o=(0,n.ref)([]);function s(){return p.BOOKMARKS+encodeURIComponent(e.value)}function c(){let e=t.t(s());Array.isArray(e)&&(o.value=e.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`&&typeof e.time==`number`&&Number.isFinite(e.time)&&typeof e.note==`string`&&typeof e.createdAt==`number`),u())}function l(){t.i(s(),o.value)}function u(){o.value.sort((e,t)=>e.time-t.time)}function d(e=``){let t={id:typeof crypto<`u`&&`randomUUID`in crypto?`bm_${crypto.randomUUID()}`:`bm_${Date.now()}_${o.value.length}`,time:r.value,note:e,createdAt:Date.now()};return o.value.push(t),u(),l(),t}function f(e){let t=o.value.findIndex(t=>t.id===e);t!==-1&&(o.value.splice(t,1),l())}function m(e,t){let n=o.value.find(t=>t.id===e);n&&(n.note=t,l())}function h(e){let t=o.value.find(t=>t.id===e);t&&i(t.time)}function g(){o.value=[],l()}return(0,n.watch)([e,()=>(0,n.toValue)(a)],()=>{let e=(0,n.toValue)(a)??[];o.value=e.map(e=>({...e})),e.length||c()},{immediate:!0,deep:!0,flush:`sync`}),{bookmarks:o,addBookmark:d,removeBookmark:f,updateBookmark:m,goToBookmark:h,clearBookmarks:g}}function E(e,t,r){let i=(0,n.computed)(()=>(0,n.toValue)(r)),a=(0,n.ref)(0),o=(0,n.ref)(!0),s=(0,n.ref)(!1),c=(0,n.computed)(()=>i.value?.watermark??!1),l=(0,n.ref)(i.value?.watermarkText??``);function u(e){e>a.value&&(a.value=e)}function d(e){!i.value?.preventSeekOnFirstWatch||!o.value||(e.currentTime??0)>a.value+2&&(e.currentTime=a.value)}function f(){if(!i.value?.focusDetection)return;let t=e.value;t&&(document.hidden?(s.value=!0,t.paused||t.pause()):s.value=!1)}function p(n){n.on(m.SEEKING,()=>{e.value===n&&d(n)}),n.on(m.TIME_UPDATE,()=>{e.value===n&&u(t.value)}),document.addEventListener(`visibilitychange`,f)}function h(){o.value=!1}function g(e){l.value=e}return(0,n.watch)(()=>i.value?.watermarkText,e=>{l.value=e??``}),(0,n.onBeforeUnmount)(()=>{document.removeEventListener(`visibilitychange`,f)}),{maxWatchedTime:a,isFirstWatch:o,isBlurred:s,showWatermark:c,watermarkText:l,bindEvents:p,markAsWatched:h,setWatermarkText:g}}function D(e){let t=[];e.forEach((e,n)=>{!Number.isFinite(e.start)||!Number.isFinite(e.end)||e.end<=e.start||t.push({time:e.start,index:n,active:!0},{time:e.end,index:n,active:!1})}),t.sort((e,t)=>e.time-t.time);let n=new Uint8Array(e.length),r=[],i=[],a=e=>{let t=r.length;for(r.push(e);t>0;){let n=t-1>>>1;if(r[n]<=e)break;r[t]=r[n],t=n}r[t]=e},o=()=>{for(;r.length&&!n[r[0]];){let e=r.pop();if(!r.length)break;let t=0;for(;t*2+1<r.length;){let n=t*2+1;if(n+1<r.length&&r[n+1]<r[n]&&n++,r[n]>=e)break;r[t]=r[n],t=n}r[t]=e}},s=0;for(;s<t.length;){let c=t[s].time;for(;s<t.length&&t[s].time===c;){let e=t[s++];n[e.index]=Number(e.active),e.active&&a(e.index)}if(o(),!r.length||s===t.length)continue;let l=t[s].time,{text:u}=e[r[0]],d=i[i.length-1];d?.end===c&&d.text===u?d.end=l:i.push({start:c,end:l,text:u})}return i}function O(e,t){if(!Number.isFinite(t))return``;let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;e[i].start<=t?n=i+1:r=i}let i=e[n-1];return i&&t<i.end?i.text:``}function k(e){let t=e.trim().match(/^(?:(\d{2,}):)?(\d{2}):(\d{2})\.(\d{3})$/);if(!t)return NaN;let[,n=`0`,r,i,a]=t;return Number(r)>59||Number(i)>59?NaN:Number(n)*3600+Number(r)*60+Number(i)+Number(a)/1e3}function A(e){let t=[],n=e.replace(/\r\n?/g,`
2
2
  `).trim().split(/\n\s*\n/);for(let e of n){let n=e.trim().split(`
3
3
  `);if(/^(?:NOTE|STYLE|REGION)(?:\s|$)/.test(n[0]))continue;let r=n.findIndex(e=>e.includes(`-->`));if(r===-1)continue;let[i,a]=n[r].split(`-->`);if(!i||!a)continue;let o=k(i),s=k(a.trim().split(/\s+/)[0]);if(!Number.isFinite(o)||!Number.isFinite(s)||s<=o)continue;let c=n.slice(r+1).join(`
4
- `).replace(/<[^>]+>/g,``).trim();c&&t.push({start:o,end:s,text:c})}return t}function j(e,t=[],r=(0,n.ref)(0)){let i=(0,n.ref)(null),a=(0,n.ref)([...t]),o=(0,n.shallowRef)({}),s=(0,n.ref)(!1),c=new Map,l=0,u=!1,d=(0,n.computed)(()=>{if(!i.value)return``;let e=o.value[i.value];return e?O(e.timeline,r.value):``}),f=(0,n.computed)(()=>a.value.length>0);function p(e){if(u)return Promise.resolve([]);if(Object.prototype.hasOwnProperty.call(o.value,e))return Promise.resolve(o.value[e].cues);let t=c.get(e);if(t)return t.promise;let n=a.value.find(t=>t.language===e);if(!n)return Promise.resolve([]);let r=new AbortController;s.value=!0;let i=Promise.resolve().then(async()=>{let t=await fetch(n.src,{signal:r.signal});if(!t.ok)throw Error(`字幕加载失败: ${n.src} (${t.status})`);let i=await t.text();if(u||r.signal.aborted)return[];let a=A(i);return o.value={...o.value,[e]:{cues:a,timeline:D(a)}},a}).catch(e=>(!u&&!r.signal.aborted&&console.warn(`[C_VideoPlayer] 字幕加载异常:`,e),[])).finally(()=>{c.delete(e),u||(s.value=c.size>0)});return c.set(e,{controller:r,promise:i}),i}async function m(e){if(u)return;if(!a.value.find(t=>t.language===e)){console.warn(`[C_VideoPlayer] 未找到字幕轨道: ${e}`);return}let t=++l;await p(e),!u&&t===l&&(i.value=e)}async function h(){let e=a.value.find(e=>e.default)??a.value[0];e&&await m(e.language)}function g(){l++,i.value=null}function _(){i.value?g():h()}return(0,n.onBeforeUnmount)(()=>{u=!0,l++,c.forEach(({controller:e})=>e.abort()),c.clear(),s.value=!1}),{activeLanguage:i,subtitleList:a,currentText:d,hasSubtitles:f,isLoading:s,initSubtitles:h,switchSubtitle:m,closeSubtitle:g,toggleSubtitle:_}}function M(e,t,r){let i=(0,n.ref)(null),a=(0,n.ref)(new Set),o=(0,n.ref)(``),s=(0,n.ref)(!1),c=(0,n.ref)(!1);function l(){if(i.value||!r.value.length)return;let e=t.value,n=r.value.find(t=>!a.value.has(t.id)&&Math.abs(e-t.triggerTime)<1);n&&u(n)}function u(t){i.value=t,o.value=t.type===`multiple`?[]:``,s.value=!1,c.value=!1,e.value?.pause()}function d(){if(!i.value)return!1;let e=i.value,t=m(e,o.value);return c.value=t,s.value=!0,(t||!e.required)&&a.value.add(e.id),t}function f(){if(!i.value)return;let t=i.value;t.required&&!a.value.has(t.id)||(i.value=null,s.value=!1,o.value=``,e.value?.play())}function p(){i.value&&(o.value=i.value.type===`multiple`?[]:``,s.value=!1,c.value=!1)}function m(e,t){if(e.type===`multiple`){let n=Array.isArray(t)?[...t].sort():[t],r=Array.isArray(e.answer)?[...e.answer].sort():[e.answer];return n.length===r.length&&n.every((e,t)=>e===r[t])}return t===e.answer}return(0,n.watch)(t,()=>{l()}),{activeQuiz:i,completedQuizIds:a,selectedAnswer:o,showResult:s,lastAnswerCorrect:c,submitAnswer:d,closeQuiz:f,retryQuiz:p}}function N(e,t){let r=(0,n.ref)(!1),i=null;function a(){!e.value||!t.value||(i=new IntersectionObserver(([e])=>{r.value=!e.isIntersecting},{threshold:.3}),i.observe(e.value))}function o(){i&&=(i.disconnect(),null),r.value=!1}function s(){e.value?.scrollIntoView({behavior:`smooth`,block:`center`})}function c(){r.value=!1,o()}return(0,n.onBeforeUnmount)(()=>{o()}),{isMiniMode:r,initObserver:a,destroyObserver:o,scrollToPlayer:s,closeMiniPlayer:c}}function P(e,t,r={}){let{enabled:i=!0,onToggleFullscreen:a}=r,o={" ":(e,t)=>{e.preventDefault(),t.paused?t.play():t.pause()},ArrowLeft:(e,t)=>{e.preventDefault(),t.currentTime=Math.max(0,(t.currentTime??0)-5)},ArrowRight:(e,t)=>{e.preventDefault(),t.currentTime=Math.min(t.duration??0,(t.currentTime??0)+5)},ArrowUp:(e,t)=>{e.preventDefault(),t.volume=Math.min(1,(t.volume??0)+d)},ArrowDown:(e,t)=>{e.preventDefault(),t.volume=Math.max(0,(t.volume??0)-d)},f:e=>{e.preventDefault(),a?.()},F:e=>{e.preventDefault(),a?.()},m:(e,t)=>{e.preventDefault(),t.volume=t.volume>0?0:.75},M:(e,t)=>{e.preventDefault(),t.volume=t.volume>0?0:.75}};function s(t){if(!i)return;let n=e.value;if(!n)return;let r=t.target;if(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.isContentEditable)return;let a=o[t.key];a?.(t,n)}function c(){i&&t.value?.addEventListener(`keydown`,s)}function l(){t.value?.removeEventListener(`keydown`,s)}return(0,n.onBeforeUnmount)(()=>{l()}),{startListening:c,stopListening:l}}function ee(e,t){function n(t,n){return{type:t,currentTime:e.currentTime??0,timestamp:Date.now(),payload:n}}function r(e,r){t(n(e,r))}let i=()=>r(`play`),a=()=>r(`pause`),o=()=>r(`ended`),s=()=>r(`seek`),c=()=>r(`error`),l=()=>r(`buffer`),u=e=>{r(`fullscreen`,{isFullscreen:e})},d=e=>{r(`quality_change`,e)},f=()=>{r(`speed_change`,{rate:e.playbackRate})};e.on(m.PLAY,i),e.on(m.PAUSE,a),e.on(m.ENDED,o),e.on(m.SEEKED,s),e.on(m.ERROR,c),e.on(m.WAITING,l),e.on(m.FULLSCREEN_CHANGE,u),e.on(m.DEFINITION_CHANGE,d),e.on(m.RATE_CHANGE,f);function p(){e.off(m.PLAY,i),e.off(m.PAUSE,a),e.off(m.ENDED,o),e.off(m.SEEKED,s),e.off(m.ERROR,c),e.off(m.WAITING,l),e.off(m.FULLSCREEN_CHANGE,u),e.off(m.DEFINITION_CHANGE,d),e.off(m.RATE_CHANGE,f)}return{report:r,destroy:p}}const F={key:0,class:`vp-control-bar`},I={class:`vp-control-bar__left`},L={class:`vp-control-bar__center`},R={class:`vp-control-bar__right`},z=(0,n.defineComponent)({__name:`ControlBar`,props:{visible:{type:Boolean,default:!0}},setup(e){return(t,r)=>e.visible?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,F,[(0,n.createElementVNode)(`div`,I,[(0,n.renderSlot)(t.$slots,`left`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,L,[(0,n.renderSlot)(t.$slots,`center`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,R,[(0,n.renderSlot)(t.$slots,`right`,{},void 0,!0)])])):(0,n.createCommentVNode)(`v-if`,!0)}});var te=e.t(z,[[`__scopeId`,`data-v-e8b787cf`]]);const B={key:0,class:`vp-subtitle-overlay`},V={class:`vp-subtitle-text`},H={key:0,class:`vp-subtitle-toggle`},U={class:`vp-subtitle-menu`},W=[`onClick`],G=(0,n.defineComponent)({__name:`SubtitleOverlay`,props:{text:{},tracks:{},activeLanguage:{}},emits:[`switch`,`close`],setup(e){return(t,i)=>{let a=r.NButton,o=r.NPopover;return(0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createCommentVNode)(` 字幕文本 `),(0,n.createVNode)(n.Transition,{name:`vp-subtitle-fade`},{default:(0,n.withCtx)(()=>[e.text?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,B,[(0,n.createElementVNode)(`span`,V,(0,n.toDisplayString)(e.text),1)])):(0,n.createCommentVNode)(`v-if`,!0)]),_:1}),(0,n.createCommentVNode)(` 字幕切换按钮(叠加在播放器控制栏上方) `),e.tracks.length?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,H,[(0,n.createVNode)(o,{trigger:`click`,placement:`top`,"show-arrow":!1},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(a,{quaternary:``,size:`small`,class:(0,n.normalizeClass)([`vp-subtitle-btn`,{"is-active":!!e.activeLanguage}])},{default:(0,n.withCtx)(()=>[...i[1]||=[(0,n.createTextVNode)(` 字幕 `,-1)]]),_:1},8,[`class`])]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,U,[(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`vp-subtitle-menu__item`,{"is-active":!e.activeLanguage}]),onClick:i[0]||=e=>t.$emit(`close`)},` 关闭字幕 `,2),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.tracks,r=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.language,class:(0,n.normalizeClass)([`vp-subtitle-menu__item`,{"is-active":e.activeLanguage===r.language}]),onClick:e=>t.$emit(`switch`,r.language)},(0,n.toDisplayString)(r.label),11,W))),128))])]),_:1})])):(0,n.createCommentVNode)(`v-if`,!0)],64)}}});var K=e.t(G,[[`__scopeId`,`data-v-20ac6438`]]);const q={key:0,class:`vp-chapter-markers`},J={key:0,class:`vp-chapter-current`},Y={class:`vp-chapter-index`},X={class:`vp-chapter-title`},Z={class:`vp-chapter-list`},Q=[`onClick`],ne={class:`vp-chapter-item-index`},re={class:`vp-chapter-item-title`},ie={class:`vp-chapter-item-time`},ae=(0,n.defineComponent)({__name:`ChapterMarkers`,props:{chapters:{},currentChapter:{},currentIndex:{}},emits:[`goTo`],setup(e){function t(e){let t=Math.floor(e/60),n=Math.floor(e%60);return`${t.toString().padStart(2,`0`)}:${n.toString().padStart(2,`0`)}`}return(i,a)=>{let o=r.NButton,s=r.NPopover;return e.chapters.length?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,q,[(0,n.createCommentVNode)(` 当前章节信息 `),e.currentChapter?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,J,[(0,n.createElementVNode)(`span`,Y,(0,n.toDisplayString)(e.currentIndex+1)+`/`+(0,n.toDisplayString)(e.chapters.length),1),(0,n.createElementVNode)(`span`,X,(0,n.toDisplayString)(e.currentChapter.title),1)])):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 章节列表面板 `),(0,n.createVNode)(s,{trigger:`click`,placement:`top-start`,"show-arrow":!1,style:{"max-height":`300px`,"overflow-y":`auto`}},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(o,{quaternary:``,size:`small`,class:`vp-chapter-trigger`},{icon:(0,n.withCtx)(()=>[...a[0]||=[(0,n.createElementVNode)(`span`,{class:`vp-chapter-icon`},`☰`,-1)]]),default:(0,n.withCtx)(()=>[a[1]||=(0,n.createTextVNode)(` 章节 `,-1)]),_:1})]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,Z,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.chapters,(r,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.id,class:(0,n.normalizeClass)([`vp-chapter-item`,{"is-active":r.id===e.currentChapter?.id}]),onClick:e=>i.$emit(`goTo`,r.id)},[(0,n.createElementVNode)(`span`,ne,(0,n.toDisplayString)(a+1),1),(0,n.createElementVNode)(`span`,re,(0,n.toDisplayString)(r.title),1),(0,n.createElementVNode)(`span`,ie,(0,n.toDisplayString)(t(r.startTime)),1)],10,Q))),128))])]),_:1})])):(0,n.createCommentVNode)(`v-if`,!0)}}});var oe=e.t(ae,[[`__scopeId`,`data-v-8828163e`]]);const se={class:`vp-bookmark-panel`},ce={class:`vp-bookmark-list`},le=[`aria-label`,`onClick`],ue={class:`vp-bookmark-note`},de=(0,n.defineComponent)({__name:`BookmarkPanel`,props:{bookmarks:{}},emits:[`add`,`remove`,`goTo`],setup(e,{emit:t}){let i=t;function a(){i(`add`,``)}function o(e){let t=Math.floor(e/60),n=Math.floor(e%60);return`${t.toString().padStart(2,`0`)}:${n.toString().padStart(2,`0`)}`}return(t,i)=>{let s=r.NButton,c=r.NBadge,l=r.NPopover;return(0,n.openBlock)(),(0,n.createElementBlock)(`div`,se,[(0,n.createCommentVNode)(` 添加书签按钮 `),(0,n.createVNode)(s,{quaternary:``,size:`small`,class:`vp-bookmark-add-btn`,onClick:a},{icon:(0,n.withCtx)(()=>[...i[0]||=[(0,n.createElementVNode)(`span`,null,`🔖`,-1)]]),default:(0,n.withCtx)(()=>[i[1]||=(0,n.createTextVNode)(` 书签 `,-1)]),_:1}),(0,n.createCommentVNode)(` 书签列表弹窗 `),e.bookmarks.length?((0,n.openBlock)(),(0,n.createBlock)(l,{key:0,trigger:`click`,placement:`top-start`,"show-arrow":!1,style:{"max-height":`300px`,"overflow-y":`auto`}},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(c,{value:e.bookmarks.length,max:99,type:`info`},{default:(0,n.withCtx)(()=>[(0,n.createVNode)(s,{quaternary:``,size:`small`,class:`vp-bookmark-list-btn`},{default:(0,n.withCtx)(()=>[...i[2]||=[(0,n.createTextVNode)(` 列表 `,-1)]]),_:1})]),_:1},8,[`value`])]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,ce,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.bookmarks,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`vp-bookmark-item`},[(0,n.createElementVNode)(`button`,{type:`button`,class:`vp-bookmark-time`,"aria-label":`跳转到 ${o(e.time)}`,onClick:n=>t.$emit(`goTo`,e.id)},(0,n.toDisplayString)(o(e.time)),9,le),(0,n.createElementVNode)(`span`,ue,(0,n.toDisplayString)(e.note||`无备注`),1),(0,n.createVNode)(s,{quaternary:``,size:`tiny`,type:`error`,onClick:n=>t.$emit(`remove`,e.id)},{default:(0,n.withCtx)(()=>[...i[3]||=[(0,n.createTextVNode)(` ✕ `,-1)]]),_:1},8,[`onClick`])]))),128))])]),_:1})):(0,n.createCommentVNode)(`v-if`,!0)])}}});var fe=e.t(de,[[`__scopeId`,`data-v-29942590`]]);const pe={key:0,class:`vp-quiz-overlay`},me={class:`vp-quiz-card`},he={class:`vp-quiz-header`},$={class:`vp-quiz-type-tag`},ge={class:`vp-quiz-title`},_e={class:`vp-quiz-options`},ve={class:`vp-quiz-actions`},ye=(0,n.defineComponent)({__name:`QuizOverlay`,props:(0,n.mergeModels)({quiz:{},showResult:{type:Boolean,default:!1},isCorrect:{type:Boolean,default:!1}},{answer:{default:``},answerModifiers:{}}),emits:(0,n.mergeModels)([`submit`,`retry`,`close`],[`update:answer`]),setup(e){let t=e,i=(0,n.ref)(``),a=(0,n.ref)([]),o=(0,n.useModel)(e,`answer`),s=(0,n.computed)(()=>({single:`单选题`,multiple:`多选题`,judge:`判断题`})[t.quiz?.type??`single`]??`单选题`),c=(0,n.computed)(()=>t.quiz?.type===`multiple`?a.value.length>0:i.value!==``);return(0,n.watch)(i,e=>{t.quiz?.type!==`multiple`&&(o.value=e)}),(0,n.watch)(a,e=>{t.quiz?.type===`multiple`&&(o.value=[...e])}),(0,n.watch)(()=>t.quiz?.id,()=>{i.value=``,a.value=[]}),(t,o)=>{let l=r.NCheckbox,u=r.NCheckboxGroup,d=r.NRadio,f=r.NRadioGroup,p=r.NButton;return(0,n.openBlock)(),(0,n.createBlock)(n.Transition,{name:`vp-quiz-fade`},{default:(0,n.withCtx)(()=>[e.quiz?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,pe,[(0,n.createElementVNode)(`div`,me,[(0,n.createCommentVNode)(` 标题 `),(0,n.createElementVNode)(`div`,he,[(0,n.createElementVNode)(`span`,$,(0,n.toDisplayString)(s.value),1),(0,n.createElementVNode)(`h3`,ge,(0,n.toDisplayString)(e.quiz.title),1)]),(0,n.createCommentVNode)(` 选项 `),(0,n.createElementVNode)(`div`,_e,[e.quiz.type===`multiple`?((0,n.openBlock)(),(0,n.createBlock)(u,{key:0,value:a.value,"onUpdate:value":o[0]||=e=>a.value=e,disabled:e.showResult},{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.quiz.options,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.key,class:`vp-quiz-option`},[(0,n.createVNode)(l,{value:e.key,label:`${e.key}. ${e.label}`},null,8,[`value`,`label`])]))),128))]),_:1},8,[`value`,`disabled`])):((0,n.openBlock)(),(0,n.createBlock)(f,{key:1,value:i.value,"onUpdate:value":o[1]||=e=>i.value=e,disabled:e.showResult},{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.quiz.options,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.key,class:`vp-quiz-option`},[(0,n.createVNode)(d,{value:e.key,label:`${e.key}. ${e.label}`},null,8,[`value`,`label`])]))),128))]),_:1},8,[`value`,`disabled`]))]),(0,n.createCommentVNode)(` 结果反馈 `),e.showResult?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`vp-quiz-result`,e.isCorrect?`is-correct`:`is-wrong`])},(0,n.toDisplayString)(e.isCorrect?`✓ 回答正确!`:`✗ 回答错误,请重试`),3)):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 操作按钮 `),(0,n.createElementVNode)(`div`,ve,[e.showResult?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[!e.isCorrect&&e.quiz.required?((0,n.openBlock)(),(0,n.createBlock)(p,{key:0,type:`warning`,onClick:o[3]||=e=>t.$emit(`retry`)},{default:(0,n.withCtx)(()=>[...o[6]||=[(0,n.createTextVNode)(` 重新作答 `,-1)]]),_:1})):(0,n.createCommentVNode)(`v-if`,!0),e.isCorrect||!e.quiz.required?((0,n.openBlock)(),(0,n.createBlock)(p,{key:1,type:`primary`,onClick:o[4]||=e=>t.$emit(`close`)},{default:(0,n.withCtx)(()=>[...o[7]||=[(0,n.createTextVNode)(` 继续学习 `,-1)]]),_:1})):(0,n.createCommentVNode)(`v-if`,!0)],64)):((0,n.openBlock)(),(0,n.createBlock)(p,{key:0,type:`primary`,disabled:!c.value,onClick:o[2]||=e=>t.$emit(`submit`)},{default:(0,n.withCtx)(()=>[...o[5]||=[(0,n.createTextVNode)(` 提交答案 `,-1)]]),_:1},8,[`disabled`]))])])])):(0,n.createCommentVNode)(`v-if`,!0)]),_:1})}}});var be=e.t(ye,[[`__scopeId`,`data-v-1132a37b`]]);const xe=(0,n.defineComponent)({__name:`WatermarkOverlay`,props:{visible:{type:Boolean,default:!0},text:{default:``},fontSize:{default:h.fontSize},color:{default:h.color},rotate:{default:h.rotate},gap:{default:h.gap}},setup(e){let t=e,r=(0,n.computed)(()=>{let e=t.gap*t.gap;return Math.ceil(2073600/e)}),i=(0,n.computed)(()=>({position:`absolute`,inset:0,overflow:`hidden`,pointerEvents:`none`,zIndex:50,display:`flex`,flexWrap:`wrap`,alignContent:`flex-start`,gap:`${t.gap}px`,padding:`${t.gap/2}px`})),a=(0,n.computed)(()=>({fontSize:`${t.fontSize}px`,color:t.color,transform:`rotate(${t.rotate}deg)`,userSelect:`none`,whiteSpace:`nowrap`,lineHeight:1}));return(t,o)=>e.visible&&e.text?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`vp-watermark`,style:(0,n.normalizeStyle)(i.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(r.value,t=>((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:t,class:`vp-watermark-item`,style:(0,n.normalizeStyle)(a.value)},(0,n.toDisplayString)(e.text),5))),128))],4)):(0,n.createCommentVNode)(`v-if`,!0)}});var Se=e.t(xe,[[`__scopeId`,`data-v-9a051cb4`]]);const Ce=(0,n.defineComponent)({name:`C_VideoPlayer`,__name:`index`,props:{url:{},sourceType:{},width:{},height:{},poster:{},fluid:{type:Boolean},autoplay:{type:Boolean},autoplayMuted:{type:Boolean},loop:{type:Boolean},volume:{},startTime:{},playbackRates:{},defaultPlaybackRate:{},pip:{type:Boolean},fullscreen:{type:Boolean},cssFullscreen:{type:Boolean},miniPlayer:{type:Boolean},screenshot:{type:Boolean},keyboard:{type:Boolean},lang:{},qualityList:{},defaultQuality:{},chapters:{},subtitles:{},quizzes:{},bookmarks:{},thumbnail:{},onProgress:{type:Function},antiCheat:{},onAnalytics:{type:Function},playerOptions:{}},emits:[`ready`,`stateChange`,`timeUpdate`,`ended`,`error`,`qualityChange`,`rateChange`,`fullscreenChange`,`bookmarkChange`,`quizAnswer`,`chapterChange`,`progressUpdate`],setup(e,{expose:t,emit:r}){let i=e,a=r,o=_(i),{containerRef:s,playerRef:c,playerState:l,currentTime:u,duration:d,isFullscreen:f}=o,p=(0,n.ref)(null),h=v(c),g=(0,n.toRef)(i,`url`),y=x(c,u,d,g,i.onProgress,i.antiCheat),b=C(c,i.qualityList),S=(0,n.computed)(()=>i.chapters??[]),D=w(S,u,d,h.seek),O=T(g,u,h.seek,i.bookmarks),k=E(c,u,i.antiCheat),A=j(c,i.subtitles,u),F=M(c,u,(0,n.computed)(()=>i.quizzes??[])),I=N(p,(0,n.computed)(()=>i.miniPlayer??!1)),L=P(c,p,{enabled:i.keyboard!==!1,onToggleFullscreen:()=>{c.value?.getFullscreen?.()}}),R=null,z=!1;function B(e){O.addBookmark(e),a(`bookmarkChange`,O.bookmarks.value)}function V(){let e=F.submitAnswer(),t=F.activeQuiz.value;t&&a(`quizAnswer`,t.id,F.selectedAnswer.value,e)}function H(){F.closeQuiz()}return(0,n.watch)(l,e=>{a(`stateChange`,e)}),(0,n.watch)(f,e=>{a(`fullscreenChange`,e)}),(0,n.watch)(()=>D.currentChapter.value,e=>{e&&a(`chapterChange`,e)}),(0,n.onMounted)(async()=>{if(o.containerRef.value=s.value,await(0,n.nextTick)(),z)return;try{await o.initPlayer()}catch(e){z||a(`error`,e instanceof Error?e:Error(String(e)));return}if(z)return;let e=c.value;if(!e)return;b.bindEvents(e),k.bindEvents(e),A.initSubtitles(),L.startListening(),I.initObserver();let t=y.restoreProgress();t>0&&i.startTime===void 0&&(e.currentTime=t),e.on(m.PLAY,()=>{y.onPlay()}),e.on(m.PAUSE,()=>{y.onPause()}),e.on(m.TIME_UPDATE,()=>{y.onTimeUpdate(),a(`timeUpdate`,u.value,d.value),a(`progressUpdate`,y.getProgressData())}),e.on(m.ENDED,()=>{a(`ended`),k.markAsWatched()}),e.on(m.ERROR,()=>{a(`error`,Error(`播放器错误`))}),e.on(m.READY,()=>{a(`ready`)}),e.on(m.AFTER_DEFINITION_CHANGE,e=>{a(`qualityChange`,e.to)}),e.on(m.RATE_CHANGE,e=>{a(`rateChange`,e)}),i.onAnalytics&&(R=ee(e,i.onAnalytics).destroy)}),(0,n.onBeforeUnmount)(()=>{z=!0,R?.(),L.stopListening(),I.destroyObserver()}),t({play:h.play,pause:h.pause,seek:h.seek,setPlaybackRate:h.setPlaybackRate,setVolume:h.setVolume,switchQuality:b.switchQuality,getProgressData:y.getProgressData,destroy:o.destroyPlayer,getPlayerInstance:()=>c.value}),(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`wrapperRef`,ref:p,class:(0,n.normalizeClass)([`c-video-player`,{"is-mini":(0,n.unref)(I).isMiniMode.value,"is-fullscreen":(0,n.unref)(f)}]),tabindex:`0`},[(0,n.createCommentVNode)(` 播放器容器 `),(0,n.createElementVNode)(`div`,{ref_key:`containerRef`,ref:s,class:`c-video-player__container`},null,512),(0,n.createCommentVNode)(` 动态水印 `),(0,n.createVNode)(Se,{visible:(0,n.unref)(k).showWatermark.value,text:(0,n.unref)(k).watermarkText.value},null,8,[`visible`,`text`]),(0,n.createCommentVNode)(` 字幕渲染层 `),(0,n.createVNode)(K,{text:(0,n.unref)(A).currentText.value,tracks:(0,n.unref)(A).subtitleList.value,"active-language":(0,n.unref)(A).activeLanguage.value,onSwitch:(0,n.unref)(A).switchSubtitle,onClose:(0,n.unref)(A).closeSubtitle},null,8,[`text`,`tracks`,`active-language`,`onSwitch`,`onClose`]),(0,n.createCommentVNode)(` 测验弹窗 `),i.quizzes?.length?((0,n.openBlock)(),(0,n.createBlock)(be,{key:0,answer:(0,n.unref)(F).selectedAnswer.value,"onUpdate:answer":t[0]||=e=>(0,n.unref)(F).selectedAnswer.value=e,quiz:(0,n.unref)(F).activeQuiz.value,"show-result":(0,n.unref)(F).showResult.value,"is-correct":(0,n.unref)(F).lastAnswerCorrect.value,onSubmit:V,onRetry:t[1]||=e=>(0,n.unref)(F).retryQuiz(),onClose:H},null,8,[`answer`,`quiz`,`show-result`,`is-correct`])):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 扩展控制栏(xgplayer 自带控制栏外的扩展) `),(0,n.createVNode)(te,{visible:!0},{left:(0,n.withCtx)(()=>[(0,n.createCommentVNode)(` 章节标记 `),i.chapters?.length?((0,n.openBlock)(),(0,n.createBlock)(oe,{key:0,chapters:S.value,"current-chapter":(0,n.unref)(D).currentChapter.value,"current-index":(0,n.unref)(D).currentChapterIndex.value,onGoTo:(0,n.unref)(D).goToChapter},null,8,[`chapters`,`current-chapter`,`current-index`,`onGoTo`])):(0,n.createCommentVNode)(`v-if`,!0)]),right:(0,n.withCtx)(()=>[(0,n.createCommentVNode)(` 书签面板 `),(0,n.createVNode)(fe,{bookmarks:(0,n.unref)(O).bookmarks.value,onAdd:B,onRemove:(0,n.unref)(O).removeBookmark,onGoTo:(0,n.unref)(O).goToBookmark},null,8,[`bookmarks`,`onRemove`,`onGoTo`])]),_:1}),(0,n.createCommentVNode)(` 小窗关闭按钮 `),(0,n.unref)(I).isMiniMode.value?((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{key:1,type:`button`,class:`c-video-player__mini-close`,"aria-label":`关闭小窗播放`,onClick:t[2]||=e=>(0,n.unref)(I).closeMiniPlayer()},` ✕ `)):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 小窗点击回原位 `),(0,n.unref)(I).isMiniMode.value?((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{key:2,type:`button`,class:`c-video-player__mini-back`,onClick:t[3]||=e=>(0,n.unref)(I).scrollToPlayer()},` 回到原位 `)):(0,n.createCommentVNode)(`v-if`,!0)],2))}});var we=e.t(Ce,[[`__scopeId`,`data-v-e6dc58ed`]]);Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return 1}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return d}});
4
+ `).replace(/<[^>]+>/g,``).trim();c&&t.push({start:o,end:s,text:c})}return t}function j(e,t=[],r=(0,n.ref)(0)){let i=(0,n.ref)(null),a=(0,n.ref)(((0,n.toValue)(t)??[]).map(e=>({...e}))),o=(0,n.shallowRef)({}),s=(0,n.ref)(!1),c=new Map,l=0,u=!1,d=(0,n.computed)(()=>{if(!i.value)return``;let e=o.value[i.value];return e?O(e.timeline,r.value):``}),f=(0,n.computed)(()=>a.value.length>0);function p(e){if(u)return Promise.resolve([]);if(Object.prototype.hasOwnProperty.call(o.value,e))return Promise.resolve(o.value[e].cues);let t=c.get(e);if(t)return t.promise;let n=a.value.find(t=>t.language===e);if(!n)return Promise.resolve([]);let r=new AbortController;s.value=!0;let i=Promise.resolve().then(async()=>{let t=await fetch(n.src,{signal:r.signal});if(!t.ok)throw Error(`字幕加载失败: ${n.src} (${t.status})`);let i=await t.text();if(u||r.signal.aborted||c.get(e)?.controller!==r)return[];let a=A(i);return o.value={...o.value,[e]:{cues:a,timeline:D(a)}},a}).catch(e=>(!u&&!r.signal.aborted&&console.warn(`[C_VideoPlayer] 字幕加载异常:`,e),[])).finally(()=>{c.get(e)?.controller===r&&(c.delete(e),u||(s.value=c.size>0))});return c.set(e,{controller:r,promise:i}),i}async function m(e){if(u)return;if(!a.value.find(t=>t.language===e)){console.warn(`[C_VideoPlayer] 未找到字幕轨道: ${e}`);return}let t=++l;await p(e),!u&&t===l&&(i.value=e)}async function h(){let e=a.value.find(e=>e.default)??a.value[0];e&&await m(e.language)}function g(){l++,i.value=null}function _(){i.value?g():h()}function v(){l++,c.forEach(({controller:e})=>e.abort()),c.clear(),o.value={},i.value=null,s.value=!1}return(0,n.watch)(()=>(0,n.toValue)(t),e=>{v(),a.value=(e??[]).map(e=>({...e})),h()},{deep:!0}),(0,n.onBeforeUnmount)(()=>{u=!0,v()}),{activeLanguage:i,subtitleList:a,currentText:d,hasSubtitles:f,isLoading:s,initSubtitles:h,resetSubtitles:v,switchSubtitle:m,closeSubtitle:g,toggleSubtitle:_}}function M(e,t,r){let i=(0,n.ref)(null),a=(0,n.ref)(new Set),o=(0,n.ref)(``),s=(0,n.ref)(!1),c=(0,n.ref)(!1);function l(e){return JSON.stringify([e.id,e.triggerTime,e.type,e.title,e.options.map(e=>[e.key,e.label]),Array.isArray(e.answer)?[...e.answer].sort():e.answer,e.required===!0])}let u,d=new Set,f=new Map(r.value.map(e=>[e.id,l(e)]));function p(){i.value=null,u=void 0,o.value=``,s.value=!1,c.value=!1}function m(){if(i.value||!r.value.length)return;let e=t.value,n=r.value.find(t=>!a.value.has(t.id)&&!d.has(t.id)&&Math.abs(e-t.triggerTime)<1);n&&h(n)}function h(t){i.value=t,u=l(t),o.value=t.type===`multiple`?[]:``,s.value=!1,c.value=!1,e.value?.pause()}function g(){if(x(),!i.value)return!1;let e=i.value,t=y(e,o.value);return c.value=t,s.value=!0,(t||!e.required)&&a.value.add(e.id),t}function _(){if(x(),!i.value)return;let t=i.value;t.required&&!a.value.has(t.id)||(p(),e.value?.play())}function v(){x(),i.value&&(o.value=i.value.type===`multiple`?[]:``,s.value=!1,c.value=!1)}function y(e,t){if(e.type===`multiple`){let n=Array.isArray(t)?[...t].sort():[t],r=Array.isArray(e.answer)?[...e.answer].sort():[e.answer];return n.length===r.length&&n.every((e,t)=>e===r[t])}return t===e.answer}(0,n.watch)(t,()=>{d.clear(),x()||m()});let b=()=>r.value.map(e=>({quiz:e,identity:l(e)}));function x(e=b()){let t=new Map(e.map(({quiz:e,identity:t})=>[e.id,t]));if(a.value.forEach(e=>{(!t.has(e)||f.get(e)!==t.get(e))&&a.value.delete(e)}),f=t,i.value){let t=e.find(({quiz:e})=>e.id===i.value.id);if(!t||t.identity!==u)return d.add(i.value.id),p(),!0;i.value=t.quiz}return!1}return(0,n.watch)(b,e=>{x(e)||m()}),{activeQuiz:i,completedQuizIds:a,selectedAnswer:o,showResult:s,lastAnswerCorrect:c,submitAnswer:g,closeQuiz:_,retryQuiz:v}}function N(e,t){let r=(0,n.ref)(!1),i=null;function a(){!e.value||!t.value||(i=new IntersectionObserver(([e])=>{r.value=!e.isIntersecting},{threshold:.3}),i.observe(e.value))}function o(){i&&=(i.disconnect(),null),r.value=!1}function s(){e.value?.scrollIntoView({behavior:`smooth`,block:`center`})}function c(){r.value=!1,o()}return(0,n.onBeforeUnmount)(()=>{o()}),{isMiniMode:r,initObserver:a,destroyObserver:o,scrollToPlayer:s,closeMiniPlayer:c}}function P(e,t,r={}){let{onToggleFullscreen:i}=r,a={" ":(e,t)=>{e.preventDefault(),t.paused?t.play():t.pause()},ArrowLeft:(e,t)=>{e.preventDefault(),t.currentTime=Math.max(0,(t.currentTime??0)-5)},ArrowRight:(e,t)=>{e.preventDefault(),t.currentTime=Math.min(t.duration??0,(t.currentTime??0)+5)},ArrowUp:(e,t)=>{e.preventDefault(),t.volume=Math.min(1,(t.volume??0)+d)},ArrowDown:(e,t)=>{e.preventDefault(),t.volume=Math.max(0,(t.volume??0)-d)},f:e=>{e.preventDefault(),i?.()},F:e=>{e.preventDefault(),i?.()},m:(e,t)=>{e.preventDefault(),t.volume=t.volume>0?0:.75},M:(e,t)=>{e.preventDefault(),t.volume=t.volume>0?0:.75}};function o(t){if(r.enabled===!1)return;let n=e.value;if(!n)return;let i=t.target;if(i.tagName===`INPUT`||i.tagName===`TEXTAREA`||i.isContentEditable)return;let o=a[t.key];o?.(t,n)}function s(){t.value?.addEventListener(`keydown`,o)}function c(){t.value?.removeEventListener(`keydown`,o)}return(0,n.onBeforeUnmount)(()=>{c()}),{startListening:s,stopListening:c}}function F(e,t){let n=!0;function r(t,n){return{type:t,currentTime:e.currentTime??0,timestamp:Date.now(),payload:n}}function i(e,i){if(!n)return;let a=r(e,i);try{Promise.resolve(t(a)).catch(()=>void 0)}catch{}}let a=()=>i(`play`),o=()=>i(`pause`),s=()=>i(`ended`),c=()=>i(`seek`),l=()=>i(`error`),u=()=>i(`buffer`),d=e=>{i(`fullscreen`,{isFullscreen:e})},f=e=>{i(`quality_change`,e)},p=()=>{i(`speed_change`,{rate:e.playbackRate})};e.on(m.PLAY,a),e.on(m.PAUSE,o),e.on(m.ENDED,s),e.on(m.SEEKED,c),e.on(m.ERROR,l),e.on(m.WAITING,u),e.on(m.FULLSCREEN_CHANGE,d),e.on(m.DEFINITION_CHANGE,f),e.on(m.RATE_CHANGE,p);function h(){n=!1,e.off(m.PLAY,a),e.off(m.PAUSE,o),e.off(m.ENDED,s),e.off(m.SEEKED,c),e.off(m.ERROR,l),e.off(m.WAITING,u),e.off(m.FULLSCREEN_CHANGE,d),e.off(m.DEFINITION_CHANGE,f),e.off(m.RATE_CHANGE,p)}return{report:i,destroy:h}}const I={key:0,class:`vp-control-bar`},L={class:`vp-control-bar__left`},R={class:`vp-control-bar__center`},z={class:`vp-control-bar__right`},B=(0,n.defineComponent)({__name:`ControlBar`,props:{visible:{type:Boolean,default:!0}},setup(e){return(t,r)=>e.visible?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,I,[(0,n.createElementVNode)(`div`,L,[(0,n.renderSlot)(t.$slots,`left`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,R,[(0,n.renderSlot)(t.$slots,`center`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,z,[(0,n.renderSlot)(t.$slots,`right`,{},void 0,!0)])])):(0,n.createCommentVNode)(`v-if`,!0)}});var ee=e.t(B,[[`__scopeId`,`data-v-e8b787cf`]]);const V={key:0,class:`vp-subtitle-overlay`},H={class:`vp-subtitle-text`},U={key:0,class:`vp-subtitle-toggle`},te={class:`vp-subtitle-menu`},W=[`onClick`],G=(0,n.defineComponent)({__name:`SubtitleOverlay`,props:{text:{},tracks:{},activeLanguage:{}},emits:[`switch`,`close`],setup(e){return(t,i)=>{let a=r.NButton,o=r.NPopover;return(0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createCommentVNode)(` 字幕文本 `),(0,n.createVNode)(n.Transition,{name:`vp-subtitle-fade`},{default:(0,n.withCtx)(()=>[e.text?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,V,[(0,n.createElementVNode)(`span`,H,(0,n.toDisplayString)(e.text),1)])):(0,n.createCommentVNode)(`v-if`,!0)]),_:1}),(0,n.createCommentVNode)(` 字幕切换按钮(叠加在播放器控制栏上方) `),e.tracks.length?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,U,[(0,n.createVNode)(o,{trigger:`click`,placement:`top`,"show-arrow":!1},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(a,{quaternary:``,size:`small`,class:(0,n.normalizeClass)([`vp-subtitle-btn`,{"is-active":!!e.activeLanguage}])},{default:(0,n.withCtx)(()=>[...i[1]||=[(0,n.createTextVNode)(` 字幕 `,-1)]]),_:1},8,[`class`])]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,te,[(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`vp-subtitle-menu__item`,{"is-active":!e.activeLanguage}]),onClick:i[0]||=e=>t.$emit(`close`)},` 关闭字幕 `,2),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.tracks,r=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.language,class:(0,n.normalizeClass)([`vp-subtitle-menu__item`,{"is-active":e.activeLanguage===r.language}]),onClick:e=>t.$emit(`switch`,r.language)},(0,n.toDisplayString)(r.label),11,W))),128))])]),_:1})])):(0,n.createCommentVNode)(`v-if`,!0)],64)}}});var K=e.t(G,[[`__scopeId`,`data-v-20ac6438`]]);const q={key:0,class:`vp-chapter-markers`},J={key:0,class:`vp-chapter-current`},Y={class:`vp-chapter-index`},X={class:`vp-chapter-title`},Z={class:`vp-chapter-list`},Q=[`onClick`],ne={class:`vp-chapter-item-index`},re={class:`vp-chapter-item-title`},ie={class:`vp-chapter-item-time`},ae=(0,n.defineComponent)({__name:`ChapterMarkers`,props:{chapters:{},currentChapter:{},currentIndex:{}},emits:[`goTo`],setup(e){function t(e){let t=Math.floor(e/60),n=Math.floor(e%60);return`${t.toString().padStart(2,`0`)}:${n.toString().padStart(2,`0`)}`}return(i,a)=>{let o=r.NButton,s=r.NPopover;return e.chapters.length?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,q,[(0,n.createCommentVNode)(` 当前章节信息 `),e.currentChapter?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,J,[(0,n.createElementVNode)(`span`,Y,(0,n.toDisplayString)(e.currentIndex+1)+`/`+(0,n.toDisplayString)(e.chapters.length),1),(0,n.createElementVNode)(`span`,X,(0,n.toDisplayString)(e.currentChapter.title),1)])):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 章节列表面板 `),(0,n.createVNode)(s,{trigger:`click`,placement:`top-start`,"show-arrow":!1,style:{"max-height":`300px`,"overflow-y":`auto`}},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(o,{quaternary:``,size:`small`,class:`vp-chapter-trigger`},{icon:(0,n.withCtx)(()=>[...a[0]||=[(0,n.createElementVNode)(`span`,{class:`vp-chapter-icon`},`☰`,-1)]]),default:(0,n.withCtx)(()=>[a[1]||=(0,n.createTextVNode)(` 章节 `,-1)]),_:1})]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,Z,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.chapters,(r,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.id,class:(0,n.normalizeClass)([`vp-chapter-item`,{"is-active":r.id===e.currentChapter?.id}]),onClick:e=>i.$emit(`goTo`,r.id)},[(0,n.createElementVNode)(`span`,ne,(0,n.toDisplayString)(a+1),1),(0,n.createElementVNode)(`span`,re,(0,n.toDisplayString)(r.title),1),(0,n.createElementVNode)(`span`,ie,(0,n.toDisplayString)(t(r.startTime)),1)],10,Q))),128))])]),_:1})])):(0,n.createCommentVNode)(`v-if`,!0)}}});var oe=e.t(ae,[[`__scopeId`,`data-v-8828163e`]]);const se={class:`vp-bookmark-panel`},ce={class:`vp-bookmark-list`},le=[`aria-label`,`onClick`],ue={class:`vp-bookmark-note`},de=(0,n.defineComponent)({__name:`BookmarkPanel`,props:{bookmarks:{}},emits:[`add`,`remove`,`goTo`],setup(e,{emit:t}){let i=t;function a(){i(`add`,``)}function o(e){let t=Math.floor(e/60),n=Math.floor(e%60);return`${t.toString().padStart(2,`0`)}:${n.toString().padStart(2,`0`)}`}return(t,i)=>{let s=r.NButton,c=r.NBadge,l=r.NPopover;return(0,n.openBlock)(),(0,n.createElementBlock)(`div`,se,[(0,n.createCommentVNode)(` 添加书签按钮 `),(0,n.createVNode)(s,{quaternary:``,size:`small`,class:`vp-bookmark-add-btn`,onClick:a},{icon:(0,n.withCtx)(()=>[...i[0]||=[(0,n.createElementVNode)(`span`,null,`🔖`,-1)]]),default:(0,n.withCtx)(()=>[i[1]||=(0,n.createTextVNode)(` 书签 `,-1)]),_:1}),(0,n.createCommentVNode)(` 书签列表弹窗 `),e.bookmarks.length?((0,n.openBlock)(),(0,n.createBlock)(l,{key:0,trigger:`click`,placement:`top-start`,"show-arrow":!1,style:{"max-height":`300px`,"overflow-y":`auto`}},{trigger:(0,n.withCtx)(()=>[(0,n.createVNode)(c,{value:e.bookmarks.length,max:99,type:`info`},{default:(0,n.withCtx)(()=>[(0,n.createVNode)(s,{quaternary:``,size:`small`,class:`vp-bookmark-list-btn`},{default:(0,n.withCtx)(()=>[...i[2]||=[(0,n.createTextVNode)(` 列表 `,-1)]]),_:1})]),_:1},8,[`value`])]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,ce,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.bookmarks,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`vp-bookmark-item`},[(0,n.createElementVNode)(`button`,{type:`button`,class:`vp-bookmark-time`,"aria-label":`跳转到 ${o(e.time)}`,onClick:n=>t.$emit(`goTo`,e.id)},(0,n.toDisplayString)(o(e.time)),9,le),(0,n.createElementVNode)(`span`,ue,(0,n.toDisplayString)(e.note||`无备注`),1),(0,n.createVNode)(s,{quaternary:``,size:`tiny`,type:`error`,onClick:n=>t.$emit(`remove`,e.id)},{default:(0,n.withCtx)(()=>[...i[3]||=[(0,n.createTextVNode)(` ✕ `,-1)]]),_:1},8,[`onClick`])]))),128))])]),_:1})):(0,n.createCommentVNode)(`v-if`,!0)])}}});var fe=e.t(de,[[`__scopeId`,`data-v-29942590`]]);const pe={key:0,class:`vp-quiz-overlay`},me={class:`vp-quiz-card`},he={class:`vp-quiz-header`},ge={class:`vp-quiz-type-tag`},_e={class:`vp-quiz-title`},ve={class:`vp-quiz-options`},ye={class:`vp-quiz-actions`},be=(0,n.defineComponent)({__name:`QuizOverlay`,props:(0,n.mergeModels)({quiz:{},showResult:{type:Boolean,default:!1},isCorrect:{type:Boolean,default:!1}},{answer:{default:``},answerModifiers:{}}),emits:(0,n.mergeModels)([`submit`,`retry`,`close`],[`update:answer`]),setup(e){let t=e,i=(0,n.ref)(``),a=(0,n.ref)([]),o=(0,n.useModel)(e,`answer`),s=(0,n.computed)(()=>({single:`单选题`,multiple:`多选题`,judge:`判断题`})[t.quiz?.type??`single`]??`单选题`),c=(0,n.computed)(()=>t.quiz?.type===`multiple`?a.value.length>0:i.value!==``);return(0,n.watch)(i,e=>{t.quiz?.type!==`multiple`&&(o.value=e)}),(0,n.watch)(a,e=>{t.quiz?.type===`multiple`&&(o.value=[...e])}),(0,n.watch)(()=>t.quiz?.id,()=>{i.value=``,a.value=[]}),(t,o)=>{let l=r.NCheckbox,u=r.NCheckboxGroup,d=r.NRadio,f=r.NRadioGroup,p=r.NButton;return(0,n.openBlock)(),(0,n.createBlock)(n.Transition,{name:`vp-quiz-fade`},{default:(0,n.withCtx)(()=>[e.quiz?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,pe,[(0,n.createElementVNode)(`div`,me,[(0,n.createCommentVNode)(` 标题 `),(0,n.createElementVNode)(`div`,he,[(0,n.createElementVNode)(`span`,ge,(0,n.toDisplayString)(s.value),1),(0,n.createElementVNode)(`h3`,_e,(0,n.toDisplayString)(e.quiz.title),1)]),(0,n.createCommentVNode)(` 选项 `),(0,n.createElementVNode)(`div`,ve,[e.quiz.type===`multiple`?((0,n.openBlock)(),(0,n.createBlock)(u,{key:0,value:a.value,"onUpdate:value":o[0]||=e=>a.value=e,disabled:e.showResult},{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.quiz.options,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.key,class:`vp-quiz-option`},[(0,n.createVNode)(l,{value:e.key,label:`${e.key}. ${e.label}`},null,8,[`value`,`label`])]))),128))]),_:1},8,[`value`,`disabled`])):((0,n.openBlock)(),(0,n.createBlock)(f,{key:1,value:i.value,"onUpdate:value":o[1]||=e=>i.value=e,disabled:e.showResult},{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.quiz.options,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.key,class:`vp-quiz-option`},[(0,n.createVNode)(d,{value:e.key,label:`${e.key}. ${e.label}`},null,8,[`value`,`label`])]))),128))]),_:1},8,[`value`,`disabled`]))]),(0,n.createCommentVNode)(` 结果反馈 `),e.showResult?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`vp-quiz-result`,e.isCorrect?`is-correct`:`is-wrong`])},(0,n.toDisplayString)(e.isCorrect?`✓ 回答正确!`:`✗ 回答错误,请重试`),3)):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 操作按钮 `),(0,n.createElementVNode)(`div`,ye,[e.showResult?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[!e.isCorrect&&e.quiz.required?((0,n.openBlock)(),(0,n.createBlock)(p,{key:0,type:`warning`,onClick:o[3]||=e=>t.$emit(`retry`)},{default:(0,n.withCtx)(()=>[...o[6]||=[(0,n.createTextVNode)(` 重新作答 `,-1)]]),_:1})):(0,n.createCommentVNode)(`v-if`,!0),e.isCorrect||!e.quiz.required?((0,n.openBlock)(),(0,n.createBlock)(p,{key:1,type:`primary`,onClick:o[4]||=e=>t.$emit(`close`)},{default:(0,n.withCtx)(()=>[...o[7]||=[(0,n.createTextVNode)(` 继续学习 `,-1)]]),_:1})):(0,n.createCommentVNode)(`v-if`,!0)],64)):((0,n.openBlock)(),(0,n.createBlock)(p,{key:0,type:`primary`,disabled:!c.value,onClick:o[2]||=e=>t.$emit(`submit`)},{default:(0,n.withCtx)(()=>[...o[5]||=[(0,n.createTextVNode)(` 提交答案 `,-1)]]),_:1},8,[`disabled`]))])])])):(0,n.createCommentVNode)(`v-if`,!0)]),_:1})}}});var xe=e.t(be,[[`__scopeId`,`data-v-1132a37b`]]);const $=(0,n.defineComponent)({__name:`WatermarkOverlay`,props:{visible:{type:Boolean,default:!0},text:{default:``},fontSize:{default:h.fontSize},color:{default:h.color},rotate:{default:h.rotate},gap:{default:h.gap}},setup(e){let t=e,r=(0,n.computed)(()=>{let e=t.gap*t.gap;return Math.ceil(2073600/e)}),i=(0,n.computed)(()=>({position:`absolute`,inset:0,overflow:`hidden`,pointerEvents:`none`,zIndex:50,display:`flex`,flexWrap:`wrap`,alignContent:`flex-start`,gap:`${t.gap}px`,padding:`${t.gap/2}px`})),a=(0,n.computed)(()=>({fontSize:`${t.fontSize}px`,color:t.color,transform:`rotate(${t.rotate}deg)`,userSelect:`none`,whiteSpace:`nowrap`,lineHeight:1}));return(t,o)=>e.visible&&e.text?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`vp-watermark`,style:(0,n.normalizeStyle)(i.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(r.value,t=>((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:t,class:`vp-watermark-item`,style:(0,n.normalizeStyle)(a.value)},(0,n.toDisplayString)(e.text),5))),128))],4)):(0,n.createCommentVNode)(`v-if`,!0)}});var Se=e.t($,[[`__scopeId`,`data-v-9a051cb4`]]);const Ce=(0,n.defineComponent)({name:`VideoPlayerRuntime`,__name:`VideoPlayerRuntime`,props:{url:{},sourceType:{},width:{},height:{},poster:{},fluid:{type:Boolean},autoplay:{type:Boolean},autoplayMuted:{type:Boolean},loop:{type:Boolean},volume:{},startTime:{},playbackRates:{},defaultPlaybackRate:{},pip:{type:Boolean},fullscreen:{type:Boolean},cssFullscreen:{type:Boolean},miniPlayer:{type:Boolean},screenshot:{type:Boolean},keyboard:{type:Boolean},lang:{},qualityList:{},defaultQuality:{},chapters:{},subtitles:{},quizzes:{},bookmarks:{},thumbnail:{},onProgress:{type:Function},antiCheat:{},onAnalytics:{type:Function},playerOptions:{}},emits:[`ready`,`stateChange`,`timeUpdate`,`ended`,`error`,`qualityChange`,`rateChange`,`fullscreenChange`,`bookmarkChange`,`quizAnswer`,`chapterChange`,`progressUpdate`],setup(e,{expose:t,emit:r}){let i=e,a=r,o=_(i),{containerRef:s,playerRef:c,playerState:l,currentTime:u,duration:d,isFullscreen:f}=o,p=(0,n.ref)(null),h=v(c),g=(0,n.toRef)(i,`url`),y=x(c,u,d,g,e=>i.onProgress?.(e),{get heartbeatInterval(){return i.antiCheat?.heartbeatInterval},get onHeartbeat(){return i.antiCheat?.onHeartbeat}}),b=C(c,()=>i.qualityList),S=(0,n.computed)(()=>i.chapters??[]),D=w(S,u,d,h.seek),O=T(g,u,h.seek,()=>i.bookmarks),k=E(c,u,()=>i.antiCheat),A=j(c,()=>i.subtitles,u),I=M(c,u,(0,n.computed)(()=>i.quizzes??[])),L=N(p,(0,n.computed)(()=>i.miniPlayer??!1)),R=P(c,p,{get enabled(){return i.keyboard!==!1},onToggleFullscreen:()=>{c.value?.getFullscreen?.()}}),z=null,B=!1;(0,n.watch)([c,()=>i.onAnalytics],([e,t])=>{z?.(),z=null,!(B||!e||!t)&&(z=F(e,e=>i.onAnalytics?.(e)).destroy)},{flush:`post`});function V(e){O.addBookmark(e),a(`bookmarkChange`,O.bookmarks.value)}function H(){let e=I.submitAnswer(),t=I.activeQuiz.value;t&&a(`quizAnswer`,t.id,I.selectedAnswer.value,e)}function U(){I.closeQuiz()}return(0,n.watch)(l,e=>{a(`stateChange`,e)}),(0,n.watch)(f,e=>{a(`fullscreenChange`,e)}),(0,n.watch)(()=>D.currentChapter.value,e=>{e&&a(`chapterChange`,e)}),(0,n.onMounted)(async()=>{if(o.containerRef.value=s.value,await(0,n.nextTick)(),B)return;try{await o.initPlayer()}catch(e){B||a(`error`,e instanceof Error?e:Error(String(e)));return}if(B)return;let e=c.value;if(!e)return;b.bindEvents(e),k.bindEvents(e),A.initSubtitles(),R.startListening(),L.initObserver();let t=y.restoreProgress();t>0&&i.startTime===void 0&&(e.currentTime=t,u.value=t);let r=()=>!B&&c.value===e;e.on(m.PLAY,()=>{r()&&y.onPlay()}),e.on(m.PAUSE,()=>{r()&&y.onPause()}),e.on(m.TIME_UPDATE,()=>{r()&&(y.onTimeUpdate(),a(`timeUpdate`,u.value,d.value),a(`progressUpdate`,y.getProgressData()))}),e.on(m.ENDED,()=>{r()&&(a(`ended`),k.markAsWatched())}),e.on(m.ERROR,()=>{r()&&a(`error`,Error(`播放器错误`))}),e.on(m.READY,()=>{r()&&a(`ready`)}),e.on(m.AFTER_DEFINITION_CHANGE,e=>{r()&&a(`qualityChange`,typeof e.to==`string`?e.to:e.to.definition)}),e.on(m.RATE_CHANGE,()=>{r()&&a(`rateChange`,e.playbackRate)})}),(0,n.onBeforeUnmount)(()=>{B=!0,z?.(),R.stopListening(),L.destroyObserver()}),t({play:h.play,pause:h.pause,seek:h.seek,setPlaybackRate:h.setPlaybackRate,setVolume:h.setVolume,switchQuality:b.switchQuality,getProgressData:y.getProgressData,destroy:()=>{y.stopTracking(),A.resetSubtitles(),z?.(),z=null,R.stopListening(),L.destroyObserver(),o.destroyPlayer()},getPlayerInstance:()=>c.value}),(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`wrapperRef`,ref:p,class:(0,n.normalizeClass)([`c-video-player`,{"is-mini":(0,n.unref)(L).isMiniMode.value,"is-fullscreen":(0,n.unref)(f)}]),tabindex:`0`},[(0,n.createCommentVNode)(` 播放器容器 `),(0,n.createElementVNode)(`div`,{ref_key:`containerRef`,ref:s,class:`c-video-player__container`},null,512),(0,n.createCommentVNode)(` 动态水印 `),(0,n.createVNode)(Se,{visible:(0,n.unref)(k).showWatermark.value,text:(0,n.unref)(k).watermarkText.value},null,8,[`visible`,`text`]),(0,n.createCommentVNode)(` 字幕渲染层 `),(0,n.createVNode)(K,{text:(0,n.unref)(A).currentText.value,tracks:(0,n.unref)(A).subtitleList.value,"active-language":(0,n.unref)(A).activeLanguage.value,onSwitch:(0,n.unref)(A).switchSubtitle,onClose:(0,n.unref)(A).closeSubtitle},null,8,[`text`,`tracks`,`active-language`,`onSwitch`,`onClose`]),(0,n.createCommentVNode)(` 测验弹窗 `),i.quizzes?.length?((0,n.openBlock)(),(0,n.createBlock)(xe,{key:0,answer:(0,n.unref)(I).selectedAnswer.value,"onUpdate:answer":t[0]||=e=>(0,n.unref)(I).selectedAnswer.value=e,quiz:(0,n.unref)(I).activeQuiz.value,"show-result":(0,n.unref)(I).showResult.value,"is-correct":(0,n.unref)(I).lastAnswerCorrect.value,onSubmit:H,onRetry:t[1]||=e=>(0,n.unref)(I).retryQuiz(),onClose:U},null,8,[`answer`,`quiz`,`show-result`,`is-correct`])):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 扩展控制栏(xgplayer 自带控制栏外的扩展) `),(0,n.createVNode)(ee,{visible:!0},{left:(0,n.withCtx)(()=>[(0,n.createCommentVNode)(` 章节标记 `),i.chapters?.length?((0,n.openBlock)(),(0,n.createBlock)(oe,{key:0,chapters:S.value,"current-chapter":(0,n.unref)(D).currentChapter.value,"current-index":(0,n.unref)(D).currentChapterIndex.value,onGoTo:(0,n.unref)(D).goToChapter},null,8,[`chapters`,`current-chapter`,`current-index`,`onGoTo`])):(0,n.createCommentVNode)(`v-if`,!0)]),right:(0,n.withCtx)(()=>[(0,n.createCommentVNode)(` 书签面板 `),(0,n.createVNode)(fe,{bookmarks:(0,n.unref)(O).bookmarks.value,onAdd:V,onRemove:(0,n.unref)(O).removeBookmark,onGoTo:(0,n.unref)(O).goToBookmark},null,8,[`bookmarks`,`onRemove`,`onGoTo`])]),_:1}),(0,n.createCommentVNode)(` 小窗关闭按钮 `),(0,n.unref)(L).isMiniMode.value?((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{key:1,type:`button`,class:`c-video-player__mini-close`,"aria-label":`关闭小窗播放`,onClick:t[2]||=e=>(0,n.unref)(L).closeMiniPlayer()},` ✕ `)):(0,n.createCommentVNode)(`v-if`,!0),(0,n.createCommentVNode)(` 小窗点击回原位 `),(0,n.unref)(L).isMiniMode.value?((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{key:2,type:`button`,class:`c-video-player__mini-back`,onClick:t[3]||=e=>(0,n.unref)(L).scrollToPlayer()},` 回到原位 `)):(0,n.createCommentVNode)(`v-if`,!0)],2))}});var we=e.t(Ce,[[`__scopeId`,`data-v-11b6a582`]]);const Te=(0,n.defineComponent)({name:`C_VideoPlayer`,__name:`index`,props:{url:{},sourceType:{},width:{},height:{},poster:{},fluid:{type:Boolean},autoplay:{type:Boolean},autoplayMuted:{type:Boolean},loop:{type:Boolean},volume:{},startTime:{},playbackRates:{},defaultPlaybackRate:{},pip:{type:Boolean},fullscreen:{type:Boolean},cssFullscreen:{type:Boolean},miniPlayer:{type:Boolean},screenshot:{type:Boolean},keyboard:{type:Boolean},lang:{},qualityList:{},defaultQuality:{},chapters:{},subtitles:{},quizzes:{},bookmarks:{},thumbnail:{},onProgress:{type:Function},antiCheat:{},onAnalytics:{type:Function},playerOptions:{}},emits:[`ready`,`stateChange`,`timeUpdate`,`ended`,`error`,`qualityChange`,`rateChange`,`fullscreenChange`,`bookmarkChange`,`quizAnswer`,`chapterChange`,`progressUpdate`],setup(e,{expose:t,emit:r}){let i=e,a=r,o=(0,n.ref)(),s=(0,n.ref)(!0),c=(0,n.computed)(()=>JSON.stringify([i.url,i.sourceType]));return(0,n.watch)(c,()=>{s.value=!0},{flush:`sync`}),t({play:()=>o.value?.play(),pause:()=>o.value?.pause(),seek:e=>o.value?.seek(e),setPlaybackRate:e=>o.value?.setPlaybackRate(e),setVolume:e=>o.value?.setVolume(e),switchQuality:e=>o.value?.switchQuality(e),getProgressData:()=>o.value?.getProgressData()??{currentTime:0,duration:0,watchedDuration:0,completionPercent:0,updatedAt:Date.now()},destroy:()=>{o.value?.destroy(),s.value=!1},getPlayerInstance:()=>o.value?.getPlayerInstance()??null}),(e,t)=>i.url&&s.value?((0,n.openBlock)(),(0,n.createBlock)(we,(0,n.mergeProps)({key:c.value,ref_key:`runtime`,ref:o},i,{onReady:t[0]||=e=>a(`ready`),onStateChange:t[1]||=e=>a(`stateChange`,e),onTimeUpdate:t[2]||=(e,t)=>a(`timeUpdate`,e,t),onEnded:t[3]||=e=>a(`ended`),onError:t[4]||=e=>a(`error`,e),onQualityChange:t[5]||=e=>a(`qualityChange`,e),onRateChange:t[6]||=e=>a(`rateChange`,e),onFullscreenChange:t[7]||=e=>a(`fullscreenChange`,e),onBookmarkChange:t[8]||=e=>a(`bookmarkChange`,e),onQuizAnswer:t[9]||=(e,t,n)=>a(`quizAnswer`,e,t,n),onChapterChange:t[10]||=e=>a(`chapterChange`,e),onProgressUpdate:t[11]||=e=>a(`progressUpdate`,e)}),null,16)):(0,n.createCommentVNode)(`v-if`,!0)}});Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return 1}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return d}});