try
|
|
@ -0,0 +1,51 @@
|
|||
name: Build and deploy
|
||||
run-name: Food delivery
|
||||
on: push
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Archive project
|
||||
run: |
|
||||
mkdir -p dist/downloads
|
||||
zip -r dist/downloads/archive.zip . -x '.git/*' -x '.github/*' -x '.gitea/*' -x 'dist/*' -x 'build/*'
|
||||
|
||||
- name: Build project
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
channel: stable
|
||||
flutter-version: 3.24.5
|
||||
- run: flutter pub get
|
||||
- run: dart run build_runner build --delete-conflicting-outputs
|
||||
#- run: flutter test
|
||||
- run: flutter build web --base-href=/b5239596a3/ --release
|
||||
#- run: flutter build web --base-href=/b5239596a3/ --profile --dart-define=Dart2jsOptimization=O0
|
||||
|
||||
- name: Create releases
|
||||
run: |
|
||||
(cd build/web && zip -r ../../dist/downloads/web.zip .)
|
||||
echo 'android' >> dist/downloads/app.apk
|
||||
mv build/web/* dist/
|
||||
mkdir b5239596a3 && mv dist/* b5239596a3/ && mv b5239596a3 dist/
|
||||
|
||||
- name: Setup database
|
||||
uses: appremix/mysql-deploy-action@v1
|
||||
with:
|
||||
DATABASE_HOST: '${{ vars.db_hostname }}'
|
||||
DATABASE_PORT: '${{ vars.db_port }}'
|
||||
DATABASE_NAME: ''
|
||||
DATABASE_USERNAME: '${{ secrets.db_username }}'
|
||||
DATABASE_PASSWORD: '${{ secrets.db_password }}'
|
||||
DATABASE_SCRIPT: 'database.sql'
|
||||
|
||||
- name: Deploy project
|
||||
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
|
||||
with:
|
||||
server: ${{ vars.ftp_server }}
|
||||
username: ${{ secrets.ftp_username }}
|
||||
password: ${{ secrets.ftp_password }}
|
||||
local-dir: ./dist/
|
||||
server-dir: ./
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
# Miscellaneous
|
||||
*.class
|
||||
*.log
|
||||
*.pyc
|
||||
*.swp
|
||||
.DS_Store
|
||||
.atom/
|
||||
.buildlog/
|
||||
.history
|
||||
.svn/
|
||||
migrate_working_dir/
|
||||
|
||||
# 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
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
# 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.
|
||||
|
||||
version:
|
||||
revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
channel: stable
|
||||
|
||||
project_type: app
|
||||
|
||||
# Tracks metadata for the flutter migrate command
|
||||
migration:
|
||||
platforms:
|
||||
- platform: root
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: android
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: ios
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: linux
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: macos
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: web
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
- platform: windows
|
||||
create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268
|
||||
|
||||
# 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'
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
# Food delivery
|
||||
|
||||
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://docs.flutter.dev/get-started/codelab)
|
||||
- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook)
|
||||
|
||||
For help getting started with Flutter development, view the
|
||||
[online documentation](https://docs.flutter.dev/), which offers tutorials,
|
||||
samples, guidance on mobile development, and a full API reference.
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
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 flutter.compileSdkVersion
|
||||
ndkVersion flutter.ndkVersion
|
||||
|
||||
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.app"
|
||||
// You can update the following values to match your application needs.
|
||||
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
|
||||
minSdkVersion flutter.minSdkVersion
|
||||
targetSdkVersion flutter.targetSdkVersion
|
||||
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"
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.example.test_app">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.example.app">
|
||||
<application
|
||||
android:label="Food delivery"
|
||||
android:name="${applicationName}"
|
||||
android:icon="@mipmap/ic_launcher">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:theme="@style/LaunchTheme"
|
||||
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
||||
android:hardwareAccelerated="true"
|
||||
android:windowSoftInputMode="adjustResize">
|
||||
<!-- Specifies an Android theme to apply to this Activity as soon as
|
||||
the Android process has started. This theme is visible to the user
|
||||
while the Flutter UI initializes. After that, this theme continues
|
||||
to determine the Window background behind the Flutter UI. -->
|
||||
<meta-data
|
||||
android:name="io.flutter.embedding.android.NormalTheme"
|
||||
android:resource="@style/NormalTheme"
|
||||
/>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!-- Don't delete the meta-data below.
|
||||
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
|
||||
<meta-data
|
||||
android:name="flutterEmbedding"
|
||||
android:value="2" />
|
||||
</application>
|
||||
</manifest>
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
package com.example.test_app
|
||||
|
||||
import io.flutter.embedding.android.FlutterActivity
|
||||
|
||||
class MainActivity: FlutterActivity() {
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Modify this file to customize your launch splash screen -->
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="?android:colorBackground" />
|
||||
|
||||
<!-- You can insert your own image assets here -->
|
||||
<!-- <item>
|
||||
<bitmap
|
||||
android:gravity="center"
|
||||
android:src="@mipmap/launch_image" />
|
||||
</item> -->
|
||||
</layer-list>
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Modify this file to customize your launch splash screen -->
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@android:color/white" />
|
||||
|
||||
<!-- You can insert your own image assets here -->
|
||||
<!-- <item>
|
||||
<bitmap
|
||||
android:gravity="center"
|
||||
android:src="@mipmap/launch_image" />
|
||||
</item> -->
|
||||
</layer-list>
|
||||
|
After Width: | Height: | Size: 544 B |
|
After Width: | Height: | Size: 442 B |
|
After Width: | Height: | Size: 721 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.example.test_app">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.6.10'
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.1.2'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
rootProject.buildDir = '../build'
|
||||
subprojects {
|
||||
project.buildDir = "${rootProject.buildDir}/${project.name}"
|
||||
}
|
||||
subprojects {
|
||||
project.evaluationDependsOn(':app')
|
||||
}
|
||||
|
||||
task clean(type: Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
org.gradle.jvmargs=-Xmx1536M
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
|
|
@ -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-7.4-all.zip
|
||||
|
|
@ -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"
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"sample":[{"date":"2021-09-03","boolean":true,"string":"lorem","integer":1,"decimal":1},{"date":"2022-10-03","boolean":false,"string":"ipsum","integer":2,"decimal":2},{"date":"2023-11-03","boolean":true,"string":"dolor","integer":3,"decimal":3}]}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
DROP DATABASE IF EXISTS `b5239596a3`;
|
||||
CREATE DATABASE `b5239596a3` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
USE `b5239596a3`;
|
||||
|
||||
SET NAMES utf8;
|
||||
SET time_zone = '+00:00';
|
||||
SET foreign_key_checks = 0;
|
||||
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
|
||||
|
||||
-- DROP TABLE IF EXISTS `sample`;
|
||||
CREATE TABLE `sample` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`string` varchar(255),
|
||||
`integer` int,
|
||||
`decimal` decimal(10,2),
|
||||
`boolean` bit(1),
|
||||
`date` datetime,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
INSERT INTO `sample` (`string`, `integer`, `decimal`, `boolean`, `date`) VALUES
|
||||
('lorem', 1, 1, true, '2021-09-03'),
|
||||
('ipsum', 2, 2, false, '2022-10-03'),
|
||||
('dolor', 3, 3, true, '2023-11-03');
|
||||
|
||||
SET foreign_key_checks = 1;
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>App</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>io.flutter.flutter.app</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>App</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>9.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1 @@
|
|||
#include "Generated.xcconfig"
|
||||
|
|
@ -0,0 +1 @@
|
|||
#include "Generated.xcconfig"
|
||||
|
|
@ -0,0 +1,481 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 50;
|
||||
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 = "<group>"; };
|
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
/* 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 = "<group>";
|
||||
};
|
||||
97C146E51CF9000F007C117D = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
9740EEB11CF90186004384FC /* Flutter */,
|
||||
97C146F01CF9000F007C117D /* Runner */,
|
||||
97C146EF1CF9000F007C117D /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
97C146EF1CF9000F007C117D /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
97C146EE1CF9000F007C117D /* Runner.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
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 = "<group>";
|
||||
};
|
||||
/* 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 = 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;
|
||||
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 = "<group>";
|
||||
};
|
||||
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
97C147001CF9000F007C117D /* Base */,
|
||||
);
|
||||
name = LaunchScreen.storyboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* 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.testApp;
|
||||
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_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
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.testApp;
|
||||
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.testApp;
|
||||
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 */;
|
||||
}
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreviewsEnabled</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1300"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||
BuildableName = "Runner.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||
BuildableName = "Runner.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||
BuildableName = "Runner.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Profile"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D"
|
||||
BuildableName = "Runner.app"
|
||||
BlueprintName = "Runner"
|
||||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "group:Runner.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreviewsEnabled</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -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)
|
||||
}
|
||||
}
|
||||
|
|
@ -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"
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 564 B |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
|
@ -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"
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 68 B |
|
After Width: | Height: | Size: 68 B |
|
After Width: | Height: | Size: 68 B |
|
|
@ -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.
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12121" systemVersion="16G29" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--View Controller-->
|
||||
<scene sceneID="EHf-IW-A2E">
|
||||
<objects>
|
||||
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
|
||||
</imageView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<constraints>
|
||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
|
||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
|
||||
</constraints>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="53" y="375"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
<resources>
|
||||
<image name="LaunchImage" width="168" height="185"/>
|
||||
</resources>
|
||||
</document>
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="15F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--Flutter View Controller-->
|
||||
<scene sceneID="tne-QT-ifu">
|
||||
<objects>
|
||||
<viewController id="BYZ-38-t0r" customClass="FlutterViewController" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
|
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>Food delivery</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>food_delivery</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>$(FLUTTER_BUILD_NAME)</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<false/>
|
||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1 @@
|
|||
#import "GeneratedPluginRegistrant.h"
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'src/app.dart';
|
||||
|
||||
void main() {
|
||||
runApp(MyApp());
|
||||
}
|
||||
|
|
@ -0,0 +1,250 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'common/utils.dart';
|
||||
import 'data/repository/_dao.dart';
|
||||
//import 'data/api/_api.dart';
|
||||
import 'data/models/_models.dart';
|
||||
import 'ui/views/_views.dart';
|
||||
|
||||
class MyApp extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider(create: (context) => AppController(context)),
|
||||
// more providers here
|
||||
],
|
||||
child: MaterialApp.router(
|
||||
title: 'Demo',
|
||||
debugShowCheckedModeBanner: false,
|
||||
theme: ThemeData(
|
||||
primarySwatch: Colors.blue,
|
||||
brightness: Brightness.light,
|
||||
visualDensity: VisualDensity.adaptivePlatformDensity,
|
||||
),
|
||||
routerConfig: GoRouter(
|
||||
initialLocation: '/aboutus',
|
||||
routes: [
|
||||
GoRoute(
|
||||
path: '/aboutus',
|
||||
builder: (context, state) {
|
||||
return AboutUsView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/audioarticle_60rn',
|
||||
builder: (context, state) {
|
||||
return AudioArticle_60rnView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/bookmark_2rub',
|
||||
builder: (context, state) {
|
||||
return Bookmark_2rubView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/category_e0b3',
|
||||
builder: (context, state) {
|
||||
return Category_e0b3View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/changepassword_5ugn',
|
||||
builder: (context, state) {
|
||||
return ChangePassword_5ugnView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/chat_n9xm',
|
||||
builder: (context, state) {
|
||||
return Chat_n9xmView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/contactus_inkn',
|
||||
builder: (context, state) {
|
||||
return ContactUs_inknView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/dashboard_jvxm',
|
||||
builder: (context, state) {
|
||||
return Dashboard_jvxmView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/datanotfound_f1qf',
|
||||
builder: (context, state) {
|
||||
return DataNotFound_f1qfView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/detail_dm5h',
|
||||
builder: (context, state) {
|
||||
return Detail_dm5hView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/discover_au68',
|
||||
builder: (context, state) {
|
||||
return Discover_au68View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/emptypinnotes_1l1v',
|
||||
builder: (context, state) {
|
||||
return EmptyPinNotes_1l1vView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/following_s3l5',
|
||||
builder: (context, state) {
|
||||
return Following_s3l5View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/forgotpassword_xt11',
|
||||
builder: (context, state) {
|
||||
return ForgotPassword_xt11View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/grid_kcdz',
|
||||
builder: (context, state) {
|
||||
return Grid_kcdzView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/home_cigx',
|
||||
builder: (context, state) {
|
||||
return Home_cigxView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/labels_sxue',
|
||||
builder: (context, state) {
|
||||
return Labels_sxueView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/list_1eal',
|
||||
builder: (context, state) {
|
||||
return List_1ealView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/login_qayv',
|
||||
builder: (context, state) {
|
||||
return Login_qayvView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/membership_z9ze',
|
||||
builder: (context, state) {
|
||||
return Membership_z9zeView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/myaccount_tyvz',
|
||||
builder: (context, state) {
|
||||
return MyAccount_tyvzView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/newsdetails_t6nw',
|
||||
builder: (context, state) {
|
||||
return NewsDetails_t6nwView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/nodatafound_shk8',
|
||||
builder: (context, state) {
|
||||
return NoDataFound_shk8View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/notificationsetting_bycd',
|
||||
builder: (context, state) {
|
||||
return NotificationSetting_bycdView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/pinnotelist_qn8a',
|
||||
builder: (context, state) {
|
||||
return PinNoteList_qn8aView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/profile_pzn0',
|
||||
builder: (context, state) {
|
||||
return Profile_pzn0View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/register_obmz',
|
||||
builder: (context, state) {
|
||||
return Register_obmzView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/review_47su',
|
||||
builder: (context, state) {
|
||||
return Review_47suView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/setting_pano',
|
||||
builder: (context, state) {
|
||||
return Setting_panoView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/splash_p2g8',
|
||||
builder: (context, state) {
|
||||
return Splash_p2g8View(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/verification_nhug',
|
||||
builder: (context, state) {
|
||||
return Verification_nhugView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
GoRoute(
|
||||
path: '/welcome_g72w',
|
||||
builder: (context, state) {
|
||||
return Welcome_g72wView(extra: state.extra);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class AppController with ChangeNotifier {
|
||||
static AppController? _instance;
|
||||
final BuildContext context;
|
||||
|
||||
// singleton instance
|
||||
factory AppController(BuildContext context) =>
|
||||
_instance ??= AppController._internal(context);
|
||||
|
||||
AppController._internal(this.context) {
|
||||
loadData();
|
||||
}
|
||||
|
||||
Future<void> loadData() async {
|
||||
await fillWithMockData();
|
||||
}
|
||||
|
||||
void back() {
|
||||
Navigator.maybePop(context);
|
||||
}
|
||||
|
||||
final sampleDao = SampleDao();
|
||||
}
|
||||
|
|
@ -0,0 +1,278 @@
|
|||
import 'dart:ui';
|
||||
|
||||
class Constants {
|
||||
static const projectId = 'b5239596a3';
|
||||
static const apiUrl = 'https://jsonplaceholder.typicode.com';
|
||||
static const black = Color(0xFF000000);
|
||||
static const white = Color(0xFF000000);
|
||||
static const roboto = 'Roboto';
|
||||
static const colour1 = Color(0xFF6200EE);
|
||||
static const colour2 = Color(0xFF3700B3);
|
||||
static const colour3 = Color(0xFF03DAC6);
|
||||
static const colour4 = Color(0xFF018786);
|
||||
static const colour5 = Color(0xFFB00020);
|
||||
static const font1 = 'Merriweather';
|
||||
static const font2 = 'Raleway';
|
||||
/* I18n */
|
||||
static const a1QVBVDBF1222_ = 'A1QVBVDBF1222';
|
||||
static const aRRahman_ = 'A.R.Rahman';
|
||||
static const aSmartRobotFromHeroCompan_ =
|
||||
'A smart robot from Hero Company can become a restaurant waiter.';
|
||||
static const aboutUs_ = 'About Us';
|
||||
static const aboutUs_1 = 'About us';
|
||||
static const addToCart_ = 'Add To Cart';
|
||||
static const additionalComment_ = 'Additional comment..';
|
||||
static const aktaParmar_ = 'Akta Parmar';
|
||||
static const allNews_ = 'All News';
|
||||
static const alreadyHaveAnAccount_ = 'Already have an account?';
|
||||
static const anthony_ = 'Anthony';
|
||||
static const anthonysmith12_ = 'anthonysmith12';
|
||||
static const anthonysmithgmailcom_ = 'anthonysmith@gmail.com';
|
||||
static const appNotification_ = 'App Notification';
|
||||
static const art_ = 'Art';
|
||||
static const audioArticle_ = 'Audio Article';
|
||||
static const background_ = 'Background';
|
||||
static const basic_ = 'Basic';
|
||||
static const bella_ = 'Bella';
|
||||
static const bestDealsOnProducts_ = 'Best Deals On Products';
|
||||
static const billedEvery12Month_ = 'Billed every 12 month';
|
||||
static const billedEveryMonth_ = 'Billed every month';
|
||||
static const bollywoordButter_ = 'Bollywoord Butter';
|
||||
static const bookmark_ = 'Bookmark';
|
||||
static const byBecomingAMenberYouCan_ =
|
||||
'by becoming a menber, you can read on any device, read with no Ads, and offline.';
|
||||
static const byJonesHawkins_ = 'by Jones Hawkins';
|
||||
static const cLICKTOSPIN_ = 'CLICK TO SPIN';
|
||||
static const categories_ = 'Categories';
|
||||
static const changePassword_ = 'Change Password';
|
||||
static const chap1_ = 'Chap 1';
|
||||
static const chap2_ = 'Chap 2';
|
||||
static const chap3_ = 'Chap 3';
|
||||
static const chooseYourPlan_ = 'Choose your plan';
|
||||
static const connection_ = 'Connection';
|
||||
static const contact_ = 'Contact';
|
||||
static const contestSection_ = 'Contest Section';
|
||||
static const continueListening_ = 'Continue Listening';
|
||||
static const continue_ = 'Continue';
|
||||
static const createConfirmPassword_ = 'Create Confirm Password';
|
||||
static const createNewPassword_ = 'Create New Password';
|
||||
static const createYourNewPasswordInFl_ =
|
||||
'Create your new password in FlutterStudio, Keep in mind and remeber it!.';
|
||||
static const creativeGiftsForCapricom_ = 'Creative gifts for Capricom';
|
||||
static const darkMode_ = 'Dark Mode';
|
||||
static const darshanRaval_ = 'Darshan Raval';
|
||||
static const deliveryLocation_ = 'Delivery Location';
|
||||
static const design_ = 'Design';
|
||||
static const dontHaveAnAccount_ = "Don't have an account?";
|
||||
static const doran_ = 'Doran';
|
||||
static const ePVariousArtists_ = 'EP.Various Artists';
|
||||
static const editPersonalDetails_ = 'Edit Personal Details';
|
||||
static const editProfile_ = 'Edit Profile';
|
||||
static const email_ = 'Email';
|
||||
static const enterConfirmPassword_ = 'Enter Confirm Password';
|
||||
static const enterNewPassword_ = 'Enter New Password';
|
||||
static const enterText_ = 'Enter Text';
|
||||
static const enterTheVerificationCodeWe_ =
|
||||
'Enter the verification code we just send you on your email address.';
|
||||
static const enterYourEmailForTheVerif_ =
|
||||
'Enter your email for the verification process. We will send 4 digits code to your email.';
|
||||
static const fASHION_ = 'FASHION';
|
||||
static const fLAT20OFF_ = 'FLAT 20% OFF';
|
||||
static const fashion_ = 'Fashion';
|
||||
static const firstName_ = 'First Name';
|
||||
static const follow_ = 'Follow';
|
||||
static const following_ = 'Following';
|
||||
static const forAnyPressAndMediaInquir_ =
|
||||
'For any press and media inquiries please contact';
|
||||
static const forgotPassword_ = 'Forgot Password';
|
||||
static const fullName_ = 'Full Name';
|
||||
static const fultterStudio_ = 'FultterStudio';
|
||||
static const gifts_ = 'Gifts';
|
||||
static const goBack_ = 'Go Back';
|
||||
static const goodMorningGoodMorningGo_ =
|
||||
'Good Morning Good Morning Good Morning Good Morning Good Morning Good Morning Good Morning Good Morning';
|
||||
static const goodMorningGoodMorningGoo_ =
|
||||
'Good Morning Good Morning GoodMorning';
|
||||
static const goodMorningGoodMorningGoo_1 =
|
||||
'Good Morning Good Morning Good Morning Good Morning Good Morning';
|
||||
static const goodMorning_ = 'Good Morning';
|
||||
static const helloHowAreYou_ = 'Hello, How are You?';
|
||||
static const helloIAmFineAndYou_ = 'Hello, I am Fine and You?';
|
||||
static const home_ = 'Home';
|
||||
static const howIsYourTrip_ = 'How is your trip?';
|
||||
static const howToStartYourUXDesignCa_ =
|
||||
'How to start your UX Design career.';
|
||||
static const iAmFine_ = 'I am fine';
|
||||
static const iD786534789_ = 'ID 786534789';
|
||||
static const ideas_ = 'Ideas';
|
||||
static const ifYouDidntReceiveACode_ = "If you didn't receive a code!";
|
||||
static const indiasLargetsFashionApp_ = "India's largets fashion App";
|
||||
static const internationalBrand_ = 'International Brand';
|
||||
static const itIsALongEstablishedFact_ =
|
||||
'It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.';
|
||||
static const johnHawkins_ = 'John Hawkins';
|
||||
static const johngmailcom_ = 'john@gmail.com';
|
||||
static const k01362Tbilisi_ = '01362,Tbilisi';
|
||||
static const k0634Am_ = '06:34 am';
|
||||
static const k10Articles_ = '10 Articles';
|
||||
static const k10Off_ = '10% Off';
|
||||
static const k12Jan2021_ = '12 Jan, 2021';
|
||||
static const k13Articles_ = '13 Articles';
|
||||
static const k13June2020_ = '13 June, 2020';
|
||||
static const k15Sep20200230Am_ = '15 Sep, 2020 02:30 Am';
|
||||
static const k1Item_ = '1 item';
|
||||
static const k20June2019_ = '20 June, 2019';
|
||||
static const k22Aug20200230Am_ = '22 Aug, 2020 02:30 Am';
|
||||
static const k22June20200230Am_ = '22 June, 2020 02:30 Am';
|
||||
static const k22Mar20200230Am_ = '22 Mar, 2020 02:30 Am';
|
||||
static const k24Articles_ = '24 Articles';
|
||||
static const k25Jan2020_ = '25 Jan, 2020';
|
||||
static const k2Items_ = '2 items';
|
||||
static const k2PetreMelikshliSt_ = '2 Petre Melikshli St.';
|
||||
static const k30Off_ = '30% Off';
|
||||
static const k3201_ = '32:01';
|
||||
static const k4000_ = '40.00';
|
||||
static const k4971GodfreyRoad_ = '4971 Godfrey Road';
|
||||
static const k50Off_ = '50% Off';
|
||||
static const k5Articles_ = '5 Articles';
|
||||
static const k6Articles_ = '6 Articles';
|
||||
static const k6MonthsExperienceLivingIn_ =
|
||||
'6 months experience living in south korea.';
|
||||
static const k8Articles_ = '8 Articles';
|
||||
static const k90sRewind_ = '90s Rewind';
|
||||
static const k91987654321_ = '+91 987654321';
|
||||
static const kapilSharma_ = 'Kapil Sharma';
|
||||
static const kevin_ = 'Kevin';
|
||||
static const kurtiSuits_ = 'Kurti & Suits';
|
||||
static const lOGIN_ = 'LOGIN';
|
||||
static const labels_ = 'Labels';
|
||||
static const language_ = 'Language';
|
||||
static const lastName_ = 'Last Name';
|
||||
static const latestNews_ = 'Latest News';
|
||||
static const learningAboutDesignThinking_ = 'Learning about design Thinking.';
|
||||
static const lifeStyle_ = 'LifeStyle';
|
||||
static const logOut_ = 'Log out';
|
||||
static const loginWithSocialNetwork_ = 'Login with Social Network';
|
||||
static const login_ = 'Login';
|
||||
static const logout_ = 'Logout';
|
||||
static const loremIpsumDolorSitAmetCo_ =
|
||||
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua';
|
||||
static const loremIpsumIsSimplyDummyTe_ =
|
||||
"Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.";
|
||||
static const loremIpsumIsSimplyDummyTe_1 =
|
||||
'Lorem Ipsum is simply dummy text of the printing and typesetting industry';
|
||||
static const loremIpsumOrLipsumAsItI_ =
|
||||
'Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphic or web designs.';
|
||||
static const loremIpsumOrLipsumAsItI_1 =
|
||||
'Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphics.';
|
||||
static const lorem_ = 'Lorem';
|
||||
static const mTVCoke_ = 'MTV Coke';
|
||||
static const marie_ = 'Marie';
|
||||
static const membership_ = 'Membership';
|
||||
static const men_ = 'Men';
|
||||
static const message_ = 'Message';
|
||||
static const misson_ = 'Misson';
|
||||
static const monthly_ = 'Monthly';
|
||||
static const moreLike_ = 'More Like';
|
||||
static const mostRecent_ = 'Most Recent';
|
||||
static const myAccount_ = 'My Account';
|
||||
static const myApp_ = 'My App';
|
||||
static const newMusicHindi_ = 'New Music Hindi';
|
||||
static const next_ = 'Next';
|
||||
static const noInternet_ = 'No Internet';
|
||||
static const notebooks_ = 'Notebooks';
|
||||
static const notes_ = 'Notes';
|
||||
static const notificationSetting_ = 'Notification Setting';
|
||||
static const notifications_ = 'Notifications';
|
||||
static const offerZone_ = 'Offer Zone';
|
||||
static const oopsYouAreLost_ = 'Oops! You are lost';
|
||||
static const password_ = 'Password';
|
||||
static const philipRamirez_ = 'Philip Ramirez';
|
||||
static const phone_ = 'Phone';
|
||||
static const pinNotes_ = 'Pin notes';
|
||||
static const pins_ = 'Pins';
|
||||
static const pleaseCheckYourInternetCon_ =
|
||||
'Please check your internet connection and try again';
|
||||
static const politics_ = 'Politics';
|
||||
static const popularMusic_ = 'Popular Music';
|
||||
static const predictionAboutWhoWillWin_ =
|
||||
'Prediction about who will win the premier league.';
|
||||
static const profile_ = 'Profile';
|
||||
static const promotion_ = 'Promotion';
|
||||
static const raatanLmbiyan_ = 'Raatan Lmbiyan';
|
||||
static const ranjha_ = 'Ranjha';
|
||||
static const recent_ = 'Recent';
|
||||
static const recentlyPlayed_ = 'Recently played';
|
||||
static const recommendedArticle_ = 'Recommended Article';
|
||||
static const register_ = 'Register';
|
||||
static const renne_ = 'Renne';
|
||||
static const resend_ = 'Resend';
|
||||
static const resetPassword_ = 'Reset Password';
|
||||
static const review_ = 'Review';
|
||||
static const rose_ = 'Rose';
|
||||
static const sEND_ = 'SEND';
|
||||
static const sHOPNOW_ = 'SHOP NOW';
|
||||
static const sIGNIN_ = 'SIGN IN';
|
||||
static const sIGNUP_ = 'SIGN UP';
|
||||
static const sKIP_ = 'SKIP';
|
||||
static const saree_ = 'Saree';
|
||||
static const science_ = 'Science';
|
||||
static const searchHere_ = 'Search here';
|
||||
static const search_ = 'Search';
|
||||
static const selectPlan_ = 'Select Plan';
|
||||
static const settings_ = 'Settings';
|
||||
static const shershaahOriginal_ = 'Shershaah(Original)';
|
||||
static const sheryaGhoshval_ = 'Sherya Ghoshval';
|
||||
static const shopping_ = 'Shopping';
|
||||
static const shouldDesignerIsAbleToCod_ =
|
||||
'Should designer is able to coding ?';
|
||||
static const signUp_ = 'Sign Up';
|
||||
static const singleJasleenRoyal_ = 'Single. Jasleen Royal';
|
||||
static const singleTanishkBagchi_ = 'Single. Tanishk Bagchi';
|
||||
static const smith_ = 'Smith';
|
||||
static const sortBy_ = 'Sort by';
|
||||
static const spinWinAdduredCredits_ = 'Spin & Win Addured Credits';
|
||||
static const spinWinAssuredCredits_ = 'Spin & Win Assured Credits';
|
||||
static const sports_ = 'Sports';
|
||||
static const story_ = 'Story';
|
||||
static const submitReview_ = 'Submit Review';
|
||||
static const tRYAGAIN_ = 'TRY AGAIN';
|
||||
static const tech_ = 'Tech';
|
||||
static const technology_ = 'Technology';
|
||||
static const termsAndConditions_ = 'Terms and Conditions';
|
||||
static const testgmailcom_ = 'test@gmail.com';
|
||||
static const text_ = 'Text';
|
||||
static const thePageYouAreLookingForC_ =
|
||||
'The page you are looking for could not be found.';
|
||||
static const theRoleOfCreativityInUXD_ =
|
||||
'The Role of creativity in UX design?';
|
||||
static const theRoleOfCretivityInUXDe_ =
|
||||
'The Role of Cretivity in UX design?';
|
||||
static const theWatchModelThatMakesYu_ =
|
||||
'The watch model that makes yu even cooler.';
|
||||
static const today_ = 'Today';
|
||||
static const uSD1990_ = 'USD 199.0';
|
||||
static const uSD499month_ = 'USD 4.99/month';
|
||||
static const uSD999_ = 'USD 9.99';
|
||||
static const uX_ = 'UX';
|
||||
static const upgradePlan_ = 'Upgrade Plan';
|
||||
static const userResearchMovieApp_ = 'User Research Movie App';
|
||||
static const username_ = 'Username';
|
||||
static const verification_ = 'Verification';
|
||||
static const verify_ = 'Verify';
|
||||
static const vishalShekharAtifAslam_ = 'Vishal-Shekhar,Atif Aslam';
|
||||
static const vision_ = 'Vision';
|
||||
static const weHaveSpecialFood_ = 'We Have Special Food';
|
||||
static const webDevelopPortfolio_ = 'Web Develop Portfolio';
|
||||
static const webIdeas_ = 'Web Ideas';
|
||||
static const welcomeToTheFultterStudio_ =
|
||||
'Welcome to the FultterStudio. Make Attractive UI using FultterStudio.';
|
||||
static const westernwear_ = 'Westernwear';
|
||||
static const whyDoPlainTshirtsMakeUs_ =
|
||||
'Why do plain t-shirts make us look cooler ?';
|
||||
static const xD_ = 'XD';
|
||||
static const yearly_ = 'Yearly';
|
||||
static const yourFeedbackWillHelpImprov_ =
|
||||
'Your feedback will help improve driving experience.';
|
||||
static const youtubeIdeas_ = 'Youtube Ideas';
|
||||
}
|
||||
|
|
@ -0,0 +1,106 @@
|
|||
import 'package:collection/collection.dart';
|
||||
import 'dart:convert';
|
||||
import 'dart:math';
|
||||
import 'dart:ui';
|
||||
|
||||
import 'package:flutter/services.dart' show rootBundle;
|
||||
|
||||
//import '../data/api/_api.dart';
|
||||
import '../data/models/_models.dart';
|
||||
import '../data/repository/_dao.dart';
|
||||
|
||||
export 'package:google_fonts/google_fonts.dart';
|
||||
|
||||
/*List<Sample> samplesListModelFromJson(String str) =>
|
||||
List<Sample>.from(json.decode(str).map((x) => Sample.fromJson(x)));
|
||||
|
||||
String samplesListModelToJson(List<Sample> data) =>
|
||||
json.encode(List<dynamic>.from(data.map((x) => x.toJson())));*/
|
||||
|
||||
Future<Object> fillWithMockData() async {
|
||||
await Future<void>.delayed(const Duration(seconds: 3));
|
||||
var jsonString = await rootBundle.loadString('assets/data.json');
|
||||
var data = json.decode(jsonString);
|
||||
|
||||
var sampleItems = List<Sample>.from(
|
||||
data['sample'].map((x) => Sample.fromJson(x)),
|
||||
);
|
||||
var sampleDao = SampleDao();
|
||||
await sampleDao.deleteAll();
|
||||
for (var item in sampleItems) {
|
||||
await sampleDao.insert(item);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/// Darken a color by [percent] amount (100 = black)
|
||||
Color darken(Color c, [int percent = 15]) {
|
||||
assert(1 <= percent && percent <= 100);
|
||||
var f = 1 - percent / 100;
|
||||
return Color.fromARGB(
|
||||
c.alpha,
|
||||
(c.red * f).round(),
|
||||
(c.green * f).round(),
|
||||
(c.blue * f).round(),
|
||||
);
|
||||
}
|
||||
|
||||
/// Lighten a color by [percent] amount (100 = white)
|
||||
Color lighten(Color c, [int percent = 85]) {
|
||||
assert(1 <= percent && percent <= 100);
|
||||
var p = percent / 100;
|
||||
return Color.fromARGB(
|
||||
c.alpha,
|
||||
c.red + ((255 - c.red) * p).round(),
|
||||
c.green + ((255 - c.green) * p).round(),
|
||||
c.blue + ((255 - c.blue) * p).round(),
|
||||
);
|
||||
}
|
||||
|
||||
// Validators
|
||||
String? requiredValidator(String? value) {
|
||||
if (value?.trim().isNotEmpty != true) {
|
||||
return 'Please fill this field';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String? emailValidator(String? value) {
|
||||
if (value?.trim().isNotEmpty != true) {
|
||||
return 'Please fill this field';
|
||||
}
|
||||
// https://stackoverflow.com/a/16888554
|
||||
if (!RegExp(
|
||||
r"^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,253}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,253}[a-zA-Z0-9])?)*$",
|
||||
).hasMatch(value!)) {
|
||||
return 'Enter valid email address';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String? passwordValidator(String? value) {
|
||||
if (value?.trim().isNotEmpty != true) {
|
||||
return 'Please fill this field';
|
||||
}
|
||||
// https://stackoverflow.com/a/19605207
|
||||
if (!RegExp(
|
||||
r'^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$',
|
||||
).hasMatch(value!)) {
|
||||
return 'Password must be at least 8 characters long and include lowercase, uppercase, number, and special character';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
String? phoneValidator(String? value) {
|
||||
if (value?.trim().isNotEmpty != true) {
|
||||
return 'Please fill this field';
|
||||
}
|
||||
// https://stackoverflow.com/a/16702965
|
||||
if (!RegExp(
|
||||
r'^\s*(?:\+?(\d{1,3}))?[-. (]*(\d{3})[-. )]*(\d{3})[-. ]*(\d{4})(?: *x(\d+))?\s*$',
|
||||
).hasMatch(value!)) {
|
||||
return 'Enter valid phone number';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
export 'sample.dart';
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
import '_models.dart';
|
||||
|
||||
part 'sample.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class Sample {
|
||||
Sample({this.string, this.integer, this.decimal, this.boolean, this.date});
|
||||
|
||||
String? string;
|
||||
int? integer;
|
||||
double? decimal;
|
||||
bool? boolean;
|
||||
DateTime? date;
|
||||
|
||||
@JsonKey(ignore: true)
|
||||
String? id;
|
||||
|
||||
factory Sample.fromJson(Map<String, dynamic> json) => _$SampleFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$SampleToJson(this);
|
||||
|
||||
@override
|
||||
operator ==(Object other) => other is Sample && other.id == id;
|
||||
|
||||
@override
|
||||
int get hashCode => id.hashCode;
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return '<Sample id=$id>';
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
export 'sample_dao.dart';
|
||||
|
||||
abstract class Dao<T> {
|
||||
Future<T?> delete(String id);
|
||||
|
||||
Future<bool> deleteAll();
|
||||
|
||||
T? get(String id);
|
||||
|
||||
List<T> getAll();
|
||||
|
||||
T create();
|
||||
|
||||
Future<T> insert(T item);
|
||||
|
||||
Future<List<T>> fetchAll();
|
||||
|
||||
Future<T?> fetch(String id);
|
||||
|
||||
Future<T> update(T item, String id);
|
||||
|
||||
Future<T> upsert(T item);
|
||||
|
||||
Stream<List<T>> subscribe();
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
import 'dart:async';
|
||||
|
||||
import 'package:uuid/uuid.dart' as uuid;
|
||||
import 'package:flutter/foundation.dart';
|
||||
|
||||
import '../models/_models.dart';
|
||||
import '_dao.dart';
|
||||
|
||||
class SampleDao extends Dao<Sample> {
|
||||
static SampleDao? _instance;
|
||||
|
||||
// singleton instance
|
||||
factory SampleDao() => _instance ??= SampleDao._internal();
|
||||
|
||||
SampleDao._internal() {
|
||||
// initialization logic here
|
||||
}
|
||||
|
||||
final Map<String, Sample> _storage = {};
|
||||
final StreamController<List<Sample>> _streamController =
|
||||
StreamController<List<Sample>>.broadcast();
|
||||
|
||||
@override
|
||||
Future<Sample?> delete(String id) async {
|
||||
var removed = _storage.remove(id);
|
||||
_emit();
|
||||
return removed;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<bool> deleteAll() async {
|
||||
_storage.clear();
|
||||
_emit();
|
||||
return true;
|
||||
}
|
||||
|
||||
@override
|
||||
Sample? get(String id) {
|
||||
return _storage[id];
|
||||
}
|
||||
|
||||
@override
|
||||
List<Sample> getAll() {
|
||||
return _storage.values.toList();
|
||||
}
|
||||
|
||||
@override
|
||||
Sample create() {
|
||||
return Sample();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Sample> insert(Sample item) async {
|
||||
var id = const uuid.Uuid().v4();
|
||||
//var newSample = Sample(name: item.name)..id = id;
|
||||
var newSample = item..id = id;
|
||||
_storage[id] = newSample;
|
||||
_emit();
|
||||
return newSample;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<Sample>> fetchAll() async {
|
||||
return _storage.values.toList();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Sample?> fetch(String id) async {
|
||||
return _storage[id];
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Sample> update(Sample item, String id) async {
|
||||
_storage[id] = item;
|
||||
_emit();
|
||||
return item..id = id;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Sample> upsert(Sample item) async {
|
||||
return (item.id == null) ? insert(item) : update(item, item.id!);
|
||||
}
|
||||
|
||||
@override
|
||||
Stream<List<Sample>> subscribe() => _streamController.stream;
|
||||
|
||||
void _emit() {
|
||||
_streamController.add(_storage.values.toList());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,105 @@
|
|||
export 'padding1668_943x.dart';
|
||||
export 'padding2658_p1zk.dart';
|
||||
export 'stack1907_xt28.dart';
|
||||
export 'container122_a8w6.dart';
|
||||
export 'container2933_cvn3.dart';
|
||||
export 'stack3232_t74i.dart';
|
||||
export 'stack3235_ayay.dart';
|
||||
export 'stack1908_55ms.dart';
|
||||
export 'container676_u4q2.dart';
|
||||
export 'stack1913_cao7.dart';
|
||||
export 'text_field561_jhkd.dart';
|
||||
export 'stack3232_hcgu.dart';
|
||||
export 'padding562_b5u2.dart';
|
||||
export 'stack1911_9sq5.dart';
|
||||
export 'padding8_wdx9.dart';
|
||||
export 'list_tile1214_lcq3.dart';
|
||||
export 'text1342_x667.dart';
|
||||
export 'padding1247_rcmx.dart';
|
||||
export 'divider1211_qqok.dart';
|
||||
export 'padding1670_gouc.dart';
|
||||
export 'clip_r_rect1340_ko9q.dart';
|
||||
export 'text12_uxqe.dart';
|
||||
export 'container1045_jwip.dart';
|
||||
export 'padding1_p779.dart';
|
||||
export 'app_bar682_1czg.dart';
|
||||
export 'rating_barbuilder1009_hkzs.dart';
|
||||
export 'stack3205_puva.dart';
|
||||
export 'divider1211_quka.dart';
|
||||
export 'list_tile1210_3rti.dart';
|
||||
export 'padding1902_1msv.dart';
|
||||
export 'container2930_2rhj.dart';
|
||||
export 'stack3231_thkh.dart';
|
||||
export 'padding1901_cx9n.dart';
|
||||
export 'padding2523_p4he.dart';
|
||||
export 'padding2661_qzry.dart';
|
||||
export 'stack1914_hvm6.dart';
|
||||
export 'material_button1217_jwby.dart';
|
||||
export 'padding2662_bl2j.dart';
|
||||
export 'container1915_m39v.dart';
|
||||
export 'app_bar2944_rotl.dart';
|
||||
export 'padding1903_0ffz.dart';
|
||||
export 'align2939_fgkc.dart';
|
||||
export 'padding2660_8c7p.dart';
|
||||
export 'divider1211_akau.dart';
|
||||
export 'text_field1926_332s.dart';
|
||||
export 'padding2659_acub.dart';
|
||||
export 'stack1910_yg0l.dart';
|
||||
export 'row1218_c1cc.dart';
|
||||
export 'padding2656_z413.dart';
|
||||
export 'row1927_acsm.dart';
|
||||
export 'padding2522_3z73.dart';
|
||||
export 'app_bar3210_xy2e.dart';
|
||||
export 'otp_text_field1083_80av.dart';
|
||||
export 'stack1906_s1jy.dart';
|
||||
export 'stack1912_btq1.dart';
|
||||
export 'material_button1215_0qfr.dart';
|
||||
export 'row3264_os4l.dart';
|
||||
export 'switch_list_tile1212_w9oz.dart';
|
||||
export 'container1042_49si.dart';
|
||||
export 'padding2663_fus1.dart';
|
||||
export 'padding1904_tdvf.dart';
|
||||
export 'row703_gnuw.dart';
|
||||
export 'stack2339_cb92.dart';
|
||||
export 'container1044_awqh.dart';
|
||||
export 'padding1339_yprp.dart';
|
||||
export 'stack3234_ew9q.dart';
|
||||
export 'row1667_tgx9.dart';
|
||||
export 'stack3208_5dv2.dart';
|
||||
export 'container2934_5anc.dart';
|
||||
export 'app_bar1048_e0na.dart';
|
||||
export 'stack2554_yhdm.dart';
|
||||
export 'app_bar2671_1agg.dart';
|
||||
export 'text_field710_3r6r.dart';
|
||||
export 'padding2657_r22y.dart';
|
||||
export 'padding3297_l244.dart';
|
||||
export 'padding563_2jw4.dart';
|
||||
export 'padding2520_wweb.dart';
|
||||
export 'stack1909_yxtc.dart';
|
||||
export 'padding1341_9kox.dart';
|
||||
export 'padding3261_vzwy.dart';
|
||||
export 'padding5_pcnl.dart';
|
||||
export 'app_bar1219_t88q.dart';
|
||||
export 'stack3231_qtc6.dart';
|
||||
export 'stack3236_u65x.dart';
|
||||
export 'container2930_qyoo.dart';
|
||||
export 'padding2654_rvnw.dart';
|
||||
export 'container121_di37.dart';
|
||||
export 'list_tile1213_y7ek.dart';
|
||||
export 'stack3233_o59n.dart';
|
||||
export 'row1245_305i.dart';
|
||||
export 'padding564_yzg6.dart';
|
||||
export 'material_button123_qtis.dart';
|
||||
export 'package:smooth_page_indicator/smooth_page_indicator.dart';
|
||||
export 'package:flutter_rating_bar/flutter_rating_bar.dart';
|
||||
export 'package:lottie/lottie.dart';
|
||||
export 'package:flutter_otp_text_field/flutter_otp_text_field.dart';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
abstract class BaseAppBar extends StatelessWidget
|
||||
implements PreferredSizeWidget {
|
||||
const BaseAppBar({super.key});
|
||||
|
||||
Size get preferredSize => Size.fromHeight(kToolbarHeight);
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Align2939_fgkc extends StatelessWidget {
|
||||
final IconData p1;
|
||||
|
||||
Align2939_fgkc(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Align(
|
||||
alignment: Alignment.bottomRight,
|
||||
child: Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 16, 16),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 60,
|
||||
height: 60,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xff3a57e8),
|
||||
shape: BoxShape.circle,
|
||||
),
|
||||
child: Icon(p1, color: Color(0xffffffff), size: 24),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar1048_e0na extends BaseAppBar {
|
||||
final IconData p3;
|
||||
final IconData p2;
|
||||
final String p1;
|
||||
|
||||
AppBar1048_e0na(this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 4,
|
||||
centerTitle: false,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0xff3a57e8),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xffffffff),
|
||||
),
|
||||
),
|
||||
actions: [
|
||||
Icon(p2, color: Color(0xffffffff), size: 22),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(8, 0, 16, 0),
|
||||
child: Icon(p3, color: Color(0xffffffff), size: 22),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar1219_t88q extends BaseAppBar {
|
||||
final String p1;
|
||||
|
||||
AppBar1219_t88q(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 4,
|
||||
centerTitle: false,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0xff3a57e8),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xffffffff),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar2671_1agg extends BaseAppBar {
|
||||
final VoidCallback p2;
|
||||
final String p1;
|
||||
|
||||
AppBar2671_1agg(this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 0,
|
||||
centerTitle: true,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0x00ffffff),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
leading: IconButton(
|
||||
icon: Icon(Icons.menu, color: Color(0xff212435), size: 24),
|
||||
onPressed: p2,
|
||||
),
|
||||
actions: [Icon(Icons.search, color: Color(0xff212435), size: 24)],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar2944_rotl extends BaseAppBar {
|
||||
final String p1;
|
||||
|
||||
AppBar2944_rotl(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 4,
|
||||
centerTitle: false,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0xff3a57e8),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xfff9f9f9),
|
||||
),
|
||||
),
|
||||
actions: [
|
||||
Icon(Icons.search, color: Color(0xffffffff), size: 22),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(8, 0, 16, 0),
|
||||
child: Icon(Icons.dashboard, color: Color(0xffffffff), size: 22),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar3210_xy2e extends BaseAppBar {
|
||||
final IconData p3;
|
||||
final VoidCallback p2;
|
||||
final String p1;
|
||||
|
||||
AppBar3210_xy2e(this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 0,
|
||||
centerTitle: false,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0xffffffff),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 18,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
leading: IconButton(
|
||||
icon: Icon(Icons.arrow_back, color: Color(0xff212435), size: 24),
|
||||
onPressed: p2,
|
||||
),
|
||||
actions: [Icon(p3, color: Color(0xff212435), size: 24)],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class AppBar682_1czg extends BaseAppBar {
|
||||
final IconData p3;
|
||||
final IconData p2;
|
||||
final String p1;
|
||||
|
||||
AppBar682_1czg(this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppBar(
|
||||
elevation: 4,
|
||||
centerTitle: false,
|
||||
automaticallyImplyLeading: false,
|
||||
backgroundColor: Color(0xff3a57e8),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xffffffff),
|
||||
),
|
||||
),
|
||||
actions: [
|
||||
Icon(p2, color: Color(0xffffffff), size: 22),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(8, 0, 16, 0),
|
||||
child: Icon(p3, color: Color(0xffffffff), size: 22),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class ClipRRect1340_ko9q extends StatelessWidget {
|
||||
final String p1;
|
||||
|
||||
ClipRRect1340_ko9q(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return ClipRRect(
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
child:
|
||||
///***If you have exported images you must have to copy those images in assets/images directory.
|
||||
Image(
|
||||
image: NetworkImage(p1),
|
||||
height: 200,
|
||||
width: MediaQuery.of(context).size.width,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container1042_49si extends StatelessWidget {
|
||||
final String p6;
|
||||
final String p5;
|
||||
final IconData p4;
|
||||
final IconData p3;
|
||||
final String p2;
|
||||
final IconData p1;
|
||||
|
||||
Container1042_49si(
|
||||
this.p6,
|
||||
this.p5,
|
||||
this.p4,
|
||||
this.p3,
|
||||
this.p2,
|
||||
this.p1, {
|
||||
super.key,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 0, 16),
|
||||
padding: EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xff3a57e8), size: 50),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.fromLTRB(16, 0, 0, 0),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 0,
|
||||
horizontal: 8,
|
||||
),
|
||||
child: Icon(
|
||||
p3,
|
||||
color: Color(0xffffac00),
|
||||
size: 20,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Icon(p4, color: Color(0xff212435), size: 20),
|
||||
],
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 4, 0, 0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p5,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff393939),
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(8, 0, 0, 0),
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 4,
|
||||
horizontal: 8,
|
||||
),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x343a57e8),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(4.0),
|
||||
),
|
||||
child: Text(
|
||||
p6,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 12,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container1044_awqh extends StatelessWidget {
|
||||
final String p6;
|
||||
final String p5;
|
||||
final IconData p4;
|
||||
final IconData p3;
|
||||
final String p2;
|
||||
final IconData p1;
|
||||
|
||||
Container1044_awqh(
|
||||
this.p6,
|
||||
this.p5,
|
||||
this.p4,
|
||||
this.p3,
|
||||
this.p2,
|
||||
this.p1, {
|
||||
super.key,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 0, 16),
|
||||
padding: EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xff3a57e8), size: 50),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.fromLTRB(16, 0, 0, 0),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 0,
|
||||
horizontal: 8,
|
||||
),
|
||||
child: Icon(
|
||||
p3,
|
||||
color: Color(0xffffac00),
|
||||
size: 20,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Icon(p4, color: Color(0xff212435), size: 20),
|
||||
],
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 4, 0, 0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p5,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff393939),
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(8, 0, 0, 0),
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 4,
|
||||
horizontal: 8,
|
||||
),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x343a57e8),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(4.0),
|
||||
),
|
||||
child: Text(
|
||||
p6,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 12,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container1045_jwip extends StatelessWidget {
|
||||
final String p6;
|
||||
final String p5;
|
||||
final IconData p4;
|
||||
final IconData p3;
|
||||
final String p2;
|
||||
final IconData p1;
|
||||
|
||||
Container1045_jwip(
|
||||
this.p6,
|
||||
this.p5,
|
||||
this.p4,
|
||||
this.p3,
|
||||
this.p2,
|
||||
this.p1, {
|
||||
super.key,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 0, 16),
|
||||
padding: EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xff3a57e8), size: 50),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.fromLTRB(16, 0, 0, 0),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 0,
|
||||
horizontal: 8,
|
||||
),
|
||||
child: Icon(
|
||||
p3,
|
||||
color: Color(0xffffac00),
|
||||
size: 20,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Icon(p4, color: Color(0xff212435), size: 20),
|
||||
],
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 4, 0, 0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p5,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff393939),
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(8, 0, 0, 0),
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 4,
|
||||
horizontal: 8,
|
||||
),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x343a57e8),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(4.0),
|
||||
),
|
||||
child: Text(
|
||||
p6,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 12,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container121_di37 extends StatelessWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final String p2;
|
||||
final Color p1;
|
||||
|
||||
Container121_di37(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 140,
|
||||
height: 180,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0xffff5630), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Container(
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 40,
|
||||
height: 40,
|
||||
decoration: BoxDecoration(color: p1, shape: BoxShape.circle),
|
||||
child: Icon(Icons.done, color: Color(0xffffffff), size: 24),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 8, 0, 0),
|
||||
child: Text(
|
||||
p3,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
child: Text(
|
||||
p4,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xbe8a8989),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container122_a8w6 extends StatelessWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final String p2;
|
||||
final Color p1;
|
||||
|
||||
Container122_a8w6(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(16, 0, 0, 0),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 140,
|
||||
height: 180,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x68898989), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Container(
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 40,
|
||||
height: 40,
|
||||
decoration: BoxDecoration(color: p1, shape: BoxShape.circle),
|
||||
child: Icon(Icons.done, color: Color(0xffffffff), size: 24),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 8, 0, 0),
|
||||
child: Text(
|
||||
p3,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
child: Text(
|
||||
p4,
|
||||
textAlign: TextAlign.center,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xbe8a8989),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,110 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container1915_m39v extends StatefulWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final String p2;
|
||||
final String p1;
|
||||
|
||||
Container1915_m39v(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
State<Container1915_m39v> createState() => _Container1915_m39vState();
|
||||
}
|
||||
|
||||
class _Container1915_m39vState extends State<Container1915_m39v> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(8, 0, 0, 0),
|
||||
padding: EdgeInsets.all(0),
|
||||
width: 280,
|
||||
height: 100,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x00000000),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
ClipRRect(
|
||||
borderRadius: BorderRadius.only(
|
||||
topLeft: Radius.circular(12.0),
|
||||
bottomLeft: Radius.circular(12.0),
|
||||
),
|
||||
child:
|
||||
///***If you have exported images you must have to copy those images in assets/images directory.
|
||||
Image(image: NetworkImage(widget.p1), fit: BoxFit.cover),
|
||||
),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.fromLTRB(8, 4, 0, 4),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Text(
|
||||
widget.p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 12,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 4, 0, 0),
|
||||
child: Text(
|
||||
widget.p3,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 11,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
child: Text(
|
||||
widget.p4,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 12,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container2930_2rhj extends StatelessWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final IconData p2;
|
||||
final IconData p1;
|
||||
|
||||
Container2930_2rhj(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 16, 0),
|
||||
padding: EdgeInsets.all(12),
|
||||
width: 150,
|
||||
height: 170,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x00ffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xffffc000), size: 24),
|
||||
Icon(p2, color: Color(0xff212435), size: 24),
|
||||
],
|
||||
),
|
||||
ImageIcon(NetworkImage(p3), size: 80, color: Color(0xffd46d24)),
|
||||
Text(
|
||||
p4,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container2930_qyoo extends StatelessWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final IconData p2;
|
||||
final IconData p1;
|
||||
|
||||
Container2930_qyoo(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 0, 16, 0),
|
||||
padding: EdgeInsets.all(12),
|
||||
width: 150,
|
||||
height: 170,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x00ffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xffffc000), size: 24),
|
||||
Icon(p2, color: Color(0xff212435), size: 24),
|
||||
],
|
||||
),
|
||||
ImageIcon(NetworkImage(p3), size: 80, color: Color(0xffd46d24)),
|
||||
Text(
|
||||
p4,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container2933_cvn3 extends StatelessWidget {
|
||||
final String p5;
|
||||
final String p4;
|
||||
final String p3;
|
||||
final IconData p2;
|
||||
final IconData p1;
|
||||
|
||||
Container2933_cvn3(this.p5, this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x00ffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Icon(p1, color: Color(0xffffc000), size: 24),
|
||||
Icon(p2, color: Color(0xff212435), size: 24),
|
||||
],
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 8),
|
||||
child: Text(
|
||||
p3,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p4,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
padding: EdgeInsets.symmetric(vertical: 4, horizontal: 8),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x343a57e8),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(4.0),
|
||||
),
|
||||
child: Text(
|
||||
p5,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container2934_5anc extends StatelessWidget {
|
||||
final String p4;
|
||||
final String p3;
|
||||
final String p2;
|
||||
final IconData p1;
|
||||
|
||||
Container2934_5anc(this.p4, this.p3, this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x00ffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
children: [
|
||||
SizedBox(height: 16, width: 16),
|
||||
Icon(p1, color: Color(0xff212435), size: 24),
|
||||
],
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 16, 0, 8),
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Expanded(
|
||||
flex: 1,
|
||||
child: Text(
|
||||
p3,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
),
|
||||
),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(0, 16, 0, 0),
|
||||
padding: EdgeInsets.symmetric(vertical: 4, horizontal: 8),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0x343a57e8),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(4.0),
|
||||
),
|
||||
child: Text(
|
||||
p4,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 14,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Container676_u4q2 extends StatelessWidget {
|
||||
final String p2;
|
||||
final String p1;
|
||||
|
||||
Container676_u4q2(this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
alignment: Alignment.center,
|
||||
margin: EdgeInsets.all(0),
|
||||
padding: EdgeInsets.all(0),
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xffffffff),
|
||||
shape: BoxShape.rectangle,
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
border: Border.all(color: Color(0x4d9e9e9e), width: 1),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
Text(
|
||||
p1,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 20,
|
||||
color: Color(0xff3a57e8),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.fromLTRB(0, 8, 0, 0),
|
||||
child: Text(
|
||||
p2,
|
||||
textAlign: TextAlign.start,
|
||||
overflow: TextOverflow.clip,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff4c4c4c),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Divider1211_akau extends StatelessWidget {
|
||||
Divider1211_akau({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Divider(
|
||||
color: Color(0x4d9e9e9e),
|
||||
height: 16,
|
||||
thickness: 1,
|
||||
indent: 0,
|
||||
endIndent: 0,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Divider1211_qqok extends StatelessWidget {
|
||||
Divider1211_qqok({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Divider(
|
||||
color: Color(0x4d9e9e9e),
|
||||
height: 16,
|
||||
thickness: 1,
|
||||
indent: 0,
|
||||
endIndent: 0,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class Divider1211_quka extends StatelessWidget {
|
||||
Divider1211_quka({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Divider(
|
||||
color: Color(0x4d9e9e9e),
|
||||
height: 16,
|
||||
thickness: 1,
|
||||
indent: 0,
|
||||
endIndent: 0,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class ListTile1210_3rti extends StatelessWidget {
|
||||
final String p1;
|
||||
|
||||
ListTile1210_3rti(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return ListTile(
|
||||
tileColor: Color(0xffffffff),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
textAlign: TextAlign.start,
|
||||
),
|
||||
dense: true,
|
||||
contentPadding: EdgeInsets.all(0),
|
||||
selected: false,
|
||||
selectedTileColor: Color(0x42000000),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
trailing: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
color: Color(0xff000000),
|
||||
size: 18,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class ListTile1213_y7ek extends StatelessWidget {
|
||||
final String p1;
|
||||
|
||||
ListTile1213_y7ek(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return ListTile(
|
||||
tileColor: Color(0xffffffff),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
textAlign: TextAlign.start,
|
||||
),
|
||||
dense: true,
|
||||
contentPadding: EdgeInsets.all(0),
|
||||
selected: false,
|
||||
selectedTileColor: Color(0x42000000),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
trailing: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
color: Color(0xff000000),
|
||||
size: 18,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class ListTile1214_lcq3 extends StatelessWidget {
|
||||
final String p1;
|
||||
|
||||
ListTile1214_lcq3(this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return ListTile(
|
||||
tileColor: Color(0xffffffff),
|
||||
title: Text(
|
||||
p1,
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w400,
|
||||
fontStyle: FontStyle.normal,
|
||||
fontSize: 16,
|
||||
color: Color(0xff000000),
|
||||
),
|
||||
textAlign: TextAlign.start,
|
||||
),
|
||||
dense: true,
|
||||
contentPadding: EdgeInsets.all(0),
|
||||
selected: false,
|
||||
selectedTileColor: Color(0x42000000),
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
trailing: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
color: Color(0xff000000),
|
||||
size: 18,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class MaterialButton1215_0qfr extends StatelessWidget {
|
||||
final String p2;
|
||||
final VoidCallback p1;
|
||||
|
||||
MaterialButton1215_0qfr(this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialButton(
|
||||
onPressed: p1,
|
||||
color: Color(0x343a57e8),
|
||||
elevation: 0,
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.zero),
|
||||
padding: EdgeInsets.all(16),
|
||||
child: Text(
|
||||
p2,
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
),
|
||||
),
|
||||
textColor: Color(0xff3a57e8),
|
||||
height: 40,
|
||||
minWidth: MediaQuery.of(context).size.width,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
//import 'package:collection/collection.dart';
|
||||
import 'dart:math';
|
||||
|
||||
import '../../app.dart';
|
||||
import '../../common/constants.dart';
|
||||
import '../../common/utils.dart';
|
||||
import '../../data/models/_models.dart';
|
||||
import '../components/_components.dart';
|
||||
|
||||
class MaterialButton1217_jwby extends StatelessWidget {
|
||||
final String p2;
|
||||
final VoidCallback p1;
|
||||
|
||||
MaterialButton1217_jwby(this.p2, this.p1, {super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialButton(
|
||||
onPressed: p1,
|
||||
color: Color(0x343a57e8),
|
||||
elevation: 0,
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12.0)),
|
||||
padding: EdgeInsets.all(16),
|
||||
child: Text(
|
||||
p2,
|
||||
style: TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontStyle: FontStyle.normal,
|
||||
),
|
||||
),
|
||||
textColor: Color(0xff3a57e8),
|
||||
minWidth: MediaQuery.of(context).size.width,
|
||||
);
|
||||
}
|
||||
}
|
||||