@scienjoy/sj-ai-plus 1.0.0

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 (312) hide show
  1. package/README.md +18 -0
  2. package/package.json +60 -0
  3. package/ui/es/_virtual/_plugin-vue_export-helper.ts +9 -0
  4. package/ui/es/node_modules/.pnpm/@element-plus_icons-vue@2.3.2_vue@3.5.27_typescript@5.9.3_/node_modules/@element-plus/icons-vue/dist/index.ts +79 -0
  5. package/ui/es/node_modules/.pnpm/@vue_shared@3.5.27/node_modules/@vue/shared/dist/shared.esm-bundler.ts +10 -0
  6. package/ui/es/node_modules/.pnpm/@vueuse_core@10.11.1_vue@3.5.27_typescript@5.9.3_/node_modules/@vueuse/core/index.ts +79 -0
  7. package/ui/es/node_modules/.pnpm/@vueuse_shared@10.11.1_vue@3.5.27_typescript@5.9.3_/node_modules/@vueuse/shared/index.ts +41 -0
  8. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/index.ts +38 -0
  9. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/adapters.ts +65 -0
  10. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/fetch.ts +169 -0
  11. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/xhr.ts +72 -0
  12. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/axios.ts +46 -0
  13. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CancelToken.ts +77 -0
  14. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CanceledError.ts +11 -0
  15. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/isCancel.ts +6 -0
  16. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/Axios.ts +136 -0
  17. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosError.ts +56 -0
  18. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosHeaders.ts +181 -0
  19. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/InterceptorManager.ts +58 -0
  20. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/buildFullPath.ts +9 -0
  21. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/dispatchRequest.ts +31 -0
  22. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/mergeConfig.ts +70 -0
  23. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/settle.ts +14 -0
  24. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/transformData.ts +13 -0
  25. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/index.ts +89 -0
  26. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/transitional.ts +8 -0
  27. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/env/data.ts +4 -0
  28. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/AxiosURLSearchParams.ts +33 -0
  29. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/HttpStatusCode.ts +77 -0
  30. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/bind.ts +8 -0
  31. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/buildURL.ts +23 -0
  32. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/combineURLs.ts +6 -0
  33. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/composeSignals.ts +30 -0
  34. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/cookies.ts +34 -0
  35. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/formDataToJSON.ts +31 -0
  36. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAbsoluteURL.ts +6 -0
  37. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAxiosError.ts +7 -0
  38. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isURLSameOrigin.ts +8 -0
  39. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/null.ts +4 -0
  40. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseHeaders.ts +30 -0
  41. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseProtocol.ts +7 -0
  42. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/progressEventReducer.ts +35 -0
  43. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/resolveConfig.ts +33 -0
  44. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/speedometer.ts +19 -0
  45. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/spread.ts +8 -0
  46. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/throttle.ts +15 -0
  47. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toFormData.ts +85 -0
  48. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toURLEncodedForm.ts +14 -0
  49. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/trackStream.ts +63 -0
  50. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/validator.ts +54 -0
  51. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/Blob.ts +4 -0
  52. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/FormData.ts +4 -0
  53. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/URLSearchParams.ts +5 -0
  54. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/index.ts +15 -0
  55. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/common/utils.ts +9 -0
  56. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/index.ts +9 -0
  57. package/ui/es/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/utils.ts +237 -0
  58. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/_virtual/plugin-vue_export-helper.ts +9 -0
  59. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/index.ts +7 -0
  60. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/src/badge.ts +36 -0
  61. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/src/badge2.ts +73 -0
  62. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/config-provider-props.ts +44 -0
  63. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/config-provider.ts +24 -0
  64. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/constants.ts +4 -0
  65. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/hooks/use-global-config.ts +82 -0
  66. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/index.ts +7 -0
  67. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/src/icon.ts +12 -0
  68. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/src/icon2.ts +35 -0
  69. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/index.ts +7 -0
  70. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/instance.ts +18 -0
  71. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/message.ts +112 -0
  72. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/message2.ts +148 -0
  73. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/method.ts +118 -0
  74. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/constants/aria.ts +20 -0
  75. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/constants/size.ts +4 -0
  76. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-empty-values/index.ts +20 -0
  77. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-locale/index.ts +27 -0
  78. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-namespace/index.ts +44 -0
  79. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-size/index.ts +12 -0
  80. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-z-index/index.ts +27 -0
  81. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/locale/lang/en.ts +197 -0
  82. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/browser.ts +6 -0
  83. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/dom/event.ts +19 -0
  84. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/dom/style.ts +16 -0
  85. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/error.ts +15 -0
  86. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/objects.ts +4 -0
  87. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/types.ts +13 -0
  88. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/typescript.ts +4 -0
  89. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/icon.ts +20 -0
  90. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/install.ts +10 -0
  91. package/ui/es/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/props/runtime.ts +37 -0
  92. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Hash.ts +20 -0
  93. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_ListCache.ts +20 -0
  94. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Map.ts +6 -0
  95. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_MapCache.ts +20 -0
  96. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Symbol.ts +5 -0
  97. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_arrayMap.ts +8 -0
  98. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_assocIndexOf.ts +10 -0
  99. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseGet.ts +11 -0
  100. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseGetTag.ts +10 -0
  101. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseIsNative.ts +16 -0
  102. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseToString.ts +18 -0
  103. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_castPath.ts +10 -0
  104. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_coreJsData.ts +5 -0
  105. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_freeGlobal.ts +4 -0
  106. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getMapData.ts +8 -0
  107. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getNative.ts +9 -0
  108. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getRawTag.ts +15 -0
  109. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getValue.ts +6 -0
  110. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashClear.ts +7 -0
  111. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashDelete.ts +7 -0
  112. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashGet.ts +13 -0
  113. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashHas.ts +9 -0
  114. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashSet.ts +9 -0
  115. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isKey.ts +12 -0
  116. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isKeyable.ts +7 -0
  117. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isMasked.ts +11 -0
  118. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheClear.ts +6 -0
  119. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheDelete.ts +12 -0
  120. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheGet.ts +8 -0
  121. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheHas.ts +7 -0
  122. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheSet.ts +8 -0
  123. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheClear.ts +13 -0
  124. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheDelete.ts +8 -0
  125. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheGet.ts +7 -0
  126. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheHas.ts +7 -0
  127. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheSet.ts +8 -0
  128. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_memoizeCapped.ts +11 -0
  129. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_nativeCreate.ts +5 -0
  130. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_objectToString.ts +7 -0
  131. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_root.ts +5 -0
  132. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_stringToPath.ts +10 -0
  133. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_toKey.ts +10 -0
  134. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_toSource.ts +17 -0
  135. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/eq.ts +6 -0
  136. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/fromPairs.ts +10 -0
  137. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/get.ts +8 -0
  138. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isArray.ts +4 -0
  139. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isFunction.ts +12 -0
  140. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isObject.ts +7 -0
  141. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isObjectLike.ts +6 -0
  142. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isSymbol.ts +9 -0
  143. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/memoize.ts +18 -0
  144. package/ui/es/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/toString.ts +7 -0
  145. package/ui/es/packages/components/index.ts +9 -0
  146. package/ui/es/packages/components/src/index.ts +8 -0
  147. package/ui/es/packages/components/src/sjDigitalHumanAssistant/index.ts +6 -0
  148. package/ui/es/packages/components/src/sjDigitalHumanAssistant/src/index.vue.ts +7 -0
  149. package/ui/es/packages/components/src/sjDigitalHumanAssistant/src/index.vue2.ts +480 -0
  150. package/ui/es/packages/components/src/utils/api.ts +12 -0
  151. package/ui/es/packages/components/src/utils/axios.ts +64 -0
  152. package/ui/es/packages/components/src/utils/status.ts +45 -0
  153. package/ui/es/packages/components/src/utils/utils.ts +425 -0
  154. package/ui/es/packages/components/src/utils/videoBackgroundRemoval.ts +275 -0
  155. package/ui/es/packages/components/src/utils/withInstall.ts +7 -0
  156. package/ui/es/sj-ai-plus.css +1 -0
  157. package/ui/es/vite.svg +1 -0
  158. package/ui/lib/_virtual/_plugin-vue_export-helper.ts +1 -0
  159. package/ui/lib/node_modules/.pnpm/@element-plus_icons-vue@2.3.2_vue@3.5.27_typescript@5.9.3_/node_modules/@element-plus/icons-vue/dist/index.ts +1 -0
  160. package/ui/lib/node_modules/.pnpm/@vue_shared@3.5.27/node_modules/@vue/shared/dist/shared.esm-bundler.ts +1 -0
  161. package/ui/lib/node_modules/.pnpm/@vueuse_core@10.11.1_vue@3.5.27_typescript@5.9.3_/node_modules/@vueuse/core/index.ts +1 -0
  162. package/ui/lib/node_modules/.pnpm/@vueuse_shared@10.11.1_vue@3.5.27_typescript@5.9.3_/node_modules/@vueuse/shared/index.ts +1 -0
  163. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/index.ts +1 -0
  164. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/adapters.ts +3 -0
  165. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/fetch.ts +1 -0
  166. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/xhr.ts +1 -0
  167. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/axios.ts +1 -0
  168. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CancelToken.ts +1 -0
  169. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CanceledError.ts +1 -0
  170. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/isCancel.ts +1 -0
  171. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/Axios.ts +2 -0
  172. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosError.ts +1 -0
  173. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosHeaders.ts +2 -0
  174. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/InterceptorManager.ts +1 -0
  175. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/buildFullPath.ts +1 -0
  176. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/dispatchRequest.ts +1 -0
  177. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/mergeConfig.ts +1 -0
  178. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/settle.ts +1 -0
  179. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/transformData.ts +1 -0
  180. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/index.ts +1 -0
  181. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/transitional.ts +1 -0
  182. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/env/data.ts +1 -0
  183. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/AxiosURLSearchParams.ts +1 -0
  184. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/HttpStatusCode.ts +1 -0
  185. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/bind.ts +1 -0
  186. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/buildURL.ts +1 -0
  187. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/combineURLs.ts +1 -0
  188. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/composeSignals.ts +1 -0
  189. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/cookies.ts +1 -0
  190. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/formDataToJSON.ts +1 -0
  191. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAbsoluteURL.ts +1 -0
  192. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAxiosError.ts +1 -0
  193. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isURLSameOrigin.ts +1 -0
  194. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/null.ts +1 -0
  195. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseHeaders.ts +2 -0
  196. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseProtocol.ts +1 -0
  197. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/progressEventReducer.ts +1 -0
  198. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/resolveConfig.ts +1 -0
  199. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/speedometer.ts +1 -0
  200. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/spread.ts +1 -0
  201. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/throttle.ts +1 -0
  202. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toFormData.ts +1 -0
  203. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toURLEncodedForm.ts +1 -0
  204. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/trackStream.ts +1 -0
  205. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/validator.ts +1 -0
  206. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/Blob.ts +1 -0
  207. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/FormData.ts +1 -0
  208. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/URLSearchParams.ts +1 -0
  209. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/index.ts +1 -0
  210. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/common/utils.ts +1 -0
  211. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/index.ts +1 -0
  212. package/ui/lib/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/utils.ts +1 -0
  213. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/_virtual/plugin-vue_export-helper.ts +1 -0
  214. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/index.ts +1 -0
  215. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/src/badge.ts +1 -0
  216. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/badge/src/badge2.ts +1 -0
  217. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/config-provider-props.ts +1 -0
  218. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/config-provider.ts +1 -0
  219. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/constants.ts +1 -0
  220. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/config-provider/src/hooks/use-global-config.ts +1 -0
  221. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/index.ts +1 -0
  222. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/src/icon.ts +1 -0
  223. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/icon/src/icon2.ts +1 -0
  224. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/index.ts +1 -0
  225. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/instance.ts +1 -0
  226. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/message.ts +1 -0
  227. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/message2.ts +1 -0
  228. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/src/method.ts +1 -0
  229. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/constants/aria.ts +1 -0
  230. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/constants/size.ts +1 -0
  231. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-empty-values/index.ts +1 -0
  232. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-locale/index.ts +1 -0
  233. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-namespace/index.ts +1 -0
  234. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-size/index.ts +1 -0
  235. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/hooks/use-z-index/index.ts +2 -0
  236. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/locale/lang/en.ts +1 -0
  237. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/browser.ts +1 -0
  238. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/dom/event.ts +1 -0
  239. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/dom/style.ts +1 -0
  240. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/error.ts +1 -0
  241. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/objects.ts +1 -0
  242. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/types.ts +1 -0
  243. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/typescript.ts +1 -0
  244. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/icon.ts +1 -0
  245. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/install.ts +1 -0
  246. package/ui/lib/node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/utils/vue/props/runtime.ts +1 -0
  247. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Hash.ts +1 -0
  248. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_ListCache.ts +1 -0
  249. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Map.ts +1 -0
  250. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_MapCache.ts +1 -0
  251. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_Symbol.ts +1 -0
  252. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_arrayMap.ts +1 -0
  253. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_assocIndexOf.ts +1 -0
  254. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseGet.ts +1 -0
  255. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseGetTag.ts +1 -0
  256. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseIsNative.ts +1 -0
  257. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseToString.ts +1 -0
  258. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_castPath.ts +1 -0
  259. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_coreJsData.ts +1 -0
  260. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_freeGlobal.ts +1 -0
  261. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getMapData.ts +1 -0
  262. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getNative.ts +1 -0
  263. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getRawTag.ts +1 -0
  264. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_getValue.ts +1 -0
  265. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashClear.ts +1 -0
  266. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashDelete.ts +1 -0
  267. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashGet.ts +1 -0
  268. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashHas.ts +1 -0
  269. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_hashSet.ts +1 -0
  270. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isKey.ts +1 -0
  271. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isKeyable.ts +1 -0
  272. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isMasked.ts +1 -0
  273. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheClear.ts +1 -0
  274. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheDelete.ts +1 -0
  275. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheGet.ts +1 -0
  276. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheHas.ts +1 -0
  277. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_listCacheSet.ts +1 -0
  278. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheClear.ts +1 -0
  279. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheDelete.ts +1 -0
  280. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheGet.ts +1 -0
  281. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheHas.ts +1 -0
  282. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_mapCacheSet.ts +1 -0
  283. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_memoizeCapped.ts +1 -0
  284. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_nativeCreate.ts +1 -0
  285. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_objectToString.ts +1 -0
  286. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_root.ts +1 -0
  287. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_stringToPath.ts +1 -0
  288. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_toKey.ts +1 -0
  289. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_toSource.ts +1 -0
  290. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/eq.ts +1 -0
  291. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/fromPairs.ts +1 -0
  292. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/get.ts +1 -0
  293. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isArray.ts +1 -0
  294. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isFunction.ts +1 -0
  295. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isObject.ts +1 -0
  296. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isObjectLike.ts +1 -0
  297. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isSymbol.ts +1 -0
  298. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/memoize.ts +1 -0
  299. package/ui/lib/node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/toString.ts +1 -0
  300. package/ui/lib/packages/components/index.ts +1 -0
  301. package/ui/lib/packages/components/src/index.ts +1 -0
  302. package/ui/lib/packages/components/src/sjDigitalHumanAssistant/index.ts +1 -0
  303. package/ui/lib/packages/components/src/sjDigitalHumanAssistant/src/index.vue.ts +1 -0
  304. package/ui/lib/packages/components/src/sjDigitalHumanAssistant/src/index.vue2.ts +1 -0
  305. package/ui/lib/packages/components/src/utils/api.ts +1 -0
  306. package/ui/lib/packages/components/src/utils/axios.ts +1 -0
  307. package/ui/lib/packages/components/src/utils/status.ts +1 -0
  308. package/ui/lib/packages/components/src/utils/utils.ts +1 -0
  309. package/ui/lib/packages/components/src/utils/videoBackgroundRemoval.ts +92 -0
  310. package/ui/lib/packages/components/src/utils/withInstall.ts +1 -0
  311. package/ui/lib/sj-ai-plus.css +1 -0
  312. package/ui/lib/vite.svg +1 -0
