feat(clean_code_architecture): add ios, android, web platforms template
@ -7,7 +7,7 @@ Create clean new **Flutter** project from scratch following Clean Code Architect
 | 
			
		||||
## Usage 🚀
 | 
			
		||||
 | 
			
		||||
```sh
 | 
			
		||||
mason make wyatt_clean_code
 | 
			
		||||
mason make wyatt_clean_code --project_name app --org_name fr.wyattstudio.app --description A new Wyatt Studio project. --platforms=android,ios --features=analysis,localization
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Variables ✨
 | 
			
		||||
@ -20,5 +20,70 @@ mason make wyatt_clean_code
 | 
			
		||||
| `platforms` | Supported platforms | [android, ios] | `array` |
 | 
			
		||||
| `features` | Enabled features | [analysis, localization] | `array` |
 | 
			
		||||
 | 
			
		||||
## Output 📦
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
--project_name app --org_name fr.wyattstudio.app --description A new Wyatt Studio project. --platforms=android,ios,web --features=analysis,localization,router
 | 
			
		||||
├── .vscode/
 | 
			
		||||
|   ├── launch.json
 | 
			
		||||
|   └── settings.json
 | 
			
		||||
├── android
 | 
			
		||||
|   └── ...
 | 
			
		||||
├── assets
 | 
			
		||||
|   ├── l10n
 | 
			
		||||
|   |   └── intl_fr.arb
 | 
			
		||||
|   ├── colors
 | 
			
		||||
|   |   └── dark.xml
 | 
			
		||||
|   ├── fonts
 | 
			
		||||
|   └── images
 | 
			
		||||
├── ios
 | 
			
		||||
|   └── ...
 | 
			
		||||
├── lib
 | 
			
		||||
|   ├── core
 | 
			
		||||
|   |   ├── enums
 | 
			
		||||
|   |   ├── errors
 | 
			
		||||
|   |   ├── extensions
 | 
			
		||||
|   |   |   └── l10n.dart
 | 
			
		||||
|   |   ├── resources
 | 
			
		||||
|   |   |   ├── app_router.dart
 | 
			
		||||
|   |   |   └── app_theme.dart
 | 
			
		||||
|   |   └── utils
 | 
			
		||||
|   |       └── app_bloc_observer.dart
 | 
			
		||||
|   ├── data
 | 
			
		||||
|   |   ├── models
 | 
			
		||||
|   |   ├── providers
 | 
			
		||||
|   |   └── repositories
 | 
			
		||||
|   ├── domain
 | 
			
		||||
|   |   ├── entities
 | 
			
		||||
|   |   └── repositories
 | 
			
		||||
|   ├── presentation
 | 
			
		||||
|   |   ├── bloc
 | 
			
		||||
|   |   |   └── counter_cubit
 | 
			
		||||
|   |   |       └── counter_cubit.dart
 | 
			
		||||
|   |   ├── pages
 | 
			
		||||
|   |   |   ├── counter
 | 
			
		||||
|   |   |   |   ├── widgets
 | 
			
		||||
|   |   |   |   |   └── counter_text.dart
 | 
			
		||||
|   |   |   |   └── counter_page.dart
 | 
			
		||||
|   |   |   └── initial
 | 
			
		||||
|   |   |   |   └── initial_page.dart
 | 
			
		||||
|   |   └── shared
 | 
			
		||||
|   |   |   ├── layouts
 | 
			
		||||
|   |   |   ├── state_management
 | 
			
		||||
|   |   |   |   └── counter_state_management.dart
 | 
			
		||||
|   |   |   └── widgets
 | 
			
		||||
|   ├── app.dart
 | 
			
		||||
|   ├── main.dart
 | 
			
		||||
|   └── widget_tree.dart
 | 
			
		||||
├── scripts
 | 
			
		||||
├── web
 | 
			
		||||
|   └── ...
 | 
			
		||||
├── l10n.yaml
 | 
			
		||||
├── Makefile
 | 
			
		||||
├── pubspec.yaml
 | 
			
		||||
└── analysis_options.yaml
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Prerequisite 
 | 
			
		||||
No prerequisites needed.
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,5 @@
 | 
			
		||||
.PHONY: help clean get upgrade format lint
 | 
			
		||||
.PHONY: help clean get upgrade format lint gen
 | 
			
		||||
 | 
			
		||||
# Adding a help file: https://gist.github.com/prwhite/8168133#gistcomment-1313022
 | 
			
		||||
help: ## This help dialog.
 | 
			
		||||
	@IFS=$$'\n' ; \
 | 
			
		||||
@ -32,9 +33,6 @@ lint: ## Lints the code.
 | 
			
		||||
	@echo "• Verifying code..."
 | 
			
		||||
	@dart analyze . || (echo "Error in project"; exit 1)
 | 
			
		||||
 | 
			
		||||
# {{#enable_l10n}}
 | 
			
		||||
.PHONY: intl
 | 
			
		||||
intl: get ## Generates the intl files.
 | 
			
		||||
	@echo "• Generating the intl files"
 | 
			
		||||
	@flutter pub run intl_utils:generate
 | 
			
		||||
# {{/enable_l10n}}
 | 
			
		||||
gen: get ## Run build_runner (Freezed, Fluttergen, etc...)
 | 
			
		||||
	@echo "• Running build_runner scripts"
 | 
			
		||||
	@flutter pub run build_runner build
 | 
			
		||||
							
								
								
									
										9
									
								
								bricks/wyatt_clean_code/__brick__/assets/colors/dark.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,9 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<resources>
 | 
			
		||||
    <color name="white">#FFFFFF</color>
 | 
			
		||||
    <color name="black">#000000</color>
 | 
			
		||||
    <color name="gray_70">#EEEEEE</color>
 | 
			
		||||
    <color name="gray_410">#979797</color>
 | 
			
		||||
    <color name="crimson_red" type="material">#CF2A2A</color>
 | 
			
		||||
    <color name="yellow_ocher" type="material material-accent">#DF9527</color>
 | 
			
		||||
</resources>
 | 
			
		||||
@ -1,5 +1,11 @@
 | 
			
		||||
{
 | 
			
		||||
    "@@locale": "fr_FR",
 | 
			
		||||
    "@@locale": "fr",
 | 
			
		||||
    "counterAppBarTitle": "Compteur",
 | 
			
		||||
    "goToCounter": "Aller au Compteur"
 | 
			
		||||
    "@counterAppBarTitle": {
 | 
			
		||||
        "description": "Texte affiché dans l'AppBar de la page Compteur"
 | 
			
		||||
    },
 | 
			
		||||
    "goToCounter": "Aller au Compteur",
 | 
			
		||||
    "@goToCounter": {
 | 
			
		||||
        "description": "Texte affiché dans le bouton ammenant vers la page Compteur"
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										4
									
								
								bricks/wyatt_clean_code/__brick__/l10n.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,4 @@
 | 
			
		||||
arb-dir: assets/l10n
 | 
			
		||||
template-arb-file: intl_fr.arb
 | 
			
		||||
output-localization-file: app_localizations.dart
 | 
			
		||||
nullable-getter: false
 | 
			
		||||
@ -0,0 +1,8 @@
 | 
			
		||||
import 'package:flutter/widgets.dart';
 | 
			
		||||
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
 | 
			
		||||
 | 
			
		||||
export 'package:flutter_gen/gen_l10n/app_localizations.dart';
 | 
			
		||||
 | 
			
		||||
extension AppLocalizationsX on BuildContext {
 | 
			
		||||
  AppLocalizations get l10n => AppLocalizations.of(this);
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,8 @@
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/gen/colors.gen.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
 | 
			
		||||
abstract class AppTheme {
 | 
			
		||||
  static ThemeData defaultTheme = ThemeData(
 | 
			
		||||
    primaryColor: ColorName.crimsonRed
 | 
			
		||||
  );
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:flutter_bloc/flutter_bloc.dart';
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/core/logic/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/presentation/bloc/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/presentation/shared/state_management/counter_state_management.dart';
 | 
			
		||||
{{#enable_l10n}}import 'package:{{project_name.snakeCase()}}/generated/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
{{#enable_l10n}}import 'package:{{project_name.snakeCase()}}/core/extensions/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/presentation/pages/counter/widgets/counter_text.dart';
 | 
			
		||||
 | 
			
		||||
class CounterPage extends StatelessWidget {
 | 
			
		||||
@ -13,7 +13,7 @@ class CounterPage extends StatelessWidget {
 | 
			
		||||
    return CounterStateManagement(
 | 
			
		||||
      builder: (BuildContext context, int state) {
 | 
			
		||||
        return Scaffold(
 | 
			
		||||
          {{#enable_l10n}}appBar: AppBar(title: Text(S.of(context).counterAppBarTitle)),{{/enable_l10n}}
 | 
			
		||||
          {{#enable_l10n}}appBar: AppBar(title: Text(context.l10n.counterAppBarTitle)),{{/enable_l10n}}
 | 
			
		||||
          {{^enable_l10n}}appBar: AppBar(title: Text('Counter')),{{/enable_l10n}}
 | 
			
		||||
          body: const Center(child: CounterText()),
 | 
			
		||||
          floatingActionButton: Column(
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/core/logic/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/presentation/bloc/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:flutter_bloc/flutter_bloc.dart';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
{{#enable_router}}import 'package:go_router/go_router.dart';
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/resources/app_router.dart';{{/enable_router}}
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/core/resources/app_router.dart';{{/enable_router}}
 | 
			
		||||
{{^enable_router}}import 'package:{{project_name.snakeCase()}}/presentation/pages/counter/counter_page.dart';{{/enable_router}}
 | 
			
		||||
{{#enable_l10n}}import 'package:{{project_name.snakeCase()}}/generated/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
{{#enable_l10n}}import 'package:{{project_name.snakeCase()}}/core/extensions/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
 | 
			
		||||
class InitialPage extends StatelessWidget {
 | 
			
		||||
  const InitialPage({super.key});
 | 
			
		||||
@ -16,7 +16,7 @@ class InitialPage extends StatelessWidget {
 | 
			
		||||
          Center(child: ElevatedButton(
 | 
			
		||||
            {{#enable_router}}onPressed: () => context.goNamed(AppRouter.counter),{{/enable_router}}
 | 
			
		||||
            {{^enable_router}}onPressed: () => Navigator.of(context).push(MaterialPageRoute(builder: (context) => CounterPage())),{{/enable_router}}
 | 
			
		||||
            {{#enable_l10n}}child: Text(S.of(context).goToCounter),{{/enable_l10n}}
 | 
			
		||||
            {{#enable_l10n}}child: Text(context.l10n.goToCounter),{{/enable_l10n}}
 | 
			
		||||
            {{^enable_l10n}}child: Text('Go to counter'),{{/enable_l10n}}
 | 
			
		||||
          ),)
 | 
			
		||||
        ],
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/core/logic/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:{{#snakeCase}}{{project_name}}{{/snakeCase}}/presentation/bloc/counter_cubit/counter_cubit.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:wyatt_bloc_helper/wyatt_bloc_helper.dart';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
 | 
			
		||||
abstract class AppTheme {
 | 
			
		||||
  static ThemeData defaultTheme = ThemeData(
 | 
			
		||||
    primaryColor: Colors.blue
 | 
			
		||||
  );
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
{{#enable_router}}import 'package:{{project_name.snakeCase()}}/resources/app_router.dart';
 | 
			
		||||
{{#enable_router}}import 'package:{{project_name.snakeCase()}}/core/resources/app_router.dart';
 | 
			
		||||
import 'package:go_router/go_router.dart';{{/enable_router}}
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/resources/app_theme.dart';
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/core/resources/app_theme.dart';
 | 
			
		||||
{{#enable_l10n}}import 'package:flutter_localizations/flutter_localizations.dart';
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/generated/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/core/extensions/l10n.dart';{{/enable_l10n}}
 | 
			
		||||
import 'package:{{project_name.snakeCase()}}/presentation/pages/initial/initial_page.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
 | 
			
		||||
@ -35,7 +35,7 @@ class WidgetTree extends StatelessWidget {
 | 
			
		||||
          routerDelegate: _router.routerDelegate,
 | 
			
		||||
          theme: AppTheme.defaultTheme,
 | 
			
		||||
          {{#enable_l10n}}localizationsDelegates: const [
 | 
			
		||||
            S.delegate,
 | 
			
		||||
            AppLocalizations.delegate,
 | 
			
		||||
            GlobalMaterialLocalizations.delegate,
 | 
			
		||||
            GlobalWidgetsLocalizations.delegate,
 | 
			
		||||
            GlobalCupertinoLocalizations.delegate,
 | 
			
		||||
@ -51,7 +51,7 @@ class WidgetTree extends StatelessWidget {
 | 
			
		||||
          theme: AppTheme.defaultTheme,
 | 
			
		||||
          home: const InitialPage(),
 | 
			
		||||
          {{#enable_l10n}}localizationsDelegates: const [
 | 
			
		||||
            S.delegate,
 | 
			
		||||
            AppLocalizations.delegate,
 | 
			
		||||
            GlobalMaterialLocalizations.delegate,
 | 
			
		||||
            GlobalWidgetsLocalizations.delegate,
 | 
			
		||||
            GlobalCupertinoLocalizations.delegate,
 | 
			
		||||
 | 
			
		||||
@ -10,7 +10,7 @@ environment:
 | 
			
		||||
dependencies:
 | 
			
		||||
  flutter:
 | 
			
		||||
    sdk: flutter
 | 
			
		||||
  # {{#enable_l10n}} Localization
 | 
			
		||||
  #{{#enable_l10n}} Localization
 | 
			
		||||
  flutter_localizations:
 | 
			
		||||
    sdk: flutter
 | 
			
		||||
  intl: ^0.17.0
 | 
			
		||||
@ -29,15 +29,15 @@ dependencies:
 | 
			
		||||
  #{{/enable_forms}}{{#enable_freezed}} Freezed: model generation
 | 
			
		||||
  freezed_annotation: ^2.0.3
 | 
			
		||||
  json_annotation: ^4.5.0
 | 
			
		||||
  # {{/enable_freezed}}{{#enable_http}} Advanced HTTP Client
 | 
			
		||||
  #{{/enable_freezed}}{{#enable_http}} Advanced HTTP Client
 | 
			
		||||
  wyatt_http_client:
 | 
			
		||||
    git:
 | 
			
		||||
      url: https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages
 | 
			
		||||
      ref: wyatt_http_client-v1.2.0
 | 
			
		||||
      path: packages/wyatt_http_client
 | 
			
		||||
  # {{/enable_http}}{{#enable_router}} Router
 | 
			
		||||
  #{{/enable_http}}{{#enable_router}} Router
 | 
			
		||||
  go_router: ^4.1.0
 | 
			
		||||
  # {{/enable_router}}
 | 
			
		||||
  #{{/enable_router}}
 | 
			
		||||
 | 
			
		||||
  flutter_bloc: ^8.0.1
 | 
			
		||||
  equatable: ^2.0.3
 | 
			
		||||
@ -55,28 +55,25 @@ dev_dependencies:
 | 
			
		||||
    sdk: flutter
 | 
			
		||||
  build_runner: ^2.1.11
 | 
			
		||||
  dependency_validator: ^3.2.0
 | 
			
		||||
  
 | 
			
		||||
  # {{#enable_l10n}} Localization utils
 | 
			
		||||
  intl_utils: ^2.6.1
 | 
			
		||||
  # {{/enable_l10n}}{{#enable_freezed}} Freezed utils
 | 
			
		||||
  flutter_gen_runner: ^4.3.0
 | 
			
		||||
  #{{#enable_freezed}} Freezed utils
 | 
			
		||||
  freezed: ^2.0.3+1
 | 
			
		||||
  json_serializable: ^6.2.0
 | 
			
		||||
  # {{/enable_freezed}}{{#enable_analysis}} Analyzer
 | 
			
		||||
  #{{/enable_freezed}}{{#enable_analysis}} Analyzer
 | 
			
		||||
  wyatt_analysis:
 | 
			
		||||
    git:
 | 
			
		||||
      url: https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages
 | 
			
		||||
      ref: wyatt_analysis-v2.1.0
 | 
			
		||||
      path: packages/wyatt_analysis
 | 
			
		||||
  # {{/enable_analysis}}{{^enable_analysis}}
 | 
			
		||||
  #{{/enable_analysis}}{{^enable_analysis}}
 | 
			
		||||
  flutter_lints: ^1.0.0
 | 
			
		||||
  # {{/enable_analysis}}
 | 
			
		||||
  #{{/enable_analysis}}
 | 
			
		||||
 | 
			
		||||
flutter_gen:
 | 
			
		||||
  colors:
 | 
			
		||||
    inputs:
 | 
			
		||||
      - assets/colors/dark.xml
 | 
			
		||||
 | 
			
		||||
flutter:
 | 
			
		||||
  uses-material-design: true
 | 
			
		||||
 | 
			
		||||
# {{#enable_l10n}} Localization config
 | 
			
		||||
flutter_intl:
 | 
			
		||||
  enabled: true
 | 
			
		||||
  main_locale: fr
 | 
			
		||||
  arb_dir: assets/l10n
 | 
			
		||||
# {{/enable_l10n}}
 | 
			
		||||
  {{#enable_l10n}}generate: true{{/enable_l10n}}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										0
									
								
								bricks/wyatt_clean_code/__brick__/scripts/.gitkeep
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										13
									
								
								bricks/wyatt_clean_code/__brick__/{{#enable_android}}android{{/enable_android}}/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@ -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 "{{#dotCase}}{{org_name}}{{/dotCase}}.{{#snakeCase}}{{project_name}}{{/snakeCase}}"
 | 
			
		||||
        // 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="{{#dotCase}}{{org_name}}{{/dotCase}}.{{#snakeCase}}{{project_name}}{{/snakeCase}}">
 | 
			
		||||
    <!-- 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="{{#dotCase}}{{org_name}}{{/dotCase}}.{{#snakeCase}}{{project_name}}{{/snakeCase}}">
 | 
			
		||||
   <application
 | 
			
		||||
        android:label="test"
 | 
			
		||||
        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 {{#dotCase}}{{org_name}}{{/dotCase}}.{{#snakeCase}}{{project_name}}{{/snakeCase}}
 | 
			
		||||
 | 
			
		||||
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="{{#dotCase}}{{org_name}}{{/dotCase}}.{{#snakeCase}}{{project_name}}{{/snakeCase}}">
 | 
			
		||||
    <!-- 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"
 | 
			
		||||
							
								
								
									
										34
									
								
								bricks/wyatt_clean_code/__brick__/{{#enable_ios}}ios{{/enable_ios}}/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@ -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,484 @@
 | 
			
		||||
// !$*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)";
 | 
			
		||||
				DEVELOPMENT_TEAM = 6Z5P8GG96U;
 | 
			
		||||
				ENABLE_BITCODE = NO;
 | 
			
		||||
				INFOPLIST_FILE = Runner/Info.plist;
 | 
			
		||||
				LD_RUNPATH_SEARCH_PATHS = (
 | 
			
		||||
					"$(inherited)",
 | 
			
		||||
					"@executable_path/Frameworks",
 | 
			
		||||
				);
 | 
			
		||||
				PRODUCT_BUNDLE_IDENTIFIER = dotCaseorgnamedotCase.test;
 | 
			
		||||
				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)";
 | 
			
		||||
				DEVELOPMENT_TEAM = 6Z5P8GG96U;
 | 
			
		||||
				ENABLE_BITCODE = NO;
 | 
			
		||||
				INFOPLIST_FILE = Runner/Info.plist;
 | 
			
		||||
				LD_RUNPATH_SEARCH_PATHS = (
 | 
			
		||||
					"$(inherited)",
 | 
			
		||||
					"@executable_path/Frameworks",
 | 
			
		||||
				);
 | 
			
		||||
				PRODUCT_BUNDLE_IDENTIFIER = dotCaseorgnamedotCase.test;
 | 
			
		||||
				PRODUCT_NAME = "$(TARGET_NAME)";
 | 
			
		||||
				SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
 | 
			
		||||
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 | 
			
		||||
				SWIFT_VERSION = 5.0;
 | 
			
		||||
				VERSIONING_SYSTEM = "apple-generic";
 | 
			
		||||
			};
 | 
			
		||||
			name = Debug;
 | 
			
		||||
		};
 | 
			
		||||
		97C147071CF9000F007C117D /* Release */ = {
 | 
			
		||||
			isa = XCBuildConfiguration;
 | 
			
		||||
			baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
 | 
			
		||||
			buildSettings = {
 | 
			
		||||
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 | 
			
		||||
				CLANG_ENABLE_MODULES = YES;
 | 
			
		||||
				CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
 | 
			
		||||
				DEVELOPMENT_TEAM = 6Z5P8GG96U;
 | 
			
		||||
				ENABLE_BITCODE = NO;
 | 
			
		||||
				INFOPLIST_FILE = Runner/Info.plist;
 | 
			
		||||
				LD_RUNPATH_SEARCH_PATHS = (
 | 
			
		||||
					"$(inherited)",
 | 
			
		||||
					"@executable_path/Frameworks",
 | 
			
		||||
				);
 | 
			
		||||
				PRODUCT_BUNDLE_IDENTIFIER = dotCaseorgnamedotCase.test;
 | 
			
		||||
				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,53 @@
 | 
			
		||||
<?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>CFBundleLocalizations</key>
 | 
			
		||||
	<array>
 | 
			
		||||
		<string>fr</string>
 | 
			
		||||
	</array>
 | 
			
		||||
	<key>CFBundleDevelopmentRegion</key>
 | 
			
		||||
	<string>$(DEVELOPMENT_LANGUAGE)</string>
 | 
			
		||||
	<key>CFBundleDisplayName</key>
 | 
			
		||||
	<string>Test</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>{{#titleCase}}{{project_name}}{{/titleCase}}</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"
 | 
			
		||||
@ -18,7 +18,7 @@
 | 
			
		||||
 | 
			
		||||
  <meta charset="UTF-8">
 | 
			
		||||
  <meta content="IE=Edge" http-equiv="X-UA-Compatible">
 | 
			
		||||
  <meta name="description" content="{{description}}">
 | 
			
		||||
  <meta name="description" content="{{{description}}}">
 | 
			
		||||
 | 
			
		||||
  <!-- iOS meta tags & icons -->
 | 
			
		||||
  <meta name="apple-mobile-web-app-capable" content="yes">
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,7 @@
 | 
			
		||||
    "display": "standalone",
 | 
			
		||||
    "background_color": "#0175C2",
 | 
			
		||||
    "theme_color": "#0175C2",
 | 
			
		||||
    "description": "{{description}}",
 | 
			
		||||
    "description": "{{{description}}}",
 | 
			
		||||
    "orientation": "portrait-primary",
 | 
			
		||||
    "prefer_related_applications": false,
 | 
			
		||||
    "icons": [
 | 
			
		||||
 | 
			
		||||
@ -20,13 +20,10 @@ import 'package:mason/mason.dart';
 | 
			
		||||
 | 
			
		||||
Future<void> run(HookContext context) async {
 | 
			
		||||
  final workingDirectory = '${Directory.current.path}';
 | 
			
		||||
  final enablel10n = context.vars['enable_l10n'] as bool;
 | 
			
		||||
  if (enablel10n) {
 | 
			
		||||
    final processIntl = await Process.start(
 | 
			
		||||
      'make',
 | 
			
		||||
      ['intl'],
 | 
			
		||||
      workingDirectory: workingDirectory,
 | 
			
		||||
    );
 | 
			
		||||
    await processIntl.stdout.pipe(stdout);
 | 
			
		||||
  }
 | 
			
		||||
  final process = await Process.start(
 | 
			
		||||
    'make',
 | 
			
		||||
    ['gen'],
 | 
			
		||||
    workingDirectory: workingDirectory,
 | 
			
		||||
  );
 | 
			
		||||
  await process.stdout.pipe(stdout);
 | 
			
		||||
}
 | 
			
		||||