diff --git a/Derived/InfoPlists/megabox-Info.plist b/Derived/InfoPlists/megabox-Info.plist
new file mode 100644
index 0000000..78cb14c
--- /dev/null
+++ b/Derived/InfoPlists/megabox-Info.plist
@@ -0,0 +1,55 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+ LSRequiresIPhoneOS
+
+ UIApplicationSceneManifest
+
+ UIApplicationSupportsMultipleScenes
+
+ UISceneConfigurations
+
+
+ UILaunchScreen
+
+ UIColorName
+
+ UIImageName
+
+
+ UIRequiredDeviceCapabilities
+
+ armv7
+
+ UISupportedInterfaceOrientations
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+ UISupportedInterfaceOrientations~ipad
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationPortraitUpsideDown
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+
+
diff --git a/Derived/InfoPlists/megaboxTests-Info.plist b/Derived/InfoPlists/megaboxTests-Info.plist
new file mode 100644
index 0000000..6c40a6c
--- /dev/null
+++ b/Derived/InfoPlists/megaboxTests-Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ BNDL
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+
+
diff --git a/Project.swift b/Project.swift
new file mode 100644
index 0000000..4ead78a
--- /dev/null
+++ b/Project.swift
@@ -0,0 +1,37 @@
+import ProjectDescription
+
+let project = Project(
+ name: "megabox",
+ targets: [
+ .target(
+ name: "megabox",
+ destinations: .iOS,
+ product: .app,
+ bundleId: "dev.tuist.megabox",
+ infoPlist: .extendingDefault(
+ with: [
+ "UILaunchScreen": [
+ "UIColorName": "",
+ "UIImageName": "",
+ ],
+ ]
+ ),
+ buildableFolders: [
+ "megabox/Sources",
+ "megabox/Resources",
+ ],
+ dependencies: []
+ ),
+ .target(
+ name: "megaboxTests",
+ destinations: .iOS,
+ product: .unitTests,
+ bundleId: "dev.tuist.megaboxTests",
+ infoPlist: .default,
+ buildableFolders: [
+ "megabox/Tests"
+ ],
+ dependencies: [.target(name: "megabox")]
+ ),
+ ]
+)
diff --git a/Tuist.swift b/Tuist.swift
new file mode 100644
index 0000000..ebf9894
--- /dev/null
+++ b/Tuist.swift
@@ -0,0 +1,3 @@
+import ProjectDescription
+
+let tuist = Tuist(project: .tuist())
\ No newline at end of file
diff --git a/Tuist/Package.swift b/Tuist/Package.swift
new file mode 100644
index 0000000..2141d3f
--- /dev/null
+++ b/Tuist/Package.swift
@@ -0,0 +1,22 @@
+// swift-tools-version: 6.0
+import PackageDescription
+
+#if TUIST
+ import struct ProjectDescription.PackageSettings
+
+ let packageSettings = PackageSettings(
+ // Customize the product types for specific package product
+ // Default is .staticFramework
+ // productTypes: ["Alamofire": .framework,]
+ productTypes: [:]
+ )
+#endif
+
+let package = Package(
+ name: "megabox",
+ dependencies: [
+ // Add your own dependencies here:
+ // .package(url: "https://github.com/Alamofire/Alamofire", from: "5.0.0"),
+ // You can read more about dependencies here: https://docs.tuist.io/documentation/tuist/dependencies
+ ]
+)
diff --git a/megabox.xcodeproj/project.pbxproj b/megabox.xcodeproj/project.pbxproj
new file mode 100644
index 0000000..726ab6f
--- /dev/null
+++ b/megabox.xcodeproj/project.pbxproj
@@ -0,0 +1,502 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 70;
+ objects = {
+
+/* Begin PBXContainerItemProxy section */
+ 8837CD7A1D909152C3B592D5 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = D0ABC90962FFD8356ADE03F1 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = E224A7D27F7A0C7F7385F633;
+ remoteInfo = megabox;
+ };
+/* End PBXContainerItemProxy section */
+
+/* Begin PBXCopyFilesBuildPhase section */
+ C3DFD2B44A8E1D3D483C009C /* Embed Frameworks */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = "";
+ dstSubfolderSpec = 10;
+ files = (
+ );
+ name = "Embed Frameworks";
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ E76954D565A3FD71A5FD80D8 /* Embed Frameworks */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = "";
+ dstSubfolderSpec = 10;
+ files = (
+ );
+ name = "Embed Frameworks";
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXCopyFilesBuildPhase section */
+
+/* Begin PBXFileReference section */
+ 2BDDA1D2F6458E30323A05E7 /* megaboxTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "megaboxTests-Info.plist"; sourceTree = ""; };
+ BD44B1395767484FD2C78AE0 /* megaboxTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = megaboxTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
+ C1FE0491C1C7A83A5D01373E /* megabox.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = megabox.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ E6D1D2FA149FE294E6CBD89D /* megabox-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "megabox-Info.plist"; sourceTree = ""; };
+/* End PBXFileReference section */
+
+/* Begin PBXFileSystemSynchronizedRootGroup section */
+ 559AED2982B815524E0CA1C2 /* Tests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = Tests; sourceTree = ""; };
+ C1DC9DAE584A07A877FFE3E3 /* Resources */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = Resources; sourceTree = ""; };
+ F18DAE5245C5277E82DC466F /* Sources */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = Sources; sourceTree = ""; };
+/* End PBXFileSystemSynchronizedRootGroup section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 6D65A4870086F1BC7F459C76 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 76162A15A336627EDBD4526D /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 0D19F4DA33D004128909F5EB = {
+ isa = PBXGroup;
+ children = (
+ E80C5527957614DED975B6CA /* Project */,
+ B92C82379AC30C9C0D6329B2 /* Products */,
+ );
+ sourceTree = "";
+ };
+ 59C62F6E03885E77D562E1C8 /* InfoPlists */ = {
+ isa = PBXGroup;
+ children = (
+ E6D1D2FA149FE294E6CBD89D /* megabox-Info.plist */,
+ 2BDDA1D2F6458E30323A05E7 /* megaboxTests-Info.plist */,
+ );
+ path = InfoPlists;
+ sourceTree = "";
+ };
+ 643E6A2D84F63C316D9B132F /* megabox */ = {
+ isa = PBXGroup;
+ children = (
+ C1DC9DAE584A07A877FFE3E3 /* Resources */,
+ F18DAE5245C5277E82DC466F /* Sources */,
+ 559AED2982B815524E0CA1C2 /* Tests */,
+ );
+ path = megabox;
+ sourceTree = "";
+ };
+ B92C82379AC30C9C0D6329B2 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ C1FE0491C1C7A83A5D01373E /* megabox.app */,
+ BD44B1395767484FD2C78AE0 /* megaboxTests.xctest */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ C79E920FDF66B7A70211A3C0 /* Derived */ = {
+ isa = PBXGroup;
+ children = (
+ 59C62F6E03885E77D562E1C8 /* InfoPlists */,
+ );
+ path = Derived;
+ sourceTree = "";
+ };
+ E80C5527957614DED975B6CA /* Project */ = {
+ isa = PBXGroup;
+ children = (
+ C79E920FDF66B7A70211A3C0 /* Derived */,
+ 643E6A2D84F63C316D9B132F /* megabox */,
+ );
+ name = Project;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 172765B898A218EC0E548580 /* megaboxTests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 0EBDE663F1B689E0B1DB9AD3 /* Build configuration list for PBXNativeTarget "megaboxTests" */;
+ buildPhases = (
+ 4435A03A76B5DC0CE7949143 /* Sources */,
+ 198D3FC36E023BC87117F723 /* Resources */,
+ 76162A15A336627EDBD4526D /* Frameworks */,
+ C3DFD2B44A8E1D3D483C009C /* Embed Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ F6F3BF53077A6D89AFCBC8C0 /* PBXTargetDependency */,
+ );
+ fileSystemSynchronizedGroups = (
+ 559AED2982B815524E0CA1C2 /* Tests */,
+ );
+ name = megaboxTests;
+ packageProductDependencies = (
+ );
+ productName = megaboxTests;
+ productReference = BD44B1395767484FD2C78AE0 /* megaboxTests.xctest */;
+ productType = "com.apple.product-type.bundle.unit-test";
+ };
+ E224A7D27F7A0C7F7385F633 /* megabox */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = B463772DD5F0094E81FDDCE2 /* Build configuration list for PBXNativeTarget "megabox" */;
+ buildPhases = (
+ 7369F708B2CD5E95F70004DA /* Sources */,
+ B3E7218FC50F3C335FD880B9 /* Resources */,
+ 6D65A4870086F1BC7F459C76 /* Frameworks */,
+ E76954D565A3FD71A5FD80D8 /* Embed Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ fileSystemSynchronizedGroups = (
+ C1DC9DAE584A07A877FFE3E3 /* Resources */,
+ F18DAE5245C5277E82DC466F /* Sources */,
+ );
+ name = megabox;
+ packageProductDependencies = (
+ );
+ productName = megabox;
+ productReference = C1FE0491C1C7A83A5D01373E /* megabox.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ D0ABC90962FFD8356ADE03F1 /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ BuildIndependentTargetsInParallel = YES;
+ TargetAttributes = {
+ 172765B898A218EC0E548580 = {
+ TestTargetID = E224A7D27F7A0C7F7385F633;
+ };
+ };
+ };
+ buildConfigurationList = 2C00E235BDF2CB301054B52E /* Build configuration list for PBXProject "megabox" */;
+ compatibilityVersion = "Xcode 14.0";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ Base,
+ en,
+ );
+ mainGroup = 0D19F4DA33D004128909F5EB;
+ productRefGroup = B92C82379AC30C9C0D6329B2 /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ E224A7D27F7A0C7F7385F633 /* megabox */,
+ 172765B898A218EC0E548580 /* megaboxTests */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 198D3FC36E023BC87117F723 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ B3E7218FC50F3C335FD880B9 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 4435A03A76B5DC0CE7949143 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 7369F708B2CD5E95F70004DA /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+ F6F3BF53077A6D89AFCBC8C0 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = megabox;
+ target = E224A7D27F7A0C7F7385F633 /* megabox */;
+ targetProxy = 8837CD7A1D909152C3B592D5 /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
+/* Begin XCBuildConfiguration section */
+ 6D824C3783955213665B2827 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ ENABLE_PREVIEWS = YES;
+ INFOPLIST_FILE = "Derived/InfoPlists/megabox-Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = dev.tuist.megabox;
+ PRODUCT_NAME = megabox;
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = NO;
+ SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
+ SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Release;
+ };
+ 6FFFA124BB18273EA38A7501 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUNDLE_LOADER = "$(TEST_HOST)";
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ INFOPLIST_FILE = "Derived/InfoPlists/megaboxTests-Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = dev.tuist.megaboxTests;
+ PRODUCT_NAME = megaboxTests;
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = NO;
+ SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
+ SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/megabox.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/megabox";
+ TEST_TARGET_NAME = megabox;
+ };
+ name = Release;
+ };
+ 7812ABDF116B2F6264B02FDB /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ ENABLE_PREVIEWS = YES;
+ INFOPLIST_FILE = "Derived/InfoPlists/megabox-Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = dev.tuist.megabox;
+ PRODUCT_NAME = megabox;
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = NO;
+ SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
+ SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
+ SWIFT_COMPILATION_MODE = singlefile;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = Debug;
+ };
+ 8DF84B3C6446CCBD95CCA2AA /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEAD_CODE_STRIPPING = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+ F2A518AA62DB4F319D2B089E /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEAD_CODE_STRIPPING = YES;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ MTL_ENABLE_DEBUG_INFO = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ };
+ name = Debug;
+ };
+ FFBEC52EC0991EF48A2414CE /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUNDLE_LOADER = "$(TEST_HOST)";
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ INFOPLIST_FILE = "Derived/InfoPlists/megaboxTests-Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ PRODUCT_BUNDLE_IDENTIFIER = dev.tuist.megaboxTests;
+ PRODUCT_NAME = megaboxTests;
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = NO;
+ SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
+ SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
+ SWIFT_COMPILATION_MODE = singlefile;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/megabox.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/megabox";
+ TEST_TARGET_NAME = megabox;
+ };
+ name = Debug;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 0EBDE663F1B689E0B1DB9AD3 /* Build configuration list for PBXNativeTarget "megaboxTests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ FFBEC52EC0991EF48A2414CE /* Debug */,
+ 6FFFA124BB18273EA38A7501 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 2C00E235BDF2CB301054B52E /* Build configuration list for PBXProject "megabox" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ F2A518AA62DB4F319D2B089E /* Debug */,
+ 8DF84B3C6446CCBD95CCA2AA /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ B463772DD5F0094E81FDDCE2 /* Build configuration list for PBXNativeTarget "megabox" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7812ABDF116B2F6264B02FDB /* Debug */,
+ 6D824C3783955213665B2827 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = D0ABC90962FFD8356ADE03F1 /* Project object */;
+}
diff --git a/megabox.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/megabox.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..919434a
--- /dev/null
+++ b/megabox.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/megabox.xcodeproj/xcshareddata/xcschemes/megabox.xcscheme b/megabox.xcodeproj/xcshareddata/xcschemes/megabox.xcscheme
new file mode 100644
index 0000000..ce8c730
--- /dev/null
+++ b/megabox.xcodeproj/xcshareddata/xcschemes/megabox.xcscheme
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/megabox.xcodeproj/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist b/megabox.xcodeproj/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..9879ab0
--- /dev/null
+++ b/megabox.xcodeproj/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,16 @@
+
+
+
+
+ SchemeUserState
+
+ megabox.xcscheme_^#shared#^_
+
+ isShown
+
+ orderHint
+ 1
+
+
+
+
diff --git a/megabox.xcworkspace/contents.xcworkspacedata b/megabox.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..1d5f327
--- /dev/null
+++ b/megabox.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/megabox.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/megabox.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..08de0be
--- /dev/null
+++ b/megabox.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded
+
+
+
diff --git a/megabox.xcworkspace/xcshareddata/xcschemes/Generate Project.xcscheme b/megabox.xcworkspace/xcshareddata/xcschemes/Generate Project.xcscheme
new file mode 100644
index 0000000..121a4be
--- /dev/null
+++ b/megabox.xcworkspace/xcshareddata/xcschemes/Generate Project.xcscheme
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/megabox.xcworkspace/xcshareddata/xcschemes/megabox-Workspace.xcscheme b/megabox.xcworkspace/xcshareddata/xcschemes/megabox-Workspace.xcscheme
new file mode 100644
index 0000000..f1f5349
--- /dev/null
+++ b/megabox.xcworkspace/xcshareddata/xcschemes/megabox-Workspace.xcscheme
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/UserInterfaceState.xcuserstate b/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000..2a976df
Binary files /dev/null and b/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist b/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..33ff257
--- /dev/null
+++ b/megabox.xcworkspace/xcuserdata/surfing_seal.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,23 @@
+
+
+
+
+ SchemeUserState
+
+ Generate Project.xcscheme_^#shared#^_
+
+ isShown
+
+ orderHint
+ 0
+
+ megabox-Workspace.xcscheme_^#shared#^_
+
+ isShown
+
+ orderHint
+ 2
+
+
+
+
diff --git a/megabox/Resources/Assets.xcassets/AccentColor.colorset/Contents.json b/megabox/Resources/Assets.xcassets/AccentColor.colorset/Contents.json
new file mode 100644
index 0000000..eb87897
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/AccentColor.colorset/Contents.json
@@ -0,0 +1,11 @@
+{
+ "colors" : [
+ {
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json b/megabox/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json
new file mode 100644
index 0000000..9221b9b
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -0,0 +1,98 @@
+{
+ "images" : [
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "2x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "iphone",
+ "scale" : "3x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "1x",
+ "size" : "76x76"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "76x76"
+ },
+ {
+ "idiom" : "ipad",
+ "scale" : "2x",
+ "size" : "83.5x83.5"
+ },
+ {
+ "idiom" : "ios-marketing",
+ "scale" : "1x",
+ "size" : "1024x1024"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/Contents.json b/megabox/Resources/Assets.xcassets/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/Contents.json b/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/Contents.json
new file mode 100644
index 0000000..ce9df2f
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "LoginBtn.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/LoginBtn.pdf b/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/LoginBtn.pdf
new file mode 100644
index 0000000..251ecd6
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/appleLoginBtn.imageset/LoginBtn.pdf differ
diff --git a/megabox/Resources/Assets.xcassets/arrow.imageset/Contents.json b/megabox/Resources/Assets.xcassets/arrow.imageset/Contents.json
new file mode 100644
index 0000000..1f92000
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/arrow.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+ "images" : [
+ {
+ "filename" : "quill_chevron-up.svg",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/arrow.imageset/quill_chevron-up.svg b/megabox/Resources/Assets.xcassets/arrow.imageset/quill_chevron-up.svg
new file mode 100644
index 0000000..3dc79e8
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/arrow.imageset/quill_chevron-up.svg
@@ -0,0 +1,3 @@
+
diff --git a/megabox/Resources/Assets.xcassets/film_reel.imageset/Contents.json b/megabox/Resources/Assets.xcassets/film_reel.imageset/Contents.json
new file mode 100644
index 0000000..739cea8
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/film_reel.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+ "images" : [
+ {
+ "filename" : "film-reel 1.png",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/film_reel.imageset/film-reel 1.png b/megabox/Resources/Assets.xcassets/film_reel.imageset/film-reel 1.png
new file mode 100644
index 0000000..2a4fdec
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/film_reel.imageset/film-reel 1.png differ
diff --git a/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/Contents.json b/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/Contents.json
new file mode 100644
index 0000000..ce9df2f
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "LoginBtn.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/LoginBtn.pdf b/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/LoginBtn.pdf
new file mode 100644
index 0000000..1e76c3c
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/kakaoLoginBtn.imageset/LoginBtn.pdf differ
diff --git a/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/Contents.json b/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/Contents.json
new file mode 100644
index 0000000..b810cc9
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "meboxLogo.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/meboxLogo.pdf b/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/meboxLogo.pdf
new file mode 100644
index 0000000..cb93dbb
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/megaboxLogo.imageset/meboxLogo.pdf differ
diff --git a/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/Contents.json b/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/Contents.json
new file mode 100644
index 0000000..ce9df2f
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "LoginBtn.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/LoginBtn.pdf b/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/LoginBtn.pdf
new file mode 100644
index 0000000..87a158d
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/naverLoginBtn.imageset/LoginBtn.pdf differ
diff --git a/megabox/Resources/Assets.xcassets/pin_map.imageset/Contents.json b/megabox/Resources/Assets.xcassets/pin_map.imageset/Contents.json
new file mode 100644
index 0000000..bdf2e53
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/pin_map.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+ "images" : [
+ {
+ "filename" : "free-icon-pin-map-8358838.png",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/pin_map.imageset/free-icon-pin-map-8358838.png b/megabox/Resources/Assets.xcassets/pin_map.imageset/free-icon-pin-map-8358838.png
new file mode 100644
index 0000000..ceefab4
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/pin_map.imageset/free-icon-pin-map-8358838.png differ
diff --git a/megabox/Resources/Assets.xcassets/popcorn.imageset/Contents.json b/megabox/Resources/Assets.xcassets/popcorn.imageset/Contents.json
new file mode 100644
index 0000000..e6e2d7d
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/popcorn.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+ "images" : [
+ {
+ "filename" : "free-icon-cinema-2809591.png",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/popcorn.imageset/free-icon-cinema-2809591.png b/megabox/Resources/Assets.xcassets/popcorn.imageset/free-icon-cinema-2809591.png
new file mode 100644
index 0000000..b81e20e
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/popcorn.imageset/free-icon-cinema-2809591.png differ
diff --git a/megabox/Resources/Assets.xcassets/sofa.imageset/Contents.json b/megabox/Resources/Assets.xcassets/sofa.imageset/Contents.json
new file mode 100644
index 0000000..49222d7
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/sofa.imageset/Contents.json
@@ -0,0 +1,21 @@
+{
+ "images" : [
+ {
+ "filename" : "free-icon-sofa-6087271.png",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/sofa.imageset/free-icon-sofa-6087271.png b/megabox/Resources/Assets.xcassets/sofa.imageset/free-icon-sofa-6087271.png
new file mode 100644
index 0000000..9b36368
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/sofa.imageset/free-icon-sofa-6087271.png differ
diff --git a/megabox/Resources/Assets.xcassets/umc.imageset/Contents.json b/megabox/Resources/Assets.xcassets/umc.imageset/Contents.json
new file mode 100644
index 0000000..6457313
--- /dev/null
+++ b/megabox/Resources/Assets.xcassets/umc.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "umc 1.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Assets.xcassets/umc.imageset/umc 1.pdf b/megabox/Resources/Assets.xcassets/umc.imageset/umc 1.pdf
new file mode 100644
index 0000000..1e26365
Binary files /dev/null and b/megabox/Resources/Assets.xcassets/umc.imageset/umc 1.pdf differ
diff --git a/megabox/Resources/Colors.xcassets/Contents.json b/megabox/Resources/Colors.xcassets/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/black.colorset/Contents.json b/megabox/Resources/Colors.xcassets/black.colorset/Contents.json
new file mode 100644
index 0000000..3fe9b59
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/black.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x00",
+ "green" : "0x00",
+ "red" : "0x00"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue00.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue00.colorset/Contents.json
new file mode 100644
index 0000000..5d58adb
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue00.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFA",
+ "green" : "0xF7",
+ "red" : "0xF3"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "1.000",
+ "green" : "1.000",
+ "red" : "1.000"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue01.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue01.colorset/Contents.json
new file mode 100644
index 0000000..ac41082
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue01.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xF7",
+ "green" : "0xF2",
+ "red" : "0xED"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue02.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue02.colorset/Contents.json
new file mode 100644
index 0000000..7e32c7e
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue02.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xEF",
+ "green" : "0xE5",
+ "red" : "0xDA"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue03.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue03.colorset/Contents.json
new file mode 100644
index 0000000..9d80dc4
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue03.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xCC",
+ "green" : "0xAA",
+ "red" : "0x88"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue04.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue04.colorset/Contents.json
new file mode 100644
index 0000000..f47d6f9
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue04.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xB8",
+ "green" : "0x99",
+ "red" : "0x7A"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue05.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue05.colorset/Contents.json
new file mode 100644
index 0000000..d1c77f8
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue05.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xA3",
+ "green" : "0x88",
+ "red" : "0x6D"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue06.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue06.colorset/Contents.json
new file mode 100644
index 0000000..fa61276
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue06.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x99",
+ "green" : "0x80",
+ "red" : "0x66"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue07.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue07.colorset/Contents.json
new file mode 100644
index 0000000..fa61276
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue07.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x99",
+ "green" : "0x80",
+ "red" : "0x66"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue08.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue08.colorset/Contents.json
new file mode 100644
index 0000000..45ffb79
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue08.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x5C",
+ "green" : "0x4C",
+ "red" : "0x3D"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/blue09.colorset/Contents.json b/megabox/Resources/Colors.xcassets/blue09.colorset/Contents.json
new file mode 100644
index 0000000..515b45a
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/blue09.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x47",
+ "green" : "0x3B",
+ "red" : "0x30"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray00.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray00.colorset/Contents.json
new file mode 100644
index 0000000..616f828
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray00.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xF2",
+ "green" : "0xF2",
+ "red" : "0xF2"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray01.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray01.colorset/Contents.json
new file mode 100644
index 0000000..bb37089
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray01.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xEB",
+ "green" : "0xEB",
+ "red" : "0xEB"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray02.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray02.colorset/Contents.json
new file mode 100644
index 0000000..4b319f2
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray02.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xD5",
+ "green" : "0xD5",
+ "red" : "0xD5"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray03.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray03.colorset/Contents.json
new file mode 100644
index 0000000..c08da6e
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray03.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x78",
+ "green" : "0x78",
+ "red" : "0x78"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray04.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray04.colorset/Contents.json
new file mode 100644
index 0000000..703da77
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray04.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x6C",
+ "green" : "0x6C",
+ "red" : "0x6C"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray05.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray05.colorset/Contents.json
new file mode 100644
index 0000000..00c9a49
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray05.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x60",
+ "green" : "0x60",
+ "red" : "0x60"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray06.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray06.colorset/Contents.json
new file mode 100644
index 0000000..2bd9fcf
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray06.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x5A",
+ "green" : "0x5A",
+ "red" : "0x5A"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray07.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray07.colorset/Contents.json
new file mode 100644
index 0000000..c626884
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray07.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x48",
+ "green" : "0x48",
+ "red" : "0x48"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray08.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray08.colorset/Contents.json
new file mode 100644
index 0000000..2767e0e
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray08.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x36",
+ "green" : "0x36",
+ "red" : "0x36"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/gray09.colorset/Contents.json b/megabox/Resources/Colors.xcassets/gray09.colorset/Contents.json
new file mode 100644
index 0000000..69f05fa
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/gray09.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x2A",
+ "green" : "0x2A",
+ "red" : "0x2A"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple00.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple00.colorset/Contents.json
new file mode 100644
index 0000000..84e81ca
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple00.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFB",
+ "green" : "0xE7",
+ "red" : "0xF0"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple01.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple01.colorset/Contents.json
new file mode 100644
index 0000000..212db49
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple01.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xF9",
+ "green" : "0xDB",
+ "red" : "0xE8"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple02.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple02.colorset/Contents.json
new file mode 100644
index 0000000..79a1f78
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple02.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xF3",
+ "green" : "0xB4",
+ "red" : "0xCF"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple03.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple03.colorset/Contents.json
new file mode 100644
index 0000000..837c03a
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple03.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xD8",
+ "green" : "0x0E",
+ "red" : "0x65"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple04.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple04.colorset/Contents.json
new file mode 100644
index 0000000..468da82
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple04.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xC2",
+ "green" : "0x0D",
+ "red" : "0x5B"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple05.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple05.colorset/Contents.json
new file mode 100644
index 0000000..4ca379f
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple05.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xAD",
+ "green" : "0x0B",
+ "red" : "0x51"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple06.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple06.colorset/Contents.json
new file mode 100644
index 0000000..f989504
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple06.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xA2",
+ "green" : "0x0B",
+ "red" : "0x4C"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple07.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple07.colorset/Contents.json
new file mode 100644
index 0000000..70de855
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple07.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x82",
+ "green" : "0x08",
+ "red" : "0x3D"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple08.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple08.colorset/Contents.json
new file mode 100644
index 0000000..4898309
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple08.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x61",
+ "green" : "0x06",
+ "red" : "0x2D"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/purple09.colorset/Contents.json b/megabox/Resources/Colors.xcassets/purple09.colorset/Contents.json
new file mode 100644
index 0000000..d220f1a
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/purple09.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0x4C",
+ "green" : "0x05",
+ "red" : "0x23"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/tag.colorset/Contents.json b/megabox/Resources/Colors.xcassets/tag.colorset/Contents.json
new file mode 100644
index 0000000..5586618
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/tag.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xD2",
+ "green" : "0xCD",
+ "red" : "0x47"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Colors.xcassets/white.colorset/Contents.json b/megabox/Resources/Colors.xcassets/white.colorset/Contents.json
new file mode 100644
index 0000000..6e64977
--- /dev/null
+++ b/megabox/Resources/Colors.xcassets/white.colorset/Contents.json
@@ -0,0 +1,38 @@
+{
+ "colors" : [
+ {
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFF"
+ }
+ },
+ "idiom" : "universal"
+ },
+ {
+ "appearances" : [
+ {
+ "appearance" : "luminosity",
+ "value" : "dark"
+ }
+ ],
+ "color" : {
+ "color-space" : "srgb",
+ "components" : {
+ "alpha" : "1.000",
+ "blue" : "0xFF",
+ "green" : "0xFF",
+ "red" : "0xFE"
+ }
+ },
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Resources/Fonts/FontManager.swift b/megabox/Resources/Fonts/FontManager.swift
new file mode 100644
index 0000000..e667963
--- /dev/null
+++ b/megabox/Resources/Fonts/FontManager.swift
@@ -0,0 +1,133 @@
+//
+// FontManager.swift
+// megabox
+//
+// Created by 문인성 on 9/24/25.
+//
+
+import Foundation
+import SwiftUI
+
+extension Font {
+ enum Pretend {
+ case extraBold
+ case bold
+ case semiBold
+ case regular
+ case medium
+ case light
+
+ var value: String {
+ switch self {
+ case .extraBold:
+ return "Pretendard-ExtraBold"
+ case .bold:
+ return "Pretendard-Bold"
+ case .semiBold:
+ return "Pretendard-semiBold"
+ case .medium:
+ return "Pretendard-Medium"
+ case .regular:
+ return "Pretendard-Regular"
+ case .light:
+ return "Pretendard-Light"
+ }
+ }
+ }
+
+ static func pretend(type: Pretend, size: CGFloat) -> Font {
+ return .custom(type.value, size: size)
+ }
+
+ static var extraBold24: Font {
+ return .pretend(type: .extraBold, size: 24)
+ }
+
+ static var bold18: Font {
+ return .pretend(type: .bold, size: 18)
+ }
+
+ static var bold22: Font {
+ return .pretend(type: .bold, size: 22)
+ }
+
+ static var bold24: Font {
+ return .pretend(type: .bold, size: 24)
+ }
+
+ static var semiBold12: Font {
+ return .pretend(type: .semiBold, size: 12)
+ }
+
+ static var semiBold13: Font {
+ return .pretend(type: .semiBold, size: 13)
+ }
+
+ static var semiBold14: Font {
+ return .pretend(type: .semiBold, size: 14)
+ }
+
+ static var semiBold16: Font {
+ return .pretend(type: .semiBold, size: 16)
+ }
+
+ static var semiBold18: Font {
+ return .pretend(type: .semiBold, size: 18)
+ }
+
+ static var semiBold24: Font {
+ return .pretend(type: .semiBold, size: 24)
+ }
+
+ static var semiBold38: Font {
+ return .pretend(type: .semiBold, size: 38)
+ }
+
+ static var regular09: Font {
+ return .pretend(type: .regular, size: 09)
+ }
+
+ static var regular12: Font {
+ return .pretend(type: .regular, size: 12)
+ }
+
+ static var regular13: Font {
+ return .pretend(type: .regular, size: 13)
+ }
+
+ static var regular18: Font {
+ return .pretend(type: .regular, size: 18)
+ }
+
+ static var regular20: Font {
+ return .pretend(type: .regular, size: 20)
+ }
+
+ static var medium08: Font {
+ return .pretend(type: .medium, size: 08)
+ }
+
+ static var medium10: Font {
+ return .pretend(type: .medium, size: 10)
+ }
+
+ static var medium13: Font {
+ return .pretend(type: .medium, size: 13)
+ }
+
+ static var medium14: Font {
+ return .pretend(type: .medium, size: 14)
+ }
+
+ static var medium16: Font {
+ return .pretend(type: .medium, size: 16)
+ }
+
+ static var medium18: Font {
+ return .pretend(type: .medium, size: 18)
+ }
+
+ static var light14: Font {
+ return .pretend(type: .light, size: 14)
+ }
+}
diff --git a/megabox/Resources/Preview Content/Preview Assets.xcassets/Contents.json b/megabox/Resources/Preview Content/Preview Assets.xcassets/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/megabox/Resources/Preview Content/Preview Assets.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/megabox/Sources/LoginModel.swift b/megabox/Sources/LoginModel.swift
new file mode 100644
index 0000000..0956933
--- /dev/null
+++ b/megabox/Sources/LoginModel.swift
@@ -0,0 +1,14 @@
+//
+// LoginModel.swift
+// megabox
+//
+// Created by 문인성 on 9/25/25.
+//
+
+import Foundation
+
+struct LoginModel {
+ var id: String = ""
+ var pwd: String = ""
+}
+
diff --git a/megabox/Sources/LoginView.swift b/megabox/Sources/LoginView.swift
new file mode 100644
index 0000000..80c1af1
--- /dev/null
+++ b/megabox/Sources/LoginView.swift
@@ -0,0 +1,114 @@
+//
+// LoginView.swift
+// megabox
+//
+// Created by 문인성 on 9/24/25.
+//
+
+import SwiftUI
+import Observation
+
+
+struct LoginView: View {
+ @State private var viewModel = LoginViewModel()
+
+ @AppStorage("saved_id") private var savedId: String = ""
+ @AppStorage("saved_pwd") private var savedPwd: String = ""
+
+ var body: some View {
+ VStack {
+ HStack {
+ Text("로그인")
+ .font(.semiBold24)
+ .foregroundStyle(Color("black"))
+ .padding(.top, 44)
+ }
+
+ Spacer()
+
+ VStack {
+ TextField("아이디", text: $viewModel.model.id)
+ .padding(.horizontal, 16)
+ Divider()
+ .padding(.horizontal, 16)
+
+ SecureField("비밀번호", text: $viewModel.model.pwd)
+ .padding(.horizontal, 16)
+ Divider()
+ .padding(.horizontal, 16)
+ .padding(.bottom, 74.98)
+
+ Button(action: {
+ self.savedId = viewModel.model.id
+ self.savedPwd = viewModel.model.pwd
+ }) {
+ // 버튼에 표시될 내용
+ Text("로그인")
+ .font(.bold18)
+ .foregroundStyle(.white)
+ .frame(maxWidth: .infinity)
+ .padding(.vertical, 9)
+ .background(Color("purple03"))
+ .cornerRadius(10)
+ }
+ .padding(.horizontal, 16.5)
+ .padding(.bottom, 17)
+
+ Text("회원가입")
+ .font(.medium13)
+ .foregroundStyle(Color("gray04"))
+ }
+
+
+
+ HStack {
+ Image("naverLoginBtn")
+ Spacer()
+ Image("kakaoLoginBtn")
+ Spacer()
+ Image("appleLoginBtn")
+ }
+ .frame(maxWidth: .infinity)
+ .padding(.top, 35)
+ .padding(.horizontal, 87)
+ .padding(.bottom, 39)
+
+ HStack {
+ Spacer()
+
+ Image("umc")
+ .resizable()
+ .scaledToFit()
+ .frame(maxWidth: .infinity)
+ .padding(.horizontal, 16)
+
+ Spacer()
+ }
+
+ Spacer()
+ }
+ }
+}
+
+struct PreviewWrapper: View {
+ @State private var test = ""
+
+ var body: some View {
+ TextEditor(text: $test)
+ .frame(height: 100)
+ .border(Color.gray, width: 1)
+ }
+}
+
+struct PreviewWrapper_previews: PreviewProvider {
+ static let devices = [ "iPhone 16 Pro Max",
+ "iPhone 11"]
+
+ static var previews: some View {
+ ForEach(devices, id: \.self) { device in
+ LoginView()
+ .previewDevice(PreviewDevice(rawValue: device)) // 프리뷰 디바이스 설정
+ .previewDisplayName(device) // 프리뷰 이름 설정
+ }
+ }
+}
diff --git a/megabox/Sources/LoginViewModel.swift b/megabox/Sources/LoginViewModel.swift
new file mode 100644
index 0000000..3c112e4
--- /dev/null
+++ b/megabox/Sources/LoginViewModel.swift
@@ -0,0 +1,13 @@
+//
+// LoginViewModel.swift
+// megabox
+//
+// Created by 문인성 on 9/25/25.
+//
+
+import Foundation
+
+@Observable
+class LoginViewModel {
+ var model = LoginModel()
+}
diff --git a/megabox/Sources/MegaboxApp.swift b/megabox/Sources/MegaboxApp.swift
new file mode 100644
index 0000000..df7e473
--- /dev/null
+++ b/megabox/Sources/MegaboxApp.swift
@@ -0,0 +1,12 @@
+import SwiftUI
+
+@main
+struct MegaboxApp: App {
+ var body: some Scene {
+ WindowGroup {
+ SplashView()
+ }
+ }
+}
+
+
diff --git a/megabox/Sources/SplashView.swift b/megabox/Sources/SplashView.swift
new file mode 100644
index 0000000..cfb572a
--- /dev/null
+++ b/megabox/Sources/SplashView.swift
@@ -0,0 +1,63 @@
+//
+// SplashView.swift
+// megabox
+//
+// Created by 문인성 on 9/24/25.
+//
+
+import SwiftUI
+
+struct SplashView: View {
+ var body: some View {
+ ZStack {
+ Color(.white)
+ Image("megaboxLogo")
+ .resizable()
+ .scaledToFit()
+ .frame(maxWidth: .infinity)
+ .padding(.horizontal, 95)
+ }
+ }
+}
+
+//import SwiftUI
+//
+//struct SplashView: View {
+// var body: some View {
+// // GeometryReader를 사용해 화면 크기를 읽어옵니다.
+// GeometryReader { geometry in
+// ZStack {
+// Color.white.ignoresSafeArea()
+//
+// Image("megaboxLogo")
+// .resizable()
+// .scaledToFit()
+// .frame(width: geometry.size.width * 0.6)
+// }
+// .frame(width: geometry.size.width, height: geometry.size.height)
+// }
+// }
+//}
+
+struct PreviewWrapper2: View {
+ @State private var test = ""
+
+ var body: some View {
+ TextEditor(text: $test)
+ .frame(height: 100)
+ .border(Color.gray, width: 1)
+ }
+}
+
+struct PreviewWrapper_previews2: PreviewProvider {
+ static let devices = [ "iPhone 16 Pro Max",
+ "iPhone 11"]
+
+ static var previews: some View {
+ ForEach(devices, id: \.self) { device in
+ SplashView()
+ .previewDevice(PreviewDevice(rawValue: device)) // 프리뷰 디바이스 설정
+ .previewDisplayName(device) // 프리뷰 이름 설정
+ }
+ }
+}
diff --git a/megabox/Sources/UserInformationMangement.swift b/megabox/Sources/UserInformationMangement.swift
new file mode 100644
index 0000000..2eb3b04
--- /dev/null
+++ b/megabox/Sources/UserInformationMangement.swift
@@ -0,0 +1,87 @@
+//
+// UserInformationMangement.swift
+// megabox
+//
+// Created by 문인성 on 9/28/25.
+//
+
+import SwiftUI
+
+struct UserInformationMangement: View {
+
+ @AppStorage("saved_id") private var savedId: String = ""
+ @AppStorage("saved_name") private var savedName: String = ""
+ @State private var currentName: String = ""
+
+ var body: some View {
+ VStack {
+ ZStack {
+ HStack {
+ Image(systemName: "arrow.left")
+ .resizable()
+ .scaledToFit()
+ .frame(width: 26, height: 22)
+
+ Spacer()
+ }
+
+ Text("회원정보 관리")
+ .font(.medium16)
+ }
+ .padding(.horizontal, 18)
+ .padding(.top, 44)
+ .padding(.bottom, 53)
+
+
+
+ Text("기본정보")
+ .font(.bold18)
+ .frame(maxWidth: .infinity, alignment: .leading)
+ .padding(.leading, 16)
+ .padding(.bottom, 26)
+
+
+ VStack(alignment: .leading) {
+ HStack {
+ Text(savedId)
+ .font(.medium18)
+ .padding(.horizontal, 16)
+ }
+
+
+ Divider()
+
+ HStack {
+ TextField(savedName, text: $currentName)
+ .foregroundStyle(.black)
+ .padding(.horizontal, 16)
+
+ Button(action: {
+ savedName = currentName
+ }) {
+ Text("변경")
+ .foregroundStyle(Color("gray03"))
+ .frame(width: 38, height: 20)
+ .padding(.horizontal, 11)
+ .padding(.vertical, 5)
+ .background(.white)
+ .cornerRadius(16)
+ .overlay(
+ RoundedRectangle(cornerRadius: 16)
+ .stroke(Color(Color("gray02")), lineWidth: 1)
+ )
+ }
+ }
+ Divider()
+ Spacer()
+ }
+ }
+
+
+ }
+}
+
+
+#Preview {
+ UserInformationMangement()
+}
diff --git a/megabox/Sources/UserInfromation.swift b/megabox/Sources/UserInfromation.swift
new file mode 100644
index 0000000..a2a91ae
--- /dev/null
+++ b/megabox/Sources/UserInfromation.swift
@@ -0,0 +1,191 @@
+//
+// UserInfromation.swift
+// megabox
+//
+// Created by 문인성 on 9/25/25.
+//
+
+import SwiftUI
+
+struct UserInfromation: View {
+ @AppStorage("saved_id") private var savedId: String = ""
+
+ var body: some View {
+
+ VStack {
+ HStack {
+ Text("\(savedId)" + "님")
+ .font(.bold24)
+ .padding(.leading, 16)
+ .padding(.trailing, 5)
+
+ Spacer()
+
+ Text("Welcome")
+ .font(.medium14)
+ .foregroundStyle(.white)
+ .padding(.horizontal, 8)
+ .padding(.vertical, 4)
+ .background(Color("tag"))
+ .cornerRadius(6)
+
+ Spacer()
+ .frame(minWidth: 135)
+
+ Button(action: {
+
+ }) {
+
+ Text("회원정보")
+ .font(.semiBold14)
+ .foregroundStyle(.white)
+ .frame(width: 64, height: 20)
+ .padding(.vertical, 4)
+ .padding(.horizontal, 4)
+ .background(Color("gray07"))
+ .cornerRadius(16)
+ .padding(.trailing, 16)
+ }
+ }
+ .padding(.top, 59)
+
+
+ HStack {
+ Text("멤버쉽 포인트")
+ .font(.semiBold14)
+ .foregroundStyle(Color("gray04"))
+ .padding(.leading, 16)
+
+ Text("500P")
+ .padding(.leading, 9)
+ Spacer()
+ }
+
+ Button(action: {
+
+ }) {
+ HStack {
+ Text("클럽 멤버쉽")
+ .font(.semiBold16)
+
+ Image("arrow")
+ }
+ .foregroundStyle(.white)
+ .frame(maxWidth: .infinity, alignment: .leading)
+ .padding(.leading, 8)
+ .padding(.vertical, 12)
+ .background(
+ LinearGradient (
+ gradient: Gradient(colors: [
+ Color(hex: "#AB8BFF"),
+ Color(hex: "#8EAEF3"),
+ Color(hex: "#5DCCEC")
+ ]),
+ startPoint: .leading,
+ endPoint: .trailing)
+ )
+ .cornerRadius(8)
+ }
+ .padding(.top, 15)
+ .padding(.horizontal, 15)
+ .padding(.bottom, 33)
+
+ HStack {
+ VStack {
+ Text("쿠폰")
+ .font(.semiBold16)
+ .foregroundStyle(Color("gray02"))
+ Text("2")
+ .font(.semiBold18)
+ }
+
+ Rectangle()
+ .foregroundColor(Color("gray02"))
+ .frame(width: 1, height: 31)
+ .padding(.horizontal, 20)
+
+ VStack {
+ Text("스토어 교환권")
+ .font(.semiBold16)
+ .foregroundStyle(Color("gray02"))
+ Text("0")
+ .font(.semiBold18)
+ }
+
+ Rectangle()
+ .foregroundColor(Color("gray02"))
+ .frame(width: 1, height: 31)
+ .padding(.horizontal, 20)
+
+ VStack {
+ Text("모바일 티켓")
+ .font(.semiBold16)
+ .foregroundStyle(Color("gray02"))
+ Text("0")
+ .font(.semiBold18)
+ }
+ }
+ .frame(width: 362, height: 52)
+ .overlay(
+ RoundedRectangle(cornerRadius: 8)
+ .stroke(Color(Color("gray02")), lineWidth: 1)
+ )
+ .padding(.bottom, 33)
+
+ HStack {
+ VStack {
+ Image("film_reel")
+ Text("영화별 예매")
+ .font(.medium16)
+ }
+ .padding(.leading, 16)
+ Spacer()
+
+ VStack {
+ Image("pin_map")
+ Text("극장별 예매")
+ .font(.medium16)
+ }
+
+ Spacer()
+
+ VStack {
+ Image("sofa")
+ Text("특별관 예매")
+ .font(.medium16)
+ }
+
+ Spacer()
+
+ VStack {
+ Image("popcorn")
+ Text("모바일오더")
+ .font(.medium16)
+ }
+ .padding(.trailing, 16)
+ }
+ Spacer()
+ }
+ }
+}
+
+extension Color {
+ init(hex: String) {
+ let scanner = Scanner(string: hex)
+ _ = scanner.scanString("#") // # 문자 제거
+
+ var rgb: UInt64 = 0
+ scanner.scanHexInt64(&rgb) // 16진수를 정수로 변환
+
+ // RGB 값 분리
+ let r = Double((rgb >> 16) & 0xFF) / 255.0
+ let g = Double((rgb >> 8) & 0xFF) / 255.0
+ let b = Double((rgb >> 0) & 0xFF) / 255.0
+
+ self.init(red: r, green: g, blue: b)
+ }
+}
+
+#Preview {
+ UserInfromation()
+}
diff --git a/megabox/Tests/MegaboxTests.swift b/megabox/Tests/MegaboxTests.swift
new file mode 100644
index 0000000..a7b1972
--- /dev/null
+++ b/megabox/Tests/MegaboxTests.swift
@@ -0,0 +1,10 @@
+import Testing
+@testable import Megabox
+
+struct MegaboxTests {
+
+ @Test func example() async throws {
+ // Write your test here and use APIs like `#expect(...)` to check expected conditions.
+ }
+
+}
diff --git a/mise.toml b/mise.toml
new file mode 100644
index 0000000..a65beb1
--- /dev/null
+++ b/mise.toml
@@ -0,0 +1,2 @@
+[tools]
+tuist = "4.72.0"