mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-03 00:47:53 +00:00
### Prompt box - Fix prompt box overflowing past the viewport at some desktop widths (Generate button hidden) - removed `w-full` so it sizes to the content area beside the sidebar (create-image + create-video). ### Recreate action - Add **Recreate** to in-progress jobs in the create-page gallery (grid + list) and the task queue - previously only on completed/failed. - Task queue had no Recreate at all; added it to all three states (in-progress/completed/failed) for consistency. - Recreate on the in-progress grid card sits bottom-right inline with the prompt; in-progress list row reveals it on hover (matching completed rows). - Extract shared `useRecreateFromPromptToken` hook; refactor FailedCard/FailedRow onto it (DRY). ### Model display names - Consolidate to a single source of truth: webapp `getModelDisplayName` now delegates to `@storyteller/model-list` (removed the duplicate local map). Gallery, task queue, and lightbox now agree. - Fix missing names: `gpt_image_1` (gallery) and Midjourney in the lightbox - added `midjourney_7` / `midjourney_7_niji` / `midjourney_8` to the model-list name + creator-icon maps; aligned `veo_2` → "Google Veo 2". ### Sticky prompt settings across model switches - Prompt-box settings no longer reset when switching models - the user's choice persists and is resolved against the new model (kept if supported, else falls back for display/generation only, without losing the preference). - Covers aspect ratio, count, resolution, quality (image) and aspect ratio, resolution, count, duration, sound (video). - Add `lib/resolve-model-setting.ts` (`resolveModelOption` / `resolveModelCount`); `handleModelChange` now only switches the model (+ capability-bound input mode on video).