dsh-audiogen 0.4.3 → 0.4.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.
package/lib/client.js CHANGED
@@ -18,6 +18,8 @@ window.__ModuleLoader__.load({
18
18
  const GENERATE_API = "/api/dsh-audiogen/generate";
19
19
  /** Loopback-only task cancellation route (aborts the host-side upstream call). */
20
20
  const TASK_API = { cancel: "/api/dsh-audiogen/task/cancel" };
21
+ /** Loopback-only prompt enhancement route (uses the agent's default model). */
22
+ const ENHANCE_API = "/api/dsh-audiogen/prompt/enhance";
21
23
  /** Host-mediated built-in provider catalog (channels the user can instantiate). */
22
24
  const PRESETS_API = "/api/dsh-audiogen/presets";
23
25
  /** Host-mediated model/voice discovery endpoint. */
@@ -64,10 +66,28 @@ window.__ModuleLoader__.load({
64
66
  async cancelTask(taskId) {
65
67
  await postJson(TASK_API.cancel, { taskId }).catch(() => {});
66
68
  }
69
+ /** 提示词增强(复用 Agent 默认模型)。 */
70
+ async enhancePrompt(prompt, mode) {
71
+ const body = await (await postJson(ENHANCE_API, {
72
+ prompt,
73
+ mode
74
+ })).json();
75
+ return {
76
+ ok: body.ok === true,
77
+ ...body.enhanced === void 0 ? {} : { enhanced: body.enhanced },
78
+ ...body.code === void 0 ? {} : { code: body.code },
79
+ ...body.message === void 0 ? {} : { message: body.message }
80
+ };
81
+ }
67
82
  async history() {
68
83
  const body = await (await postJson(HISTORY_API.list, {})).json();
69
84
  return body.ok === true ? body.history ?? [] : [];
70
85
  }
86
+ /** 删除一条历史记录(返回删后的列表)。 */
87
+ async removeHistory(id) {
88
+ const body = await (await postJson(HISTORY_API.remove, { id })).json();
89
+ return body.ok === true ? body.history ?? [] : [];
90
+ }
71
91
  async clearHistory() {
72
92
  await postJson(HISTORY_API.clear, {});
73
93
  }
@@ -1138,7 +1158,7 @@ window.__ModuleLoader__.load({
1138
1158
  }
1139
1159
  //#endregion
1140
1160
  //#region \0dsh-css:/Users/shimingming/Projects_code/dsh-audiogen/src/client/audio-panel.module.css.mjs
1141
- const css$4 = ".Oo1fpq_panel{background:var(--dsw-alias-bg-base,#f7f7f8);min-width:0;height:100%;min-height:0;color:var(--dsw-alias-label-primary,#1f2328);font-family:var(--dsw-font-family,system-ui, sans-serif);flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex;position:relative}.Oo1fpq_panel,.Oo1fpq_panel *,.Oo1fpq_panel :before,.Oo1fpq_panel :after{box-sizing:border-box}.Oo1fpq_header{flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.Oo1fpq_title{color:var(--dsw-alias-label-primary,#1f2328);white-space:nowrap;margin:0;font-size:16px;font-weight:700}.Oo1fpq_tabs{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f3f4f6);border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex}.Oo1fpq_tab{min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-family:inherit;font-size:12.5px;transition:color .12s,background .12s;display:inline-flex}.Oo1fpq_tab:hover{color:var(--dsw-alias-label-primary,#1f2328)}.Oo1fpq_tab[data-active=true]{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-1,#fff);font-weight:600;box-shadow:0 1px 3px #0000001a}.Oo1fpq_studio{flex:1;gap:14px;min-width:0;min-height:0;display:flex}.Oo1fpq_formCol{scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;flex-direction:column;flex:none;gap:11px;width:300px;min-width:260px;max-width:340px;min-height:0;padding:2px;display:flex;overflow-y:auto}.Oo1fpq_formCol::-webkit-scrollbar{width:8px}.Oo1fpq_formCol::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_modeRow{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.Oo1fpq_modeButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);min-height:34px;color:var(--dsw-alias-label-secondary,#6b7280);white-space:nowrap;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;padding:6px 4px;font-family:inherit;font-size:11.5px;transition:border-color .12s,color .12s,background .12s;display:flex}.Oo1fpq_modeButton:hover{border-color:var(--dsw-alias-label-dimmed,#9ca3af);color:var(--dsw-alias-label-primary,#1f2328)}.Oo1fpq_modeButton[data-active=true]{border-color:var(--dsw-alias-brand-primary,#2563eb);color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 8%, transparent);font-weight:600}.Oo1fpq_label{color:var(--dsw-alias-label-secondary,#6b7280);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.Oo1fpq_input,.Oo1fpq_textarea{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-2,#fff);width:100%;min-height:36px;color:var(--dsw-alias-label-primary,#1f2328);border-radius:9px;outline:none;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .12s,box-shadow .12s}.Oo1fpq_input:focus,.Oo1fpq_textarea:focus{border-color:var(--dsw-alias-brand-primary,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 14%, transparent)}.Oo1fpq_textarea{resize:vertical;min-height:96px}.Oo1fpq_checkbox{color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.Oo1fpq_checkbox input{accent-color:var(--dsw-alias-brand-primary,#2563eb);margin:0}.Oo1fpq_hint{color:var(--dsw-alias-label-tertiary,#9ca3af);margin:0;font-size:11.5px;line-height:1.55}.Oo1fpq_row{align-items:flex-end;gap:8px;display:flex}.Oo1fpq_row .Oo1fpq_label{flex:1;min-width:0}.Oo1fpq_advanced{border:1px dashed var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:10px;flex-direction:column;gap:9px;padding:9px 11px;display:flex}.Oo1fpq_advanced summary{cursor:pointer;color:var(--dsw-alias-label-secondary,#6b7280);font-size:12px;font-weight:600}.Oo1fpq_generate{background:var(--dsw-alias-label-primary,#1f2328);color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .12s,transform 80ms}.Oo1fpq_generate:hover:not(:disabled){opacity:.92}.Oo1fpq_generate:active:not(:disabled){transform:translateY(1px)}.Oo1fpq_generate:disabled{opacity:.5;cursor:default}.Oo1fpq_resultCol{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;border-radius:12px;flex-direction:column;flex:1;gap:10px;min-width:0;padding:14px;display:flex;overflow-y:auto}.Oo1fpq_resultCol::-webkit-scrollbar{width:8px}.Oo1fpq_resultCol::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_resultEmpty{text-align:center;color:var(--dsw-alias-label-secondary,#6b7280);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.Oo1fpq_resultEmptyIcon{background:var(--dsw-alias-bg-layer-2,#f3f4f6);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:4px;font-size:24px;display:inline-flex}.Oo1fpq_resultEmptyHint{color:var(--dsw-alias-label-tertiary,#9ca3af);margin:0;font-size:11.5px}.Oo1fpq_error{border:1px solid var(--dsw-alias-label-error,#b91c1c);background:color-mix(in srgb, var(--dsw-alias-label-error,#b91c1c) 6%, transparent);color:var(--dsw-alias-label-error,#b91c1c);border-radius:9px;flex:none;margin:0;padding:9px 12px;font-size:12.5px;line-height:1.55}.Oo1fpq_resultMeta{color:var(--dsw-alias-label-tertiary,#9ca3af);flex:none;align-items:center;gap:8px;font-size:12px;display:flex}.Oo1fpq_resultModeChip{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f3f4f6);color:var(--dsw-alias-label-secondary,#6b7280);border-radius:999px;padding:2px 9px;font-size:11px}.Oo1fpq_audioList{gap:10px;display:grid}.Oo1fpq_audioCard{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:12px;flex-direction:column;gap:8px;padding:12px;transition:border-color .12s;display:flex}.Oo1fpq_audioCard[data-saved=true]{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 42%, var(--dsw-alias-border-l1,#e5e7eb));background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 5%, var(--dsw-alias-bg-layer-2,#f7f7f8))}.Oo1fpq_audioCardHead{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.Oo1fpq_voiceIdChip{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);max-width:100%;color:var(--dsw-alias-label-secondary,#6b7280);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:2px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;overflow:hidden}.Oo1fpq_savedChip{background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 12%, transparent);color:var(--dsw-alias-brand-primary,#2563eb);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.Oo1fpq_audioCardIndex{color:var(--dsw-alias-label-tertiary,#9ca3af);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.Oo1fpq_audioCardActions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.Oo1fpq_ghostButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:3px 11px;font-family:inherit;font-size:12px;text-decoration:none;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.Oo1fpq_ghostButton:hover{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 8%, transparent)}.Oo1fpq_compareBox{border:1px dashed var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 4%, var(--dsw-alias-bg-layer-1,#fff));border-radius:10px;flex-direction:column;gap:7px;padding:9px 11px;display:flex}.Oo1fpq_compareChips{flex-wrap:wrap;gap:6px;display:flex}.Oo1fpq_compareChip{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;border-radius:999px;align-items:center;padding:0 11px;font-family:inherit;font-size:12px;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.Oo1fpq_compareChip:hover{color:var(--dsw-alias-label-primary,#1f2328);border-color:var(--dsw-alias-label-dimmed,#9ca3af)}.Oo1fpq_compareChip[data-active=true]{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 9%, transparent);font-weight:600}.Oo1fpq_compareBoard{flex-direction:column;gap:12px;display:flex}.Oo1fpq_compareGroup{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:12px;flex-direction:column;gap:8px;padding:11px;display:flex}.Oo1fpq_compareGroup[data-state=running]{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroup[data-state=done]{border-color:color-mix(in srgb, #10b981 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroup[data-state=error]{border-color:color-mix(in srgb, var(--dsw-alias-label-error,#b91c1c) 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroupHead{justify-content:space-between;align-items:center;gap:10px;display:flex}.Oo1fpq_compareModelName{background:var(--dsw-alias-bg-layer-1,#fff);border:1px solid var(--dsw-alias-border-l1,#e5e7eb);color:var(--dsw-alias-label-primary,#1f2328);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;overflow:hidden}.Oo1fpq_compareState{color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.Oo1fpq_compareGroup[data-state=running] .Oo1fpq_compareState{color:var(--dsw-alias-brand-primary,#2563eb)}.Oo1fpq_compareGroup[data-state=done] .Oo1fpq_compareState{color:#059669}.Oo1fpq_compareGroup[data-state=error] .Oo1fpq_compareState,.Oo1fpq_hint[data-error]{color:var(--dsw-alias-label-error,#b91c1c)}.Oo1fpq_historyCol{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:12px;flex-direction:column;flex:none;width:250px;min-width:210px;max-width:290px;min-height:0;display:flex;overflow:hidden}.Oo1fpq_historyHeader{border-bottom:1px solid var(--dsw-alias-border-l1,#e5e7eb);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.Oo1fpq_historyTitle{color:var(--dsw-alias-label-primary,#1f2328);font-size:13px;font-weight:700}.Oo1fpq_historyClear{border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border-radius:999px;padding:2px 9px;font-family:inherit;font-size:11px}.Oo1fpq_historyClear:hover{color:var(--dsw-alias-label-error,#b91c1c);border-color:var(--dsw-alias-label-error,#b91c1c)}.Oo1fpq_historyList{scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;flex-direction:column;flex:1;gap:8px;min-height:0;padding:9px;display:flex;overflow-y:auto}.Oo1fpq_historyList::-webkit-scrollbar{width:8px}.Oo1fpq_historyList::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_historyEmpty{text-align:center;color:var(--dsw-alias-label-tertiary,#9ca3af);flex:1;justify-content:center;align-items:center;padding:18px;font-size:12px;display:flex}.Oo1fpq_historyItem{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:10px;flex-direction:column;gap:6px;padding:9px;display:flex}.Oo1fpq_historyPrompt{color:var(--dsw-alias-label-primary,#1f2328);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.Oo1fpq_historyMeta{color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.Oo1fpq_historyActions{justify-content:flex-end;display:flex}.Oo1fpq_historyAction{border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-family:inherit;font-size:11px;display:inline-flex}.Oo1fpq_historyAction:hover{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb)}.Oo1fpq_player{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:10px;align-items:center;gap:9px;padding:8px 10px;display:flex}.Oo1fpq_playerCompact{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:9px;align-items:center;gap:8px;padding:6px 8px;display:flex}.Oo1fpq_playButton{background:var(--dsw-alias-label-primary,#1f2328);width:30px;height:30px;color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:opacity .12s,transform 80ms;display:inline-flex}.Oo1fpq_playerCompact .Oo1fpq_playButton{width:26px;height:26px}.Oo1fpq_playButton:hover{opacity:.9}.Oo1fpq_playButton:active{transform:scale(.94)}.Oo1fpq_track{background:var(--dsw-alias-border-l2,#d1d5db);cursor:pointer;border-radius:999px;flex:1;min-width:0;height:4px;position:relative}.Oo1fpq_trackFill{background:var(--dsw-alias-brand-primary,#2563eb);border-radius:999px;position:absolute;inset:0 auto 0 0}.Oo1fpq_trackKnob{background:var(--dsw-alias-brand-primary,#2563eb);border-radius:50%;width:11px;height:11px;transition:transform .1s;position:absolute;top:50%;transform:translate(-50%,-50%)}.Oo1fpq_time{font-variant-numeric:tabular-nums;min-width:62px;color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;text-align:right;flex:none;font-size:10.5px}.Oo1fpq_playerCompact .Oo1fpq_time{min-width:56px;font-size:10px}.Oo1fpq_muteButton{width:24px;height:24px;color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.Oo1fpq_muteButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_modalMask{z-index:200;backdrop-filter:blur(3px);background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.Oo1fpq_modal{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:14px;flex-direction:column;gap:12px;width:440px;max-width:100%;max-height:calc(100vh - 40px);padding:16px;display:flex;box-shadow:0 18px 50px #00000038}.Oo1fpq_modalHead{color:var(--dsw-alias-label-primary,#1f2328);justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.Oo1fpq_modalBody{flex-direction:column;gap:11px;min-height:0;display:flex;overflow-y:auto}.Oo1fpq_formRow{grid-template-columns:1fr 1fr;gap:10px;display:grid}.Oo1fpq_modalFoot{justify-content:flex-end;align-items:center;gap:8px;display:flex}.Oo1fpq_primaryButton{background:var(--dsw-alias-label-primary,#1f2328);min-height:32px;color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12.5px;font-weight:600;display:inline-flex}.Oo1fpq_primaryButton:disabled{opacity:.5;cursor:default}.Oo1fpq_secondaryButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);min-height:32px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:8px;padding:0 14px;font-family:inherit;font-size:12.5px}.Oo1fpq_secondaryButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_iconButton{width:26px;height:26px;color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.Oo1fpq_iconButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_toast{z-index:150;border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-mask-1,#fff);color:var(--dsw-alias-label-primary,#1f2328);backdrop-filter:blur(6px);pointer-events:none;border-radius:999px;align-items:center;gap:7px;padding:7px 16px;font-size:12.5px;animation:.16s ease-out Oo1fpq_audiogenToastIn;display:inline-flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000038}@keyframes Oo1fpq_audiogenToastIn{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.Oo1fpq_toast{animation-duration:1ms}}.Oo1fpq_modelCheckList{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-3,#fff);border-radius:8px;flex-direction:column;gap:4px;max-height:180px;padding:8px;display:flex;overflow-y:auto}.Oo1fpq_resultGroups{flex-direction:column;gap:16px;display:flex}.Oo1fpq_resultGroup{flex-direction:column;gap:8px;display:flex}.Oo1fpq_resultGroupHead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_resultGroupChip{background:var(--dsw-alias-bg-hover,#f3f4f6);border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-primary,#1f2328);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.Oo1fpq_resultGroupError{color:#dc2626;font-size:12px}.Oo1fpq_resultGroupCount{color:var(--dsw-alias-label-tertiary,#9ca3af);font-size:11px}.Oo1fpq_overrideTable{flex-direction:column;gap:6px;display:flex}.Oo1fpq_overrideRow{align-items:center;gap:6px;display:flex}.Oo1fpq_overrideCell{min-width:0;color:var(--dsw-alias-label-secondary,#6b7280);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}.Oo1fpq_overrideCell .Oo1fpq_input{min-height:30px;padding:5px 8px}.Oo1fpq_overrideCellHead{color:var(--dsw-alias-label-primary,#1f2328);white-space:normal;font-weight:700}.Oo1fpq_taskList{flex-direction:column;gap:14px;display:flex}.Oo1fpq_taskCard{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-2,#fafafa);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.Oo1fpq_taskCard[data-state=failed]{border-color:#dc2626}.Oo1fpq_taskCard[data-state=cancelled]{opacity:.75}.Oo1fpq_taskHead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_taskLabel{color:var(--dsw-alias-label-primary,#1f2328);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;font-weight:600;overflow:hidden}.Oo1fpq_taskStatus{color:var(--dsw-alias-label-secondary,#6b7280);font-size:12px}.Oo1fpq_taskStatus[data-state=done]{color:#16a34a}.Oo1fpq_taskStatus[data-state=failed]{color:#dc2626}.Oo1fpq_taskActions{gap:6px;margin-left:auto;display:flex}.Oo1fpq_historyTabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.Oo1fpq_historyTab{border:1px solid var(--dsw-alias-border-l2,#d1d5db);cursor:pointer;background:var(--dsw-alias-bg-layer-3,#fff);color:var(--dsw-alias-label-secondary,#6b7280);border-radius:999px;padding:3px 10px;font-size:12px}.Oo1fpq_historyTab[data-active=true]{background:var(--dsw-alias-bg-hover,#f3f4f6);color:var(--dsw-alias-label-primary,#1f2328);font-weight:600}.Oo1fpq_historyTabCount{color:var(--dsw-alias-label-tertiary,#9ca3af);margin-left:4px;font-size:11px}.Oo1fpq_historyCompareSummary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_historyCompareBadge{color:#7c3aed;white-space:nowrap;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.Oo1fpq_historyModelRow{border-top:1px dashed var(--dsw-alias-border-l1,#e5e7eb);flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;display:flex}.Oo1fpq_overrideOnly{color:var(--dsw-alias-label-tertiary,#9ca3af);font-size:10px;font-weight:500}.Oo1fpq_overrideDash{color:var(--dsw-alias-label-tertiary,#9ca3af);padding:0 6px}";
1161
+ const css$4 = ".Oo1fpq_panel{background:var(--dsw-alias-bg-base,#f7f7f8);min-width:0;height:100%;min-height:0;color:var(--dsw-alias-label-primary,#1f2328);font-family:var(--dsw-font-family,system-ui, sans-serif);flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex;position:relative}.Oo1fpq_panel,.Oo1fpq_panel *,.Oo1fpq_panel :before,.Oo1fpq_panel :after{box-sizing:border-box}.Oo1fpq_header{flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.Oo1fpq_title{color:var(--dsw-alias-label-primary,#1f2328);white-space:nowrap;margin:0;font-size:16px;font-weight:700}.Oo1fpq_tabs{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f3f4f6);border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex}.Oo1fpq_tab{min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-family:inherit;font-size:12.5px;transition:color .12s,background .12s;display:inline-flex}.Oo1fpq_tab:hover{color:var(--dsw-alias-label-primary,#1f2328)}.Oo1fpq_tab[data-active=true]{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-1,#fff);font-weight:600;box-shadow:0 1px 3px #0000001a}.Oo1fpq_studio{flex:1;gap:14px;min-width:0;min-height:0;display:flex}.Oo1fpq_formCol{scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;flex-direction:column;flex:none;gap:11px;width:300px;min-width:260px;max-width:340px;min-height:0;padding:2px;display:flex;overflow-y:auto}.Oo1fpq_formCol::-webkit-scrollbar{width:8px}.Oo1fpq_formCol::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_modeRow{flex-wrap:wrap;gap:6px;display:flex}.Oo1fpq_modeButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);min-width:0;min-height:34px;color:var(--dsw-alias-label-secondary,#6b7280);white-space:nowrap;cursor:pointer;border-radius:9px;flex:auto;justify-content:center;align-items:center;padding:6px 10px;font-family:inherit;font-size:11.5px;transition:border-color .12s,color .12s,background .12s;display:flex}.Oo1fpq_modeButton:hover{border-color:var(--dsw-alias-label-dimmed,#9ca3af);color:var(--dsw-alias-label-primary,#1f2328)}.Oo1fpq_modeButton[data-active=true]{border-color:var(--dsw-alias-brand-primary,#2563eb);color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 8%, transparent);font-weight:600}.Oo1fpq_label{color:var(--dsw-alias-label-secondary,#6b7280);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.Oo1fpq_input,.Oo1fpq_textarea{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-2,#fff);width:100%;min-height:36px;color:var(--dsw-alias-label-primary,#1f2328);border-radius:9px;outline:none;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .12s,box-shadow .12s}.Oo1fpq_input:focus,.Oo1fpq_textarea:focus{border-color:var(--dsw-alias-brand-primary,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 14%, transparent)}.Oo1fpq_textarea{resize:vertical;min-height:96px}.Oo1fpq_checkbox{color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.Oo1fpq_checkbox input{accent-color:var(--dsw-alias-brand-primary,#2563eb);margin:0}.Oo1fpq_hint{color:var(--dsw-alias-label-tertiary,#9ca3af);margin:0;font-size:11.5px;line-height:1.55}.Oo1fpq_row{align-items:flex-end;gap:8px;display:flex}.Oo1fpq_row .Oo1fpq_label{flex:1;min-width:0}.Oo1fpq_advanced{border:1px dashed var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:10px;flex-direction:column;gap:9px;padding:9px 11px;display:flex}.Oo1fpq_advanced summary{cursor:pointer;color:var(--dsw-alias-label-secondary,#6b7280);font-size:12px;font-weight:600}.Oo1fpq_generate{background:var(--dsw-alias-label-primary,#1f2328);color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .12s,transform 80ms}.Oo1fpq_generate:hover:not(:disabled){opacity:.92}.Oo1fpq_generate:active:not(:disabled){transform:translateY(1px)}.Oo1fpq_generate:disabled{opacity:.5;cursor:default}.Oo1fpq_resultCol{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;border-radius:12px;flex-direction:column;flex:1;gap:10px;min-width:0;padding:14px;display:flex;overflow-y:auto}.Oo1fpq_resultCol::-webkit-scrollbar{width:8px}.Oo1fpq_resultCol::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_resultEmpty{text-align:center;color:var(--dsw-alias-label-secondary,#6b7280);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.Oo1fpq_resultEmptyIcon{background:var(--dsw-alias-bg-layer-2,#f3f4f6);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:4px;font-size:24px;display:inline-flex}.Oo1fpq_resultEmptyHint{color:var(--dsw-alias-label-tertiary,#9ca3af);margin:0;font-size:11.5px}.Oo1fpq_error{border:1px solid var(--dsw-alias-label-error,#b91c1c);background:color-mix(in srgb, var(--dsw-alias-label-error,#b91c1c) 6%, transparent);color:var(--dsw-alias-label-error,#b91c1c);border-radius:9px;flex:none;margin:0;padding:9px 12px;font-size:12.5px;line-height:1.55}.Oo1fpq_resultMeta{color:var(--dsw-alias-label-tertiary,#9ca3af);flex:none;align-items:center;gap:8px;font-size:12px;display:flex}.Oo1fpq_resultModeChip{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f3f4f6);color:var(--dsw-alias-label-secondary,#6b7280);border-radius:999px;padding:2px 9px;font-size:11px}.Oo1fpq_audioList{gap:10px;display:grid}.Oo1fpq_audioCard{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:12px;flex-direction:column;gap:8px;padding:12px;transition:border-color .12s;display:flex}.Oo1fpq_audioCard[data-saved=true]{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 42%, var(--dsw-alias-border-l1,#e5e7eb));background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 5%, var(--dsw-alias-bg-layer-2,#f7f7f8))}.Oo1fpq_audioCardHead{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.Oo1fpq_voiceIdChip{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);max-width:100%;color:var(--dsw-alias-label-secondary,#6b7280);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:2px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;overflow:hidden}.Oo1fpq_savedChip{background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 12%, transparent);color:var(--dsw-alias-brand-primary,#2563eb);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.Oo1fpq_audioCardIndex{color:var(--dsw-alias-label-tertiary,#9ca3af);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.Oo1fpq_audioCardActions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.Oo1fpq_ghostButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:3px 11px;font-family:inherit;font-size:12px;text-decoration:none;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.Oo1fpq_ghostButton:hover{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 8%, transparent)}.Oo1fpq_compareBox{border:1px dashed var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 4%, var(--dsw-alias-bg-layer-1,#fff));border-radius:10px;flex-direction:column;gap:7px;padding:9px 11px;display:flex}.Oo1fpq_compareChips{flex-wrap:wrap;gap:6px;display:flex}.Oo1fpq_compareChip{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);min-height:27px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;border-radius:999px;align-items:center;padding:0 11px;font-family:inherit;font-size:12px;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.Oo1fpq_compareChip:hover{color:var(--dsw-alias-label-primary,#1f2328);border-color:var(--dsw-alias-label-dimmed,#9ca3af)}.Oo1fpq_compareChip[data-active=true]{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb);background:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 9%, transparent);font-weight:600}.Oo1fpq_compareBoard{flex-direction:column;gap:12px;display:flex}.Oo1fpq_compareGroup{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:12px;flex-direction:column;gap:8px;padding:11px;display:flex}.Oo1fpq_compareGroup[data-state=running]{border-color:color-mix(in srgb, var(--dsw-alias-brand-primary,#2563eb) 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroup[data-state=done]{border-color:color-mix(in srgb, #10b981 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroup[data-state=error]{border-color:color-mix(in srgb, var(--dsw-alias-label-error,#b91c1c) 45%, var(--dsw-alias-border-l1,#e5e7eb))}.Oo1fpq_compareGroupHead{justify-content:space-between;align-items:center;gap:10px;display:flex}.Oo1fpq_compareModelName{background:var(--dsw-alias-bg-layer-1,#fff);border:1px solid var(--dsw-alias-border-l1,#e5e7eb);color:var(--dsw-alias-label-primary,#1f2328);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;overflow:hidden}.Oo1fpq_compareState{color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.Oo1fpq_compareGroup[data-state=running] .Oo1fpq_compareState{color:var(--dsw-alias-brand-primary,#2563eb)}.Oo1fpq_compareGroup[data-state=done] .Oo1fpq_compareState{color:#059669}.Oo1fpq_compareGroup[data-state=error] .Oo1fpq_compareState,.Oo1fpq_hint[data-error]{color:var(--dsw-alias-label-error,#b91c1c)}.Oo1fpq_historyCol{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:12px;flex-direction:column;flex:none;width:250px;min-width:210px;max-width:290px;min-height:0;display:flex;overflow:hidden}.Oo1fpq_historyHeader{border-bottom:1px solid var(--dsw-alias-border-l1,#e5e7eb);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.Oo1fpq_historyTitle{color:var(--dsw-alias-label-primary,#1f2328);font-size:13px;font-weight:700}.Oo1fpq_historyClear{border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border-radius:999px;padding:2px 9px;font-family:inherit;font-size:11px}.Oo1fpq_historyClear:hover{color:var(--dsw-alias-label-error,#b91c1c);border-color:var(--dsw-alias-label-error,#b91c1c)}.Oo1fpq_historyList{scrollbar-width:thin;scrollbar-color:var(--dsw-alias-border-l2) transparent;flex-direction:column;flex:1;gap:8px;min-height:0;padding:9px;display:flex;overflow-y:auto}.Oo1fpq_historyList::-webkit-scrollbar{width:8px}.Oo1fpq_historyList::-webkit-scrollbar-thumb{background:var(--dsw-alias-border-l2);border-radius:999px}.Oo1fpq_historyEmpty{text-align:center;color:var(--dsw-alias-label-tertiary,#9ca3af);flex:1;justify-content:center;align-items:center;padding:18px;font-size:12px;display:flex}.Oo1fpq_historyItem{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#f7f7f8);border-radius:10px;flex-direction:column;gap:6px;padding:9px;display:flex}.Oo1fpq_historyPrompt{color:var(--dsw-alias-label-primary,#1f2328);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.Oo1fpq_historyMeta{color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.Oo1fpq_historyActions{justify-content:flex-end;display:flex}.Oo1fpq_historyAction{border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-family:inherit;font-size:11px;display:inline-flex}.Oo1fpq_historyAction:hover{color:var(--dsw-alias-brand-primary,#2563eb);border-color:var(--dsw-alias-brand-primary,#2563eb)}.Oo1fpq_player{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:10px;align-items:center;gap:9px;padding:8px 10px;display:flex}.Oo1fpq_playerCompact{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:9px;align-items:center;gap:8px;padding:6px 8px;display:flex}.Oo1fpq_playButton{background:var(--dsw-alias-label-primary,#1f2328);width:30px;height:30px;color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:opacity .12s,transform 80ms;display:inline-flex}.Oo1fpq_playerCompact .Oo1fpq_playButton{width:26px;height:26px}.Oo1fpq_playButton:hover{opacity:.9}.Oo1fpq_playButton:active{transform:scale(.94)}.Oo1fpq_track{background:var(--dsw-alias-border-l2,#d1d5db);cursor:pointer;border-radius:999px;flex:1;min-width:0;height:4px;position:relative}.Oo1fpq_trackFill{background:var(--dsw-alias-brand-primary,#2563eb);border-radius:999px;position:absolute;inset:0 auto 0 0}.Oo1fpq_trackKnob{background:var(--dsw-alias-brand-primary,#2563eb);border-radius:50%;width:11px;height:11px;transition:transform .1s;position:absolute;top:50%;transform:translate(-50%,-50%)}.Oo1fpq_time{font-variant-numeric:tabular-nums;min-width:62px;color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;text-align:right;flex:none;font-size:10.5px}.Oo1fpq_playerCompact .Oo1fpq_time{min-width:56px;font-size:10px}.Oo1fpq_muteButton{width:24px;height:24px;color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.Oo1fpq_muteButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_modalMask{z-index:200;backdrop-filter:blur(3px);background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.Oo1fpq_modal{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-1,#fff);border-radius:14px;flex-direction:column;gap:12px;width:440px;max-width:100%;max-height:calc(100vh - 40px);padding:16px;display:flex;box-shadow:0 18px 50px #00000038}.Oo1fpq_modalHead{color:var(--dsw-alias-label-primary,#1f2328);justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.Oo1fpq_modalBody{flex-direction:column;gap:11px;min-height:0;display:flex;overflow-y:auto}.Oo1fpq_formRow{grid-template-columns:1fr 1fr;gap:10px;display:grid}.Oo1fpq_modalFoot{justify-content:flex-end;align-items:center;gap:8px;display:flex}.Oo1fpq_primaryButton{background:var(--dsw-alias-label-primary,#1f2328);min-height:32px;color:var(--dsw-alias-bg-layer-3,#fff);cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12.5px;font-weight:600;display:inline-flex}.Oo1fpq_primaryButton:disabled{opacity:.5;cursor:default}.Oo1fpq_secondaryButton{border:1px solid var(--dsw-alias-border-l2,#d1d5db);min-height:32px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:8px;padding:0 14px;font-family:inherit;font-size:12.5px}.Oo1fpq_secondaryButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_iconButton{width:26px;height:26px;color:var(--dsw-alias-label-tertiary,#9ca3af);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.Oo1fpq_iconButton:hover{color:var(--dsw-alias-label-primary,#1f2328);background:var(--dsw-alias-bg-layer-2,#f3f4f6)}.Oo1fpq_toast{z-index:150;border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-mask-1,#fff);color:var(--dsw-alias-label-primary,#1f2328);backdrop-filter:blur(6px);pointer-events:none;border-radius:999px;align-items:center;gap:7px;padding:7px 16px;font-size:12.5px;animation:.16s ease-out Oo1fpq_audiogenToastIn;display:inline-flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000038}@keyframes Oo1fpq_audiogenToastIn{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.Oo1fpq_toast{animation-duration:1ms}}.Oo1fpq_modelCheckList{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-3,#fff);border-radius:8px;flex-direction:column;gap:4px;max-height:180px;padding:8px;display:flex;overflow-y:auto}.Oo1fpq_resultGroups{flex-direction:column;gap:16px;display:flex}.Oo1fpq_resultGroup{flex-direction:column;gap:8px;display:flex}.Oo1fpq_resultGroupHead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_resultGroupChip{background:var(--dsw-alias-interactive-bg-hover-accent,#26314824);border:1px solid var(--dsw-alias-border-l2,#d1d5db);color:var(--dsw-alias-label-primary,#1f2328);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.Oo1fpq_resultGroupError{color:var(--dsw-alias-state-error-primary,#dc2626);font-size:12px}.Oo1fpq_resultGroupCount{color:var(--dsw-alias-label-tertiary,#9ca3af);font-size:11px}.Oo1fpq_overrideTable{flex-direction:column;gap:6px;display:flex}.Oo1fpq_overrideRow{align-items:center;gap:6px;display:flex}.Oo1fpq_overrideCell{min-width:0;color:var(--dsw-alias-label-secondary,#6b7280);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}.Oo1fpq_overrideCell .Oo1fpq_input{min-height:30px;padding:5px 8px}.Oo1fpq_overrideCellHead{color:var(--dsw-alias-label-primary,#1f2328);white-space:normal;font-weight:700}.Oo1fpq_taskList{flex-direction:column;gap:14px;display:flex}.Oo1fpq_taskCard{border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-2,#fafafa);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.Oo1fpq_taskCard[data-state=failed]{border-color:var(--dsw-alias-state-error-primary,#dc2626)}.Oo1fpq_taskCard[data-state=cancelled]{opacity:.75}.Oo1fpq_taskHead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_taskLabel{color:var(--dsw-alias-label-primary,#1f2328);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;font-weight:600;overflow:hidden}.Oo1fpq_taskStatus{color:var(--dsw-alias-label-secondary,#6b7280);font-size:12px}.Oo1fpq_taskStatus[data-state=done]{color:var(--dsw-alias-state-success-primary,#16a34a)}.Oo1fpq_taskStatus[data-state=failed]{color:var(--dsw-alias-state-error-primary,#dc2626)}.Oo1fpq_taskActions{gap:6px;margin-left:auto;display:flex}.Oo1fpq_historyTabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.Oo1fpq_historyTab{border:1px solid var(--dsw-alias-border-l2,#d1d5db);cursor:pointer;background:var(--dsw-alias-bg-layer-3,#fff);color:var(--dsw-alias-label-secondary,#6b7280);border-radius:999px;padding:3px 10px;font-size:12px}.Oo1fpq_historyTab[data-active=true]{background:var(--dsw-alias-interactive-bg-hover-accent,#26314824);color:var(--dsw-alias-label-primary,#1f2328);font-weight:600}.Oo1fpq_historyTabCount{color:var(--dsw-alias-label-tertiary,#9ca3af);margin-left:4px;font-size:11px}.Oo1fpq_historyCompareSummary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.Oo1fpq_historyCompareBadge{color:var(--dsw-alias-label-secondary,#6b7280);border:1px solid var(--dsw-alias-border-l2,#d1d5db);background:var(--dsw-alias-bg-layer-3,#fff);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.Oo1fpq_historyModelRow{border-top:1px dashed var(--dsw-alias-border-l1,#e5e7eb);flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;display:flex}.Oo1fpq_overrideOnly{color:var(--dsw-alias-label-tertiary,#9ca3af);font-size:10px;font-weight:500}.Oo1fpq_overrideDash{color:var(--dsw-alias-label-tertiary,#9ca3af);padding:0 6px}.Oo1fpq_historyTime{color:var(--dsw-alias-label-tertiary,#9ca3af);white-space:nowrap;margin:2px 0;font-size:11px}.Oo1fpq_formSection{letter-spacing:.04em;color:var(--dsw-alias-label-tertiary,#9ca3af);border-bottom:1px solid var(--dsw-alias-border-l1,#e5e7eb);margin:10px 0 2px;padding-bottom:4px;font-size:11px;font-weight:700}.Oo1fpq_formFields{grid-template-columns:1fr 1fr;align-items:end;gap:10px;display:grid}.Oo1fpq_fieldCell{min-width:0}.Oo1fpq_fieldFull{grid-column:1/-1}.Oo1fpq_modeIcon{margin-right:4px;font-size:13px}.Oo1fpq_modeButton[data-active=true]{border-color:var(--dsw-alias-interactive-bg-hover-accent,#26314824);background:var(--dsw-alias-interactive-bg-hover-accent,#26314824);color:var(--dsw-alias-label-primary,#1f2328);font-weight:600}.Oo1fpq_taskBar{background:var(--dsw-alias-border-l1,#e5e7eb);border-radius:999px;flex:1;min-width:60px;height:4px;display:block;overflow:hidden}.Oo1fpq_taskBar i{background:var(--dsw-alias-interactive-bg-hover-accent,#26314859);border-radius:999px;height:100%;transition:width .3s;display:block}.Oo1fpq_historyIcon{width:26px;height:26px;color:var(--dsw-alias-label-secondary,#6b7280);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.Oo1fpq_historyIcon:hover{background:var(--dsw-alias-interactive-bg-hover-accent,#26314824);color:var(--dsw-alias-label-primary,#1f2328)}.Oo1fpq_historyIcon[title^=删除]:hover{color:var(--dsw-alias-state-error-primary,#dc2626)}.Oo1fpq_historyPrompt{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.Oo1fpq_input:focus-visible,.Oo1fpq_select:focus-visible,.Oo1fpq_textarea:focus-visible,.Oo1fpq_modeButton:focus-visible,.Oo1fpq_ghostButton:focus-visible,.Oo1fpq_historyAction:focus-visible,.Oo1fpq_historyIcon:focus-visible{outline:2px solid var(--dsw-alias-interactive-bg-hover-accent,#26314859);outline-offset:1px}.Oo1fpq_generate:focus-visible{outline:2px solid var(--dsw-alias-interactive-bg-hover-accent,#26314859);outline-offset:2px}@media (width<=1100px){.Oo1fpq_studio{flex-wrap:wrap}.Oo1fpq_historyCol{width:100%;min-width:0;max-width:none}}@media (width<=720px){.Oo1fpq_formCol{width:100%;min-width:0;max-width:none}.Oo1fpq_resultCol{min-height:320px}}.Oo1fpq_formSectionRow{justify-content:space-between;align-items:flex-end;gap:8px;display:flex}.Oo1fpq_formSectionRow .Oo1fpq_formSection{flex:1}.Oo1fpq_enhanceCard{border:1px solid var(--dsw-alias-border-l1,#e5e7eb);background:var(--dsw-alias-bg-layer-2,#fafafa);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.Oo1fpq_enhanceCardHead{color:var(--dsw-alias-label-secondary,#6b7280);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.Oo1fpq_enhanceActions{gap:6px;display:flex}";
1142
1162
  const tagId$4 = "dsh-audiogen/audio-panel.module.css";
1143
1163
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$4) + "]") === null) {
1144
1164
  const tag = document.createElement("style");
@@ -1148,101 +1168,114 @@ window.__ModuleLoader__.load({
1148
1168
  document.head.appendChild(tag);
1149
1169
  }
1150
1170
  var audio_panel_module_css_default = {
1151
- "input": "Oo1fpq_input",
1152
- "ghostButton": "Oo1fpq_ghostButton",
1153
- "studio": "Oo1fpq_studio",
1154
- "iconButton": "Oo1fpq_iconButton",
1155
- "toast": "Oo1fpq_toast",
1156
- "secondaryButton": "Oo1fpq_secondaryButton",
1157
- "audioCardHead": "Oo1fpq_audioCardHead",
1158
- "tabs": "Oo1fpq_tabs",
1159
- "generate": "Oo1fpq_generate",
1160
- "modal": "Oo1fpq_modal",
1161
- "hint": "Oo1fpq_hint",
1162
- "primaryButton": "Oo1fpq_primaryButton",
1163
- "historyActions": "Oo1fpq_historyActions",
1164
- "resultModeChip": "Oo1fpq_resultModeChip",
1165
- "historyMeta": "Oo1fpq_historyMeta",
1171
+ "track": "Oo1fpq_track",
1172
+ "trackFill": "Oo1fpq_trackFill",
1173
+ "modalFoot": "Oo1fpq_modalFoot",
1174
+ "error": "Oo1fpq_error",
1175
+ "textarea": "Oo1fpq_textarea",
1176
+ "historyItem": "Oo1fpq_historyItem",
1177
+ "historyList": "Oo1fpq_historyList",
1166
1178
  "panel": "Oo1fpq_panel",
1167
- "player": "Oo1fpq_player",
1168
- "trackKnob": "Oo1fpq_trackKnob",
1169
- "modalBody": "Oo1fpq_modalBody",
1170
- "resultEmptyHint": "Oo1fpq_resultEmptyHint",
1171
- "playerCompact": "Oo1fpq_playerCompact",
1179
+ "compareBoard": "Oo1fpq_compareBoard",
1180
+ "resultGroupHead": "Oo1fpq_resultGroupHead",
1181
+ "formRow": "Oo1fpq_formRow",
1182
+ "resultGroups": "Oo1fpq_resultGroups",
1172
1183
  "overrideCell": "Oo1fpq_overrideCell",
1173
- "compareGroup": "Oo1fpq_compareGroup",
1174
- "overrideCellHead": "Oo1fpq_overrideCellHead",
1184
+ "historyTab": "Oo1fpq_historyTab",
1185
+ "historyModelRow": "Oo1fpq_historyModelRow",
1186
+ "compareChip": "Oo1fpq_compareChip",
1187
+ "fieldCell": "Oo1fpq_fieldCell",
1188
+ "select": "Oo1fpq_select",
1189
+ "resultEmptyHint": "Oo1fpq_resultEmptyHint",
1190
+ "historyMeta": "Oo1fpq_historyMeta",
1191
+ "playButton": "Oo1fpq_playButton",
1192
+ "enhanceActions": "Oo1fpq_enhanceActions",
1193
+ "resultModeChip": "Oo1fpq_resultModeChip",
1194
+ "audiogenToastIn": "Oo1fpq_audiogenToastIn",
1195
+ "header": "Oo1fpq_header",
1196
+ "taskHead": "Oo1fpq_taskHead",
1175
1197
  "taskList": "Oo1fpq_taskList",
1176
- "modeButton": "Oo1fpq_modeButton",
1177
- "compareState": "Oo1fpq_compareState",
1178
- "historyClear": "Oo1fpq_historyClear",
1179
- "compareBox": "Oo1fpq_compareBox",
1180
- "modalMask": "Oo1fpq_modalMask",
1181
- "resultGroups": "Oo1fpq_resultGroups",
1182
- "row": "Oo1fpq_row",
1198
+ "tabs": "Oo1fpq_tabs",
1199
+ "tab": "Oo1fpq_tab",
1200
+ "generate": "Oo1fpq_generate",
1183
1201
  "resultCol": "Oo1fpq_resultCol",
1202
+ "resultEmptyIcon": "Oo1fpq_resultEmptyIcon",
1203
+ "historyEmpty": "Oo1fpq_historyEmpty",
1204
+ "historyAction": "Oo1fpq_historyAction",
1205
+ "hint": "Oo1fpq_hint",
1206
+ "historyActions": "Oo1fpq_historyActions",
1207
+ "primaryButton": "Oo1fpq_primaryButton",
1208
+ "iconButton": "Oo1fpq_iconButton",
1209
+ "audioCardActions": "Oo1fpq_audioCardActions",
1210
+ "label": "Oo1fpq_label",
1211
+ "overrideTable": "Oo1fpq_overrideTable",
1212
+ "checkbox": "Oo1fpq_checkbox",
1184
1213
  "muteButton": "Oo1fpq_muteButton",
1185
- "resultGroupChip": "Oo1fpq_resultGroupChip",
1186
- "historyHeader": "Oo1fpq_historyHeader",
1214
+ "historyPrompt": "Oo1fpq_historyPrompt",
1215
+ "ghostButton": "Oo1fpq_ghostButton",
1216
+ "taskCard": "Oo1fpq_taskCard",
1217
+ "player": "Oo1fpq_player",
1218
+ "taskLabel": "Oo1fpq_taskLabel",
1219
+ "studio": "Oo1fpq_studio",
1187
1220
  "historyCompareBadge": "Oo1fpq_historyCompareBadge",
1221
+ "trackKnob": "Oo1fpq_trackKnob",
1222
+ "overrideOnly": "Oo1fpq_overrideOnly",
1223
+ "historyTitle": "Oo1fpq_historyTitle",
1224
+ "taskActions": "Oo1fpq_taskActions",
1225
+ "time": "Oo1fpq_time",
1226
+ "taskStatus": "Oo1fpq_taskStatus",
1188
1227
  "resultGroup": "Oo1fpq_resultGroup",
1189
- "tab": "Oo1fpq_tab",
1190
- "formRow": "Oo1fpq_formRow",
1191
- "historyModelRow": "Oo1fpq_historyModelRow",
1192
- "audioCardIndex": "Oo1fpq_audioCardIndex",
1228
+ "historyTime": "Oo1fpq_historyTime",
1229
+ "formFields": "Oo1fpq_formFields",
1230
+ "fieldFull": "Oo1fpq_fieldFull",
1231
+ "enhanceCard": "Oo1fpq_enhanceCard",
1232
+ "savedChip": "Oo1fpq_savedChip",
1233
+ "formCol": "Oo1fpq_formCol",
1234
+ "historyIcon": "Oo1fpq_historyIcon",
1235
+ "resultGroupCount": "Oo1fpq_resultGroupCount",
1236
+ "historyTabs": "Oo1fpq_historyTabs",
1237
+ "taskBar": "Oo1fpq_taskBar",
1238
+ "enhanceCardHead": "Oo1fpq_enhanceCardHead",
1239
+ "modal": "Oo1fpq_modal",
1240
+ "modeButton": "Oo1fpq_modeButton",
1241
+ "audioCardHead": "Oo1fpq_audioCardHead",
1242
+ "resultEmpty": "Oo1fpq_resultEmpty",
1193
1243
  "resultMeta": "Oo1fpq_resultMeta",
1194
- "header": "Oo1fpq_header",
1195
- "audioCardActions": "Oo1fpq_audioCardActions",
1196
- "modelCheckList": "Oo1fpq_modelCheckList",
1197
- "taskHead": "Oo1fpq_taskHead",
1198
1244
  "audioList": "Oo1fpq_audioList",
1199
- "historyItem": "Oo1fpq_historyItem",
1200
- "overrideDash": "Oo1fpq_overrideDash",
1201
- "historyTabs": "Oo1fpq_historyTabs",
1202
- "compareChips": "Oo1fpq_compareChips",
1245
+ "modelCheckList": "Oo1fpq_modelCheckList",
1246
+ "overrideRow": "Oo1fpq_overrideRow",
1203
1247
  "modalHead": "Oo1fpq_modalHead",
1204
- "resultGroupHead": "Oo1fpq_resultGroupHead",
1205
- "trackFill": "Oo1fpq_trackFill",
1206
- "historyTab": "Oo1fpq_historyTab",
1207
- "compareModelName": "Oo1fpq_compareModelName",
1208
- "overrideOnly": "Oo1fpq_overrideOnly",
1209
- "error": "Oo1fpq_error",
1210
- "label": "Oo1fpq_label",
1211
- "savedChip": "Oo1fpq_savedChip",
1212
- "compareGroupHead": "Oo1fpq_compareGroupHead",
1248
+ "title": "Oo1fpq_title",
1249
+ "compareState": "Oo1fpq_compareState",
1250
+ "resultGroupError": "Oo1fpq_resultGroupError",
1251
+ "modeRow": "Oo1fpq_modeRow",
1252
+ "input": "Oo1fpq_input",
1253
+ "playerCompact": "Oo1fpq_playerCompact",
1254
+ "row": "Oo1fpq_row",
1255
+ "historyHeader": "Oo1fpq_historyHeader",
1256
+ "audioCard": "Oo1fpq_audioCard",
1257
+ "historyCompareSummary": "Oo1fpq_historyCompareSummary",
1258
+ "compareGroup": "Oo1fpq_compareGroup",
1259
+ "historyTabCount": "Oo1fpq_historyTabCount",
1260
+ "formSectionRow": "Oo1fpq_formSectionRow",
1213
1261
  "voiceIdChip": "Oo1fpq_voiceIdChip",
1214
- "playButton": "Oo1fpq_playButton",
1215
- "formCol": "Oo1fpq_formCol",
1216
- "textarea": "Oo1fpq_textarea",
1262
+ "formSection": "Oo1fpq_formSection",
1217
1263
  "historyCol": "Oo1fpq_historyCol",
1218
- "historyList": "Oo1fpq_historyList",
1219
- "historyPrompt": "Oo1fpq_historyPrompt",
1220
- "taskLabel": "Oo1fpq_taskLabel",
1221
- "track": "Oo1fpq_track",
1222
- "historyTabCount": "Oo1fpq_historyTabCount",
1223
- "resultGroupCount": "Oo1fpq_resultGroupCount",
1224
- "checkbox": "Oo1fpq_checkbox",
1225
- "audioCard": "Oo1fpq_audioCard",
1226
- "taskStatus": "Oo1fpq_taskStatus",
1227
- "compareBoard": "Oo1fpq_compareBoard",
1228
- "historyAction": "Oo1fpq_historyAction",
1229
- "title": "Oo1fpq_title",
1230
- "overrideTable": "Oo1fpq_overrideTable",
1264
+ "audioCardIndex": "Oo1fpq_audioCardIndex",
1265
+ "compareBox": "Oo1fpq_compareBox",
1266
+ "compareGroupHead": "Oo1fpq_compareGroupHead",
1267
+ "modalMask": "Oo1fpq_modalMask",
1268
+ "modalBody": "Oo1fpq_modalBody",
1269
+ "toast": "Oo1fpq_toast",
1270
+ "historyClear": "Oo1fpq_historyClear",
1271
+ "secondaryButton": "Oo1fpq_secondaryButton",
1272
+ "overrideCellHead": "Oo1fpq_overrideCellHead",
1273
+ "compareChips": "Oo1fpq_compareChips",
1274
+ "overrideDash": "Oo1fpq_overrideDash",
1231
1275
  "advanced": "Oo1fpq_advanced",
1232
- "modalFoot": "Oo1fpq_modalFoot",
1233
- "resultEmptyIcon": "Oo1fpq_resultEmptyIcon",
1234
- "taskActions": "Oo1fpq_taskActions",
1235
- "historyCompareSummary": "Oo1fpq_historyCompareSummary",
1236
- "modeRow": "Oo1fpq_modeRow",
1237
- "resultEmpty": "Oo1fpq_resultEmpty",
1238
- "taskCard": "Oo1fpq_taskCard",
1239
- "resultGroupError": "Oo1fpq_resultGroupError",
1240
- "compareChip": "Oo1fpq_compareChip",
1241
- "time": "Oo1fpq_time",
1242
- "historyTitle": "Oo1fpq_historyTitle",
1243
- "audiogenToastIn": "Oo1fpq_audiogenToastIn",
1244
- "overrideRow": "Oo1fpq_overrideRow",
1245
- "historyEmpty": "Oo1fpq_historyEmpty"
1276
+ "resultGroupChip": "Oo1fpq_resultGroupChip",
1277
+ "modeIcon": "Oo1fpq_modeIcon",
1278
+ "compareModelName": "Oo1fpq_compareModelName"
1246
1279
  };
1247
1280
  //#endregion
1248
1281
  //#region src/client/audio-player.tsx
@@ -1598,6 +1631,13 @@ window.__ModuleLoader__.load({
1598
1631
  if (mode === "sfx") return tt("mode.sfx");
1599
1632
  return tt("mode.voiceDesign");
1600
1633
  }
1634
+ /** 历史时间显示(YYYY-MM-DD HH:mm)。 */
1635
+ function formatClock(timestamp) {
1636
+ const date = new Date(timestamp);
1637
+ if (Number.isNaN(date.getTime())) return "";
1638
+ const pad = (n) => String(n).padStart(2, "0");
1639
+ return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())} ${pad(date.getHours())}:${pad(date.getMinutes())}`;
1640
+ }
1601
1641
  function useConfig(scope) {
1602
1642
  const [value, setValue] = (0, react.useState)(scope.getSnapshot().value);
1603
1643
  (0, react.useEffect)(() => scope.subscribe(() => {
@@ -1702,6 +1742,8 @@ window.__ModuleLoader__.load({
1702
1742
  const [bitrate, setBitrate] = (0, react.useState)("");
1703
1743
  const [audioChannel, setAudioChannel] = (0, react.useState)("");
1704
1744
  const [subtitle, setSubtitle] = (0, react.useState)(false);
1745
+ const [enhancing, setEnhancing] = (0, react.useState)(false);
1746
+ const [enhancePreview, setEnhancePreview] = (0, react.useState)(null);
1705
1747
  const [seed, setSeed] = (0, react.useState)("");
1706
1748
  const [steps, setSteps] = (0, react.useState)("");
1707
1749
  const [cfgScale, setCfgScale] = (0, react.useState)("");
@@ -2014,6 +2056,99 @@ window.__ModuleLoader__.load({
2014
2056
  const removeTask = (taskId) => {
2015
2057
  setTasks((current) => current.filter((task) => task.id !== taskId));
2016
2058
  };
2059
+ /** 从历史参数回填表单(参考 AI 生图「恢复」):配置 + prompt 一键复用。 */
2060
+ const restoreFromParams = (params, modeValue, singleModel, compareModelsRestore) => {
2061
+ const str = (key) => {
2062
+ const v = params[key];
2063
+ return typeof v === "string" && v.trim() !== "" ? v.trim() : void 0;
2064
+ };
2065
+ const num = (key) => {
2066
+ const v = params[key];
2067
+ if (typeof v === "number" && Number.isFinite(v)) return v;
2068
+ if (typeof v === "string" && v.trim() !== "") {
2069
+ const parsed = Number(v);
2070
+ return Number.isFinite(parsed) ? parsed : void 0;
2071
+ }
2072
+ };
2073
+ const bool = (key) => typeof params[key] === "boolean" ? params[key] : void 0;
2074
+ setMode(modeValue);
2075
+ const modelValue = str("model") ?? singleModel;
2076
+ if (modelValue !== "") setModel(modelValue);
2077
+ if (compareModelsRestore !== void 0 && compareModelsRestore.length > 0) {
2078
+ setCompareMode(true);
2079
+ setCompareModels(compareModelsRestore);
2080
+ } else setCompareMode(false);
2081
+ const voiceValue = str("voice");
2082
+ if (voiceValue !== void 0) setVoice(voiceValue);
2083
+ const speedValue = num("speed");
2084
+ if (speedValue !== void 0) setSpeed(String(speedValue));
2085
+ const durationValue = num("duration");
2086
+ if (durationValue !== void 0) setDuration(String(durationValue));
2087
+ const formatValue = str("format");
2088
+ if (formatValue !== void 0) setFormat(formatValue);
2089
+ const lyricsValue = str("lyrics");
2090
+ if (lyricsValue !== void 0) setLyrics(lyricsValue);
2091
+ const instrumentalValue = bool("isInstrumental");
2092
+ if (instrumentalValue !== void 0) setInstrumental(instrumentalValue);
2093
+ const loopValue = bool("loop");
2094
+ if (loopValue !== void 0) setLoop(loopValue);
2095
+ const influenceValue = num("promptInfluence");
2096
+ if (influenceValue !== void 0) setPromptInfluence(String(influenceValue));
2097
+ const emotionValue = str("emotion");
2098
+ if (emotionValue !== void 0) setEmotion(emotionValue);
2099
+ const volValue = num("vol");
2100
+ if (volValue !== void 0) setVol(String(volValue));
2101
+ const pitchValue = num("pitch");
2102
+ if (pitchValue !== void 0) setPitch(String(pitchValue));
2103
+ if (Array.isArray(params.pronunciationTone)) setToneText(params.pronunciationTone.filter((item) => typeof item === "string").join("\n"));
2104
+ const sampleRateValue = num("sampleRate");
2105
+ if (sampleRateValue !== void 0) setSampleRate(String(sampleRateValue));
2106
+ const bitrateValue = num("bitrate");
2107
+ if (bitrateValue !== void 0) setBitrate(String(bitrateValue));
2108
+ const channelValue = num("audioChannel");
2109
+ if (channelValue !== void 0) setAudioChannel(String(channelValue));
2110
+ const subtitleValue = bool("subtitleEnable");
2111
+ if (subtitleValue !== void 0) setSubtitle(subtitleValue);
2112
+ const seedValue = num("seed");
2113
+ if (seedValue !== void 0) setSeed(String(seedValue));
2114
+ const stepsValue = num("steps");
2115
+ if (stepsValue !== void 0) setSteps(String(stepsValue));
2116
+ const cfgValue = num("cfgScale");
2117
+ if (cfgValue !== void 0) setCfgScale(String(cfgValue));
2118
+ const previewValue = str("previewText");
2119
+ if (previewValue !== void 0) setPreviewText(previewValue);
2120
+ const channelIdValue = str("channelId");
2121
+ if (channelIdValue !== void 0 && modeValue === "voice_design") setDesignChannelId(channelIdValue);
2122
+ props.showToast("已恢复该次生成的配置,可直接再次生成");
2123
+ };
2124
+ /** 调用宿主增强(Agent 默认模型),结果先预览再应用。 */
2125
+ const runEnhance = async () => {
2126
+ if (prompt.trim() === "") {
2127
+ setError("请先输入文本/提示词,再点击增强");
2128
+ return;
2129
+ }
2130
+ setEnhancing(true);
2131
+ setError(null);
2132
+ try {
2133
+ const result = await api.enhancePrompt(prompt.trim(), mode);
2134
+ if (result.ok !== true || result.enhanced === void 0) {
2135
+ setError(result.message ?? "增强失败,请稍后重试");
2136
+ return;
2137
+ }
2138
+ setEnhancePreview(result.enhanced);
2139
+ } catch (err) {
2140
+ setError(err instanceof Error ? err.message : String(err));
2141
+ } finally {
2142
+ setEnhancing(false);
2143
+ }
2144
+ };
2145
+ /** 删除历史记录(对比任务卡删除该任务的全部模型条目)。 */
2146
+ const deleteHistoryEntries = async (ids) => {
2147
+ try {
2148
+ for (const id of ids) await api.removeHistory(id);
2149
+ } catch {}
2150
+ reload();
2151
+ };
2017
2152
  const openSaveDialog = (files, context) => {
2018
2153
  setSaveDialog({
2019
2154
  files,
@@ -2396,18 +2531,34 @@ window.__ModuleLoader__.load({
2396
2531
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
2397
2532
  className: audio_panel_module_css_default.modeRow,
2398
2533
  children: [
2399
- "tts",
2400
- "music",
2401
- "sfx",
2402
- "voice_design"
2403
- ].map((item) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2534
+ ["tts", "🎙️"],
2535
+ ["music", "🎵"],
2536
+ ["sfx", "🔊"],
2537
+ ["voice_design", "🎨"]
2538
+ ].map(([item, icon]) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
2404
2539
  type: "button",
2405
2540
  className: audio_panel_module_css_default.modeButton,
2406
2541
  "data-active": mode === item ? "true" : "false",
2407
2542
  onClick: () => setMode(item),
2408
- children: item === "tts" ? tt("mode.tts") : item === "music" ? tt("mode.music") : item === "sfx" ? tt("mode.sfx") : tt("mode.voiceDesign")
2543
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
2544
+ className: audio_panel_module_css_default.modeIcon,
2545
+ children: icon
2546
+ }), modeLabelOf(item)]
2409
2547
  }, item))
2410
2548
  }),
2549
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
2550
+ className: audio_panel_module_css_default.formSectionRow,
2551
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
2552
+ className: audio_panel_module_css_default.formSection,
2553
+ children: "输入"
2554
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2555
+ type: "button",
2556
+ className: audio_panel_module_css_default.ghostButton,
2557
+ disabled: enhancing,
2558
+ onClick: () => void runEnhance(),
2559
+ children: enhancing ? "增强中…" : "✨ 增强提示词"
2560
+ })]
2561
+ }),
2411
2562
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
2412
2563
  className: audio_panel_module_css_default.label,
2413
2564
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: mode === "voice_design" ? "音色描述" : mode === "tts" ? "文本" : "提示词" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
@@ -2417,6 +2568,48 @@ window.__ModuleLoader__.load({
2417
2568
  placeholder: tt("prompt.placeholder")
2418
2569
  })]
2419
2570
  }),
2571
+ enhancePreview !== null ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
2572
+ className: audio_panel_module_css_default.enhanceCard,
2573
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
2574
+ className: audio_panel_module_css_default.enhanceCardHead,
2575
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("strong", { children: [
2576
+ "增强结果(",
2577
+ modeLabelOf(mode),
2578
+ ")"
2579
+ ] }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
2580
+ className: audio_panel_module_css_default.enhanceActions,
2581
+ children: [
2582
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2583
+ type: "button",
2584
+ className: audio_panel_module_css_default.ghostButton,
2585
+ onClick: () => {
2586
+ setPrompt(enhancePreview);
2587
+ setEnhancePreview(null);
2588
+ props.showToast("已应用增强结果");
2589
+ },
2590
+ children: "应用"
2591
+ }),
2592
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2593
+ type: "button",
2594
+ className: audio_panel_module_css_default.ghostButton,
2595
+ disabled: enhancing,
2596
+ onClick: () => void runEnhance(),
2597
+ children: "重新生成"
2598
+ }),
2599
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2600
+ type: "button",
2601
+ className: audio_panel_module_css_default.ghostButton,
2602
+ onClick: () => setEnhancePreview(null),
2603
+ children: "放弃"
2604
+ })
2605
+ ]
2606
+ })]
2607
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
2608
+ className: audio_panel_module_css_default.textarea,
2609
+ value: enhancePreview,
2610
+ readOnly: true
2611
+ })]
2612
+ }) : null,
2420
2613
  mode === "voice_design" ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
2421
2614
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
2422
2615
  className: audio_panel_module_css_default.label,
@@ -2452,6 +2645,10 @@ window.__ModuleLoader__.load({
2452
2645
  })]
2453
2646
  })
2454
2647
  ] }) : null,
2648
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
2649
+ className: audio_panel_module_css_default.formSection,
2650
+ children: "模型"
2651
+ }),
2455
2652
  needModel ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
2456
2653
  className: audio_panel_module_css_default.checkbox,
2457
2654
  title: "选择多个模型,用相同参数逐个生成,便于对比效果",
@@ -2570,7 +2767,17 @@ window.__ModuleLoader__.load({
2570
2767
  }, group.channelId))]
2571
2768
  })]
2572
2769
  }) : null,
2573
- globalSpecs.filter((spec) => spec.advanced !== true).map((spec) => renderField(spec)),
2770
+ globalSpecs.some((spec) => spec.advanced !== true) ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
2771
+ className: audio_panel_module_css_default.formSection,
2772
+ children: "生成参数"
2773
+ }) : null,
2774
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
2775
+ className: audio_panel_module_css_default.formFields,
2776
+ children: globalSpecs.filter((spec) => spec.advanced !== true).map((spec) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
2777
+ className: spec.key === "lyrics" || spec.key === "toneText" ? audio_panel_module_css_default.fieldFull : audio_panel_module_css_default.fieldCell,
2778
+ children: renderField(spec)
2779
+ }, spec.key))
2780
+ }),
2574
2781
  mode === "tts" && globalSpecs.some((spec) => spec.advanced === true) ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("details", {
2575
2782
  className: audio_panel_module_css_default.advanced,
2576
2783
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("summary", { children: "MiniMax 高级参数" }), globalSpecs.filter((spec) => spec.advanced === true).map((spec) => renderField(spec))]
@@ -2621,6 +2828,19 @@ window.__ModuleLoader__.load({
2621
2828
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
2622
2829
  className: audio_panel_module_css_default.resultEmptyHint,
2623
2830
  children: "点击「开始生成」即创建一个任务,可同时进行多个;勾选「模型对比」用多个模型同参数生成对比"
2831
+ }),
2832
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
2833
+ type: "button",
2834
+ className: audio_panel_module_css_default.ghostButton,
2835
+ onClick: () => {
2836
+ setPrompt({
2837
+ tts: "今天是不是很开心呀(laughs),当然了!我们一起去公园散步吧。",
2838
+ music: "Cinematic orchestral piece with a clear \"before/after\" transition at 1:00, starting minimalist piano + strings, then full orchestra entrance with timpani and brass at the 1-minute mark.",
2839
+ sfx: "科技感 UI 提示音:清脆短促,带轻微回声与空气感。",
2840
+ voice_design: "讲述悬疑故事的播音员,声音低沉富有磁性,语速时快时慢,营造紧张神秘的氛围。"
2841
+ }[mode] ?? "");
2842
+ },
2843
+ children: "填入示例 prompt"
2624
2844
  })
2625
2845
  ]
2626
2846
  }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
@@ -2649,6 +2869,10 @@ window.__ModuleLoader__.load({
2649
2869
  "data-state": task.status,
2650
2870
  children: statusText
2651
2871
  }),
2872
+ task.status === "running" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
2873
+ className: audio_panel_module_css_default.taskBar,
2874
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("i", { style: { width: `${task.progress.total > 0 ? Math.round(task.progress.done / task.progress.total * 100) : 0}%` } })
2875
+ }) : null,
2652
2876
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
2653
2877
  className: audio_panel_module_css_default.taskActions,
2654
2878
  children: [task.status === "running" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
@@ -2746,17 +2970,24 @@ window.__ModuleLoader__.load({
2746
2970
  children: [
2747
2971
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("summary", {
2748
2972
  className: audio_panel_module_css_default.historyCompareSummary,
2749
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
2750
- className: audio_panel_module_css_default.historyPrompt,
2751
- children: item.prompt
2752
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
2753
- className: audio_panel_module_css_default.historyCompareBadge,
2754
- children: [
2755
- "对比 · ",
2756
- item.models.length,
2757
- " 个模型"
2758
- ]
2759
- })]
2973
+ children: [
2974
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
2975
+ className: audio_panel_module_css_default.historyPrompt,
2976
+ children: item.prompt
2977
+ }),
2978
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
2979
+ className: audio_panel_module_css_default.historyCompareBadge,
2980
+ children: [
2981
+ "对比 · ",
2982
+ item.models.length,
2983
+ " 个模型"
2984
+ ]
2985
+ }),
2986
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
2987
+ className: audio_panel_module_css_default.historyTime,
2988
+ children: formatClock(item.createdAt)
2989
+ })
2990
+ ]
2760
2991
  }),
2761
2992
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
2762
2993
  className: audio_panel_module_css_default.historyMeta,
@@ -2788,7 +3019,23 @@ window.__ModuleLoader__.load({
2788
3019
  })
2789
3020
  })
2790
3021
  ]
2791
- }, model.entry.id))
3022
+ }, model.entry.id)),
3023
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
3024
+ className: audio_panel_module_css_default.historyActions,
3025
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
3026
+ type: "button",
3027
+ className: audio_panel_module_css_default.historyIcon,
3028
+ title: "恢复(回填配置与全部模型)",
3029
+ onClick: () => restoreFromParams(item.models[0]?.entry.params ?? {}, item.mode, item.models[0]?.model ?? "", item.models.map((model) => model.model)),
3030
+ children: "↺"
3031
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
3032
+ type: "button",
3033
+ className: audio_panel_module_css_default.historyIcon,
3034
+ title: "删除整个对比任务",
3035
+ onClick: () => void deleteHistoryEntries(item.models.map((model) => model.entry.id)),
3036
+ children: "✕"
3037
+ })]
3038
+ })
2792
3039
  ]
2793
3040
  }, item.key);
2794
3041
  const entry = item.entry;
@@ -2808,19 +3055,40 @@ window.__ModuleLoader__.load({
2808
3055
  entry.channel ? ` · ${entry.channel}` : ""
2809
3056
  ]
2810
3057
  }),
3058
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
3059
+ className: audio_panel_module_css_default.historyTime,
3060
+ children: formatClock(entry.createdAt)
3061
+ }),
2811
3062
  entry.audio.map((audio, index) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AudioPlayer, {
2812
3063
  src: audio.url,
2813
3064
  compact: true,
2814
3065
  itemKey: `${entry.id}-${index}`
2815
3066
  }, index)),
2816
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
3067
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
2817
3068
  className: audio_panel_module_css_default.historyActions,
2818
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
2819
- type: "button",
2820
- className: audio_panel_module_css_default.historyAction,
2821
- onClick: () => openSaveDialog(audioRefsOfEntry(entry), contextOfEntry(entry)),
2822
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(StarIcon, {}), " 入库"]
2823
- })
3069
+ children: [
3070
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
3071
+ type: "button",
3072
+ className: audio_panel_module_css_default.historyIcon,
3073
+ title: "恢复(回填配置与 prompt)",
3074
+ onClick: () => restoreFromParams(entry.params ?? {}, entry.mode, entry.model),
3075
+ children: "↺"
3076
+ }),
3077
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
3078
+ type: "button",
3079
+ className: audio_panel_module_css_default.historyIcon,
3080
+ title: "删除这条记录",
3081
+ onClick: () => void deleteHistoryEntries([entry.id]),
3082
+ children: "✕"
3083
+ }),
3084
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
3085
+ type: "button",
3086
+ className: audio_panel_module_css_default.historyIcon,
3087
+ title: "加入资源库",
3088
+ onClick: () => openSaveDialog(audioRefsOfEntry(entry), contextOfEntry(entry)),
3089
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(StarIcon, {})
3090
+ })
3091
+ ]
2824
3092
  })
2825
3093
  ]
2826
3094
  }, item.key);
@@ -2849,62 +3117,62 @@ window.__ModuleLoader__.load({
2849
3117
  document.head.appendChild(tag);
2850
3118
  }
2851
3119
  var library_module_css_default = {
2852
- "stateNote": "vzUV2a_stateNote",
2853
- "cardCheck": "vzUV2a_cardCheck",
2854
- "drawerLabel": "vzUV2a_drawerLabel",
2855
- "drawerField": "vzUV2a_drawerField",
2856
- "ghostBtn": "vzUV2a_ghostBtn",
2857
- "provKey": "vzUV2a_provKey",
2858
- "provValue": "vzUV2a_provValue",
2859
- "smallChip": "vzUV2a_smallChip",
2860
- "emptyHint": "vzUV2a_emptyHint",
2861
- "paramsDetails": "vzUV2a_paramsDetails",
2862
- "listHead": "vzUV2a_listHead",
2863
- "card": "vzUV2a_card",
3120
+ "empty": "vzUV2a_empty",
3121
+ "drawerTitle": "vzUV2a_drawerTitle",
3122
+ "drawerPlayer": "vzUV2a_drawerPlayer",
3123
+ "dangerBtn": "vzUV2a_dangerBtn",
2864
3124
  "emptyIcon": "vzUV2a_emptyIcon",
2865
- "audiogenDrawerIn": "vzUV2a_audiogenDrawerIn",
2866
- "library": "vzUV2a_library",
3125
+ "drawerLabel": "vzUV2a_drawerLabel",
3126
+ "drawerSplit": "vzUV2a_drawerSplit",
3127
+ "listCount": "vzUV2a_listCount",
3128
+ "input": "vzUV2a_input",
3129
+ "primaryBtn": "vzUV2a_primaryBtn",
3130
+ "card": "vzUV2a_card",
3131
+ "typeBadge": "vzUV2a_typeBadge",
3132
+ "cardFoot": "vzUV2a_cardFoot",
3133
+ "iconBtn": "vzUV2a_iconBtn",
3134
+ "code": "vzUV2a_code",
3135
+ "typeChips": "vzUV2a_typeChips",
2867
3136
  "chipCount": "vzUV2a_chipCount",
2868
- "searchBox": "vzUV2a_searchBox",
3137
+ "cardTime": "vzUV2a_cardTime",
3138
+ "cardName": "vzUV2a_cardName",
3139
+ "listHead": "vzUV2a_listHead",
3140
+ "audiogenDrawerIn": "vzUV2a_audiogenDrawerIn",
3141
+ "drawerBody": "vzUV2a_drawerBody",
2869
3142
  "filterLabel": "vzUV2a_filterLabel",
2870
- "drawer": "vzUV2a_drawer",
2871
- "iconBtn": "vzUV2a_iconBtn",
3143
+ "stateNote": "vzUV2a_stateNote",
3144
+ "drawerMask": "vzUV2a_drawerMask",
3145
+ "paramsDetails": "vzUV2a_paramsDetails",
2872
3146
  "drawerSection": "vzUV2a_drawerSection",
3147
+ "ghostBtn": "vzUV2a_ghostBtn",
3148
+ "cardCheck": "vzUV2a_cardCheck",
2873
3149
  "drawerPlayerName": "vzUV2a_drawerPlayerName",
2874
- "cardHead": "vzUV2a_cardHead",
2875
3150
  "textarea": "vzUV2a_textarea",
2876
- "searchInput": "vzUV2a_searchInput",
2877
- "drawerTitle": "vzUV2a_drawerTitle",
3151
+ "metaChip": "vzUV2a_metaChip",
3152
+ "provenance": "vzUV2a_provenance",
3153
+ "library": "vzUV2a_library",
3154
+ "searchBox": "vzUV2a_searchBox",
3155
+ "chip": "vzUV2a_chip",
3156
+ "provRow": "vzUV2a_provRow",
3157
+ "provKey": "vzUV2a_provKey",
3158
+ "provValue": "vzUV2a_provValue",
3159
+ "cardHead": "vzUV2a_cardHead",
3160
+ "smallChip": "vzUV2a_smallChip",
3161
+ "drawer": "vzUV2a_drawer",
2878
3162
  "mono": "vzUV2a_mono",
3163
+ "drawerField": "vzUV2a_drawerField",
3164
+ "selCount": "vzUV2a_selCount",
3165
+ "promptText": "vzUV2a_promptText",
2879
3166
  "drawerActions": "vzUV2a_drawerActions",
2880
- "typeChips": "vzUV2a_typeChips",
2881
- "input": "vzUV2a_input",
2882
- "cardTime": "vzUV2a_cardTime",
2883
- "primaryBtn": "vzUV2a_primaryBtn",
3167
+ "drawerHead": "vzUV2a_drawerHead",
2884
3168
  "drawerPlayerList": "vzUV2a_drawerPlayerList",
2885
- "dangerBtn": "vzUV2a_dangerBtn",
2886
- "listCount": "vzUV2a_listCount",
2887
- "metaChip": "vzUV2a_metaChip",
2888
- "drawerBody": "vzUV2a_drawerBody",
2889
- "drawerMask": "vzUV2a_drawerMask",
2890
- "drawerSplit": "vzUV2a_drawerSplit",
2891
- "provRow": "vzUV2a_provRow",
2892
3169
  "smallSelect": "vzUV2a_smallSelect",
2893
3170
  "listActions": "vzUV2a_listActions",
2894
- "filterRow": "vzUV2a_filterRow",
2895
- "drawerPlayer": "vzUV2a_drawerPlayer",
2896
- "provenance": "vzUV2a_provenance",
2897
- "cardFoot": "vzUV2a_cardFoot",
2898
- "typeBadge": "vzUV2a_typeBadge",
2899
- "promptText": "vzUV2a_promptText",
2900
3171
  "grid": "vzUV2a_grid",
2901
- "selCount": "vzUV2a_selCount",
2902
- "empty": "vzUV2a_empty",
2903
- "code": "vzUV2a_code",
2904
- "cardName": "vzUV2a_cardName",
2905
- "chip": "vzUV2a_chip",
2906
- "drawerHead": "vzUV2a_drawerHead",
2907
- "toolbar": "vzUV2a_toolbar"
3172
+ "emptyHint": "vzUV2a_emptyHint",
3173
+ "searchInput": "vzUV2a_searchInput",
3174
+ "toolbar": "vzUV2a_toolbar",
3175
+ "filterRow": "vzUV2a_filterRow"
2908
3176
  };
2909
3177
  //#endregion
2910
3178
  //#region src/client/library-view.tsx
@@ -3777,167 +4045,167 @@ window.__ModuleLoader__.load({
3777
4045
  document.head.appendChild(tag);
3778
4046
  }
3779
4047
  var panel_module_css_default = {
3780
- "prompt": "rwa6qG_prompt",
3781
- "galleryViewToggle": "rwa6qG_galleryViewToggle",
4048
+ "galleryCount": "rwa6qG_galleryCount",
4049
+ "historyMain": "rwa6qG_historyMain",
4050
+ "download": "rwa6qG_download",
4051
+ "lightboxIndex": "rwa6qG_lightboxIndex",
4052
+ "history": "rwa6qG_history",
4053
+ "reference": "rwa6qG_reference",
4054
+ "generateButton": "rwa6qG_generateButton",
4055
+ "galleryTagFilterList": "rwa6qG_galleryTagFilterList",
4056
+ "galleryCard": "rwa6qG_galleryCard",
3782
4057
  "galleryCardFooter": "rwa6qG_galleryCardFooter",
3783
- "historyPrompt": "rwa6qG_historyPrompt",
3784
- "lightboxEdit": "rwa6qG_lightboxEdit",
3785
- "lightboxCopy": "rwa6qG_lightboxCopy",
4058
+ "hiddenFile": "rwa6qG_hiddenFile",
4059
+ "galleryFilterHeading": "rwa6qG_galleryFilterHeading",
3786
4060
  "galleryToolbarActions": "rwa6qG_galleryToolbarActions",
3787
- "galleryWorkspace": "rwa6qG_galleryWorkspace",
3788
- "githubLink": "rwa6qG_githubLink",
3789
- "bigSpinner": "rwa6qG_bigSpinner",
3790
- "historyFilters": "rwa6qG_historyFilters",
3791
- "galleryImageButton": "rwa6qG_galleryImageButton",
4061
+ "historyThumbPlaceholder": "rwa6qG_historyThumbPlaceholder",
4062
+ "modeRow": "rwa6qG_modeRow",
4063
+ "galleryViewToggle": "rwa6qG_galleryViewToggle",
4064
+ "configGuide": "rwa6qG_configGuide",
4065
+ "uploadHint": "rwa6qG_uploadHint",
4066
+ "galleryFilterDivider": "rwa6qG_galleryFilterDivider",
4067
+ "taskTrayCount": "rwa6qG_taskTrayCount",
3792
4068
  "lightboxTools": "rwa6qG_lightboxTools",
4069
+ "taskStatus": "rwa6qG_taskStatus",
4070
+ "lightboxStage": "rwa6qG_lightboxStage",
4071
+ "comparisonGrid": "rwa6qG_comparisonGrid",
4072
+ "taskTrayClose": "rwa6qG_taskTrayClose",
4073
+ "comparisonImageButton": "rwa6qG_comparisonImageButton",
4074
+ "galleryAvatar": "rwa6qG_galleryAvatar",
4075
+ "zoomHint": "rwa6qG_zoomHint",
4076
+ "galleryTags": "rwa6qG_galleryTags",
4077
+ "lightboxZoomLevel": "rwa6qG_lightboxZoomLevel",
4078
+ "galleryRatioList": "rwa6qG_galleryRatioList",
4079
+ "galleryHeading": "rwa6qG_galleryHeading",
4080
+ "galleryMasonry": "rwa6qG_galleryMasonry",
4081
+ "galleryFilterNote": "rwa6qG_galleryFilterNote",
4082
+ "galleryCardInfo": "rwa6qG_galleryCardInfo",
3793
4083
  "lightboxCaptionRow": "rwa6qG_lightboxCaptionRow",
3794
- "gallerySort": "rwa6qG_gallerySort",
3795
- "referenceActions": "rwa6qG_referenceActions",
3796
- "gallerySelectMode": "rwa6qG_gallerySelectMode",
3797
- "galleryFilter": "rwa6qG_galleryFilter",
3798
4084
  "historyEmpty": "rwa6qG_historyEmpty",
3799
- "galleryClear": "rwa6qG_galleryClear",
3800
- "paramLabel": "rwa6qG_paramLabel",
3801
- "card": "rwa6qG_card",
3802
- "historyInfo": "rwa6qG_historyInfo",
3803
4085
  "entryIcon": "rwa6qG_entryIcon",
3804
- "lightboxTool": "rwa6qG_lightboxTool",
3805
- "galleryAdd": "rwa6qG_galleryAdd",
3806
- "galleryCard": "rwa6qG_galleryCard",
4086
+ "modelLabel": "rwa6qG_modelLabel",
4087
+ "optionGrid": "rwa6qG_optionGrid",
4088
+ "compareControl": "rwa6qG_compareControl",
4089
+ "paramLabel": "rwa6qG_paramLabel",
4090
+ "galleryToast": "rwa6qG_galleryToast",
4091
+ "canvas": "rwa6qG_canvas",
4092
+ "lightboxDownload": "rwa6qG_lightboxDownload",
4093
+ "uploadIcon": "rwa6qG_uploadIcon",
4094
+ "spinner": "rwa6qG_spinner",
3807
4095
  "entryLabel": "rwa6qG_entryLabel",
3808
- "panelTitle": "rwa6qG_panelTitle",
3809
- "gallerySearch": "rwa6qG_gallerySearch",
3810
- "enhanceButton": "rwa6qG_enhanceButton",
3811
- "historyTitle": "rwa6qG_historyTitle",
3812
- "modeRow": "rwa6qG_modeRow",
3813
- "canvasStateTitle": "rwa6qG_canvasStateTitle",
3814
- "lightboxStage": "rwa6qG_lightboxStage",
3815
- "reference": "rwa6qG_reference",
3816
- "modelMenuList": "rwa6qG_modelMenuList",
3817
- "lightboxMeta": "rwa6qG_lightboxMeta",
3818
- "comparisonImageButton": "rwa6qG_comparisonImageButton",
4096
+ "templatesButton": "rwa6qG_templatesButton",
4097
+ "referenceActions": "rwa6qG_referenceActions",
4098
+ "canvasEmptyIcon": "rwa6qG_canvasEmptyIcon",
4099
+ "dshImageGenSpin": "rwa6qG_dshImageGenSpin",
4100
+ "config": "rwa6qG_config",
3819
4101
  "updateBanner": "rwa6qG_updateBanner",
4102
+ "taskPrompt": "rwa6qG_taskPrompt",
4103
+ "historyAction": "rwa6qG_historyAction",
4104
+ "githubLink": "rwa6qG_githubLink",
3820
4105
  "historyClear": "rwa6qG_historyClear",
4106
+ "historyInfo": "rwa6qG_historyInfo",
4107
+ "modelMenuItem": "rwa6qG_modelMenuItem",
4108
+ "galleryTagFilter": "rwa6qG_galleryTagFilter",
4109
+ "canvasStateHint": "rwa6qG_canvasStateHint",
4110
+ "modelMenuList": "rwa6qG_modelMenuList",
4111
+ "gallerySort": "rwa6qG_gallerySort",
4112
+ "imageCaption": "rwa6qG_imageCaption",
4113
+ "taskRows": "rwa6qG_taskRows",
4114
+ "lightboxCaption": "rwa6qG_lightboxCaption",
4115
+ "dshImageGenToastIn": "rwa6qG_dshImageGenToastIn",
4116
+ "taskRow": "rwa6qG_taskRow",
4117
+ "galleryFilter": "rwa6qG_galleryFilter",
4118
+ "gallerySelectionBar": "rwa6qG_gallerySelectionBar",
4119
+ "lightboxScaleFrame": "rwa6qG_lightboxScaleFrame",
3821
4120
  "image": "rwa6qG_image",
3822
- "config": "rwa6qG_config",
3823
- "canvasHistoryTag": "rwa6qG_canvasHistoryTag",
3824
- "lightboxIndex": "rwa6qG_lightboxIndex",
3825
- "compareModelChoices": "rwa6qG_compareModelChoices",
4121
+ "lightboxFigure": "rwa6qG_lightboxFigure",
4122
+ "studio": "rwa6qG_studio",
4123
+ "updateActions": "rwa6qG_updateActions",
4124
+ "galleryTagEditor": "rwa6qG_galleryTagEditor",
4125
+ "panelHeading": "rwa6qG_panelHeading",
4126
+ "galleryToolbar": "rwa6qG_galleryToolbar",
4127
+ "lightbox": "rwa6qG_lightbox",
4128
+ "connectionStatus": "rwa6qG_connectionStatus",
3826
4129
  "gallerySelectionClear": "rwa6qG_gallerySelectionClear",
3827
- "promptFooter": "rwa6qG_promptFooter",
4130
+ "updateRelease": "rwa6qG_updateRelease",
4131
+ "panel": "rwa6qG_panel",
4132
+ "promptCount": "rwa6qG_promptCount",
4133
+ "paramGroup": "rwa6qG_paramGroup",
4134
+ "historyFilters": "rwa6qG_historyFilters",
4135
+ "optionRow": "rwa6qG_optionRow",
4136
+ "historyPrompt": "rwa6qG_historyPrompt",
4137
+ "canvasHistoryTag": "rwa6qG_canvasHistoryTag",
4138
+ "galleryAdd": "rwa6qG_galleryAdd",
4139
+ "comparisonBoard": "rwa6qG_comparisonBoard",
4140
+ "grid": "rwa6qG_grid",
4141
+ "historyTitle": "rwa6qG_historyTitle",
4142
+ "compareToggle": "rwa6qG_compareToggle",
3828
4143
  "lightboxNav": "rwa6qG_lightboxNav",
3829
- "lightboxScaleFrame": "rwa6qG_lightboxScaleFrame",
3830
- "zoomHint": "rwa6qG_zoomHint",
3831
4144
  "paramHint": "rwa6qG_paramHint",
3832
- "optionGrid": "rwa6qG_optionGrid",
3833
- "lightboxDownload": "rwa6qG_lightboxDownload",
3834
- "galleryTagFilterList": "rwa6qG_galleryTagFilterList",
3835
- "lightbox": "rwa6qG_lightbox",
3836
- "galleryTagInput": "rwa6qG_galleryTagInput",
3837
- "updateText": "rwa6qG_updateText",
3838
- "panelHeading": "rwa6qG_panelHeading",
3839
- "panelHeader": "rwa6qG_panelHeader",
4145
+ "card": "rwa6qG_card",
4146
+ "historyActions": "rwa6qG_historyActions",
3840
4147
  "galleryBulkButton": "rwa6qG_galleryBulkButton",
3841
- "connectionDot": "rwa6qG_connectionDot",
3842
- "gallerySelect": "rwa6qG_gallerySelect",
3843
- "taskTray": "rwa6qG_taskTray",
4148
+ "gallerySearch": "rwa6qG_gallerySearch",
4149
+ "lightboxActions": "rwa6qG_lightboxActions",
3844
4150
  "imageCard": "rwa6qG_imageCard",
3845
- "lightboxClose": "rwa6qG_lightboxClose",
3846
- "referenceImage": "rwa6qG_referenceImage",
3847
- "historyMeta": "rwa6qG_historyMeta",
3848
- "lightboxFigure": "rwa6qG_lightboxFigure",
3849
- "comparisonFullscreen": "rwa6qG_comparisonFullscreen",
3850
- "imageCaption": "rwa6qG_imageCaption",
3851
- "galleryMasonry": "rwa6qG_galleryMasonry",
3852
- "galleryTagFilter": "rwa6qG_galleryTagFilter",
3853
- "galleryRatioList": "rwa6qG_galleryRatioList",
3854
- "taskPrompt": "rwa6qG_taskPrompt",
3855
- "paramGroup": "rwa6qG_paramGroup",
3856
- "taskTrayClose": "rwa6qG_taskTrayClose",
4151
+ "canvasMeta": "rwa6qG_canvasMeta",
3857
4152
  "galleryRatio": "rwa6qG_galleryRatio",
3858
- "taskRow": "rwa6qG_taskRow",
3859
- "studio": "rwa6qG_studio",
3860
- "galleryFilterDivider": "rwa6qG_galleryFilterDivider",
3861
- "compareToggle": "rwa6qG_compareToggle",
3862
- "canvasStateHint": "rwa6qG_canvasStateHint",
3863
- "galleryBadge": "rwa6qG_galleryBadge",
3864
4153
  "taskTrayHeader": "rwa6qG_taskTrayHeader",
3865
- "modelWrap": "rwa6qG_modelWrap",
3866
- "modelMenu": "rwa6qG_modelMenu",
3867
- "spinner": "rwa6qG_spinner",
4154
+ "lightboxCopy": "rwa6qG_lightboxCopy",
4155
+ "taskTrayChevron": "rwa6qG_taskTrayChevron",
4156
+ "galleryImageButton": "rwa6qG_galleryImageButton",
4157
+ "historyList": "rwa6qG_historyList",
4158
+ "entry": "rwa6qG_entry",
4159
+ "configScroll": "rwa6qG_configScroll",
4160
+ "enhanceButton": "rwa6qG_enhanceButton",
4161
+ "canvasStateTitle": "rwa6qG_canvasStateTitle",
3868
4162
  "historyThumb": "rwa6qG_historyThumb",
3869
- "view": "rwa6qG_view",
3870
- "optionRow": "rwa6qG_optionRow",
3871
- "generateInner": "rwa6qG_generateInner",
3872
- "modePill": "rwa6qG_modePill",
3873
- "footer": "rwa6qG_footer",
3874
- "galleryFilterCount": "rwa6qG_galleryFilterCount",
3875
- "dshImageGenSpin": "rwa6qG_dshImageGenSpin",
4163
+ "canvasError": "rwa6qG_canvasError",
3876
4164
  "lightboxImage": "rwa6qG_lightboxImage",
3877
- "taskTrayToggle": "rwa6qG_taskTrayToggle",
3878
- "taskRows": "rwa6qG_taskRows",
3879
- "historyMain": "rwa6qG_historyMain",
3880
4165
  "galleryFilters": "rwa6qG_galleryFilters",
3881
- "templatesButton": "rwa6qG_templatesButton",
3882
- "galleryTags": "rwa6qG_galleryTags",
3883
- "modelMenuItem": "rwa6qG_modelMenuItem",
3884
- "taskStatus": "rwa6qG_taskStatus",
3885
- "galleryFilterNote": "rwa6qG_galleryFilterNote",
3886
- "galleryRemove": "rwa6qG_galleryRemove",
3887
- "download": "rwa6qG_download",
3888
- "updateRelease": "rwa6qG_updateRelease",
3889
- "panel": "rwa6qG_panel",
3890
- "historyThumbPlaceholder": "rwa6qG_historyThumbPlaceholder",
3891
- "uploadBox": "rwa6qG_uploadBox",
3892
- "updateActions": "rwa6qG_updateActions",
3893
- "dshImageGenToastIn": "rwa6qG_dshImageGenToastIn",
3894
- "comparisonBoard": "rwa6qG_comparisonBoard",
3895
- "historyActions": "rwa6qG_historyActions",
3896
- "entry": "rwa6qG_entry",
4166
+ "historyHeader": "rwa6qG_historyHeader",
4167
+ "galleryFilterCount": "rwa6qG_galleryFilterCount",
4168
+ "galleryImage": "rwa6qG_galleryImage",
4169
+ "historySearch": "rwa6qG_historySearch",
3897
4170
  "configGuideBody": "rwa6qG_configGuideBody",
3898
- "configGuide": "rwa6qG_configGuide",
3899
- "generateButton": "rwa6qG_generateButton",
3900
- "comparisonGrid": "rwa6qG_comparisonGrid",
3901
- "uploadIcon": "rwa6qG_uploadIcon",
3902
- "galleryAvatar": "rwa6qG_galleryAvatar",
3903
- "taskTrayCount": "rwa6qG_taskTrayCount",
3904
- "optionPill": "rwa6qG_optionPill",
3905
4171
  "modelSelect": "rwa6qG_modelSelect",
4172
+ "promptFooter": "rwa6qG_promptFooter",
4173
+ "lightboxMeta": "rwa6qG_lightboxMeta",
4174
+ "canvasState": "rwa6qG_canvasState",
4175
+ "view": "rwa6qG_view",
4176
+ "connectionDot": "rwa6qG_connectionDot",
4177
+ "lightboxClose": "rwa6qG_lightboxClose",
4178
+ "modelWrap": "rwa6qG_modelWrap",
4179
+ "lightboxTool": "rwa6qG_lightboxTool",
4180
+ "lightboxEdit": "rwa6qG_lightboxEdit",
4181
+ "compareModelChoices": "rwa6qG_compareModelChoices",
4182
+ "gallerySelect": "rwa6qG_gallerySelect",
4183
+ "galleryRemove": "rwa6qG_galleryRemove",
4184
+ "optionPill": "rwa6qG_optionPill",
4185
+ "galleryBadge": "rwa6qG_galleryBadge",
4186
+ "footer": "rwa6qG_footer",
4187
+ "galleryWorkspace": "rwa6qG_galleryWorkspace",
4188
+ "galleryTagInput": "rwa6qG_galleryTagInput",
4189
+ "galleryClear": "rwa6qG_galleryClear",
4190
+ "comparisonFullscreen": "rwa6qG_comparisonFullscreen",
4191
+ "updateText": "rwa6qG_updateText",
4192
+ "referenceImage": "rwa6qG_referenceImage",
4193
+ "gallerySelectMode": "rwa6qG_gallerySelectMode",
4194
+ "prompt": "rwa6qG_prompt",
3906
4195
  "galleryTagEdit": "rwa6qG_galleryTagEdit",
3907
- "galleryHeading": "rwa6qG_galleryHeading",
3908
- "galleryCardInfo": "rwa6qG_galleryCardInfo",
3909
4196
  "canvasBody": "rwa6qG_canvasBody",
3910
- "galleryTagEditor": "rwa6qG_galleryTagEditor",
3911
- "uploadHint": "rwa6qG_uploadHint",
3912
- "galleryCount": "rwa6qG_galleryCount",
3913
- "historyList": "rwa6qG_historyList",
3914
- "promptCount": "rwa6qG_promptCount",
3915
- "galleryToast": "rwa6qG_galleryToast",
3916
- "configScroll": "rwa6qG_configScroll",
3917
- "connectionStatus": "rwa6qG_connectionStatus",
3918
- "canvasMeta": "rwa6qG_canvasMeta",
3919
- "lightboxCaption": "rwa6qG_lightboxCaption",
3920
- "history": "rwa6qG_history",
3921
- "modelLabel": "rwa6qG_modelLabel",
3922
- "lightboxZoomLevel": "rwa6qG_lightboxZoomLevel",
3923
- "historyHeader": "rwa6qG_historyHeader",
3924
- "galleryToolbar": "rwa6qG_galleryToolbar",
3925
- "taskTrayChevron": "rwa6qG_taskTrayChevron",
3926
- "gallerySelectionBar": "rwa6qG_gallerySelectionBar",
3927
4197
  "comparisonFullscreenGrid": "rwa6qG_comparisonFullscreenGrid",
3928
- "grid": "rwa6qG_grid",
3929
- "canvas": "rwa6qG_canvas",
3930
- "galleryFilterHeading": "rwa6qG_galleryFilterHeading",
3931
- "compareControl": "rwa6qG_compareControl",
3932
- "galleryImage": "rwa6qG_galleryImage",
3933
- "canvasState": "rwa6qG_canvasState",
3934
- "lightboxActions": "rwa6qG_lightboxActions",
3935
- "historySearch": "rwa6qG_historySearch",
4198
+ "taskTrayToggle": "rwa6qG_taskTrayToggle",
4199
+ "uploadBox": "rwa6qG_uploadBox",
4200
+ "modePill": "rwa6qG_modePill",
4201
+ "panelTitle": "rwa6qG_panelTitle",
4202
+ "modelMenu": "rwa6qG_modelMenu",
3936
4203
  "historyItem": "rwa6qG_historyItem",
3937
- "hiddenFile": "rwa6qG_hiddenFile",
3938
- "historyAction": "rwa6qG_historyAction",
3939
- "canvasEmptyIcon": "rwa6qG_canvasEmptyIcon",
3940
- "canvasError": "rwa6qG_canvasError"
4204
+ "taskTray": "rwa6qG_taskTray",
4205
+ "generateInner": "rwa6qG_generateInner",
4206
+ "historyMeta": "rwa6qG_historyMeta",
4207
+ "bigSpinner": "rwa6qG_bigSpinner",
4208
+ "panelHeader": "rwa6qG_panelHeader"
3941
4209
  };
3942
4210
  //#endregion
3943
4211
  //#region src/client/mount.tsx
@@ -4594,79 +4862,79 @@ window.__ModuleLoader__.load({
4594
4862
  document.head.appendChild(tag);
4595
4863
  }
4596
4864
  var settings_card_module_css_default = {
4597
- "modelCatalog": "zmjoSq_modelCatalog",
4598
- "editorFooter": "zmjoSq_editorFooter",
4599
- "candidateActions": "zmjoSq_candidateActions",
4600
- "header": "zmjoSq_header",
4601
- "channelSection": "zmjoSq_channelSection",
4602
- "chevronOpen": "zmjoSq_chevronOpen",
4603
- "channelName": "zmjoSq_channelName",
4604
- "deleteConfirmText": "zmjoSq_deleteConfirmText",
4605
- "editorHeader": "zmjoSq_editorHeader",
4606
- "chevron": "zmjoSq_chevron",
4607
- "addModel": "zmjoSq_addModel",
4608
- "discard": "zmjoSq_discard",
4609
- "card": "zmjoSq_card",
4865
+ "sectionHeader": "zmjoSq_sectionHeader",
4866
+ "modelCatalogTitle": "zmjoSq_modelCatalogTitle",
4867
+ "save": "zmjoSq_save",
4868
+ "readOnly": "zmjoSq_readOnly",
4610
4869
  "channelBadge": "zmjoSq_channelBadge",
4611
- "channelAdd": "zmjoSq_channelAdd",
4612
- "modelArrow": "zmjoSq_modelArrow",
4870
+ "channelDotWarn": "zmjoSq_channelDotWarn",
4871
+ "deleteConfirmText": "zmjoSq_deleteConfirmText",
4872
+ "modelCatalog": "zmjoSq_modelCatalog",
4873
+ "customSettings": "zmjoSq_customSettings",
4874
+ "reset": "zmjoSq_reset",
4875
+ "modelCatalogMeta": "zmjoSq_modelCatalogMeta",
4613
4876
  "pending": "zmjoSq_pending",
4614
- "modelInput": "zmjoSq_modelInput",
4615
- "modelBadge": "zmjoSq_modelBadge",
4616
- "description": "zmjoSq_description",
4617
- "channelMain": "zmjoSq_channelMain",
4618
- "candidateLabel": "zmjoSq_candidateLabel",
4877
+ "label": "zmjoSq_label",
4619
4878
  "input": "zmjoSq_input",
4620
- "field": "zmjoSq_field",
4621
- "sectionHeader": "zmjoSq_sectionHeader",
4622
- "channelEmpty": "zmjoSq_channelEmpty",
4623
- "editorTag": "zmjoSq_editorTag",
4624
- "modelRows": "zmjoSq_modelRows",
4625
- "candidatePanel": "zmjoSq_candidatePanel",
4626
- "candidateHead": "zmjoSq_candidateHead",
4627
- "modelCatalogHead": "zmjoSq_modelCatalogHead",
4628
- "sectionHint": "zmjoSq_sectionHint",
4879
+ "name": "zmjoSq_name",
4629
4880
  "candidateId": "zmjoSq_candidateId",
4630
- "editorTitle": "zmjoSq_editorTitle",
4631
4881
  "channelDanger": "zmjoSq_channelDanger",
4632
- "channelRow": "zmjoSq_channelRow",
4633
- "customSettingsBody": "zmjoSq_customSettingsBody",
4634
- "channelAction": "zmjoSq_channelAction",
4882
+ "modelRows": "zmjoSq_modelRows",
4883
+ "modelArrow": "zmjoSq_modelArrow",
4884
+ "candidateTitle": "zmjoSq_candidateTitle",
4885
+ "body": "zmjoSq_body",
4886
+ "channelSection": "zmjoSq_channelSection",
4887
+ "description": "zmjoSq_description",
4635
4888
  "modelEmpty": "zmjoSq_modelEmpty",
4636
- "save": "zmjoSq_save",
4889
+ "addModel": "zmjoSq_addModel",
4890
+ "channelDotReady": "zmjoSq_channelDotReady",
4891
+ "modelBadge": "zmjoSq_modelBadge",
4892
+ "footer": "zmjoSq_footer",
4893
+ "editorTitle": "zmjoSq_editorTitle",
4894
+ "candidateHead": "zmjoSq_candidateHead",
4895
+ "discard": "zmjoSq_discard",
4896
+ "modelCatalogHead": "zmjoSq_modelCatalogHead",
4897
+ "candidateLabel": "zmjoSq_candidateLabel",
4898
+ "chevronOpen": "zmjoSq_chevronOpen",
4899
+ "channelEditor": "zmjoSq_channelEditor",
4900
+ "card": "zmjoSq_card",
4637
4901
  "sectionTitle": "zmjoSq_sectionTitle",
4638
- "headText": "zmjoSq_headText",
4639
4902
  "link": "zmjoSq_link",
4640
- "label": "zmjoSq_label",
4903
+ "channelName": "zmjoSq_channelName",
4904
+ "modelInput": "zmjoSq_modelInput",
4905
+ "editorTag": "zmjoSq_editorTag",
4906
+ "customSettingsSummary": "zmjoSq_customSettingsSummary",
4907
+ "customSettingsBody": "zmjoSq_customSettingsBody",
4641
4908
  "modelCategorySelect": "zmjoSq_modelCategorySelect",
4642
4909
  "channelMeta": "zmjoSq_channelMeta",
4643
- "modelRow": "zmjoSq_modelRow",
4644
- "candidateTitle": "zmjoSq_candidateTitle",
4645
- "channelDotReady": "zmjoSq_channelDotReady",
4646
- "modelCatalogTools": "zmjoSq_modelCatalogTools",
4910
+ "chevron": "zmjoSq_chevron",
4911
+ "channelEmpty": "zmjoSq_channelEmpty",
4912
+ "linkButton": "zmjoSq_linkButton",
4913
+ "editorFooter": "zmjoSq_editorFooter",
4914
+ "failed": "zmjoSq_failed",
4915
+ "modelRowRemove": "zmjoSq_modelRowRemove",
4647
4916
  "select": "zmjoSq_select",
4648
- "channelList": "zmjoSq_channelList",
4649
- "channelHost": "zmjoSq_channelHost",
4650
- "name": "zmjoSq_name",
4651
- "body": "zmjoSq_body",
4652
- "readOnly": "zmjoSq_readOnly",
4653
- "channelEditor": "zmjoSq_channelEditor",
4654
- "modelCatalogTitle": "zmjoSq_modelCatalogTitle",
4655
- "detectOk": "zmjoSq_detectOk",
4656
- "footer": "zmjoSq_footer",
4657
- "channelAddRow": "zmjoSq_channelAddRow",
4658
- "customSettings": "zmjoSq_customSettings",
4917
+ "field": "zmjoSq_field",
4659
4918
  "editorWrap": "zmjoSq_editorWrap",
4660
- "modelRowRemove": "zmjoSq_modelRowRemove",
4919
+ "candidate": "zmjoSq_candidate",
4920
+ "candidateActions": "zmjoSq_candidateActions",
4921
+ "headText": "zmjoSq_headText",
4661
4922
  "candidateList": "zmjoSq_candidateList",
4923
+ "channelList": "zmjoSq_channelList",
4924
+ "channelHost": "zmjoSq_channelHost",
4925
+ "modelRow": "zmjoSq_modelRow",
4926
+ "editorHeader": "zmjoSq_editorHeader",
4927
+ "channelMain": "zmjoSq_channelMain",
4928
+ "channelAdd": "zmjoSq_channelAdd",
4929
+ "channelAction": "zmjoSq_channelAction",
4662
4930
  "head": "zmjoSq_head",
4663
- "modelCatalogMeta": "zmjoSq_modelCatalogMeta",
4664
- "reset": "zmjoSq_reset",
4665
- "candidate": "zmjoSq_candidate",
4666
- "linkButton": "zmjoSq_linkButton",
4667
- "customSettingsSummary": "zmjoSq_customSettingsSummary",
4668
- "channelDotWarn": "zmjoSq_channelDotWarn",
4669
- "failed": "zmjoSq_failed"
4931
+ "header": "zmjoSq_header",
4932
+ "modelCatalogTools": "zmjoSq_modelCatalogTools",
4933
+ "candidatePanel": "zmjoSq_candidatePanel",
4934
+ "channelRow": "zmjoSq_channelRow",
4935
+ "detectOk": "zmjoSq_detectOk",
4936
+ "sectionHint": "zmjoSq_sectionHint",
4937
+ "channelAddRow": "zmjoSq_channelAddRow"
4670
4938
  };
4671
4939
  //#endregion
4672
4940
  //#region src/client/SettingsCard.tsx
@@ -5611,17 +5879,17 @@ window.__ModuleLoader__.load({
5611
5879
  document.head.appendChild(tag);
5612
5880
  }
5613
5881
  var audio_toolview_module_css_default = {
5614
- "status": "_7K1QKa_status",
5615
- "audios": "_7K1QKa_audios",
5616
- "audioRow": "_7K1QKa_audioRow",
5617
- "audio": "_7K1QKa_audio",
5882
+ "header": "_7K1QKa_header",
5618
5883
  "error": "_7K1QKa_error",
5619
- "download": "_7K1QKa_download",
5884
+ "status": "_7K1QKa_status",
5885
+ "message": "_7K1QKa_message",
5620
5886
  "empty": "_7K1QKa_empty",
5621
- "icon": "_7K1QKa_icon",
5622
- "header": "_7K1QKa_header",
5887
+ "download": "_7K1QKa_download",
5623
5888
  "root": "_7K1QKa_root",
5624
- "message": "_7K1QKa_message"
5889
+ "icon": "_7K1QKa_icon",
5890
+ "audioRow": "_7K1QKa_audioRow",
5891
+ "audios": "_7K1QKa_audios",
5892
+ "audio": "_7K1QKa_audio"
5625
5893
  };
5626
5894
  //#endregion
5627
5895
  //#region src/client/audio-toolview.tsx