diff --git a/example/.gitignore b/example/.gitignore deleted file mode 100644 index e57dbe60..00000000 --- a/example/.gitignore +++ /dev/null @@ -1,48 +0,0 @@ -# Miscellaneous -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ - -# IntelliJ related -*.iml -*.ipr -*.iws -.idea/ - -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ - -# Flutter/Dart/Pub related -**/doc/api/ -**/ios/Flutter/.last_build_id -.dart_tool/ -.flutter-plugins -.flutter-plugins-dependencies -.packages -.pub-cache/ -.pub/ -/build/ - -# Web related - -# Symbolication related -app.*.symbols - -# Obfuscation related -app.*.map.json - -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release - -# IOS files -ios/Podfile.lock diff --git a/example/.metadata b/example/.metadata deleted file mode 100644 index bcd1a600..00000000 --- a/example/.metadata +++ /dev/null @@ -1,30 +0,0 @@ -# This file tracks properties of this Flutter project. -# Used by Flutter tool to assess capabilities and perform upgrades etc. -# -# This file should be version controlled and should not be manually edited. - -version: - revision: "78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9" - channel: "stable" - -project_type: app - -# Tracks metadata for the flutter migrate command -migration: - platforms: - - platform: root - create_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - base_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - - platform: web - create_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - base_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - - # User provided section - - # List of Local paths (relative to this file) that should be - # ignored by the migrate tool. - # - # Files that are not part of the templates will be ignored by default. - unmanaged_files: - - 'lib/main.dart' - - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/example/README.md b/example/README.md deleted file mode 100644 index a1356260..00000000 --- a/example/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# example - -A new Flutter project. - -## Getting Started - -This project is a starting point for a Flutter application. - -A few resources to get you started if this is your first Flutter project: - -- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) -- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) - -For help getting started with Flutter, view our -[online documentation](https://flutter.dev/docs), which offers tutorials, -samples, guidance on mobile development, and a full API reference. diff --git a/example/analysis_options.yaml b/example/analysis_options.yaml deleted file mode 100644 index 61b6c4de..00000000 --- a/example/analysis_options.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. -include: package:flutter_lints/flutter.yaml - -linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. - rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options diff --git a/example/android/.gitignore b/example/android/.gitignore deleted file mode 100644 index 6f568019..00000000 --- a/example/android/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -gradle-wrapper.jar -/.gradle -/captures/ -/gradlew -/gradlew.bat -/local.properties -GeneratedPluginRegistrant.java - -# Remember to never publicly share your keystore. -# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app -key.properties -**/*.keystore -**/*.jks diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle deleted file mode 100644 index b130996b..00000000 --- a/example/android/app/build.gradle +++ /dev/null @@ -1,68 +0,0 @@ -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - -android { - compileSdkVersion 34 - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - kotlinOptions { - jvmTarget = '1.8' - } - - sourceSets { - main.java.srcDirs += 'src/main/kotlin' - } - - defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.simform.example" - minSdkVersion 21 - targetSdkVersion 33 - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - } - - buildTypes { - release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig signingConfigs.debug - } - } -} - -flutter { - source '../..' -} - -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index 5f768db8..00000000 --- a/example/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index 120ee706..00000000 --- a/example/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/android/app/src/main/kotlin/com/simform/example/MainActivity.kt b/example/android/app/src/main/kotlin/com/simform/example/MainActivity.kt deleted file mode 100644 index bff659de..00000000 --- a/example/android/app/src/main/kotlin/com/simform/example/MainActivity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.simform.example - -import io.flutter.embedding.android.FlutterActivity - -class MainActivity: FlutterActivity() { -} diff --git a/example/android/app/src/main/res/drawable-v21/launch_background.xml b/example/android/app/src/main/res/drawable-v21/launch_background.xml deleted file mode 100644 index f74085f3..00000000 --- a/example/android/app/src/main/res/drawable-v21/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/example/android/app/src/main/res/drawable/launch_background.xml b/example/android/app/src/main/res/drawable/launch_background.xml deleted file mode 100644 index 304732f8..00000000 --- a/example/android/app/src/main/res/drawable/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index db77bb4b..00000000 Binary files a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 17987b79..00000000 Binary files a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 09d43914..00000000 Binary files a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index d5f1c8d3..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 4d6372ee..00000000 Binary files a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/example/android/app/src/main/res/values-night/styles.xml b/example/android/app/src/main/res/values-night/styles.xml deleted file mode 100644 index 449a9f93..00000000 --- a/example/android/app/src/main/res/values-night/styles.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - diff --git a/example/android/app/src/main/res/values/styles.xml b/example/android/app/src/main/res/values/styles.xml deleted file mode 100644 index d74aa35c..00000000 --- a/example/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - diff --git a/example/android/app/src/profile/AndroidManifest.xml b/example/android/app/src/profile/AndroidManifest.xml deleted file mode 100644 index 5f768db8..00000000 --- a/example/android/app/src/profile/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/example/android/build.gradle b/example/android/build.gradle deleted file mode 100644 index 2d15b987..00000000 --- a/example/android/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - -allprojects { - repositories { - google() - mavenCentral() - } -} - -rootProject.buildDir = '../build' -subprojects { - project.buildDir = "${rootProject.buildDir}/${project.name}" - project.evaluationDependsOn(':app') -} - -tasks.register("clean", Delete) { - delete rootProject.buildDir -} diff --git a/example/android/gradle.properties b/example/android/gradle.properties deleted file mode 100644 index 94adc3a3..00000000 --- a/example/android/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -org.gradle.jvmargs=-Xmx1536M -android.useAndroidX=true -android.enableJetifier=true diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 6b665338..00000000 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Jun 23 08:50:38 CEST 2017 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip diff --git a/example/android/settings.gradle b/example/android/settings.gradle deleted file mode 100644 index 44e62bcf..00000000 --- a/example/android/settings.gradle +++ /dev/null @@ -1,11 +0,0 @@ -include ':app' - -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() - -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } - -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/example/ios/.gitignore b/example/ios/.gitignore deleted file mode 100644 index 7a7f9873..00000000 --- a/example/ios/.gitignore +++ /dev/null @@ -1,34 +0,0 @@ -**/dgph -*.mode1v3 -*.mode2v3 -*.moved-aside -*.pbxuser -*.perspectivev3 -**/*sync/ -.sconsign.dblite -.tags* -**/.vagrant/ -**/DerivedData/ -Icon? -**/Pods/ -**/.symlinks/ -profile -xcuserdata -**/.generated/ -Flutter/App.framework -Flutter/Flutter.framework -Flutter/Flutter.podspec -Flutter/Generated.xcconfig -Flutter/ephemeral/ -Flutter/app.flx -Flutter/app.zip -Flutter/flutter_assets/ -Flutter/flutter_export_environment.sh -ServiceDefinitions.json -Runner/GeneratedPluginRegistrant.* - -# Exceptions to above rules. -!default.mode1v3 -!default.mode2v3 -!default.pbxuser -!default.perspectivev3 diff --git a/example/ios/Flutter/AppFrameworkInfo.plist b/example/ios/Flutter/AppFrameworkInfo.plist deleted file mode 100644 index 9625e105..00000000 --- a/example/ios/Flutter/AppFrameworkInfo.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - App - CFBundleIdentifier - io.flutter.flutter.app - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - App - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1.0 - MinimumOSVersion - 11.0 - - diff --git a/example/ios/Flutter/Debug.xcconfig b/example/ios/Flutter/Debug.xcconfig deleted file mode 100644 index ec97fc6f..00000000 --- a/example/ios/Flutter/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "Generated.xcconfig" diff --git a/example/ios/Flutter/Release.xcconfig b/example/ios/Flutter/Release.xcconfig deleted file mode 100644 index c4855bfe..00000000 --- a/example/ios/Flutter/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "Generated.xcconfig" diff --git a/example/ios/Podfile b/example/ios/Podfile deleted file mode 100644 index 88359b22..00000000 --- a/example/ios/Podfile +++ /dev/null @@ -1,41 +0,0 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, '11.0' - -# CocoaPods analytics sends network stats synchronously affecting flutter build latency. -ENV['COCOAPODS_DISABLE_STATS'] = 'true' - -project 'Runner', { - 'Debug' => :debug, - 'Profile' => :release, - 'Release' => :release, -} - -def flutter_root - generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) - unless File.exist?(generated_xcode_build_settings_path) - raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" - end - - File.foreach(generated_xcode_build_settings_path) do |line| - matches = line.match(/FLUTTER_ROOT\=(.*)/) - return matches[1].strip if matches - end - raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" -end - -require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) - -flutter_ios_podfile_setup - -target 'Runner' do - use_frameworks! - use_modular_headers! - - flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) -end - -post_install do |installer| - installer.pods_project.targets.each do |target| - flutter_additional_ios_build_settings(target) - end -end diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index 972adf77..00000000 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,556 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 54; - objects = { - -/* Begin PBXBuildFile section */ - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 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 */; }; - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - D603EC878BBF0AB5B07D1ACC /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3A81F9FDF6421CEF0BE35C88 /* Pods_Runner.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 9705A1C41CF9048500538489 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 29558ED8D78C633A165C52F7 /* 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 = ""; }; - 3A81F9FDF6421CEF0BE35C88 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 74FE09EC980554A6C5F9F067 /* 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 = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 9118489906754C25F1F0F2E5 /* 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 = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; - 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; - 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 97C146EB1CF9000F007C117D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - D603EC878BBF0AB5B07D1ACC /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 6990092FC0C340CE05B99767 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 3A81F9FDF6421CEF0BE35C88 /* Pods_Runner.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 9740EEB11CF90186004384FC /* Flutter */ = { - isa = PBXGroup; - children = ( - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 9740EEB31CF90195004384FC /* Generated.xcconfig */, - ); - name = Flutter; - sourceTree = ""; - }; - 97C146E51CF9000F007C117D = { - isa = PBXGroup; - children = ( - 9740EEB11CF90186004384FC /* Flutter */, - 97C146F01CF9000F007C117D /* Runner */, - 97C146EF1CF9000F007C117D /* Products */, - FB63439EE09E478BAC604996 /* Pods */, - 6990092FC0C340CE05B99767 /* Frameworks */, - ); - sourceTree = ""; - }; - 97C146EF1CF9000F007C117D /* Products */ = { - isa = PBXGroup; - children = ( - 97C146EE1CF9000F007C117D /* Runner.app */, - ); - name = Products; - sourceTree = ""; - }; - 97C146F01CF9000F007C117D /* Runner */ = { - isa = PBXGroup; - children = ( - 97C146FA1CF9000F007C117D /* Main.storyboard */, - 97C146FD1CF9000F007C117D /* Assets.xcassets */, - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, - 97C147021CF9000F007C117D /* Info.plist */, - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, - ); - path = Runner; - sourceTree = ""; - }; - FB63439EE09E478BAC604996 /* Pods */ = { - isa = PBXGroup; - children = ( - 74FE09EC980554A6C5F9F067 /* Pods-Runner.debug.xcconfig */, - 29558ED8D78C633A165C52F7 /* Pods-Runner.release.xcconfig */, - 9118489906754C25F1F0F2E5 /* Pods-Runner.profile.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 97C146ED1CF9000F007C117D /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - B41643FFC6EE3FC42A315CE6 /* [CP] Check Pods Manifest.lock */, - 9740EEB61CF901F6004384FC /* Run Script */, - 97C146EA1CF9000F007C117D /* Sources */, - 97C146EB1CF9000F007C117D /* Frameworks */, - 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, - 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - B4FD731148E0A03896ACAF95 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Runner; - productName = Runner; - productReference = 97C146EE1CF9000F007C117D /* Runner.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 97C146E61CF9000F007C117D /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1300; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 97C146ED1CF9000F007C117D = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1100; - }; - }; - }; - buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 97C146E51CF9000F007C117D; - productRefGroup = 97C146EF1CF9000F007C117D /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 97C146ED1CF9000F007C117D /* Runner */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 97C146EC1CF9000F007C117D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", - ); - name = "Thin Binary"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; - }; - 9740EEB61CF901F6004384FC /* Run Script */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Run Script"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; - }; - B41643FFC6EE3FC42A315CE6 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - B4FD731148E0A03896ACAF95 /* [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 */ - 97C146EA1CF9000F007C117D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXVariantGroup section */ - 97C146FA1CF9000F007C117D /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C146FB1CF9000F007C117D /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C147001CF9000F007C117D /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Profile; - }; - 249021D4217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = KX234MPD84; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.chatview.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Profile; - }; - 97C147031CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 97C147041CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 97C147061CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = KX234MPD84; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.chatview.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 97C147071CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = KX234MPD84; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.chatview.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147031CF9000F007C117D /* Debug */, - 97C147041CF9000F007C117D /* Release */, - 249021D3217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147061CF9000F007C117D /* Debug */, - 97C147071CF9000F007C117D /* Release */, - 249021D4217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 97C146E61CF9000F007C117D /* Project object */; -} diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a6..00000000 --- a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5..00000000 --- a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme deleted file mode 100644 index 3db53b6e..00000000 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/example/ios/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 21a3cc14..00000000 --- a/example/ios/Runner.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5..00000000 --- a/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/example/ios/Runner/AppDelegate.swift b/example/ios/Runner/AppDelegate.swift deleted file mode 100644 index 70693e4a..00000000 --- a/example/ios/Runner/AppDelegate.swift +++ /dev/null @@ -1,13 +0,0 @@ -import UIKit -import Flutter - -@UIApplicationMain -@objc class AppDelegate: FlutterAppDelegate { - override func application( - _ application: UIApplication, - didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? - ) -> Bool { - GeneratedPluginRegistrant.register(with: self) - return super.application(application, didFinishLaunchingWithOptions: launchOptions) - } -} diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d36b1fab..00000000 --- a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "images" : [ - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@3x.png", - "scale" : "3x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@3x.png", - "scale" : "3x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@3x.png", - "scale" : "3x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@2x.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@3x.png", - "scale" : "3x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@1x.png", - "scale" : "1x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@1x.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@1x.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@2x.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "Icon-App-83.5x83.5@2x.png", - "scale" : "2x" - }, - { - "size" : "1024x1024", - "idiom" : "ios-marketing", - "filename" : "Icon-App-1024x1024@1x.png", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png deleted file mode 100644 index dc9ada47..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png deleted file mode 100644 index 28c6bf03..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png deleted file mode 100644 index 2ccbfd96..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100644 index f091b6b0..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png deleted file mode 100644 index 4cde1211..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100644 index d0ef06e7..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png deleted file mode 100644 index dcdc2306..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png deleted file mode 100644 index 2ccbfd96..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100644 index c8f9ed8f..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100644 index a6d6b860..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100644 index a6d6b860..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100644 index 75b2d164..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100644 index c4df70d3..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png deleted file mode 100644 index 6a84f41e..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png deleted file mode 100644 index d0e1f585..00000000 Binary files a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json deleted file mode 100644 index 0bedcf2f..00000000 --- a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "filename" : "LaunchImage.png", - "scale" : "1x" - }, - { - "idiom" : "universal", - "filename" : "LaunchImage@2x.png", - "scale" : "2x" - }, - { - "idiom" : "universal", - "filename" : "LaunchImage@3x.png", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png deleted file mode 100644 index 9da19eac..00000000 Binary files a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png deleted file mode 100644 index 9da19eac..00000000 Binary files a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png deleted file mode 100644 index 9da19eac..00000000 Binary files a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png and /dev/null differ diff --git a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md deleted file mode 100644 index 89c2725b..00000000 --- a/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Launch Screen Assets - -You can customize the launch screen with your own desired assets by replacing the image files in this directory. - -You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/example/ios/Runner/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index f2e259c7..00000000 --- a/example/ios/Runner/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/ios/Runner/Base.lproj/Main.storyboard b/example/ios/Runner/Base.lproj/Main.storyboard deleted file mode 100644 index f3c28516..00000000 --- a/example/ios/Runner/Base.lproj/Main.storyboard +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/ios/Runner/Info.plist b/example/ios/Runner/Info.plist deleted file mode 100644 index 50183544..00000000 --- a/example/ios/Runner/Info.plist +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - example - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleSignature - ???? - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSRequiresIPhoneOS - - NSCameraUsageDescription - Used to demonstrate image picker plugin - NSMicrophoneUsageDescription - Used to capture audio for image picker plugin - NSPhotoLibraryUsageDescription - Used to demonstrate image picker plugin - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - CADisableMinimumFrameDurationOnPhone - - UIApplicationSupportsIndirectInputEvents - - - diff --git a/example/ios/Runner/Runner-Bridging-Header.h b/example/ios/Runner/Runner-Bridging-Header.h deleted file mode 100644 index 308a2a56..00000000 --- a/example/ios/Runner/Runner-Bridging-Header.h +++ /dev/null @@ -1 +0,0 @@ -#import "GeneratedPluginRegistrant.h" diff --git a/example/lib/data.dart b/example/lib/data.dart deleted file mode 100644 index d90ac011..00000000 --- a/example/lib/data.dart +++ /dev/null @@ -1,117 +0,0 @@ -import 'package:chatview/chatview.dart'; - -class Data { - static const profileImage = - "https://raw.githubusercontent.com/SimformSolutionsPvtLtd/flutter_showcaseview/master/example/assets/simform.png"; - static final messageList = [ - Message( - id: '1', - message: "Hi!", - createdAt: DateTime.now(), - sentBy: '1', // userId of who sends the message - status: MessageStatus.read, - ), - Message( - id: '2', - message: "Hi!", - createdAt: DateTime.now(), - sentBy: '2', - status: MessageStatus.read, - ), - Message( - id: '3', - message: "We can meet?I am free", - createdAt: DateTime.now(), - sentBy: '1', - status: MessageStatus.read, - ), - Message( - id: '4', - message: "Can you write the time and place of the meeting?", - createdAt: DateTime.now(), - sentBy: '1', - status: MessageStatus.read, - ), - Message( - id: '5', - message: "That's fine", - createdAt: DateTime.now(), - sentBy: '2', - reaction: Reaction(reactions: ['\u{2764}'], reactedUserIds: ['1']), - status: MessageStatus.read, - ), - Message( - id: '6', - message: "When to go ?", - createdAt: DateTime.now(), - sentBy: '3', - status: MessageStatus.read, - ), - Message( - id: '7', - message: "I guess Simform will reply", - createdAt: DateTime.now(), - sentBy: '4', - status: MessageStatus.read, - ), - Message( - id: '8', - message: "https://bit.ly/3JHS2Wl", - createdAt: DateTime.now(), - sentBy: '2', - reaction: Reaction( - reactions: ['\u{2764}', '\u{1F44D}', '\u{1F44D}'], - reactedUserIds: ['2', '3', '4'], - ), - status: MessageStatus.read, - replyMessage: const ReplyMessage( - message: "Can you write the time and place of the meeting?", - replyTo: '1', - replyBy: '2', - messageId: '4', - ), - ), - Message( - id: '9', - message: "Done", - createdAt: DateTime.now(), - sentBy: '1', - status: MessageStatus.read, - reaction: Reaction( - reactions: [ - '\u{2764}', - '\u{2764}', - '\u{2764}', - ], - reactedUserIds: ['2', '3', '4'], - ), - ), - Message( - id: '10', - message: "Thank you!!", - status: MessageStatus.read, - createdAt: DateTime.now(), - sentBy: '1', - reaction: Reaction( - reactions: ['\u{2764}', '\u{2764}', '\u{2764}', '\u{2764}'], - reactedUserIds: ['2', '4', '3', '1'], - ), - ), - Message( - id: '11', - message: "https://miro.medium.com/max/1000/0*s7of7kWnf9fDg4XM.jpeg", - createdAt: DateTime.now(), - messageType: MessageType.image, - sentBy: '1', - reaction: Reaction(reactions: ['\u{2764}'], reactedUserIds: ['2']), - status: MessageStatus.read, - ), - Message( - id: '12', - message: "🤩🤩", - createdAt: DateTime.now(), - sentBy: '2', - status: MessageStatus.read, - ), - ]; -} diff --git a/example/lib/main.dart b/example/lib/main.dart deleted file mode 100644 index c95024a9..00000000 --- a/example/lib/main.dart +++ /dev/null @@ -1,361 +0,0 @@ -import 'package:chatview/chatview.dart'; -import 'package:example/data.dart'; -import 'package:example/models/theme.dart'; -import 'package:flutter/material.dart'; - -void main() { - runApp(const Example()); -} - -class Example extends StatelessWidget { - const Example({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return MaterialApp( - title: 'Flutter Chat UI Demo', - debugShowCheckedModeBanner: false, - theme: ThemeData( - primaryColor: const Color(0xffEE5366), - colorScheme: - ColorScheme.fromSwatch(accentColor: const Color(0xffEE5366)), - ), - home: const ChatScreen(), - ); - } -} - -class ChatScreen extends StatefulWidget { - const ChatScreen({Key? key}) : super(key: key); - - @override - State createState() => _ChatScreenState(); -} - -class _ChatScreenState extends State { - AppTheme theme = LightTheme(); - bool isDarkTheme = false; - final _chatController = ChatController( - initialMessageList: Data.messageList, - scrollController: ScrollController(), - currentUser: ChatUser( - id: '1', - name: 'Flutter', - profilePhoto: Data.profileImage, - ), - otherUsers: [ - ChatUser( - id: '2', - name: 'Simform', - profilePhoto: Data.profileImage, - ), - ChatUser( - id: '3', - name: 'Jhon', - profilePhoto: Data.profileImage, - ), - ChatUser( - id: '4', - name: 'Mike', - profilePhoto: Data.profileImage, - ), - ChatUser( - id: '5', - name: 'Rich', - profilePhoto: Data.profileImage, - ), - ], - ); - - void _showHideTypingIndicator() { - _chatController.setTypingIndicator = !_chatController.showTypingIndicator; - } - - void receiveMessage() async { - _chatController.addMessage( - Message( - id: DateTime.now().toString(), - message: 'I will schedule the meeting.', - createdAt: DateTime.now(), - sentBy: '2', - ), - ); - await Future.delayed(const Duration(milliseconds: 500)); - _chatController.addReplySuggestions([ - const SuggestionItemData(text: 'Thanks.'), - const SuggestionItemData(text: 'Thank you very much.'), - const SuggestionItemData(text: 'Great.') - ]); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - body: ChatView( - chatController: _chatController, - onSendTap: _onSendTap, - featureActiveConfig: const FeatureActiveConfig( - lastSeenAgoBuilderVisibility: true, - receiptsBuilderVisibility: true, - enableScrollToBottomButton: true, - ), - scrollToBottomButtonConfig: ScrollToBottomButtonConfig( - backgroundColor: theme.textFieldBackgroundColor, - border: Border.all( - color: isDarkTheme ? Colors.transparent : Colors.grey, - ), - icon: Icon( - Icons.keyboard_arrow_down_rounded, - color: theme.themeIconColor, - weight: 10, - size: 30, - ), - ), - chatViewState: ChatViewState.hasMessages, - chatViewStateConfig: ChatViewStateConfiguration( - loadingWidgetConfig: ChatViewStateWidgetConfiguration( - loadingIndicatorColor: theme.outgoingChatBubbleColor, - ), - onReloadButtonTap: () {}, - ), - typeIndicatorConfig: TypeIndicatorConfiguration( - flashingCircleBrightColor: theme.flashingCircleBrightColor, - flashingCircleDarkColor: theme.flashingCircleDarkColor, - ), - appBar: ChatViewAppBar( - elevation: theme.elevation, - backGroundColor: theme.appBarColor, - profilePicture: Data.profileImage, - backArrowColor: theme.backArrowColor, - chatTitle: "Chat view", - chatTitleTextStyle: TextStyle( - color: theme.appBarTitleTextStyle, - fontWeight: FontWeight.bold, - fontSize: 18, - letterSpacing: 0.25, - ), - userStatus: "online", - userStatusTextStyle: const TextStyle(color: Colors.grey), - actions: [ - IconButton( - onPressed: _onThemeIconTap, - icon: Icon( - isDarkTheme - ? Icons.brightness_4_outlined - : Icons.dark_mode_outlined, - color: theme.themeIconColor, - ), - ), - IconButton( - tooltip: 'Toggle TypingIndicator', - onPressed: _showHideTypingIndicator, - icon: Icon( - Icons.keyboard, - color: theme.themeIconColor, - ), - ), - IconButton( - tooltip: 'Simulate Message receive', - onPressed: receiveMessage, - icon: Icon( - Icons.supervised_user_circle, - color: theme.themeIconColor, - ), - ), - ], - ), - chatBackgroundConfig: ChatBackgroundConfiguration( - messageTimeIconColor: theme.messageTimeIconColor, - messageTimeTextStyle: TextStyle(color: theme.messageTimeTextColor), - defaultGroupSeparatorConfig: DefaultGroupSeparatorConfiguration( - textStyle: TextStyle( - color: theme.chatHeaderColor, - fontSize: 17, - ), - ), - backgroundColor: theme.backgroundColor, - ), - sendMessageConfig: SendMessageConfiguration( - imagePickerIconsConfig: ImagePickerIconsConfiguration( - cameraIconColor: theme.cameraIconColor, - galleryIconColor: theme.galleryIconColor, - ), - replyMessageColor: theme.replyMessageColor, - defaultSendButtonColor: theme.sendButtonColor, - replyDialogColor: theme.replyDialogColor, - replyTitleColor: theme.replyTitleColor, - textFieldBackgroundColor: theme.textFieldBackgroundColor, - closeIconColor: theme.closeIconColor, - textFieldConfig: TextFieldConfiguration( - onMessageTyping: (status) { - /// Do with status - debugPrint(status.toString()); - }, - compositionThresholdTime: const Duration(seconds: 1), - textStyle: TextStyle(color: theme.textFieldTextColor), - ), - micIconColor: theme.replyMicIconColor, - voiceRecordingConfiguration: VoiceRecordingConfiguration( - backgroundColor: theme.waveformBackgroundColor, - recorderIconColor: theme.recordIconColor, - waveStyle: WaveStyle( - showMiddleLine: false, - waveColor: theme.waveColor ?? Colors.white, - extendWaveform: true, - ), - ), - ), - chatBubbleConfig: ChatBubbleConfiguration( - outgoingChatBubbleConfig: ChatBubble( - linkPreviewConfig: LinkPreviewConfiguration( - backgroundColor: theme.linkPreviewOutgoingChatColor, - bodyStyle: theme.outgoingChatLinkBodyStyle, - titleStyle: theme.outgoingChatLinkTitleStyle, - ), - receiptsWidgetConfig: - const ReceiptsWidgetConfig(showReceiptsIn: ShowReceiptsIn.all), - color: theme.outgoingChatBubbleColor, - ), - inComingChatBubbleConfig: ChatBubble( - linkPreviewConfig: LinkPreviewConfiguration( - linkStyle: TextStyle( - color: theme.inComingChatBubbleTextColor, - decoration: TextDecoration.underline, - ), - backgroundColor: theme.linkPreviewIncomingChatColor, - bodyStyle: theme.incomingChatLinkBodyStyle, - titleStyle: theme.incomingChatLinkTitleStyle, - ), - textStyle: TextStyle(color: theme.inComingChatBubbleTextColor), - onMessageRead: (message) { - /// send your message reciepts to the other client - debugPrint('Message Read'); - }, - senderNameTextStyle: - TextStyle(color: theme.inComingChatBubbleTextColor), - color: theme.inComingChatBubbleColor, - ), - ), - replyPopupConfig: ReplyPopupConfiguration( - backgroundColor: theme.replyPopupColor, - buttonTextStyle: TextStyle(color: theme.replyPopupButtonColor), - topBorderColor: theme.replyPopupTopBorderColor, - ), - reactionPopupConfig: ReactionPopupConfiguration( - shadow: BoxShadow( - color: isDarkTheme ? Colors.black54 : Colors.grey.shade400, - blurRadius: 20, - ), - backgroundColor: theme.reactionPopupColor, - ), - messageConfig: MessageConfiguration( - messageReactionConfig: MessageReactionConfiguration( - backgroundColor: theme.messageReactionBackGroundColor, - borderColor: theme.messageReactionBackGroundColor, - reactedUserCountTextStyle: - TextStyle(color: theme.inComingChatBubbleTextColor), - reactionCountTextStyle: - TextStyle(color: theme.inComingChatBubbleTextColor), - reactionsBottomSheetConfig: ReactionsBottomSheetConfiguration( - backgroundColor: theme.backgroundColor, - reactedUserTextStyle: TextStyle( - color: theme.inComingChatBubbleTextColor, - ), - reactionWidgetDecoration: BoxDecoration( - color: theme.inComingChatBubbleColor, - boxShadow: [ - BoxShadow( - color: isDarkTheme ? Colors.black12 : Colors.grey.shade200, - offset: const Offset(0, 20), - blurRadius: 40, - ) - ], - borderRadius: BorderRadius.circular(10), - ), - ), - ), - imageMessageConfig: ImageMessageConfiguration( - margin: const EdgeInsets.symmetric(horizontal: 12, vertical: 15), - shareIconConfig: ShareIconConfiguration( - defaultIconBackgroundColor: theme.shareIconBackgroundColor, - defaultIconColor: theme.shareIconColor, - ), - ), - ), - profileCircleConfig: const ProfileCircleConfiguration( - profileImageUrl: Data.profileImage, - ), - repliedMessageConfig: RepliedMessageConfiguration( - backgroundColor: theme.repliedMessageColor, - verticalBarColor: theme.verticalBarColor, - repliedMsgAutoScrollConfig: RepliedMsgAutoScrollConfig( - enableHighlightRepliedMsg: true, - highlightColor: Colors.pinkAccent.shade100, - highlightScale: 1.1, - ), - textStyle: const TextStyle( - color: Colors.white, - fontWeight: FontWeight.bold, - letterSpacing: 0.25, - ), - replyTitleTextStyle: TextStyle(color: theme.repliedTitleTextColor), - ), - swipeToReplyConfig: SwipeToReplyConfiguration( - replyIconColor: theme.swipeToReplyIconColor, - ), - replySuggestionsConfig: ReplySuggestionsConfig( - itemConfig: SuggestionItemConfig( - decoration: BoxDecoration( - color: theme.textFieldBackgroundColor, - borderRadius: BorderRadius.circular(8), - border: Border.all( - color: theme.outgoingChatBubbleColor ?? Colors.white, - ), - ), - textStyle: TextStyle( - color: isDarkTheme ? Colors.white : Colors.black, - ), - ), - onTap: (item) => - _onSendTap(item.text, const ReplyMessage(), MessageType.text), - ), - ), - ); - } - - void _onSendTap( - String message, - ReplyMessage replyMessage, - MessageType messageType, - ) { - _chatController.addMessage( - Message( - id: DateTime.now().toString(), - createdAt: DateTime.now(), - message: message, - sentBy: _chatController.currentUser.id, - replyMessage: replyMessage, - messageType: messageType, - ), - ); - Future.delayed(const Duration(milliseconds: 300), () { - _chatController.initialMessageList.last.setStatus = - MessageStatus.undelivered; - }); - Future.delayed(const Duration(seconds: 1), () { - _chatController.initialMessageList.last.setStatus = MessageStatus.read; - }); - } - - void _onThemeIconTap() { - setState(() { - if (isDarkTheme) { - theme = LightTheme(); - isDarkTheme = false; - } else { - theme = DarkTheme(); - isDarkTheme = true; - } - }); - } -} diff --git a/example/lib/models/theme.dart b/example/lib/models/theme.dart deleted file mode 100644 index 53d9932d..00000000 --- a/example/lib/models/theme.dart +++ /dev/null @@ -1,319 +0,0 @@ -import 'package:flutter/material.dart'; - -class AppTheme { - final Color? appBarColor; - final Color? backArrowColor; - final Color? backgroundColor; - final Color? replyDialogColor; - final Color? replyTitleColor; - final Color? textFieldBackgroundColor; - - final Color? outgoingChatBubbleColor; - - final Color? inComingChatBubbleColor; - - final Color? inComingChatBubbleTextColor; - final Color? repliedMessageColor; - final Color? repliedTitleTextColor; - final Color? textFieldTextColor; - - final Color? closeIconColor; - final Color? shareIconBackgroundColor; - - final Color? sendButtonColor; - final Color? cameraIconColor; - final Color? galleryIconColor; - final Color? recordIconColor; - final Color? stopIconColor; - final Color? swipeToReplyIconColor; - final Color? replyMessageColor; - final Color? appBarTitleTextStyle; - final Color? messageReactionBackGroundColor; - final Color? messageTimeIconColor; - final Color? messageTimeTextColor; - final Color? reactionPopupColor; - final Color? replyPopupColor; - final Color? replyPopupButtonColor; - final Color? replyPopupTopBorderColor; - final Color? reactionPopupTitleColor; - final Color? flashingCircleDarkColor; - final Color? flashingCircleBrightColor; - final Color? waveformBackgroundColor; - final Color? waveColor; - final Color? replyMicIconColor; - final Color? messageReactionBorderColor; - - final Color? verticalBarColor; - final Color? chatHeaderColor; - final Color? themeIconColor; - final Color? shareIconColor; - final double? elevation; - final Color? linkPreviewIncomingChatColor; - final Color? linkPreviewOutgoingChatColor; - final TextStyle? linkPreviewIncomingTitleStyle; - final TextStyle? linkPreviewOutgoingTitleStyle; - final TextStyle? incomingChatLinkTitleStyle; - final TextStyle? outgoingChatLinkTitleStyle; - final TextStyle? outgoingChatLinkBodyStyle; - final TextStyle? incomingChatLinkBodyStyle; - - AppTheme({ - this.cameraIconColor, - this.galleryIconColor, - this.flashingCircleDarkColor, - this.flashingCircleBrightColor, - this.outgoingChatLinkBodyStyle, - this.incomingChatLinkBodyStyle, - this.incomingChatLinkTitleStyle, - this.outgoingChatLinkTitleStyle, - this.linkPreviewOutgoingChatColor, - this.linkPreviewIncomingChatColor, - this.linkPreviewIncomingTitleStyle, - this.linkPreviewOutgoingTitleStyle, - this.repliedTitleTextColor, - this.swipeToReplyIconColor, - this.textFieldTextColor, - this.reactionPopupColor, - this.replyPopupButtonColor, - this.replyPopupTopBorderColor, - this.reactionPopupTitleColor, - this.appBarColor, - this.backArrowColor, - this.backgroundColor, - this.replyDialogColor, - this.replyTitleColor, - this.textFieldBackgroundColor, - this.outgoingChatBubbleColor, - this.inComingChatBubbleColor, - this.inComingChatBubbleTextColor, - this.repliedMessageColor, - this.closeIconColor, - this.shareIconBackgroundColor, - this.sendButtonColor, - this.replyMessageColor, - this.appBarTitleTextStyle, - this.messageReactionBackGroundColor, - this.messageReactionBorderColor, - this.verticalBarColor, - this.chatHeaderColor, - this.themeIconColor, - this.shareIconColor, - this.elevation, - this.messageTimeIconColor, - this.messageTimeTextColor, - this.replyPopupColor, - this.recordIconColor, - this.stopIconColor, - this.waveformBackgroundColor, - this.waveColor, - this.replyMicIconColor, - }); -} - -class DarkTheme extends AppTheme { - DarkTheme({ - Color flashingCircleDarkColor = Colors.grey, - Color flashingCircleBrightColor = const Color(0xffeeeeee), - TextStyle incomingChatLinkTitleStyle = const TextStyle(color: Colors.black), - TextStyle outgoingChatLinkTitleStyle = const TextStyle(color: Colors.white), - TextStyle outgoingChatLinkBodyStyle = const TextStyle(color: Colors.white), - TextStyle incomingChatLinkBodyStyle = const TextStyle(color: Colors.white), - double elevation = 1, - Color repliedTitleTextColor = Colors.white, - Color? swipeToReplyIconColor = Colors.white, - Color textFieldTextColor = Colors.white, - Color appBarColor = const Color(0xff1d1b25), - Color backArrowColor = Colors.white, - Color backgroundColor = const Color(0xff272336), - Color replyDialogColor = const Color(0xff272336), - Color linkPreviewOutgoingChatColor = const Color(0xff272336), - Color linkPreviewIncomingChatColor = const Color(0xff9f85ff), - TextStyle linkPreviewIncomingTitleStyle = const TextStyle(), - TextStyle linkPreviewOutgoingTitleStyle = const TextStyle(), - Color replyTitleColor = Colors.white, - Color textFieldBackgroundColor = const Color(0xff383152), - Color outgoingChatBubbleColor = const Color(0xff9f85ff), - Color inComingChatBubbleColor = const Color(0xff383152), - Color reactionPopupColor = const Color(0xff383152), - Color replyPopupColor = const Color(0xff383152), - Color replyPopupButtonColor = Colors.white, - Color replyPopupTopBorderColor = Colors.black54, - Color reactionPopupTitleColor = Colors.white, - Color inComingChatBubbleTextColor = Colors.white, - Color repliedMessageColor = const Color(0xff9f85ff), - Color closeIconColor = Colors.white, - Color shareIconBackgroundColor = const Color(0xff383152), - Color sendButtonColor = Colors.white, - Color cameraIconColor = const Color(0xff757575), - Color galleryIconColor = const Color(0xff757575), - Color recorderIconColor = const Color(0xff757575), - Color stopIconColor = const Color(0xff757575), - Color replyMessageColor = Colors.grey, - Color appBarTitleTextStyle = Colors.white, - Color messageReactionBackGroundColor = const Color(0xff383152), - Color messageReactionBorderColor = const Color(0xff272336), - Color verticalBarColor = const Color(0xff383152), - Color chatHeaderColor = Colors.white, - Color themeIconColor = Colors.white, - Color shareIconColor = Colors.white, - Color messageTimeIconColor = Colors.white, - Color messageTimeTextColor = Colors.white, - Color waveformBackgroundColor = const Color(0xff383152), - Color waveColor = Colors.white, - Color replyMicIconColor = Colors.white, - }) : super( - closeIconColor: closeIconColor, - verticalBarColor: verticalBarColor, - textFieldBackgroundColor: textFieldBackgroundColor, - replyTitleColor: replyTitleColor, - replyDialogColor: replyDialogColor, - backgroundColor: backgroundColor, - appBarColor: appBarColor, - appBarTitleTextStyle: appBarTitleTextStyle, - backArrowColor: backArrowColor, - chatHeaderColor: chatHeaderColor, - inComingChatBubbleColor: inComingChatBubbleColor, - inComingChatBubbleTextColor: inComingChatBubbleTextColor, - messageReactionBackGroundColor: messageReactionBackGroundColor, - messageReactionBorderColor: messageReactionBorderColor, - outgoingChatBubbleColor: outgoingChatBubbleColor, - repliedMessageColor: repliedMessageColor, - replyMessageColor: replyMessageColor, - sendButtonColor: sendButtonColor, - shareIconBackgroundColor: shareIconBackgroundColor, - themeIconColor: themeIconColor, - shareIconColor: shareIconColor, - elevation: elevation, - messageTimeIconColor: messageTimeIconColor, - messageTimeTextColor: messageTimeTextColor, - textFieldTextColor: textFieldTextColor, - repliedTitleTextColor: repliedTitleTextColor, - swipeToReplyIconColor: swipeToReplyIconColor, - reactionPopupColor: reactionPopupColor, - replyPopupColor: replyPopupColor, - replyPopupButtonColor: replyPopupButtonColor, - replyPopupTopBorderColor: replyPopupTopBorderColor, - reactionPopupTitleColor: reactionPopupTitleColor, - linkPreviewOutgoingChatColor: linkPreviewOutgoingChatColor, - linkPreviewIncomingChatColor: linkPreviewIncomingChatColor, - linkPreviewIncomingTitleStyle: linkPreviewIncomingTitleStyle, - linkPreviewOutgoingTitleStyle: linkPreviewOutgoingTitleStyle, - incomingChatLinkBodyStyle: incomingChatLinkBodyStyle, - incomingChatLinkTitleStyle: incomingChatLinkTitleStyle, - outgoingChatLinkBodyStyle: outgoingChatLinkBodyStyle, - outgoingChatLinkTitleStyle: outgoingChatLinkTitleStyle, - flashingCircleDarkColor: flashingCircleDarkColor, - flashingCircleBrightColor: flashingCircleBrightColor, - galleryIconColor: galleryIconColor, - cameraIconColor: cameraIconColor, - recordIconColor: recorderIconColor, - stopIconColor: stopIconColor, - waveformBackgroundColor: waveformBackgroundColor, - waveColor: waveColor, - replyMicIconColor: replyMicIconColor, - ); -} - -class LightTheme extends AppTheme { - LightTheme({ - Color flashingCircleDarkColor = const Color(0xffEE5366), - Color flashingCircleBrightColor = const Color(0xffFCD8DC), - TextStyle incomingChatLinkTitleStyle = const TextStyle(color: Colors.black), - TextStyle outgoingChatLinkTitleStyle = const TextStyle(color: Colors.black), - TextStyle outgoingChatLinkBodyStyle = const TextStyle(color: Colors.grey), - TextStyle incomingChatLinkBodyStyle = const TextStyle(color: Colors.grey), - Color textFieldTextColor = Colors.black, - Color repliedTitleTextColor = Colors.black, - Color swipeToReplyIconColor = Colors.black, - double elevation = 2, - Color appBarColor = Colors.white, - Color backArrowColor = const Color(0xffEE5366), - Color backgroundColor = const Color(0xffeeeeee), - Color replyDialogColor = const Color(0xffFCD8DC), - Color linkPreviewOutgoingChatColor = const Color(0xffFCD8DC), - Color linkPreviewIncomingChatColor = const Color(0xFFEEEEEE), - TextStyle linkPreviewIncomingTitleStyle = const TextStyle(), - TextStyle linkPreviewOutgoingTitleStyle = const TextStyle(), - Color replyTitleColor = const Color(0xffEE5366), - Color reactionPopupColor = Colors.white, - Color replyPopupColor = Colors.white, - Color replyPopupButtonColor = Colors.black, - Color replyPopupTopBorderColor = const Color(0xFFBDBDBD), - Color reactionPopupTitleColor = Colors.grey, - Color textFieldBackgroundColor = Colors.white, - Color outgoingChatBubbleColor = const Color(0xffEE5366), - Color inComingChatBubbleColor = Colors.white, - Color inComingChatBubbleTextColor = Colors.black, - Color repliedMessageColor = const Color(0xffff8aad), - Color closeIconColor = Colors.black, - Color shareIconBackgroundColor = const Color(0xFFE0E0E0), - Color sendButtonColor = const Color(0xffEE5366), - Color cameraIconColor = Colors.black, - Color galleryIconColor = Colors.black, - Color replyMessageColor = Colors.black, - Color appBarTitleTextStyle = Colors.black, - Color messageReactionBackGroundColor = const Color(0xFFEEEEEE), - Color messageReactionBorderColor = Colors.white, - Color verticalBarColor = const Color(0xffEE5366), - Color chatHeaderColor = Colors.black, - Color themeIconColor = Colors.black, - Color shareIconColor = Colors.black, - Color messageTimeIconColor = Colors.black, - Color messageTimeTextColor = Colors.black, - Color recorderIconColor = Colors.black, - Color stopIconColor = Colors.black, - Color waveformBackgroundColor = Colors.white, - Color waveColor = Colors.black, - Color replyMicIconColor = Colors.black, - }) : super( - reactionPopupColor: reactionPopupColor, - closeIconColor: closeIconColor, - verticalBarColor: verticalBarColor, - textFieldBackgroundColor: textFieldBackgroundColor, - replyTitleColor: replyTitleColor, - replyDialogColor: replyDialogColor, - backgroundColor: backgroundColor, - appBarColor: appBarColor, - appBarTitleTextStyle: appBarTitleTextStyle, - backArrowColor: backArrowColor, - chatHeaderColor: chatHeaderColor, - inComingChatBubbleColor: inComingChatBubbleColor, - inComingChatBubbleTextColor: inComingChatBubbleTextColor, - messageReactionBackGroundColor: messageReactionBackGroundColor, - messageReactionBorderColor: messageReactionBorderColor, - outgoingChatBubbleColor: outgoingChatBubbleColor, - repliedMessageColor: repliedMessageColor, - replyMessageColor: replyMessageColor, - sendButtonColor: sendButtonColor, - shareIconBackgroundColor: shareIconBackgroundColor, - themeIconColor: themeIconColor, - shareIconColor: shareIconColor, - elevation: elevation, - messageTimeIconColor: messageTimeIconColor, - messageTimeTextColor: messageTimeTextColor, - textFieldTextColor: textFieldTextColor, - repliedTitleTextColor: repliedTitleTextColor, - swipeToReplyIconColor: swipeToReplyIconColor, - replyPopupColor: replyPopupColor, - replyPopupButtonColor: replyPopupButtonColor, - replyPopupTopBorderColor: replyPopupTopBorderColor, - reactionPopupTitleColor: reactionPopupTitleColor, - linkPreviewOutgoingChatColor: linkPreviewOutgoingChatColor, - linkPreviewIncomingChatColor: linkPreviewIncomingChatColor, - linkPreviewIncomingTitleStyle: linkPreviewIncomingTitleStyle, - linkPreviewOutgoingTitleStyle: linkPreviewOutgoingTitleStyle, - incomingChatLinkBodyStyle: incomingChatLinkBodyStyle, - incomingChatLinkTitleStyle: incomingChatLinkTitleStyle, - outgoingChatLinkBodyStyle: outgoingChatLinkBodyStyle, - outgoingChatLinkTitleStyle: outgoingChatLinkTitleStyle, - flashingCircleDarkColor: flashingCircleDarkColor, - flashingCircleBrightColor: flashingCircleBrightColor, - galleryIconColor: galleryIconColor, - cameraIconColor: cameraIconColor, - stopIconColor: stopIconColor, - recordIconColor: recorderIconColor, - waveformBackgroundColor: waveformBackgroundColor, - waveColor: waveColor, - replyMicIconColor: replyMicIconColor, - ); -} diff --git a/example/pubspec.yaml b/example/pubspec.yaml deleted file mode 100644 index 2f4aa5ff..00000000 --- a/example/pubspec.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: example -description: Flutter ChatView Showcasing Example. - -publish_to: 'none' - -version: 1.0.0+1 - -environment: - sdk: '>=3.0.0-0 <4.0.0' - -dependencies: - flutter: - sdk: flutter - cupertino_icons: ^1.0.5 - chatview: - path: ../ - -dev_dependencies: - flutter_test: - sdk: flutter - flutter_lints: ^2.0.1 - -flutter: - uses-material-design: true diff --git a/example/test/widget_test.dart b/example/test/widget_test.dart deleted file mode 100644 index a0e71137..00000000 --- a/example/test/widget_test.dart +++ /dev/null @@ -1,30 +0,0 @@ -// This is a basic Flutter widget test. -// -// To perform an interaction with a widget in your test, use the WidgetTester -// utility that Flutter provides. For example, you can send tap and scroll -// gestures. You can also use WidgetTester to find child widgets in the widget -// tree, read text, and verify that the values of widget properties are correct. - -import 'package:flutter/material.dart'; -import 'package:flutter_test/flutter_test.dart'; - -import 'package:example/main.dart'; - -void main() { - testWidgets('Counter increments smoke test', (WidgetTester tester) async { - // Build our app and trigger a frame. - await tester.pumpWidget(const Example()); - - // Verify that our counter starts at 0. - expect(find.text('0'), findsOneWidget); - expect(find.text('1'), findsNothing); - - // Tap the '+' icon and trigger a frame. - await tester.tap(find.byIcon(Icons.add)); - await tester.pump(); - - // Verify that our counter has incremented. - expect(find.text('0'), findsNothing); - expect(find.text('1'), findsOneWidget); - }); -} diff --git a/example/web/favicon.png b/example/web/favicon.png deleted file mode 100644 index 6510eef5..00000000 Binary files a/example/web/favicon.png and /dev/null differ diff --git a/example/web/icons/Icon-192.png b/example/web/icons/Icon-192.png deleted file mode 100644 index 1373539f..00000000 Binary files a/example/web/icons/Icon-192.png and /dev/null differ diff --git a/example/web/icons/Icon-512.png b/example/web/icons/Icon-512.png deleted file mode 100644 index 04a746d1..00000000 Binary files a/example/web/icons/Icon-512.png and /dev/null differ diff --git a/example/web/icons/Icon-maskable-192.png b/example/web/icons/Icon-maskable-192.png deleted file mode 100644 index 1373539f..00000000 Binary files a/example/web/icons/Icon-maskable-192.png and /dev/null differ diff --git a/example/web/icons/Icon-maskable-512.png b/example/web/icons/Icon-maskable-512.png deleted file mode 100644 index 04a746d1..00000000 Binary files a/example/web/icons/Icon-maskable-512.png and /dev/null differ diff --git a/example/web/index.html b/example/web/index.html deleted file mode 100644 index 0da96973..00000000 --- a/example/web/index.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - example - - - - - - - - - - diff --git a/example/web/manifest.json b/example/web/manifest.json deleted file mode 100644 index afc16869..00000000 --- a/example/web/manifest.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "example", - "short_name": "example", - "start_url": ".", - "display": "standalone", - "background_color": "#0175C2", - "theme_color": "#0175C2", - "description": "Flutter ChatView Showcasing Example.", - "orientation": "portrait-primary", - "prefer_related_applications": false, - "icons": [ - { - "src": "icons/Icon-192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "icons/Icon-512.png", - "sizes": "512x512", - "type": "image/png" - }, - { - "src": "icons/Icon-maskable-192.png", - "sizes": "192x192", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "icons/Icon-maskable-512.png", - "sizes": "512x512", - "type": "image/png", - "purpose": "maskable" - } - ] -} diff --git a/lib/src/controller/chat_controller.dart b/lib/src/controller/chat_controller.dart index 6583577a..5d740c19 100644 --- a/lib/src/controller/chat_controller.dart +++ b/lib/src/controller/chat_controller.dart @@ -74,11 +74,15 @@ class ChatController { /// Provides current user which is sending messages. final ChatUser currentUser; + // Provides a callback function to be called when changing reactions on a message. + final Function(Message)? setReactionCallback; + ChatController({ required this.initialMessageList, required this.scrollController, required this.otherUsers, required this.currentUser, + this.setReactionCallback, }); /// Represents message stream of chat @@ -143,6 +147,8 @@ class ChatController { status: message.status, ); if (!messageStreamController.isClosed) { + setReactionCallback?.call(initialMessageList[indexOfMessage]); + messageStreamController.sink.add(initialMessageList); } } diff --git a/lib/src/widgets/chat_message_sending_to_sent_animation.dart b/lib/src/widgets/chat_message_sending_to_sent_animation.dart index b140b136..96264f23 100644 --- a/lib/src/widgets/chat_message_sending_to_sent_animation.dart +++ b/lib/src/widgets/chat_message_sending_to_sent_animation.dart @@ -22,7 +22,7 @@ class _SendingMessageAnimatingWidgetState _attachOnStatusChangeListeners() { if (isSent) { - Future.delayed(const Duration(milliseconds: 400), () { + Future.delayed(const Duration(milliseconds: 200), () { isVisible = true; if (mounted) { setState(() {}); @@ -34,13 +34,22 @@ class _SendingMessageAnimatingWidgetState @override Widget build(BuildContext context) { _attachOnStatusChangeListeners(); - return AnimatedPadding( - curve: Curves.easeInOutExpo, - duration: const Duration(seconds: 1), - padding: EdgeInsets.only(right: isSent ? 5 : 8.0, bottom: isSent ? 8 : 2), - child: isVisible - ? const SizedBox() - : Transform.rotate( + + return AnimatedSize( + duration: const Duration(milliseconds: 200), + child: SizedBox( + width: !isVisible ? 16 : 0, + child: TweenAnimationBuilder( + duration: const Duration(milliseconds: 600), + tween: Tween(begin: 0, end: isVisible ? 100 : 0), + builder: (context, value, child) { + return Transform.translate( + offset: Offset(value, 0), + child: child, + ); + }, + child: Transform.rotate( + key: const ValueKey(1), angle: !isSent ? pi / 10 : -pi / 12, child: const Padding( padding: EdgeInsets.only( @@ -50,9 +59,11 @@ class _SendingMessageAnimatingWidgetState child: Icon( Icons.send, color: Colors.grey, - size: 12, + size: 20, ), )), + ), + ), ); } } diff --git a/lib/src/widgets/message_view.dart b/lib/src/widgets/message_view.dart index 2d1215f5..e57f90b3 100644 --- a/lib/src/widgets/message_view.dart +++ b/lib/src/widgets/message_view.dart @@ -20,14 +20,14 @@ * SOFTWARE. */ import 'package:chatview/chatview.dart'; +import 'package:chatview/src/extensions/extensions.dart'; import 'package:chatview/src/widgets/chat_view_inherited_widget.dart'; import 'package:flutter/material.dart'; -import 'package:chatview/src/extensions/extensions.dart'; import '../utils/constants/constants.dart'; import 'image_message_view.dart'; -import 'text_message_view.dart'; import 'reaction_widget.dart'; +import 'text_message_view.dart'; import 'voice_message_view.dart'; class MessageView extends StatefulWidget { @@ -239,6 +239,9 @@ class _MessageViewState extends State ValueListenableBuilder( valueListenable: widget.message.statusNotifier, builder: (context, value, child) { + Widget childWidget = const SizedBox( + key: ValueKey(0), + ); if (widget.isMessageBySender && widget.controller?.initialMessageList.last.id == widget.message.id && @@ -247,8 +250,8 @@ class _MessageViewState extends State ?.featureActiveConfig .lastSeenAgoBuilderVisibility ?? true) { - return widget.outgoingChatBubbleConfig?.receiptsWidgetConfig - ?.lastSeenAgoBuilder + childWidget = widget.outgoingChatBubbleConfig + ?.receiptsWidgetConfig?.lastSeenAgoBuilder ?.call( widget.message, applicationDateFormatter( @@ -256,9 +259,19 @@ class _MessageViewState extends State lastSeenAgoBuilder(widget.message, applicationDateFormatter(widget.message.createdAt)); } - return const SizedBox(); } - return const SizedBox(); + return AnimatedSize( + duration: const Duration(milliseconds: 300), + child: AnimatedSwitcher( + reverseDuration: const Duration(seconds: 0), + duration: const Duration(milliseconds: 600), + transitionBuilder: (child, animation) => FadeTransition( + opacity: animation, + child: child, + ), + child: childWidget, + ), + ); }, ) ], diff --git a/lib/src/widgets/text_message_view.dart b/lib/src/widgets/text_message_view.dart index 4dacc90b..351cb975 100644 --- a/lib/src/widgets/text_message_view.dart +++ b/lib/src/widgets/text_message_view.dart @@ -19,10 +19,9 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ -import 'package:flutter/material.dart'; - import 'package:chatview/src/extensions/extensions.dart'; import 'package:chatview/src/models/models.dart'; +import 'package:flutter/material.dart'; import '../utils/constants/constants.dart'; import 'link_preview.dart'; @@ -85,6 +84,10 @@ class TextMessageView extends StatelessWidget { EdgeInsets.fromLTRB( 5, 0, 6, message.reaction.reactions.isNotEmpty ? 15 : 2), decoration: BoxDecoration( + // gradient: const LinearGradient( + // colors: [Colors.red, Colors.white], + // begin: Alignment.topCenter, + // end: Alignment.bottomCenter), color: highlightMessage ? highlightColor : _color, borderRadius: _borderRadius(textMessage), ),