@seawork/server 1.0.7 → 1.0.10-rc.5

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 (178) hide show
  1. package/dist/server/client/daemon-client.d.ts +32 -1
  2. package/dist/server/client/daemon-client.d.ts.map +1 -1
  3. package/dist/server/client/daemon-client.js +69 -0
  4. package/dist/server/client/daemon-client.js.map +1 -1
  5. package/dist/server/server/agent/agent-management-mcp.d.ts.map +1 -1
  6. package/dist/server/server/agent/agent-management-mcp.js +6 -5
  7. package/dist/server/server/agent/agent-management-mcp.js.map +1 -1
  8. package/dist/server/server/agent/agent-response-loop.d.ts.map +1 -1
  9. package/dist/server/server/agent/agent-response-loop.js +0 -1
  10. package/dist/server/server/agent/agent-response-loop.js.map +1 -1
  11. package/dist/server/server/agent/agent-storage.d.ts +68 -68
  12. package/dist/server/server/agent/mcp-server.d.ts.map +1 -1
  13. package/dist/server/server/agent/mcp-server.js +6 -5
  14. package/dist/server/server/agent/mcp-server.js.map +1 -1
  15. package/dist/server/server/agent/mcp-shared.d.ts +30 -30
  16. package/dist/server/server/agent/provider-manifest.d.ts +2 -1
  17. package/dist/server/server/agent/provider-manifest.d.ts.map +1 -1
  18. package/dist/server/server/agent/provider-manifest.js +3 -64
  19. package/dist/server/server/agent/provider-manifest.js.map +1 -1
  20. package/dist/server/server/agent/provider-registry.d.ts.map +1 -1
  21. package/dist/server/server/agent/provider-registry.js +2 -10
  22. package/dist/server/server/agent/provider-registry.js.map +1 -1
  23. package/dist/server/server/agent/providers/claude/claude-models.d.ts.map +1 -1
  24. package/dist/server/server/agent/providers/claude/claude-models.js +3 -0
  25. package/dist/server/server/agent/providers/claude/claude-models.js.map +1 -1
  26. package/dist/server/server/agent/providers/claude/task-notification-tool-call.d.ts +2 -2
  27. package/dist/server/server/agent/providers/claude-agent.d.ts +2 -1
  28. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  29. package/dist/server/server/agent/providers/claude-agent.js +167 -22
  30. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  31. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
  32. package/dist/server/server/agent/providers/codex-app-server-agent.js +106 -3
  33. package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
  34. package/dist/server/server/agent/providers/codex-rollout-timeline.d.ts.map +1 -1
  35. package/dist/server/server/agent/providers/codex-rollout-timeline.js +76 -0
  36. package/dist/server/server/agent/providers/codex-rollout-timeline.js.map +1 -1
  37. package/dist/server/server/agent/providers/seawork-models.d.ts.map +1 -1
  38. package/dist/server/server/agent/providers/seawork-models.js +9 -0
  39. package/dist/server/server/agent/providers/seawork-models.js.map +1 -1
  40. package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +16 -16
  41. package/dist/server/server/bug-report-handler.d.ts +9 -0
  42. package/dist/server/server/bug-report-handler.d.ts.map +1 -0
  43. package/dist/server/server/bug-report-handler.js +111 -0
  44. package/dist/server/server/bug-report-handler.js.map +1 -0
  45. package/dist/server/server/bug-report-redact.d.ts +12 -0
  46. package/dist/server/server/bug-report-redact.d.ts.map +1 -0
  47. package/dist/server/server/bug-report-redact.js +63 -0
  48. package/dist/server/server/bug-report-redact.js.map +1 -0
  49. package/dist/server/server/chat/chat-rpc-schemas.d.ts +26 -26
  50. package/dist/server/server/chat/chat-types.d.ts +2 -2
  51. package/dist/server/server/exports.d.ts +4 -2
  52. package/dist/server/server/exports.d.ts.map +1 -1
  53. package/dist/server/server/exports.js +3 -0
  54. package/dist/server/server/exports.js.map +1 -1
  55. package/dist/server/server/index.js +47 -0
  56. package/dist/server/server/index.js.map +1 -1
  57. package/dist/server/server/loop/rpc-schemas.d.ts +775 -775
  58. package/dist/server/server/loop-service.d.ts +108 -108
  59. package/dist/server/server/persisted-config.d.ts +121 -121
  60. package/dist/server/server/sac/errors.d.ts +1 -0
  61. package/dist/server/server/sac/errors.d.ts.map +1 -1
  62. package/dist/server/server/sac/errors.js +2 -1
  63. package/dist/server/server/sac/errors.js.map +1 -1
  64. package/dist/server/server/sac/generate.d.ts +19 -11
  65. package/dist/server/server/sac/generate.d.ts.map +1 -1
  66. package/dist/server/server/sac/generate.js +131 -36
  67. package/dist/server/server/sac/generate.js.map +1 -1
  68. package/dist/server/server/sac/index.d.ts +8 -10
  69. package/dist/server/server/sac/index.d.ts.map +1 -1
  70. package/dist/server/server/sac/index.js +5 -17
  71. package/dist/server/server/sac/index.js.map +1 -1
  72. package/dist/server/server/sac/providers/alibaba.d.ts +2 -0
  73. package/dist/server/server/sac/providers/alibaba.d.ts.map +1 -0
  74. package/dist/server/server/sac/providers/alibaba.js +506 -0
  75. package/dist/server/server/sac/providers/alibaba.js.map +1 -0
  76. package/dist/server/server/sac/providers/audio.d.ts +2 -0
  77. package/dist/server/server/sac/providers/audio.d.ts.map +1 -0
  78. package/dist/server/server/sac/providers/audio.js +57 -0
  79. package/dist/server/server/sac/providers/audio.js.map +1 -0
  80. package/dist/server/server/sac/providers/kling.d.ts +2 -0
  81. package/dist/server/server/sac/providers/kling.d.ts.map +1 -0
  82. package/dist/server/server/sac/providers/kling.js +589 -0
  83. package/dist/server/server/sac/providers/kling.js.map +1 -0
  84. package/dist/server/server/sac/providers/nano.d.ts +2 -0
  85. package/dist/server/server/sac/providers/nano.d.ts.map +1 -0
  86. package/dist/server/server/sac/providers/nano.js +37 -0
  87. package/dist/server/server/sac/providers/nano.js.map +1 -0
  88. package/dist/server/server/sac/providers/pixverse.d.ts +2 -0
  89. package/dist/server/server/sac/providers/pixverse.d.ts.map +1 -0
  90. package/dist/server/server/sac/providers/pixverse.js +1017 -0
  91. package/dist/server/server/sac/providers/pixverse.js.map +1 -0
  92. package/dist/server/server/sac/providers/registry.d.ts +34 -0
  93. package/dist/server/server/sac/providers/registry.d.ts.map +1 -0
  94. package/dist/server/server/sac/providers/registry.js +57 -0
  95. package/dist/server/server/sac/providers/registry.js.map +1 -0
  96. package/dist/server/server/sac/providers/seaart.d.ts +1 -4
  97. package/dist/server/server/sac/providers/seaart.d.ts.map +1 -1
  98. package/dist/server/server/sac/providers/seaart.js +8 -18
  99. package/dist/server/server/sac/providers/seaart.js.map +1 -1
  100. package/dist/server/server/sac/providers/store.d.ts +9 -5
  101. package/dist/server/server/sac/providers/store.d.ts.map +1 -1
  102. package/dist/server/server/sac/providers/store.js +0 -3
  103. package/dist/server/server/sac/providers/store.js.map +1 -1
  104. package/dist/server/server/sac/providers/tencent-3d.d.ts +2 -0
  105. package/dist/server/server/sac/providers/tencent-3d.d.ts.map +1 -0
  106. package/dist/server/server/sac/providers/tencent-3d.js +210 -0
  107. package/dist/server/server/sac/providers/tencent-3d.js.map +1 -0
  108. package/dist/server/server/sac/providers/tencent-image.d.ts +2 -0
  109. package/dist/server/server/sac/providers/tencent-image.d.ts.map +1 -0
  110. package/dist/server/server/sac/providers/tencent-image.js +90 -0
  111. package/dist/server/server/sac/providers/tencent-image.js.map +1 -0
  112. package/dist/server/server/sac/providers/tencent-video.d.ts +2 -0
  113. package/dist/server/server/sac/providers/tencent-video.d.ts.map +1 -0
  114. package/dist/server/server/sac/providers/tencent-video.js +103 -0
  115. package/dist/server/server/sac/providers/tencent-video.js.map +1 -0
  116. package/dist/server/server/sac/providers/tripo3d.d.ts +2 -0
  117. package/dist/server/server/sac/providers/tripo3d.d.ts.map +1 -0
  118. package/dist/server/server/sac/providers/tripo3d.js +302 -0
  119. package/dist/server/server/sac/providers/tripo3d.js.map +1 -0
  120. package/dist/server/server/sac/providers/vidu.d.ts +2 -0
  121. package/dist/server/server/sac/providers/vidu.d.ts.map +1 -0
  122. package/dist/server/server/sac/providers/vidu.js +965 -0
  123. package/dist/server/server/sac/providers/vidu.js.map +1 -0
  124. package/dist/server/server/sac/providers/volces-3d.d.ts +2 -0
  125. package/dist/server/server/sac/providers/volces-3d.d.ts.map +1 -0
  126. package/dist/server/server/sac/providers/volces-3d.js +77 -0
  127. package/dist/server/server/sac/providers/volces-3d.js.map +1 -0
  128. package/dist/server/server/sac/providers/volces-video.d.ts +2 -0
  129. package/dist/server/server/sac/providers/volces-video.d.ts.map +1 -0
  130. package/dist/server/server/sac/providers/volces-video.js +392 -0
  131. package/dist/server/server/sac/providers/volces-video.js.map +1 -0
  132. package/dist/server/server/sac/providers/volces.d.ts +1 -4
  133. package/dist/server/server/sac/providers/volces.d.ts.map +1 -1
  134. package/dist/server/server/sac/providers/volces.js +279 -66
  135. package/dist/server/server/sac/providers/volces.js.map +1 -1
  136. package/dist/server/server/sac/types.d.ts +13 -30
  137. package/dist/server/server/sac/types.d.ts.map +1 -1
  138. package/dist/server/server/schedule/rpc-schemas.d.ts +493 -493
  139. package/dist/server/server/schedule/types.d.ts +140 -140
  140. package/dist/server/server/session.d.ts +9 -2
  141. package/dist/server/server/session.d.ts.map +1 -1
  142. package/dist/server/server/session.js +137 -19
  143. package/dist/server/server/session.js.map +1 -1
  144. package/dist/server/server/speech/speech-types.d.ts +2 -2
  145. package/dist/server/server/workspace-registry.d.ts +4 -4
  146. package/dist/server/shared/messages.d.ts +17455 -15917
  147. package/dist/server/shared/messages.d.ts.map +1 -1
  148. package/dist/server/shared/messages.js +83 -0
  149. package/dist/server/shared/messages.js.map +1 -1
  150. package/dist/server/utils/spawn.d.ts.map +1 -1
  151. package/dist/server/utils/spawn.js +8 -3
  152. package/dist/server/utils/spawn.js.map +1 -1
  153. package/dist/server/utils/worktree-metadata.d.ts +4 -4
  154. package/package.json +7 -9
  155. package/dist/server/server/agent/providers/acp-agent.d.ts +0 -202
  156. package/dist/server/server/agent/providers/acp-agent.d.ts.map +0 -1
  157. package/dist/server/server/agent/providers/acp-agent.js +0 -1650
  158. package/dist/server/server/agent/providers/acp-agent.js.map +0 -1
  159. package/dist/server/server/agent/providers/copilot-acp-agent.d.ts +0 -16
  160. package/dist/server/server/agent/providers/copilot-acp-agent.d.ts.map +0 -1
  161. package/dist/server/server/agent/providers/copilot-acp-agent.js +0 -95
  162. package/dist/server/server/agent/providers/copilot-acp-agent.js.map +0 -1
  163. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts +0 -3
  164. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts.map +0 -1
  165. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js +0 -39
  166. package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js.map +0 -1
  167. package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts +0 -13
  168. package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts.map +0 -1
  169. package/dist/server/server/agent/providers/opencode/tool-call-mapper.js +0 -144
  170. package/dist/server/server/agent/providers/opencode/tool-call-mapper.js.map +0 -1
  171. package/dist/server/server/agent/providers/opencode-agent.d.ts +0 -121
  172. package/dist/server/server/agent/providers/opencode-agent.d.ts.map +0 -1
  173. package/dist/server/server/agent/providers/opencode-agent.js +0 -1649
  174. package/dist/server/server/agent/providers/opencode-agent.js.map +0 -1
  175. package/dist/server/server/agent/providers/pi-acp-agent.d.ts +0 -28
  176. package/dist/server/server/agent/providers/pi-acp-agent.d.ts.map +0 -1
  177. package/dist/server/server/agent/providers/pi-acp-agent.js +0 -302
  178. package/dist/server/server/agent/providers/pi-acp-agent.js.map +0 -1
