첫 실행 시 외부 도구 설치 마법사를 띄우고 7종(FFmpeg·LibreOffice·Pandoc·ImageMagick·H2Orestart·agy·Codex)을 기본 전체 선택 상태로 순차 설치한다. - Core: ExternalToolCatalog(정적 카탈로그, winget ID 실검증), ExternalToolInstaller(winget 무인 실행·재감지 판정, IExternalCommandRunner 시드로 테스트 가능) - Core: ExternalToolDetector에 winget FFmpeg 스캔 + Pandoc/ImageMagick 감지 추가 - App: ToolSetupWindow + ToolSetupViewModel, 첫 실행 플래그(setup.tools.done), 설정 창 '외부 도구 설치/검증' 재진입 버튼 - Tests: ExternalToolInstallerTests 5건 - 기존 미커밋 작업(광고 Ads 지원: AdBannerControl/AdLargeCardControl/AdService, AI 백엔드 agy·switchboard·codex 채팅 클라이언트, 관련 테스트) 포함
21 lines
657 B
C#
21 lines
657 B
C#
namespace Everything2Everything.Core.Ads;
|
|
|
|
public enum AdType
|
|
{
|
|
Banner,
|
|
LargeCard
|
|
}
|
|
|
|
public class AdItem
|
|
{
|
|
public string Id { get; set; } = string.Empty;
|
|
public string Title { get; set; } = string.Empty;
|
|
public string Description { get; set; } = string.Empty;
|
|
public string BadgeText { get; set; } = "AD";
|
|
public string ImageUrl { get; set; } = string.Empty;
|
|
public string TargetUrl { get; set; } = string.Empty;
|
|
public string CtaText { get; set; } = "자세히 보기";
|
|
public AdType Type { get; set; } = AdType.Banner;
|
|
public bool IsActive { get; set; } = true;
|
|
public int DisplayOrder { get; set; } = 0;
|
|
}
|