@@ -0,0 +1,425 @@
1
+ /* empty css */
2
+ /* empty css */
3
+ /* empty css */
4
+ import { ElMessage as b } from "../../../../node_modules/.pnpm/element-plus@2.13.1_vue@3.5.27_typescript@5.9.3_/node_modules/element-plus/es/components/message/index.ts";
5
+ const a = {
6
+ /**
7
+ * @method funcElMessageShowCtrl
8
+ * @param {String} message - 提示内容
9
+ * @param {String} type - 提示内容类型 'success' | 'warning'(默认值) | 'info' | 'error'
10
+ * @param {Number} duration - 显示时间,单位为毫秒(设为 0 则不会自动关闭,默认值为 2000)
11
+ * @param {Boolean} showClose - 是否显示关闭按钮(默认为 false 不显示)
12
+ * @returns 无
13
+ * @desc 消息提示
14
+ */
15
+ funcElMessageShowCtrl: (e, t = "warning", n = 2e3, o = !1) => {
16
+ e && b({
17
+ message: e,
18
+ type: t,
19
+ duration: n,
20
+ showClose: o
21
+ });
22
+ },
23
+ funcImageUrlReplace: (e, t, n, o = !1) => {
24
+ if (!e)
25
+ return "";
26
+ try {
27
+ const r = /\/role\//g, f = "/role/web/", i = /\/level1\//g, l = "/level1/web/", u = /\/level\//g, s = "/level/web/", c = /\/grade\//g, g = "/grade/web/", w = /\/svip\//g, y = "/svip/web/", S = /\/star\/star_/g;
28
+ if (e && (e = e.replace(r, f).replace(i, l).replace(u, s).replace(c, g).replace(w, y).replace(S, "/star/web/star_")), o && e && t && n && n.includes(Number(t))) {
29
+ const d = "wealth_lv", p = e.lastIndexOf(d);
30
+ if (p > 0) {
31
+ const m = e.substring(p + d.length), h = Number(m);
32
+ Number.isFinite(h) && h >= 31 && (e = e.substring(0, p + d.length) + m.replace(/.png/, ".gif"));
33
+ }
34
+ }
35
+ } catch (r) {
36
+ console.error(r);
37
+ }
38
+ return e;
39
+ },
40
+ // 新消息中图片模板单独处理(勋章的 value1 是数组)
41
+ funcMsgImageUrlReplace: (e, t = !1) => {
42
+ if (!e)
43
+ return "";
44
+ try {
45
+ e.indexOf("/medal/") > 0 ? t ? e = e.replace(/\.png/g, ".png@!style_20") : e = e.replace(/\.png/g, ".png@!style_28") : e.indexOf("/grade/") > 0 ? e = e.replace(/\.png/g, ".png@!style_20") : e.indexOf("/ward/") > 0 ? e = e.replace(/\.png/g, ".png@!style_15") : e.indexOf("/prop/") > 0 ? e = e.replace(/\.png/g, ".png@!style_30") : e.indexOf("/gifts/") > 0 && (e = e.replace(/\.png/g, ".png@!style_30"));
46
+ } catch (n) {
47
+ console.error(n);
48
+ }
49
+ return e;
50
+ },
51
+ /**
52
+ * @method funcTrim
53
+ * @param {String} str - 要去除空格的字符串
54
+ * @returns {String} 已去除空格的字符串
55
+ * @desc 去除字符串首尾空格
56
+ */
57
+ funcTrim: (e) => (e || (e = ""), e = e.toString(), String(e).replace(/^\s+|\s+$/gm, "")),
58
+ /**
59
+ * @method funcInsertContentIntoString
60
+ * @param {String} insertString - 要插入内容的字符串
61
+ * @param {Number} insertIndex - 要插入的位置
62
+ * @param {String} insertContent - 要插入的内容
63
+ * @returns {String} 已插入内容的字符串
64
+ * @desc 向字符串中插入内容
65
+ */
66
+ funcInsertContentIntoString: function(e, t, n) {
67
+ return e && n && (e = e.substring(0, t) + n + e.substr(t)), e;
68
+ },
69
+ /**
70
+ * @method funcIsLastStr
71
+ * @param {String} str - 要判断的字符串
72
+ * @param {String} targetStr - 目标字符串
73
+ * @returns {Boolean} 字符串是否以特定字符串结尾
74
+ * @desc 判断字符串是否以特定字符串结尾(不区分大小写)
75
+ */
76
+ funcIsLastStr: function(e, t) {
77
+ if (!e || !t)
78
+ return !1;
79
+ const n = e.toLowerCase(), o = t.toLowerCase(), r = n.lastIndexOf(o);
80
+ return r !== -1 && r === e.length - t.length;
81
+ },
82
+ /**
83
+ * @method funcFilterOutStr
84
+ * @param {String} str - 要过滤内容的字符串
85
+ * @returns {String} 已过滤内容的字符串
86
+ * @desc 过滤字符串首尾"[]"字符
87
+ */
88
+ funcFilterOutStr: function(e) {
89
+ return e = e || "", e && /^\[[\s\S]*\]$/.test(e) && (e = e.substring(1, e.length - 1)), e;
90
+ },
91
+ /**
92
+ * @method funcIEVersionCheck
93
+ * @param 无
94
+ * @returns {Number || String} IE浏览器版本
95
+ * @desc 判断IE浏览器版本
96
+ */
97
+ funcIEVersionCheck: () => {
98
+ const e = navigator.userAgent;
99
+ if (e.includes("compatible") && e.includes("MSIE")) {
100
+ const n = parseFloat(RegExp.$1);
101
+ return n >= 7 && n <= 10 ? n : 6;
102
+ } else {
103
+ if (e.includes("Edge"))
104
+ return "edge";
105
+ if (e.includes("Trident") && e.includes("rv:11.0"))
106
+ return 11;
107
+ }
108
+ return -1;
109
+ },
110
+ /**
111
+ * @method funcIsArray
112
+ * @param {Object} obj - 要判断是否为数组的对象
113
+ * @returns {Boolean} 是否为数组
114
+ * @desc 判断是否为数组
115
+ */
116
+ funcIsArray: (e) => {
117
+ let t = !1;
118
+ return e instanceof Array || typeof e == "object" && e.constructor === Array ? t = !0 : typeof Array.isArray == "function" ? t = Array.isArray(e) : t = Object.prototype.toString.call(e) === "[object Array]", t;
119
+ },
120
+ /**
121
+ * @method funcArrayShuffle
122
+ * @param {Array} arr - 要打乱元素顺序的数组
123
+ * @returns {Array} 已打乱元素顺序的数组
124
+ * @desc 打乱数组元素顺序
125
+ */
126
+ funcArrayShuffle: (e) => {
127
+ if (!e || !a.funcIsArray(e))
128
+ return [];
129
+ const t = e.length;
130
+ for (let n = 0; n < t - 1; n++) {
131
+ const o = Math.floor(Math.random() * (t - n)), r = e[o];
132
+ e[o] = e[t - n - 1], e[t - n - 1] = r;
133
+ }
134
+ return e;
135
+ },
136
+ /**
137
+ * @method funcUrlParamAdd
138
+ * @param {String} url - 要添加参数的路径
139
+ * @param {String} paramKey - 要添加的参数名称
140
+ * @param {String} paramValue - 要添加的参数值
141
+ * @returns {String} 已添加参数的路径
142
+ * @desc 路径中添加参数
143
+ */
144
+ funcUrlParamAdd: (e, t, n) => {
145
+ if (!e || !t || !n)
146
+ return e;
147
+ if (!e.includes("?" + t + "=") && !e.includes("&" + t + "=")) {
148
+ let o = "?";
149
+ e.includes(o) && (o = "&"), e += o + t + "=" + n;
150
+ }
151
+ return e;
152
+ },
153
+ /**
154
+ * @method funcUrlHasParamJudge
155
+ * @param {String} url - 要判断的路径
156
+ * @param {String} param - 要判断的参数名称
157
+ * @returns {Boolean} 路径中是否有某个参数
158
+ * @desc 判断路径中是否有某个参数
159
+ */
160
+ funcUrlHasParamJudge: (e, t) => {
161
+ let n = !1;
162
+ return e && (e.includes("?" + t + "=") || e.includes("&" + t + "=")) && (n = !0), n;
163
+ },
164
+ /**
165
+ * @method funcGetUrlParamValue
166
+ * @param {String} url - 获取参数值的路径
167
+ * @param {String} param - 参数名称
168
+ * @returns {String} 参数值
169
+ * @desc 获取路径中某个参数的值
170
+ */
171
+ funcGetUrlParamValue: (e, t) => {
172
+ let n = "";
173
+ if (!e || !t)
174
+ return n;
175
+ const o = e.split("?");
176
+ if (o.length > 1) {
177
+ const r = o[1].split("&");
178
+ let f, i;
179
+ for (let l = 0; l < r.length; l++)
180
+ if (f = r[l], i = f.split("="), t === i[0]) {
181
+ n = i[1];
182
+ break;
183
+ }
184
+ }
185
+ return n;
186
+ },
187
+ /**
188
+ * @method funcMediaUrlModify
189
+ * @param {String} mediaUrl - 流地址
190
+ * @returns {String} 替换内容后的流地址
191
+ * @desc 视频流地址内容替换
192
+ */
193
+ funcMediaUrlModify: (e) => (e = e.replace("__", "&"), window.location.protocol === "https:" && e.includes("http:") && (e = e.replace("http:", "https:")), e),
194
+ /**
195
+ * @method funcPhoneNumCheck
196
+ * @param {String} phoneNum - 手机号
197
+ * @returns {Boolean} 手机号是否合法
198
+ * @desc 手机号有效性检查
199
+ */
200
+ funcPhoneNumCheck: (e) => !(!e || e.match(/^(0|86|17951)?(1[3|5|6|7|8|9][0-9]|14[57])[0-9]{8}$/) === null),
201
+ /**
202
+ * @method funcActivityPosterClick
203
+ * @param {String} posterOpenUrl - 海报链接
204
+ * @returns {Function} 点击海报弹框时的回调函数
205
+ * @desc 点击海报展示方式控制
206
+ */
207
+ funcActivityPosterClick: (e, t) => {
208
+ if (e)
209
+ if (a.funcUrlHasParamJudge(e, "isNew") && typeof t == "function")
210
+ t();
211
+ else if (a.funcUrlHasParamJudge(e, "isNoRefer")) {
212
+ const n = window.open();
213
+ n.opener = null, n.location = e;
214
+ } else
215
+ window.open(e, "_blank");
216
+ },
217
+ /**
218
+ * @method funcSpecialCharacterReplace
219
+ * @param {String} content - 要替换特殊符号的内容
220
+ * @returns {String} 替换掉特殊符号后的内容
221
+ * @desc 字符串中特殊符号替换(例如:解决昵称中有 <、> 等特殊符号的展示问题)
222
+ */
223
+ funcSpecialCharacterReplace: (e) => e ? e.replace(/[<>&"]/g, (t) => ({ "<": "&lt;", ">": "&gt;", "&": "&amp;", '"': "&quot;" })[t]) : "",
224
+ /**
225
+ * @method funcDeblockTimeFormat
226
+ * @param {Number | String} timestamp - 要格式化的时间戳
227
+ * @param {Number} type - 时间戳类型(1-精确到毫秒 | 2-精确到秒(需要 * 1000))
228
+ * @returns {String} 格式化后的字符串
229
+ * @desc 主播封号提示框时间格式化
230
+ */
231
+ funcDeblockTimeFormat: (e, t = 1) => {
232
+ const o = ((/* @__PURE__ */ new Date()).getTimezoneOffset() / 60 + 8) * 60 * 60;
233
+ e = Number(e), e = t === 1 ? e + o : e * 1e3 + o;
234
+ const r = new Date(e), f = r.getFullYear(), i = String(r.getMonth() + 1).padStart(2, "0"), l = String(r.getDate()).padStart(2, "0"), u = String(r.getHours()).padStart(2, "0"), s = String(r.getMinutes()).padStart(2, "0"), c = String(r.getSeconds()).padStart(2, "0");
235
+ return `${f} 年 ${i} 月 ${l} 日 ${u} 时 ${s} 分 ${c} 秒`;
236
+ },
237
+ /**
238
+ * @method funcWebsiteAccessModeIsCEFJudge
239
+ * @param 无
240
+ * @returns {Boolean} 是否为 CEF 开播
241
+ * @desc 判断是否为 CEF 开播
242
+ */
243
+ funcWebsiteAccessModeIsCEFJudge: () => {
244
+ const e = window.localStorage.accessMode;
245
+ return !!(e && e === "CEF");
246
+ },
247
+ /**
248
+ * @method funcGetCEFLoginPageUrl
249
+ * @param 无
250
+ * @returns {String} CEF 登录页面地址
251
+ * @desc 返回 CEF 登录页面地址
252
+ */
253
+ funcGetCEFLoginPageUrl: () => `${window.parent.location.protocol}//${window.parent.location.host}/cef/login`,
254
+ /**
255
+ * @method funcMessageToJson
256
+ * @param {String} xmlStr - 消息内容
257
+ * @returns {Object} 处理后的消息内容
258
+ * @desc 处理消息内容
259
+ */
260
+ funcMessageToJson: (e) => {
261
+ if (!e)
262
+ return null;
263
+ let t = "";
264
+ const n = Number(a.funcIEVersionCheck());
265
+ n >= 6 && n <= 10 ? t = e.replace(/&amp;/g, "&").replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&nbsp;/g, " ").replace(/&#39;/g, "'").replace(/&quot;/g, '"') : t = e, t = t.replace("<![CDATA[", "").replace("]]>", "");
266
+ let o = null;
267
+ if (t && t.length > 0 && t.includes("{"))
268
+ try {
269
+ o = JSON.parse(t);
270
+ } catch {
271
+ console.log("json 解析失败 str=" + t);
272
+ }
273
+ return o;
274
+ },
275
+ /**
276
+ * @method funcDeepClone
277
+ * @param {Object} target - 要拷贝的对象
278
+ * @returns {Object} 新的对象
279
+ * @desc 深拷贝
280
+ */
281
+ funcDeepClone: (e) => {
282
+ const t = /* @__PURE__ */ new WeakMap(), n = (r) => typeof r == "object" && r || typeof r == "function", o = (r) => {
283
+ if (!n(r))
284
+ return r;
285
+ if ([Date, RegExp].includes(r.constructor))
286
+ return new r.constructor(r);
287
+ if (typeof r == "function")
288
+ return setTimeout(() => r, 100);
289
+ const f = t.get(r);
290
+ if (f)
291
+ return f;
292
+ if (r instanceof Map) {
293
+ const s = /* @__PURE__ */ new Map();
294
+ return t.set(r, s), r.forEach((c, g) => {
295
+ n(c) ? s.set(g, o(c)) : s.set(g, c);
296
+ }), s;
297
+ }
298
+ if (r instanceof Set) {
299
+ const s = /* @__PURE__ */ new Set();
300
+ return t.set(r, s), r.forEach((c) => {
301
+ n(c) ? s.add(o(c)) : s.add(c);
302
+ }), s;
303
+ }
304
+ const i = Reflect.ownKeys(r), l = Object.getOwnPropertyDescriptors(r), u = Object.create(Object.getPrototypeOf(r), l);
305
+ return t.set(r, u), i.forEach((s) => {
306
+ const c = r[s];
307
+ n(c) ? u[s] = o(c) : u[s] = c;
308
+ }), u;
309
+ };
310
+ return o(e);
311
+ },
312
+ /**
313
+ * @method funcArraySort
314
+ * @param {Object} arr - 要排序的数组
315
+ * @param {Object} sortKeyArr - 排序关键字数组
316
+ * @returns 无
317
+ * @desc 处理消息内容
318
+ */
319
+ funcArraySort: (e, t, n) => {
320
+ a.funcIsArray(e) && e.length > 0 && (t && a.funcIsArray(t) && t.length > 0 ? e.sort((o, r) => {
321
+ let f = null, i = null, l = "";
322
+ for (let u = 0; u < t.length; u++)
323
+ if (l = t[u], f = Number(o[l]), i = Number(r[l]), f !== i)
324
+ return f - i;
325
+ return 0;
326
+ }) : e.sort((o, r) => n === "number" ? Number(o) - Number(r) : o - r));
327
+ },
328
+ funcNumberFormat: (e, t = 2) => String(e).padStart(t, "0"),
329
+ funcTimestampFormat: (e, t) => {
330
+ const n = new Date(Number(e)), o = n.getFullYear(), r = a.funcNumberFormat(n.getMonth() + 1), f = a.funcNumberFormat(n.getDate()), i = a.funcNumberFormat(n.getHours()), l = a.funcNumberFormat(n.getMinutes());
331
+ let u = "";
332
+ return t === 1 ? u = `${i}:${l}` : u = `${o}-${r}-${f} ${i}:${l}`, u;
333
+ },
334
+ // 将一个整数取,取指定的位数
335
+ funcFixDigitalNum: (e, t) => ("" + e).length < t ? (new Array(t + 1).join("0") + e).slice(-t) : "" + e,
336
+ /**
337
+ * 时间处理函数2
338
+ * @param second
339
+ * @returns {String}
340
+ */
341
+ getLocalTime: (e) => {
342
+ let t = "";
343
+ const s = ((/* @__PURE__ */ new Date()).getTime() - e * 1e3) / 1e3;
344
+ if (s < 60)
345
+ s <= 15 ? t = "15秒前" : t = s.toFixed(0) + "秒前";
346
+ else if (s < 120)
347
+ t = "1分钟前";
348
+ else if (s < 2700)
349
+ t = (s / 60).toFixed(0) + "分钟前";
350
+ else if (s < 5400)
351
+ t = "1小时前";
352
+ else if (s < 24 * 3600)
353
+ t = (s / 3600).toFixed(0) + "小时前";
354
+ else if (s < 48 * 3600)
355
+ t = "昨天";
356
+ else if (s < 30 * 86400)
357
+ t = (s / 86400).toFixed(0) + "天前";
358
+ else if (s < 12 * 2592e3) {
359
+ const c = s / 2592e3;
360
+ c <= 1 ? t = "1个月前" : t = c.toFixed(0) + "月前";
361
+ } else
362
+ t = (s / 31104e3).toFixed(0) + "年前";
363
+ return t;
364
+ },
365
+ /**
366
+ * 检查接口是否成功
367
+ * @param res
368
+ * @returns {Boolean}
369
+ */
370
+ checkRequestBackStatus: (e) => e?.status?.statuscode + "" == "0",
371
+ /**
372
+ * 获取月初时间
373
+ */
374
+ getDay: (e) => {
375
+ const t = /* @__PURE__ */ new Date(), n = t.getTime() + 1e3 * 60 * 60 * 24 * e, o = (s) => {
376
+ let c = s;
377
+ return s.toString().length === 1 && (c = "0" + s), c;
378
+ };
379
+ t.setTime(n);
380
+ const r = t.getFullYear(), f = t.getMonth(), i = t.getDate(), l = o(f + 1 + ""), u = o(i + "");
381
+ return r + "-" + l + "-" + u;
382
+ },
383
+ /**
384
+ * 日期格式化 yyyy-MM-dd hh:mm:ss
385
+ */
386
+ funcDateFormt: (e, t = 1) => {
387
+ const o = ((/* @__PURE__ */ new Date()).getTimezoneOffset() / 60 + 8) * 60 * 60;
388
+ e = Number(e), e = t === 1 ? e + o : e * 1e3 + o;
389
+ const r = new Date(e), f = r.getFullYear(), i = String(r.getMonth() + 1).padStart(2, "0"), l = String(r.getDate()).padStart(2, "0"), u = String(r.getHours()).padStart(2, "0"), s = String(r.getMinutes()).padStart(2, "0");
390
+ return String(r.getSeconds()).padStart(2, "0"), `${f}-${i}-${l} ${u}:${s}`;
391
+ },
392
+ /**
393
+ * 生成随机字符串拼接uid
394
+ * @param n // 随机数字个数
395
+ */
396
+ funcSetRandomNum: (e) => {
397
+ let t = "";
398
+ for (let n = 0; n < e; n++)
399
+ t += Math.floor(Math.random() * 9 + 1);
400
+ return t;
401
+ },
402
+ /**
403
+ * @method debounce
404
+ * @param [function] fn —— 执行事件
405
+ * @param [?number | 500] delay = 500 —— 时间间隔
406
+ * @desc: 防抖,单位时间内触发最后一次
407
+ */
408
+ /**
409
+ * @method funcWebsiteAccessModeIsCEFJudge
410
+ * @param fn —— 执行事件
411
+ * @returns {Boolean} 是否为 CEF 开播
412
+ * @desc 判断是否为 CEF 开播
413
+ */
414
+ debounce: (e, t = 500) => {
415
+ let n = null;
416
+ return (...o) => {
417
+ n && clearTimeout(n), n = setTimeout(() => {
418
+ e.apply(void 0, o), n = null;
419
+ }, t);
420
+ };
421
+ }
422
+ };
423
+ export {
424
+ a as default
425
+ };
@@ -0,0 +1,275 @@
1
+ import { ref as h } from "vue";
2
+ function E() {
3
+ const d = h(null), r = h(null);
4
+ let u = null, t = null, l = null, p = null, f = null, n = null, s = null;
5
+ const b = `
6
+ struct Uniforms {
7
+ targetColor1: vec3f,
8
+ threshold: f32,
9
+ targetColor2: vec3f,
10
+ _padding: f32,
11
+ resolution: vec2f,
12
+ _padding2: vec2f,
13
+ }
14
+
15
+ @group(0) @binding(0) var videoSampler: sampler;
16
+ @group(0) @binding(1) var videoTexture: texture_external;
17
+ @group(0) @binding(2) var<uniform> uniforms: Uniforms;
18
+
19
+ struct VertexOutput {
20
+ @builtin(position) position: vec4f,
21
+ @location(0) texCoord: vec2f,
22
+ }
23
+
24
+ @vertex
25
+ fn vertexMain(@builtin(vertex_index) vertexIndex: u32) -> VertexOutput {
26
+ // 全屏四边形顶点
27
+ var pos = array<vec2f, 6>(
28
+ vec2f(-1.0, -1.0),
29
+ vec2f(1.0, -1.0),
30
+ vec2f(-1.0, 1.0),
31
+ vec2f(-1.0, 1.0),
32
+ vec2f(1.0, -1.0),
33
+ vec2f(1.0, 1.0)
34
+ );
35
+
36
+ var output: VertexOutput;
37
+ output.position = vec4f(pos[vertexIndex], 0.0, 1.0);
38
+ // 翻转Y坐标以修正视频倒置问题
39
+ output.texCoord = vec2f(
40
+ pos[vertexIndex].x * 0.5 + 0.5,
41
+ 1.0 - (pos[vertexIndex].y * 0.5 + 0.5)
42
+ );
43
+ return output;
44
+ }
45
+
46
+ // 检查颜色是否匹配任一目标色
47
+ fn matchesTargetColor(color: vec3f) -> bool {
48
+ let diff1 = distance(color, uniforms.targetColor1);
49
+ let diff2 = distance(color, uniforms.targetColor2);
50
+ return diff1 < uniforms.threshold || diff2 < uniforms.threshold;
51
+ }
52
+
53
+ @fragment
54
+ fn fragmentMain(input: VertexOutput) -> @location(0) vec4f {
55
+ let color = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord);
56
+ let rgb = color.rgb;
57
+ let pixelSize = 1.0 / uniforms.resolution;
58
+
59
+ // 检查当前像素是否匹配目标色
60
+ if (matchesTargetColor(rgb)) {
61
+ return vec4f(0.0, 0.0, 0.0, 0.0);
62
+ }
63
+
64
+ // 检查8个邻居(包括对角线)
65
+ let left = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(-pixelSize.x, 0.0)).rgb;
66
+ let right = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(pixelSize.x, 0.0)).rgb;
67
+ let top = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(0.0, -pixelSize.y)).rgb;
68
+ let bottom = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(0.0, pixelSize.y)).rgb;
69
+ let topLeft = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(-pixelSize.x, -pixelSize.y)).rgb;
70
+ let topRight = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(pixelSize.x, -pixelSize.y)).rgb;
71
+ let bottomLeft = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(-pixelSize.x, pixelSize.y)).rgb;
72
+ let bottomRight = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(pixelSize.x, pixelSize.y)).rgb;
73
+
74
+ // 第一层侵蚀:如果任意邻居匹配背景色,当前像素也变透明
75
+ if (matchesTargetColor(left) || matchesTargetColor(right) ||
76
+ matchesTargetColor(top) || matchesTargetColor(bottom) ||
77
+ matchesTargetColor(topLeft) || matchesTargetColor(topRight) ||
78
+ matchesTargetColor(bottomLeft) || matchesTargetColor(bottomRight)) {
79
+ return vec4f(0.0, 0.0, 0.0, 0.0);
80
+ }
81
+
82
+ // 第二层侵蚀:检查2像素距离的邻居
83
+ let left2 = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(-pixelSize.x * 2.0, 0.0)).rgb;
84
+ let right2 = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(pixelSize.x * 2.0, 0.0)).rgb;
85
+ let top2 = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(0.0, -pixelSize.y * 2.0)).rgb;
86
+ let bottom2 = textureSampleBaseClampToEdge(videoTexture, videoSampler, input.texCoord + vec2f(0.0, pixelSize.y * 2.0)).rgb;
87
+
88
+ if (matchesTargetColor(left2) || matchesTargetColor(right2) ||
89
+ matchesTargetColor(top2) || matchesTargetColor(bottom2)) {
90
+ return vec4f(0.0, 0.0, 0.0, 0.0);
91
+ }
92
+
93
+ // 不匹配且不在边缘 - 完全保留
94
+ return vec4f(rgb, 1.0);
95
+ }
96
+ `;
97
+ function v(o) {
98
+ const e = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(o);
99
+ return e ? {
100
+ r: parseInt(e[1], 16),
101
+ g: parseInt(e[2], 16),
102
+ b: parseInt(e[3], 16)
103
+ } : { r: 0, g: 0, b: 0 };
104
+ }
105
+ async function C(o) {
106
+ if (!navigator.gpu)
107
+ return console.error("WebGPU不受支持。请使用Chrome 113+或Edge 113+,或在chrome://flags中启用WebGPU"), !1;
108
+ try {
109
+ const e = await navigator.gpu.requestAdapter();
110
+ if (!e)
111
+ return console.error("无法获取WebGPU适配器"), !1;
112
+ if (t = await e.requestDevice(), l = o.getContext("webgpu"), !l)
113
+ return console.error("无法获取WebGPU上下文"), !1;
114
+ const i = navigator.gpu.getPreferredCanvasFormat();
115
+ l.configure({
116
+ device: t,
117
+ format: i,
118
+ alphaMode: "premultiplied"
119
+ });
120
+ const a = t.createShaderModule({
121
+ code: b
122
+ });
123
+ f = t.createSampler({
124
+ magFilter: "linear",
125
+ minFilter: "linear"
126
+ }), n = t.createBuffer({
127
+ size: 48,
128
+ usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST
129
+ }), s = t.createBindGroupLayout({
130
+ entries: [
131
+ {
132
+ binding: 0,
133
+ visibility: GPUShaderStage.FRAGMENT,
134
+ sampler: {}
135
+ },
136
+ {
137
+ binding: 1,
138
+ visibility: GPUShaderStage.FRAGMENT,
139
+ externalTexture: {}
140
+ },
141
+ {
142
+ binding: 2,
143
+ visibility: GPUShaderStage.FRAGMENT,
144
+ buffer: { type: "uniform" }
145
+ }
146
+ ]
147
+ });
148
+ const c = t.createPipelineLayout({
149
+ bindGroupLayouts: [s]
150
+ });
151
+ return p = t.createRenderPipeline({
152
+ layout: c,
153
+ vertex: {
154
+ module: a,
155
+ entryPoint: "vertexMain"
156
+ },
157
+ fragment: {
158
+ module: a,
159
+ entryPoint: "fragmentMain",
160
+ targets: [{
161
+ format: i,
162
+ blend: {
163
+ color: {
164
+ srcFactor: "src-alpha",
165
+ dstFactor: "one-minus-src-alpha"
166
+ },
167
+ alpha: {
168
+ srcFactor: "one",
169
+ dstFactor: "one-minus-src-alpha"
170
+ }
171
+ }
172
+ }]
173
+ },
174
+ primitive: {
175
+ topology: "triangle-list"
176
+ }
177
+ }), console.log("WebGPU初始化成功"), !0;
178
+ } catch (e) {
179
+ return console.error("WebGPU初始化失败:", e), !1;
180
+ }
181
+ }
182
+ function m() {
183
+ if (!d.value || !r.value || !t || !l || !p || !f || !n || !s)
184
+ return;
185
+ const o = d.value, e = r.value;
186
+ if (o.readyState < o.HAVE_CURRENT_DATA) {
187
+ u = requestAnimationFrame(m);
188
+ return;
189
+ }
190
+ (e.width !== o.videoWidth || e.height !== o.videoHeight) && (e.width = o.videoWidth, e.height = o.videoHeight);
191
+ try {
192
+ const i = t.importExternalTexture({
193
+ source: o
194
+ }), a = v("#0AFFFF"), c = v("#0AFFFF"), y = new Float32Array([
195
+ a.r / 255,
196
+ a.g / 255,
197
+ a.b / 255,
198
+ // targetColor1
199
+ 0.4,
200
+ // threshold - 颜色相似度阈值
201
+ c.r / 255,
202
+ c.g / 255,
203
+ c.b / 255,
204
+ // targetColor2
205
+ 0,
206
+ // padding
207
+ e.width,
208
+ e.height,
209
+ // resolution
210
+ 0,
211
+ 0
212
+ // padding2
213
+ ]);
214
+ t.queue.writeBuffer(n, 0, y);
215
+ const P = t.createBindGroup({
216
+ layout: s,
217
+ entries: [
218
+ { binding: 0, resource: f },
219
+ { binding: 1, resource: i },
220
+ { binding: 2, resource: { buffer: n } }
221
+ ]
222
+ }), x = t.createCommandEncoder(), g = x.beginRenderPass({
223
+ colorAttachments: [{
224
+ view: l.getCurrentTexture().createView(),
225
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
226
+ loadOp: "clear",
227
+ storeOp: "store"
228
+ }]
229
+ });
230
+ g.setPipeline(p), g.setBindGroup(0, P), g.draw(6), g.end(), t.queue.submit([x.finish()]);
231
+ } catch (i) {
232
+ console.error("WebGPU渲染帧错误:", i);
233
+ }
234
+ u = requestAnimationFrame(m);
235
+ }
236
+ async function S() {
237
+ if (!d.value || !r.value) return;
238
+ if (!await C(r.value)) {
239
+ console.error("WebGPU初始化失败,请确保浏览器支持WebGPU");
240
+ return;
241
+ }
242
+ u = requestAnimationFrame(m);
243
+ }
244
+ function T() {
245
+ if (u !== null && (cancelAnimationFrame(u), u = null), r.value && (r.value.getContext("2d") || r.value.getContext("webgpu"))) {
246
+ if (l && t) {
247
+ const i = t.createCommandEncoder();
248
+ i.beginRenderPass({
249
+ colorAttachments: [{
250
+ view: l.getCurrentTexture().createView(),
251
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
252
+ loadOp: "clear",
253
+ storeOp: "store"
254
+ }]
255
+ }).end(), t.queue.submit([i.finish()]);
256
+ }
257
+ const e = r.value.getContext("2d");
258
+ if (e) {
259
+ e.clearRect(0, 0, r.value.width, r.value.height);
260
+ const i = r.value.width, a = r.value.height;
261
+ r.value.width = i, r.value.height = a;
262
+ }
263
+ }
264
+ n && (n.destroy(), n = null), t = null, l = null, p = null, f = null, s = null;
265
+ }
266
+ return {
267
+ videoRef: d,
268
+ canvasRef: r,
269
+ processVideo: S,
270
+ stopProcessing: T
271
+ };
272
+ }
273
+ export {
274
+ E as default
275
+ };