@@ -0,0 +1,506 @@
1
+ import { SACError as CLIError, ExitCode } from "../errors.js";
2
+ import { registerProvider } from "./store.js";
3
+ const IMAGE_MODELS = [
4
+ 'alibaba_wan27_image',
5
+ 'alibaba_wan27_image_pro',
6
+ ];
7
+ const VIDEO_T2V_27_MODELS = [
8
+ 'alibaba_wan27_t2v',
9
+ ];
10
+ const VIDEO_T2V_26_MODELS = [
11
+ 'alibaba_wanx26_t2v',
12
+ ];
13
+ const VIDEO_I2V_27_MODELS = [
14
+ 'alibaba_wan27_i2v',
15
+ ];
16
+ const VIDEO_I2V_26_MODELS = [
17
+ 'alibaba_wanx26_i2v',
18
+ 'alibaba_wanx26_i2v_flash',
19
+ ];
20
+ const VIDEO_REF_27_MODELS = [
21
+ 'alibaba_wan27_r2v',
22
+ ];
23
+ const VIDEO_REF_26_MODELS = [
24
+ 'alibaba_wanx26_reference',
25
+ ];
26
+ const VIDEO_EDIT_MODELS = [
27
+ 'alibaba_wan27_videoedit',
28
+ ];
29
+ const WAN27_RATIOS = new Set(['16:9', '9:16', '1:1', '4:3', '3:4']);
30
+ const WAN27_VIDEO_RESOLUTIONS = new Set(['720P', '1080P']);
31
+ function maybeString(value) {
32
+ if (typeof value !== 'string' || value.length === 0)
33
+ return undefined;
34
+ return value;
35
+ }
36
+ function maybeStringArray(value) {
37
+ if (Array.isArray(value)) {
38
+ return value.filter((item) => typeof item === 'string' && item.length > 0);
39
+ }
40
+ if (typeof value === 'string' && value.length > 0)
41
+ return [value];
42
+ return [];
43
+ }
44
+ function assertUnsupported(model, value, flagName, hint) {
45
+ if (value === undefined)
46
+ return;
47
+ throw new CLIError(hint ?? `Model "${model}" does not support --${flagName}.`, ExitCode.USAGE);
48
+ }
49
+ function parseEnum(model, value, flagName, allowed) {
50
+ if (value === undefined)
51
+ return undefined;
52
+ if (typeof value !== 'string' || !allowed.has(value)) {
53
+ throw new CLIError(`Model "${model}" requires --${flagName} to be one of: ${Array.from(allowed).join(', ')}.`, ExitCode.USAGE);
54
+ }
55
+ return value;
56
+ }
57
+ function collectImageInputs(flags) {
58
+ const images = maybeStringArray(flags.imageUrls);
59
+ const imageUrl = maybeString(flags.imageUrl);
60
+ return imageUrl ? [imageUrl, ...images] : images;
61
+ }
62
+ function requireSingleImage(model, flags) {
63
+ const primary = maybeString(flags.imageUrl);
64
+ const extras = maybeStringArray(flags.imageUrls);
65
+ if (!primary || extras.length > 0) {
66
+ throw new CLIError(`Model "${model}" requires exactly one input image via --image-url.`, ExitCode.USAGE);
67
+ }
68
+ return primary;
69
+ }
70
+ function requireReferenceUrls(model, flags) {
71
+ const refs = maybeStringArray(flags.referenceUrls);
72
+ if (refs.length === 0) {
73
+ throw new CLIError(`Model "${model}" requires --reference-urls.`, ExitCode.USAGE);
74
+ }
75
+ return refs;
76
+ }
77
+ function buildEnvelope(model, params) {
78
+ return {
79
+ model,
80
+ moderation: true,
81
+ input: [{ params }],
82
+ metadata: {},
83
+ };
84
+ }
85
+ function buildMessageContent(prompt, flags) {
86
+ const content = [];
87
+ for (const image of collectImageInputs(flags)) {
88
+ content.push({ image });
89
+ }
90
+ content.push({ text: prompt });
91
+ return content;
92
+ }
93
+ function assertUnsupportedImageFlags(model, flags) {
94
+ assertUnsupported(model, flags.modelVerNo, 'model-ver-no');
95
+ assertUnsupported(model, flags.steps, 'steps');
96
+ assertUnsupported(model, flags.cfgScale, 'cfg-scale');
97
+ assertUnsupported(model, flags.denoise, 'denoise');
98
+ assertUnsupported(model, flags.action, 'action');
99
+ assertUnsupported(model, flags.width, 'width');
100
+ assertUnsupported(model, flags.height, 'height');
101
+ assertUnsupported(model, flags.aspectRatio, 'aspect-ratio');
102
+ assertUnsupported(model, flags.resolution, 'resolution');
103
+ assertUnsupported(model, flags.logoAdd, 'logo-add');
104
+ assertUnsupported(model, flags.revise, 'revise');
105
+ assertUnsupported(model, flags.negativePrompt, 'negative-prompt');
106
+ assertUnsupported(model, flags.externalTaskId, 'external-task-id');
107
+ assertUnsupported(model, flags.elementIds, 'element-ids');
108
+ assertUnsupported(model, flags.resultType, 'result-type');
109
+ assertUnsupported(model, flags.seriesAmount, 'series-amount');
110
+ assertUnsupported(model, flags.scale, 'scale');
111
+ assertUnsupported(model, flags.templateId, 'template-id');
112
+ assertUnsupported(model, flags.reqKey, 'req-key');
113
+ assertUnsupported(model, flags.subReqKey, 'sub-req-key');
114
+ assertUnsupported(model, flags.refType, 'ref-type');
115
+ assertUnsupported(model, flags.gpen, 'gpen');
116
+ assertUnsupported(model, flags.skin, 'skin');
117
+ assertUnsupported(model, flags.skinUnifi, 'skin-unifi');
118
+ assertUnsupported(model, flags.genMode, 'gen-mode');
119
+ }
120
+ function assertUnsupportedAlibabaVideoFlags(model, flags) {
121
+ const entries = [
122
+ ['short', flags.short],
123
+ ['fps', flags.fps],
124
+ ['frames', flags.frames],
125
+ ['service-tier', flags.serviceTier],
126
+ ['expires-after', flags.expiresAfter],
127
+ ['style', flags.style],
128
+ ['payload', flags.payload],
129
+ ['callback-url', flags.callbackUrl],
130
+ ['off-peak', flags.offPeak],
131
+ ['recommend-prompt', flags.recommendPrompt],
132
+ ['enhance-prompt', flags.enhancePrompt],
133
+ ['template', flags.template],
134
+ ['template-params', flags.templateParams],
135
+ ['language', flags.language],
136
+ ['creative', flags.creative],
137
+ ['add-subtitle', flags.addSubtitle],
138
+ ['remove-audio', flags.removeAudio],
139
+ ['watermark-position', flags.watermarkPosition],
140
+ ['watermark-url', flags.watermarkUrl],
141
+ ['meta-data', flags.metaData],
142
+ ['external-task-id', flags.externalTaskId],
143
+ ['element-ids', flags.elementIds],
144
+ ['effect-scene', flags.effectScene],
145
+ ['character-orientation', flags.characterOrientation],
146
+ ['keep-original-sound', flags.keepOriginalSound],
147
+ ['video-refer-type', flags.videoReferType],
148
+ ['lipsync-mode', flags.lipsyncMode],
149
+ ['camera-fixed', flags.cameraFixed],
150
+ ['return-last-frame', flags.returnLastFrame],
151
+ ['draft', flags.draft],
152
+ ['draft-task-id', flags.draftTaskId],
153
+ ['mask-urls', flags.maskUrls],
154
+ ['movement-amplitude', flags.movementAmplitude],
155
+ ['mode', flags.mode],
156
+ ['cfg-scale', flags.cfgScale],
157
+ ['video-quality', flags.videoQuality],
158
+ ['pe-fast-mode', flags.peFastMode],
159
+ ['audio-id', flags.audioId],
160
+ ['voice-id', flags.voiceId],
161
+ ['voice-language', flags.voiceLanguage],
162
+ ['voice-speed', flags.voiceSpeed],
163
+ ['bgm', flags.bgm],
164
+ ['sound', flags.sound],
165
+ ['sounds', flags.sounds],
166
+ ['bitrate', flags.bitrate],
167
+ ['extension-type', flags.extensionType],
168
+ ['character-reference-url', flags.characterReferenceUrl],
169
+ ['style-reference-url', flags.styleReferenceUrl],
170
+ ['character-reference-weight', flags.characterReferenceWeight],
171
+ ['style-reference-weight', flags.styleReferenceWeight],
172
+ ];
173
+ for (const [flagName, value] of entries) {
174
+ assertUnsupported(model, value, flagName);
175
+ }
176
+ }
177
+ registerProvider({
178
+ provider: 'alibaba',
179
+ category: 'image',
180
+ models: IMAGE_MODELS,
181
+ buildBody(model, prompt, flags) {
182
+ assertUnsupportedImageFlags(model, flags);
183
+ const upstreamInput = {
184
+ messages: [{ role: 'user', content: buildMessageContent(prompt, flags) }],
185
+ };
186
+ const upstreamParameters = {};
187
+ if (flags.size)
188
+ upstreamParameters['size'] = flags.size;
189
+ if (flags.n)
190
+ upstreamParameters['n'] = flags.n;
191
+ if (flags.seed !== undefined)
192
+ upstreamParameters['seed'] = flags.seed;
193
+ if (flags.watermark !== undefined)
194
+ upstreamParameters['watermark'] = flags.watermark;
195
+ const params = { input: upstreamInput };
196
+ if (Object.keys(upstreamParameters).length > 0)
197
+ params['parameters'] = upstreamParameters;
198
+ return buildEnvelope(model, params);
199
+ },
200
+ });
201
+ registerProvider({
202
+ provider: 'alibaba',
203
+ category: 'video',
204
+ models: VIDEO_T2V_27_MODELS,
205
+ buildBody(model, prompt, flags) {
206
+ assertUnsupported(model, flags.imageUrl, 'image-url');
207
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
208
+ assertUnsupported(model, flags.imageUrls, 'image-urls');
209
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
210
+ assertUnsupported(model, flags.videoUrl, 'video-url');
211
+ assertUnsupported(model, flags.videoId, 'video-id');
212
+ assertUnsupported(model, flags.size, 'size');
213
+ assertUnsupported(model, flags.shotType, 'shot-type');
214
+ assertUnsupported(model, flags.audio, 'audio');
215
+ assertUnsupportedAlibabaVideoFlags(model, flags);
216
+ const upstreamInput = { prompt };
217
+ if (flags.audioUrl)
218
+ upstreamInput['audio_url'] = flags.audioUrl;
219
+ const upstreamParameters = {};
220
+ if (flags.resolution !== undefined) {
221
+ upstreamParameters['resolution'] = parseEnum(model, flags.resolution, 'resolution', WAN27_VIDEO_RESOLUTIONS);
222
+ }
223
+ if (flags.aspectRatio !== undefined) {
224
+ upstreamParameters['ratio'] = parseEnum(model, flags.aspectRatio, 'aspect-ratio', WAN27_RATIOS);
225
+ }
226
+ if (flags.duration !== undefined)
227
+ upstreamParameters['duration'] = flags.duration;
228
+ if (flags.seed !== undefined)
229
+ upstreamParameters['seed'] = flags.seed;
230
+ if (flags.watermark !== undefined)
231
+ upstreamParameters['watermark'] = flags.watermark;
232
+ if (flags.negativePrompt)
233
+ upstreamParameters['negative_prompt'] = flags.negativePrompt;
234
+ const params = { input: upstreamInput };
235
+ if (Object.keys(upstreamParameters).length > 0)
236
+ params['parameters'] = upstreamParameters;
237
+ return buildEnvelope(model, params);
238
+ },
239
+ });
240
+ registerProvider({
241
+ provider: 'alibaba',
242
+ category: 'video',
243
+ models: VIDEO_T2V_26_MODELS,
244
+ buildBody(model, prompt, flags) {
245
+ assertUnsupported(model, flags.imageUrl, 'image-url');
246
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
247
+ assertUnsupported(model, flags.imageUrls, 'image-urls');
248
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
249
+ assertUnsupported(model, flags.videoUrl, 'video-url');
250
+ assertUnsupported(model, flags.videoId, 'video-id');
251
+ assertUnsupported(model, flags.aspectRatio, 'aspect-ratio');
252
+ assertUnsupported(model, flags.resolution, 'resolution');
253
+ assertUnsupported(model, flags.watermark, 'watermark');
254
+ assertUnsupportedAlibabaVideoFlags(model, flags);
255
+ const upstreamInput = { prompt };
256
+ if (flags.audioUrl)
257
+ upstreamInput['audio_url'] = flags.audioUrl;
258
+ const upstreamParameters = {};
259
+ if (flags.duration !== undefined)
260
+ upstreamParameters['duration'] = flags.duration;
261
+ if (flags.size)
262
+ upstreamParameters['size'] = flags.size;
263
+ if (flags.shotType)
264
+ upstreamParameters['shot_type'] = flags.shotType;
265
+ if (flags.seed !== undefined)
266
+ upstreamParameters['seed'] = flags.seed;
267
+ if (flags.audio !== undefined)
268
+ upstreamParameters['audio'] = flags.audio;
269
+ if (flags.negativePrompt)
270
+ upstreamParameters['negative_prompt'] = flags.negativePrompt;
271
+ const params = { input: upstreamInput };
272
+ if (Object.keys(upstreamParameters).length > 0)
273
+ params['parameters'] = upstreamParameters;
274
+ return buildEnvelope(model, params);
275
+ },
276
+ });
277
+ registerProvider({
278
+ provider: 'alibaba',
279
+ category: 'video',
280
+ models: VIDEO_I2V_27_MODELS,
281
+ requiresPrompt() {
282
+ return false;
283
+ },
284
+ buildBody(model, prompt, flags) {
285
+ assertUnsupportedAlibabaVideoFlags(model, flags);
286
+ assertUnsupported(model, flags.imageUrls, 'image-urls');
287
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
288
+ assertUnsupported(model, flags.size, 'size');
289
+ assertUnsupported(model, flags.shotType, 'shot-type');
290
+ assertUnsupported(model, flags.audio, 'audio');
291
+ const media = [
292
+ { type: 'first_frame', url: requireSingleImage(model, flags) },
293
+ ];
294
+ const lastFrame = maybeString(flags.imageTailUrl);
295
+ if (lastFrame)
296
+ media.push({ type: 'last_frame', url: lastFrame });
297
+ const drivingAudio = maybeString(flags.audioUrl);
298
+ if (drivingAudio)
299
+ media.push({ type: 'driving_audio', url: drivingAudio });
300
+ const firstClip = maybeString(flags.videoUrl);
301
+ if (firstClip)
302
+ media.push({ type: 'first_clip', url: firstClip });
303
+ const upstreamInput = { media };
304
+ if (prompt)
305
+ upstreamInput['prompt'] = prompt;
306
+ if (flags.negativePrompt)
307
+ upstreamInput['negative_prompt'] = flags.negativePrompt;
308
+ const upstreamParameters = {};
309
+ if (flags.resolution !== undefined) {
310
+ upstreamParameters['resolution'] = parseEnum(model, flags.resolution, 'resolution', WAN27_VIDEO_RESOLUTIONS);
311
+ }
312
+ if (flags.duration !== undefined)
313
+ upstreamParameters['duration'] = flags.duration;
314
+ if (flags.seed !== undefined)
315
+ upstreamParameters['seed'] = flags.seed;
316
+ if (flags.watermark !== undefined)
317
+ upstreamParameters['watermark'] = flags.watermark;
318
+ const params = { input: upstreamInput };
319
+ if (Object.keys(upstreamParameters).length > 0)
320
+ params['parameters'] = upstreamParameters;
321
+ return buildEnvelope(model, params);
322
+ },
323
+ });
324
+ registerProvider({
325
+ provider: 'alibaba',
326
+ category: 'video',
327
+ models: VIDEO_I2V_26_MODELS,
328
+ requiresPrompt() {
329
+ return false;
330
+ },
331
+ buildBody(model, prompt, flags) {
332
+ assertUnsupportedAlibabaVideoFlags(model, flags);
333
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
334
+ assertUnsupported(model, flags.imageUrls, 'image-urls');
335
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
336
+ assertUnsupported(model, flags.videoUrl, 'video-url');
337
+ assertUnsupported(model, flags.videoId, 'video-id');
338
+ assertUnsupported(model, flags.aspectRatio, 'aspect-ratio');
339
+ assertUnsupported(model, flags.size, 'size');
340
+ assertUnsupported(model, flags.audioUrl, 'audio-url');
341
+ assertUnsupported(model, flags.audio, 'audio');
342
+ assertUnsupported(model, flags.shotType, 'shot-type');
343
+ assertUnsupported(model, flags.watermark, 'watermark');
344
+ const upstreamInput = { img_url: requireSingleImage(model, flags) };
345
+ if (prompt)
346
+ upstreamInput['prompt'] = prompt;
347
+ const upstreamParameters = {};
348
+ if (flags.resolution)
349
+ upstreamParameters['resolution'] = flags.resolution;
350
+ if (flags.duration !== undefined)
351
+ upstreamParameters['duration'] = flags.duration;
352
+ if (flags.seed !== undefined)
353
+ upstreamParameters['seed'] = flags.seed;
354
+ if (flags.negativePrompt)
355
+ upstreamParameters['negative_prompt'] = flags.negativePrompt;
356
+ const params = { input: upstreamInput };
357
+ if (Object.keys(upstreamParameters).length > 0)
358
+ params['parameters'] = upstreamParameters;
359
+ return buildEnvelope(model, params);
360
+ },
361
+ });
362
+ registerProvider({
363
+ provider: 'alibaba',
364
+ category: 'video',
365
+ models: VIDEO_REF_27_MODELS,
366
+ requiresPrompt() {
367
+ return false;
368
+ },
369
+ buildBody(model, prompt, flags) {
370
+ assertUnsupportedAlibabaVideoFlags(model, flags);
371
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
372
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
373
+ assertUnsupported(model, flags.audioUrl, 'audio-url');
374
+ assertUnsupported(model, flags.audio, 'audio');
375
+ assertUnsupported(model, flags.size, 'size');
376
+ assertUnsupported(model, flags.shotType, 'shot-type');
377
+ assertUnsupported(model, flags.videoId, 'video-id');
378
+ const media = [];
379
+ const firstFrame = maybeString(flags.imageUrl);
380
+ if (firstFrame)
381
+ media.push({ type: 'first_frame', url: firstFrame });
382
+ for (const image of maybeStringArray(flags.imageUrls)) {
383
+ media.push({ type: 'reference_image', url: image });
384
+ }
385
+ const referenceVideo = maybeString(flags.videoUrl);
386
+ if (referenceVideo)
387
+ media.push({ type: 'reference_video', url: referenceVideo });
388
+ if (media.length === 0) {
389
+ throw new CLIError(`Model "${model}" requires at least one media input via --image-url, --image-urls, or --video-url.`, ExitCode.USAGE);
390
+ }
391
+ const upstreamInput = { media };
392
+ if (prompt)
393
+ upstreamInput['prompt'] = prompt;
394
+ if (flags.negativePrompt)
395
+ upstreamInput['negative_prompt'] = flags.negativePrompt;
396
+ const upstreamParameters = {};
397
+ if (flags.resolution !== undefined) {
398
+ upstreamParameters['resolution'] = parseEnum(model, flags.resolution, 'resolution', WAN27_VIDEO_RESOLUTIONS);
399
+ }
400
+ if (flags.aspectRatio !== undefined) {
401
+ upstreamParameters['ratio'] = parseEnum(model, flags.aspectRatio, 'aspect-ratio', WAN27_RATIOS);
402
+ }
403
+ if (flags.duration !== undefined)
404
+ upstreamParameters['duration'] = flags.duration;
405
+ if (flags.seed !== undefined)
406
+ upstreamParameters['seed'] = flags.seed;
407
+ if (flags.watermark !== undefined)
408
+ upstreamParameters['watermark'] = flags.watermark;
409
+ const params = { input: upstreamInput };
410
+ if (Object.keys(upstreamParameters).length > 0)
411
+ params['parameters'] = upstreamParameters;
412
+ return buildEnvelope(model, params);
413
+ },
414
+ });
415
+ registerProvider({
416
+ provider: 'alibaba',
417
+ category: 'video',
418
+ models: VIDEO_REF_26_MODELS,
419
+ requiresPrompt() {
420
+ return false;
421
+ },
422
+ buildBody(model, prompt, flags) {
423
+ assertUnsupportedAlibabaVideoFlags(model, flags);
424
+ assertUnsupported(model, flags.imageUrl, 'image-url');
425
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
426
+ assertUnsupported(model, flags.imageUrls, 'image-urls');
427
+ assertUnsupported(model, flags.videoUrl, 'video-url');
428
+ assertUnsupported(model, flags.videoId, 'video-id');
429
+ assertUnsupported(model, flags.aspectRatio, 'aspect-ratio');
430
+ assertUnsupported(model, flags.resolution, 'resolution');
431
+ assertUnsupported(model, flags.watermark, 'watermark');
432
+ const upstreamInput = {
433
+ reference_urls: requireReferenceUrls(model, flags),
434
+ };
435
+ if (prompt)
436
+ upstreamInput['prompt'] = prompt;
437
+ if (flags.audioUrl)
438
+ upstreamInput['audio_url'] = flags.audioUrl;
439
+ const upstreamParameters = {};
440
+ if (flags.duration !== undefined)
441
+ upstreamParameters['duration'] = flags.duration;
442
+ if (flags.size)
443
+ upstreamParameters['size'] = flags.size;
444
+ if (flags.seed !== undefined)
445
+ upstreamParameters['seed'] = flags.seed;
446
+ if (flags.audio !== undefined)
447
+ upstreamParameters['audio'] = flags.audio;
448
+ if (flags.shotType)
449
+ upstreamParameters['shot_type'] = flags.shotType;
450
+ if (flags.negativePrompt)
451
+ upstreamParameters['negative_prompt'] = flags.negativePrompt;
452
+ const params = { input: upstreamInput };
453
+ if (Object.keys(upstreamParameters).length > 0)
454
+ params['parameters'] = upstreamParameters;
455
+ return buildEnvelope(model, params);
456
+ },
457
+ });
458
+ registerProvider({
459
+ provider: 'alibaba',
460
+ category: 'video',
461
+ models: VIDEO_EDIT_MODELS,
462
+ requiresPrompt() {
463
+ return false;
464
+ },
465
+ buildBody(model, prompt, flags) {
466
+ assertUnsupportedAlibabaVideoFlags(model, flags);
467
+ assertUnsupported(model, flags.referenceUrls, 'reference-urls');
468
+ assertUnsupported(model, flags.imageTailUrl, 'image-tail-url');
469
+ assertUnsupported(model, flags.audioUrl, 'audio-url');
470
+ assertUnsupported(model, flags.audio, 'audio');
471
+ assertUnsupported(model, flags.size, 'size');
472
+ assertUnsupported(model, flags.shotType, 'shot-type');
473
+ assertUnsupported(model, flags.videoId, 'video-id');
474
+ const videoUrl = maybeString(flags.videoUrl);
475
+ if (!videoUrl) {
476
+ throw new CLIError(`Model "${model}" requires --video-url.`, ExitCode.USAGE);
477
+ }
478
+ const media = [{ type: 'video', url: videoUrl }];
479
+ for (const image of collectImageInputs(flags)) {
480
+ media.push({ type: 'reference_image', url: image });
481
+ }
482
+ const upstreamInput = { media };
483
+ if (prompt)
484
+ upstreamInput['prompt'] = prompt;
485
+ if (flags.negativePrompt)
486
+ upstreamInput['negative_prompt'] = flags.negativePrompt;
487
+ const upstreamParameters = {};
488
+ if (flags.resolution !== undefined) {
489
+ upstreamParameters['resolution'] = parseEnum(model, flags.resolution, 'resolution', WAN27_VIDEO_RESOLUTIONS);
490
+ }
491
+ if (flags.aspectRatio !== undefined) {
492
+ upstreamParameters['ratio'] = parseEnum(model, flags.aspectRatio, 'aspect-ratio', WAN27_RATIOS);
493
+ }
494
+ if (flags.duration !== undefined)
495
+ upstreamParameters['duration'] = flags.duration;
496
+ if (flags.seed !== undefined)
497
+ upstreamParameters['seed'] = flags.seed;
498
+ if (flags.watermark !== undefined)
499
+ upstreamParameters['watermark'] = flags.watermark;
500
+ const params = { input: upstreamInput };
501
+ if (Object.keys(upstreamParameters).length > 0)
502
+ params['parameters'] = upstreamParameters;
503
+ return buildEnvelope(model, params);
504
+ },
505
+ });
506
+ //# sourceMappingURL=alibaba.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alibaba.js","sourceRoot":"","sources":["../../../../../src/server/sac/providers/alibaba.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,YAAY,GAAG;IACnB,qBAAqB;IACrB,yBAAyB;CACjB,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,mBAAmB;CACX,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,oBAAoB;CACZ,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,mBAAmB;CACX,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,oBAAoB;IACpB,0BAA0B;CAClB,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,mBAAmB;CACX,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,0BAA0B;CAClB,CAAC;AAEX,MAAM,iBAAiB,GAAG;IACxB,yBAAyB;CACjB,CAAC;AAEX,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACpE,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAE3D,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAClE,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,KAAc,EAAE,QAAgB,EAAE,IAAa;IACvF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IAChC,MAAM,IAAI,QAAQ,CAChB,IAAI,IAAI,UAAU,KAAK,wBAAwB,QAAQ,GAAG,EAC1D,QAAQ,CAAC,KAAK,CACf,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,KAAc,EAAE,QAAgB,EAAE,OAAoB;IACtF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,QAAQ,CAChB,UAAU,KAAK,gBAAgB,QAAQ,kBAAkB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAC1F,QAAQ,CAAC,KAAK,CACf,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAkB;IAC5C,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACnD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,KAAkB;IAC3D,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,QAAQ,CAChB,UAAU,KAAK,qDAAqD,EACpE,QAAQ,CAAC,KAAK,CACf,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,KAAkB;IAC7D,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,QAAQ,CAChB,UAAU,KAAK,8BAA8B,EAC7C,QAAQ,CAAC,KAAK,CACf,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,MAA+B;IACnE,OAAO;QACL,KAAK;QACL,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,EAAE,EAAE;KACb,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc,EAAE,KAAkB;IAC7D,MAAM,OAAO,GAAkC,EAAE,CAAC;IAClD,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAa,EAAE,KAAkB;IACpE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC3D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACnD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAClE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACnE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC1D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC1D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAC9D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC1D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,kCAAkC,CAAC,KAAa,EAAE,KAAkB;IAC3E,MAAM,OAAO,GAA6B;QACxC,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QAClB,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;QACrC,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;QAC1B,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC3C,CAAC,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC,iBAAiB,EAAE,KAAK,CAAC,cAAc,CAAC;QACzC,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,oBAAoB,EAAE,KAAK,CAAC,iBAAiB,CAAC;QAC/C,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;QACrC,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC;QAC1C,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC;QACjC,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,uBAAuB,EAAE,KAAK,CAAC,oBAAoB,CAAC;QACrD,CAAC,qBAAqB,EAAE,KAAK,CAAC,iBAAiB,CAAC;QAChD,CAAC,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC;QAC1C,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,mBAAmB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC5C,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC;QACpC,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,oBAAoB,EAAE,KAAK,CAAC,iBAAiB,CAAC;QAC/C,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;QACpB,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;QACrC,CAAC,cAAc,EAAE,KAAK,CAAC,UAAU,CAAC;QAClC,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC;QACjC,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QAClB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;QAC1B,CAAC,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,CAAC,yBAAyB,EAAE,KAAK,CAAC,qBAAqB,CAAC;QACxD,CAAC,qBAAqB,EAAE,KAAK,CAAC,iBAAiB,CAAC;QAChD,CAAC,4BAA4B,EAAE,KAAK,CAAC,wBAAwB,CAAC;QAC9D,CAAC,wBAAwB,EAAE,KAAK,CAAC,oBAAoB,CAAC;KACvD,CAAC;IAEF,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACxC,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,YAAY;IACpB,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1C,MAAM,aAAa,GAA4B;YAC7C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;SAC1E,CAAC;QAEF,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,IAAI;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAClE,IAAI,KAAK,CAAC,CAAC;YAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAW,CAAC;QACzD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAoB,CAAC;QAEhG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAEjD,MAAM,aAAa,GAA4B,EAAE,MAAM,EAAE,CAAC;QAC1D,IAAI,KAAK,CAAC,QAAQ;YAAE,aAAa,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAE1E,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,kBAAkB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,uBAAuB,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAoB,CAAC;QAChG,IAAI,KAAK,CAAC,cAAc;YAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAEjG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC5D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACvD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAEjD,MAAM,aAAa,GAA4B,EAAE,MAAM,EAAE,CAAC;QAC1D,IAAI,KAAK,CAAC,QAAQ;YAAE,aAAa,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAE1E,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAClE,IAAI,KAAK,CAAC,QAAQ;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC/E,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,KAAgB,CAAC;QACpF,IAAI,KAAK,CAAC,cAAc;YAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAEjG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAkC;YAC3C,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;SAC/D,CAAC;QAEF,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAElE,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,YAAY;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC;QAE3E,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAElE,MAAM,aAAa,GAA4B,EAAE,KAAK,EAAE,CAAC;QACzD,IAAI,MAAM;YAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC7C,IAAI,KAAK,CAAC,cAAc;YAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAE5F,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,kBAAkB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,uBAAuB,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAoB,CAAC;QAEhG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC5D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAEvD,MAAM,aAAa,GAA4B,EAAE,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7F,IAAI,MAAM;YAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAE7C,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,UAAU;YAAE,kBAAkB,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,UAAoB,CAAC;QACpF,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,cAAc;YAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAEjG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEpD,MAAM,KAAK,GAAkC,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,UAAU;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QACrE,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,cAAc;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC;QAEjF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,QAAQ,CAChB,UAAU,KAAK,oFAAoF,EACnG,QAAQ,CAAC,KAAK,CACf,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAA4B,EAAE,KAAK,EAAE,CAAC;QACzD,IAAI,MAAM;YAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC7C,IAAI,KAAK,CAAC,cAAc;YAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAE5F,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,kBAAkB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,uBAAuB,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAoB,CAAC;QAEhG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,mBAAmB;IAC3B,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC5D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAEvD,MAAM,aAAa,GAA4B;YAC7C,cAAc,EAAE,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC;SACnD,CAAC;QACF,IAAI,MAAM;YAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC7C,IAAI,KAAK,CAAC,QAAQ;YAAE,aAAa,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAE1E,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAClE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,KAAgB,CAAC;QACpF,IAAI,KAAK,CAAC,QAAQ;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC/E,IAAI,KAAK,CAAC,cAAc;YAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAEjG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC;AAEH,gBAAgB,CAAC;IACf,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,iBAAiB;IACzB,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QACzD,kCAAkC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAChE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC/D,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,QAAQ,CAChB,UAAU,KAAK,yBAAyB,EACxC,QAAQ,CAAC,KAAK,CACf,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAkC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChF,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,aAAa,GAA4B,EAAE,KAAK,EAAE,CAAC;QACzD,IAAI,MAAM;YAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC7C,IAAI,KAAK,CAAC,cAAc;YAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,cAAwB,CAAC;QAE5F,MAAM,kBAAkB,GAA4B,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,kBAAkB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,uBAAuB,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,QAAkB,CAAC;QAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAc,CAAC;QAChF,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAoB,CAAC;QAEhG,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAE1F,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=audio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../../../../src/server/sac/providers/audio.ts"],"names":[],"mappings":""}
@@ -0,0 +1,57 @@
1
+ import { SACError as CLIError, ExitCode } from "../errors.js";
2
+ import { registerProvider } from "./store.js";
3
+ // ── Model lists ──────────────────────────────────────────────────────────────
4
+ const MUSIC_MODELS = [
5
+ 'lyria_3_pro_preview',
6
+ 'mureka_song_generator',
7
+ ];
8
+ // ── lyria_3_pro_preview ───────────────────────────────────────────────────────
9
+ registerProvider({
10
+ provider: 'audio',
11
+ category: 'audio',
12
+ models: ['lyria_3_pro_preview'],
13
+ buildBody(_model, prompt, _flags) {
14
+ return {
15
+ model: 'lyria_3_pro_preview',
16
+ dash_scope: true,
17
+ moderation: true,
18
+ input: [{ params: { input: prompt } }],
19
+ metadata: {},
20
+ };
21
+ },
22
+ });
23
+ // ── mureka_song_generator ─────────────────────────────────────────────────────
24
+ registerProvider({
25
+ provider: 'audio',
26
+ category: 'audio',
27
+ models: ['mureka_song_generator'],
28
+ buildBody(_model, prompt, flags) {
29
+ const lyrics = flags.lyrics;
30
+ if (!lyrics) {
31
+ throw new CLIError('mureka_song_generator requires --lyrics.', ExitCode.USAGE);
32
+ }
33
+ const params = { lyrics };
34
+ if (prompt)
35
+ params['prompt'] = prompt;
36
+ if (flags.murekaModel)
37
+ params['model'] = flags.murekaModel;
38
+ if (flags.n)
39
+ params['n'] = flags.n;
40
+ if (flags.referenceId)
41
+ params['reference_id'] = flags.referenceId;
42
+ if (flags.vocalId)
43
+ params['vocal_id'] = flags.vocalId;
44
+ if (flags.melodyId)
45
+ params['melody_id'] = flags.melodyId;
46
+ return {
47
+ model: 'mureka_song_generator',
48
+ dash_scope: true,
49
+ moderation: true,
50
+ input: [{ params }],
51
+ metadata: {},
52
+ };
53
+ },
54
+ });
55
+ // suppress unused
56
+ void MUSIC_MODELS;
57
+ //# sourceMappingURL=audio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio.js","sourceRoot":"","sources":["../../../../../src/server/sac/providers/audio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,gFAAgF;AAEhF,MAAM,YAAY,GAAG;IACnB,qBAAqB;IACrB,uBAAuB;CACf,CAAC;AAEX,iFAAiF;AAEjF,gBAAgB,CAAC;IACf,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,CAAC,qBAAqB,CAAU;IACxC,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,MAAmB;QAC3D,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;YACtC,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,iFAAiF;AAEjF,gBAAgB,CAAC;IACf,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,CAAC,uBAAuB,CAAU;IAC1C,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,KAAkB;QAC1D,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,QAAQ,CAChB,0CAA0C,EAC1C,QAAQ,CAAC,KAAK,CACf,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAA4B,EAAE,MAAM,EAAE,CAAC;QACnD,IAAI,MAAM;YAAgB,MAAM,CAAC,QAAQ,CAAC,GAAS,MAAM,CAAC;QAC1D,IAAI,KAAK,CAAC,WAAW;YAAK,MAAM,CAAC,OAAO,CAAC,GAAU,KAAK,CAAC,WAAqB,CAAC;QAC/E,IAAI,KAAK,CAAC,CAAC;YAAe,MAAM,CAAC,GAAG,CAAC,GAAc,KAAK,CAAC,CAAW,CAAC;QACrE,IAAI,KAAK,CAAC,WAAW;YAAK,MAAM,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,WAAqB,CAAC;QAC/E,IAAI,KAAK,CAAC,OAAO;YAAS,MAAM,CAAC,UAAU,CAAC,GAAO,KAAK,CAAC,OAAiB,CAAC;QAC3E,IAAI,KAAK,CAAC,QAAQ;YAAQ,MAAM,CAAC,WAAW,CAAC,GAAM,KAAK,CAAC,QAAkB,CAAC;QAE5E,OAAO;YACL,KAAK,EAAE,uBAAuB;YAC9B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;YACnB,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,kBAAkB;AAClB,KAAM,YAAyC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=kling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kling.d.ts","sourceRoot":"","sources":["../../../../../src/server/sac/providers/kling.ts"],"names":[],"mappings":""}