diff --git a/App.xaml b/App.xaml new file mode 100644 index 0000000..a44b2c0 --- /dev/null +++ b/App.xaml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/App.xaml.cs b/App.xaml.cs new file mode 100644 index 0000000..fbb830b --- /dev/null +++ b/App.xaml.cs @@ -0,0 +1,74 @@ +using Microsoft.UI.Windowing; +using Microsoft.UI.Xaml.Media; +using Microsoft.UI.Xaml.Navigation; +using System; +using Windows.Graphics; +using WinRT.Interop; + +namespace TornadoAce_GSShop +{ + /// + /// Provides application-specific behavior to supplement the default Application class. + /// + public partial class App : Application + { + private Window? window; + + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + } + + /// + /// Invoked when the application is launched normally by the end user. Other entry points + /// will be used such as when the application is launched to open a specific file. + /// + /// Details about the launch request and process. + protected override void OnLaunched(LaunchActivatedEventArgs e) + { + window ??= new Window + { + Title = "TornadoAce GS Shop" + }; + window.SystemBackdrop = new MicaBackdrop(); + + if (window.Content is not Frame rootFrame) + { + rootFrame = new Frame(); + rootFrame.NavigationFailed += OnNavigationFailed; + window.Content = rootFrame; + } + + _ = rootFrame.Navigate(typeof(MainPage), e.Arguments); + ConfigureWindow(window); + window.Activate(); + } + + private static void ConfigureWindow(Window targetWindow) + { + var windowHandle = WindowNative.GetWindowHandle(targetWindow); + if (windowHandle == IntPtr.Zero) + { + return; + } + + var windowId = Microsoft.UI.Win32Interop.GetWindowIdFromWindow(windowHandle); + var appWindow = AppWindow.GetFromWindowId(windowId); + appWindow.Resize(new SizeInt32(1440, 900)); + } + + /// + /// Invoked when Navigation to a certain page fails + /// + /// The Frame which failed navigation + /// Details about the navigation failure + void OnNavigationFailed(object sender, NavigationFailedEventArgs e) + { + throw new Exception("Failed to load Page " + e.SourcePageType.FullName); + } + } +} diff --git a/Assets/LockScreenLogo.scale-200.png b/Assets/LockScreenLogo.scale-200.png new file mode 100644 index 0000000..7440f0d Binary files /dev/null and b/Assets/LockScreenLogo.scale-200.png differ diff --git a/Assets/SplashScreen.scale-200.png b/Assets/SplashScreen.scale-200.png new file mode 100644 index 0000000..32f486a Binary files /dev/null and b/Assets/SplashScreen.scale-200.png differ diff --git a/Assets/Square150x150Logo.scale-200.png b/Assets/Square150x150Logo.scale-200.png new file mode 100644 index 0000000..53ee377 Binary files /dev/null and b/Assets/Square150x150Logo.scale-200.png differ diff --git a/Assets/Square44x44Logo.scale-200.png b/Assets/Square44x44Logo.scale-200.png new file mode 100644 index 0000000..f713bba Binary files /dev/null and b/Assets/Square44x44Logo.scale-200.png differ diff --git a/Assets/Square44x44Logo.targetsize-24_altform-unplated.png b/Assets/Square44x44Logo.targetsize-24_altform-unplated.png new file mode 100644 index 0000000..dc9f5be Binary files /dev/null and b/Assets/Square44x44Logo.targetsize-24_altform-unplated.png differ diff --git a/Assets/StoreLogo.png b/Assets/StoreLogo.png new file mode 100644 index 0000000..a4586f2 Binary files /dev/null and b/Assets/StoreLogo.png differ diff --git a/Assets/Wide310x150Logo.scale-200.png b/Assets/Wide310x150Logo.scale-200.png new file mode 100644 index 0000000..8b4a5d0 Binary files /dev/null and b/Assets/Wide310x150Logo.scale-200.png differ diff --git a/Imports.cs b/Imports.cs new file mode 100644 index 0000000..6c71a2e --- /dev/null +++ b/Imports.cs @@ -0,0 +1,4 @@ +global using TornadoAce_GSShop.Views; + +global using Microsoft.UI.Xaml; +global using Microsoft.UI.Xaml.Controls; diff --git a/Package.appxmanifest b/Package.appxmanifest new file mode 100644 index 0000000..d2a1269 --- /dev/null +++ b/Package.appxmanifest @@ -0,0 +1,51 @@ + + + + + + + + + + TornadoAce_GSShop + User Name + Assets\StoreLogo.png + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Properties/launchSettings.json b/Properties/launchSettings.json new file mode 100644 index 0000000..246cbc0 --- /dev/null +++ b/Properties/launchSettings.json @@ -0,0 +1,10 @@ +{ + "profiles": { + "TornadoAce_GSShop (Package)": { + "commandName": "MsixPackage" + }, + "TornadoAce_GSShop (Unpackaged)": { + "commandName": "Project" + } + } +} diff --git a/TornadoAce_GSShop.csproj b/TornadoAce_GSShop.csproj new file mode 100644 index 0000000..49f6b73 --- /dev/null +++ b/TornadoAce_GSShop.csproj @@ -0,0 +1,76 @@ + + + + net8.0-windows10.0.19041.0 + 10.0.17763.0 + WinExe + + + true + false + true + + + enable + latest + enable + TornadoAce_GSShop + + + true + x64 + app.manifest + win-x64 + + + + win-x64 + + + + win-$(Platform).pubxml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + False + + diff --git a/TornadoAce_GSShop.slnx b/TornadoAce_GSShop.slnx new file mode 100644 index 0000000..94ab741 --- /dev/null +++ b/TornadoAce_GSShop.slnx @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Views/MainPage.xaml b/Views/MainPage.xaml new file mode 100644 index 0000000..1a11166 --- /dev/null +++ b/Views/MainPage.xaml @@ -0,0 +1,525 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Views/MainPage.xaml.cs b/Views/MainPage.xaml.cs new file mode 100644 index 0000000..d2ae787 --- /dev/null +++ b/Views/MainPage.xaml.cs @@ -0,0 +1,360 @@ +namespace TornadoAce_GSShop.Views +{ + public partial class MainPage : Page + { + private WebView2? previewWebView; + + public MainPage() + { + this.InitializeComponent(); + } + + private void Page_Loaded(object sender, RoutedEventArgs e) + { + UpdatedTextBlock.Text = DateTime.Now.ToString("yyyy.MM.dd HH:mm"); + + previewWebView ??= new WebView2 + { + Margin = new Thickness(1) + }; + + if (PreviewHost.Children.Count == 1) + { + PreviewHost.Children.Add(previewWebView); + } + + previewWebView.NavigateToString(BuildPreviewHtml()); + } + + private static string BuildPreviewHtml() => + """ + + + + + + + + +
+
+
+
GS
+
+

GS Shop Studio

+

Live commerce workspace

+
+
+
+
WebView2
+
Preview
+
Ready
+
+
+
+
+
+
Today at a glance
+

빠르게 확인하고 바로 운영하는 쇼핑 콘솔

+

상품 노출, 주문 흐름, 라이브 배너 상태가 한 화면 안에서 정리되는 샘플 미리보기입니다.

+
+
+
+
36방송 상품
+
1.2K오늘 주문
+
98%미리보기 정상
+
+
+ +
+ +
+ + + """; + } +} diff --git a/app.manifest b/app.manifest new file mode 100644 index 0000000..9e730e7 --- /dev/null +++ b/app.manifest @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + PerMonitorV2 + + +