diff --git a/Navaneeth_K_U/APK/app-release.apk b/Navaneeth_K_U/APK/app-release.apk new file mode 100644 index 0000000..da90ef8 Binary files /dev/null and b/Navaneeth_K_U/APK/app-release.apk differ diff --git a/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133700.png b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133700.png new file mode 100644 index 0000000..95f96f4 Binary files /dev/null and b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133700.png differ diff --git a/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133732.png b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133732.png new file mode 100644 index 0000000..f60ee4e Binary files /dev/null and b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133732.png differ diff --git a/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133746.png b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133746.png new file mode 100644 index 0000000..d763d1a Binary files /dev/null and b/Navaneeth_K_U/Screenshots/Screenshot 2021-12-19 133746.png differ diff --git a/Navaneeth_K_U/newsapp/.gitignore b/Navaneeth_K_U/newsapp/.gitignore new file mode 100644 index 0000000..0fa6b67 --- /dev/null +++ b/Navaneeth_K_U/newsapp/.gitignore @@ -0,0 +1,46 @@ +# 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 +lib/generated_plugin_registrant.dart + +# 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 diff --git a/Navaneeth_K_U/newsapp/.metadata b/Navaneeth_K_U/newsapp/.metadata new file mode 100644 index 0000000..cb12308 --- /dev/null +++ b/Navaneeth_K_U/newsapp/.metadata @@ -0,0 +1,10 @@ +# 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: 3595343e20a61ff16d14e8ecc25f364276bb1b8b + channel: stable + +project_type: app diff --git a/Navaneeth_K_U/newsapp/README.md b/Navaneeth_K_U/newsapp/README.md new file mode 100644 index 0000000..aa8d750 --- /dev/null +++ b/Navaneeth_K_U/newsapp/README.md @@ -0,0 +1,16 @@ +# newsapp + +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/Navaneeth_K_U/newsapp/analysis_options.yaml b/Navaneeth_K_U/newsapp/analysis_options.yaml new file mode 100644 index 0000000..61b6c4d --- /dev/null +++ b/Navaneeth_K_U/newsapp/analysis_options.yaml @@ -0,0 +1,29 @@ +# 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/Navaneeth_K_U/newsapp/android/.gitignore b/Navaneeth_K_U/newsapp/android/.gitignore new file mode 100644 index 0000000..6f56801 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/.gitignore @@ -0,0 +1,13 @@ +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/Navaneeth_K_U/newsapp/android/app/build.gradle b/Navaneeth_K_U/newsapp/android/app/build.gradle new file mode 100644 index 0000000..ad168a3 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/build.gradle @@ -0,0 +1,68 @@ +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 30 + + 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.example.newsapp" + minSdkVersion 16 + targetSdkVersion 30 + 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/Navaneeth_K_U/newsapp/android/app/src/debug/AndroidManifest.xml b/Navaneeth_K_U/newsapp/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..bb5361c --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/AndroidManifest.xml b/Navaneeth_K_U/newsapp/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..c11c0df --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/kotlin/com/example/newsapp/MainActivity.kt b/Navaneeth_K_U/newsapp/android/app/src/main/kotlin/com/example/newsapp/MainActivity.kt new file mode 100644 index 0000000..afaabb1 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/kotlin/com/example/newsapp/MainActivity.kt @@ -0,0 +1,6 @@ +package com.example.newsapp + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() { +} diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable-v21/launch_background.xml b/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable/launch_background.xml b/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000..db77bb4 Binary files /dev/null and b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000..17987b7 Binary files /dev/null and b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000..09d4391 Binary files /dev/null and b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000..d5f1c8d Binary files /dev/null and b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..4d6372e Binary files /dev/null and b/Navaneeth_K_U/newsapp/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/values-night/styles.xml b/Navaneeth_K_U/newsapp/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000..449a9f9 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/main/res/values/styles.xml b/Navaneeth_K_U/newsapp/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..d74aa35 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/Navaneeth_K_U/newsapp/android/app/src/profile/AndroidManifest.xml b/Navaneeth_K_U/newsapp/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..bb5361c --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/Navaneeth_K_U/newsapp/android/build.gradle b/Navaneeth_K_U/newsapp/android/build.gradle new file mode 100644 index 0000000..ed45c65 --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/build.gradle @@ -0,0 +1,29 @@ +buildscript { + ext.kotlin_version = '1.3.50' + repositories { + google() + mavenCentral() + } + + dependencies { + classpath 'com.android.tools.build:gradle:4.1.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') +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/Navaneeth_K_U/newsapp/android/gradle.properties b/Navaneeth_K_U/newsapp/android/gradle.properties new file mode 100644 index 0000000..94adc3a --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx1536M +android.useAndroidX=true +android.enableJetifier=true diff --git a/Navaneeth_K_U/newsapp/android/gradle/wrapper/gradle-wrapper.properties b/Navaneeth_K_U/newsapp/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..bc6a58a --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#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-6.7-all.zip diff --git a/Navaneeth_K_U/newsapp/android/settings.gradle b/Navaneeth_K_U/newsapp/android/settings.gradle new file mode 100644 index 0000000..44e62bc --- /dev/null +++ b/Navaneeth_K_U/newsapp/android/settings.gradle @@ -0,0 +1,11 @@ +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/Navaneeth_K_U/newsapp/assets/covidzero.jpg b/Navaneeth_K_U/newsapp/assets/covidzero.jpg new file mode 100644 index 0000000..f3c7152 Binary files /dev/null and b/Navaneeth_K_U/newsapp/assets/covidzero.jpg differ diff --git a/Navaneeth_K_U/newsapp/assets/diamond.jpg b/Navaneeth_K_U/newsapp/assets/diamond.jpg new file mode 100644 index 0000000..6c093cd Binary files /dev/null and b/Navaneeth_K_U/newsapp/assets/diamond.jpg differ diff --git a/Navaneeth_K_U/newsapp/assets/nanopolymer.jpg b/Navaneeth_K_U/newsapp/assets/nanopolymer.jpg new file mode 100644 index 0000000..055dffc Binary files /dev/null and b/Navaneeth_K_U/newsapp/assets/nanopolymer.jpg differ diff --git a/Navaneeth_K_U/newsapp/assets/profile.jpg b/Navaneeth_K_U/newsapp/assets/profile.jpg new file mode 100644 index 0000000..de22778 Binary files /dev/null and b/Navaneeth_K_U/newsapp/assets/profile.jpg differ diff --git a/Navaneeth_K_U/newsapp/ios/.gitignore b/Navaneeth_K_U/newsapp/ios/.gitignore new file mode 100644 index 0000000..7a7f987 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/.gitignore @@ -0,0 +1,34 @@ +**/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/Navaneeth_K_U/newsapp/ios/Flutter/AppFrameworkInfo.plist b/Navaneeth_K_U/newsapp/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..8d4492f --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 9.0 + + diff --git a/Navaneeth_K_U/newsapp/ios/Flutter/Debug.xcconfig b/Navaneeth_K_U/newsapp/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/Navaneeth_K_U/newsapp/ios/Flutter/Release.xcconfig b/Navaneeth_K_U/newsapp/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.pbxproj b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..ff88f1a --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,471 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + 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 */; }; +/* 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 = ""; }; + 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 = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.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 = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 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 */, + ); + 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 = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + 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 = 1020; + 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; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + 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"; + }; +/* 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 = 9.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)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.newsapp; + 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 = 9.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 = 9.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)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.newsapp; + 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)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.newsapp; + 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/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..a28140c --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/contents.xcworkspacedata b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner/AppDelegate.swift b/Navaneeth_K_U/newsapp/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..70693e4 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +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/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "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/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000..dc9ada4 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png new file mode 100644 index 0000000..28c6bf0 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000..2ccbfd9 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000..f091b6b Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000..4cde121 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000..d0ef06e Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png new file mode 100644 index 0000000..dcdc230 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png new file mode 100644 index 0000000..2ccbfd9 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000..c8f9ed8 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000..a6d6b86 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000..a6d6b86 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000..75b2d16 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000..c4df70d Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png new file mode 100644 index 0000000..6a84f41 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000..d0e1f58 Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 0000000..0bedcf2 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "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/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000..9da19ea Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000..9da19ea Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000..9da19ea Binary files /dev/null and b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png differ diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# 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/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/LaunchScreen.storyboard b/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/Main.storyboard b/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Info.plist b/Navaneeth_K_U/newsapp/ios/Runner/Info.plist new file mode 100644 index 0000000..ad66635 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + newsapp + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/Navaneeth_K_U/newsapp/ios/Runner/Runner-Bridging-Header.h b/Navaneeth_K_U/newsapp/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/Navaneeth_K_U/newsapp/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/Navaneeth_K_U/newsapp/lib/api/news.dart b/Navaneeth_K_U/newsapp/lib/api/news.dart new file mode 100644 index 0000000..7190436 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/api/news.dart @@ -0,0 +1,18 @@ +import 'dart:convert'; + +import 'package:http/http.dart' as http; +import 'package:portfolio/models/article_model.dart'; + +class News { + String url = + 'https://newsapi.org/v2/everything?domains=wsj.com&apiKey=629b74418a4d40ee9612b193734c0827'; + Future
getNews() async { + var response = await http.get(Uri.parse(url)); + if (response.statusCode == 200) { + print(response.body); + return Article.fromJson(jsonDecode(response.body)); + } else { + throw Exception("API not called succesfully"); + } + } +} diff --git a/Navaneeth_K_U/newsapp/lib/main.dart b/Navaneeth_K_U/newsapp/lib/main.dart new file mode 100644 index 0000000..57bd124 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/main.dart @@ -0,0 +1,23 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/screen/config/themes/themes.dart'; +import 'package:portfolio/screen/details/detailed_news.dart'; +import 'screen/home/home_page.dart'; +import 'screen/details/detailed_news.dart'; +import 'package:http/http.dart'; + +void main() { + runApp(MyApp()); +} + +class MyApp extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Flutter Demo', + theme: themes(), + debugShowCheckedModeBanner: false, + routes: {DetailedNews.routeName: (ctx) => DetailedNews()}, + home: Homepage(), + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/models/article_model.dart b/Navaneeth_K_U/newsapp/lib/models/article_model.dart new file mode 100644 index 0000000..cc7fe3f --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/models/article_model.dart @@ -0,0 +1,98 @@ +// To parse this JSON data, do +// +// final article = articleFromJson(jsonString); + +import 'dart:convert'; + +Article articleFromJson(String str) => Article.fromJson(json.decode(str)); + +String articleToJson(Article data) => json.encode(data.toJson()); + +class Article { + Article({ + required this.status, + required this.totalResults, + required this.articles, + }); + + final String status; + final int totalResults; + final List articles; + + factory Article.fromJson(Map json) => Article( + status: json["status"], + totalResults: json["totalResults"], + articles: List.from( + json["articles"].map((x) => ArticleElement.fromJson(x))), + ); + + Map toJson() => { + "status": status, + "totalResults": totalResults, + "articles": List.from(articles.map((x) => x.toJson())), + }; +} + +class ArticleElement { + ArticleElement({ + required this.source, + required this.author, + required this.title, + required this.description, + required this.url, + required this.urlToImage, + required this.publishedAt, + required this.content, + }); + + final Source source; + final String author; + final String title; + final String description; + final String url; + final String urlToImage; + final DateTime publishedAt; + final String content; + + factory ArticleElement.fromJson(Map json) => ArticleElement( + source: Source.fromJson(json["source"]), + author: json["author"] == null ? null : json["author"], + title: json["title"], + description: json["description"], + url: json["url"], + urlToImage: json["urlToImage"] == null ? null : json["urlToImage"], + publishedAt: DateTime.parse(json["publishedAt"]), + content: json["content"], + ); + + Map toJson() => { + "source": source.toJson(), + "author": author == null ? null : author, + "title": title, + "description": description, + "url": url, + "urlToImage": urlToImage == null ? null : urlToImage, + "publishedAt": publishedAt.toIso8601String(), + "content": content, + }; +} + +class Source { + Source({ + required this.id, + required this.name, + }); + + final String id; + final String name; + + factory Source.fromJson(Map json) => Source( + id: json["id"] == null ? null : json["id"], + name: json["name"], + ); + + Map toJson() => { + "id": id == null ? null : id, + "name": name, + }; +} diff --git a/Navaneeth_K_U/newsapp/lib/portfolio.dart b/Navaneeth_K_U/newsapp/lib/portfolio.dart new file mode 100644 index 0000000..a9677a8 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/portfolio.dart @@ -0,0 +1,189 @@ +import 'package:flutter/material.dart'; + +void main() => runApp(const MaterialApp( + home: Profile(), +)); + +class Profile extends StatelessWidget { + const Profile({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Colors.blue[800], + appBar: AppBar( + title: const Text('Profile'), + centerTitle: true, + backgroundColor: Colors.blue[900], + elevation: 0.0, + ), + body: Container( + padding: const EdgeInsets.fromLTRB(30.0, 40.0, 30.0, 0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Center( + child: CircleAvatar( + radius: 60.0, + backgroundImage: AssetImage('assets/profile.jpg'), + ), + ), + const Divider( + color: Colors.white70, + height: 60.0, + ), + Row( + children: [ + Text('1500 Followers', + style: TextStyle( + color: Colors.lightBlue[200], + letterSpacing: 2.0, + ), + + ), + const Spacer(), + Text('1000 Following', + style: TextStyle( + color: Colors.lightBlue[200], + letterSpacing: 2.0, + ), + ), + ], + ), + const SizedBox(height: 10.0), + const Text( + 'NAME', + style: TextStyle( + color: Colors.white70, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 10.0), + Text( + 'Navaneeth K U', + style: TextStyle( + color: Colors.lightBlue[200], + fontWeight: FontWeight.bold, + fontSize: 28.0, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 30.0), + const Text( + 'LOCATION', + style: TextStyle( + color: Colors.white70, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 10.0), + Text( + 'Kerala, India', + style: TextStyle( + color: Colors.lightBlue[200], + fontWeight: FontWeight.bold, + fontSize: 28.0, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 30.0), + const Text( + 'MOBILE NUMBER', + style: TextStyle( + color: Colors.white70, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 10.0), + Text( + '9876543210', + style: TextStyle( + color: Colors.lightBlue[200], + fontWeight: FontWeight.bold, + fontSize: 28.0, + letterSpacing: 2.0, + ), + ), + const SizedBox(height: 30.0), + Row( + children: const [ + Icon( + Icons.email, + color: Colors.white70, + ), + SizedBox(width: 10.0), + Text( + 'navaneethku1729@gmail.com', + style: TextStyle( + color: Colors.white70, + fontSize: 18.0, + letterSpacing: 1.0, + ), + ) + ], + ), + const SizedBox(height: 5.0), + Row( + children: const [ + Icon( + Icons.facebook, + color: Colors.white70, + ), + SizedBox(width: 10.0), + Text('Facebook', + style: TextStyle( + color: Colors.white70, + fontSize: 18.0, + letterSpacing: 1.0, + ), + ), + ], + ), + const SizedBox(height: 5.0), + Row( + children: const [ + Icon( + Icons.insert_chart, + color: Colors.white70, + ), + SizedBox(width: 10.0), + Text('LinkedIn', + style: TextStyle( + color: Colors.white70, + fontSize: 18.0, + letterSpacing: 1.0, + ), + ), + + ], + + ), + SizedBox(height: 5.0), + Row( + children: const [ + Icon( + Icons.format_list_bulleted, + color: Colors.white70, + ), + SizedBox(width: 10), + Text('GitHub', + style: TextStyle( + color: Colors.white70, + fontSize: 18.0, + letterSpacing: 1.0, + ), + ), + + ], + ), + + ], + + ), + + ), + + ); + + } +} \ No newline at end of file diff --git a/Navaneeth_K_U/newsapp/lib/screen/config/themes/themes.dart b/Navaneeth_K_U/newsapp/lib/screen/config/themes/themes.dart new file mode 100644 index 0000000..0ed6c68 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/config/themes/themes.dart @@ -0,0 +1,16 @@ +import 'package:flutter/material.dart'; +ThemeData themes() { + return ThemeData( + primarySwatch: Colors.blue, + textTheme: const TextTheme( + bodyText1: TextStyle(color: Colors.black54) + ), + primaryTextTheme: const TextTheme( + headline4: TextStyle(color:Colors.black54), + headline3: TextStyle(color:Colors.black54, fontWeight: FontWeight.w600), + headline5: TextStyle(color:Colors.black54), + headline6: TextStyle(color:Colors.black54, fontWeight: FontWeight.w600), + bodyText1: TextStyle(color:Colors.black54), + ) + ); +} \ No newline at end of file diff --git a/Navaneeth_K_U/newsapp/lib/screen/config/var/var.dart b/Navaneeth_K_U/newsapp/lib/screen/config/var/var.dart new file mode 100644 index 0000000..e69de29 diff --git a/Navaneeth_K_U/newsapp/lib/screen/details/detailed_news.dart b/Navaneeth_K_U/newsapp/lib/screen/details/detailed_news.dart new file mode 100644 index 0000000..b8486bb --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/details/detailed_news.dart @@ -0,0 +1,50 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/screen/home/widgets/main_bar.dart'; + +class DetailedNews extends StatelessWidget { + static const routeName = 'DetailedNews'; + + const DetailedNews({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + backgroundColor: Colors.white, + elevation: 0, + actions: const [Padding( + padding: EdgeInsets.all(4.0), + child: Icon(Icons.share, color: Colors.black,), + )], + leading: IconButton(onPressed: (){ + Navigator.of(context).pop(); + }, icon: const Icon(Icons.arrow_back_rounded, color: Colors.black,)), + ), + body: SafeArea( + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start , + children: [ + const Mainbar(), + const SizedBox(height: 10), + Column( + children: [ + Text('A new, 3D-printable polymer nanocomposite ink has incredible properties — and many applications in aerospace, medicine and electronics.', style: Theme.of(context).textTheme.headline6), + const SizedBox(height: 10), + Text('Mechanical engineering researchers at Michigan Technological University have created a way to make a 3D-printable nanocomposite polymeric ink that uses carbon nanotubes (CNTs) — known for their high tensile strength and lightness. This revolutionary ink could replace epoxies — and understanding why its properties are so fantastic is a first step toward its mass use.', style: Theme.of(context).textTheme.bodyText1), + Text('3D printing, also known as additive manufacturing, is more versatile and efficient than casting. It adds a material with precision, often in complex geometries, with considerably less excess to cut away. Adding low-dimensional nanomaterials such as CNTs, graphene, metal nanoparticles and quantum dots allows 3D-printed materials to adapt to external stimuli, giving them features such as electrical and thermal conductance, magnetism and electrochemical storage.',style: Theme.of(context).textTheme.bodyText1), + Text('But 3D printing using plastic, metal or something else entirely isn’t new. What Tech researchers have done differently is use polymer nanocomposites (made of epoxy, carbon nanotubes and nano-clay) and a printing process that doesn’t sacrifice functionality. The junction of material type and morphology — size, shape, structure — in polymer nanocomposite inks is the ultimate in form meeting function.',style: Theme.of(context).textTheme.bodyText1), + Text('The exploration of process, morphology and properties of polymeric inks is the subject of an article recently published in the journal Additive Manufacturing by Parisa Pour Shahid Saeed Abadi, an engineer who explores the interface of materials, mechanics and medicine, and graduate student Masoud Kasraie.',style: Theme.of(context).textTheme.bodyText1) + + ], + ), + + ], + ), + ), + )), + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/home_page.dart b/Navaneeth_K_U/newsapp/lib/screen/home/home_page.dart new file mode 100644 index 0000000..b0dd6ab --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/home_page.dart @@ -0,0 +1,28 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'widgets/category_list.dart'; +import 'widgets/custom_app_bar.dart'; +import 'package:portfolio/portfolio.dart'; +import 'widgets/custom_tile.dart'; +import 'widgets/recent_news.dart'; +import 'widgets/title_bar.dart'; + +class Homepage extends StatelessWidget { + @override + Widget build(BuildContext context) { + final screenWidth = MediaQuery.of(context).size.width; + return Scaffold( + body: SafeArea( + child: Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + CustomAppBar(), + TitleBar(screenWidth: screenWidth), + CategoryList(), + Recentnews(screenWidth: screenWidth), + ], + ), + ))); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/category_list.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/category_list.dart new file mode 100644 index 0000000..5069354 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/category_list.dart @@ -0,0 +1,33 @@ +import 'package:flutter/material.dart'; + +class CategoryList extends StatelessWidget { + const CategoryList({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 50, + child: Expanded( + child: ListView( + scrollDirection: Axis.horizontal, + children: const [ + Padding( + padding: EdgeInsets.all(8.0), + child: Text('All'), + ), + Padding( + padding: EdgeInsets.all(8.0), + child: Text('Sports'), + ), + Padding( + padding: EdgeInsets.all(8.0), + child: Text('Global'), + ), + ], + ), + ), + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_app_bar.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_app_bar.dart new file mode 100644 index 0000000..c10bd96 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_app_bar.dart @@ -0,0 +1,35 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/portfolio.dart'; +class CustomAppBar extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 8), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + IconButton( + icon: Image.asset('assets/profile.jpg'), + iconSize: 50, + onPressed: () { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const Profile()), + ); + }, + ), + const SizedBox(width: 10), + Text( + '07 Oct, 2021', + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ), + Icon(Icons.search, size: 30), + ], + ), + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_tile.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_tile.dart new file mode 100644 index 0000000..1021143 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/custom_tile.dart @@ -0,0 +1,104 @@ +import 'package:flutter/material.dart'; + +class Customtile extends StatefulWidget { + const Customtile({ + Key? key, + required this.screenWidth, + required this.title, + required this.description, + required this.url, + required this.urlToImage, + }) : super(key: key); + + final double screenWidth; + //final String author; + final String title; + final String description; + final String url; + final String urlToImage; + + @override + State createState() => _CustomtileState(); +} + +class _CustomtileState extends State { + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(vertical: 8), + child: Column( + children: [ + ClipRRect( + borderRadius: BorderRadius.circular(14), + child: Image.network(widget.urlToImage)), + ListTile( + title: Text(widget.title), + subtitle: Text(widget.description), + ), + ], + ), +/* child: Row( + children: [ + Container( + height: 80, + width: 100, + child: ClipRRect( + borderRadius: BorderRadius.circular(8), + child: Image.asset( + 'assets/covidzero.jpg', + fit: BoxFit.cover, + )), + ), + const SizedBox( + width: 10, + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + width: screenWidth * 0.5, + child: Text( + 'Karnataka news live: 13 districts in state record zero Covid deaths in 7 days', + style: Theme.of(context) + .primaryTextTheme + .bodyText1! + .merge(TextStyle(fontWeight: FontWeight.w700)), + )), + const SizedBox(width: 12), + Container( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + IconText(iconData: Icons.calendar_today_rounded, title: '07 Oct, 2021',), + const SizedBox(width: 20), + IconText(iconData: Icons.lock_clock, title: '10 Min Read',), + ], + ), + ) + + ], + ) + ], + ), + ); + } +} + +class IconText extends StatelessWidget { + final IconData iconData; + final String title; + IconText({required this.iconData,required this.title}); + @override + Widget build(BuildContext context) { + return Row( + children: [ + Icon(iconData, size: 17), + const SizedBox(width: 6), + Text(title, + style: Theme.of(context).textTheme.bodyText1), + + ], + ); */ + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/main_bar.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/main_bar.dart new file mode 100644 index 0000000..9656951 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/main_bar.dart @@ -0,0 +1,54 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/portfolio.dart'; +class Mainbar extends StatelessWidget { + const Mainbar({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final screenWidth = MediaQuery.of(context).size.width; + return Column( + children: [ + ClipRRect( + borderRadius: BorderRadius.circular(14), + child: Image.network('https://i.guim.co.uk/img/static/sys-images/Money/Pix/pictures/2010/4/16/1271419559750/Diamond-merchants-are-rep-001.jpg?width=445&quality=45&auto=format&fit=max&dpr=2&s=f1b2b610a563a898ce23a2702d9f53de') + ), + const SizedBox(height: 10), + Container( + child: Text( + '3D Nano-inks Push Industry Boundaries', + style: Theme.of(context).primaryTextTheme.headline5, + )), + const SizedBox(height: 15), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + IconButton( + icon: Image.asset('assets/profile.jpg'), + iconSize: 50, + onPressed: () { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const Profile()), + ); + }, + ), + const SizedBox(width: 10), + Text( + 'Navaneeth K U', + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ), + Text( + '07 Oct, 2021', + style: Theme.of(context).textTheme.bodyText1,), + ], + ), + ], + ); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/recent_news.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/recent_news.dart new file mode 100644 index 0000000..ebdc3a5 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/recent_news.dart @@ -0,0 +1,45 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/api/news.dart'; +import 'package:portfolio/models/article_model.dart'; +import 'custom_tile.dart'; + +class Recentnews extends StatelessWidget { + const Recentnews({ + Key? key, + required this.screenWidth, + }) : super(key: key); + + final double screenWidth; + + @override + Widget build(BuildContext context) { + return FutureBuilder
( + future: News().getNews(), + builder: (context, snapshot) { + if (snapshot.hasData) { + return Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: snapshot.data!.articles!.length, + itemBuilder: (BuildContext context, int index) { + var data = snapshot.data!.articles[index]; + return Customtile( + screenWidth: screenWidth, + title: snapshot.data!.articles![index].title ?? "", + description: + snapshot.data!.articles![index].description ?? "", + url: snapshot.data!.articles![index].url ?? "", + urlToImage: snapshot.data!.articles![index].urlToImage ?? + "https://i.stack.imgur.com/y9DpT.jpg", + ); + }, + ), + ); + } else if (snapshot.hasError) { + return Text(snapshot.error.toString()); + } else { + return CircularProgressIndicator(); + } + }); + } +} diff --git a/Navaneeth_K_U/newsapp/lib/screen/home/widgets/title_bar.dart b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/title_bar.dart new file mode 100644 index 0000000..1b19ae9 --- /dev/null +++ b/Navaneeth_K_U/newsapp/lib/screen/home/widgets/title_bar.dart @@ -0,0 +1,35 @@ +import 'package:flutter/material.dart'; +import 'package:portfolio/portfolio.dart'; +import 'package:flutter/widgets.dart'; +import 'package:portfolio/screen/details/detailed_news.dart'; + +import 'main_bar.dart'; +class TitleBar extends StatelessWidget { + const TitleBar({ + Key? key, + required this.screenWidth, + }) : super(key: key); + + final double screenWidth; + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start , + children: [ + Text('Breaking News', + style: Theme.of(context).primaryTextTheme.headline3), + const SizedBox(height: 10), + GestureDetector( + onTap: () { + Navigator.of(context).pushNamed(DetailedNews.routeName); + }, + child: Mainbar()), + ], + ), + ); + } +} + diff --git a/Navaneeth_K_U/newsapp/pubspec.lock b/Navaneeth_K_U/newsapp/pubspec.lock new file mode 100644 index 0000000..663703a --- /dev/null +++ b/Navaneeth_K_U/newsapp/pubspec.lock @@ -0,0 +1,181 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + url: "https://pub.dartlang.org" + source: hosted + version: "2.8.1" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" + characters: + dependency: transitive + description: + name: characters + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.dartlang.org" + source: hosted + version: "1.3.1" + clock: + dependency: transitive + description: + name: clock + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + collection: + dependency: transitive + description: + name: collection + url: "https://pub.dartlang.org" + source: hosted + version: "1.15.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + fake_async: + dependency: transitive + description: + name: fake_async + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.0" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + http: + dependency: "direct main" + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.13.4" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.0" + lints: + dependency: transitive + description: + name: lints + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.1" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.10" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.dartlang.org" + source: hosted + version: "1.7.0" + path: + dependency: transitive + description: + name: path + url: "https://pub.dartlang.org" + source: hosted + version: "1.8.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.dartlang.org" + source: hosted + version: "1.8.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.10.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.2" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.dartlang.org" + source: hosted + version: "1.3.0" + vector_math: + dependency: transitive + description: + name: vector_math + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" +sdks: + dart: ">=2.14.0 <3.0.0" diff --git a/Navaneeth_K_U/newsapp/pubspec.yaml b/Navaneeth_K_U/newsapp/pubspec.yaml new file mode 100644 index 0000000..9e86d7c --- /dev/null +++ b/Navaneeth_K_U/newsapp/pubspec.yaml @@ -0,0 +1,88 @@ +name: portfolio +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + http: ^0.13.4 + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + assets: + - assets/ + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages \ No newline at end of file diff --git a/Navaneeth_K_U/newsapp/test/widget_test.dart b/Navaneeth_K_U/newsapp/test/widget_test.dart new file mode 100644 index 0000000..00107c2 --- /dev/null +++ b/Navaneeth_K_U/newsapp/test/widget_test.dart @@ -0,0 +1,29 @@ +// 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:portfolio/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(MyApp()); + + // 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/Navaneeth_K_U/newsapp/web/favicon.png b/Navaneeth_K_U/newsapp/web/favicon.png new file mode 100644 index 0000000..8aaa46a Binary files /dev/null and b/Navaneeth_K_U/newsapp/web/favicon.png differ diff --git a/Navaneeth_K_U/newsapp/web/icons/Icon-192.png b/Navaneeth_K_U/newsapp/web/icons/Icon-192.png new file mode 100644 index 0000000..b749bfe Binary files /dev/null and b/Navaneeth_K_U/newsapp/web/icons/Icon-192.png differ diff --git a/Navaneeth_K_U/newsapp/web/icons/Icon-512.png b/Navaneeth_K_U/newsapp/web/icons/Icon-512.png new file mode 100644 index 0000000..88cfd48 Binary files /dev/null and b/Navaneeth_K_U/newsapp/web/icons/Icon-512.png differ diff --git a/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-192.png b/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-192.png new file mode 100644 index 0000000..eb9b4d7 Binary files /dev/null and b/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-192.png differ diff --git a/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-512.png b/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-512.png new file mode 100644 index 0000000..d69c566 Binary files /dev/null and b/Navaneeth_K_U/newsapp/web/icons/Icon-maskable-512.png differ diff --git a/Navaneeth_K_U/newsapp/web/index.html b/Navaneeth_K_U/newsapp/web/index.html new file mode 100644 index 0000000..94383b7 --- /dev/null +++ b/Navaneeth_K_U/newsapp/web/index.html @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + newsapp + + + + + + + diff --git a/Navaneeth_K_U/newsapp/web/manifest.json b/Navaneeth_K_U/newsapp/web/manifest.json new file mode 100644 index 0000000..90cf87b --- /dev/null +++ b/Navaneeth_K_U/newsapp/web/manifest.json @@ -0,0 +1,35 @@ +{ + "name": "newsapp", + "short_name": "newsapp", + "start_url": ".", + "display": "standalone", + "background_color": "#0175C2", + "theme_color": "#0175C2", + "description": "A new Flutter project.", + "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" + } + ] +}