feat: 인스타 슬레이트 패키지 다운로드 버튼

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-06 13:03:43 +09:00
parent 96191b2d7c
commit 52677c606a
2 changed files with 6 additions and 0 deletions

View File

@@ -548,6 +548,8 @@ export function getInstaAssetUrl(slateId, page) {
return `/api/insta/slates/${slateId}/assets/${page}`; return `/api/insta/slates/${slateId}/assets/${page}`;
} }
export const instaPackageUrl = (slateId) => `/api/insta/slates/${slateId}/package`;
export function getInstaTask(taskId) { export function getInstaTask(taskId) {
return apiGet(`/api/insta/tasks/${encodeURIComponent(taskId)}`); return apiGet(`/api/insta/tasks/${encodeURIComponent(taskId)}`);
} }

View File

@@ -11,6 +11,7 @@ import {
renderInstaSlate, renderInstaSlate,
deleteInstaSlate, deleteInstaSlate,
getInstaAssetUrl, getInstaAssetUrl,
instaPackageUrl,
getInstaTask, getInstaTask,
getInstaPrompt, getInstaPrompt,
putInstaPrompt, putInstaPrompt,
@@ -832,6 +833,9 @@ function SlateDetail({ slate, onDelete, onRender }) {
</div> </div>
<div className="ic-detail__actions"> <div className="ic-detail__actions">
<button className="ic-btn ic-btn--secondary ic-btn--sm" onClick={onRender}>재렌더</button> <button className="ic-btn ic-btn--secondary ic-btn--sm" onClick={onRender}>재렌더</button>
<a className="ic-btn ic-btn--secondary ic-btn--sm" href={instaPackageUrl(slate.id)} download>
📦 패키지 다운로드 (10 + 캡션)
</a>
<button className="ic-btn ic-btn--danger ic-btn--sm" onClick={onDelete}>삭제</button> <button className="ic-btn ic-btn--danger ic-btn--sm" onClick={onDelete}>삭제</button>
</div> </div>
</div> </div>