polish: cleanup unused code, i18n gaps, a11y, error handling

- Removed unused ApproverMultiSelect imports (ArtefactDetailPanel, TranslationDetailPanel)
- Removed stale editProjectId/editCampaignId state from ArtefactDetailPanel
- Added 3 missing i18n keys (selectVersionFirst, pendingReviewInfo, noReviewInfo)
- Added error toast on link picker API failure (PostDetail)
- Added ARIA attributes to PortalSelect (role=combobox, aria-expanded, listbox, option)
- Deleted test screenshots from project root
- Simplified artefact creation modal: title + type only (removed brand/project/campaign/approver/description)
- Cleaned up ArtefactDetailPanel props (removed unused projects/campaigns)
- Translation submit-review: requires source_content before allowing review
- Artefact submit-review: requires at least one attachment for design/video
- Translation reviewer moved to Review tab (single select, mandatory)
- Server blocks translation submit without reviewer

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
fahed
2026-03-16 15:48:19 +03:00
parent eb23931ce0
commit 16a94a2f19
12 changed files with 156 additions and 90 deletions
+1 -2
View File
@@ -134,6 +134,7 @@ export default function PostDetail() {
}
} catch {
setLinkCandidates([])
toast.error(t('common.error'))
}
}
@@ -468,8 +469,6 @@ export default function PostDetail() {
onUpdate={loadComposition}
onDelete={() => { setOpenArtefact(null); loadComposition() }}
assignableUsers={teamMembers}
projects={[]}
campaigns={campaigns}
/>
)}
</div>