mirror of
https://github.com/jagandeepbrar/lunasea.git
synced 2026-08-31 20:52:32 +00:00
chore(release): v6.0.0+60000004 (#528)
This commit is contained in:
@@ -6,12 +6,14 @@
|
||||
|
||||
- `[Dashboard]` (Calendar) Display content poster and additional information
|
||||
- `[Firebase]` (Analytics) Completely removed Analytics and Crashlytics
|
||||
- `[Settings]` Show dismissable blocks with information and links
|
||||
- `[Images]` (Cache) Cache fetched images to disk
|
||||
- `[Lidarr]` (Add Artist) Show artist poster in result list
|
||||
- `[Lidarr]` (Add Artist) Allow user to select monitoring options
|
||||
- `[Lidarr]` (Add Artist) Removed toggle to use album folders
|
||||
- `[Lidarr]` (Catalogue) Show artist poster in catalogue list
|
||||
- `[Lidarr]` (Missing) Display album covers
|
||||
- `[Settings]` (Configuration) Show dismissable blocks with information and links
|
||||
- `[Settings]` (System) Ability to clear image cache
|
||||
- `[Sonarr]` (Catalogue) Previous airing sorting option
|
||||
- `[Sonarr]` (Season List) Display season posters
|
||||
- `[Sonarr]` (Queue) Option to set queue page size
|
||||
|
||||
@@ -1,37 +1,69 @@
|
||||
{
|
||||
"motd": "This build includes some minor but necessary changes for the next public release, including the ability to delete your LunaSea account (with all cloud data) directly from the app!\n\nThis build also removes the usage of custom icons (outside of branding/logo icons), and now uses only built-in icons for a more consistent feel across the UI.",
|
||||
"motd": "This build introduces a substantial rework of many UI elements, including a much more performant tile block, normalized font sizes, a new minified drawer header, and more!\n\nAlongside other changes in this build (listed below), this build also completely removes all Firebase Crashlytics & Analytics data collection.",
|
||||
"new": [
|
||||
{
|
||||
"module": "Dashboard",
|
||||
"changes": [
|
||||
"(Calendar) Add option to show past days in schedule view"
|
||||
"(Calendar) Display content poster and additional information"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Firebase",
|
||||
"changes": [
|
||||
"(Analytics) Completely removed Analytics and Crashlytics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Images",
|
||||
"changes": [
|
||||
"(Cache) Cache fetched images to disk"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Lidarr",
|
||||
"changes": [
|
||||
"(Add Artist) Show artist poster in result list",
|
||||
"(Add Artist) Allow user to select monitoring options",
|
||||
"(Add Artist) Removed toggle to use album folders",
|
||||
"(Catalogue) Show artist poster in catalogue list",
|
||||
"(Missing) Display album covers"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Settings",
|
||||
"changes": [
|
||||
"(Account) Ability to delete your LunaSea account and all cloud data"
|
||||
"(Configuration) Show dismissable blocks with information and links",
|
||||
"(System) Ability to clear image cache"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Sonarr",
|
||||
"changes": [
|
||||
"(Catalogue) Previous airing sorting option",
|
||||
"(Season List) Display season posters",
|
||||
"(Queue) Option to set queue page size"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "UI/UX",
|
||||
"changes": [
|
||||
"(Icons) Added/updated brand icons for Lidarr, Sonarr, and Overseerr"
|
||||
"(Tile Blocks) Allow overflowing title or body lines to be horizontally scrolled"
|
||||
]
|
||||
}
|
||||
],
|
||||
"tweaks": [
|
||||
{
|
||||
"module": "Sonarr",
|
||||
"changes": [
|
||||
"(Queue) Hide redundant queue information on episode sheet"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "UI/UX",
|
||||
"changes": [
|
||||
"(Drawer) Update the list divider styling",
|
||||
"(Icons) Replace custom icons (except branding icons) with Flutter defaults"
|
||||
"(Drawer) Heavily reduced the size of the header area",
|
||||
"(Fonts) Normalized font sizes across the UI",
|
||||
"(Images) Set the default image opacity to 20% (custom set values are uneffected)",
|
||||
"(Tile Blocks) Heavily improved build and memory performance of tiles",
|
||||
"(Tile Blocks) Improved consistency in trailing icon/text size",
|
||||
"(Tile Blocks) Improved consistency of tile height, content spacing, and padding",
|
||||
"(Tile Blocks) Natively draw placeholder posters for movies, series, albums, etc.",
|
||||
"(Tile Blocks) Fade-in background image loads",
|
||||
"(Tooltips) Added styling to match LunaSea theme"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -39,26 +71,21 @@
|
||||
{
|
||||
"module": "Dashboard",
|
||||
"changes": [
|
||||
"(Calendar) Calendar type switcher would not show when starting on calendar page",
|
||||
"(Calendar) Use Sonarr v3 routes for fetching the calendar"
|
||||
"(Calendar) Lidarr entries would not appear",
|
||||
"(Modules) Unbranded icons could use incorrect colours"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Lidarr",
|
||||
"changes": [
|
||||
"(Artists) Safe-guard fetching of artist quality profiles"
|
||||
"(Albums) List would fail to load on nightly Lidarr builds"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "LunaSea",
|
||||
"module": "Sonarr",
|
||||
"changes": [
|
||||
"(Keyboards) External keyboard inputs were not being accepted"
|
||||
]
|
||||
},
|
||||
{
|
||||
"module": "Tautulli",
|
||||
"changes": [
|
||||
"(Activity) Activity counter badge would not completely fade away"
|
||||
"(Catalogue) Missing filter would fail to load when using Sonarr v4 in some cases",
|
||||
"(Images) Images now use v3 API path"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
@@ -49,6 +49,9 @@
|
||||
"settings.ClearConfigurationHint1": "Are you sure you want to clear your configuration?",
|
||||
"settings.ClearConfigurationHint2": "You will be starting from a clean slate, please ensure you backup your current configuration first!",
|
||||
"settings.ClearConfigurationHint3": "If you are signed into a LunaSea account, you will be signed out.",
|
||||
"settings.ClearImageCache": "Clear Image Cache",
|
||||
"settings.ClearImageCacheHint1": "Are you sure you want to clear all images from the cache?",
|
||||
"settings.ClearImageCacheHint2": "Redownloading images for a large library can consume a large amount of data.",
|
||||
"settings.ClearLogs": "Clear Logs",
|
||||
"settings.ClearLogsHint1": "Are you sure you want to clear all recorded logs?\n\nLogs can be useful for bug reports and debugging.",
|
||||
"settings.ConfigureModule": "Configure {}",
|
||||
|
||||
@@ -26,6 +26,19 @@
|
||||
"settings.BackupConfigurationHint1": "Alle back-ups zijn versleuteld voordat ze worden geëxporteerd",
|
||||
"settings.BackupList": "Back-up Lijst",
|
||||
"settings.BackupToCloud": "Back-up naar Cloud",
|
||||
"settings.AccountDeletedMessage": "Uw LunaSea account is met succes verwijderd",
|
||||
"settings.AccountSettings": "Account instellingen",
|
||||
"settings.AccountDeleted": "Account verwijderd",
|
||||
"settings.ClearConfigurationHint1": "Weet je zeker dat je de configuratie wilt verwijderen?",
|
||||
"settings.ClearConfiguration": "Configuratie wissen",
|
||||
"settings.BackupToCloudDescription": "Configuratie data opslaan",
|
||||
"settings.BackupToCloudFailure": "Backup mislukt",
|
||||
"settings.BackupToCloudSuccess": "Backup geslaagd",
|
||||
"settings.BannersNotificationModuleSupportHeader": "Ondersteunde modules",
|
||||
"settings.BannersNotificationModuleSupportBody": "Notificaties gebaseerd op webhooks worden alleen ondersteund door onderstaande modules\n\nOndersteuning voor meer modules volgen in de toekomst!",
|
||||
"settings.BasicAuthenticationHint1": "Gebruikersnaam mag geen dubbele punt bevatten",
|
||||
"settings.BasicAuthenticationHint2": "Wachtwoord mag wel een dubbele punt bevatten",
|
||||
"settings.BasicAuthenticationHint3": "Gebruikersnaam en wachtwoord worden automatisch geconverteerd naar base64 codering",
|
||||
"lunasea.Add": "Voeg Toe",
|
||||
"lunasea.AnErrorHasOccurred": "Een Fout Is Opgetreden",
|
||||
"lunasea.BackUp": "Back-up",
|
||||
|
||||
19
derry.yaml
19
derry.yaml
@@ -30,31 +30,33 @@ build:
|
||||
(description): Build (Android) - Build Split APKs
|
||||
(execution): once
|
||||
(scripts):
|
||||
- ./scripts/build/apk.sh
|
||||
- flutter clean
|
||||
- flutter build apk --split-per-abi --bundle-sksl-path shaders/android_sksl.json --release
|
||||
aab:
|
||||
(description): Build (Android) - Build Appbundle
|
||||
(execution): once
|
||||
(scripts):
|
||||
- ./scripts/build/aab.sh
|
||||
- flutter clean
|
||||
- flutter build appbundle --bundle-sksl-path shaders/android_sksl.json --release
|
||||
ios:
|
||||
ipa:
|
||||
(description): Build (iOS) - Build IPA
|
||||
(execution): once
|
||||
(scripts):
|
||||
- ./scripts/build/ipa.sh
|
||||
- flutter build ipa --bundle-sksl-path shaders/ios_sksl.json --release
|
||||
archive:
|
||||
(description): Build (iOS) - Build Xcode Archive
|
||||
(execution): once
|
||||
(scripts):
|
||||
- flutter clean
|
||||
- flutter build ios --bundle-sksl-path shaders/ios_sksl.json
|
||||
- flutter build ios --bundle-sksl-path shaders/ios_sksl.json --release
|
||||
macos:
|
||||
archive:
|
||||
(description): Build (iOS) - Build Xcode Archive
|
||||
(execution): once
|
||||
(scripts):
|
||||
- flutter clean
|
||||
- flutter build macos
|
||||
- flutter build macos --release
|
||||
cocoapods:
|
||||
clearcache:
|
||||
(description): Cocoapods - Delete Cache & Derived Data
|
||||
@@ -109,4 +111,9 @@ generate:
|
||||
(description): Generator - Localizations
|
||||
(execution): once
|
||||
(scripts):
|
||||
- dart ./scripts/generate/localization.dart
|
||||
- dart ./scripts/generate_localization.dart
|
||||
profile:
|
||||
(description): Run in Profile Mode
|
||||
(execution): once
|
||||
(scripts):
|
||||
- flutter run --profile --cache-sksl --purge-persistent-cache
|
||||
@@ -106,6 +106,9 @@ PODS:
|
||||
- FirebaseCore (~> 8.0)
|
||||
- GTMSessionFetcher/Core (~> 1.5)
|
||||
- Flutter (1.0.0)
|
||||
- FMDB (2.7.5):
|
||||
- FMDB/standard (= 2.7.5)
|
||||
- FMDB/standard (2.7.5)
|
||||
- GoogleDataTransport (9.1.2):
|
||||
- GoogleUtilities/Environment (~> 7.2)
|
||||
- nanopb (~> 2.30908.0)
|
||||
@@ -165,6 +168,9 @@ PODS:
|
||||
- Flutter
|
||||
- shared_preferences_ios (0.0.1):
|
||||
- Flutter
|
||||
- sqflite (0.0.2):
|
||||
- Flutter
|
||||
- FMDB (>= 2.7.5)
|
||||
- SwiftyGif (5.4.2)
|
||||
- url_launcher_ios (0.0.1):
|
||||
- Flutter
|
||||
@@ -186,6 +192,7 @@ DEPENDENCIES:
|
||||
- quick_actions (from `.symlinks/plugins/quick_actions/ios`)
|
||||
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
||||
- shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`)
|
||||
- sqflite (from `.symlinks/plugins/sqflite/ios`)
|
||||
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
||||
|
||||
SPEC REPOS:
|
||||
@@ -199,6 +206,7 @@ SPEC REPOS:
|
||||
- FirebaseInstallations
|
||||
- FirebaseMessaging
|
||||
- FirebaseStorage
|
||||
- FMDB
|
||||
- GoogleDataTransport
|
||||
- GoogleUtilities
|
||||
- GTMSessionFetcher
|
||||
@@ -237,6 +245,8 @@ EXTERNAL SOURCES:
|
||||
:path: ".symlinks/plugins/share_plus/ios"
|
||||
shared_preferences_ios:
|
||||
:path: ".symlinks/plugins/shared_preferences_ios/ios"
|
||||
sqflite:
|
||||
:path: ".symlinks/plugins/sqflite/ios"
|
||||
url_launcher_ios:
|
||||
:path: ".symlinks/plugins/url_launcher_ios/ios"
|
||||
|
||||
@@ -263,6 +273,7 @@ SPEC CHECKSUMS:
|
||||
FirebaseMessaging: 82c4a48638f53f7b184f3cc9f6cd2cbe533ab316
|
||||
FirebaseStorage: 452c98c31ccb40b819764bf3039426c4388d9939
|
||||
Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a
|
||||
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
|
||||
GoogleDataTransport: 629c20a4d363167143f30ea78320d5a7eb8bd940
|
||||
GoogleUtilities: 684ee790a24f73ebb2d1d966e9711c203f2a4237
|
||||
GTMSessionFetcher: 43748f93435c2aa068b1cbe39655aaf600652e91
|
||||
@@ -275,6 +286,7 @@ SPEC CHECKSUMS:
|
||||
SDWebImage: 4dc3e42d9ec0c1028b960a33ac6b637bb432207b
|
||||
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
|
||||
shared_preferences_ios: aef470a42dc4675a1cdd50e3158b42e3d1232b32
|
||||
sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904
|
||||
SwiftyGif: dec758a9dd3d278e5a855dbf279bf062c923c387
|
||||
url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||
22ABA27907009C6D67E17F02 /* Pods_ImageNotification.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DDBAA25D93558DC2ACE8794 /* Pods_ImageNotification.framework */; };
|
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||
3D61E14E96B7D4053F5149E8 /* Pods_ImageNotification.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 31E137C17ECE8FB49677BF90 /* Pods_ImageNotification.framework */; };
|
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||
@@ -18,7 +18,7 @@
|
||||
9C5DBBF2257EB50400836D8D /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 9C5DBBF1257EB50400836D8D /* GoogleService-Info.plist */; };
|
||||
9C7092B325E77E470056AE0B /* NotificationService.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C7092B225E77E470056AE0B /* NotificationService.m */; };
|
||||
9C7092B725E77E470056AE0B /* ImageNotification.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 9C7092AF25E77E470056AE0B /* ImageNotification.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
||||
E81187C204448290256D1292 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 525B84ABAED8CC10DD278134 /* Pods_Runner.framework */; };
|
||||
E5D25C1E03B6BC8A29076BA3 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB17C8DE485610F7704287B8 /* Pods_Runner.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -56,15 +56,16 @@
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
023AA6ADC9E3524E90FC4938 /* 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 = "<group>"; };
|
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||
1AEC3393F733CF63CC471C78 /* 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 = "<group>"; };
|
||||
31E137C17ECE8FB49677BF90 /* Pods_ImageNotification.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ImageNotification.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||
525B84ABAED8CC10DD278134 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
662CD407BE758B5E7C57DF9E /* 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 = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
7DDBAA25D93558DC2ACE8794 /* Pods_ImageNotification.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ImageNotification.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
947991346E21E2CBEC0CD8E9 /* Pods-ImageNotification.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.profile.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
@@ -72,6 +73,7 @@
|
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
9A54E4E8BFAA8BBEE938F1C3 /* 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 = "<group>"; };
|
||||
9C0A396F23E0F00900EC8127 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; };
|
||||
9C2991232453FE3100B93AB2 /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; };
|
||||
9C5DBBF1257EB50400836D8D /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||
@@ -81,11 +83,9 @@
|
||||
9C7092B125E77E470056AE0B /* NotificationService.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NotificationService.h; sourceTree = "<group>"; };
|
||||
9C7092B225E77E470056AE0B /* NotificationService.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = NotificationService.m; sourceTree = "<group>"; };
|
||||
9C7092B425E77E470056AE0B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
AB50C11FF4EFC5D9961D1031 /* 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 = "<group>"; };
|
||||
ACE755908B540FD8855E4D89 /* 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 = "<group>"; };
|
||||
C041C2ED656F3E1D27D9E228 /* Pods-ImageNotification.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.debug.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
C9A446482226EB46FF708884 /* Pods-ImageNotification.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.profile.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
FE066D193740042A640E4E50 /* Pods-ImageNotification.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.release.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.release.xcconfig"; sourceTree = "<group>"; };
|
||||
A191DF243880CD21D150EA3C /* Pods-ImageNotification.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.release.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.release.xcconfig"; sourceTree = "<group>"; };
|
||||
BB17C8DE485610F7704287B8 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
E8514DF39E114907A369593F /* Pods-ImageNotification.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ImageNotification.debug.xcconfig"; path = "Target Support Files/Pods-ImageNotification/Pods-ImageNotification.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -94,7 +94,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
9C2991242453FE3100B93AB2 /* StoreKit.framework in Frameworks */,
|
||||
E81187C204448290256D1292 /* Pods_Runner.framework in Frameworks */,
|
||||
E5D25C1E03B6BC8A29076BA3 /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -102,7 +102,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
22ABA27907009C6D67E17F02 /* Pods_ImageNotification.framework in Frameworks */,
|
||||
3D61E14E96B7D4053F5149E8 /* Pods_ImageNotification.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -182,8 +182,8 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
9C2991232453FE3100B93AB2 /* StoreKit.framework */,
|
||||
7DDBAA25D93558DC2ACE8794 /* Pods_ImageNotification.framework */,
|
||||
525B84ABAED8CC10DD278134 /* Pods_Runner.framework */,
|
||||
31E137C17ECE8FB49677BF90 /* Pods_ImageNotification.framework */,
|
||||
BB17C8DE485610F7704287B8 /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
@@ -191,12 +191,12 @@
|
||||
F5D05D221249C73674C5DB0D /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C041C2ED656F3E1D27D9E228 /* Pods-ImageNotification.debug.xcconfig */,
|
||||
FE066D193740042A640E4E50 /* Pods-ImageNotification.release.xcconfig */,
|
||||
C9A446482226EB46FF708884 /* Pods-ImageNotification.profile.xcconfig */,
|
||||
AB50C11FF4EFC5D9961D1031 /* Pods-Runner.debug.xcconfig */,
|
||||
ACE755908B540FD8855E4D89 /* Pods-Runner.release.xcconfig */,
|
||||
1AEC3393F733CF63CC471C78 /* Pods-Runner.profile.xcconfig */,
|
||||
E8514DF39E114907A369593F /* Pods-ImageNotification.debug.xcconfig */,
|
||||
A191DF243880CD21D150EA3C /* Pods-ImageNotification.release.xcconfig */,
|
||||
947991346E21E2CBEC0CD8E9 /* Pods-ImageNotification.profile.xcconfig */,
|
||||
9A54E4E8BFAA8BBEE938F1C3 /* Pods-Runner.debug.xcconfig */,
|
||||
023AA6ADC9E3524E90FC4938 /* Pods-Runner.release.xcconfig */,
|
||||
662CD407BE758B5E7C57DF9E /* Pods-Runner.profile.xcconfig */,
|
||||
);
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
@@ -208,7 +208,7 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
3485969F7F1D5F22AA9F93DD /* [CP] Check Pods Manifest.lock */,
|
||||
440A55AC1D27EC80F1FD3447 /* [CP] Check Pods Manifest.lock */,
|
||||
9740EEB61CF901F6004384FC /* Run Script */,
|
||||
97C146EA1CF9000F007C117D /* Sources */,
|
||||
97C146EB1CF9000F007C117D /* Frameworks */,
|
||||
@@ -216,8 +216,8 @@
|
||||
9705A1C41CF9048500538489 /* Embed Frameworks */,
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
||||
9C7092B825E77E470056AE0B /* Embed App Extensions */,
|
||||
FEF0F5B439D2594CBDB93362 /* [CP] Embed Pods Frameworks */,
|
||||
71292F5AA25ED2C228C6EFFB /* [CP] Copy Pods Resources */,
|
||||
612B00A195C7C580D2188AA3 /* [CP] Embed Pods Frameworks */,
|
||||
0505C764539DE626998A7119 /* [CP] Copy Pods Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -233,7 +233,7 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 9C7092BC25E77E470056AE0B /* Build configuration list for PBXNativeTarget "ImageNotification" */;
|
||||
buildPhases = (
|
||||
5FBBFCF3DA2647B52FD6E1AE /* [CP] Check Pods Manifest.lock */,
|
||||
80666D8860C2D5B82039C00B /* [CP] Check Pods Manifest.lock */,
|
||||
9C7092AB25E77E470056AE0B /* Sources */,
|
||||
9C7092AC25E77E470056AE0B /* Frameworks */,
|
||||
9C7092AD25E77E470056AE0B /* Resources */,
|
||||
@@ -312,7 +312,39 @@
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
3485969F7F1D5F22AA9F93DD /* [CP] Check Pods Manifest.lock */ = {
|
||||
0505C764539DE626998A7119 /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh",
|
||||
"${PODS_ROOT}/FirebaseFirestore/FirebaseFirestore/Resources/gRPCCertificates-Cpp.bundle",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/gRPCCertificates-Cpp.bundle",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Thin Binary";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||
};
|
||||
440A55AC1D27EC80F1FD3447 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
@@ -334,21 +366,73 @@
|
||||
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;
|
||||
};
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
612B00A195C7C580D2188AA3 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
|
||||
"${BUILT_PRODUCTS_DIR}/DKImagePickerController/DKImagePickerController.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/DKPhotoGallery/DKPhotoGallery.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FMDB/FMDB.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseAuth/FirebaseAuth.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseCore/FirebaseCore.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseInstallations/FirebaseInstallations.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseMessaging/FirebaseMessaging.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseStorage/FirebaseStorage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GoogleDataTransport/GoogleDataTransport.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/PromisesObjC/FBLPromises.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/file_picker/file_picker.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/in_app_purchase_ios/in_app_purchase_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/package_info_plus/package_info_plus.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/path_provider_ios/path_provider_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/quick_actions/quick_actions.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/share_plus/share_plus.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/shared_preferences_ios/shared_preferences_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/sqflite/sqflite.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/url_launcher_ios/url_launcher_ios.framework",
|
||||
);
|
||||
name = "Thin Binary";
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKImagePickerController.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKPhotoGallery.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FMDB.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseAuth.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCore.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCoreDiagnostics.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseInstallations.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseMessaging.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseStorage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleDataTransport.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBLPromises.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyGif.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/file_picker.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/in_app_purchase_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/package_info_plus.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/quick_actions.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/share_plus.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/shared_preferences_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/sqflite.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher_ios.framework",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
5FBBFCF3DA2647B52FD6E1AE /* [CP] Check Pods Manifest.lock */ = {
|
||||
80666D8860C2D5B82039C00B /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
@@ -370,24 +454,6 @@
|
||||
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;
|
||||
};
|
||||
71292F5AA25ED2C228C6EFFB /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh",
|
||||
"${PODS_ROOT}/FirebaseFirestore/FirebaseFirestore/Resources/gRPCCertificates-Cpp.bundle",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/gRPCCertificates-Cpp.bundle",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -402,68 +468,6 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build\n";
|
||||
};
|
||||
FEF0F5B439D2594CBDB93362 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
|
||||
"${BUILT_PRODUCTS_DIR}/DKImagePickerController/DKImagePickerController.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/DKPhotoGallery/DKPhotoGallery.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseAuth/FirebaseAuth.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseCore/FirebaseCore.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseInstallations/FirebaseInstallations.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseMessaging/FirebaseMessaging.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FirebaseStorage/FirebaseStorage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GoogleDataTransport/GoogleDataTransport.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/PromisesObjC/FBLPromises.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/file_picker/file_picker.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/in_app_purchase_ios/in_app_purchase_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/package_info_plus/package_info_plus.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/path_provider_ios/path_provider_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/quick_actions/quick_actions.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/share_plus/share_plus.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/shared_preferences_ios/shared_preferences_ios.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/url_launcher_ios/url_launcher_ios.framework",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKImagePickerController.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKPhotoGallery.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseAuth.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCore.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCoreDiagnostics.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseInstallations.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseMessaging.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseStorage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleDataTransport.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBLPromises.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyGif.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/file_picker.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/in_app_purchase_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/package_info_plus.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/quick_actions.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/share_plus.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/shared_preferences_ios.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher_ios.framework",
|
||||
);
|
||||
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 */
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// Packages
|
||||
export 'package:cached_network_image/cached_network_image.dart';
|
||||
export 'package:easy_localization/easy_localization.dart';
|
||||
export 'package:expandable/expandable.dart';
|
||||
export 'package:fading_edge_scrollview/fading_edge_scrollview.dart';
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
export 'cache/image_cache.dart';
|
||||
export 'cache/memory_lru.dart';
|
||||
export 'cache/memory_store.dart';
|
||||
|
||||
16
lib/core/cache/image_cache.dart
vendored
Normal file
16
lib/core/cache/image_cache.dart
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
||||
|
||||
class LunaImageCache {
|
||||
static const _key = 'LUNA_IMAGE_CACHE';
|
||||
static CacheManager instance = CacheManager(Config(_key));
|
||||
|
||||
/// Initialize the image cache by setting [ImageCache]'s maximumSize and maximumSizeBytes.
|
||||
void initialize() {
|
||||
ImageCache().maximumSize = 1000;
|
||||
ImageCache().maximumSizeBytes = 128 << 20;
|
||||
}
|
||||
|
||||
/// Clear the cached images
|
||||
Future<void> clear() => instance.emptyCache();
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
export 'system/configuration.dart';
|
||||
export 'system/desktop_window.dart';
|
||||
export 'system/filesystem.dart';
|
||||
export 'system/image_cache.dart';
|
||||
export 'system/in_app_purchases.dart';
|
||||
export 'system/localization.dart';
|
||||
export 'system/networking.dart';
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
import 'package:flutter/painting.dart';
|
||||
|
||||
class LunaImageCache {
|
||||
/// Initialize the image cache by setting [ImageCache]'s maximumSize and maximumSizeBytes.
|
||||
void initialize() {
|
||||
ImageCache().maximumSize = 1000;
|
||||
ImageCache().maximumSizeBytes = 128 << 20;
|
||||
}
|
||||
}
|
||||
@@ -10,7 +10,6 @@ export 'ui/card.dart';
|
||||
export 'ui/colors.dart';
|
||||
export 'ui/containers.dart';
|
||||
export 'ui/controllers.dart';
|
||||
export 'ui/decoration.dart';
|
||||
export 'ui/dialog.dart';
|
||||
export 'ui/divider.dart';
|
||||
export 'ui/drawer.dart';
|
||||
@@ -68,7 +67,7 @@ class LunaUI {
|
||||
|
||||
// <--> Other
|
||||
static const int ANIMATION_SPEED = 250;
|
||||
static const int ANIMATION_SPEED_IMAGES = 175;
|
||||
static const int ANIMATION_SPEED_IMAGES = 150;
|
||||
static const double BORDER_RADIUS = 10.0;
|
||||
static const double OPACITY_DIMMED = 0.75;
|
||||
static const double OPACITY_DISABLED = 0.50;
|
||||
|
||||
@@ -141,9 +141,11 @@ class LunaBlock extends StatelessWidget {
|
||||
milliseconds: LunaUI.ANIMATION_SPEED_IMAGES,
|
||||
),
|
||||
fit: BoxFit.cover,
|
||||
image: NetworkImage(
|
||||
image: CachedNetworkImageProvider(
|
||||
backgroundUrl,
|
||||
headers: backgroundHeaders?.cast<String, String>(),
|
||||
cacheManager: LunaImageCache.instance,
|
||||
errorListener: () {},
|
||||
),
|
||||
imageErrorBuilder: (context, error, stack) => SizedBox(
|
||||
height: _height,
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
export 'decoration/card_decoration.dart';
|
||||
@@ -1,28 +0,0 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:lunasea/core.dart';
|
||||
|
||||
// ignore: non_constant_identifier_names
|
||||
Decoration LunaCardDecoration({@required String uri, @required Map headers}) {
|
||||
if (LunaDatabaseValue.THEME_IMAGE_BACKGROUND_OPACITY.data == 0) return null;
|
||||
if (uri == null || uri.isEmpty) {
|
||||
return BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(LunaUI.BORDER_RADIUS),
|
||||
);
|
||||
}
|
||||
|
||||
double _opacity =
|
||||
(LunaDatabaseValue.THEME_IMAGE_BACKGROUND_OPACITY.data as int) / 100;
|
||||
return BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image: NetworkImage(
|
||||
uri,
|
||||
headers: Map<String, String>.from(headers),
|
||||
),
|
||||
// To prevent excessive logs, just handle an error loading the image with an empty callback
|
||||
onError: (error, stack) {},
|
||||
opacity: _opacity,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
borderRadius: BorderRadius.circular(LunaUI.BORDER_RADIUS),
|
||||
);
|
||||
}
|
||||
@@ -48,9 +48,11 @@ class LunaNetworkImage extends ClipRRect {
|
||||
fadeOutDuration: const Duration(milliseconds: 1),
|
||||
placeholder: MemoryImage(kTransparentImage),
|
||||
fit: BoxFit.cover,
|
||||
image: NetworkImage(
|
||||
image: CachedNetworkImageProvider(
|
||||
url,
|
||||
headers: headers?.cast<String, String>(),
|
||||
cacheManager: LunaImageCache.instance,
|
||||
errorListener: () {},
|
||||
),
|
||||
imageErrorBuilder: (context, error, stack) => SizedBox(
|
||||
height: height,
|
||||
|
||||
@@ -5,7 +5,6 @@ abstract class CalendarData {
|
||||
String title;
|
||||
List<TextSpan> get body;
|
||||
|
||||
String get bannerURI;
|
||||
String backgroundUrl(BuildContext context);
|
||||
String posterUrl(BuildContext context);
|
||||
|
||||
|
||||
@@ -19,15 +19,6 @@ class CalendarLidarrData extends CalendarData {
|
||||
@required this.totalTrackCount,
|
||||
}) : super(id, title);
|
||||
|
||||
@override
|
||||
String get bannerURI {
|
||||
return api['enabled']
|
||||
? (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist/$artistId/banner.jpg?apikey=${api['key']}'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist/$artistId/banner.jpg?apikey=${api['key']}'
|
||||
: '';
|
||||
}
|
||||
|
||||
@override
|
||||
List<TextSpan> get body {
|
||||
return [
|
||||
@@ -109,8 +100,8 @@ class CalendarLidarrData extends CalendarData {
|
||||
String posterUrl(BuildContext context) {
|
||||
return api['enabled']
|
||||
? (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist/$artistId/poster-500.jpg?apikey=${api['key']}'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist/$artistId/poster-500.jpg?apikey=${api['key']}'
|
||||
? '${api['host']}api/v1/MediaCover/Artist/$artistId/poster-250.jpg?apikey=${api['key']}'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist/$artistId/poster-250.jpg?apikey=${api['key']}'
|
||||
: '';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,17 +51,6 @@ class CalendarRadarrData extends CalendarData {
|
||||
];
|
||||
}
|
||||
|
||||
@override
|
||||
String get bannerURI {
|
||||
if (api['enabled']) {
|
||||
if ((api['host'] as String).endsWith('/')) {
|
||||
return '${api['host']}api/v3/MediaCover/$id/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '${api['host']}/api/v3/MediaCover/$id/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> enterContent(BuildContext context) async =>
|
||||
RadarrMoviesDetailsRouter().navigateTo(context, movieId: id);
|
||||
|
||||
@@ -66,15 +66,6 @@ class CalendarSonarrData extends CalendarData {
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
String get bannerURI {
|
||||
return api['enabled']
|
||||
? (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/mediacover/$seriesID/banner-70.jpg?apikey=${api['key']}'
|
||||
: '${api['host']}/api/mediacover/$seriesID/banner-70.jpg?apikey=${api['key']}'
|
||||
: '';
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> enterContent(BuildContext context) async =>
|
||||
SonarrSeriesDetailsRouter().navigateTo(
|
||||
|
||||
@@ -37,14 +37,12 @@ class LidarrAlbumData {
|
||||
return trackCount != 1 ? '$trackCount Tracks' : '$trackCount Track';
|
||||
}
|
||||
|
||||
String albumCoverURI({bool highRes = false}) {
|
||||
String albumCoverURI() {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Album'
|
||||
: '${api['host']}/api/v1/MediaCover/Album';
|
||||
return highRes
|
||||
? '$_base/$albumID/cover.jpg?apikey=${api['key']}'
|
||||
: '$_base/$albumID/cover-500.jpg?apikey=${api['key']}';
|
||||
return '$_base/$albumID/cover-250.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
@@ -124,38 +124,22 @@ class LidarrCatalogueData {
|
||||
return '';
|
||||
}
|
||||
|
||||
String posterURI({bool highRes = false}) {
|
||||
String posterURI() {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
return highRes
|
||||
? '$_base/$artistID/poster.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/poster-500.jpg?apikey=${api['key']}';
|
||||
return '$_base/$artistID/poster-250.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
String fanartURI({bool highRes = false}) {
|
||||
String fanartURI() {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
return highRes
|
||||
? '$_base/$artistID/fanart.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
String bannerURI({bool highRes = false}) {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
return highRes
|
||||
? '$_base/$artistID/banner.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/banner-70.jpg?apikey=${api['key']}';
|
||||
return '$_base/$artistID/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
@@ -43,26 +43,22 @@ class LidarrMissingData {
|
||||
return 'Unknown Date/Time';
|
||||
}
|
||||
|
||||
String albumCoverURI({bool highRes = false}) {
|
||||
String albumCoverURI() {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Album'
|
||||
: '${api['host']}/api/v1/MediaCover/Album';
|
||||
return highRes
|
||||
? '$_base/$albumID/cover.jpg?apikey=${api['key']}'
|
||||
: '$_base/$albumID/cover-500.jpg?apikey=${api['key']}';
|
||||
return '$_base/$albumID/cover-250.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
String posterURI({bool highRes = false}) {
|
||||
String posterURI() {
|
||||
if (api['enabled']) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
return highRes
|
||||
? '$_base/$artistID/poster.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/poster-500.jpg?apikey=${api['key']}';
|
||||
return '$_base/$artistID/poster-250.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
@@ -72,21 +68,7 @@ class LidarrMissingData {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
return highRes
|
||||
? '$_base/$artistID/fanart.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
String bannerURI({bool highRes = false}) {
|
||||
String _base = (api['host'] as String).endsWith('/')
|
||||
? '${api['host']}api/v1/MediaCover/Artist'
|
||||
: '${api['host']}/api/v1/MediaCover/Artist';
|
||||
if (api['enabled']) {
|
||||
return highRes
|
||||
? '$_base/$artistID/banner.jpg?apikey=${api['key']}'
|
||||
: '$_base/$artistID/banner-70.jpg?apikey=${api['key']}';
|
||||
return '$_base/$artistID/fanart-360.jpg?apikey=${api['key']}';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ class _State extends State<LidarrCatalogueTile> {
|
||||
posterPlaceholderIcon: LunaIcons.USER,
|
||||
posterUrl: widget.data.posterURI(),
|
||||
posterHeaders: Database.currentProfileObject.getLidarr()['headers'],
|
||||
backgroundUrl: widget.data.bannerURI(),
|
||||
backgroundUrl: widget.data.fanartURI(),
|
||||
backgroundHeaders: Database.currentProfileObject.getLidarr()['headers'],
|
||||
posterIsSquare: true,
|
||||
onTap: () async => _enterArtist(),
|
||||
|
||||
@@ -52,7 +52,7 @@ class _State extends State<LidarrMissingTile> {
|
||||
posterHeaders: Database.currentProfileObject.getLidarr()['headers'],
|
||||
posterIsSquare: true,
|
||||
posterPlaceholderIcon: LunaIcons.MUSIC,
|
||||
backgroundUrl: widget.entry.bannerURI(),
|
||||
backgroundUrl: widget.entry.fanartURI(),
|
||||
backgroundHeaders: Database.currentProfileObject.getLidarr()['headers'],
|
||||
);
|
||||
}
|
||||
|
||||
@@ -214,7 +214,8 @@ class RadarrState extends LunaModuleState {
|
||||
a.lunaEarlierReleaseDate != null) return -1;
|
||||
if (a.lunaEarlierReleaseDate == null &&
|
||||
b.lunaEarlierReleaseDate == null) _comparison = 0;
|
||||
_comparison ??= b.lunaEarlierReleaseDate.compareTo(a.lunaEarlierReleaseDate);
|
||||
_comparison ??=
|
||||
b.lunaEarlierReleaseDate.compareTo(a.lunaEarlierReleaseDate);
|
||||
if (_comparison == 0)
|
||||
return a.sortTitle
|
||||
.toLowerCase()
|
||||
@@ -324,26 +325,12 @@ class RadarrState extends LunaModuleState {
|
||||
/// IMAGES ///
|
||||
//////////////
|
||||
|
||||
String getPosterURL(int movieId, {bool highRes = false}) {
|
||||
String getPosterURL(int movieId) {
|
||||
if (_enabled) {
|
||||
String _base = _host.endsWith('/')
|
||||
? '${_host}api/v3/MediaCover'
|
||||
: '$_host/api/v3/MediaCover';
|
||||
return highRes
|
||||
? '$_base/$movieId/poster.jpg?apikey=$_apiKey'
|
||||
: '$_base/$movieId/poster-500.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String getBannerURL(int movieId, {bool highRes = false}) {
|
||||
if (_enabled) {
|
||||
String _base = _host.endsWith('/')
|
||||
? '${_host}api/v3/MediaCover'
|
||||
: '$_host/api/v3/MediaCover';
|
||||
return highRes
|
||||
? '$_base/$movieId/banner.jpg?apikey=$_apiKey'
|
||||
: '$_base/$movieId/banner-70.jpg?apikey=$_apiKey';
|
||||
return '$_base/$movieId/poster-250.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -353,9 +340,7 @@ class RadarrState extends LunaModuleState {
|
||||
String _base = _host.endsWith('/')
|
||||
? '${_host}api/v3/MediaCover'
|
||||
: '$_host/api/v3/MediaCover';
|
||||
return highRes
|
||||
? '$_base/$movieId/fanart.jpg?apikey=$_apiKey'
|
||||
: '$_base/$movieId/fanart-360.jpg?apikey=$_apiKey';
|
||||
return '$_base/$movieId/fanart-360.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -1004,6 +1004,34 @@ class SettingsDialogs {
|
||||
return _flag;
|
||||
}
|
||||
|
||||
Future<bool> clearImageCache(BuildContext context) async {
|
||||
bool _flag = false;
|
||||
|
||||
void _setValues(bool flag) {
|
||||
_flag = flag;
|
||||
Navigator.of(context).pop();
|
||||
}
|
||||
|
||||
await LunaDialog.dialog(
|
||||
context: context,
|
||||
title: 'settings.ClearImageCache'.tr(),
|
||||
buttons: [
|
||||
LunaDialog.button(
|
||||
text: 'lunasea.Clear'.tr(),
|
||||
textColor: LunaColours.red,
|
||||
onPressed: () => _setValues(true),
|
||||
),
|
||||
],
|
||||
content: [
|
||||
LunaDialog.textContent(text: 'settings.ClearImageCacheHint1'.tr()),
|
||||
LunaDialog.textContent(text: ''),
|
||||
LunaDialog.textContent(text: 'settings.ClearImageCacheHint2'.tr()),
|
||||
],
|
||||
contentPadding: LunaDialog.textDialogContentPadding(),
|
||||
);
|
||||
return _flag;
|
||||
}
|
||||
|
||||
Future<bool> clearConfiguration(BuildContext context) async {
|
||||
bool _flag = false;
|
||||
|
||||
|
||||
@@ -50,6 +50,7 @@ class _State extends State<_Widget> with LunaScrollControllerMixin {
|
||||
const SettingsSystemBackupRestoreRestoreTile(),
|
||||
const LunaDivider(),
|
||||
if (kDebugMode) _hideTooltipBanners(),
|
||||
_clearImageCache(),
|
||||
_clearConfiguration(),
|
||||
],
|
||||
);
|
||||
@@ -101,6 +102,24 @@ class _State extends State<_Widget> with LunaScrollControllerMixin {
|
||||
);
|
||||
}
|
||||
|
||||
Widget _clearImageCache() {
|
||||
return LunaBlock(
|
||||
title: 'Clear Image Cache',
|
||||
body: const [TextSpan(text: 'Clear cached images from the disk')],
|
||||
trailing: const LunaIconButton(icon: Icons.image_not_supported_rounded),
|
||||
onTap: () async {
|
||||
bool result = await SettingsDialogs().clearImageCache(context);
|
||||
if (result) {
|
||||
LunaImageCache().clear();
|
||||
showLunaSuccessSnackBar(
|
||||
title: 'Image Cache Cleared',
|
||||
message: 'Your image cache has been cleared',
|
||||
);
|
||||
}
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
Widget _clearConfiguration() {
|
||||
return LunaBlock(
|
||||
title: 'Clear Configuration',
|
||||
|
||||
@@ -271,29 +271,16 @@ class SonarrState extends LunaModuleState {
|
||||
: '$_host/api/v3/MediaCover';
|
||||
}
|
||||
|
||||
String getBannerURL(int seriesId, {bool highRes = false}) {
|
||||
String getPosterURL(int seriesId) {
|
||||
if (_enabled) {
|
||||
return highRes
|
||||
? '${_baseImageURL()}/$seriesId/banner.jpg?apikey=$_apiKey'
|
||||
: '${_baseImageURL()}/$seriesId/banner-70.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String getPosterURL(int seriesId, {bool highRes = false}) {
|
||||
if (_enabled) {
|
||||
return highRes
|
||||
? '${_baseImageURL()}/$seriesId/poster.jpg?apikey=$_apiKey'
|
||||
: '${_baseImageURL()}/$seriesId/poster-500.jpg?apikey=$_apiKey';
|
||||
return '${_baseImageURL()}/$seriesId/poster-250.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String getFanartURL(int seriesId, {bool highRes = false}) {
|
||||
if (_enabled) {
|
||||
return highRes
|
||||
? '${_baseImageURL()}/$seriesId/fanart.jpg?apikey=$_apiKey'
|
||||
: '${_baseImageURL()}/$seriesId/fanart-360.jpg?apikey=$_apiKey';
|
||||
return '${_baseImageURL()}/$seriesId/fanart-360.jpg?apikey=$_apiKey';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -49,6 +49,9 @@
|
||||
"settings.ClearConfigurationHint1": "Are you sure you want to clear your configuration?",
|
||||
"settings.ClearConfigurationHint2": "You will be starting from a clean slate, please ensure you backup your current configuration first!",
|
||||
"settings.ClearConfigurationHint3": "If you are signed into a LunaSea account, you will be signed out.",
|
||||
"settings.ClearImageCache": "Clear Image Cache",
|
||||
"settings.ClearImageCacheHint1": "Are you sure you want to clear all images from the cache?",
|
||||
"settings.ClearImageCacheHint2": "Redownloading images for a large library can consume a large amount of data.",
|
||||
"settings.ClearLogs": "Clear Logs",
|
||||
"settings.ClearLogsHint1": "Are you sure you want to clear all recorded logs?\n\nLogs can be useful for bug reports and debugging.",
|
||||
"settings.ConfigureModule": "Configure {}",
|
||||
|
||||
@@ -16,6 +16,7 @@ import package_info_plus_macos
|
||||
import path_provider_macos
|
||||
import share_plus_macos
|
||||
import shared_preferences_macos
|
||||
import sqflite
|
||||
import url_launcher_macos
|
||||
|
||||
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
||||
@@ -30,5 +31,6 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
||||
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
||||
SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin"))
|
||||
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
|
||||
SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin"))
|
||||
UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
|
||||
}
|
||||
|
||||
@@ -80,6 +80,9 @@ PODS:
|
||||
- FirebaseCore (~> 8.0)
|
||||
- GTMSessionFetcher/Core (~> 1.5)
|
||||
- FlutterMacOS (1.0.0)
|
||||
- FMDB (2.7.5):
|
||||
- FMDB/standard (= 2.7.5)
|
||||
- FMDB/standard (2.7.5)
|
||||
- GoogleDataTransport (9.1.2):
|
||||
- GoogleUtilities/Environment (~> 7.2)
|
||||
- nanopb (~> 2.30908.0)
|
||||
@@ -116,6 +119,9 @@ PODS:
|
||||
- FlutterMacOS
|
||||
- shared_preferences_macos (0.0.1):
|
||||
- FlutterMacOS
|
||||
- sqflite (0.0.2):
|
||||
- FlutterMacOS
|
||||
- FMDB (>= 2.7.5)
|
||||
- url_launcher_macos (0.0.1):
|
||||
- FlutterMacOS
|
||||
|
||||
@@ -133,6 +139,7 @@ DEPENDENCIES:
|
||||
- path_provider_macos (from `Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos`)
|
||||
- share_plus_macos (from `Flutter/ephemeral/.symlinks/plugins/share_plus_macos/macos`)
|
||||
- shared_preferences_macos (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_macos/macos`)
|
||||
- sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/macos`)
|
||||
- url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`)
|
||||
|
||||
SPEC REPOS:
|
||||
@@ -144,6 +151,7 @@ SPEC REPOS:
|
||||
- FirebaseInstallations
|
||||
- FirebaseMessaging
|
||||
- FirebaseStorage
|
||||
- FMDB
|
||||
- GoogleDataTransport
|
||||
- GoogleUtilities
|
||||
- GTMSessionFetcher
|
||||
@@ -178,6 +186,8 @@ EXTERNAL SOURCES:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/share_plus_macos/macos
|
||||
shared_preferences_macos:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_macos/macos
|
||||
sqflite:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/sqflite/macos
|
||||
url_launcher_macos:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos
|
||||
|
||||
@@ -203,6 +213,7 @@ SPEC CHECKSUMS:
|
||||
FirebaseMessaging: 82c4a48638f53f7b184f3cc9f6cd2cbe533ab316
|
||||
FirebaseStorage: 452c98c31ccb40b819764bf3039426c4388d9939
|
||||
FlutterMacOS: 57701585bf7de1b3fc2bb61f6378d73bbdea8424
|
||||
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
|
||||
GoogleDataTransport: 629c20a4d363167143f30ea78320d5a7eb8bd940
|
||||
GoogleUtilities: 684ee790a24f73ebb2d1d966e9711c203f2a4237
|
||||
GTMSessionFetcher: 43748f93435c2aa068b1cbe39655aaf600652e91
|
||||
@@ -212,6 +223,7 @@ SPEC CHECKSUMS:
|
||||
PromisesObjC: 68159ce6952d93e17b2dfe273b8c40907db5ba58
|
||||
share_plus_macos: 853ee48e7dce06b633998ca0735d482dd671ade4
|
||||
shared_preferences_macos: 480ce071d0666e37cef23fe6c702293a3d21799e
|
||||
sqflite: a5789cceda41d54d23f31d6de539d65bb14100ea
|
||||
url_launcher_macos: 45af3d61de06997666568a7149c1be98b41c95d4
|
||||
|
||||
PODFILE CHECKSUM: b26bb765a568f6d4f2c0d9767ef2eee43a3f07ed
|
||||
|
||||
@@ -21,13 +21,13 @@
|
||||
/* End PBXAggregateTarget section */
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
094E875D803D9BCED22EEB02 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3098CCE1245488FDC4653AD7 /* Pods_Runner.framework */; };
|
||||
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 */; };
|
||||
9CB665D62619F8E400932F8C /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 9CB665D52619F8E400932F8C /* GoogleService-Info.plist */; };
|
||||
CA61A3521F573D6644DB14A9 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 618FDC36C766439F24D06F8C /* Pods_Runner.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -54,7 +54,8 @@
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
2D911EEB517390915940B299 /* 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 = "<group>"; };
|
||||
170A2DA65219F3FE7CE779C3 /* 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 = "<group>"; };
|
||||
3098CCE1245488FDC4653AD7 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; };
|
||||
335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; };
|
||||
33CC10ED2044A3C60003C045 /* LunaSea.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LunaSea.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
@@ -69,12 +70,11 @@
|
||||
33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; };
|
||||
33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; };
|
||||
33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; };
|
||||
4743A8E42A87B4AD69F5E777 /* 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 = "<group>"; };
|
||||
618FDC36C766439F24D06F8C /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9CB665D52619F8E400932F8C /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||
C23D530B760B9F49181D59A9 /* 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 = "<group>"; };
|
||||
D672DF2EB9996C884441FB62 /* 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 = "<group>"; };
|
||||
E7D67584EEB54736FC5FAAF7 /* 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 = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -82,21 +82,13 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
CA61A3521F573D6644DB14A9 /* Pods_Runner.framework in Frameworks */,
|
||||
094E875D803D9BCED22EEB02 /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
0D33575850A81F169F37BFE6 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
618FDC36C766439F24D06F8C /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
33BA886A226E78AF003329D5 /* Configs */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -116,7 +108,7 @@
|
||||
33CEB47122A05771004F2AC0 /* Flutter */,
|
||||
33CC10EE2044A3C60003C045 /* Products */,
|
||||
C16DBC6D5885D252E3ED5BAD /* Pods */,
|
||||
0D33575850A81F169F37BFE6 /* Frameworks */,
|
||||
7496191F59AEBF18FC3B1018 /* Frameworks */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
@@ -163,12 +155,20 @@
|
||||
path = Runner;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
7496191F59AEBF18FC3B1018 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
3098CCE1245488FDC4653AD7 /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C16DBC6D5885D252E3ED5BAD /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4743A8E42A87B4AD69F5E777 /* Pods-Runner.debug.xcconfig */,
|
||||
2D911EEB517390915940B299 /* Pods-Runner.release.xcconfig */,
|
||||
C23D530B760B9F49181D59A9 /* Pods-Runner.profile.xcconfig */,
|
||||
170A2DA65219F3FE7CE779C3 /* Pods-Runner.debug.xcconfig */,
|
||||
D672DF2EB9996C884441FB62 /* Pods-Runner.release.xcconfig */,
|
||||
E7D67584EEB54736FC5FAAF7 /* Pods-Runner.profile.xcconfig */,
|
||||
);
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
@@ -180,14 +180,14 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
3CBBBFA7C9E7216004B3FD0A /* [CP] Check Pods Manifest.lock */,
|
||||
B3EB9FE19A9E29E637DB9738 /* [CP] Check Pods Manifest.lock */,
|
||||
33CC10E92044A3C60003C045 /* Sources */,
|
||||
33CC10EA2044A3C60003C045 /* Frameworks */,
|
||||
33CC10EB2044A3C60003C045 /* Resources */,
|
||||
33CC110E2044A8840003C045 /* Bundle Framework */,
|
||||
3399D490228B24CF009A79C7 /* ShellScript */,
|
||||
F996385B971FCEF98CA6257D /* [CP] Embed Pods Frameworks */,
|
||||
7DE54AC427A284D3594DB252 /* [CP] Copy Pods Resources */,
|
||||
1389318A3991C3052619453E /* [CP] Embed Pods Frameworks */,
|
||||
7BEF3CE57F50FA6DEE0C10FA /* [CP] Copy Pods Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -258,6 +258,23 @@
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
1389318A3991C3052619453E /* [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;
|
||||
};
|
||||
3399D490228B24CF009A79C7 /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -295,7 +312,24 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire";
|
||||
};
|
||||
3CBBBFA7C9E7216004B3FD0A /* [CP] Check Pods Manifest.lock */ = {
|
||||
7BEF3CE57F50FA6DEE0C10FA /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
B3EB9FE19A9E29E637DB9738 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
@@ -317,40 +351,6 @@
|
||||
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;
|
||||
};
|
||||
7DE54AC427A284D3594DB252 /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
F996385B971FCEF98CA6257D /* [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 */
|
||||
|
||||
79
pubspec.lock
79
pubspec.lock
@@ -148,6 +148,27 @@ packages:
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "8.1.3"
|
||||
cached_network_image:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: cached_network_image
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "3.2.0"
|
||||
cached_network_image_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: cached_network_image_platform_interface
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.0.0"
|
||||
cached_network_image_web:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: cached_network_image_web
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.0.1"
|
||||
characters:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -454,6 +475,20 @@ packages:
|
||||
description: flutter
|
||||
source: sdk
|
||||
version: "0.0.0"
|
||||
flutter_blurhash:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: flutter_blurhash
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "0.6.0"
|
||||
flutter_cache_manager:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_cache_manager
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "3.3.0"
|
||||
flutter_launcher_icons:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
@@ -709,6 +744,13 @@ packages:
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.0.1"
|
||||
octo_image:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: octo_image
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.0.1"
|
||||
overseerr:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -821,6 +863,13 @@ packages:
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.0.4"
|
||||
pedantic:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: pedantic
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.11.1"
|
||||
percent_indicator:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -919,6 +968,13 @@ packages:
|
||||
relative: true
|
||||
source: path
|
||||
version: "2.1.1+1"
|
||||
rxdart:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: rxdart
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "0.27.3"
|
||||
share_plus:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -1106,6 +1162,20 @@ packages:
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.8.1"
|
||||
sqflite:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: sqflite
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.0.1"
|
||||
sqflite_common:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: sqflite_common
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.1.0"
|
||||
stack_trace:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -1162,6 +1232,13 @@ packages:
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.1.1"
|
||||
synchronized:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: synchronized
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "3.0.0"
|
||||
table_calendar:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -1373,5 +1450,5 @@ packages:
|
||||
source: hosted
|
||||
version: "3.1.0"
|
||||
sdks:
|
||||
dart: ">=2.14.0 <3.0.0"
|
||||
dart: ">=2.15.0 <3.0.0"
|
||||
flutter: ">=2.5.0"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
name: lunasea
|
||||
description: Self-Hosted Controller
|
||||
version: 6.0.0+60000003
|
||||
version: 6.0.0+60000004
|
||||
publish_to: 'none'
|
||||
environment:
|
||||
sdk: ">=2.7.0 <3.0.0"
|
||||
@@ -9,6 +9,8 @@ dependencies:
|
||||
flutter:
|
||||
sdk: flutter
|
||||
badges: ^2.0.2
|
||||
bitsdojo_window: ^0.1.1+1
|
||||
cached_network_image: ^3.2.0
|
||||
cloud_firestore: ^3.1.5
|
||||
convert: ^3.0.1
|
||||
dio: ^4.0.4
|
||||
@@ -26,6 +28,7 @@ dependencies:
|
||||
fl_chart: ^0.40.6
|
||||
flash: ^2.0.3+1
|
||||
fluro: ^2.0.3
|
||||
flutter_cache_manager: ^3.3.0
|
||||
flutter_spinkit: ^5.1.0
|
||||
google_nav_bar: ^5.0.5
|
||||
hive: ^2.0.5
|
||||
@@ -59,7 +62,6 @@ dependencies:
|
||||
wake_on_lan:
|
||||
path: packages/wake_on_lan
|
||||
xml: ^5.3.1
|
||||
bitsdojo_window: ^0.1.1+1
|
||||
|
||||
dev_dependencies:
|
||||
build_runner: ^2.1.7
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Remove old builds
|
||||
rm -rf output/*.aab
|
||||
# Clean and build
|
||||
flutter clean
|
||||
flutter build appbundle
|
||||
# Copy APKs to root of project
|
||||
mkdir -p output
|
||||
cp build/app/outputs/bundle/release/app-release.aab output/LunaSea-release.aab
|
||||
# Remove build files
|
||||
rm -rf build
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Remove old builds
|
||||
rm -rf output/*.apk
|
||||
# Clean and build
|
||||
flutter clean
|
||||
flutter build apk --split-per-abi
|
||||
# Copy APKs to root of project
|
||||
mkdir -p output
|
||||
cp build/app/outputs/apk/release/app-armeabi-v7a-release.apk output/LunaSea-armeabi-v7a-release.apk
|
||||
cp build/app/outputs/apk/release/app-arm64-v8a-release.apk output/LunaSea-arm64-v8a-release.apk
|
||||
cp build/app/outputs/apk/release/app-x86_64-release.apk output/LunaSea-x86_64-release.apk
|
||||
# Remove build files
|
||||
rm -rf build
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Remove old builds
|
||||
rm -rf build
|
||||
rm -rf output/*.ipa
|
||||
# Clean and build
|
||||
flutter clean
|
||||
flutter build ipa --export-options-plist=ios/ExportOptions.plist
|
||||
# Copy IPA to root of project
|
||||
mkdir -p output
|
||||
cp build/ios/ipa/LunaSea.ipa output/LunaSea-arm64-release.ipa
|
||||
# Remove build files
|
||||
rm -rf build
|
||||
rm -rf ios/build
|
||||
59
shaders/android_sksl.json
Normal file
59
shaders/android_sksl.json
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user