koishi-plugin-media-luna 0.0.1

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 (437) hide show
  1. package/client/README.md +558 -0
  2. package/client/api.ts +256 -0
  3. package/client/components/ChannelConfigDialog.vue +1113 -0
  4. package/client/components/ChannelsView.vue +698 -0
  5. package/client/components/ConfigRenderer.vue +164 -0
  6. package/client/components/EmptyState.vue +87 -0
  7. package/client/components/GenerateView.vue +778 -0
  8. package/client/components/HistoryGallery.vue +590 -0
  9. package/client/components/ImageLightbox.vue +510 -0
  10. package/client/components/ImageUpload.vue +298 -0
  11. package/client/components/JsonEditor.vue +68 -0
  12. package/client/components/LoadingState.vue +73 -0
  13. package/client/components/PresetsView.vue +800 -0
  14. package/client/components/ScrollContainer.vue +45 -0
  15. package/client/components/SettingsView.vue +231 -0
  16. package/client/components/StatusBadge.vue +55 -0
  17. package/client/components/TagFilter.vue +139 -0
  18. package/client/components/TagInput.vue +63 -0
  19. package/client/components/TasksView.vue +1074 -0
  20. package/client/components/ViewModeSwitch.vue +78 -0
  21. package/client/components/settings/CachePanel.vue +142 -0
  22. package/client/components/settings/MiddlewaresPanel.vue +480 -0
  23. package/client/components/settings/PluginsPanel.vue +493 -0
  24. package/client/index.ts +13 -0
  25. package/client/pages/index.vue +177 -0
  26. package/client/styles/shared.css +258 -0
  27. package/client/types.ts +158 -0
  28. package/client/utils/format.ts +72 -0
  29. package/dist/index.js +1 -0
  30. package/dist/style.css +1 -0
  31. package/lib/api/README.md +643 -0
  32. package/lib/api/cache-api.d.ts +6 -0
  33. package/lib/api/cache-api.d.ts.map +1 -0
  34. package/lib/api/cache-api.js +147 -0
  35. package/lib/api/cache-api.js.map +1 -0
  36. package/lib/api/channel-api.d.ts +6 -0
  37. package/lib/api/channel-api.d.ts.map +1 -0
  38. package/lib/api/channel-api.js +148 -0
  39. package/lib/api/channel-api.js.map +1 -0
  40. package/lib/api/connector-api.d.ts +6 -0
  41. package/lib/api/connector-api.d.ts.map +1 -0
  42. package/lib/api/connector-api.js +63 -0
  43. package/lib/api/connector-api.js.map +1 -0
  44. package/lib/api/generate-api.d.ts +6 -0
  45. package/lib/api/generate-api.d.ts.map +1 -0
  46. package/lib/api/generate-api.js +123 -0
  47. package/lib/api/generate-api.js.map +1 -0
  48. package/lib/api/index.d.ts +15 -0
  49. package/lib/api/index.d.ts.map +1 -0
  50. package/lib/api/index.js +34 -0
  51. package/lib/api/index.js.map +1 -0
  52. package/lib/api/middleware-api.d.ts +6 -0
  53. package/lib/api/middleware-api.d.ts.map +1 -0
  54. package/lib/api/middleware-api.js +212 -0
  55. package/lib/api/middleware-api.js.map +1 -0
  56. package/lib/api/plugin-api.d.ts +6 -0
  57. package/lib/api/plugin-api.d.ts.map +1 -0
  58. package/lib/api/plugin-api.js +78 -0
  59. package/lib/api/plugin-api.js.map +1 -0
  60. package/lib/api/preset-api.d.ts +6 -0
  61. package/lib/api/preset-api.d.ts.map +1 -0
  62. package/lib/api/preset-api.js +256 -0
  63. package/lib/api/preset-api.js.map +1 -0
  64. package/lib/api/settings-api.d.ts +6 -0
  65. package/lib/api/settings-api.d.ts.map +1 -0
  66. package/lib/api/settings-api.js +118 -0
  67. package/lib/api/settings-api.js.map +1 -0
  68. package/lib/api/task-api.d.ts +6 -0
  69. package/lib/api/task-api.d.ts.map +1 -0
  70. package/lib/api/task-api.js +148 -0
  71. package/lib/api/task-api.js.map +1 -0
  72. package/lib/config.d.ts +6 -0
  73. package/lib/config.d.ts.map +1 -0
  74. package/lib/config.js +8 -0
  75. package/lib/config.js.map +1 -0
  76. package/lib/connectors/builtin/chat-api.d.ts +9 -0
  77. package/lib/connectors/builtin/chat-api.d.ts.map +1 -0
  78. package/lib/connectors/builtin/chat-api.js +351 -0
  79. package/lib/connectors/builtin/chat-api.js.map +1 -0
  80. package/lib/connectors/builtin/dalle.d.ts +6 -0
  81. package/lib/connectors/builtin/dalle.d.ts.map +1 -0
  82. package/lib/connectors/builtin/dalle.js +109 -0
  83. package/lib/connectors/builtin/dalle.js.map +1 -0
  84. package/lib/connectors/builtin/flux.d.ts +7 -0
  85. package/lib/connectors/builtin/flux.d.ts.map +1 -0
  86. package/lib/connectors/builtin/flux.js +199 -0
  87. package/lib/connectors/builtin/flux.js.map +1 -0
  88. package/lib/connectors/builtin/index.d.ts +5 -0
  89. package/lib/connectors/builtin/index.d.ts.map +1 -0
  90. package/lib/connectors/builtin/index.js +6 -0
  91. package/lib/connectors/builtin/index.js.map +1 -0
  92. package/lib/connectors/builtin/sd-webui.d.ts +7 -0
  93. package/lib/connectors/builtin/sd-webui.d.ts.map +1 -0
  94. package/lib/connectors/builtin/sd-webui.js +157 -0
  95. package/lib/connectors/builtin/sd-webui.js.map +1 -0
  96. package/lib/connectors/connector-registry.d.ts +36 -0
  97. package/lib/connectors/connector-registry.d.ts.map +1 -0
  98. package/lib/connectors/connector-registry.js +66 -0
  99. package/lib/connectors/connector-registry.js.map +1 -0
  100. package/lib/connectors/index.d.ts +3 -0
  101. package/lib/connectors/index.d.ts.map +1 -0
  102. package/lib/connectors/index.js +4 -0
  103. package/lib/connectors/index.js.map +1 -0
  104. package/lib/core/api/api-utils.d.ts +46 -0
  105. package/lib/core/api/api-utils.d.ts.map +1 -0
  106. package/lib/core/api/api-utils.js +78 -0
  107. package/lib/core/api/api-utils.js.map +1 -0
  108. package/lib/core/api/cache-api.d.ts +6 -0
  109. package/lib/core/api/cache-api.d.ts.map +1 -0
  110. package/lib/core/api/cache-api.js +147 -0
  111. package/lib/core/api/cache-api.js.map +1 -0
  112. package/lib/core/api/channel-api.d.ts +6 -0
  113. package/lib/core/api/channel-api.d.ts.map +1 -0
  114. package/lib/core/api/channel-api.js +146 -0
  115. package/lib/core/api/channel-api.js.map +1 -0
  116. package/lib/core/api/connector-api.d.ts +6 -0
  117. package/lib/core/api/connector-api.d.ts.map +1 -0
  118. package/lib/core/api/connector-api.js +63 -0
  119. package/lib/core/api/connector-api.js.map +1 -0
  120. package/lib/core/api/generate-api.d.ts +6 -0
  121. package/lib/core/api/generate-api.d.ts.map +1 -0
  122. package/lib/core/api/generate-api.js +124 -0
  123. package/lib/core/api/generate-api.js.map +1 -0
  124. package/lib/core/api/index.d.ts +16 -0
  125. package/lib/core/api/index.d.ts.map +1 -0
  126. package/lib/core/api/index.js +38 -0
  127. package/lib/core/api/index.js.map +1 -0
  128. package/lib/core/api/middleware-api.d.ts +6 -0
  129. package/lib/core/api/middleware-api.d.ts.map +1 -0
  130. package/lib/core/api/middleware-api.js +196 -0
  131. package/lib/core/api/middleware-api.js.map +1 -0
  132. package/lib/core/api/plugin-api.d.ts +6 -0
  133. package/lib/core/api/plugin-api.d.ts.map +1 -0
  134. package/lib/core/api/plugin-api.js +78 -0
  135. package/lib/core/api/plugin-api.js.map +1 -0
  136. package/lib/core/api/preset-api.d.ts +6 -0
  137. package/lib/core/api/preset-api.d.ts.map +1 -0
  138. package/lib/core/api/preset-api.js +272 -0
  139. package/lib/core/api/preset-api.js.map +1 -0
  140. package/lib/core/api/settings-api.d.ts +6 -0
  141. package/lib/core/api/settings-api.d.ts.map +1 -0
  142. package/lib/core/api/settings-api.js +118 -0
  143. package/lib/core/api/settings-api.js.map +1 -0
  144. package/lib/core/api/task-api.d.ts +6 -0
  145. package/lib/core/api/task-api.d.ts.map +1 -0
  146. package/lib/core/api/task-api.js +281 -0
  147. package/lib/core/api/task-api.js.map +1 -0
  148. package/lib/core/channel.service.d.ts +44 -0
  149. package/lib/core/channel.service.d.ts.map +1 -0
  150. package/lib/core/channel.service.js +146 -0
  151. package/lib/core/channel.service.js.map +1 -0
  152. package/lib/core/config/config.service.d.ts +89 -0
  153. package/lib/core/config/config.service.d.ts.map +1 -0
  154. package/lib/core/config/config.service.js +216 -0
  155. package/lib/core/config/config.service.js.map +1 -0
  156. package/lib/core/config/index.d.ts +3 -0
  157. package/lib/core/config/index.d.ts.map +1 -0
  158. package/lib/core/config/index.js +3 -0
  159. package/lib/core/config/index.js.map +1 -0
  160. package/lib/core/error.d.ts +73 -0
  161. package/lib/core/error.d.ts.map +1 -0
  162. package/lib/core/error.js +137 -0
  163. package/lib/core/error.js.map +1 -0
  164. package/lib/core/index.d.ts +12 -0
  165. package/lib/core/index.d.ts.map +1 -0
  166. package/lib/core/index.js +23 -0
  167. package/lib/core/index.js.map +1 -0
  168. package/lib/core/logger.d.ts +18 -0
  169. package/lib/core/logger.d.ts.map +1 -0
  170. package/lib/core/logger.js +39 -0
  171. package/lib/core/logger.js.map +1 -0
  172. package/lib/core/medialuna.service.d.ts +168 -0
  173. package/lib/core/medialuna.service.d.ts.map +1 -0
  174. package/lib/core/medialuna.service.js +423 -0
  175. package/lib/core/medialuna.service.js.map +1 -0
  176. package/lib/core/pipeline/dependency-graph.d.ts +43 -0
  177. package/lib/core/pipeline/dependency-graph.d.ts.map +1 -0
  178. package/lib/core/pipeline/dependency-graph.js +223 -0
  179. package/lib/core/pipeline/dependency-graph.js.map +1 -0
  180. package/lib/core/pipeline/generation-pipeline.d.ts +40 -0
  181. package/lib/core/pipeline/generation-pipeline.d.ts.map +1 -0
  182. package/lib/core/pipeline/generation-pipeline.js +216 -0
  183. package/lib/core/pipeline/generation-pipeline.js.map +1 -0
  184. package/lib/core/pipeline/index.d.ts +4 -0
  185. package/lib/core/pipeline/index.d.ts.map +1 -0
  186. package/lib/core/pipeline/index.js +5 -0
  187. package/lib/core/pipeline/index.js.map +1 -0
  188. package/lib/core/pipeline/middleware-registry.d.ts +33 -0
  189. package/lib/core/pipeline/middleware-registry.d.ts.map +1 -0
  190. package/lib/core/pipeline/middleware-registry.js +78 -0
  191. package/lib/core/pipeline/middleware-registry.js.map +1 -0
  192. package/lib/core/plugin-loader.d.ts +77 -0
  193. package/lib/core/plugin-loader.d.ts.map +1 -0
  194. package/lib/core/plugin-loader.js +300 -0
  195. package/lib/core/plugin-loader.js.map +1 -0
  196. package/lib/core/registry/connector.registry.d.ts +36 -0
  197. package/lib/core/registry/connector.registry.d.ts.map +1 -0
  198. package/lib/core/registry/connector.registry.js +65 -0
  199. package/lib/core/registry/connector.registry.js.map +1 -0
  200. package/lib/core/registry/index.d.ts +3 -0
  201. package/lib/core/registry/index.d.ts.map +1 -0
  202. package/lib/core/registry/index.js +4 -0
  203. package/lib/core/registry/index.js.map +1 -0
  204. package/lib/core/registry/service.registry.d.ts +27 -0
  205. package/lib/core/registry/service.registry.d.ts.map +1 -0
  206. package/lib/core/registry/service.registry.js +54 -0
  207. package/lib/core/registry/service.registry.js.map +1 -0
  208. package/lib/core/request.service.d.ts +83 -0
  209. package/lib/core/request.service.d.ts.map +1 -0
  210. package/lib/core/request.service.js +237 -0
  211. package/lib/core/request.service.js.map +1 -0
  212. package/lib/core/types.d.ts +270 -0
  213. package/lib/core/types.d.ts.map +1 -0
  214. package/lib/core/types.js +17 -0
  215. package/lib/core/types.js.map +1 -0
  216. package/lib/database.d.ts +6 -0
  217. package/lib/database.d.ts.map +1 -0
  218. package/lib/database.js +89 -0
  219. package/lib/database.js.map +1 -0
  220. package/lib/index.d.ts +13 -0
  221. package/lib/index.d.ts.map +1 -0
  222. package/lib/index.js +54 -0
  223. package/lib/index.js.map +1 -0
  224. package/lib/middlewares/builtin/billing.d.ts +45 -0
  225. package/lib/middlewares/builtin/billing.d.ts.map +1 -0
  226. package/lib/middlewares/builtin/billing.js +362 -0
  227. package/lib/middlewares/builtin/billing.js.map +1 -0
  228. package/lib/middlewares/builtin/index.d.ts +6 -0
  229. package/lib/middlewares/builtin/index.d.ts.map +1 -0
  230. package/lib/middlewares/builtin/index.js +7 -0
  231. package/lib/middlewares/builtin/index.js.map +1 -0
  232. package/lib/middlewares/builtin/preset.d.ts +14 -0
  233. package/lib/middlewares/builtin/preset.d.ts.map +1 -0
  234. package/lib/middlewares/builtin/preset.js +156 -0
  235. package/lib/middlewares/builtin/preset.js.map +1 -0
  236. package/lib/middlewares/builtin/remote-preset-sync.d.ts +8 -0
  237. package/lib/middlewares/builtin/remote-preset-sync.d.ts.map +1 -0
  238. package/lib/middlewares/builtin/remote-preset-sync.js +32 -0
  239. package/lib/middlewares/builtin/remote-preset-sync.js.map +1 -0
  240. package/lib/middlewares/builtin/request.d.ts +10 -0
  241. package/lib/middlewares/builtin/request.d.ts.map +1 -0
  242. package/lib/middlewares/builtin/request.js +50 -0
  243. package/lib/middlewares/builtin/request.js.map +1 -0
  244. package/lib/middlewares/builtin/storage.d.ts +64 -0
  245. package/lib/middlewares/builtin/storage.d.ts.map +1 -0
  246. package/lib/middlewares/builtin/storage.js +715 -0
  247. package/lib/middlewares/builtin/storage.js.map +1 -0
  248. package/lib/middlewares/builtin/task-recorder.d.ts +20 -0
  249. package/lib/middlewares/builtin/task-recorder.d.ts.map +1 -0
  250. package/lib/middlewares/builtin/task-recorder.js +138 -0
  251. package/lib/middlewares/builtin/task-recorder.js.map +1 -0
  252. package/lib/middlewares/index.d.ts +2 -0
  253. package/lib/middlewares/index.d.ts.map +1 -0
  254. package/lib/middlewares/index.js +3 -0
  255. package/lib/middlewares/index.js.map +1 -0
  256. package/lib/pipeline/dependency-graph.d.ts +43 -0
  257. package/lib/pipeline/dependency-graph.d.ts.map +1 -0
  258. package/lib/pipeline/dependency-graph.js +240 -0
  259. package/lib/pipeline/dependency-graph.js.map +1 -0
  260. package/lib/pipeline/generation-pipeline.d.ts +38 -0
  261. package/lib/pipeline/generation-pipeline.d.ts.map +1 -0
  262. package/lib/pipeline/generation-pipeline.js +211 -0
  263. package/lib/pipeline/generation-pipeline.js.map +1 -0
  264. package/lib/pipeline/index.d.ts +4 -0
  265. package/lib/pipeline/index.d.ts.map +1 -0
  266. package/lib/pipeline/index.js +5 -0
  267. package/lib/pipeline/index.js.map +1 -0
  268. package/lib/pipeline/middleware-registry.d.ts +36 -0
  269. package/lib/pipeline/middleware-registry.d.ts.map +1 -0
  270. package/lib/pipeline/middleware-registry.js +83 -0
  271. package/lib/pipeline/middleware-registry.js.map +1 -0
  272. package/lib/plugins/billing/config.d.ts +19 -0
  273. package/lib/plugins/billing/config.d.ts.map +1 -0
  274. package/lib/plugins/billing/config.js +98 -0
  275. package/lib/plugins/billing/config.js.map +1 -0
  276. package/lib/plugins/billing/index.d.ts +4 -0
  277. package/lib/plugins/billing/index.d.ts.map +1 -0
  278. package/lib/plugins/billing/index.js +20 -0
  279. package/lib/plugins/billing/index.js.map +1 -0
  280. package/lib/plugins/billing/middleware.d.ts +12 -0
  281. package/lib/plugins/billing/middleware.d.ts.map +1 -0
  282. package/lib/plugins/billing/middleware.js +233 -0
  283. package/lib/plugins/billing/middleware.js.map +1 -0
  284. package/lib/plugins/cache/config.d.ts +44 -0
  285. package/lib/plugins/cache/config.d.ts.map +1 -0
  286. package/lib/plugins/cache/config.js +187 -0
  287. package/lib/plugins/cache/config.js.map +1 -0
  288. package/lib/plugins/cache/index.d.ts +6 -0
  289. package/lib/plugins/cache/index.d.ts.map +1 -0
  290. package/lib/plugins/cache/index.js +87 -0
  291. package/lib/plugins/cache/index.js.map +1 -0
  292. package/lib/plugins/cache/middleware.d.ts +12 -0
  293. package/lib/plugins/cache/middleware.d.ts.map +1 -0
  294. package/lib/plugins/cache/middleware.js +194 -0
  295. package/lib/plugins/cache/middleware.js.map +1 -0
  296. package/lib/plugins/cache/service.d.ts +106 -0
  297. package/lib/plugins/cache/service.d.ts.map +1 -0
  298. package/lib/plugins/cache/service.js +467 -0
  299. package/lib/plugins/cache/service.js.map +1 -0
  300. package/lib/plugins/cache/utils/index.d.ts +4 -0
  301. package/lib/plugins/cache/utils/index.d.ts.map +1 -0
  302. package/lib/plugins/cache/utils/index.js +5 -0
  303. package/lib/plugins/cache/utils/index.js.map +1 -0
  304. package/lib/plugins/cache/utils/mime.d.ts +9 -0
  305. package/lib/plugins/cache/utils/mime.d.ts.map +1 -0
  306. package/lib/plugins/cache/utils/mime.js +65 -0
  307. package/lib/plugins/cache/utils/mime.js.map +1 -0
  308. package/lib/plugins/cache/utils/s3.d.ts +19 -0
  309. package/lib/plugins/cache/utils/s3.d.ts.map +1 -0
  310. package/lib/plugins/cache/utils/s3.js +147 -0
  311. package/lib/plugins/cache/utils/s3.js.map +1 -0
  312. package/lib/plugins/cache/utils/webdav.d.ts +16 -0
  313. package/lib/plugins/cache/utils/webdav.d.ts.map +1 -0
  314. package/lib/plugins/cache/utils/webdav.js +69 -0
  315. package/lib/plugins/cache/utils/webdav.js.map +1 -0
  316. package/lib/plugins/connector-chat-api/index.d.ts +7 -0
  317. package/lib/plugins/connector-chat-api/index.d.ts.map +1 -0
  318. package/lib/plugins/connector-chat-api/index.js +400 -0
  319. package/lib/plugins/connector-chat-api/index.js.map +1 -0
  320. package/lib/plugins/connector-dalle/index.d.ts +7 -0
  321. package/lib/plugins/connector-dalle/index.d.ts.map +1 -0
  322. package/lib/plugins/connector-dalle/index.js +140 -0
  323. package/lib/plugins/connector-dalle/index.js.map +1 -0
  324. package/lib/plugins/connector-flux/index.d.ts +7 -0
  325. package/lib/plugins/connector-flux/index.d.ts.map +1 -0
  326. package/lib/plugins/connector-flux/index.js +232 -0
  327. package/lib/plugins/connector-flux/index.js.map +1 -0
  328. package/lib/plugins/connector-sd-webui/index.d.ts +7 -0
  329. package/lib/plugins/connector-sd-webui/index.d.ts.map +1 -0
  330. package/lib/plugins/connector-sd-webui/index.js +171 -0
  331. package/lib/plugins/connector-sd-webui/index.js.map +1 -0
  332. package/lib/plugins/index.d.ts +22 -0
  333. package/lib/plugins/index.d.ts.map +1 -0
  334. package/lib/plugins/index.js +21 -0
  335. package/lib/plugins/index.js.map +1 -0
  336. package/lib/plugins/preset/config.d.ts +37 -0
  337. package/lib/plugins/preset/config.d.ts.map +1 -0
  338. package/lib/plugins/preset/config.js +74 -0
  339. package/lib/plugins/preset/config.js.map +1 -0
  340. package/lib/plugins/preset/index.d.ts +6 -0
  341. package/lib/plugins/preset/index.d.ts.map +1 -0
  342. package/lib/plugins/preset/index.js +58 -0
  343. package/lib/plugins/preset/index.js.map +1 -0
  344. package/lib/plugins/preset/middleware.d.ts +6 -0
  345. package/lib/plugins/preset/middleware.d.ts.map +1 -0
  346. package/lib/plugins/preset/middleware.js +126 -0
  347. package/lib/plugins/preset/middleware.js.map +1 -0
  348. package/lib/plugins/preset/remote-sync.service.d.ts +84 -0
  349. package/lib/plugins/preset/remote-sync.service.d.ts.map +1 -0
  350. package/lib/plugins/preset/remote-sync.service.js +342 -0
  351. package/lib/plugins/preset/remote-sync.service.js.map +1 -0
  352. package/lib/plugins/preset/service.d.ts +64 -0
  353. package/lib/plugins/preset/service.d.ts.map +1 -0
  354. package/lib/plugins/preset/service.js +196 -0
  355. package/lib/plugins/preset/service.js.map +1 -0
  356. package/lib/plugins/prompt-encoding/config.d.ts +25 -0
  357. package/lib/plugins/prompt-encoding/config.d.ts.map +1 -0
  358. package/lib/plugins/prompt-encoding/config.js +62 -0
  359. package/lib/plugins/prompt-encoding/config.js.map +1 -0
  360. package/lib/plugins/prompt-encoding/index.d.ts +5 -0
  361. package/lib/plugins/prompt-encoding/index.d.ts.map +1 -0
  362. package/lib/plugins/prompt-encoding/index.js +21 -0
  363. package/lib/plugins/prompt-encoding/index.js.map +1 -0
  364. package/lib/plugins/prompt-encoding/middleware.d.ts +6 -0
  365. package/lib/plugins/prompt-encoding/middleware.d.ts.map +1 -0
  366. package/lib/plugins/prompt-encoding/middleware.js +151 -0
  367. package/lib/plugins/prompt-encoding/middleware.js.map +1 -0
  368. package/lib/plugins/task/config.d.ts +15 -0
  369. package/lib/plugins/task/config.d.ts.map +1 -0
  370. package/lib/plugins/task/config.js +33 -0
  371. package/lib/plugins/task/config.js.map +1 -0
  372. package/lib/plugins/task/index.d.ts +5 -0
  373. package/lib/plugins/task/index.d.ts.map +1 -0
  374. package/lib/plugins/task/index.js +58 -0
  375. package/lib/plugins/task/index.js.map +1 -0
  376. package/lib/plugins/task/middleware.d.ts +14 -0
  377. package/lib/plugins/task/middleware.d.ts.map +1 -0
  378. package/lib/plugins/task/middleware.js +123 -0
  379. package/lib/plugins/task/middleware.js.map +1 -0
  380. package/lib/plugins/task/service.d.ts +94 -0
  381. package/lib/plugins/task/service.d.ts.map +1 -0
  382. package/lib/plugins/task/service.js +226 -0
  383. package/lib/plugins/task/service.js.map +1 -0
  384. package/lib/plugins/webui-auth/config.d.ts +12 -0
  385. package/lib/plugins/webui-auth/config.d.ts.map +1 -0
  386. package/lib/plugins/webui-auth/config.js +30 -0
  387. package/lib/plugins/webui-auth/config.js.map +1 -0
  388. package/lib/plugins/webui-auth/index.d.ts +5 -0
  389. package/lib/plugins/webui-auth/index.d.ts.map +1 -0
  390. package/lib/plugins/webui-auth/index.js +99 -0
  391. package/lib/plugins/webui-auth/index.js.map +1 -0
  392. package/lib/plugins/webui-auth/service.d.ts +42 -0
  393. package/lib/plugins/webui-auth/service.d.ts.map +1 -0
  394. package/lib/plugins/webui-auth/service.js +106 -0
  395. package/lib/plugins/webui-auth/service.js.map +1 -0
  396. package/lib/services/asset-cache.service.d.ts +133 -0
  397. package/lib/services/asset-cache.service.d.ts.map +1 -0
  398. package/lib/services/asset-cache.service.js +882 -0
  399. package/lib/services/asset-cache.service.js.map +1 -0
  400. package/lib/services/cache.service.d.ts +110 -0
  401. package/lib/services/cache.service.d.ts.map +1 -0
  402. package/lib/services/cache.service.js +333 -0
  403. package/lib/services/cache.service.js.map +1 -0
  404. package/lib/services/channel.service.d.ts +44 -0
  405. package/lib/services/channel.service.d.ts.map +1 -0
  406. package/lib/services/channel.service.js +154 -0
  407. package/lib/services/channel.service.js.map +1 -0
  408. package/lib/services/config.service.d.ts +73 -0
  409. package/lib/services/config.service.d.ts.map +1 -0
  410. package/lib/services/config.service.js +171 -0
  411. package/lib/services/config.service.js.map +1 -0
  412. package/lib/services/index.d.ts +8 -0
  413. package/lib/services/index.d.ts.map +1 -0
  414. package/lib/services/index.js +9 -0
  415. package/lib/services/index.js.map +1 -0
  416. package/lib/services/medialuna.service.d.ts +173 -0
  417. package/lib/services/medialuna.service.d.ts.map +1 -0
  418. package/lib/services/medialuna.service.js +455 -0
  419. package/lib/services/medialuna.service.js.map +1 -0
  420. package/lib/services/preset.service.d.ts +69 -0
  421. package/lib/services/preset.service.d.ts.map +1 -0
  422. package/lib/services/preset.service.js +202 -0
  423. package/lib/services/preset.service.js.map +1 -0
  424. package/lib/services/remote-preset.service.d.ts +97 -0
  425. package/lib/services/remote-preset.service.d.ts.map +1 -0
  426. package/lib/services/remote-preset.service.js +212 -0
  427. package/lib/services/remote-preset.service.js.map +1 -0
  428. package/lib/services/task.service.d.ts +57 -0
  429. package/lib/services/task.service.d.ts.map +1 -0
  430. package/lib/services/task.service.js +138 -0
  431. package/lib/services/task.service.js.map +1 -0
  432. package/lib/types/index.d.ts +357 -0
  433. package/lib/types/index.d.ts.map +1 -0
  434. package/lib/types/index.js +21 -0
  435. package/lib/types/index.js.map +1 -0
  436. package/package.json +66 -0
  437. package/readme.md +326 -0
