From f32bd1be0f64613ae8814de25a5e0ea81fd29883 Mon Sep 17 00:00:00 2001 From: Miroslav Mazel Date: Tue, 21 Mar 2023 21:13:27 +0100 Subject: [PATCH] Auto-generated macOS files --- macos/.gitignore | 7 + macos/Flutter/Flutter-Debug.xcconfig | 2 + macos/Flutter/Flutter-Release.xcconfig | 2 + macos/Flutter/GeneratedPluginRegistrant.swift | 20 + macos/Podfile | 40 ++ macos/Podfile.lock | 47 ++ macos/Runner.xcodeproj/project.pbxproj | 633 ++++++++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 87 +++ .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + macos/Runner/AppDelegate.swift | 9 + .../AppIcon.appiconset/Contents.json | 68 ++ .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 12606 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 690 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 192 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 733 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 468 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 4802 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 635 bytes macos/Runner/Base.lproj/MainMenu.xib | 343 ++++++++++ macos/Runner/Configs/AppInfo.xcconfig | 14 + macos/Runner/Configs/Debug.xcconfig | 2 + macos/Runner/Configs/Release.xcconfig | 2 + macos/Runner/Configs/Warnings.xcconfig | 13 + macos/Runner/DebugProfile.entitlements | 14 + macos/Runner/Info.plist | 32 + macos/Runner/MainFlutterWindow.swift | 15 + macos/Runner/Release.entitlements | 10 + 29 files changed, 1386 insertions(+) create mode 100644 macos/.gitignore create mode 100644 macos/Flutter/Flutter-Debug.xcconfig create mode 100644 macos/Flutter/Flutter-Release.xcconfig create mode 100644 macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 macos/Podfile create mode 100644 macos/Podfile.lock create mode 100644 macos/Runner.xcodeproj/project.pbxproj create mode 100644 macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner/AppDelegate.swift create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 macos/Runner/Base.lproj/MainMenu.xib create mode 100644 macos/Runner/Configs/AppInfo.xcconfig create mode 100644 macos/Runner/Configs/Debug.xcconfig create mode 100644 macos/Runner/Configs/Release.xcconfig create mode 100644 macos/Runner/Configs/Warnings.xcconfig create mode 100644 macos/Runner/DebugProfile.entitlements create mode 100644 macos/Runner/Info.plist create mode 100644 macos/Runner/MainFlutterWindow.swift create mode 100644 macos/Runner/Release.entitlements diff --git a/macos/.gitignore b/macos/.gitignore new file mode 100644 index 00000000..746adbb6 --- /dev/null +++ b/macos/.gitignore @@ -0,0 +1,7 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/dgph +**/xcuserdata/ diff --git a/macos/Flutter/Flutter-Debug.xcconfig b/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 00000000..4b81f9b2 --- /dev/null +++ b/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/Flutter-Release.xcconfig b/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 00000000..5caa9d15 --- /dev/null +++ b/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift new file mode 100644 index 00000000..44c695d3 --- /dev/null +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -0,0 +1,20 @@ +// +// Generated file. Do not edit. +// + +import FlutterMacOS +import Foundation + +import package_info_plus +import rive_common +import shared_preferences_foundation +import url_launcher_macos +import wakelock_macos + +func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin")) + RivePlugin.register(with: registry.registrar(forPlugin: "RivePlugin")) + SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) + UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) + WakelockMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockMacosPlugin")) +} diff --git a/macos/Podfile b/macos/Podfile new file mode 100644 index 00000000..049abe29 --- /dev/null +++ b/macos/Podfile @@ -0,0 +1,40 @@ +platform :osx, '10.14' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + use_modular_headers! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + end +end diff --git a/macos/Podfile.lock b/macos/Podfile.lock new file mode 100644 index 00000000..688c810b --- /dev/null +++ b/macos/Podfile.lock @@ -0,0 +1,47 @@ +PODS: + - FlutterMacOS (1.0.0) + - package_info_plus (0.0.1): + - FlutterMacOS + - rive_common (0.0.1): + - FlutterMacOS + - shared_preferences_foundation (0.0.1): + - Flutter + - FlutterMacOS + - url_launcher_macos (0.0.1): + - FlutterMacOS + - wakelock_macos (0.0.1): + - FlutterMacOS + +DEPENDENCIES: + - FlutterMacOS (from `Flutter/ephemeral`) + - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) + - rive_common (from `Flutter/ephemeral/.symlinks/plugins/rive_common/macos`) + - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/macos`) + - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) + - wakelock_macos (from `Flutter/ephemeral/.symlinks/plugins/wakelock_macos/macos`) + +EXTERNAL SOURCES: + FlutterMacOS: + :path: Flutter/ephemeral + package_info_plus: + :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos + rive_common: + :path: Flutter/ephemeral/.symlinks/plugins/rive_common/macos + shared_preferences_foundation: + :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/macos + url_launcher_macos: + :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos + wakelock_macos: + :path: Flutter/ephemeral/.symlinks/plugins/wakelock_macos/macos + +SPEC CHECKSUMS: + FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 + package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce + rive_common: e966d74ca90edb3761cfc559d0f4c884ee947576 + shared_preferences_foundation: 986fc17f3d3251412d18b0265f9c64113a8c2472 + url_launcher_macos: 5335912b679c073563f29d89d33d10d459f95451 + wakelock_macos: bc3f2a9bd8d2e6c89fee1e1822e7ddac3bd004a9 + +PODFILE CHECKSUM: 353c8bcc5d5b0994e508d035b5431cfe18c1dea7 + +COCOAPODS: 1.11.3 diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 00000000..d211aaba --- /dev/null +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,633 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + ECB129F5DEDCD5AF603AD15D /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 85F1CEF640C376A0F61D64CA /* Pods_Runner.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1C6C736E1AADA399C83EB9C4 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; + 33CC10ED2044A3C60003C045 /* wger.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = wger.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 85F1CEF640C376A0F61D64CA /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + CA9904B2A35157E0D715BB2D /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + CE7630E9D25FA6E16E07E168 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ECB129F5DEDCD5AF603AD15D /* Pods_Runner.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 2DD1298528411AD348A98355 /* Pods */ = { + isa = PBXGroup; + children = ( + CE7630E9D25FA6E16E07E168 /* Pods-Runner.debug.xcconfig */, + CA9904B2A35157E0D715BB2D /* Pods-Runner.release.xcconfig */, + 1C6C736E1AADA399C83EB9C4 /* Pods-Runner.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + 2DD1298528411AD348A98355 /* Pods */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* wger.app */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 85F1CEF640C376A0F61D64CA /* Pods_Runner.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9DEBC80FF7A8E9E5C15402CD /* [CP] Check Pods Manifest.lock */, + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + FDE660660883C7AD961CEE85 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* wger.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 1300; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; + 9DEBC80FF7A8E9E5C15402CD /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + FDE660660883C7AD961CEE85 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + 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_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = 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_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + 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_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + 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_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = 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_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + 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_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + 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_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = 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_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + 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_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 00000000..5d323891 --- /dev/null +++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner.xcworkspace/contents.xcworkspacedata b/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..21a3cc14 --- /dev/null +++ b/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner/AppDelegate.swift b/macos/Runner/AppDelegate.swift new file mode 100644 index 00000000..d53ef643 --- /dev/null +++ b/macos/Runner/AppDelegate.swift @@ -0,0 +1,9 @@ +import Cocoa +import FlutterMacOS + +@NSApplicationMain +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } +} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 00000000..96d3fee1 --- /dev/null +++ b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "info": { + "version": 1, + "author": "xcode" + }, + "images": [ + { + "size": "16x16", + "idiom": "mac", + "filename": "app_icon_16.png", + "scale": "1x" + }, + { + "size": "16x16", + "idiom": "mac", + "filename": "app_icon_32.png", + "scale": "2x" + }, + { + "size": "32x32", + "idiom": "mac", + "filename": "app_icon_32.png", + "scale": "1x" + }, + { + "size": "32x32", + "idiom": "mac", + "filename": "app_icon_64.png", + "scale": "2x" + }, + { + "size": "128x128", + "idiom": "mac", + "filename": "app_icon_128.png", + "scale": "1x" + }, + { + "size": "128x128", + "idiom": "mac", + "filename": "app_icon_256.png", + "scale": "2x" + }, + { + "size": "256x256", + "idiom": "mac", + "filename": "app_icon_256.png", + "scale": "1x" + }, + { + "size": "256x256", + "idiom": "mac", + "filename": "app_icon_512.png", + "scale": "2x" + }, + { + "size": "512x512", + "idiom": "mac", + "filename": "app_icon_512.png", + "scale": "1x" + }, + { + "size": "512x512", + "idiom": "mac", + "filename": "app_icon_1024.png", + "scale": "2x" + } + ] +} \ No newline at end of file diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 0000000000000000000000000000000000000000..ccad7a25b38315d60dc5461f12db36943bffc48e GIT binary patch literal 12606 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 aq-VCiCUOwNVATZxtSoF!;lI9k{eJ+lyN!qd literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 0000000000000000000000000000000000000000..6b306e51f5e548e7b3dc0341443935ba06d1ba7e GIT binary patch literal 690 zcmV;j0!{siP)C00039P)t-sDolMV zO?@s;e=t#iG*p8%Rf9KIg*aD*J6eZ7UW!CwjYedSM`e#lWsgc{kxXcjPHK}-Y?M)K zlvQw-R&khFbD3Orn__#PV|<`yexYiDq-%ntZ-%FFh^Tpvt$dNMev+_$ldyu8vxAni zhMBdAoVSgixsRc{lB2wnq`j7=zLuuHm#4p)s==JB!kw+do~^{6uEeCX$Evu?vAxf= z!O^+I)VjshzR1_V$=Jcm*}}})#?Rc$)Zfq6;ndsZ)!XIP+~(HZ=Gouq+~Min;_BYx z>)+(;=j-t3?D6dH^X~EW@bdNX^Y-!c_ww}j^!51m_xbnu`uqF*`~3a={r&y@{{R2~ z=Ovhk0004HNkl|SZ{l6sq zzgIN*-|;lLKq#pc000000001l(bD7V&<&;ogKaSevS2$N|nF3~aQMw1Ar{={tsiN43#&^nhOP5Y`>w9Ksv{1Q3vHZ!B08puFZDws5S=a1>dl4urn~2;cpHA00000005!< Y0H~J?HkAPB3IG5A07*qoM6N<$g6Yv{(EtDd literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..df64a2497f1799004b477d1ccbf4fc8ceaa3d140 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!eSlAhtCml#o`1c5K!bB)k85(T zZ|0=HoGGCN(^Kmf7PPOZ>R;C|byL%{&6AewnYr@7tW^i+tUk10{m~_xPb}Yha_z3O zdQOwq0gbZpba4!kxSX7@fHxsUSRgSqAwf(qC7p@8fTOr@v!TI;f@03%Ce|N2ckK9C pQBkpT=Z=;Q+zA;64W|5JU?@4xw3pS)u^MO&gQu&X%Q~loCIClnM`r*4 literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png new file mode 100644 index 0000000000000000000000000000000000000000..b0b51cf6a07fede66b7618e3fe60379eda1e0f88 GIT binary patch literal 733 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911MRQ8&P5Fm9dz$e62%coYyw@%N$-XO5S zEUd*cvdt>0-8r$xC8^gVZGvaogovV<5ydm3OJ~QH&xx;`mt3HZ!8vOVFWhi+@uuTT zH=kIwziHovEe9^{J$`N9$?J#C+&X&h_ObJKPF%cu=E{S!S07%y@%Yls z$5(DWxq9d6y~nSgzI^}U^~V=)KE8SX`R#`$~U!lOI2OHogAa#Pnsex!XZme^vpI9*z6Q zw$I7j^w;tEsnx5PYP`zdoLTSxnLS!h{XkuX&dqbYPEXl)$hG`4s#?pb(7?bnMeM-` z@2sH743pouw1=|1c=D{_H-CXGdkG8JIAo$>QH{mCpTd$4z89`3Olg?>!{awDum72;LyYxgjLUmAM}7BSiMYz>(1!Sz zeTRR3{ruhSCC^X%{Q@bdNl|NoFPzRdst0HsMpK~y-)V_+Bs)CSUyj^YrOprfNQ znj|Z)ri-V%iY$aDqATg;Y{<)jq(H~cO-xxv5vD*(M33LY#spb`usXT|eI6tQEJhFo z8UkRT08wDY4p$)M3sGQe00tHi1-?oc3M_TNz!XCPrx`?nwkQ~=LKN6?6Yod{9cyQF z1+M1E3fTB`J-v|?__!PMaiN4IBeR@?qXdL4i|D;{JaC0000< KMNUMnLSTa8obDU| literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png new file mode 100644 index 0000000000000000000000000000000000000000..979206fb6cdfa3369e4c59a1a8f122b1c609a5c4 GIT binary patch literal 4802 zcmeHLX;f3mx;>yaGuT2K1evq}1sOynGy&p($Yc=28zC`(${>V!2s5#5NCP6afMG^O zKsp3k0)!YskT^0n(ikCxFi!@;AYcfA8{b>&uGjC`_pRmqasS-&=hQlNzEj_+Z`a1*+a06I^ll9UZmR9H z3)O9K&rmyj8*dIP(h2Im?i>%(*cf*1Q|Qb39am!67zQhRANAom;)-LV4PwuWV$C$Q z9UooWkJ;y8?HuT(UTRQaVy3&8--B(txQyHWXe0%otPh_CGyy>Ja{^f4tD67ba8c6# zO7j1Dxajx4dg?@@e`UC=c95iD{WbrX96iuV_GH^Y@Eb2<|9XqjUUU>=n|1skzN12h zk3L%3^{9-*zWW;L&9R}054-y;cv~dY|m?Ky!*5BUDf?BZ*u4Cfq z+v8x3r0`_I-*_+7sJ;_>ef4=QN%PYooJ%Ez7Ayn)NVb5WN>vS`>jUDg`y8~h^A8o2 z9AP(GBsU`724Hy5A=%>&<#*RQ%$1h&^Q+$Wm*)p|9P^`U>l0Ww-syo}qgJWsyZ@rl zMIqKwmeDCl--mgQ6?dP#rpFj&*TDAbN>j>8&6H*1!szVT;|25HphaoblCDQ9l*QMB zh0~sutiT3paqv*aIPWN2G*uQ3yUun!MaM-4Jml~|(pU5L+_cGiIGPoDKE&PC0WfTy zt$Lf;5rHc$%CgnKIw@Ur;8SMX!^G_BS?tVWVQ&9C3e&W5N=NY=+#%xFZOdE+S4e?_a%$^`IkXFoNAB8vU%&(dcul(pZ(>Tv}@&%`9jUI>1SZscN z`sG+H?gDr_VfziPbVz}wvDV<7zO^_N{(ijtxl4#%w=jK@(05+OGYV7~V$8_XJm0Cp)t-8H zdVBzBwOPuGGT#q{GrrAsvZ-=2EpZp3`y_D5@?tTRbI$jsDm!w+weV_83psFYx8JeZ ztGdE>!9qfA1IkE!EwugG+YC~!2v;yCOASQBMtd1Cx{{TFL&?mvk9}P2Ae}AV%uaK% z@F*zW;IqK2;$ibfI)}$oGbKmQIX4Cf@$s}D#164rD3P%bEZhxm&mxANTHqnFtw(u{ zK?~}e3ksfK9J0zl?M(TVg?ScyCw3ZyW#8NuUhxTmcD`HqtycIVD@08ZYh$w0D>i8v z&l^&CbtU2?nHm4-+B88TP!%HhJO~AE1(5pFz$n_s4WgqAY21TbeW&9ZY4(q>ZROUN zYg-}Er&KCOc`n26n2Z1WYm`MWG`2r2ZTf12VB{t=iPYGDF`h{88&$rPSGCEGCudQ2 z*x>@}s=~vZK-0wN^_BRnQ!Un1!DE&p7JtbsyT(b$x58l@!Cw5SjlD3{{j3|6_!vG} zH~U<(*S}G5acC-lOukGAncvUtM=)9%lZKGztcCb&X+ApU)^!1+3i^k3LLwBrLdO2N zuKy@;_YZ^{C3dud;b9`#f*p*RQMm1VF+HMh@=$J_m+t;RW98?#jE07HWn6CC3{w*(Y)lWo)-Gj;3PdxU~5=tUw+`A)T>>Z-x`uy5bUJw zvf9+kk9G0qoSpBX=nY2zabpL81kp&N+A5}=LWwZu20Eq;Iiu+J>{SEId(}>u^PmIO ziJxYL-uRn_-__yw{z~ev^H##T{0fGQ-klKDgP_{r?HNBkQ&)WHJ$|q-$hik9X{hSw=p@;v^|)cG8;|yJMr>pIU~{lznnT&??*e-U<&3B7cw*W zXfjA+sq<_ggkv?pkB*`a%t^MM3BUeeg9HxV%4QEg;e&pVlub7TJugw^Ms_m09Y(-{1WEAL_yy8Ta zGiIUuwr^VdceZxKA+Ae)33W}z)i)Ua9|c0T&^L(g0`Y(OvH$PRnC`zhWW;j34HYHk8uB60Zlp_16T7Dk0csUi4uPR(0YE z`{l_ppA)tnpbFO)Z=_n|IFzdKxntGYtGX~OGWimaYN~l!{T4Y zVNrw;SNDd*&69NK&*LYJ7BrUXuPuj4ktX_5Iy+M@$bTA{<)tw^Zw-^&H_$ItGB0%Z z(>vdfPX(CcK9*V`0KG7lh&Vkm{&O~t(>(C3Tq6H ziuLvV)lF|=zjEcb@^>@mg|9v|G<128nPAO>U_|kyfS`hCl$- zXBs?aVbBhf@DO&(o{GS{$CIwZ{zbM;Ct{l#6=Cx9r0u@Y8_6G4rA8~vEO(ClC>6i3 zc=`U-VKE2pg2wRJi$r*JWeZXL`!+j~E`ERrR#Smn!`&!aFS?L$Fu&T_S)Lf$GiYf7 z7+EIENPa=^{y~g?lEE)O{d0JX)+4!R_SZ-*QFZmk7x?P6#d@F%E_(T<>7mV`_aC{w zakZwJLI%(nT-?0PQ7A%=?ju(Q+;T0?NuD1}pyaXGA@YL34|reF^9z)Qx&>Xe(k9)fNhn>VOo@+y^F9y)H1UFagtw!G%I$9CCkC~V6W+@ zT}D-J&Bv3+o1jCpN7PafxEBRHjy6x2=?*WYEbX|`qk`{q*K*o;l(^2;ZKmuX($d?X7@QOdn4&Uo1s)Zyz=m5B279 z`wNLM9mUL$hVFp!PfT8OL6>d*bC+Ft`FgbVDShEq=rNPe-sVk$;du4)2*qH0a>8^# zQ-bpGL&)gJCb6O%xm;*2D57v#IZ{A%bbmjTL4gNK;+XfzfXj`2V5pXXxwuf z;u=2S6k|>a-O7xrN!_6xsa>=Ij$SJy*7U0Df0=fIg+x;HQmWs z{ODM3y=F@_wTR12nBS3{VV-);Bjb&7rLnF1!~V53yfwj&_zNQYERkiFEMz$|T)sO~ zM&~$GmZhCqn1{f#@-G{HgtOh@VzoZ$?foU+J%D-d&-aAzGr%reJr7 zzX-N)!>&#@-Maj%Fd30Ha}qxJ5Qov3-o%n;BcbW)hW-22=g)~XEt+BEt%b|pbLYb+ zJT0@Wn>Rg+iY?b{AKd9V(tWXQz*2p=O)vfK3uN@e9Fo4#Pp(=RpRmuq-)i#!JU1<& zsl-l$794cIg%y&t)D@8TepL%@1a$|#868Zf52v%mBwJ-Pkv}J91wP64EWw>lBt(az zff9p}<5oX-XEne7FI%*V*l)_x&mxzg|5%$d*pc+$Fa1I557XJLAePr1erArh>u4|L%In*4~F z!AqnjZIAkrnIzAb-a&!9vK|eQMJMEriFSreP7s%S+~P9C127*av?Y=HY1BG(`Pawj z*6doc{2US0bKv&XCzlBr>e5`CL7~++!;Cw#D7k(hIvohT*OnM#bX&B4WYjD}ZwIA~ zC+%0*7*+}A$Z#d%O zUr@n6^V&au;h*>ZzhBx7{O6S8D~>6Qi?$^s9K9XSF^rgi=(0Zpv#B}d_2b_G$&`pi literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png new file mode 100644 index 0000000000000000000000000000000000000000..98df584a4b3cab3762bab18136bc451c6c01d804 GIT binary patch literal 635 zcmV->0)+jEP)C|jQGqd1fiqNtI9P@`ScW@Wh(2A3KV6AKVT?p#jYVUPNoJ5sXOU2B zlvQw-S8*&o@ITZW`Ck*f1+rBqiuwyZiS|AhNp3dsCbR6c#f@olCOW0v4WPe zgO{_3oVSXdw~(T{k)ynmq`j4)+(;P>NWqw%C_a zwY4aZ}X&n5WFC zEm(mxWX+;+3vd<$?@nMdC|H3tfT|Nn!RTKF24@Lyks<98U}K^VaEJuJ?|lXE$qkeT zNV&woK_h7~F_3%<*=+*ctdq_OP+I<k|`t Vhu%PMP>%or002ovPDHLkV1lv(S6~1D literal 0 HcmV?d00001 diff --git a/macos/Runner/Base.lproj/MainMenu.xib b/macos/Runner/Base.lproj/MainMenu.xib new file mode 100644 index 00000000..80e867a4 --- /dev/null +++ b/macos/Runner/Base.lproj/MainMenu.xib @@ -0,0 +1,343 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 00000000..6efda883 --- /dev/null +++ b/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = wger + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = de.wger.flutter + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2023 de.wger. All rights reserved. diff --git a/macos/Runner/Configs/Debug.xcconfig b/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 00000000..36b0fd94 --- /dev/null +++ b/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Release.xcconfig b/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 00000000..dff4f495 --- /dev/null +++ b/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Warnings.xcconfig b/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 00000000..42bcbf47 --- /dev/null +++ b/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements new file mode 100644 index 00000000..08c3ab17 --- /dev/null +++ b/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,14 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.server + + com.apple.security.network.client + + + diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist new file mode 100644 index 00000000..4789daa6 --- /dev/null +++ b/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/macos/Runner/MainFlutterWindow.swift b/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 00000000..2722837e --- /dev/null +++ b/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,15 @@ +import Cocoa +import FlutterMacOS + +class MainFlutterWindow: NSWindow { + override func awakeFromNib() { + let flutterViewController = FlutterViewController.init() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements new file mode 100644 index 00000000..ee95ab7e --- /dev/null +++ b/macos/Runner/Release.entitlements @@ -0,0 +1,10 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.network.client + + +