Compare commits
14 commits
main
...
isovel/my-
Author | SHA1 | Date | |
---|---|---|---|
|
e0dabd8557 | ||
|
3948757556 | ||
|
a2c58359b4 | ||
|
68c6bc04a6 | ||
|
6413c2930f | ||
|
007ec60235 | ||
|
721ba5a268 | ||
|
392bae826a | ||
|
ae38c80f1e | ||
|
67bf832470 | ||
|
7ecc3140c6 | ||
|
77d1ddf458 | ||
|
bcff2214aa | ||
|
85a3d65d23 |
3
.gitignore
vendored
|
@ -24,6 +24,7 @@ migrate_working_dir/
|
||||||
# Flutter/Dart/Pub related
|
# Flutter/Dart/Pub related
|
||||||
**/doc/api/
|
**/doc/api/
|
||||||
**/ios/Flutter/.last_build_id
|
**/ios/Flutter/.last_build_id
|
||||||
|
**/ios/build/
|
||||||
.dart_tool/
|
.dart_tool/
|
||||||
.flutter-plugins
|
.flutter-plugins
|
||||||
.flutter-plugins-dependencies
|
.flutter-plugins-dependencies
|
||||||
|
@ -43,5 +44,3 @@ app.*.map.json
|
||||||
/android/app/profile
|
/android/app/profile
|
||||||
/android/app/release
|
/android/app/release
|
||||||
/android/key.properties
|
/android/key.properties
|
||||||
|
|
||||||
# NEVER STORE ANY KEY OR API KEYS WHEN COMMITING CODE!!
|
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
when:
|
|
||||||
- event: push
|
|
||||||
branch: dev
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build
|
|
||||||
image: instrumentisto/flutter
|
|
||||||
commands:
|
|
||||||
- cd OpenContacts
|
|
||||||
- echo "Starting to build..."
|
|
||||||
- flutter build --debug
|
|
||||||
- name: Deploy
|
|
||||||
image: debian
|
|
||||||
commands:
|
|
||||||
- echo "Hello World"
|
|
18
README.md
|
@ -1,15 +1,10 @@
|
||||||
<img src="https://raw.githubusercontent.com/Mrdabup/OpenContacts/refs/heads/dev/assets/images/logo512.png" width="200"/>
|
<img src="https://github.com/Nutcake/ReCon/raw/main/assets/images/logo512.png" width="200"/>
|
||||||
|
|
||||||
# OpenContacts
|
# ReCon
|
||||||
|
|
||||||
A Resonite Contacts App, based on Nutcake's Recon.
|
A Resonite Contacts App
|
||||||
|
|
||||||
[Get the latest version of OpenContacts here](https://git.mrdab.vore.media/ThatOneJackalGuy/OpenContacts/releases)
|
|
||||||
|
|
||||||
[Available on github too!](https://github.com/Mrdabup/OpenContacts/releases)
|
|
||||||
|
|
||||||
[Get ReCon here](https://github.com/Nutcake/ReCon)
|
|
||||||
|
|
||||||
|
[Get it here](https://github.com/Nutcake/ReCon/releases/latest)
|
||||||
|
|
||||||
## Building
|
## Building
|
||||||
|
|
||||||
|
@ -20,7 +15,6 @@ Currently only Android is fully supported.
|
||||||
The app works on other platforms, though not every feature will be functional.
|
The app works on other platforms, though not every feature will be functional.
|
||||||
For example, notifications are currently not supported on non-android builds.
|
For example, notifications are currently not supported on non-android builds.
|
||||||
|
|
||||||
### Screenshots
|
## Screenshots
|
||||||
TODO: Screenshots!
|
|
||||||
|
|
||||||
<!--<img src="https://github.com/Nutcake/ReCon/assets/10452593/a46ccf8a-0a9f-4518-98e6-84fad2d7bf26" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/5d158f58-cd27-4a68-abf3-9068e92b6a82" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/f2ce95ef-e513-46cb-9654-31e74cdc7c09" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/58ef5e5e-1b53-4a47-92f8-bcbcba7a1e86" width=198/>-->
|
<img src="https://github.com/Nutcake/ReCon/assets/10452593/a46ccf8a-0a9f-4518-98e6-84fad2d7bf26" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/5d158f58-cd27-4a68-abf3-9068e92b6a82" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/f2ce95ef-e513-46cb-9654-31e74cdc7c09" width=198/> <img src="https://github.com/Nutcake/ReCon/assets/10452593/58ef5e5e-1b53-4a47-92f8-bcbcba7a1e86" width=198/>
|
||||||
|
|
|
@ -49,7 +49,7 @@ android {
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "de.tojcklguy.opencontacts"
|
applicationId "me.voidspace.recon"
|
||||||
minSdkVersion 24
|
minSdkVersion 24
|
||||||
targetSdkVersion flutter.targetSdkVersion
|
targetSdkVersion flutter.targetSdkVersion
|
||||||
versionCode flutterVersionCode.toInteger()
|
versionCode flutterVersionCode.toInteger()
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="de.tojcklguy.opencontacts">
|
package="de.voidspace.recon">
|
||||||
<!-- The INTERNET permission is required for development. Specifically,
|
<!-- The INTERNET permission is required for development. Specifically,
|
||||||
the Flutter tool needs it to communicate with the running application
|
the Flutter tool needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="de.tojcklguy.opencontacts">
|
package="de.voidspace.recon">
|
||||||
|
|
||||||
<!-- Required to fetch data from the internet. -->
|
<!-- Required to fetch data from the internet. -->
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
|
@ -7,9 +7,9 @@
|
||||||
<!-- Optional, you'll have to check this permission by yourself. -->
|
<!-- Optional, you'll have to check this permission by yourself. -->
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||||
<application
|
<application
|
||||||
android:label="OpenContacts"
|
android:label="ReCon"
|
||||||
android:name="${applicationName}"
|
android:name="${applicationName}"
|
||||||
android:icon="@mipmap/launcher_icon">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
package de.tojcklguy.opencontacts
|
package de.voidspace.recon
|
||||||
|
|
||||||
import io.flutter.embedding.android.FlutterActivity
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
class MainActivity: FlutterActivity() {
|
class MainActivity: FlutterActivity() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,4 +3,4 @@ package me.voidspace.recon
|
||||||
import io.flutter.embedding.android.FlutterActivity
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
class MainActivity: FlutterActivity() {
|
class MainActivity: FlutterActivity() {
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 8.9 KiB |
Before Width: | Height: | Size: 12 KiB |
|
@ -1,5 +1,5 @@
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="de.tojcklguy.opencontacts">
|
package="de.voidspace.recon">
|
||||||
<!-- The INTERNET permission is required for development. Specifically,
|
<!-- The INTERNET permission is required for development. Specifically,
|
||||||
the Flutter tool needs it to communicate with the running application
|
the Flutter tool needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
|
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 36 KiB |
|
@ -1,5 +1,5 @@
|
||||||
# Uncomment this line to define a global platform for your project
|
# Uncomment this line to define a global platform for your project
|
||||||
platform :ios, '13.0'
|
platform :ios, '14.0'
|
||||||
|
|
||||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||||
|
@ -41,7 +41,7 @@ post_install do |installer|
|
||||||
installer.pods_project.targets.each do |target|
|
installer.pods_project.targets.each do |target|
|
||||||
flutter_additional_ios_build_settings(target)
|
flutter_additional_ios_build_settings(target)
|
||||||
target.build_configurations.each do |config|
|
target.build_configurations.each do |config|
|
||||||
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '14.0'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -5,35 +5,35 @@ PODS:
|
||||||
- Flutter
|
- Flutter
|
||||||
- camera_avfoundation (0.0.1):
|
- camera_avfoundation (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- DKImagePickerController/Core (4.3.4):
|
- DKImagePickerController/Core (4.3.9):
|
||||||
- DKImagePickerController/ImageDataManager
|
- DKImagePickerController/ImageDataManager
|
||||||
- DKImagePickerController/Resource
|
- DKImagePickerController/Resource
|
||||||
- DKImagePickerController/ImageDataManager (4.3.4)
|
- DKImagePickerController/ImageDataManager (4.3.9)
|
||||||
- DKImagePickerController/PhotoGallery (4.3.4):
|
- DKImagePickerController/PhotoGallery (4.3.9):
|
||||||
- DKImagePickerController/Core
|
- DKImagePickerController/Core
|
||||||
- DKPhotoGallery
|
- DKPhotoGallery
|
||||||
- DKImagePickerController/Resource (4.3.4)
|
- DKImagePickerController/Resource (4.3.9)
|
||||||
- DKPhotoGallery (0.0.17):
|
- DKPhotoGallery (0.0.19):
|
||||||
- DKPhotoGallery/Core (= 0.0.17)
|
- DKPhotoGallery/Core (= 0.0.19)
|
||||||
- DKPhotoGallery/Model (= 0.0.17)
|
- DKPhotoGallery/Model (= 0.0.19)
|
||||||
- DKPhotoGallery/Preview (= 0.0.17)
|
- DKPhotoGallery/Preview (= 0.0.19)
|
||||||
- DKPhotoGallery/Resource (= 0.0.17)
|
- DKPhotoGallery/Resource (= 0.0.19)
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Core (0.0.17):
|
- DKPhotoGallery/Core (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Preview
|
- DKPhotoGallery/Preview
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Model (0.0.17):
|
- DKPhotoGallery/Model (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Preview (0.0.17):
|
- DKPhotoGallery/Preview (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Resource
|
- DKPhotoGallery/Resource
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Resource (0.0.17):
|
- DKPhotoGallery/Resource (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- ffmpeg-kit-ios-audio (6.0)
|
- ffmpeg-kit-ios-audio (6.0)
|
||||||
|
@ -51,9 +51,9 @@ PODS:
|
||||||
- Flutter
|
- Flutter
|
||||||
- flutter_secure_storage (6.0.0):
|
- flutter_secure_storage (6.0.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FMDB (2.7.9):
|
- FMDB (2.7.11):
|
||||||
- FMDB/standard (= 2.7.9)
|
- FMDB/standard (= 2.7.11)
|
||||||
- FMDB/standard (2.7.9)
|
- FMDB/standard (2.7.11)
|
||||||
- image_picker_ios (0.0.1):
|
- image_picker_ios (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- just_audio (0.0.1):
|
- just_audio (0.0.1):
|
||||||
|
@ -68,15 +68,15 @@ PODS:
|
||||||
- record_darwin (1.0.0):
|
- record_darwin (1.0.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- SDWebImage (5.19.0):
|
- SDWebImage (5.19.2):
|
||||||
- SDWebImage/Core (= 5.19.0)
|
- SDWebImage/Core (= 5.19.2)
|
||||||
- SDWebImage/Core (5.19.0)
|
- SDWebImage/Core (5.19.2)
|
||||||
- share_plus (0.0.1):
|
- share_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- sqflite (0.0.3):
|
- sqflite (0.0.3):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FMDB (>= 2.7.5)
|
- FMDB (>= 2.7.5)
|
||||||
- SwiftyGif (5.4.4)
|
- SwiftyGif (5.4.5)
|
||||||
- url_launcher_ios (0.0.1):
|
- url_launcher_ios (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- workmanager (0.0.1):
|
- workmanager (0.0.1):
|
||||||
|
@ -153,28 +153,28 @@ SPEC CHECKSUMS:
|
||||||
audio_session: 4f3e461722055d21515cf3261b64c973c062f345
|
audio_session: 4f3e461722055d21515cf3261b64c973c062f345
|
||||||
background_downloader: 6f55e5548875be2ad4bb91b542558b5be22f339a
|
background_downloader: 6f55e5548875be2ad4bb91b542558b5be22f339a
|
||||||
camera_avfoundation: 3125e8cd1a4387f6f31c6c63abb8a55892a9eeeb
|
camera_avfoundation: 3125e8cd1a4387f6f31c6c63abb8a55892a9eeeb
|
||||||
DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac
|
DKImagePickerController: 946cec48c7873164274ecc4624d19e3da4c1ef3c
|
||||||
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
|
DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60
|
||||||
ffmpeg-kit-ios-audio: 9fa9953fc197280a69e59c603c7fa7690df7190c
|
ffmpeg-kit-ios-audio: 9fa9953fc197280a69e59c603c7fa7690df7190c
|
||||||
ffmpeg_kit_flutter_audio: 9b107d9902e16804c90637cd7f42106a5447a9e6
|
ffmpeg_kit_flutter_audio: 9b107d9902e16804c90637cd7f42106a5447a9e6
|
||||||
file_picker: 15fd9539e4eb735dc54bae8c0534a7a9511a03de
|
file_picker: 15fd9539e4eb735dc54bae8c0534a7a9511a03de
|
||||||
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
|
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
|
||||||
flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743
|
flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743
|
||||||
flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be
|
flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be
|
||||||
FMDB: aa44149f6fb634b1ac54f64f47064bb0d0c5a032
|
FMDB: 57486c1117fd8e0e6b947b2f54c3f42bf8e57a4e
|
||||||
image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5
|
image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5
|
||||||
just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa
|
just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa
|
||||||
package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85
|
package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85
|
||||||
path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
|
path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
|
||||||
permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6
|
permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6
|
||||||
record_darwin: 1f6619f2abac4d1ca91d3eeab038c980d76f1517
|
record_darwin: 1f6619f2abac4d1ca91d3eeab038c980d76f1517
|
||||||
SDWebImage: 981fd7e860af070920f249fd092420006014c3eb
|
SDWebImage: dfe95b2466a9823cf9f0c6d01217c06550d7b29a
|
||||||
share_plus: c3fef564749587fc939ef86ffb283ceac0baf9f5
|
share_plus: c3fef564749587fc939ef86ffb283ceac0baf9f5
|
||||||
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
|
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
|
||||||
SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f
|
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
||||||
url_launcher_ios: 68d46cc9766d0c41dbdc884310529557e3cd7a86
|
url_launcher_ios: 68d46cc9766d0c41dbdc884310529557e3cd7a86
|
||||||
workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
|
workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
|
||||||
|
|
||||||
PODFILE CHECKSUM: 0a7d5b7d0e53420cb0284f7b2f171f93843b94d2
|
PODFILE CHECKSUM: de97cdd71230554f2f9175b64953d8f22054f2bf
|
||||||
|
|
||||||
COCOAPODS: 1.14.3
|
COCOAPODS: 1.15.2
|
||||||
|
|
|
@ -45,7 +45,7 @@
|
||||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.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>"; };
|
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||||
97C146EE1CF9000F007C117D /* recon.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = recon.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
97C146EE1CF9000F007C117D /* ReCon.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ReCon.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
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>"; };
|
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||||
|
@ -110,7 +110,7 @@
|
||||||
97C146EF1CF9000F007C117D /* Products */ = {
|
97C146EF1CF9000F007C117D /* Products */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
97C146EE1CF9000F007C117D /* recon.app */,
|
97C146EE1CF9000F007C117D /* ReCon.app */,
|
||||||
331C8081294A63A400263BE5 /* RunnerTests.xctest */,
|
331C8081294A63A400263BE5 /* RunnerTests.xctest */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
|
@ -195,7 +195,7 @@
|
||||||
);
|
);
|
||||||
name = Runner;
|
name = Runner;
|
||||||
productName = Runner;
|
productName = Runner;
|
||||||
productReference = 97C146EE1CF9000F007C117D /* recon.app */;
|
productReference = 97C146EE1CF9000F007C117D /* ReCon.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
|
@ -446,7 +446,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
||||||
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
||||||
|
@ -474,7 +474,7 @@
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
FLUTTER_BUILD_NAME = 0.11.2;
|
FLUTTER_BUILD_NAME = 0.11.2;
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
|
@ -484,7 +484,7 @@
|
||||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||||
MARKETING_VERSION = 0.11.2;
|
MARKETING_VERSION = 0.11.2;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
||||||
PRODUCT_NAME = recon;
|
PRODUCT_NAME = ReCon;
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
|
@ -592,7 +592,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
||||||
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
||||||
|
@ -652,7 +652,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
INFOPLIST_KEY_NSDownloadsFolderUsageDescription = "Downloading assets from your inventory";
|
||||||
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
INFOPLIST_KEY_NSMicrophoneUsageDescription = "Recording voice messages";
|
||||||
|
@ -682,7 +682,7 @@
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
FLUTTER_BUILD_NAME = 0.11.2;
|
FLUTTER_BUILD_NAME = 0.11.2;
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
|
@ -692,7 +692,7 @@
|
||||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||||
MARKETING_VERSION = 0.11.2;
|
MARKETING_VERSION = 0.11.2;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
||||||
PRODUCT_NAME = recon;
|
PRODUCT_NAME = ReCon;
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
|
@ -712,7 +712,7 @@
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
FLUTTER_BUILD_NAME = 0.11.2;
|
FLUTTER_BUILD_NAME = 0.11.2;
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = recon;
|
INFOPLIST_KEY_CFBundleDisplayName = ReCon;
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
|
@ -722,7 +722,7 @@
|
||||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||||
MARKETING_VERSION = 0.11.2;
|
MARKETING_VERSION = 0.11.2;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
PRODUCT_BUNDLE_IDENTIFIER = ch.isota.recon;
|
||||||
PRODUCT_NAME = recon;
|
PRODUCT_NAME = ReCon;
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
|
@ -765,4 +765,4 @@
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 97C146E61CF9000F007C117D /* Project object */;
|
rootObject = 97C146E61CF9000F007C117D /* Project object */;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||||
BuildableName = "recon.app"
|
BuildableName = "ReCon.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
|
@ -31,7 +31,7 @@
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||||
BuildableName = "recon.app"
|
BuildableName = "ReCon.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||||
BuildableName = "recon.app"
|
BuildableName = "ReCon.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
|
@ -82,7 +82,7 @@
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||||
BuildableName = "recon.app"
|
BuildableName = "ReCon.app"
|
||||||
BlueprintName = "Runner"
|
BlueprintName = "Runner"
|
||||||
ReferencedContainer = "container:Runner.xcodeproj">
|
ReferencedContainer = "container:Runner.xcodeproj">
|
||||||
</BuildableReference>
|
</BuildableReference>
|
||||||
|
@ -93,7 +93,7 @@
|
||||||
</AnalyzeAction>
|
</AnalyzeAction>
|
||||||
<ArchiveAction
|
<ArchiveAction
|
||||||
buildConfiguration = "Release"
|
buildConfiguration = "Release"
|
||||||
customArchiveName = "recon"
|
customArchiveName = "ReCon"
|
||||||
revealArchiveInOrganizer = "YES">
|
revealArchiveInOrganizer = "YES">
|
||||||
</ArchiveAction>
|
</ArchiveAction>
|
||||||
</Scheme>
|
</Scheme>
|
||||||
|
|
|
@ -1,134 +1,116 @@
|
||||||
{
|
{
|
||||||
"images" : [
|
"images" : [
|
||||||
{
|
{
|
||||||
"filename" : "icon_40x40@2x.png",
|
"size" : "20x20",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-20@2x.png",
|
||||||
"size" : "20x20"
|
"scale": "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size" : "20x20",
|
||||||
|
"idiom": "iphone",
|
||||||
|
"filename" : "Icon-App-iTunes-20@3x.png",
|
||||||
|
"scale": "3x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size" : "20x20",
|
||||||
|
"idiom": "ipad",
|
||||||
|
"filename" : "Icon-App-iTunes-20.png",
|
||||||
|
"scale": "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_60x60@3x.png",
|
"size" : "20x20",
|
||||||
"idiom" : "iphone",
|
"idiom": "ipad",
|
||||||
"scale" : "3x",
|
"filename" : "Icon-App-iTunes-20@2x.png",
|
||||||
"size" : "20x20"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_58x58@2x.png",
|
"size" : "29x29",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-29@2x.png",
|
||||||
"size" : "29x29"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_87x87@3x.png",
|
"size" : "29x29",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "3x",
|
"filename" : "Icon-App-iTunes-29@3x.png",
|
||||||
"size" : "29x29"
|
"scale" : "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_80x80@2x.png",
|
"size" : "40x40",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-40@2x.png",
|
||||||
"size" : "40x40"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_120x120@3x.png",
|
"size" : "40x40",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "3x",
|
"filename" : "Icon-App-iTunes-40@3x.png",
|
||||||
"size" : "40x40"
|
"scale" : "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_60x60@2x.png",
|
"size" : "60x60",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-60@2x.png",
|
||||||
"size" : "60x60"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_180x180@3x.png",
|
"size" : "60x60",
|
||||||
"idiom" : "iphone",
|
"idiom" : "iphone",
|
||||||
"scale" : "3x",
|
"filename" : "Icon-App-iTunes-60@3x.png",
|
||||||
"size" : "60x60"
|
"scale" : "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_40x40@2x 1.png",
|
"size" : "29x29",
|
||||||
"idiom" : "ipad",
|
"idiom" : "ipad",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-29.png",
|
||||||
"size" : "20x20"
|
"scale" : "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_58x58@2x 1.png",
|
"size" : "29x29",
|
||||||
"idiom" : "ipad",
|
"idiom" : "ipad",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-29@2x.png",
|
||||||
"size" : "29x29"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_80x80@2x 1.png",
|
"size" : "40x40",
|
||||||
"idiom" : "ipad",
|
"idiom" : "ipad",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-40.png",
|
||||||
"size" : "40x40"
|
"scale" : "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_76x76@2x.png",
|
"size" : "40x40",
|
||||||
"idiom" : "ipad",
|
"idiom" : "ipad",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-40@2x.png",
|
||||||
"size" : "76x76"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_83.5x83.5@2x.png",
|
"size" : "76x76",
|
||||||
"idiom" : "ipad",
|
"idiom" : "ipad",
|
||||||
"scale" : "2x",
|
"filename" : "Icon-App-iTunes-76.png",
|
||||||
"size" : "83.5x83.5"
|
"scale" : "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "icon_1024x1024.png",
|
"size" : "76x76",
|
||||||
|
"idiom" : "ipad",
|
||||||
|
"filename" : "Icon-App-iTunes-76@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size" : "83.5x83.5",
|
||||||
|
"idiom" : "ipad",
|
||||||
|
"filename" : "Icon-App-iTunes-83.5@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size" : "1024x1024",
|
||||||
"idiom" : "ios-marketing",
|
"idiom" : "ios-marketing",
|
||||||
"scale" : "1x",
|
"filename" : "Icon-App-iTunes-1024.png",
|
||||||
"size" : "1024x1024"
|
"scale" : "1x"
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_114x114@3x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "114x114"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_120x120@2x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "120x120"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_128x128@2x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "128x128"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_136x136@2x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "136x136"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_152x152@2x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "152x152"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_167x167@2x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "167x167"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename" : "icon_192x192@3x.png",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "192x192"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"info" : {
|
"info" : {
|
||||||
"author" : "xcode",
|
"version" : 1,
|
||||||
"version" : 1
|
"author" : "xcode"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 991 B |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 291 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 6 KiB |
After Width: | Height: | Size: 3 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 8.9 KiB |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 8 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 265 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 3 KiB |
Before Width: | Height: | Size: 3 KiB |
Before Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 68 B After Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 68 B After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 68 B After Width: | Height: | Size: 20 KiB |
|
@ -1,9 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
|
||||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
<device id="retina6_72" orientation="portrait" appearance="light"/>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<deployment identifier="iOS"/>
|
<deployment identifier="iOS"/>
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22684"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
|
||||||
|
<capability name="System colors in document resources" minToolsVersion="11.0"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<scenes>
|
<scenes>
|
||||||
|
@ -12,18 +13,20 @@
|
||||||
<objects>
|
<objects>
|
||||||
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
|
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
|
||||||
<layoutGuides>
|
<layoutGuides>
|
||||||
<viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/>
|
<viewControllerLayoutGuide type="top" id="MFX-9H-jtP"/>
|
||||||
<viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/>
|
<viewControllerLayoutGuide type="bottom" id="zNn-OM-I6S"/>
|
||||||
</layoutGuides>
|
</layoutGuides>
|
||||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
<view key="view" userInteractionEnabled="NO" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
||||||
<rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
|
<rect key="frame" x="0.0" y="0.0" width="430" height="932"/>
|
||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
|
<imageView opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" misplaced="YES" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
|
||||||
<rect key="frame" x="196.33333333333334" y="426" width="0.33333333333334281" height="0.33333333333331439"/>
|
<rect key="frame" x="155" y="406" width="120" height="120"/>
|
||||||
|
<preferredSymbolConfiguration key="preferredSymbolConfiguration" scale="large"/>
|
||||||
</imageView>
|
</imageView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
<color key="backgroundColor" systemColor="tertiaryLabelColor"/>
|
||||||
|
<color key="tintColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
|
||||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
|
||||||
|
@ -32,10 +35,13 @@
|
||||||
</viewController>
|
</viewController>
|
||||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||||
</objects>
|
</objects>
|
||||||
<point key="canvasLocation" x="80.916030534351137" y="264.08450704225356"/>
|
<point key="canvasLocation" x="79.534883720930239" y="263.94849785407729"/>
|
||||||
</scene>
|
</scene>
|
||||||
</scenes>
|
</scenes>
|
||||||
<resources>
|
<resources>
|
||||||
<image name="LaunchImage" width="0.3333333432674408" height="0.3333333432674408"/>
|
<image name="LaunchImage" width="60" height="60"/>
|
||||||
|
<systemColor name="tertiaryLabelColor">
|
||||||
|
<color red="0.23529411759999999" green="0.23529411759999999" blue="0.26274509800000001" alpha="0.29803921570000003" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
|
</systemColor>
|
||||||
</resources>
|
</resources>
|
||||||
</document>
|
</document>
|
||||||
|
|
|
@ -2,12 +2,16 @@
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
|
<key>BGTaskSchedulerPermittedIdentifiers</key>
|
||||||
|
<array>
|
||||||
|
<string>ch.isota.recon</string>
|
||||||
|
</array>
|
||||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>recon</string>
|
<string>ReCon</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
|
@ -15,7 +19,7 @@
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>recon</string>
|
<string>ReCon</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
|
@ -26,6 +30,12 @@
|
||||||
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
||||||
<key>LSRequiresIPhoneOS</key>
|
<key>LSRequiresIPhoneOS</key>
|
||||||
<true/>
|
<true/>
|
||||||
|
<key>NSCameraUsageDescription</key>
|
||||||
|
<string>Send photos to other users</string>
|
||||||
|
<key>NSMicrophoneUsageDescription</key>
|
||||||
|
<string>ReCon uses your microphone to record voice messages.</string>
|
||||||
|
<key>NSPhotoLibraryUsageDescription</key>
|
||||||
|
<string>ReCon uses your photo library to send images to your contacts.</string>
|
||||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>UIBackgroundModes</key>
|
<key>UIBackgroundModes</key>
|
||||||
|
@ -41,12 +51,5 @@
|
||||||
<array>
|
<array>
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
</array>
|
</array>
|
||||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
|
||||||
<array>
|
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
|
||||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
|
||||||
</array>
|
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -2,6 +2,12 @@
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
|
<key>aps-environment</key>
|
||||||
|
<string>development</string>
|
||||||
|
<key>com.apple.developer.associated-domains</key>
|
||||||
|
<array>
|
||||||
|
<string>webcredentials:resonite.com</string>
|
||||||
|
</array>
|
||||||
<key>keychain-access-groups</key>
|
<key>keychain-access-groups</key>
|
||||||
<array>
|
<array>
|
||||||
<string>$(AppIdentifierPrefix)ch.isota.recon</string>
|
<string>$(AppIdentifierPrefix)ch.isota.recon</string>
|
||||||
|
|
1
ios/Runner/en.lproj/LaunchScreen.strings
Normal file
|
@ -0,0 +1 @@
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/cloud_variable.dart';
|
import 'package:recon/models/cloud_variable.dart';
|
||||||
|
|
||||||
class CloudVariableApi {
|
class CloudVariableApi {
|
||||||
static Future<CloudVariable> readCloudVariable(ApiClient client,
|
static Future<CloudVariable> readCloudVariable(ApiClient client,
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/users/friend.dart';
|
import 'package:recon/models/users/friend.dart';
|
||||||
import 'package:OpenContacts/models/users/friend_status.dart';
|
import 'package:recon/models/users/friend_status.dart';
|
||||||
import 'package:OpenContacts/models/users/user.dart';
|
import 'package:recon/models/users/user.dart';
|
||||||
import 'package:OpenContacts/models/users/user_profile.dart';
|
import 'package:recon/models/users/user_profile.dart';
|
||||||
import 'package:OpenContacts/models/users/user_status.dart';
|
import 'package:recon/models/users/user_status.dart';
|
||||||
|
|
||||||
class ContactApi {
|
class ContactApi {
|
||||||
static Future<List<Friend>> getFriendsList(ApiClient client, {DateTime? lastStatusUpdate}) async {
|
static Future<List<Friend>> getFriendsList(ApiClient client, {DateTime? lastStatusUpdate}) async {
|
||||||
|
|
|
@ -3,10 +3,10 @@ import 'dart:convert';
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
|
|
||||||
class GithubApi {
|
class GithubApi {
|
||||||
static const baseUrl = "https://git.mrdab.vore.media/api/v1";
|
static const baseUrl = "https://api.github.com";
|
||||||
|
|
||||||
static Future<String> getLatestTagName() async {
|
static Future<String> getLatestTagName() async {
|
||||||
final response = await http.get(Uri.parse("$baseUrl/repos/ThatOneJackalGuy/OpenContacts/releases?per_page=1"));
|
final response = await http.get(Uri.parse("$baseUrl/repos/Nutcake/ReCon/releases?per_page=1"));
|
||||||
if (response.statusCode != 200) return "";
|
if (response.statusCode != 200) return "";
|
||||||
final body = jsonDecode(response.body) as List;
|
final body = jsonDecode(response.body) as List;
|
||||||
if (body.isEmpty) return "";
|
if (body.isEmpty) return "";
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/message.dart';
|
import 'package:recon/models/message.dart';
|
||||||
|
|
||||||
class MessageApi {
|
class MessageApi {
|
||||||
static Future<List<Message>> getUserMessages(ApiClient client, {String userId = "", DateTime? fromTime,
|
static Future<List<Message>> getUserMessages(ApiClient client, {String userId = "", DateTime? fromTime,
|
||||||
|
|
|
@ -3,16 +3,16 @@ import 'dart:io';
|
||||||
import 'dart:math';
|
import 'dart:math';
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:collection/collection.dart';
|
import 'package:collection/collection.dart';
|
||||||
import 'package:OpenContacts/models/records/asset_digest.dart';
|
import 'package:recon/models/records/asset_digest.dart';
|
||||||
import 'package:OpenContacts/models/records/json_template.dart';
|
import 'package:recon/models/records/json_template.dart';
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/records/asset_upload_data.dart';
|
import 'package:recon/models/records/asset_upload_data.dart';
|
||||||
import 'package:OpenContacts/models/records/resonite_db_asset.dart';
|
import 'package:recon/models/records/resonite_db_asset.dart';
|
||||||
import 'package:OpenContacts/models/records/preprocess_status.dart';
|
import 'package:recon/models/records/preprocess_status.dart';
|
||||||
import 'package:OpenContacts/models/records/record.dart';
|
import 'package:recon/models/records/record.dart';
|
||||||
import 'package:http_parser/http_parser.dart';
|
import 'package:http_parser/http_parser.dart';
|
||||||
import 'package:path/path.dart';
|
import 'package:path/path.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/session.dart';
|
import 'package:recon/models/session.dart';
|
||||||
|
|
||||||
class SessionApi {
|
class SessionApi {
|
||||||
static Future<Session> getSession(ApiClient client, {required String sessionId}) async {
|
static Future<Session> getSession(ApiClient client, {required String sessionId}) async {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/personal_profile.dart';
|
import 'package:recon/models/personal_profile.dart';
|
||||||
import 'package:OpenContacts/models/users/user.dart';
|
import 'package:recon/models/users/user.dart';
|
||||||
import 'package:OpenContacts/models/users/user_status.dart';
|
import 'package:recon/models/users/user_status.dart';
|
||||||
|
|
||||||
class UserApi {
|
class UserApi {
|
||||||
static Future<Iterable<User>> searchUsers(ApiClient client, {required String needle}) async {
|
static Future<Iterable<User>> searchUsers(ApiClient client, {required String needle}) async {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import 'package:OpenContacts/config.dart';
|
import 'package:recon/config.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:path/path.dart' as p;
|
import 'package:path/path.dart' as p;
|
||||||
import 'package:html/parser.dart' as htmlparser;
|
import 'package:html/parser.dart' as htmlparser;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
|
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/clients/notification_client.dart';
|
import 'package:recon/clients/notification_client.dart';
|
||||||
import 'package:OpenContacts/clients/settings_client.dart';
|
import 'package:recon/clients/settings_client.dart';
|
||||||
import 'package:OpenContacts/models/authentication_data.dart';
|
import 'package:recon/models/authentication_data.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
class ClientHolder extends InheritedWidget {
|
class ClientHolder extends InheritedWidget {
|
||||||
|
|
|
@ -3,7 +3,7 @@ import 'dart:convert';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
import 'package:OpenContacts/models/authentication_data.dart';
|
import 'package:recon/models/authentication_data.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:uuid/uuid.dart';
|
import 'package:uuid/uuid.dart';
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,9 @@ import 'package:ffmpeg_kit_flutter_audio/ffmpeg_kit.dart';
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
import 'package:path/path.dart';
|
import 'package:path/path.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:OpenContacts/auxiliary.dart';
|
import 'package:recon/auxiliary.dart';
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/message.dart';
|
import 'package:recon/models/message.dart';
|
||||||
|
|
||||||
class AudioCacheClient {
|
class AudioCacheClient {
|
||||||
final Future<Directory> _directoryFuture = getTemporaryDirectory();
|
final Future<Directory> _directoryFuture = getTemporaryDirectory();
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:OpenContacts/apis/record_api.dart';
|
import 'package:recon/apis/record_api.dart';
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/models/inventory/resonite_directory.dart';
|
import 'package:recon/models/inventory/resonite_directory.dart';
|
||||||
import 'package:OpenContacts/models/records/record.dart';
|
import 'package:recon/models/records/record.dart';
|
||||||
|
|
||||||
enum SortMode {
|
enum SortMode {
|
||||||
name,
|
name,
|
||||||
|
|
|
@ -5,21 +5,21 @@ import 'package:flutter/widgets.dart';
|
||||||
import 'package:hive_flutter/hive_flutter.dart';
|
import 'package:hive_flutter/hive_flutter.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:package_info_plus/package_info_plus.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
import 'package:OpenContacts/apis/contact_api.dart';
|
import 'package:recon/apis/contact_api.dart';
|
||||||
import 'package:OpenContacts/apis/message_api.dart';
|
import 'package:recon/apis/message_api.dart';
|
||||||
import 'package:OpenContacts/apis/session_api.dart';
|
import 'package:recon/apis/session_api.dart';
|
||||||
import 'package:OpenContacts/apis/user_api.dart';
|
import 'package:recon/apis/user_api.dart';
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/clients/notification_client.dart';
|
import 'package:recon/clients/notification_client.dart';
|
||||||
import 'package:OpenContacts/clients/settings_client.dart';
|
import 'package:recon/clients/settings_client.dart';
|
||||||
import 'package:OpenContacts/crypto_helper.dart';
|
import 'package:recon/crypto_helper.dart';
|
||||||
import 'package:OpenContacts/hub_manager.dart';
|
import 'package:recon/hub_manager.dart';
|
||||||
import 'package:OpenContacts/models/hub_events.dart';
|
import 'package:recon/models/hub_events.dart';
|
||||||
import 'package:OpenContacts/models/message.dart';
|
import 'package:recon/models/message.dart';
|
||||||
import 'package:OpenContacts/models/session.dart';
|
import 'package:recon/models/session.dart';
|
||||||
import 'package:OpenContacts/models/users/friend.dart';
|
import 'package:recon/models/users/friend.dart';
|
||||||
import 'package:OpenContacts/models/users/online_status.dart';
|
import 'package:recon/models/users/online_status.dart';
|
||||||
import 'package:OpenContacts/models/users/user_status.dart';
|
import 'package:recon/models/users/user_status.dart';
|
||||||
|
|
||||||
class MessagingClient extends ChangeNotifier {
|
class MessagingClient extends ChangeNotifier {
|
||||||
static const Duration _autoRefreshDuration = Duration(seconds: 10);
|
static const Duration _autoRefreshDuration = Duration(seconds: 10);
|
||||||
|
@ -228,19 +228,17 @@ class MessagingClient extends ChangeNotifier {
|
||||||
// Adjusting values to ensure correct placement of 'headless'
|
// Adjusting values to ensure correct placement of 'headless'
|
||||||
if (friend.isHeadless) return 2.5;
|
if (friend.isHeadless) return 2.5;
|
||||||
switch (friend.userStatus.onlineStatus) {
|
switch (friend.userStatus.onlineStatus) {
|
||||||
case OnlineStatus.sociable:
|
|
||||||
return 0;
|
|
||||||
case OnlineStatus.online:
|
case OnlineStatus.online:
|
||||||
return 1;
|
return 0;
|
||||||
case OnlineStatus.away:
|
case OnlineStatus.away:
|
||||||
return 2;
|
return 1;
|
||||||
case OnlineStatus.busy:
|
case OnlineStatus.busy:
|
||||||
return 3;
|
return 2;
|
||||||
case OnlineStatus.invisible:
|
case OnlineStatus.invisible:
|
||||||
return 3.5;
|
return 2.5;
|
||||||
case OnlineStatus.offline:
|
case OnlineStatus.offline:
|
||||||
default:
|
default:
|
||||||
return 4;
|
return 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,9 +2,9 @@ import 'dart:convert';
|
||||||
|
|
||||||
import 'package:collection/collection.dart';
|
import 'package:collection/collection.dart';
|
||||||
import 'package:flutter_local_notifications/flutter_local_notifications.dart' as fln;
|
import 'package:flutter_local_notifications/flutter_local_notifications.dart' as fln;
|
||||||
import 'package:OpenContacts/auxiliary.dart';
|
import 'package:recon/auxiliary.dart';
|
||||||
import 'package:OpenContacts/models/message.dart';
|
import 'package:recon/models/message.dart';
|
||||||
import 'package:OpenContacts/models/session.dart';
|
import 'package:recon/models/session.dart';
|
||||||
|
|
||||||
class NotificationChannel {
|
class NotificationChannel {
|
||||||
final String id;
|
final String id;
|
||||||
|
@ -26,7 +26,7 @@ class NotificationClient {
|
||||||
android: fln.AndroidInitializationSettings("ic_notification"),
|
android: fln.AndroidInitializationSettings("ic_notification"),
|
||||||
iOS: fln.DarwinInitializationSettings(),
|
iOS: fln.DarwinInitializationSettings(),
|
||||||
macOS: fln.DarwinInitializationSettings(),
|
macOS: fln.DarwinInitializationSettings(),
|
||||||
linux: fln.LinuxInitializationSettings(defaultActionName: "Open OpenContacts"),
|
linux: fln.LinuxInitializationSettings(defaultActionName: "Open ReCon"),
|
||||||
));
|
));
|
||||||
|
|
||||||
Future<void> showUnreadMessagesNotification(Iterable<Message> messages) async {
|
Future<void> showUnreadMessagesNotification(Iterable<Message> messages) async {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
import 'package:collection/collection.dart';
|
import 'package:collection/collection.dart';
|
||||||
import 'package:OpenContacts/apis/session_api.dart';
|
import 'package:recon/apis/session_api.dart';
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/clients/settings_client.dart';
|
import 'package:recon/clients/settings_client.dart';
|
||||||
import 'package:OpenContacts/models/session.dart';
|
import 'package:recon/models/session.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
|
|
||||||
class SessionClient extends ChangeNotifier {
|
class SessionClient extends ChangeNotifier {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:OpenContacts/models/settings.dart';
|
import 'package:recon/models/settings.dart';
|
||||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,8 @@ import 'dart:io';
|
||||||
|
|
||||||
import 'package:collection/collection.dart';
|
import 'package:collection/collection.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:OpenContacts/config.dart';
|
import 'package:recon/config.dart';
|
||||||
import 'package:OpenContacts/models/hub_events.dart';
|
import 'package:recon/models/hub_events.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:uuid/uuid.dart';
|
import 'package:uuid/uuid.dart';
|
||||||
|
|
||||||
|
|
|
@ -13,17 +13,17 @@ import 'package:intl/intl.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:package_info_plus/package_info_plus.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import 'package:OpenContacts/apis/github_api.dart';
|
import 'package:recon/apis/github_api.dart';
|
||||||
import 'package:OpenContacts/client_holder.dart';
|
import 'package:recon/client_holder.dart';
|
||||||
import 'package:OpenContacts/clients/api_client.dart';
|
import 'package:recon/clients/api_client.dart';
|
||||||
import 'package:OpenContacts/clients/inventory_client.dart';
|
import 'package:recon/clients/inventory_client.dart';
|
||||||
import 'package:OpenContacts/clients/messaging_client.dart';
|
import 'package:recon/clients/messaging_client.dart';
|
||||||
import 'package:OpenContacts/clients/session_client.dart';
|
import 'package:recon/clients/session_client.dart';
|
||||||
import 'package:OpenContacts/clients/settings_client.dart';
|
import 'package:recon/clients/settings_client.dart';
|
||||||
import 'package:OpenContacts/models/sem_ver.dart';
|
import 'package:recon/models/sem_ver.dart';
|
||||||
import 'package:OpenContacts/widgets/homepage.dart';
|
import 'package:recon/widgets/homepage.dart';
|
||||||
import 'package:OpenContacts/widgets/login_screen.dart';
|
import 'package:recon/widgets/login_screen.dart';
|
||||||
import 'package:OpenContacts/widgets/update_notifier.dart';
|
import 'package:recon/widgets/update_notifier.dart';
|
||||||
|
|
||||||
import 'models/authentication_data.dart';
|
import 'models/authentication_data.dart';
|
||||||
|
|
||||||
|
@ -59,20 +59,20 @@ void main() async {
|
||||||
// Ignore
|
// Ignore
|
||||||
}
|
}
|
||||||
|
|
||||||
runApp(recon(settingsClient: settingsClient, cachedAuthentication: cachedAuth));
|
runApp(ReCon(settingsClient: settingsClient, cachedAuthentication: cachedAuth));
|
||||||
}
|
}
|
||||||
|
|
||||||
class recon extends StatefulWidget {
|
class ReCon extends StatefulWidget {
|
||||||
const recon({required this.settingsClient, required this.cachedAuthentication, super.key});
|
const ReCon({required this.settingsClient, required this.cachedAuthentication, super.key});
|
||||||
|
|
||||||
final SettingsClient settingsClient;
|
final SettingsClient settingsClient;
|
||||||
final AuthenticationData cachedAuthentication;
|
final AuthenticationData cachedAuthentication;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<recon> createState() => _reconState();
|
State<ReCon> createState() => _ReConState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _reconState extends State<recon> {
|
class _ReConState extends State<ReCon> {
|
||||||
final Typography _typography = Typography.material2021(platform: defaultTargetPlatform);
|
final Typography _typography = Typography.material2021(platform: defaultTargetPlatform);
|
||||||
final ReceivePort _port = ReceivePort();
|
final ReceivePort _port = ReceivePort();
|
||||||
late AuthenticationData _authData = widget.cachedAuthentication;
|
late AuthenticationData _authData = widget.cachedAuthentication;
|
||||||
|
@ -165,7 +165,7 @@ class _reconState extends State<recon> {
|
||||||
child: DynamicColorBuilder(
|
child: DynamicColorBuilder(
|
||||||
builder: (ColorScheme? lightDynamic, ColorScheme? darkDynamic) => MaterialApp(
|
builder: (ColorScheme? lightDynamic, ColorScheme? darkDynamic) => MaterialApp(
|
||||||
debugShowCheckedModeBanner: true,
|
debugShowCheckedModeBanner: true,
|
||||||
title: 'OpenContacts',
|
title: 'ReCon',
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
useMaterial3: true,
|
useMaterial3: true,
|
||||||
textTheme: _typography.black,
|
textTheme: _typography.black,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import 'package:OpenContacts/auxiliary.dart';
|
import 'package:recon/auxiliary.dart';
|
||||||
|
|
||||||
class CloudVariable {
|
class CloudVariable {
|
||||||
final String ownerId;
|
final String ownerId;
|
||||||
|
|