@@ -0,0 +1,83 @@
1
+ import { Context } from 'koishi';
2
+ import type { ConnectorDefinition, FileData, OutputAsset, MiddlewareContext, MiddlewareRunStatus, ConnectorRequestLog, ConnectorResponseLog } from './types';
3
+ import { ConnectorRegistry } from './registry';
4
+ export interface RequestResult {
5
+ success: boolean;
6
+ output?: OutputAsset[];
7
+ error?: string;
8
+ errorCode?: number;
9
+ /** 请求日志(用于中间件记录) */
10
+ requestLog?: ConnectorRequestLog;
11
+ /** 响应日志(用于中间件记录) */
12
+ responseLog?: ConnectorResponseLog;
13
+ }
14
+ /**
15
+ * RequestService - 连接器调用服务
16
+ *
17
+ * 封装连接器调用逻辑,提供:
18
+ * - 统一的错误处理
19
+ * - 超时控制
20
+ * - 重试支持
21
+ * - 请求/响应日志
22
+ */
23
+ export declare class RequestService {
24
+ private _ctx;
25
+ private _logger;
26
+ private _connectorRegistry;
27
+ constructor(ctx: Context, connectorRegistry: ConnectorRegistry);
28
+ /**
29
+ * 执行连接器调用
30
+ */
31
+ execute(connectorId: string, config: Record<string, any>, files: FileData[], prompt: string, options?: {
32
+ timeout?: number;
33
+ retries?: number;
34
+ }): Promise<RequestResult>;
35
+ /**
36
+ * 获取请求日志
37
+ */
38
+ private _getRequestLog;
39
+ /**
40
+ * 获取响应日志
41
+ */
42
+ private _getResponseLog;
43
+ /**
44
+ * 脱敏 URL(隐藏 API Key 等查询参数)
45
+ */
46
+ private _maskUrl;
47
+ /**
48
+ * 提取安全参数(排除敏感字段)
49
+ */
50
+ private _extractSafeParams;
51
+ /**
52
+ * 带超时的连接器调用
53
+ */
54
+ private _executeWithTimeout;
55
+ /**
56
+ * 判断错误是否可重试
57
+ */
58
+ private _isRetryable;
59
+ /**
60
+ * 获取连接器
61
+ */
62
+ getConnector(id: string): ConnectorDefinition | undefined;
63
+ /**
64
+ * 检查连接器是否存在
65
+ */
66
+ hasConnector(id: string): boolean;
67
+ }
68
+ /**
69
+ * 创建 request 中间件
70
+ *
71
+ * 这是一个核心中间件,负责在 lifecycle-request 阶段调用连接器
72
+ * 所有连接器插件都依赖此服务
73
+ */
74
+ export declare function createRequestMiddleware(requestService: RequestService): {
75
+ name: string;
76
+ displayName: string;
77
+ description: string;
78
+ category: "request";
79
+ phase: "lifecycle-request";
80
+ configFields: never[];
81
+ execute(context: MiddlewareContext, next: () => Promise<MiddlewareRunStatus>): Promise<MiddlewareRunStatus>;
82
+ };
83
+ //# sourceMappingURL=request.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.service.d.ts","sourceRoot":"","sources":["../../src/core/request.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,KAAK,EAEV,mBAAmB,EACnB,QAAQ,EACR,WAAW,EAEX,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAIhB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE9C,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB;IACpB,UAAU,CAAC,EAAE,mBAAmB,CAAA;IAChC,oBAAoB;IACpB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC;AAED;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,kBAAkB,CAAmB;gBAEjC,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB;IAM9D;;OAEG;IACG,OAAO,CACX,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,KAAK,EAAE,QAAQ,EAAE,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GACA,OAAO,CAAC,aAAa,CAAC;IA2HzB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAYhB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;YACW,mBAAmB;IAwBjC;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAIzD;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;CAGlC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,cAAc;;;;;;;qBAS3C,iBAAiB,QAAQ,MAAM,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;EAoCpH"}
@@ -0,0 +1,237 @@
1
+ // RequestService - 连接器调用基础服务
2
+ // 提供连接器调用的统一接口
3
+ import { MiddlewareRunStatus as Status } from './types';
4
+ import { createPluginLogger } from './logger';
5
+ import { Errors, toMediaLunaError } from './error';
6
+ /**
7
+ * RequestService - 连接器调用服务
8
+ *
9
+ * 封装连接器调用逻辑,提供:
10
+ * - 统一的错误处理
11
+ * - 超时控制
12
+ * - 重试支持
13
+ * - 请求/响应日志
14
+ */
15
+ export class RequestService {
16
+ _ctx;
17
+ _logger;
18
+ _connectorRegistry;
19
+ constructor(ctx, connectorRegistry) {
20
+ this._ctx = ctx;
21
+ this._logger = createPluginLogger(ctx.logger('media-luna'), 'request');
22
+ this._connectorRegistry = connectorRegistry;
23
+ }
24
+ /**
25
+ * 执行连接器调用
26
+ */
27
+ async execute(connectorId, config, files, prompt, options) {
28
+ const connector = this._connectorRegistry.get(connectorId);
29
+ if (!connector) {
30
+ return Errors.connectorNotFound(connectorId).toResponse();
31
+ }
32
+ const { timeout = 120000, retries = 0 } = options || {};
33
+ // 获取请求日志
34
+ const requestLog = this._getRequestLog(connector, config, files, prompt);
35
+ // DEBUG: 输出完整请求信息
36
+ this._logger.debug('[%s] Request:\n%s', connectorId, JSON.stringify(requestLog, null, 2));
37
+ // INFO: 输出请求摘要
38
+ this._logger.info('[%s] Generating: model=%s, prompt=%d chars, files=%d', connectorId, requestLog.model || 'default', prompt.length, files.length);
39
+ let lastError = null;
40
+ for (let attempt = 0; attempt <= retries; attempt++) {
41
+ try {
42
+ if (attempt > 0) {
43
+ this._logger.info('[%s] Retry %d/%d', connectorId, attempt, retries);
44
+ }
45
+ const startTime = Date.now();
46
+ const output = await this._executeWithTimeout(connector, config, files, prompt, timeout);
47
+ const duration = Date.now() - startTime;
48
+ // 获取响应日志
49
+ const responseLog = this._getResponseLog(connector, output);
50
+ // DEBUG: 输出完整响应信息
51
+ this._logger.debug('[%s] Response (%dms):\n%s', connectorId, duration, JSON.stringify(responseLog, null, 2));
52
+ // INFO: 输出响应摘要
53
+ this._logger.info('[%s] Success: %d outputs in %dms', connectorId, output.length, duration);
54
+ return {
55
+ success: true,
56
+ output,
57
+ requestLog,
58
+ responseLog
59
+ };
60
+ }
61
+ catch (error) {
62
+ lastError = toMediaLunaError(error);
63
+ this._logger.warn('[%s] Attempt %d failed: %s', connectorId, attempt + 1, lastError.message);
64
+ // DEBUG: 输出完整错误信息(包含堆栈和原始错误)
65
+ this._logger.debug('[%s] Error details:\n%s', connectorId, JSON.stringify({
66
+ code: lastError.code,
67
+ message: lastError.message,
68
+ stack: error instanceof Error ? error.stack : undefined,
69
+ cause: error instanceof Error ? error.cause : undefined,
70
+ raw: !(error instanceof Error) ? error : undefined
71
+ }, null, 2));
72
+ // 如果是不可重试的错误,立即返回
73
+ if (!this._isRetryable(lastError)) {
74
+ break;
75
+ }
76
+ }
77
+ }
78
+ this._logger.error('[%s] Failed after %d attempts: %s', connectorId, retries + 1, lastError?.message || 'Unknown error');
79
+ return {
80
+ ...lastError?.toResponse() ?? {
81
+ success: false,
82
+ error: '未知错误'
83
+ },
84
+ requestLog
85
+ };
86
+ }
87
+ /**
88
+ * 获取请求日志
89
+ */
90
+ _getRequestLog(connector, config, files, prompt) {
91
+ // 如果连接器提供了自定义日志方法,使用它
92
+ if (connector.getRequestLog) {
93
+ return connector.getRequestLog(config, files, prompt);
94
+ }
95
+ // 默认实现:提取常见字段
96
+ return {
97
+ endpoint: this._maskUrl(config.apiUrl),
98
+ model: config.model,
99
+ prompt,
100
+ fileCount: files.length,
101
+ parameters: this._extractSafeParams(config)
102
+ };
103
+ }
104
+ /**
105
+ * 获取响应日志
106
+ */
107
+ _getResponseLog(connector, output) {
108
+ // 如果连接器提供了自定义日志方法,使用它
109
+ if (connector.getResponseLog) {
110
+ return connector.getResponseLog(output);
111
+ }
112
+ // 默认实现
113
+ return {
114
+ outputCount: output.length,
115
+ outputTypes: output.map(o => o.kind),
116
+ meta: output.length > 0 ? output[0].meta : undefined
117
+ };
118
+ }
119
+ /**
120
+ * 脱敏 URL(隐藏 API Key 等查询参数)
121
+ */
122
+ _maskUrl(url) {
123
+ if (!url)
124
+ return undefined;
125
+ try {
126
+ const parsed = new URL(url);
127
+ // 清除可能包含敏感信息的查询参数
128
+ parsed.search = '';
129
+ return parsed.toString();
130
+ }
131
+ catch {
132
+ return url.split('?')[0];
133
+ }
134
+ }
135
+ /**
136
+ * 提取安全参数(排除敏感字段)
137
+ */
138
+ _extractSafeParams(config) {
139
+ const sensitiveKeys = ['apiKey', 'api_key', 'token', 'secret', 'password', 'authorization'];
140
+ const result = {};
141
+ for (const [key, value] of Object.entries(config)) {
142
+ if (sensitiveKeys.some(k => key.toLowerCase().includes(k.toLowerCase()))) {
143
+ continue;
144
+ }
145
+ // 排除 URL(已单独处理)
146
+ if (key === 'apiUrl' || key === 'api_url') {
147
+ continue;
148
+ }
149
+ result[key] = value;
150
+ }
151
+ return result;
152
+ }
153
+ /**
154
+ * 带超时的连接器调用
155
+ */
156
+ async _executeWithTimeout(connector, config, files, prompt, timeout) {
157
+ return new Promise((resolve, reject) => {
158
+ const timer = setTimeout(() => {
159
+ reject(Errors.timeout(`connector:${connector.id}`, timeout));
160
+ }, timeout);
161
+ connector.generate(this._ctx, config, files, prompt)
162
+ .then(result => {
163
+ clearTimeout(timer);
164
+ resolve(result);
165
+ })
166
+ .catch(error => {
167
+ clearTimeout(timer);
168
+ reject(error);
169
+ });
170
+ });
171
+ }
172
+ /**
173
+ * 判断错误是否可重试
174
+ */
175
+ _isRetryable(error) {
176
+ // 网络错误和超时可重试
177
+ const retryableCodes = [
178
+ 5002, // NETWORK_ERROR
179
+ 5003, // RATE_LIMITED
180
+ 5004, // TIMEOUT
181
+ ];
182
+ return retryableCodes.includes(error.code);
183
+ }
184
+ /**
185
+ * 获取连接器
186
+ */
187
+ getConnector(id) {
188
+ return this._connectorRegistry.get(id);
189
+ }
190
+ /**
191
+ * 检查连接器是否存在
192
+ */
193
+ hasConnector(id) {
194
+ return this._connectorRegistry.has(id);
195
+ }
196
+ }
197
+ /**
198
+ * 创建 request 中间件
199
+ *
200
+ * 这是一个核心中间件,负责在 lifecycle-request 阶段调用连接器
201
+ * 所有连接器插件都依赖此服务
202
+ */
203
+ export function createRequestMiddleware(requestService) {
204
+ return {
205
+ name: 'request',
206
+ displayName: '请求执行',
207
+ description: '调用连接器执行生成请求',
208
+ category: 'request',
209
+ phase: 'lifecycle-request',
210
+ configFields: [],
211
+ async execute(context, next) {
212
+ const { channel, prompt, files } = context;
213
+ if (!channel) {
214
+ context.setMiddlewareLog('request', { error: 'No channel configuration found' });
215
+ return Status.STOP;
216
+ }
217
+ const result = await requestService.execute(channel.connectorId, channel.connectorConfig, files, prompt);
218
+ if (!result.success) {
219
+ context.setMiddlewareLog('request', {
220
+ error: result.error,
221
+ errorCode: result.errorCode,
222
+ request: result.requestLog
223
+ });
224
+ return Status.STOP;
225
+ }
226
+ context.output = result.output || null;
227
+ // 记录完整的请求/响应日志
228
+ context.setMiddlewareLog('request', {
229
+ connector: channel.connectorId,
230
+ request: result.requestLog,
231
+ response: result.responseLog
232
+ });
233
+ return next();
234
+ }
235
+ };
236
+ }
237
+ //# sourceMappingURL=request.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.service.js","sourceRoot":"","sources":["../../src/core/request.service.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,eAAe;AAcf,OAAO,EAAE,mBAAmB,IAAI,MAAM,EAAE,MAAM,SAAS,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAkB,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAclE;;;;;;;;GAQG;AACH,MAAM,OAAO,cAAc;IACjB,IAAI,CAAS;IACb,OAAO,CAAc;IACrB,kBAAkB,CAAmB;IAE7C,YAAY,GAAY,EAAE,iBAAoC;QAC5D,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,CAAA;QACtE,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,WAAmB,EACnB,MAA2B,EAC3B,KAAiB,EACjB,MAAc,EACd,OAGC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,UAAU,EAAmB,CAAA;QAC5E,CAAC;QAED,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAEvD,SAAS;QACT,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QAExE,kBAAkB;QAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,mBAAmB,EACnB,WAAW,EACX,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CACpC,CAAA;QAED,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,sDAAsD,EACtD,WAAW,EACX,UAAU,CAAC,KAAK,IAAI,SAAS,EAC7B,MAAM,CAAC,MAAM,EACb,KAAK,CAAC,MAAM,CACb,CAAA;QAED,IAAI,SAAS,GAA0B,IAAI,CAAA;QAE3C,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,kBAAkB,EAClB,WAAW,EACX,OAAO,EACP,OAAO,CACR,CAAA;gBACH,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAE5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3C,SAAS,EACT,MAAM,EACN,KAAK,EACL,MAAM,EACN,OAAO,CACR,CAAA;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAEvC,SAAS;gBACT,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;gBAE3D,kBAAkB;gBAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,2BAA2B,EAC3B,WAAW,EACX,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CACrC,CAAA;gBAED,eAAe;gBACf,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,kCAAkC,EAClC,WAAW,EACX,MAAM,CAAC,MAAM,EACb,QAAQ,CACT,CAAA;gBAED,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM;oBACN,UAAU;oBACV,WAAW;iBACZ,CAAA;YAEH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,4BAA4B,EAC5B,WAAW,EACX,OAAO,GAAG,CAAC,EACX,SAAS,CAAC,OAAO,CAClB,CAAA;gBAED,6BAA6B;gBAC7B,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,yBAAyB,EACzB,WAAW,EACX,IAAI,CAAC,SAAS,CAAC;oBACb,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBACvD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAE,KAAa,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBAChE,GAAG,EAAE,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;iBACnD,EAAE,IAAI,EAAE,CAAC,CAAC,CACZ,CAAA;gBAED,kBAAkB;gBAClB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClC,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,mCAAmC,EACnC,WAAW,EACX,OAAO,GAAG,CAAC,EACX,SAAS,EAAE,OAAO,IAAI,eAAe,CACtC,CAAA;QAED,OAAO;YACL,GAAG,SAAS,EAAE,UAAU,EAAmB,IAAI;gBAC7C,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM;aACd;YACD,UAAU;SACX,CAAA;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,SAA8B,EAC9B,MAA2B,EAC3B,KAAiB,EACjB,MAAc;QAEd,sBAAsB;QACtB,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QACvD,CAAC;QAED,cAAc;QACd,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM;YACN,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;SAC5C,CAAA;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,SAA8B,EAC9B,MAAqB;QAErB,sBAAsB;QACtB,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;QAED,OAAO;QACP,OAAO;YACL,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACrD,CAAA;IACH,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,GAAY;QAC3B,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAA;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;YAC3B,kBAAkB;YAClB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAA;YAClB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,MAA2B;QACpD,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;QAC3F,MAAM,MAAM,GAAwB,EAAE,CAAA;QAEtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC;gBACzE,SAAQ;YACV,CAAC;YACD,gBAAgB;YAChB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBAC1C,SAAQ;YACV,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACrB,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,SAA8B,EAC9B,MAA2B,EAC3B,KAAiB,EACjB,MAAc,EACd,OAAe;QAEf,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;YAC9D,CAAC,EAAE,OAAO,CAAC,CAAA;YAEX,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;iBACjD,IAAI,CAAC,MAAM,CAAC,EAAE;gBACb,YAAY,CAAC,KAAK,CAAC,CAAA;gBACnB,OAAO,CAAC,MAAM,CAAC,CAAA;YACjB,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,CAAC,EAAE;gBACb,YAAY,CAAC,KAAK,CAAC,CAAA;gBACnB,MAAM,CAAC,KAAK,CAAC,CAAA;YACf,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,KAAqB;QACxC,aAAa;QACb,MAAM,cAAc,GAAG;YACrB,IAAI,EAAG,gBAAgB;YACvB,IAAI,EAAG,eAAe;YACtB,IAAI,EAAG,UAAU;SAClB,CAAA;QACD,OAAO,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,EAAU;QACrB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACxC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,EAAU;QACrB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACxC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,cAA8B;IACpE,OAAO;QACL,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,aAAa;QAC1B,QAAQ,EAAE,SAAkB;QAC5B,KAAK,EAAE,mBAA4B;QACnC,YAAY,EAAE,EAAE;QAEhB,KAAK,CAAC,OAAO,CAAC,OAA0B,EAAE,IAAwC;YAChF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;YAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAA;gBAChF,OAAO,MAAM,CAAC,IAAI,CAAA;YACpB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CACzC,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,eAAe,EACvB,KAAK,EACL,MAAM,CACP,CAAA;YAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE;oBAClC,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,OAAO,EAAE,MAAM,CAAC,UAAU;iBAC3B,CAAC,CAAA;gBACF,OAAO,MAAM,CAAC,IAAI,CAAA;YACpB,CAAC;YAED,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAA;YAEtC,eAAe;YACf,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE;gBAClC,SAAS,EAAE,OAAO,CAAC,WAAW;gBAC9B,OAAO,EAAE,MAAM,CAAC,UAAU;gBAC1B,QAAQ,EAAE,MAAM,CAAC,WAAW;aAC7B,CAAC,CAAA;YAEF,OAAO,IAAI,EAAE,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,270 @@
1
+ import { Context, Schema } from 'koishi';
2
+ /** 文件数据 */
3
+ export interface FileData {
4
+ data: ArrayBuffer;
5
+ mime: string;
6
+ filename: string;
7
+ }
8
+ /** 资产类型 */
9
+ export type AssetKind = 'image' | 'video' | 'audio' | 'file' | 'text';
10
+ /** 资产元数据 */
11
+ export interface AssetMeta {
12
+ [key: string]: any;
13
+ }
14
+ /** 输出资产 */
15
+ export interface OutputAsset {
16
+ kind: AssetKind;
17
+ url?: string;
18
+ content?: string;
19
+ mime?: string;
20
+ meta?: AssetMeta;
21
+ }
22
+ export declare const LIFECYCLE_PHASES: readonly ["lifecycle-prepare", "lifecycle-pre-request", "lifecycle-request", "lifecycle-post-request", "lifecycle-finalize"];
23
+ export type LifecyclePhase = typeof LIFECYCLE_PHASES[number];
24
+ /** 配置字段类型 */
25
+ export type ConfigFieldType = 'text' | 'password' | 'number' | 'boolean' | 'select' | 'select-remote' | 'textarea';
26
+ /** 配置字段选项 */
27
+ export interface ConfigFieldOption {
28
+ label: string;
29
+ value: string | number | boolean;
30
+ }
31
+ /** 配置字段定义 */
32
+ export interface ConfigField {
33
+ key: string;
34
+ label: string;
35
+ type: ConfigFieldType;
36
+ required?: boolean;
37
+ options?: ConfigFieldOption[];
38
+ optionsSource?: string;
39
+ placeholder?: string;
40
+ default?: any;
41
+ description?: string;
42
+ showWhen?: {
43
+ field: string;
44
+ value: any;
45
+ };
46
+ }
47
+ /** 卡片展示字段 */
48
+ export interface CardField {
49
+ source: 'channel' | 'connectorConfig' | 'pluginOverride' | 'pluginConfig';
50
+ key: string;
51
+ label: string;
52
+ format?: 'text' | 'password-mask' | 'number' | 'size' | 'boolean' | 'currency';
53
+ suffix?: string;
54
+ configGroup?: string;
55
+ pluginId?: string;
56
+ }
57
+ /** 中间件类别 */
58
+ export type MiddlewareCategory = 'billing' | 'transform' | 'validation' | 'preset' | 'cache' | 'recording' | 'request' | 'custom';
59
+ /** 中间件执行状态 */
60
+ export declare enum MiddlewareRunStatus {
61
+ SKIPPED = 0,
62
+ STOP = 1,
63
+ CONTINUE = 2
64
+ }
65
+ /** 渠道配置(简化版,用于中间件上下文) */
66
+ export interface ChannelConfig {
67
+ id: number;
68
+ name: string;
69
+ enabled: boolean;
70
+ connectorId: string;
71
+ connectorConfig: Record<string, any>;
72
+ pluginOverrides: Record<string, any>;
73
+ tags: string[];
74
+ }
75
+ /** 中间件上下文 */
76
+ export interface MiddlewareContext {
77
+ ctx: Context;
78
+ session: import('koishi').Session | null;
79
+ prompt: string;
80
+ files: FileData[];
81
+ parameters: Record<string, any>;
82
+ channelId: number;
83
+ channel: ChannelConfig | null;
84
+ output: OutputAsset[] | null;
85
+ /** 用户 ID(Koishi user.id) */
86
+ uid: number | null;
87
+ store: Map<string, any>;
88
+ taskId?: number;
89
+ getMiddlewareConfig<T>(name: string): T | null | Promise<T | null>;
90
+ setMiddlewareLog(name: string, data: any): void;
91
+ getMiddlewareLogs(): Record<string, any>;
92
+ /** 获取插件服务(推荐使用此方法而非直接访问 ctx.mediaLuna) */
93
+ getService<T>(name: string): T | undefined;
94
+ }
95
+ /** 中间件执行函数 */
96
+ export type MiddlewareExecuteFn = (context: MiddlewareContext, next: () => Promise<MiddlewareRunStatus>) => Promise<MiddlewareRunStatus>;
97
+ /** 中间件定义 */
98
+ export interface MiddlewareDefinition {
99
+ name: string;
100
+ displayName: string;
101
+ description?: string;
102
+ category: MiddlewareCategory;
103
+ phase: LifecyclePhase;
104
+ before?: string[];
105
+ after?: string[];
106
+ configSchema?: Schema;
107
+ configFields?: ConfigField[];
108
+ configGroup?: string;
109
+ cardFields?: CardField[];
110
+ execute: MiddlewareExecuteFn;
111
+ }
112
+ /** 连接器支持的类型 */
113
+ export type ConnectorSupportedType = 'image' | 'video' | 'audio';
114
+ /** 连接器配置字段 (与 ConfigField 相同,别名用于清晰) */
115
+ export type ConnectorField = ConfigField;
116
+ /** 卡片展示字段(别名) */
117
+ export type CardDisplayField = CardField;
118
+ /**
119
+ * 连接器请求日志
120
+ * 用于记录发送给 API 的实际请求内容
121
+ */
122
+ export interface ConnectorRequestLog {
123
+ /** API 端点(可脱敏) */
124
+ endpoint?: string;
125
+ /** 模型名称 */
126
+ model?: string;
127
+ /** 最终发送的 prompt */
128
+ prompt: string;
129
+ /** 输入文件数量 */
130
+ fileCount?: number;
131
+ /** 其他关键参数(不含敏感信息如 API Key) */
132
+ parameters?: Record<string, any>;
133
+ }
134
+ /**
135
+ * 连接器响应日志
136
+ * 用于记录 API 返回的关键信息
137
+ */
138
+ export interface ConnectorResponseLog {
139
+ /** 输出数量 */
140
+ outputCount: number;
141
+ /** 输出类型 */
142
+ outputTypes?: AssetKind[];
143
+ /** API 返回的元数据(如 revised_prompt、seed 等) */
144
+ meta?: Record<string, any>;
145
+ }
146
+ /** 连接器定义 */
147
+ export interface ConnectorDefinition {
148
+ id: string;
149
+ name: string;
150
+ supportedTypes: ConnectorSupportedType[];
151
+ fields: ConnectorField[];
152
+ cardFields?: CardDisplayField[];
153
+ /**
154
+ * 执行生成
155
+ */
156
+ generate: (ctx: Context, config: Record<string, any>, files: FileData[], prompt: string) => Promise<OutputAsset[]>;
157
+ /**
158
+ * 获取请求日志(可选)
159
+ * 返回将要发送给 API 的关键信息,用于 debug 日志
160
+ * 注意:不要包含敏感信息(API Key 等)
161
+ */
162
+ getRequestLog?: (config: Record<string, any>, files: FileData[], prompt: string) => ConnectorRequestLog;
163
+ /**
164
+ * 获取响应日志(可选)
165
+ * 从输出中提取日志信息
166
+ */
167
+ getResponseLog?: (output: OutputAsset[]) => ConnectorResponseLog;
168
+ }
169
+ /** 生成请求 */
170
+ export interface GenerationRequest {
171
+ channel: number | string;
172
+ prompt: string;
173
+ files?: FileData[];
174
+ parameters?: Record<string, any>;
175
+ session?: import('koishi').Session | null;
176
+ /** 用户 ID(可选,用于计费和记录) */
177
+ uid?: number;
178
+ }
179
+ /** 生成结果 */
180
+ export interface GenerationResult {
181
+ success: boolean;
182
+ output?: OutputAsset[];
183
+ error?: string;
184
+ errorCode?: number;
185
+ errorDetails?: Record<string, any>;
186
+ taskId?: number;
187
+ duration?: number;
188
+ }
189
+ /** 日志器接口 */
190
+ export interface PluginLogger {
191
+ debug(message: string, ...args: any[]): void;
192
+ info(message: string, ...args: any[]): void;
193
+ warn(message: string, ...args: any[]): void;
194
+ error(message: string, ...args: any[]): void;
195
+ }
196
+ /** 服务定义 */
197
+ export interface ServiceDefinition {
198
+ name: string;
199
+ factory: (ctx: PluginContext) => any;
200
+ }
201
+ /** 设置操作 */
202
+ export interface SettingsAction {
203
+ name: string;
204
+ label: string;
205
+ type?: 'primary' | 'error' | 'default';
206
+ icon?: string;
207
+ apiEvent: string;
208
+ }
209
+ /** 插件上下文 */
210
+ export interface PluginContext {
211
+ /** Koishi Context */
212
+ ctx: Context;
213
+ /** 插件 ID */
214
+ pluginId: string;
215
+ /** 日志器 */
216
+ logger: PluginLogger;
217
+ /** 获取当前插件配置 */
218
+ getConfig<T extends Record<string, any>>(): T;
219
+ /** 更新配置 */
220
+ updateConfig(partial: Record<string, any>): void;
221
+ /** 获取服务 */
222
+ getService<T>(name: string): T | undefined;
223
+ /** 注册 dispose 回调 */
224
+ onDispose(callback: () => void): void;
225
+ }
226
+ /** 插件定义 */
227
+ export interface PluginDefinition {
228
+ /** 插件唯一标识 */
229
+ id: string;
230
+ /** 显示名称 */
231
+ name: string;
232
+ /** 描述 */
233
+ description?: string;
234
+ /** 版本 */
235
+ version?: string;
236
+ /** 依赖的其他插件 */
237
+ dependencies?: string[];
238
+ middlewares?: MiddlewareDefinition[];
239
+ connector?: ConnectorDefinition;
240
+ services?: ServiceDefinition[];
241
+ configFields?: ConfigField[];
242
+ configDefaults?: Record<string, any>;
243
+ cardFields?: CardField[];
244
+ settingsActions?: SettingsAction[];
245
+ onLoad?: (ctx: PluginContext) => void | Promise<void>;
246
+ onUnload?: () => void | Promise<void>;
247
+ }
248
+ /** 插件信息(API 返回) */
249
+ export interface PluginInfo {
250
+ id: string;
251
+ name: string;
252
+ description?: string;
253
+ version?: string;
254
+ enabled: boolean;
255
+ configFields: ConfigField[];
256
+ config: Record<string, any>;
257
+ actions: SettingsAction[];
258
+ middlewares: Array<{
259
+ name: string;
260
+ displayName: string;
261
+ phase: string;
262
+ enabled: boolean;
263
+ }>;
264
+ connector?: {
265
+ id: string;
266
+ name: string;
267
+ supportedTypes: ConnectorSupportedType[];
268
+ };
269
+ }
270
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ // Core Types - 核心类型定义
2
+ // ============ 生命周期阶段 ============
3
+ export const LIFECYCLE_PHASES = [
4
+ 'lifecycle-prepare', // 准备:验证、权限检查、初始化上下文
5
+ 'lifecycle-pre-request', // 前置:预设应用、翻译、prompt 修改
6
+ 'lifecycle-request', // 请求:调用 Connector
7
+ 'lifecycle-post-request', // 后置:缓存、审核、输出处理
8
+ 'lifecycle-finalize' // 完成:计费结算、任务记录
9
+ ];
10
+ /** 中间件执行状态 */
11
+ export var MiddlewareRunStatus;
12
+ (function (MiddlewareRunStatus) {
13
+ MiddlewareRunStatus[MiddlewareRunStatus["SKIPPED"] = 0] = "SKIPPED";
14
+ MiddlewareRunStatus[MiddlewareRunStatus["STOP"] = 1] = "STOP";
15
+ MiddlewareRunStatus[MiddlewareRunStatus["CONTINUE"] = 2] = "CONTINUE";
16
+ })(MiddlewareRunStatus || (MiddlewareRunStatus = {}));
17
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,sBAAsB;AA8BtB,mCAAmC;AAEnC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,mBAAmB,EAAO,oBAAoB;IAC9C,uBAAuB,EAAG,uBAAuB;IACjD,mBAAmB,EAAO,kBAAkB;IAC5C,wBAAwB,EAAE,gBAAgB;IAC1C,oBAAoB,CAAM,eAAe;CACjC,CAAA;AAuDV,cAAc;AACd,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,mEAAW,CAAA;IACX,6DAAQ,CAAA;IACR,qEAAY,CAAA;AACd,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B"}
@@ -0,0 +1,6 @@
1
+ import { Context } from 'koishi';
2
+ /**
3
+ * 扩展数据库
4
+ */
5
+ export declare function extendDatabase(ctx: Context): void;
6
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAIhC;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAsFjD"}