diff --git a/.all-contributorsrc b/.all-contributorsrc index ab540535..d08954ac 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -220,6 +220,78 @@ "contributions": [ "code" ] + }, + { + "login": "woshixiaohuhu", + "name": "woshixiaohuhu", + "avatar_url": "https://avatars.githubusercontent.com/u/152966201?v=4", + "profile": "https://github.com/woshixiaohuhu", + "contributions": [ + "code" + ] + }, + { + "login": "hc2088", + "name": "woshixiaohuhu", + "avatar_url": "https://avatars.githubusercontent.com/u/6659505?v=4", + "profile": "https://github.com/hc2088", + "contributions": [ + "code" + ] + }, + { + "login": "yukixut", + "name": "yukixut", + "avatar_url": "https://avatars.githubusercontent.com/u/45286155?v=4", + "profile": "https://github.com/yukixut", + "contributions": [ + "code" + ] + }, + { + "login": "pearone", + "name": "pearone", + "avatar_url": "https://avatars.githubusercontent.com/u/23350428?v=4", + "profile": "https://github.com/pearone", + "contributions": [ + "code" + ] + }, + { + "login": "JOYINF1189", + "name": "JOYINF1189", + "avatar_url": "https://avatars.githubusercontent.com/u/46019591?v=4", + "profile": "https://github.com/JOYINF1189", + "contributions": [ + "code" + ] + }, + { + "login": "Blues9527", + "name": "Blues9527", + "avatar_url": "https://avatars.githubusercontent.com/u/35455720?v=4", + "profile": "https://github.com/Blues9527", + "contributions": [ + "code" + ] + }, + { + "login": "miserydx", + "name": "miserydx", + "avatar_url": "https://avatars.githubusercontent.com/u/17892391?v=4", + "profile": "https://github.com/miserydx", + "contributions": [ + "code" + ] + }, + { + "login": "CindyMini", + "name": "CICI Chan", + "avatar_url": "https://avatars.githubusercontent.com/u/16411182?v=4", + "profile": "https://github.com/CindyMini", + "contributions": [ + "code" + ] } ], "contributorsPerLine": 8 diff --git a/README-zh.md b/README-zh.md index d9b3aa69..77432344 100644 --- a/README-zh.md +++ b/README-zh.md @@ -380,7 +380,16 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Sunlight Xie

💻
lhdycxgghb

💻
Prome

💻 -
zmtzawqlp

💻 +
zmtzawqlp

💻 + + +
woshixiaohuhu

💻 +
yukixut

💻 +
pearone

💻 +
JOYINF1189

💻 +
Blues9527

💻 +
miserydx

💻 +
CICI Chan

💻 diff --git a/README.md b/README.md index 30eb8f87..5917f5c1 100644 --- a/README.md +++ b/README.md @@ -380,8 +380,16 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Sunlight Xie

💻
lhdycxgghb

💻
Prome

💻 - -
zmtzawqlp

💻 +
zmtzawqlp

💻 + + +
woshixiaohuhu

💻 +
yukixut

💻 +
pearone

💻 +
JOYINF1189

💻 +
Blues9527

💻 +
miserydx

💻 +
CICI Chan

💻 diff --git a/compiler/CHANGELOG.md b/compiler/CHANGELOG.md index f187bcc0..0bef48a3 100644 --- a/compiler/CHANGELOG.md +++ b/compiler/CHANGELOG.md @@ -1,3 +1,8 @@ +## [1.9.0] +* Support TypeArgumentList. +* Support negative value. +* Fix js isNotEmpty bug. + ## [1.8.0] * Compiler log optimized. diff --git a/compiler/pubspec.yaml b/compiler/pubspec.yaml index 417f11d4..0409d99d 100644 --- a/compiler/pubspec.yaml +++ b/compiler/pubspec.yaml @@ -1,6 +1,6 @@ name: fair_compiler description: A complier which can generate Fair bundle for widget with annotation. -version: 1.8.0 +version: 1.9.0 homepage: https://fair.58.com/ environment: @@ -28,11 +28,11 @@ dependencies: # fair_annotation: # path: ../annotation - fair_dart2dsl: ^1.4.0 + fair_dart2dsl: ^1.5.0 # fair_dart2dsl: # path: ../dart2dsl - fair_dart2js: ^1.4.0 + fair_dart2js: ^1.5.0 # fair_dart2js: # path: ../dart2js diff --git a/dart2dsl/CHANGELOG.md b/dart2dsl/CHANGELOG.md index e2817f14..f26c805c 100644 --- a/dart2dsl/CHANGELOG.md +++ b/dart2dsl/CHANGELOG.md @@ -1,3 +1,8 @@ +## 1.5.0 + +- Support TypeArgumentList. +- Support Negative Value. + ## 1.4.0 - Log optimized. diff --git a/dart2dsl/lib/fairdsl/fair_ast_gen.dart b/dart2dsl/lib/fairdsl/fair_ast_gen.dart index a4644b31..d8faeeaf 100644 --- a/dart2dsl/lib/fairdsl/fair_ast_gen.dart +++ b/dart2dsl/lib/fairdsl/fair_ast_gen.dart @@ -515,6 +515,25 @@ class CustomAstVisitor extends SimpleAstVisitor { return _buildArgumentList(_visitNodeList(node.arguments)); } + @override + Map visitTypeArgumentList(TypeArgumentList node) { + var map = {}; + for (var argument in node.arguments) { + var displayString = + argument.type?.getDisplayString(withNullability: true); + var list = []; + if (displayString != null) { + // map[displayString] = displayString; + list.add(displayString); + } + if (list.isNotEmpty) { + map['typeArgumentListDisplayString'] = list; + } + } + map.addAll(_buildTypeArgumentList(_visitNodeList(node.arguments))); + return map; + } + @override Map? visitLabel(Label node) { return _visitNode(node.label); @@ -541,19 +560,6 @@ class CustomAstVisitor extends SimpleAstVisitor { return _buildVariableExpression(expression); } - @override - Map? visitTypeArgumentList(TypeArgumentList node) { - var map = {}; - for (var argument in node.arguments) { - var displayString = - argument.type?.getDisplayString(withNullability: true); - if (displayString != null) { - map[displayString] = displayString; - } - } - return map; - } - @override Map? visitPrefixExpression(PrefixExpression node) { return _buildPrefixExpression( @@ -705,6 +711,9 @@ class CustomAstVisitor extends SimpleAstVisitor { 'body': body, }; + Map _buildTypeArgumentList(List typeArgumentList) => + {'type': 'TypeArgumentList', 'typeArgumentList': typeArgumentList}; + Map _buildArgumentList(List argumentList) => {'type': 'ArgumentList', 'argumentList': argumentList}; diff --git a/dart2dsl/lib/fairdsl/fair_ast_node.dart b/dart2dsl/lib/fairdsl/fair_ast_node.dart index 74269278..3e47c30c 100644 --- a/dart2dsl/lib/fairdsl/fair_ast_node.dart +++ b/dart2dsl/lib/fairdsl/fair_ast_node.dart @@ -432,8 +432,10 @@ class MethodInvocation extends AstNode { Expression? callee; List? argumentList; SelectAstClass? selectAstClass; + List? typeArgumentList; MethodInvocation(this.callee, this.argumentList, this.selectAstClass, + this.typeArgumentList, {Map? ast}) : super(ast: ast); @@ -444,6 +446,7 @@ class MethodInvocation extends AstNode { Expression.fromAst(ast['callee']), _parseArgumentList(ast['argumentList']), SelectAstClass.fromAst(ast['selectAstClass']), + _parseTypeArgumentList(ast['typeArguments']), ast: ast); } return null; @@ -1097,6 +1100,7 @@ class Expression extends AstNode { bool? isVariableDeclaration; bool? isVariableExpression; bool? isFuncParam; + bool? isTypeName; @override Map? toAst() => _ast; @@ -1137,6 +1141,7 @@ class Expression extends AstNode { this.isVariableDeclaration = false, this.isVariableExpression = false, this.isFuncParam =false, + this.isTypeName = false, Map? ast, }) : super(ast: ast); @@ -1237,6 +1242,8 @@ class Expression extends AstNode { isInterpolationExpression: true, ast: ast); } else if (astType == astNodeNameValue(AstNodeName.VariableExpression)) { return Expression(VariableExpression.fromAst(ast), isVariableExpression: true, ast: ast); + } else if (astType == astNodeNameValue(AstNodeName.TypeName)) { + return Expression(TypeName.fromAst(ast), isTypeName: true, ast: ast); } return null; } @@ -1311,6 +1318,8 @@ class Expression extends AstNode { _expression as InterpolationExpression; VariableExpression get asVariableExpression => _expression as VariableExpression; + + TypeName get asTypeNameExpression => _expression as TypeName; } class SelectAstClass { @@ -1350,6 +1359,19 @@ List _parseArgumentList(Map? ast) { return arguments; } +///解析TypeArgumentList 字段 +List _parseTypeArgumentList(Map? ast) { + var arguments = []; + if (ast != null) { + var astTypeArgumentList = ast['typeArgumentList'] as List?; + return astTypeArgumentList + ?.map((arg) => Expression.fromAst(arg)) + .toList() ?? + arguments; + } + return arguments; +} + //num _parseNumericValue(Map ast) { // num n = 0; // if (ast['type'] == astNodeNameValue(AstNodeName.NumericLiteral)) { diff --git a/dart2dsl/lib/fairdsl/fair_check_node_map.dart b/dart2dsl/lib/fairdsl/fair_check_node_map.dart index faf11a45..e3c58592 100644 --- a/dart2dsl/lib/fairdsl/fair_check_node_map.dart +++ b/dart2dsl/lib/fairdsl/fair_check_node_map.dart @@ -51,6 +51,6 @@ final checkNode = { 'ImplementsClauseImpl': 'visitImplementsClause', 'WithClauseImpl': 'visitWithClause', 'PropertyAccessImpl': 'visitPropertyAccess', - 'TypeArgumentListImpl': 'visitTypeArgumentList', - 'PrefixExpressionImpl': 'visitPrefixExpression' + 'PrefixExpressionImpl': 'visitPrefixExpression', + 'TypeArgumentListImpl': 'visitTypeArgumentList' }; diff --git a/dart2dsl/lib/fairdsl/fair_dsl_gen.dart b/dart2dsl/lib/fairdsl/fair_dsl_gen.dart index bb49c719..b0f4e7ee 100644 --- a/dart2dsl/lib/fairdsl/fair_dsl_gen.dart +++ b/dart2dsl/lib/fairdsl/fair_dsl_gen.dart @@ -222,6 +222,7 @@ dynamic _buildWidgetDsl( var dslMap = {}; var paMap = []; var naMap = {}; + var taMap = []; var methodInvocationExpression = widgetExpression?.asMethodInvocation; //普通类 @@ -323,6 +324,13 @@ dynamic _buildWidgetDsl( } } + //3.ta + if (methodInvocationExpression.typeArgumentList?.isNotEmpty ?? false) { + taMap.addAll(methodInvocationExpression.typeArgumentList + ?.map((ta) => ta?.asTypeNameExpression.name) ?? + []); + } + if (paMap.isNotEmpty) { dslMap.putIfAbsent('pa', () => paMap); } @@ -332,8 +340,13 @@ dynamic _buildWidgetDsl( } var typeArguments = methodInvocationExpression.toAst()?['typeArguments']; - if (typeArguments is Map) { - dslMap.putIfAbsent('ta', () => typeArguments.keys.join(',')); + if (typeArguments is Map && + typeArguments['typeArgumentListDisplayString'] is List) { + dslMap.putIfAbsent( + 'ta', () => typeArguments['typeArgumentListDisplayString'].join(',')); + } + if (taMap.isNotEmpty) { + dslMap.putIfAbsent('typeArgumentList', () => taMap); } return dslMap; diff --git a/dart2dsl/pubspec.yaml b/dart2dsl/pubspec.yaml index 2682c079..6aa07829 100644 --- a/dart2dsl/pubspec.yaml +++ b/dart2dsl/pubspec.yaml @@ -1,6 +1,6 @@ name: fair_dart2dsl description: Companion compiler for fair_compiler for converting Dart to DSL. -version: 1.4.0 +version: 1.5.0 homepage: https://fair.58.com/ environment: diff --git a/dart2js/CHANGELOG.md b/dart2js/CHANGELOG.md index e902e450..f9a2996e 100644 --- a/dart2js/CHANGELOG.md +++ b/dart2js/CHANGELOG.md @@ -1,3 +1,6 @@ +## 1.5.0 +- fix js isNotEmpty bug. + ## 1.4.0 - 升级 analyzer 版本为 5.5.0; diff --git a/dart2js/core-types/string.js b/dart2js/core-types/string.js index 3aa56283..57b85bce 100644 --- a/dart2js/core-types/string.js +++ b/dart2js/core-types/string.js @@ -27,7 +27,7 @@ Object.defineProperties(String.prototype, { }, isNotEmpty: { get: function () { - return this.length; + return !this.isEmpty; }, }, // runes: { diff --git a/dart2js/pubspec.yaml b/dart2js/pubspec.yaml index 507bf99c..b3edb5fe 100644 --- a/dart2js/pubspec.yaml +++ b/dart2js/pubspec.yaml @@ -1,6 +1,6 @@ name: fair_dart2js description: Convert individual dart file to js. -version: 1.4.0 +version: 1.5.0 homepage: https://fair.58.com/ environment: diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index 2c639d59..2822bb67 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -35,8 +35,8 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.example" - minSdkVersion 19 - targetSdkVersion 30 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } @@ -55,5 +55,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index 34dd77ef..3da38e30 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -9,7 +9,8 @@ android:theme="@style/LaunchTheme" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" - android:windowSoftInputMode="adjustResize"> + android:windowSoftInputMode="adjustResize" + android:exported="true"> diff --git a/test_case/my_app/android/app/src/main/AndroidManifest.xml b/fair_provider/example/android/app/src/main/AndroidManifest.xml similarity index 59% rename from test_case/my_app/android/app/src/main/AndroidManifest.xml rename to fair_provider/example/android/app/src/main/AndroidManifest.xml index 825001cf..da8302cc 100644 --- a/test_case/my_app/android/app/src/main/AndroidManifest.xml +++ b/fair_provider/example/android/app/src/main/AndroidManifest.xml @@ -1,15 +1,12 @@ - - + - - diff --git a/test_case/my_app/android/app/src/main/kotlin/com/example/my_app/MainActivity.kt b/fair_provider/example/android/app/src/main/kotlin/com/wuba/fair/fair_provider/example/MainActivity.kt similarity index 68% rename from test_case/my_app/android/app/src/main/kotlin/com/example/my_app/MainActivity.kt rename to fair_provider/example/android/app/src/main/kotlin/com/wuba/fair/fair_provider/example/MainActivity.kt index bab1d2fa..fa754924 100644 --- a/test_case/my_app/android/app/src/main/kotlin/com/example/my_app/MainActivity.kt +++ b/fair_provider/example/android/app/src/main/kotlin/com/wuba/fair/fair_provider/example/MainActivity.kt @@ -1,4 +1,4 @@ -package com.example.my_app +package com.wuba.fair.fair_provider.example import io.flutter.embedding.android.FlutterActivity diff --git a/fair_provider/example/android/app/src/main/res/drawable-v21/launch_background.xml b/fair_provider/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 00000000..f74085f3 --- /dev/null +++ b/fair_provider/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/test_case/my_app/android/app/src/main/res/drawable/launch_background.xml b/fair_provider/example/android/app/src/main/res/drawable/launch_background.xml similarity index 100% rename from test_case/my_app/android/app/src/main/res/drawable/launch_background.xml rename to fair_provider/example/android/app/src/main/res/drawable/launch_background.xml diff --git a/test_case/my_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/fair_provider/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from test_case/my_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png rename to fair_provider/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/test_case/my_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/fair_provider/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from test_case/my_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png rename to fair_provider/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/test_case/my_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/fair_provider/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from test_case/my_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png rename to fair_provider/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/test_case/my_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/fair_provider/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from test_case/my_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to fair_provider/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/test_case/my_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/fair_provider/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from test_case/my_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to fair_provider/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/test_case/my_app/android/app/src/main/res/values/styles.xml b/fair_provider/example/android/app/src/main/res/values-night/styles.xml similarity index 80% rename from test_case/my_app/android/app/src/main/res/values/styles.xml rename to fair_provider/example/android/app/src/main/res/values-night/styles.xml index 1f83a33f..06952be7 100644 --- a/test_case/my_app/android/app/src/main/res/values/styles.xml +++ b/fair_provider/example/android/app/src/main/res/values-night/styles.xml @@ -1,18 +1,18 @@ - + diff --git a/fair_provider/example/android/app/src/main/res/values/styles.xml b/fair_provider/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 00000000..cb1ef880 --- /dev/null +++ b/fair_provider/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/test_case/my_app/android/app/src/profile/AndroidManifest.xml b/fair_provider/example/android/app/src/profile/AndroidManifest.xml similarity index 51% rename from test_case/my_app/android/app/src/profile/AndroidManifest.xml rename to fair_provider/example/android/app/src/profile/AndroidManifest.xml index 106b2a5e..c1f315f8 100644 --- a/test_case/my_app/android/app/src/profile/AndroidManifest.xml +++ b/fair_provider/example/android/app/src/profile/AndroidManifest.xml @@ -1,6 +1,7 @@ - diff --git a/test_case/my_app/android/build.gradle b/fair_provider/example/android/build.gradle similarity index 76% rename from test_case/my_app/android/build.gradle rename to fair_provider/example/android/build.gradle index 433270e4..58a8c74b 100644 --- a/test_case/my_app/android/build.gradle +++ b/fair_provider/example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.5.31' + ext.kotlin_version = '1.7.10' repositories { google() - jcenter() + mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:4.0.0' + classpath 'com.android.tools.build:gradle:7.2.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } @@ -14,7 +14,7 @@ buildscript { allprojects { repositories { google() - jcenter() + mavenCentral() } } diff --git a/test_case/my_app/android/gradle.properties b/fair_provider/example/android/gradle.properties similarity index 78% rename from test_case/my_app/android/gradle.properties rename to fair_provider/example/android/gradle.properties index a6738207..94adc3a3 100644 --- a/test_case/my_app/android/gradle.properties +++ b/fair_provider/example/android/gradle.properties @@ -1,4 +1,3 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -android.enableR8=true diff --git a/test_case/my_app/android/gradle/wrapper/gradle-wrapper.properties b/fair_provider/example/android/gradle/wrapper/gradle-wrapper.properties similarity index 79% rename from test_case/my_app/android/gradle/wrapper/gradle-wrapper.properties rename to fair_provider/example/android/gradle/wrapper/gradle-wrapper.properties index 493072b3..3c472b99 100644 --- a/test_case/my_app/android/gradle/wrapper/gradle-wrapper.properties +++ b/fair_provider/example/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Fri Jun 23 08:50:38 CEST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip diff --git a/test_case/my_app/android/settings.gradle b/fair_provider/example/android/settings.gradle similarity index 100% rename from test_case/my_app/android/settings.gradle rename to fair_provider/example/android/settings.gradle diff --git a/fair_provider/example/assets/fair/lib_ui_counter_page.fair.js b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.js new file mode 100644 index 00000000..52efba09 --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.js @@ -0,0 +1,4 @@ +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _CounterPageState(){const inner=_CounterPageState.__inner__;if(this==__global__){return new _CounterPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_CounterPageState.prototype.ctor.apply(this,args);return this;}}_CounterPageState.__inner__=function inner(){this.counterModelJson=`{ + "count":22 +} + `;};_CounterPageState.prototype={onLoad:function onLoad(){const __thiz__=this;with(__thiz__){}},onUnload:function onUnload(){const __thiz__=this;with(__thiz__){}},_incrementCounter:function _incrementCounter(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let counterModel=context.read("CounterModel");counterModel.count++;counterModel.notify();}}},};_CounterPageState.prototype.ctor=function(){};;return _CounterPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_counter_page.fair.json b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.json new file mode 100644 index 00000000..76f4da09 --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.json @@ -0,0 +1,156 @@ +{ + "className": "FairChangeNotifierProvider", + "na": { + "initialJson": "^(counterModelJson)", + "child": { + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "title": { + "className": "Text", + "pa": [ + "计数器示例" + ] + } + } + }, + "body": { + "className": "Center", + "na": { + "child": { + "className": "Column", + "na": { + "mainAxisAlignment": "#(MainAxisAlignment.center)", + "children": [ + { + "className": "Text", + "pa": [ + "You have pushed the button this many times:" + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.readAsString", + "pa": [ + "^(value)", + "count" + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "CounterModel" + ] + }, + { + "className": "FairSelector", + "na": { + "builder": { + "className": "SugarProvider.selectorBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.anyToString", + "pa": [ + "^(value)" + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + }, + "selector": { + "className": "SugarProvider.selector", + "pa": [ + { + "className": "SugarProvider.readInt", + "pa": [ + "^(value)", + "count" + ], + "functionParameters": { + "pa": [ + "context", + "value" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "CounterModel", + "int" + ] + } + ] + } + } + } + }, + "floatingActionButton": { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "FloatingActionButton", + "na": { + "onPressed": "@(_incrementCounter(^(context)))", + "tooltip": "Increment", + "child": { + "className": "Icon", + "pa": [ + "#(Icons.add)" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + } + } + } + }, + "typeArgumentList": [ + "CounterModel" + ], + "methodMap": {}, + "digest": "9a57f6332184336987ce97b19ff50c9d" +} \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_counter_page.fair.metadata b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.metadata new file mode 100644 index 00000000..31c03c65 --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_counter_page.fair.metadata @@ -0,0 +1,7 @@ +# Generated by Fair on 2023-11-15 20:13:27.284796. + +source: example|lib/ui/counter_page.dart +md5: 819e54e126cf41cbf9f2d9b7b8bd1042 +json: example|build/fair/lib_ui_counter_page.fair.json +bin: example|build/fair/lib_ui_counter_page.fair.bin +date: 2023-11-15 20:13:27.285044 diff --git a/fair_provider/example/assets/fair/lib_ui_example_page.fair.js b/fair_provider/example/assets/fair/lib_ui_example_page.fair.js new file mode 100644 index 00000000..fb31eeed --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page.fair.js @@ -0,0 +1,11 @@ +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ExamplePageState(){const inner=_ExamplePageState.__inner__;if(this==__global__){return new _ExamplePageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ExamplePageState.prototype.ctor.apply(this,args);return this;}}_ExamplePageState.__inner__=function inner(){this.exampleModelJson=`{ + "stringField":"字符串字段", + "intField":22, + "doubleField":3.3, + "boolField":true, + "listField":[1,2,3,4], + "innerModel":{ + "innerBoolField":false + } +} + `;this.stringList=['白日依山尽','黄河入海流','欲穷千里目','更上一层楼'];this.stringIndex=0;this.nestedList=[['1','2','3','4'],['5','6','7','8'],['9','10','11','12'],['13','14','15','16']];this.listIndex=0;};_ExamplePageState.prototype={onLoad:function onLoad(){const __thiz__=this;with(__thiz__){}},onUnload:function onUnload(){const __thiz__=this;with(__thiz__){}},_updateAll:function _updateAll(context,context2){const __thiz__=this;const __arg_ctx__={context,context2,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");if(stringIndex>3){stringIndex=0;}exampleModel.stringField=stringList.__op_idx__(stringIndex++);exampleModel.intField++;if(exampleModel.doubleField==33.3){exampleModel.doubleField=66.6;}else{exampleModel.doubleField=33.3;}exampleModel.boolField=!exampleModel.boolField;if(listIndex>3){listIndex=0;}exampleModel.listField=nestedList.__op_idx__(listIndex++);if(exampleModel.innerModel.innerBoolField==true){exampleModel.innerModel.innerBoolField=false;}else{exampleModel.innerModel.innerBoolField=true;}exampleModel.notify();}}},_onSliderChange:function _onSliderChange(input){const __thiz__=this;const __arg_ctx__={input,};with(__thiz__){with(__arg_ctx__){let progress=input.__op_idx__(0);let fairContext=input.__op_idx__(1);let exampleModel=fairContext.read("ExampleModel");exampleModel.doubleField=progress;exampleModel.notify();}}},_toggleBoolChange:function _toggleBoolChange(input){const __thiz__=this;const __arg_ctx__={input,};with(__thiz__){with(__arg_ctx__){let flag=input.__op_idx__(0);let fairContext=input.__op_idx__(1);let exampleModel=fairContext.read("ExampleModel");exampleModel.boolField=flag;exampleModel.notify();}}},_updateStringField:function _updateStringField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){if(stringIndex>3){stringIndex=0;}let exampleModel=context.read("ExampleModel");exampleModel.stringField=stringList.__op_idx__(stringIndex++);exampleModel.notify();}}},_updateIntField:function _updateIntField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");exampleModel.intField++;exampleModel.notify();}}},_updateDoubleField:function _updateDoubleField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");if(exampleModel.doubleField==33.3){exampleModel.doubleField=66.6;}else{exampleModel.doubleField=33.3;}exampleModel.notify();}}},_updateBoolField:function _updateBoolField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");exampleModel.boolField=!exampleModel.boolField;exampleModel.notify();}}},_updateListField:function _updateListField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");if(listIndex>3){listIndex=0;}exampleModel.listField=nestedList.__op_idx__(listIndex++);exampleModel.notify();}}},_updateInnerField:function _updateInnerField(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let exampleModel=context.read("ExampleModel");if(exampleModel.innerModel.innerBoolField==true){exampleModel.innerModel.innerBoolField=false;}else{exampleModel.innerModel.innerBoolField=true;}exampleModel.notify();}}},};_ExamplePageState.prototype.ctor=function(){};;return _ExamplePageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_example_page.fair.json b/fair_provider/example/assets/fair/lib_ui_example_page.fair.json new file mode 100644 index 00000000..b3c1ac34 --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page.fair.json @@ -0,0 +1,867 @@ +{ + "className": "FairChangeNotifierProvider", + "na": { + "initialJson": "^(exampleModelJson)", + "child": { + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "title": { + "className": "Text", + "pa": [ + "基本使用示例" + ] + } + } + }, + "body": { + "className": "Padding", + "na": { + "padding": { + "className": "EdgeInsets.only", + "na": { + "left": 16.0 + } + }, + "child": { + "className": "ListView", + "na": { + "scrollDirection": "#(Axis.vertical)", + "children": [ + { + "className": "Text", + "pa": [ + "初始化json信息👇🏻" + ] + }, + { + "className": "Text", + "pa": [ + "^(exampleModelJson)" + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.green)" + } + } + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取stringField: " + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.readString", + "pa": [ + "^(value)", + "stringField" + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取intField: " + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.anyToString", + "pa": [ + { + "className": "SugarProvider.readInt", + "pa": [ + "^(value)", + "intField" + ] + } + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取doubleField: " + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.anyToString", + "pa": [ + { + "className": "SugarProvider.readDouble", + "pa": [ + "^(value)", + "doubleField" + ] + } + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取boolField: " + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.anyToString", + "pa": [ + { + "className": "SugarProvider.readBool", + "pa": [ + "^(value)", + "boolField" + ] + } + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取listField: " + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.anyToString", + "pa": [ + { + "className": "SugarProvider.readList", + "pa": [ + "^(value)", + "listField" + ] + } + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取数组下标为1字段:" + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.readAsStringInList", + "pa": [ + "^(value)", + "listField", + 1 + ] + } + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + }, + { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "读取innerModel.innerBoolField: " + ] + }, + { + "className": "FairSelector", + "na": { + "builder": { + "className": "SugarProvider.selectorBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + "^(value)" + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.red)" + } + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + }, + "selector": { + "className": "SugarProvider.selector", + "pa": [ + { + "className": "SugarProvider.evaluationAsString", + "pa": [ + "^(value)", + "innerModel.innerBoolField" + ], + "functionParameters": { + "pa": [ + "context", + "value" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel", + "String" + ] + } + ] + } + }, + { + "className": "Wrap", + "na": { + "spacing": 8, + "runSpacing": 8, + "children": [ + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateStringField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变stringField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + }, + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateIntField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变intField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + }, + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateDoubleField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变doubleField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + }, + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateBoolField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变boolField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + }, + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateListField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变listField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + }, + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_updateInnerField(^(context)))", + "child": { + "className": "Text", + "pa": [ + "改变innerModel.innerBoolField" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + } + ] + } + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.concatenates", + "pa": [ + "是否选中:", + { + "className": "SugarProvider.readAsString", + "pa": [ + "^(value)", + "boolField" + ] + } + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + }, + { + "className": "Align", + "na": { + "alignment": "#(Alignment.centerLeft)", + "child": { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "Switch", + "na": { + "value": { + "className": "SugarProvider.readBool", + "pa": [ + "^(value)", + "boolField" + ] + }, + "onChanged": { + "className": "SugarProvider.onValueChangeWithFairContext", + "na": { + "function": "@(_toggleBoolChange)", + "fairContext": "^(fairContext)" + } + } + }, + "functionParameters": { + "pa": [ + "fairContext" + ] + } + } + ] + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + } + }, + { + "className": "Align", + "na": { + "alignment": "#(Alignment.centerLeft)", + "child": { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.concatenates", + "pa": [ + "进度:", + { + "className": "SugarProvider.readAsString", + "pa": [ + "^(value)", + "doubleField" + ] + } + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + } + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "Slider", + "na": { + "max": 100, + "value": { + "className": "SugarProvider.readDouble", + "pa": [ + "^(value)", + "doubleField" + ] + }, + "onChanged": { + "className": "SugarProvider.onValueChangeWithFairContext", + "na": { + "function": "@(_onSliderChange)", + "fairContext": "^(fairContext)" + } + } + }, + "functionParameters": { + "pa": [ + "fairContext" + ] + } + } + ] + } + }, + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "ExampleModel" + ] + } + ] + } + } + } + }, + "floatingActionButton": { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "FloatingActionButton", + "na": { + "onPressed": "@(_updateAll(^(context),^(context)))", + "tooltip": "Increment", + "child": { + "className": "Icon", + "pa": [ + "#(Icons.add)" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + } + } + } + }, + "typeArgumentList": [ + "ExampleModel" + ], + "methodMap": {}, + "digest": "4822d9ccf383c2962f94493efc6197ac" +} \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_example_page.fair.metadata b/fair_provider/example/assets/fair/lib_ui_example_page.fair.metadata new file mode 100644 index 00000000..a311a09b --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page.fair.metadata @@ -0,0 +1,7 @@ +# Generated by Fair on 2023-11-15 20:13:27.343253. + +source: example|lib/ui/example_page.dart +md5: 1985fff1986e3c121d13b7b1aab62b59 +json: example|build/fair/lib_ui_example_page.fair.json +bin: example|build/fair/lib_ui_example_page.fair.bin +date: 2023-11-15 20:13:27.343627 diff --git a/fair_provider/example/assets/fair/lib_ui_example_page2.fair.js b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.js new file mode 100644 index 00000000..240afade --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.js @@ -0,0 +1 @@ +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ExamplePage2State(){const inner=_ExamplePage2State.__inner__;if(this==__global__){return new _ExamplePage2State({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ExamplePage2State.prototype.ctor.apply(this,args);return this;}}_ExamplePage2State.__inner__=function inner(){};_ExamplePage2State.prototype={onLoad:function onLoad(){const __thiz__=this;with(__thiz__){}},onUnload:function onUnload(){const __thiz__=this;with(__thiz__){}},_incrementCounter:function _incrementCounter(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let topModel=context.read("TopModel");topModel.intField++;topModel.notify();}}},};_ExamplePage2State.prototype.ctor=function(){};;return _ExamplePage2State();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_example_page2.fair.json b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.json new file mode 100644 index 00000000..072b0a65 --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.json @@ -0,0 +1,128 @@ +{ + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "title": { + "className": "Text", + "pa": [ + "状态共享-页面1" + ] + } + } + }, + "body": { + "className": "Center", + "na": { + "child": { + "className": "Column", + "na": { + "mainAxisAlignment": "#(MainAxisAlignment.center)", + "children": [ + { + "className": "Row", + "na": { + "mainAxisAlignment": "#(MainAxisAlignment.center)", + "children": [ + { + "className": "Text", + "pa": [ + "监听TopModel中的intFiled:" + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.readAsString", + "pa": [ + "^(value)", + "intField" + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "TopModel" + ] + } + ] + } + }, + { + "className": "ElevatedButton", + "na": { + "onPressed": { + "className": "Navigator.pushNamed", + "pa": [ + "^(context)", + "fair_page_two" + ], + "na": { + "arguments": { + "path": "assets/fair/lib_ui_second_page.fair.json" + } + } + }, + "child": { + "className": "Text", + "pa": [ + "点击跳转二级页面" + ] + } + } + } + ] + } + } + } + }, + "floatingActionButton": { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "FloatingActionButton", + "na": { + "onPressed": "@(_incrementCounter(^(context)))", + "tooltip": "Increment", + "child": { + "className": "Icon", + "pa": [ + "#(Icons.add)" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + } + }, + "methodMap": {}, + "digest": "fa93eea4a8aed0095b7cd960eb827e9e" +} \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_example_page2.fair.metadata b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.metadata new file mode 100644 index 00000000..ef4f036e --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_example_page2.fair.metadata @@ -0,0 +1,7 @@ +# Generated by Fair on 2023-11-15 20:13:27.329194. + +source: example|lib/ui/example_page2.dart +md5: cf9cb059b5cb15a1f911fbd4dc02e0a5 +json: example|build/fair/lib_ui_example_page2.fair.json +bin: example|build/fair/lib_ui_example_page2.fair.bin +date: 2023-11-15 20:13:27.329383 diff --git a/fair_provider/example/assets/fair/lib_ui_second_page.fair.js b/fair_provider/example/assets/fair/lib_ui_second_page.fair.js new file mode 100644 index 00000000..70cb977f --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_second_page.fair.js @@ -0,0 +1 @@ +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _SecondPageState(){const inner=_SecondPageState.__inner__;if(this==__global__){return new _SecondPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_SecondPageState.prototype.ctor.apply(this,args);return this;}}_SecondPageState.__inner__=function inner(){};_SecondPageState.prototype={onLoad:function onLoad(){const __thiz__=this;with(__thiz__){}},onUnload:function onUnload(){const __thiz__=this;with(__thiz__){}},_incrementCounter:function _incrementCounter(context){const __thiz__=this;const __arg_ctx__={context,};with(__thiz__){with(__arg_ctx__){let topModel=context.read("TopModel");topModel.intField++;topModel.notify();}}},};_SecondPageState.prototype.ctor=function(){};;return _SecondPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_second_page.fair.json b/fair_provider/example/assets/fair/lib_ui_second_page.fair.json new file mode 100644 index 00000000..4b2e1aed --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_second_page.fair.json @@ -0,0 +1,111 @@ +{ + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "title": { + "className": "Text", + "pa": [ + "状态共享-页面2" + ] + } + } + }, + "body": { + "className": "Container", + "na": { + "color": "#(Colors.white)", + "child": { + "className": "Center", + "na": { + "child": { + "className": "Column", + "na": { + "mainAxisAlignment": "#(MainAxisAlignment.center)", + "children": [ + { + "className": "Row", + "na": { + "mainAxisAlignment": "#(MainAxisAlignment.center)", + "children": [ + { + "className": "Text", + "pa": [ + "监听TopModel中的intFiled:" + ] + }, + { + "className": "FairConsumer", + "na": { + "builder": { + "className": "SugarProvider.consumerBuilder", + "pa": [ + { + "className": "Text", + "pa": [ + { + "className": "SugarProvider.readAsString", + "pa": [ + "^(value)", + "intField" + ] + } + ], + "functionParameters": { + "pa": [ + "context", + "value", + "child" + ] + } + } + ] + } + }, + "typeArgumentList": [ + "TopModel" + ] + } + ] + } + } + ] + } + } + } + } + } + }, + "floatingActionButton": { + "className": "FairContextBuilder", + "na": { + "builder": { + "className": "SugarProvider.widgetBuilder", + "pa": [ + { + "className": "FloatingActionButton", + "na": { + "onPressed": "@(_incrementCounter(^(context)))", + "tooltip": "Increment", + "child": { + "className": "Icon", + "pa": [ + "#(Icons.add)" + ] + } + }, + "functionParameters": { + "pa": [ + "context" + ] + } + } + ] + } + } + } + }, + "methodMap": {}, + "digest": "5e7cd6297fd4cca54ff47dc3369bc035" +} \ No newline at end of file diff --git a/fair_provider/example/assets/fair/lib_ui_second_page.fair.metadata b/fair_provider/example/assets/fair/lib_ui_second_page.fair.metadata new file mode 100644 index 00000000..8015e0ea --- /dev/null +++ b/fair_provider/example/assets/fair/lib_ui_second_page.fair.metadata @@ -0,0 +1,7 @@ +# Generated by Fair on 2023-11-15 20:13:27.313370. + +source: example|lib/ui/second_page.dart +md5: e011b307244623677adc6f1adfde4c0b +json: example|build/fair/lib_ui_second_page.fair.json +bin: example|build/fair/lib_ui_second_page.fair.bin +date: 2023-11-15 20:13:27.313553 diff --git a/test_case/my_app/ios/.gitignore b/fair_provider/example/ios/.gitignore similarity index 95% rename from test_case/my_app/ios/.gitignore rename to fair_provider/example/ios/.gitignore index e96ef602..7a7f9873 100644 --- a/test_case/my_app/ios/.gitignore +++ b/fair_provider/example/ios/.gitignore @@ -1,3 +1,4 @@ +**/dgph *.mode1v3 *.mode2v3 *.moved-aside @@ -18,6 +19,7 @@ Flutter/App.framework Flutter/Flutter.framework Flutter/Flutter.podspec Flutter/Generated.xcconfig +Flutter/ephemeral/ Flutter/app.flx Flutter/app.zip Flutter/flutter_assets/ diff --git a/test_case/my_app/ios/Flutter/AppFrameworkInfo.plist b/fair_provider/example/ios/Flutter/AppFrameworkInfo.plist similarity index 94% rename from test_case/my_app/ios/Flutter/AppFrameworkInfo.plist rename to fair_provider/example/ios/Flutter/AppFrameworkInfo.plist index 4f8d4d24..9625e105 100644 --- a/test_case/my_app/ios/Flutter/AppFrameworkInfo.plist +++ b/fair_provider/example/ios/Flutter/AppFrameworkInfo.plist @@ -3,7 +3,7 @@ CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) + en CFBundleExecutable App CFBundleIdentifier diff --git a/fair_provider/example/ios/Flutter/Debug.xcconfig b/fair_provider/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 00000000..ec97fc6f --- /dev/null +++ b/fair_provider/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "Generated.xcconfig" diff --git a/fair_provider/example/ios/Flutter/Release.xcconfig b/fair_provider/example/ios/Flutter/Release.xcconfig new file mode 100644 index 00000000..c4855bfe --- /dev/null +++ b/fair_provider/example/ios/Flutter/Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "Generated.xcconfig" diff --git a/test_case/my_app/ios/Podfile b/fair_provider/example/ios/Podfile similarity index 100% rename from test_case/my_app/ios/Podfile rename to fair_provider/example/ios/Podfile diff --git a/test_case/my_app/ios/Podfile.lock b/fair_provider/example/ios/Podfile.lock similarity index 80% rename from test_case/my_app/ios/Podfile.lock rename to fair_provider/example/ios/Podfile.lock index 71e087fb..2e4fcf64 100644 --- a/test_case/my_app/ios/Podfile.lock +++ b/fair_provider/example/ios/Podfile.lock @@ -20,9 +20,9 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: fair: a2ad8650ee4df9e6bcc51426213b3a3561dbacb8 - Flutter: 405776dd0763d7e32a8f989d4e271ca1317d080c - url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af + Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 + url_launcher_ios: 68d46cc9766d0c41dbdc884310529557e3cd7a86 PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3 -COCOAPODS: 1.11.3 +COCOAPODS: 1.12.0 diff --git a/test_case/my_app/ios/Runner.xcodeproj/project.pbxproj b/fair_provider/example/ios/Runner.xcodeproj/project.pbxproj similarity index 91% rename from test_case/my_app/ios/Runner.xcodeproj/project.pbxproj rename to fair_provider/example/ios/Runner.xcodeproj/project.pbxproj index 60ad9dbb..55cef8c7 100644 --- a/test_case/my_app/ios/Runner.xcodeproj/project.pbxproj +++ b/fair_provider/example/ios/Runner.xcodeproj/project.pbxproj @@ -3,14 +3,14 @@ archiveVersion = 1; classes = { }; - objectVersion = 50; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 15112253EAF3294EA7BD2B1A /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DC9F9ABE7AC711D7CED3EEB /* Pods_Runner.framework */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 94BA310586B5A9CF87F7AB4B /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCF153AF3994561FE278B895 /* Pods_Runner.framework */; }; 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 */; }; @@ -30,13 +30,10 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 11959A3B0FC9F6890989A5FE /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 4307AB1A5580A88915B73CFE /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; - 48FBA0E3FF065579C34E7241 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; - 6DC9F9ABE7AC711D7CED3EEB /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 5E4BF71D2BE8D74A80DB18CB /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; @@ -47,6 +44,9 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + B7C30DF2A1F0D0F3E92DF2FC /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + BCF153AF3994561FE278B895 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D7802506E2F397A32E610450 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -54,17 +54,17 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 15112253EAF3294EA7BD2B1A /* Pods_Runner.framework in Frameworks */, + 94BA310586B5A9CF87F7AB4B /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 9682F18B4C66C7EBD2D391DE /* Frameworks */ = { + 93140F6867E9C2D1F2FF6B74 /* Frameworks */ = { isa = PBXGroup; children = ( - 6DC9F9ABE7AC711D7CED3EEB /* Pods_Runner.framework */, + BCF153AF3994561FE278B895 /* Pods_Runner.framework */, ); name = Frameworks; sourceTree = ""; @@ -86,8 +86,8 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, - A9D143AE63AE857293AEEB89 /* Pods */, - 9682F18B4C66C7EBD2D391DE /* Frameworks */, + CA7905C5263AA99719E6F822 /* Pods */, + 93140F6867E9C2D1F2FF6B74 /* Frameworks */, ); sourceTree = ""; }; @@ -114,12 +114,12 @@ path = Runner; sourceTree = ""; }; - A9D143AE63AE857293AEEB89 /* Pods */ = { + CA7905C5263AA99719E6F822 /* Pods */ = { isa = PBXGroup; children = ( - 48FBA0E3FF065579C34E7241 /* Pods-Runner.debug.xcconfig */, - 11959A3B0FC9F6890989A5FE /* Pods-Runner.release.xcconfig */, - 4307AB1A5580A88915B73CFE /* Pods-Runner.profile.xcconfig */, + D7802506E2F397A32E610450 /* Pods-Runner.debug.xcconfig */, + 5E4BF71D2BE8D74A80DB18CB /* Pods-Runner.release.xcconfig */, + B7C30DF2A1F0D0F3E92DF2FC /* Pods-Runner.profile.xcconfig */, ); path = Pods; sourceTree = ""; @@ -131,14 +131,14 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - 8E099D628D85277A57211A2B /* [CP] Check Pods Manifest.lock */, + C79AF6FC94FD3E4CDF17A40A /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 470E8C5C78E8096965D79A8D /* [CP] Embed Pods Frameworks */, + D991A3FF2161D64F6EC88A29 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -199,6 +199,7 @@ /* Begin PBXShellScriptBuildPhase section */ 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -211,24 +212,22 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 470E8C5C78E8096965D79A8D /* [CP] Embed Pods Frameworks */ = { + 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + inputPaths = ( ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + name = "Run Script"; + outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; - 8E099D628D85277A57211A2B /* [CP] Check Pods Manifest.lock */ = { + C79AF6FC94FD3E4CDF17A40A /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -250,19 +249,22 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 9740EEB61CF901F6004384FC /* Run Script */ = { + D991A3FF2161D64F6EC88A29 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); - inputPaths = ( + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - name = "Run Script"; - outputPaths = ( + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -355,22 +357,14 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 33SWE96Z9N; ENABLE_BITCODE = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); + EXCLUDED_ARCHS = arm64; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.example.myApp; + PRODUCT_BUNDLE_IDENTIFIER = com.wuba.fair.fairprovider.example; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; @@ -492,23 +486,14 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 33SWE96Z9N; ENABLE_BITCODE = NO; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "i386 arm64"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); + EXCLUDED_ARCHS = arm64; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.example.myApp; + PRODUCT_BUNDLE_IDENTIFIER = com.wuba.fair.fairprovider.example; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -524,22 +509,14 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 33SWE96Z9N; ENABLE_BITCODE = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); + EXCLUDED_ARCHS = arm64; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.example.myApp; + PRODUCT_BUNDLE_IDENTIFIER = com.wuba.fair.fairprovider.example; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; diff --git a/test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from test_case/my_app/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to fair_provider/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/test_case/my_app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/fair_provider/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme similarity index 96% rename from test_case/my_app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme rename to fair_provider/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 3db53b6e..c87d15a3 100644 --- a/test_case/my_app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/fair_provider/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -27,8 +27,6 @@ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> - - - - + + - - CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Example CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -11,7 +13,7 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleName - my_app + example CFBundlePackageType APPL CFBundleShortVersionString @@ -43,5 +45,7 @@ CADisableMinimumFrameDurationOnPhone + UIApplicationSupportsIndirectInputEvents + diff --git a/test_case/my_app/ios/Runner/Runner-Bridging-Header.h b/fair_provider/example/ios/Runner/Runner-Bridging-Header.h similarity index 100% rename from test_case/my_app/ios/Runner/Runner-Bridging-Header.h rename to fair_provider/example/ios/Runner/Runner-Bridging-Header.h diff --git a/fair_provider/example/lib/entity/counter_model.dart b/fair_provider/example/lib/entity/counter_model.dart new file mode 100644 index 00000000..ac46367c --- /dev/null +++ b/fair_provider/example/lib/entity/counter_model.dart @@ -0,0 +1,5 @@ +import 'package:fair_provider/fair_provider.dart'; + +class CounterModel extends FairChangeNotifier { + int count = 0; +} diff --git a/fair_provider/example/lib/entity/example_model.dart b/fair_provider/example/lib/entity/example_model.dart new file mode 100644 index 00000000..409c115c --- /dev/null +++ b/fair_provider/example/lib/entity/example_model.dart @@ -0,0 +1,14 @@ +import 'package:fair_provider/fair_provider.dart'; + +class ExampleModel extends FairChangeNotifier { + String? stringField; + int intField = 1; + double? doubleField; + bool boolField = false; + List? listField; + ExampleInnerModel? innerModel; +} + +class ExampleInnerModel { + bool? innerBoolField; +} diff --git a/fair_provider/example/lib/entity/top_model.dart b/fair_provider/example/lib/entity/top_model.dart new file mode 100644 index 00000000..008a0a0e --- /dev/null +++ b/fair_provider/example/lib/entity/top_model.dart @@ -0,0 +1,5 @@ +import 'package:fair_provider/fair_provider.dart'; + +class TopModel extends FairChangeNotifier { + int intField = 1; +} \ No newline at end of file diff --git a/fair_provider/example/lib/main.dart b/fair_provider/example/lib/main.dart new file mode 100644 index 00000000..bdc986d4 --- /dev/null +++ b/fair_provider/example/lib/main.dart @@ -0,0 +1,114 @@ +import 'package:example/entity/top_model.dart'; +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; +import 'package:flutter/material.dart'; + +void main() { + WidgetsFlutterBinding.ensureInitialized(); + + FairApp.runApplication( + FairApp( + child: FairChangeNotifierProvider( + initialJson: ''' +{ + "intField":99 +} + ''', + child: const MyApp(), + ), + ), + adapters: [FairProviderAdapter()], + ); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + /// 获取路由传递的参数 + dynamic _getParams(BuildContext context, String key) => + (ModalRoute.of(context)?.settings.arguments is Map) + ? (ModalRoute.of(context)?.settings.arguments as Map)[key] + : null; + + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Flutter Demo', + theme: ThemeData( + primarySwatch: Colors.blue, + ), + routes: { + 'fair_page_two': (context) => FairWidget( + path: _getParams(context, 'path'), + ), + }, + home: + Scaffold( + appBar: AppBar( + title: const Text('Flutter Lab'), + ), + body: Builder( + builder: (context) => ListView( + children: [ + addItem("计数器示例", () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => FairWidget( + name: "lib_ui_counter_page", + path: + "assets/fair/lib_ui_counter_page.fair.json", + ), + )); + }), + addItem("基本使用示例", () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => FairWidget( + name: "lib_ui_example_page", + path: + "assets/fair/lib_ui_example_page.fair.json", + ), + )); + }), + addItem("跨页面共享状态", () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => FairWidget( + name: "lib_ui_example_page2", + path: + "assets/fair/lib_ui_example_page2.fair.json", + ), + )); + }), + ], + ), + ))); + } +} + +Widget addItem(String itemName, dynamic onPress) { + return GestureDetector( + onTap: onPress, + child: Container( + alignment: Alignment.centerLeft, + height: 70, + decoration: BoxDecoration( + color: Colors.white, + border: Border( + bottom: BorderSide( + color: Colors.grey.withOpacity(0.5), width: 0.5))), + padding: const EdgeInsets.only(left: 20.0), + child: Text( + itemName, + style: const TextStyle( + fontSize: 20, + fontWeight: FontWeight.bold, + ), + overflow: TextOverflow.ellipsis, + maxLines: 1, + textAlign: TextAlign.left, + ))); +} diff --git a/fair_provider/example/lib/ui/counter_page.dart b/fair_provider/example/lib/ui/counter_page.dart new file mode 100644 index 00000000..2adb95d9 --- /dev/null +++ b/fair_provider/example/lib/ui/counter_page.dart @@ -0,0 +1,76 @@ +import 'package:example/entity/counter_model.dart'; +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; +import 'package:flutter/material.dart'; + +@FairPatch() +class CounterPage extends StatefulWidget { + const CounterPage({Key? key}) : super(key: key); + + @override + State createState() => _CounterPageState(); +} + +class _CounterPageState extends State { + var counterModelJson = ''' +{ + "count":22 +} + '''; + + void onLoad() {} + + void onUnload() {} + + void _incrementCounter(FairContext context) { + var counterModel = context.read("CounterModel"); + counterModel.count++; + counterModel.notify(); + } + + @override + Widget build(BuildContext context) { + return FairChangeNotifierProvider( + initialJson: counterModelJson, + child: Scaffold( + appBar: AppBar( + title: const Text( + "计数器示例", + ), + ), + body: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + 'You have pushed the button this many times:', + ), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => + Text(SugarProvider.readAsString(value, 'count'))), + ), + FairSelector( + builder: + SugarProvider.selectorBuilder((context, value, child) { + return Text(SugarProvider.anyToString(value)); + }), + selector: SugarProvider.selector((context, value) => + SugarProvider.readInt(value, 'count'))), + ], + ), + ), + floatingActionButton: FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => FloatingActionButton( + onPressed: () { + _incrementCounter(context); + }, + tooltip: 'Increment', + child: const Icon(Icons.add), + )), + ), + ), + ); + } +} diff --git a/fair_provider/example/lib/ui/example_page.dart b/fair_provider/example/lib/ui/example_page.dart new file mode 100644 index 00000000..5f8a3ca4 --- /dev/null +++ b/fair_provider/example/lib/ui/example_page.dart @@ -0,0 +1,374 @@ +import 'package:example/entity/example_model.dart'; +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; +import 'package:flutter/material.dart'; + +@FairPatch() +class ExamplePage extends StatefulWidget { + const ExamplePage({Key? key}) : super(key: key); + + @override + State createState() => _ExamplePageState(); +} + +class _ExamplePageState extends State { + var exampleModelJson = ''' +{ + "stringField":"字符串字段", + "intField":22, + "doubleField":3.3, + "boolField":true, + "listField":[1,2,3,4], + "innerModel":{ + "innerBoolField":false + } +} + '''; + + var stringList = ['白日依山尽', '黄河入海流', '欲穷千里目', '更上一层楼']; + var stringIndex = 0; + + var nestedList = [ + ['1', '2', '3', '4'], + ['5', '6', '7', '8'], + ['9', '10', '11', '12'], + ['13', '14', '15', '16'] + ]; + var listIndex = 0; + + void onLoad() {} + + void onUnload() {} + + ///更新全部 + void _updateAll(FairContext context, FairContext context2) { + var exampleModel = context.read("ExampleModel"); + if (stringIndex > 3) { + stringIndex = 0; + } + exampleModel.stringField = stringList[stringIndex++]; + exampleModel.intField++; + if (exampleModel.doubleField == 33.3) { + exampleModel.doubleField = 66.6; + } else { + exampleModel.doubleField = 33.3; + } + exampleModel.boolField = !exampleModel.boolField; + if (listIndex > 3) { + listIndex = 0; + } + exampleModel.listField = nestedList[listIndex++]; + if (exampleModel.innerModel?.innerBoolField == true) { + exampleModel.innerModel?.innerBoolField = false; + } else { + exampleModel.innerModel?.innerBoolField = true; + } + exampleModel.notify(); + } + + ///进度条变化 + void _onSliderChange(List input) { + var progress = input[0]; + FairContext fairContext = input[1]; + var exampleModel = fairContext.read("ExampleModel"); + exampleModel.doubleField = progress; + exampleModel.notify(); + } + + ///切换选中状态变化 + void _toggleBoolChange(List input) { + var flag = input[0]; + FairContext fairContext = input[1]; + var exampleModel = fairContext.read("ExampleModel"); + exampleModel.boolField = flag; + exampleModel.notify(); + } + + ///更新字符串字段 + void _updateStringField(FairContext context) { + if (stringIndex > 3) { + stringIndex = 0; + } + var exampleModel = context.read("ExampleModel"); + exampleModel.stringField = stringList[stringIndex++]; + exampleModel.notify(); + } + + ///更新整型字段 + void _updateIntField(FairContext context) { + var exampleModel = context.read("ExampleModel"); + exampleModel.intField++; + exampleModel.notify(); + } + + ///更新浮点型字段 + void _updateDoubleField(FairContext context) { + var exampleModel = context.read("ExampleModel"); + if (exampleModel.doubleField == 33.3) { + exampleModel.doubleField = 66.6; + } else { + exampleModel.doubleField = 33.3; + } + exampleModel.notify(); + } + + ///更新布尔值字段 + void _updateBoolField(FairContext context) { + var exampleModel = context.read("ExampleModel"); + exampleModel.boolField = !exampleModel.boolField; + exampleModel.notify(); + } + + ///更新数组字段 + void _updateListField(FairContext context) { + var exampleModel = context.read("ExampleModel"); + if (listIndex > 3) { + listIndex = 0; + } + exampleModel.listField = nestedList[listIndex++]; + exampleModel.notify(); + } + + ///更新嵌套字段 + void _updateInnerField(FairContext context) { + var exampleModel = context.read("ExampleModel"); + if (exampleModel.innerModel?.innerBoolField == true) { + exampleModel.innerModel?.innerBoolField = false; + } else { + exampleModel.innerModel?.innerBoolField = true; + } + exampleModel.notify(); + } + + @override + Widget build(BuildContext context) { + return FairChangeNotifierProvider( + initialJson: exampleModelJson, + child: Scaffold( + appBar: AppBar( + title: const Text( + "基本使用示例", + ), + ), + body: Padding( + padding: const EdgeInsets.only(left: 16.0), // 设置左侧内边距 + child: ListView( + scrollDirection: Axis.vertical, // 设置滑动方向为垂直或水平 + children: [ + const Text( + '初始化json信息👇🏻', + ), + Text( + exampleModelJson, + style: const TextStyle(color: Colors.green), + ), + Row(children: [ + const Text('读取stringField: '), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.readString(value, 'stringField'), + style: const TextStyle(color: Colors.red), + )), + ), + ]), + Row( + children: [ + const Text('读取intField: '), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.anyToString( + SugarProvider.readInt(value, 'intField')), + style: const TextStyle(color: Colors.red), + )), + ), + ], + ), + Row( + children: [ + const Text('读取doubleField: '), + FairConsumer( + builder: SugarProvider.consumerBuilder((context, value, + child) => + Text( + SugarProvider.anyToString( + SugarProvider.readDouble(value, 'doubleField')), + style: const TextStyle(color: Colors.red), + )), + ), + ], + ), + Row( + children: [ + const Text('读取boolField: '), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.anyToString( + SugarProvider.readBool(value, 'boolField')), + style: const TextStyle(color: Colors.red), + )), + ), + ], + ), + Row( + children: [ + const Text('读取listField: '), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.anyToString( + SugarProvider.readList(value, 'listField')), + style: const TextStyle(color: Colors.red), + )), + ), + ], + ), + Row( + children: [ + const Text('读取数组下标为1字段:'), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.readAsStringInList( + value, 'listField', 1), + style: const TextStyle(color: Colors.red), + )), + ), + ], + ), + Row( + children: [ + const Text('读取innerModel.innerBoolField: '), + FairSelector( + builder: SugarProvider.selectorBuilder( + (context, value, child) => Text( + value, + style: const TextStyle(color: Colors.red), + )), + selector: SugarProvider.selector((context, value) => + SugarProvider.evaluationAsString( + value, 'innerModel.innerBoolField'))), + ], + ), + Wrap(spacing: 8, runSpacing: 8, children: [ + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateStringField(context); + }, + child: const Text('改变stringField'), + ))), + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateIntField(context); + }, + child: const Text('改变intField'), + ))), + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateDoubleField(context); + }, + child: const Text('改变doubleField'), + ))), + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateBoolField(context); + }, + child: const Text('改变boolField'), + ))), + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateListField(context); + }, + child: const Text('改变listField'), + ))), + FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => ElevatedButton( + onPressed: () { + _updateInnerField(context); + }, + child: const Text('改变innerModel.innerBoolField'), + ))), + ]), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.concatenates( + '是否选中:', + SugarProvider.readAsString(value, 'boolField'), + ), + )), + ), + Align( + alignment: Alignment.centerLeft, + child: FairConsumer( + builder: SugarProvider.consumerBuilder((context, value, + child) => + FairContextBuilder( + builder: SugarProvider.widgetBuilder((fairContext) => + Switch( + value: + SugarProvider.readBool(value, "boolField"), + onChanged: + SugarProvider.onValueChangeWithFairContext( + function: _toggleBoolChange, + fairContext: fairContext))), + )), + ), + ), + Align( + alignment: Alignment.centerLeft, + child: FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => Text( + SugarProvider.concatenates( + '进度:', + SugarProvider.readAsString(value, 'doubleField'), + ), + )), + ), + ), + FairConsumer( + builder: SugarProvider.consumerBuilder((context, value, + child) => + FairContextBuilder( + builder: SugarProvider.widgetBuilder((fairContext) => + Slider( + max: 100, + value: SugarProvider.readDouble( + value, "doubleField"), + onChanged: + SugarProvider.onValueChangeWithFairContext( + function: _onSliderChange, + fairContext: fairContext))), + )), + ), + ], + ), + ), + floatingActionButton: FairContextBuilder( + builder: + SugarProvider.widgetBuilder((context) => FloatingActionButton( + onPressed: () { + _updateAll(context, context); + }, + tooltip: 'Increment', + child: const Icon(Icons.add), + )), + ), + ), + ); + } +} diff --git a/fair_provider/example/lib/ui/example_page2.dart b/fair_provider/example/lib/ui/example_page2.dart new file mode 100644 index 00000000..7734a7f1 --- /dev/null +++ b/fair_provider/example/lib/ui/example_page2.dart @@ -0,0 +1,71 @@ +import 'package:example/entity/top_model.dart'; +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; +import 'package:flutter/material.dart'; + +@FairPatch() +class ExamplePage2 extends StatefulWidget { + const ExamplePage2({Key? key}) : super(key: key); + + @override + State createState() => _ExamplePage2State(); +} + +class _ExamplePage2State extends State { + void onLoad() {} + + void onUnload() {} + + void _incrementCounter(FairContext context) { + var topModel = context.read("TopModel"); + topModel.intField++; + topModel.notify(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text( + "状态共享-页面1", + ), + ), + body: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + '监听TopModel中的intFiled:', + ), + FairConsumer( + builder: SugarProvider.consumerBuilder( + (context, value, child) => + Text(SugarProvider.readAsString(value, 'intField'))), + ), + ], + ), + ElevatedButton( + onPressed: () { + Navigator.pushNamed(context, 'fair_page_two', arguments: { + 'path': 'assets/fair/lib_ui_second_page.fair.json', + }); + }, + child: const Text("点击跳转二级页面")), + ], + ), + ), + floatingActionButton: FairContextBuilder( + builder: SugarProvider.widgetBuilder((context) => FloatingActionButton( + onPressed: () { + _incrementCounter(context); + }, + tooltip: 'Increment', + child: const Icon(Icons.add), + )), + ), + ); + } +} diff --git a/fair_provider/example/lib/ui/second_page.dart b/fair_provider/example/lib/ui/second_page.dart new file mode 100644 index 00000000..2b2ba895 --- /dev/null +++ b/fair_provider/example/lib/ui/second_page.dart @@ -0,0 +1,67 @@ +import 'package:example/entity/top_model.dart'; +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; +import 'package:flutter/material.dart'; + +@FairPatch() +class SecondPage extends StatefulWidget { + const SecondPage({Key? key}) : super(key: key); + + @override + State createState() => _SecondPageState(); +} + +class _SecondPageState extends State { + void onLoad() {} + + void onUnload() {} + + void _incrementCounter(FairContext context) { + var topModel = context.read("TopModel"); + topModel.intField++; + topModel.notify(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text( + "状态共享-页面2", + ), + ), + body: Container( + color: Colors.white, + child: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + '监听TopModel中的intFiled:', + ), + FairConsumer( + builder: SugarProvider.consumerBuilder((context, value, + child) => + Text(SugarProvider.readAsString(value, 'intField'))), + ), + ], + ), + ], + ), + ), + ), + floatingActionButton: FairContextBuilder( + builder: SugarProvider.widgetBuilder((context) => FloatingActionButton( + onPressed: () { + _incrementCounter(context); + }, + tooltip: 'Increment', + child: const Icon(Icons.add), + )), + ), + ); + } +} diff --git a/fair_provider/example/pubspec.lock b/fair_provider/example/pubspec.lock new file mode 100644 index 00000000..e0a66c37 --- /dev/null +++ b/fair_provider/example/pubspec.lock @@ -0,0 +1,729 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a + url: "https://pub.dev" + source: hosted + version: "61.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562 + url: "https://pub.dev" + source: hosted + version: "5.13.0" + archive: + dependency: transitive + description: + name: archive + sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" + url: "https://pub.dev" + source: hosted + version: "3.4.6" + args: + dependency: transitive + description: + name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + async: + dependency: transitive + description: + name: async + sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + url: "https://pub.dev" + source: hosted + version: "2.10.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + build: + dependency: transitive + description: + name: build + sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777" + url: "https://pub.dev" + source: hosted + version: "2.3.1" + build_config: + dependency: transitive + description: + name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + url: "https://pub.dev" + source: hosted + version: "1.1.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + build_resolvers: + dependency: transitive + description: + name: build_resolvers + sha256: "0713a05b0386bd97f9e63e78108805a4feca5898a4b821d6610857f10c91e975" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: b0a8a7b8a76c493e85f1b84bffa0588859a06197863dba8c9036b15581fd9727 + url: "https://pub.dev" + source: hosted + version: "2.3.3" + build_runner_core: + dependency: transitive + description: + name: build_runner_core + sha256: "0671ad4162ed510b70d0eb4ad6354c249f8429cab4ae7a4cec86bbc2886eb76e" + url: "https://pub.dev" + source: hosted + version: "7.2.7+1" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: a8de5955205b4d1dbbbc267daddf2178bd737e4bab8987c04a500478c9651e74 + url: "https://pub.dev" + source: hosted + version: "8.6.3" + characters: + dependency: transitive + description: + name: characters + sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + url: "https://pub.dev" + source: hosted + version: "1.2.1" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + url: "https://pub.dev" + source: hosted + version: "2.0.3" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" + url: "https://pub.dev" + source: hosted + version: "4.7.0" + collection: + dependency: "direct overridden" + description: + name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + url: "https://pub.dev" + source: hosted + version: "1.17.0" + convert: + dependency: transitive + description: + name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + crypto: + dependency: transitive + description: + name: crypto + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + url: "https://pub.dev" + source: hosted + version: "3.0.3" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + url: "https://pub.dev" + source: hosted + version: "1.0.6" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "1efa911ca7086affd35f463ca2fc1799584fb6aa89883cf0af8e3664d6a02d55" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + fair: + dependency: "direct main" + description: + name: fair + sha256: d05710b2018a693d37cad3d409c304e9aaa54d3fa3787d3d38fff812b32f7926 + url: "https://pub.dev" + source: hosted + version: "3.4.0" + fair_annotation: + dependency: transitive + description: + name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" + url: "https://pub.dev" + source: hosted + version: "2.3.0" + fair_compiler: + dependency: "direct dev" + description: + name: fair_compiler + sha256: c4e150c065da03cd911241c474463ed7f8f0fc3f3c27714ec422045b8463e9a0 + url: "https://pub.dev" + source: hosted + version: "1.9.0" + fair_dart2dsl: + dependency: transitive + description: + name: fair_dart2dsl + sha256: "218ec6b805b192769ff5186d394b4ab77f065494c9b47c9a08515632df4a49fd" + url: "https://pub.dev" + source: hosted + version: "1.5.0" + fair_dart2js: + dependency: transitive + description: + name: fair_dart2js + sha256: df0951b6ef28a993b1807924eaf9ed0163daf72e8e7b17ae6776cf000608819b + url: "https://pub.dev" + source: hosted + version: "1.5.0" + fair_provider: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "0.0.1+1" + fair_version: + dependency: "direct overridden" + description: + name: fair_version + sha256: e2f9985ec5d248553ff43dfb289cae3170667c37a6281c74663ed4c2b8e693c6 + url: "https://pub.dev" + source: hosted + version: "3.10.0" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + file: + dependency: transitive + description: + name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + url: "https://pub.dev" + source: hosted + version: "6.1.4" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + flat_buffers: + dependency: transitive + description: + name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" + url: "https://pub.dev" + source: hosted + version: "2.0.5" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 + url: "https://pub.dev" + source: hosted + version: "2.0.3" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + url: "https://pub.dev" + source: hosted + version: "3.2.0" + glob: + dependency: transitive + description: + name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + graphs: + dependency: transitive + description: + name: graphs + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + url: "https://pub.dev" + source: hosted + version: "2.3.1" + http: + dependency: transitive + description: + name: http + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + url: "https://pub.dev" + source: hosted + version: "0.13.6" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.dev" + source: hosted + version: "3.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + intl: + dependency: transitive + description: + name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" + url: "https://pub.dev" + source: hosted + version: "0.17.0" + io: + dependency: transitive + description: + name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + js: + dependency: transitive + description: + name: js + sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + url: "https://pub.dev" + source: hosted + version: "0.6.5" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + url: "https://pub.dev" + source: hosted + version: "4.8.1" + lints: + dependency: transitive + description: + name: lints + sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593" + url: "https://pub.dev" + source: hosted + version: "2.0.1" + logging: + dependency: transitive + description: + name: logging + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + url: "https://pub.dev" + source: hosted + version: "0.12.13" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + url: "https://pub.dev" + source: hosted + version: "0.2.0" + meta: + dependency: transitive + description: + name: meta + sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + url: "https://pub.dev" + source: hosted + version: "1.8.0" + mime: + dependency: transitive + description: + name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + url: "https://pub.dev" + source: hosted + version: "1.0.4" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + path: + dependency: transitive + description: + name: path + sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + url: "https://pub.dev" + source: hosted + version: "1.8.2" + pedantic: + dependency: transitive + description: + name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + platform: + dependency: transitive + description: + name: platform + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" + url: "https://pub.dev" + source: hosted + version: "3.1.3" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d + url: "https://pub.dev" + source: hosted + version: "2.1.6" + pointycastle: + dependency: transitive + description: + name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" + url: "https://pub.dev" + source: hosted + version: "3.7.3" + pool: + dependency: transitive + description: + name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.dev" + source: hosted + version: "1.5.1" + process: + dependency: transitive + description: + name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" + url: "https://pub.dev" + source: hosted + version: "4.2.4" + provider: + dependency: "direct main" + description: + name: provider + sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f + url: "https://pub.dev" + source: hosted + version: "6.0.5" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + url: "https://pub.dev" + source: hosted + version: "1.2.3" + shelf: + dependency: transitive + description: + name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.dev" + source: hosted + version: "1.4.1" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_gen: + dependency: transitive + description: + name: source_gen + sha256: "373f96cf5a8744bc9816c1ff41cf5391bbdbe3d7a96fe98c622b6738a8a7bd33" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + source_span: + dependency: transitive + description: + name: source_span + sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + url: "https://pub.dev" + source: hosted + version: "1.9.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.dev" + source: hosted + version: "1.11.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + url: "https://pub.dev" + source: hosted + version: "0.4.16" + timing: + dependency: transitive + description: + name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" + source: hosted + version: "1.3.2" + url_launcher: + dependency: transitive + description: + name: url_launcher + sha256: eb1e00ab44303d50dd487aab67ebc575456c146c6af44422f9c13889984c00f3 + url: "https://pub.dev" + source: hosted + version: "6.1.11" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def" + url: "https://pub.dev" + source: hosted + version: "6.2.0" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a" + url: "https://pub.dev" + source: hosted + version: "6.2.0" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 + url: "https://pub.dev" + source: hosted + version: "3.1.0" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + sha256: ba140138558fcc3eead51a1c42e92a9fb074a1b1149ed3c73e66035b2ccd94f2 + url: "https://pub.dev" + source: hosted + version: "2.0.19" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + watcher: + dependency: transitive + description: + name: watcher + sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b + url: "https://pub.dev" + source: hosted + version: "2.4.0" + yaml: + dependency: transitive + description: + name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" + source: hosted + version: "3.1.2" +sdks: + dart: ">=2.19.0 <3.0.0" + flutter: ">=3.7.0" diff --git a/fair_provider/example/pubspec.yaml b/fair_provider/example/pubspec.yaml new file mode 100644 index 00000000..794586f7 --- /dev/null +++ b/fair_provider/example/pubspec.yaml @@ -0,0 +1,34 @@ +name: example +description: A new Flutter project. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <4.0.0" + +dependencies: + flutter: + sdk: flutter + cupertino_icons: ^1.0.2 + provider: ^6.0.5 + fair_provider: + path: ../../fair_provider + + fair: ^3.4.0 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^2.0.0 + build_runner: ^2.1.2 + fair_compiler: ^1.9.0 + +dependency_overrides: + collection: 1.17.0 + fair_version: 3.10.0 + +flutter: + uses-material-design: true + assets: + - assets/ + - assets/fair/ diff --git a/test_case/my_app/test/widget_test.dart b/fair_provider/example/test/widget_test.dart similarity index 84% rename from test_case/my_app/test/widget_test.dart rename to fair_provider/example/test/widget_test.dart index b1bb0f15..092d222f 100644 --- a/test_case/my_app/test/widget_test.dart +++ b/fair_provider/example/test/widget_test.dart @@ -1,19 +1,19 @@ // This is a basic Flutter widget test. // // To perform an interaction with a widget in your test, use the WidgetTester -// utility that Flutter provides. For example, you can send tap and scroll +// utility in the flutter_test package. For example, you can send tap and scroll // gestures. You can also use WidgetTester to find child widgets in the widget // tree, read text, and verify that the values of widget properties are correct. import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:my_app/main.dart'; +import 'package:example/main.dart'; void main() { testWidgets('Counter increments smoke test', (WidgetTester tester) async { // Build our app and trigger a frame. - await tester.pumpWidget(MyApp()); + await tester.pumpWidget(const MyApp()); // Verify that our counter starts at 0. expect(find.text('0'), findsOneWidget); diff --git a/fair_provider/lib/fair_provider.dart b/fair_provider/lib/fair_provider.dart new file mode 100644 index 00000000..822c1115 --- /dev/null +++ b/fair_provider/lib/fair_provider.dart @@ -0,0 +1,5 @@ +export 'src/fair_provider_module.dart'; +export 'src/fair_provider_core.dart'; +export 'src/fair_provider_plugin.dart'; +export 'src/provider_dynamic_widget_builder.dart'; +export 'src/fair_provider_adapter.dart'; \ No newline at end of file diff --git a/fair_provider/lib/src/fair_provider_adapter.dart b/fair_provider/lib/src/fair_provider_adapter.dart new file mode 100644 index 00000000..1901037b --- /dev/null +++ b/fair_provider/lib/src/fair_provider_adapter.dart @@ -0,0 +1,38 @@ +import 'package:fair/fair.dart'; +import 'package:fair_provider/fair_provider.dart'; + +class FairProviderAdapter implements IFairLibraryAdapter { + @override + GeneratedModule provideGeneratedModule() { + return FairProviderModule(); + } + + @override + Map provideFairModule() { + return {}; + } + + @override + Map provideFairDelegate() { + return {}; + } + + @override + DynamicWidgetBuilderFunction provideDynamicWidgetBuilder() { + return (proxyMirror, page, bound, {bundle}) => + ProviderDynamicWidgetBuilder(proxyMirror, page, bound, bundle: bundle); + } + + @override + Map provideJSPlugins() { + return { + 'fair_provider': + 'packages/fair_provider/assets/plugin/fair_provider_plugin.js' + }; + } + + @override + Map provideFairPlugins() { + return {'FairProvider': FairProvider()}; + } +} diff --git a/fair_provider/lib/src/fair_provider_core.dart b/fair_provider/lib/src/fair_provider_core.dart new file mode 100644 index 00000000..6c127473 --- /dev/null +++ b/fair_provider/lib/src/fair_provider_core.dart @@ -0,0 +1,595 @@ +import 'dart:convert'; + +import 'package:fair/fair.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:provider/single_child_widget.dart'; +import 'package:collection/collection.dart'; + +import 'utils/time_record.dart'; + +var providerLogOn = false; + +final Map _fairModelPool = {}; + +class FairProviderPlugin { + static T find(String className) { + return _fairModelPool[className] as T; + } + + static printObject(dynamic obj) {} +} + +class FairChangeNotifier extends ChangeNotifier { + FairChangeNotifier(); + + String? fairRuntimeTypeKey; + final Runtime _runtime = Runtime(); + + dynamic operator [](String key) { + final record = TimeRecord("FairChangeNotifier取值")..start(); + final jsResult = _runtime + .invokeMethodSync("FairProviderPlugin", "find", [fairRuntimeTypeKey]); + record.done(); + final jsResultObj = jsonDecode(jsResult); + final jsModel = jsResultObj["result"]["result"]; + return jsModel[key]; + } + + dynamic evaluation(String expression) { + final record = TimeRecord("FairChangeNotifier执行表达式")..start(); + final jsResult = _runtime.invokeMethodSync( + "FairProviderPlugin", "evaluation", [fairRuntimeTypeKey, expression]); + record.done(); + final jsResultObj = jsonDecode(jsResult); + final jsModel = jsResultObj["result"]["result"]; + return jsModel; + } + + void notify() { + notifyListeners(); + } + + void print() { + //impl in js plugin + } +} + +class FairContext { + String id = "FairContext"; + List treeModelKeyRecords = []; + + FairContext(this.treeModelKeyRecords); + + Map toJson() { + Map map = {}; + map["id"] = id; + map["treeModelKeyRecords"] = treeModelKeyRecords; + return map; + } + + T read(String className) { + return _fairModelPool[className] as T; + } +} + +typedef FairContextWidgetBuilder = Widget Function(FairContext context); + +class FairContextBuilder extends StatelessWidget { + /// Creates a widget that delegates its build to a callback. + /// + /// The [builder] argument must not be null. + const FairContextBuilder({Key? key, + required this.builder, + }) : super(key: key); + + /// Called to obtain the child widget. + /// + /// This function is called whenever this widget is included in its parent's + /// build and the old widget (if any) that it synchronizes with has a distinct + /// object identity. Typically the parent's build method will construct + /// a new tree of widgets and so a new Builder child will not be [identical] + /// to the corresponding old one. + final FairContextWidgetBuilder builder; + + @override + Widget build(BuildContext context) { + //构建FairContext将整颗树的信息录入 + final fairContext = FairContext( + (context as FairContextBuilderElement).getTreeModelKeyRecords()); + return builder(fairContext); + } + + @override + StatelessElement createElement() { + return FairContextBuilderElement(this); + } +} + +class FairContextBuilderElement extends StatelessElement { + FairContextBuilderElement(FairContextBuilder widget) : super(widget); + + FairContextBuilder get widget => super.widget as FairContextBuilder; + + List getTreeModelKeyRecords() { + List treeModelKeyRecords = []; + visitAncestorElements((parent) { + if (parent.runtimeType.toString() == + '_InheritedProviderScopeElement') { + final grandParent = _findGrandParent(parent); + if (grandParent != null && + grandParent is FairChangeNotifierProviderElement) { + treeModelKeyRecords.add(grandParent.widget.modelKey); + } + } + return true; + }); + return treeModelKeyRecords; + } + + Element? _findGrandParent(Element child) { + int count = 0; + Element? grandParent; + child.visitAncestorElements((parent) { + if (++count == 2) { + grandParent = parent; + return false; + } + return true; + }); + return grandParent; + } +} + +typedef FairConsumerBuilder = Widget Function( + BuildContext context, + dynamic value, + Widget? child, + ); + +typedef FairSelectorSelector = dynamic Function( + BuildContext context, + dynamic value, + ); + +typedef OnValueChanged = void Function(dynamic value); + +class SugarProvider { + SugarProvider._(); + + /// Provider消费者Builder,用于Consumer + static FairConsumerBuilder consumerBuilder(FairConsumerBuilder builder) => + builder; + + /// Provider消费者Builder,用于Selector + static FairConsumerBuilder selectorBuilder(FairConsumerBuilder builder) => + builder; + + /// 用于Selector中指定监听字段的selector + static FairSelectorSelector selector(FairSelectorSelector selector) => + selector; + + static String readString( + FairChangeNotifier model, + String key, + ) { + return model[key] ?? 'null'; + } + + static String readAsString( + FairChangeNotifier model, + String key, + ) { + return model[key].toString() ?? 'null'; + } + + static int readInt( + FairChangeNotifier model, + String key, + ) { + return model[key] ?? 0; + } + + static double readDouble( + FairChangeNotifier model, + String key, + ) { + return model[key].toDouble() ?? 0.0; + } + + static bool readBool( + FairChangeNotifier model, + String key, + ) { + return model[key] ?? false; + } + + static dynamic readDynamic( + FairChangeNotifier model, + String key, + ) { + return model[key] ?? null; + } + + static List readList( + FairChangeNotifier model, + String key, + ) { + return model[key] ?? null; + } + + static String readStringInList( + FairChangeNotifier model, + String key, + int index) { + return model[key][index] ?? "null"; + } + + static String readAsStringInList( + FairChangeNotifier model, + String key, + int index) { + return model[key][index].toString() ?? "null"; + } + + static int readIntInList( + FairChangeNotifier model, + String key, + int index) { + return model[key] ?? 0; + } + + static double readDoubleInList( + FairChangeNotifier model, + String key, + int index) { + return model[key] ?? 0.0; + } + + static bool readBoolInList( + FairChangeNotifier model, + String key, + int index) { + return model[key] ?? false; + } + + static dynamic readDynamicInList( + FairChangeNotifier model, + String key, + int index) { + return model[key] ?? null; + } + + static dynamic anyToString(dynamic value) { + return value.toString(); + } + + static String evaluationToString( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? 'null'; + + static String evaluationAsString( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression).toString() ?? 'null'; + + static int evaluationToInt( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? 0; + + static double evaluationToDouble( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? 0.0; + + static bool evaluationToBool( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? false; + + static List evaluationToList( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? null; + + static dynamic evaluationToDynamic( + FairChangeNotifier model, + String expression, + ) => + model.evaluation(expression) ?? null; + + static FairContextWidgetBuilder widgetBuilder( + FairContextWidgetBuilder builder) => + builder; + + /// Creates a new string by concatenating this string with [other]. + /// + /// Example: + /// ```dart + /// const string = 'dart' + 'lang'; // 'dartlang' + /// ``` + static String concatenates(String input, String other) => input + other; + + static OnValueChanged onValueChangeWithFairContext( + {required Function function,required FairContext fairContext}) { + return (value) { + function.call([value, fairContext]); + }; + } +} + +class FairChangeNotifierProvider + extends StatefulWidget +{ + FairChangeNotifierProvider({Key? key, required this.child, this.initialJson}) + : super(key: key); + + Widget child; + + String? initialJson; + + late String modelKey; + + final Runtime _runtime = Runtime(); + + String? fairRuntimeTypeKey = T.toString(); + + List? typeArgumentList; + + void setTypeArgumentList(List typeArgumentList) { + this.typeArgumentList = typeArgumentList; + fairRuntimeTypeKey = typeArgumentList[0]; + } + + @override + State createState() => + FairChangeNotifierProviderState(); + + @override + StatefulElement createElement() { + return FairChangeNotifierProviderElement(this); + } +} + +class FairChangeNotifierProviderElement extends StatefulElement { + FairChangeNotifierProviderElement(this.widget) : super(widget); + FairChangeNotifierProvider widget; +} + +class FairChangeNotifierProviderState + extends State { + static int _counter = 0; + + late FairChangeNotifier fairModel; + + @override + void initState() { + super.initState(); + _createModelInJs(); + } + + /// 通知js侧创建model,然后counter++ + void _createModelInJs() { + final record = TimeRecord("FairChangeNotifierProvider创建jsModel")..start(); + widget.modelKey = "${widget.fairRuntimeTypeKey}_${_counter++}"; + final jsResult = widget._runtime.invokeMethodSync( + "FairProviderPlugin", "create", [widget.modelKey, widget.initialJson]); + record.done(); + final jsResultObj = jsonDecode(jsResult); + final jsModel = jsResultObj["result"]["result"]; + fairModel = _fairModelPool[widget.modelKey] = FairChangeNotifier() + ..fairRuntimeTypeKey = widget.modelKey; + } + + @override + void dispose() { + super.dispose(); + _fairModelPool.remove(widget.modelKey); + } + + @override + Widget build(BuildContext context) { + return ChangeNotifierProvider( + create: (context) => fairModel, + lazy: false, + child: widget.child, + ); + } +} + +class FairConsumer + extends SingleChildStatelessWidget // with GenericsReceiver +{ + FairConsumer({Key? key, required this.builder, Widget? child}) + : super(key: key, child: child); + + String? fairRuntimeTypeKey; + + late String modelKey; + + FairChangeNotifier get fairModel { + return _fairModelPool[modelKey] as FairChangeNotifier; + } + + List? typeArgumentList; + + void setTypeArgumentList(List typeArgumentList) { + this.typeArgumentList = typeArgumentList; + fairRuntimeTypeKey = typeArgumentList[0]; + } + + final Widget Function( + BuildContext context, + FairChangeNotifier value, + Widget? child, + ) builder; + + @override + Widget buildWithChild(BuildContext context, Widget? child) { + //绑定观察者 updateDependents + (context as FairConsumerElement).bindDependents(); + return builder( + context, + fairModel, + child, + ); + } + + @override + SingleChildStatelessElement createElement() { + return FairConsumerElement(this); + } +} + +class FairConsumerElement extends SingleChildStatelessElement { + FairConsumerElement(FairConsumer widget) : super(widget); + + FairConsumer get widget => super.widget as FairConsumer; + + void bindDependents() { + visitAncestorElements((parent) { + if (parent.runtimeType.toString() == + '_InheritedProviderScopeElement') { + final grandParent = _findGrandParent(parent); + if (grandParent != null && + grandParent is FairChangeNotifierProviderElement && + grandParent.widget.fairRuntimeTypeKey == + widget.fairRuntimeTypeKey) { + widget.modelKey = grandParent.widget.modelKey; + dependOnInheritedElement(parent as InheritedElement); + return false; + } + } + return true; + }); + } + + Element? _findGrandParent(Element child) { + int count = 0; + Element? grandParent; + child.visitAncestorElements((parent) { + if (++count == 2) { + grandParent = parent; + return false; + } + return true; + }); + return grandParent; + } +} + +class FairSelector + extends SingleChildStatefulWidget { + FairSelector({ + Key? key, + required this.builder, + required this.selector, + ShouldRebuild? shouldRebuild, + Widget? child, + }) : _shouldRebuild = shouldRebuild, + super(key: key, child: child); + + String? fairRuntimeTypeKey; + + late String modelKey; + + FairChangeNotifier get fairModel { + return _fairModelPool[modelKey] as FairChangeNotifier; + } + + List? typeArgumentList; + + void setTypeArgumentList(List typeArgumentList) { + this.typeArgumentList = typeArgumentList; + fairRuntimeTypeKey = typeArgumentList[0]; + } + + final ValueWidgetBuilder builder; + + final FairSelectorSelector selector; + + final ShouldRebuild? _shouldRebuild; + + @override + _FairSelectorState createState() => _FairSelectorState(); + + @override + SingleChildStatefulElement createElement() { + return FairSelectorElement(this); + } +} + +class _FairSelectorState + extends SingleChildState> { + T? value; + Widget? cache; + Widget? oldWidget; + + @override + Widget buildWithChild(BuildContext context, Widget? child) { + (context as FairSelectorElement).bindDependents(); + final selected = widget.selector(context, widget.fairModel); + + final shouldInvalidateCache = oldWidget != widget || + (widget._shouldRebuild != null && + widget._shouldRebuild!(value as T, selected)) || + (widget._shouldRebuild == null && + !const DeepCollectionEquality().equals(value, selected)); + if (shouldInvalidateCache) { + value = selected; + oldWidget = widget; + cache = widget.builder( + context, + selected, + child, + ); + } + return cache!; + } +} + +class FairSelectorElement extends SingleChildStatefulElement { + FairSelectorElement(FairSelector widget) : super(widget); + + FairSelector get widget => super.widget as FairSelector; + + void bindDependents() { + visitAncestorElements((parent) { + if (parent.runtimeType.toString() == + '_InheritedProviderScopeElement') { + final grandParent = _findGrandParent(parent); + //如果grandParent是FairChangeNotifierProviderElement + if (grandParent != null && + grandParent is FairChangeNotifierProviderElement && + grandParent.widget.fairRuntimeTypeKey == + widget.fairRuntimeTypeKey) { + widget.modelKey = grandParent.widget.modelKey; + dependOnInheritedElement(parent as InheritedElement); + return false; + } + } + return true; + }); + } + + Element? _findGrandParent(Element child) { + int count = 0; + Element? grandParent; + child.visitAncestorElements((parent) { + if (++count == 2) { + grandParent = parent; + return false; + } + return true; + }); + return grandParent; + } +} diff --git a/fair_provider/lib/src/fair_provider_module.dart b/fair_provider/lib/src/fair_provider_module.dart new file mode 100644 index 00000000..c5b61439 --- /dev/null +++ b/fair_provider/lib/src/fair_provider_module.dart @@ -0,0 +1,90 @@ +import 'package:fair/fair.dart'; +import 'package:flutter/material.dart'; + +import 'fair_provider_core.dart'; + +class FairProviderModule extends GeneratedModule { + @override + Map components() { + return { + 'FairChangeNotifierProvider': (props) => + FairChangeNotifierProvider( + key: props['key'], + child: props['child'], + initialJson: props['initialJson'], + ) + ..setTypeArgumentList(props['ta']), + 'FairConsumer': (props) => + FairConsumer( + key: props['key'], + builder: props['builder'], + child: props['child'], + ) + ..setTypeArgumentList(props['ta']), + 'FairSelector': (props) => + FairSelector( + key: props['key'], + builder: props['builder'], + selector: props['selector'], + child: props['child'], + ) + ..setTypeArgumentList(props['ta']), + 'SugarProvider.readString': (props) => + SugarProvider.readString(props['pa'][0], props['pa'][1]), + 'SugarProvider.readAsString': (props) => + SugarProvider.readAsString(props['pa'][0], props['pa'][1]), + 'SugarProvider.readInt': (props) => + SugarProvider.readInt(props['pa'][0], props['pa'][1]), + 'SugarProvider.readDouble': (props) => + SugarProvider.readDouble(props['pa'][0], props['pa'][1]), + 'SugarProvider.readBool': (props) => + SugarProvider.readBool(props['pa'][0], props['pa'][1]), + 'SugarProvider.readDynamic': (props) => + SugarProvider.readDynamic(props['pa'][0], props['pa'][1]), + 'SugarProvider.readList': (props) => + SugarProvider.readList(props['pa'][0], props['pa'][1]), + 'SugarProvider.readStringInList': (props) => + SugarProvider.readStringInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.readAsStringInList': (props) => + SugarProvider.readAsStringInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.readIntInList': (props) => + SugarProvider.readIntInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.readDoubleInList': (props) => + SugarProvider.readDoubleInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.readBoolInList': (props) => + SugarProvider.readBoolInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.readDynamicInList': (props) => + SugarProvider.readDynamicInList(props['pa'][0], props['pa'][1], props['pa'][2]), + 'SugarProvider.evaluationToString': (props) => + SugarProvider.evaluationToString(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationAsString': (props) => + SugarProvider.evaluationAsString(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationToInt': (props) => + SugarProvider.evaluationToInt(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationToDouble': (props) => + SugarProvider.evaluationToDouble(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationToBool': (props) => + SugarProvider.evaluationToBool(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationToList': (props) => + SugarProvider.evaluationToList(props['pa'][0], props['pa'][1]), + 'SugarProvider.evaluationToDynamic': (props) => + SugarProvider.evaluationToDynamic(props['pa'][0], props['pa'][1]), + 'SugarProvider.anyToString': (props) => + SugarProvider.anyToString(props['pa'][0]), + 'SugarProvider.concatenates': (props) => + SugarProvider.concatenates(props['pa'][0], props['pa'][1]), + 'FairContextBuilder': (props) => + FairContextBuilder( + key: props['key'], + builder: props['builder'], + ), + 'SugarProvider.onValueChangeWithFairContext': (props) => + SugarProvider.onValueChangeWithFairContext(function: props['function'], fairContext: props['fairContext']), + }; + } + + @override + Map mapping() { + return {}; + } +} diff --git a/fair_provider/lib/src/fair_provider_plugin.dart b/fair_provider/lib/src/fair_provider_plugin.dart new file mode 100644 index 00000000..e003836a --- /dev/null +++ b/fair_provider/lib/src/fair_provider_plugin.dart @@ -0,0 +1,44 @@ +import 'dart:convert'; + +import 'package:fair/fair.dart'; + +import 'fair_provider_core.dart'; + +class FairProvider extends IFairPlugin { + static final FairProvider _fairProvider = FairProvider._internal(); + + FairProvider._internal(); + + factory FairProvider() { + return _fairProvider; + } + + static void notifyListeners({ + required String fairRuntimeTypeKey, + }) { + FairProviderPlugin.find(fairRuntimeTypeKey).notify(); + } + + static void _notifyListeners(dynamic map) async { + if (map == null) { + return; + } + var req; + if (map is Map) { + req = map; + } else { + req = jsonDecode(map); + } + var args = req['args']; + var jsonMap = jsonDecode(args['jsonMap']); + var fairRuntimeTypeKey = jsonMap['fairRuntimeTypeKey']; + notifyListeners(fairRuntimeTypeKey: fairRuntimeTypeKey); + } + + @override + Map getRegisterMethods() { + var functions = {}; + functions.putIfAbsent('notifyListeners', () => _notifyListeners); + return functions; + } +} diff --git a/fair_provider/lib/src/provider_dynamic_widget_builder.dart b/fair_provider/lib/src/provider_dynamic_widget_builder.dart new file mode 100644 index 00000000..825d7d12 --- /dev/null +++ b/fair_provider/lib/src/provider_dynamic_widget_builder.dart @@ -0,0 +1,118 @@ +import 'package:fair/src/render/builder.dart'; +import 'package:fair/src/render/proxy.dart'; +import 'package:fair/src/render/domain.dart'; +import 'package:fair/src/internal/bind_data.dart'; +import 'package:fair/src/type.dart'; +import 'package:flutter/material.dart'; + +import 'fair_provider_core.dart'; + +class ProviderDynamicWidgetBuilder extends DynamicWidgetBuilder { + ProviderDynamicWidgetBuilder( + ProxyMirror? proxyMirror, String? page, BindingData? bound, + {String? bundle}) + : super(proxyMirror, page, bound, bundle: bundle); + + @override + dynamic convert(BuildContext context, Map map, Map? methodMap, + {Domain? domain}) { + var name = map[tag]; + if (name == 'SugarProvider.consumerBuilder' || + name == 'SugarProvider.selectorBuilder') { + return _buildFairSugarConsumerBuilder( + context, + map, + methodMap, + domain: domain, + ); + } else if (name == 'SugarProvider.selector') { + return _buildFairSugarSelector( + context, + map, + methodMap, + domain: domain, + ); + } else if (name == 'SugarProvider.widgetBuilder') { + return _buildFairSugarWidgetBuilder( + context, + map, + methodMap, + domain: domain, + ); + } + return super.convert( + context, + map, + methodMap, + domain: domain, + ); + } + + dynamic _buildFairSugarConsumerBuilder( + BuildContext context, Map map, Map? methodMap, + {Domain? domain}) { + dynamic source = pa0(map); + assert(source is Map); + List functionParameters = FunctionDomain.pa(source); + FairConsumerBuilder builder = (builderContext, value, child) { + return convert( + context, + source, + methodMap, + domain: FunctionDomain( + { + functionParameters[0]: builderContext, + functionParameters[1]: value, + functionParameters[2]: child, + }, + parent: domain, + ), + ); + }; + return builder; + } + + dynamic _buildFairSugarSelector(BuildContext context, Map map, Map? methodMap, + {Domain? domain}) { + dynamic source = pa0(map); + assert(source is Map); + List functionParameters = FunctionDomain.pa(source); + FairSelectorSelector selector = (builderContext, value) { + return convert( + context, + source, + methodMap, + domain: FunctionDomain( + { + functionParameters[0]: builderContext, + functionParameters[1]: value, + }, + parent: domain, + ), + ); + }; + return selector; + } + + dynamic _buildFairSugarWidgetBuilder(BuildContext context, Map map, Map? methodMap, + {Domain? domain}) { + dynamic source = pa0(map); + assert(source is Map); + List functionParameters = FunctionDomain.pa(source); + FairContextWidgetBuilder builder = (builderContext) { + return convert( + context, + source, + methodMap, + domain: FunctionDomain( + { + functionParameters[0]: builderContext, + }, + parent: domain, + ), + ); + }; + return builder; + } + +} diff --git a/fair_provider/lib/src/utils/time_record.dart b/fair_provider/lib/src/utils/time_record.dart new file mode 100644 index 00000000..86c90cf7 --- /dev/null +++ b/fair_provider/lib/src/utils/time_record.dart @@ -0,0 +1,23 @@ +import 'package:fair_provider/fair_provider.dart'; + +class TimeRecord { + TimeRecord(this.tag); + + String? tag; + + late DateTime _startTime; + late DateTime _endTime; + + void start() { + _startTime = DateTime.now(); + } + + void done() { + _endTime = DateTime.now(); + final duration = _endTime.difference(_startTime); + final milliseconds = duration.inMilliseconds; + if (providerLogOn) { + print('耗时统计 Time elapsed: $milliseconds milliseconds'); + } + } +} diff --git a/fair_provider/pubspec.lock b/fair_provider/pubspec.lock new file mode 100644 index 00000000..88e3bcc5 --- /dev/null +++ b/fair_provider/pubspec.lock @@ -0,0 +1,730 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a + url: "https://pub.dev" + source: hosted + version: "61.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562 + url: "https://pub.dev" + source: hosted + version: "5.13.0" + archive: + dependency: transitive + description: + name: archive + sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" + url: "https://pub.dev" + source: hosted + version: "3.4.6" + args: + dependency: transitive + description: + name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + build: + dependency: transitive + description: + name: build + sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777" + url: "https://pub.dev" + source: hosted + version: "2.3.1" + build_config: + dependency: transitive + description: + name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + url: "https://pub.dev" + source: hosted + version: "1.1.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + build_resolvers: + dependency: transitive + description: + name: build_resolvers + sha256: "0713a05b0386bd97f9e63e78108805a4feca5898a4b821d6610857f10c91e975" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: b0a8a7b8a76c493e85f1b84bffa0588859a06197863dba8c9036b15581fd9727 + url: "https://pub.dev" + source: hosted + version: "2.3.3" + build_runner_core: + dependency: transitive + description: + name: build_runner_core + sha256: "0671ad4162ed510b70d0eb4ad6354c249f8429cab4ae7a4cec86bbc2886eb76e" + url: "https://pub.dev" + source: hosted + version: "7.2.7+1" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: a8de5955205b4d1dbbbc267daddf2178bd737e4bab8987c04a500478c9651e74 + url: "https://pub.dev" + source: hosted + version: "8.6.3" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + url: "https://pub.dev" + source: hosted + version: "2.0.3" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" + url: "https://pub.dev" + source: hosted + version: "4.7.0" + collection: + dependency: "direct main" + description: + name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + url: "https://pub.dev" + source: hosted + version: "1.17.0" + convert: + dependency: transitive + description: + name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + crypto: + dependency: transitive + description: + name: crypto + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + url: "https://pub.dev" + source: hosted + version: "3.0.3" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + url: "https://pub.dev" + source: hosted + version: "1.0.6" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "1efa911ca7086affd35f463ca2fc1799584fb6aa89883cf0af8e3664d6a02d55" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + fair: + dependency: "direct main" + description: + name: fair + sha256: d05710b2018a693d37cad3d409c304e9aaa54d3fa3787d3d38fff812b32f7926 + url: "https://pub.dev" + source: hosted + version: "3.4.0" + fair_annotation: + dependency: transitive + description: + name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" + url: "https://pub.dev" + source: hosted + version: "2.3.0" + fair_compiler: + dependency: "direct dev" + description: + name: fair_compiler + sha256: c4e150c065da03cd911241c474463ed7f8f0fc3f3c27714ec422045b8463e9a0 + url: "https://pub.dev" + source: hosted + version: "1.9.0" + fair_dart2dsl: + dependency: transitive + description: + name: fair_dart2dsl + sha256: "218ec6b805b192769ff5186d394b4ab77f065494c9b47c9a08515632df4a49fd" + url: "https://pub.dev" + source: hosted + version: "1.5.0" + fair_dart2js: + dependency: transitive + description: + name: fair_dart2js + sha256: df0951b6ef28a993b1807924eaf9ed0163daf72e8e7b17ae6776cf000608819b + url: "https://pub.dev" + source: hosted + version: "1.5.0" + fair_version: + dependency: "direct overridden" + description: + name: fair_version + sha256: e2f9985ec5d248553ff43dfb289cae3170667c37a6281c74663ed4c2b8e693c6 + url: "https://pub.dev" + source: hosted + version: "3.10.0" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + file: + dependency: transitive + description: + name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + url: "https://pub.dev" + source: hosted + version: "6.1.4" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + flat_buffers: + dependency: transitive + description: + name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" + url: "https://pub.dev" + source: hosted + version: "2.0.5" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 + url: "https://pub.dev" + source: hosted + version: "2.0.3" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + url: "https://pub.dev" + source: hosted + version: "3.2.0" + glob: + dependency: transitive + description: + name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + graphs: + dependency: transitive + description: + name: graphs + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + url: "https://pub.dev" + source: hosted + version: "2.3.1" + http: + dependency: transitive + description: + name: http + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + url: "https://pub.dev" + source: hosted + version: "0.13.6" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.dev" + source: hosted + version: "3.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + intl: + dependency: transitive + description: + name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" + url: "https://pub.dev" + source: hosted + version: "0.17.0" + io: + dependency: transitive + description: + name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + js: + dependency: transitive + description: + name: js + sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + url: "https://pub.dev" + source: hosted + version: "0.6.5" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + url: "https://pub.dev" + source: hosted + version: "4.8.1" + lints: + dependency: transitive + description: + name: lints + sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593" + url: "https://pub.dev" + source: hosted + version: "2.0.1" + logging: + dependency: transitive + description: + name: logging + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + url: "https://pub.dev" + source: hosted + version: "0.12.16" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + url: "https://pub.dev" + source: hosted + version: "0.5.0" + meta: + dependency: transitive + description: + name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + mime: + dependency: transitive + description: + name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + url: "https://pub.dev" + source: hosted + version: "1.0.4" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + path: + dependency: transitive + description: + name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + url: "https://pub.dev" + source: hosted + version: "1.8.3" + pedantic: + dependency: transitive + description: + name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + platform: + dependency: transitive + description: + name: platform + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" + url: "https://pub.dev" + source: hosted + version: "3.1.3" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d + url: "https://pub.dev" + source: hosted + version: "2.1.6" + pointycastle: + dependency: transitive + description: + name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" + url: "https://pub.dev" + source: hosted + version: "3.7.3" + pool: + dependency: transitive + description: + name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.dev" + source: hosted + version: "1.5.1" + process: + dependency: transitive + description: + name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" + url: "https://pub.dev" + source: hosted + version: "4.2.4" + provider: + dependency: "direct main" + description: + name: provider + sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f + url: "https://pub.dev" + source: hosted + version: "6.0.5" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + url: "https://pub.dev" + source: hosted + version: "1.2.3" + shelf: + dependency: transitive + description: + name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.dev" + source: hosted + version: "1.4.1" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_gen: + dependency: transitive + description: + name: source_gen + sha256: "373f96cf5a8744bc9816c1ff41cf5391bbdbe3d7a96fe98c622b6738a8a7bd33" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.dev" + source: hosted + version: "1.11.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" + url: "https://pub.dev" + source: hosted + version: "0.6.0" + timing: + dependency: transitive + description: + name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" + source: hosted + version: "1.3.2" + url_launcher: + dependency: transitive + description: + name: url_launcher + sha256: eb1e00ab44303d50dd487aab67ebc575456c146c6af44422f9c13889984c00f3 + url: "https://pub.dev" + source: hosted + version: "6.1.11" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def" + url: "https://pub.dev" + source: hosted + version: "6.2.0" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a" + url: "https://pub.dev" + source: hosted + version: "6.2.0" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 + url: "https://pub.dev" + source: hosted + version: "3.1.0" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + sha256: ba140138558fcc3eead51a1c42e92a9fb074a1b1149ed3c73e66035b2ccd94f2 + url: "https://pub.dev" + source: hosted + version: "2.0.19" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + watcher: + dependency: transitive + description: + name: watcher + sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.dev" + source: hosted + version: "0.1.4-beta" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b + url: "https://pub.dev" + source: hosted + version: "2.4.0" + yaml: + dependency: transitive + description: + name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" + source: hosted + version: "3.1.2" +sdks: + dart: ">=3.1.0-185.0.dev <4.0.0" + flutter: ">=3.7.0" diff --git a/fair_provider/pubspec.yaml b/fair_provider/pubspec.yaml new file mode 100644 index 00000000..551b85de --- /dev/null +++ b/fair_provider/pubspec.yaml @@ -0,0 +1,33 @@ +name: fair_provider +description: An extension library for Fair on the Provider framework. +homepage: https://fair.58.com/ +version: 0.0.1+1 + +environment: + sdk: ">=2.12.0 <4.0.0" + flutter: ">=1.16.0" + +dependencies: + flutter: + sdk: flutter + cupertino_icons: ^1.0.2 + fair: ^3.4.0 + provider: ^6.0.5 + collection: 1.7.0 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^2.0.0 + build_runner: ^2.1.2 + fair_compiler: ^1.9.0 + +dependency_overrides: + collection: 1.17.0 + fair_version: 3.10.0 + +flutter: + uses-material-design: true + assets: + - assets/ + - assets/plugin/ \ No newline at end of file diff --git a/flutter_version/flutter_3_10_0/pubspec.yaml b/flutter_version/flutter_3_10_0/pubspec.yaml index 2bba7035..4a0ee4b1 100644 --- a/flutter_version/flutter_3_10_0/pubspec.yaml +++ b/flutter_version/flutter_3_10_0/pubspec.yaml @@ -1,5 +1,5 @@ name: fair_version -description: Fair binding for Flutter v3.0.0 +description: Fair binding for Flutter v3.10.0 version: 3.10.0 homepage: https://fair.58.com/ diff --git a/flutter_version/flutter_3_13_0/CHANGELOG.md b/flutter_version/flutter_3_13_0/CHANGELOG.md new file mode 100644 index 00000000..a64b3236 --- /dev/null +++ b/flutter_version/flutter_3_13_0/CHANGELOG.md @@ -0,0 +1,40 @@ +## 3.13.0 +* Generated from flutter 3.13.0 + +## 3.10.0 +* Generated from flutter 3.10.0 + +## 3.7.0 +* Generated from flutter 3.7.0 + +## 3.3.0 +* Generated from flutter 3.3.0 + +## 3.0.0 +* Generated from flutter 3.0.0 + +## 2.10.0 +* Generated from flutter 2.10.0 + +## 2.8.0 +* Generated from flutter 2.8.0 + +## 2.5.0+1 +* Generated from flutter 2.5.0 +* Add the LinearGradient to the mapping table + +## 2.5.0 +* Generated from flutter 2.5.0 + +## 2.0.6+2 +* Generated from flutter 2.0.6 +* Add the LinearGradient to the mapping table + +## 2.0.6+1 +* Generated from flutter 2.0.6 + +## 1.22.6 +* Generated from flutter 1.22.6 + +## 0.2.0 +* Generated from flutter 1.22.4 diff --git a/flutter_version/flutter_3_13_0/LICENSE b/flutter_version/flutter_3_13_0/LICENSE new file mode 100644 index 00000000..9db6e925 --- /dev/null +++ b/flutter_version/flutter_3_13_0/LICENSE @@ -0,0 +1,25 @@ +Copyright (C) 2005-present, 58.com. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of 58.com nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/README.md b/flutter_version/flutter_3_13_0/README.md new file mode 100644 index 00000000..c35051d8 --- /dev/null +++ b/flutter_version/flutter_3_13_0/README.md @@ -0,0 +1,80 @@ +Widget mapping used by [fair] + +**Tips:** + +- If your Flutter SDK is 2.0.6, we recommend that you use fair_version 2.0.6+2, like this: + +```yaml +dependency_overrides: + fair_version: 2.0.6+2 +``` + +- If your Flutter SDK is 2.5.0/2.5.1/2.5.2/2.5.3, we recommend that you use fair_version 2.5.0+1, like this: + +```yaml +dependency_overrides: + fair_version: 2.5.0+1 +``` + +- If your Flutter SDK is 2.8.0/2.8.1, we recommend that you use fair_version 2.8.0, like this: + +```yaml +dependency_overrides: + fair_version: 2.8.0 +``` + +- If your Flutter SDK is 2.10.0/2.10.1/2.10.2/2.10.3, we recommend that you use fair_version 2.10.0, like this: + +```yaml +dependency_overrides: + fair_version: 2.10.0 +``` + +- If your Flutter SDK is 3.0.0/3.0.1/3.0.2/3.0.3/3.0.4/3.0.5, we recommend that you use fair_version 3.0.0, like this: + +```yaml +dependency_overrides: + fair_version: 3.0.0 +``` + +- If your Flutter SDK is 3.3.0/3.3.1/3.3.2/3.3.3/3.3.4/3.3.5/3.3.6/3.3.7/3.3.8/3.3.9/3.3.10, we recommend that you use fair_version 3.3.0, like this: + +```yaml +dependency_overrides: + fair_version: 3.3.0 +``` + +- If your Flutter SDK is 3.7.0/3.7.1/3.7.2/3.7.3/3.7.4/3.7.5/3.7.6/3.7.7/3.7.8/3.7.9/3.7.10, we recommend that you use fair_version 3.7.0, like this: + +```yaml +dependency_overrides: + fair_version: 3.7.0 +``` + +- If your Flutter SDK is 3.10.0/3.10.1/3.10.2/3.10.3/3.10.4/3.10.5/3.10.6, we recommend that you use fair_version 3.10.0, like this: + +```yaml +dependency_overrides: + fair_version: 3.10.0 +``` + +- If your Flutter SDK is 3.13.0/3.13.1/3.13.2/3.13.3/3.13.4/3.13.5/3.13.6/3.13.7/3.13.8/3.13.9, we recommend that you use fair_version 3.13.0, like this: + +```yaml +dependency_overrides: + fair_version: 3.13.0 +``` + +- v1.22.4 generated from Flutter SDK 1.22.4 +- v1.22.6 generated from Flutter SDK 1.22.6 +- v2.0.6+1 generated from Flutter SDK 2.0.6 +- v2.0.6+2 generated from Flutter SDK 2.0.6 +- v2.5.0 generated from Flutter SDK 2.5.0 +- v2.5.0+1 generated from Flutter SDK 2.5.0 +- v2.8.0 generated from Flutter SDK 2.8.0 +- v2.10.0 generated from Flutter SDK 2.10.0 +- v3.0.0 generated from Flutter SDK 3.0.0 +- v3.3.0 generated from Flutter SDK 3.3.0 +- v3.7.0 generated from Flutter SDK 3.7.0 +- v3.10.0 generated from Flutter SDK 3.10.0 +- v3.13.0 generated from Flutter SDK 3.13.0 \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/analysis_options.yaml b/flutter_version/flutter_3_13_0/analysis_options.yaml new file mode 100644 index 00000000..b0bd2e34 --- /dev/null +++ b/flutter_version/flutter_3_13_0/analysis_options.yaml @@ -0,0 +1,13 @@ +# Defines a default set of lint rules enforced for +# projects at Google. For details and rationale, +# see https://github.com/dart-lang/pedantic#enabled-lints. +include: package:pedantic/analysis_options.yaml + +linter: + rules: + lowercase_with_underscores: false + prefer_single_quotes: false + deprecated_member_use: false +analyzer: + exclude: + - lib/src/widgets/all.dart \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/autoImport b/flutter_version/flutter_3_13_0/autoImport new file mode 100755 index 00000000..bf3ec8c8 --- /dev/null +++ b/flutter_version/flutter_3_13_0/autoImport @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +################################################################## +## +## Import package +## +## +## Author: Chaobin Wu +## Email : chaobinwu89@gmail.com +## +################################################################# +die() { + echo "$*" + exit 1 +} +# fix import of $$p.dart +sed -i '' '11 i\ +import "dart:math" as math;' "lib/src/widgets/\$\$p.dart" +# fix import of $$w.dart +sed -i '' '14 i\ +part "../part/w.part.dart";' "lib/src/widgets/\$\$w.dart" \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/lib/fair_version.dart b/flutter_version/flutter_3_13_0/lib/fair_version.dart new file mode 100644 index 00000000..32606395 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/fair_version.dart @@ -0,0 +1,11 @@ +/* + * Copyright (C) 2005-present, 58.com. All rights reserved. + * Use of this source code is governed by a BSD type license that can be + * found in the LICENSE file. + */ + +export 'src/widgets/all.dart'; +export 'src/widgets/version.dart'; +export 'src/widgets/utils.dart'; +export 'src/widgets/module.dart'; +export 'src/fair_utf8.dart' if (dart.library.html) ''; diff --git a/flutter_version/flutter_3_13_0/lib/src/fair_utf8.dart b/flutter_version/flutter_3_13_0/lib/src/fair_utf8.dart new file mode 100644 index 00000000..3391dfab --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/fair_utf8.dart @@ -0,0 +1,14 @@ +import 'dart:ffi'; +import 'package:ffi/ffi.dart'; + +class FairUtf8 { + + static String fromUtf8(Pointer data) { + return data.toDartString(); + } + + static dynamic toUtf8(String data) { + return data.toNativeUtf8(); + } + +} \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/lib/src/part/c.part.dart b/flutter_version/flutter_3_13_0/lib/src/part/c.part.dart new file mode 100644 index 00000000..8f019a30 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/part/c.part.dart @@ -0,0 +1,21 @@ +/* + * Copyright (C) 2005-present, 58.com. All rights reserved. + * Use of this source code is governed by a BSD type license that can be + * found in the LICENSE file. + */ + + +import 'package:flutter/cupertino.dart'; + +const defaultThickness = CupertinoScrollbar.defaultThickness; +const defaultThicknessWhileDragging = + CupertinoScrollbar.defaultThicknessWhileDragging; +const defaultRadius = CupertinoScrollbar.defaultRadius; +const defaultRadiusWhileDragging = + CupertinoScrollbar.defaultRadiusWhileDragging; +const EdgeInsetsDirectional _kDefaultInsetGroupedRowsMargin = +EdgeInsetsDirectional.fromSTEB(20.0, 0.0, 20.0, 10.0); +const TextStyle _kDefaultPlaceholderStyle = TextStyle( + fontWeight: FontWeight.w400, + color: CupertinoColors.placeholderText, +); diff --git a/flutter_version/flutter_3_13_0/lib/src/part/w.part.dart b/flutter_version/flutter_3_13_0/lib/src/part/w.part.dart new file mode 100644 index 00000000..09d5f70b --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/part/w.part.dart @@ -0,0 +1,9 @@ +/* + * Copyright (C) 2005-present, 58.com. All rights reserved. + * Use of this source code is governed by a BSD type license that can be + * found in the LICENSE file. + */ +part of '../widgets/\$\$w.dart'; +// int _kDefaultSemanticIndexCallback(Widget _, int localIndex) => localIndex; +const Duration _kScrollbarFadeDuration = Duration(milliseconds: 300); +const Duration _kScrollbarTimeToFade = Duration(milliseconds: 600); \ No newline at end of file diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$a.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$a.dart new file mode 100644 index 00000000..45f69f71 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$a.dart @@ -0,0 +1,143 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/material.dart'; +import 'utils.dart'; + +var p = () => { + 'AnimationBehavior': { + 'values': AnimationBehavior.values, + 'normal': AnimationBehavior.normal, + 'preserve': AnimationBehavior.preserve, + }, + 'CatmullRomCurve.validateControlPoints': (props) => + CatmullRomCurve.validateControlPoints( + props['pa'][0], + tension: props['tension']?.toDouble() ?? 0.0, + reasons: as(props['reasons']), + ), + 'Curves': { + 'linear': Curves.linear, + 'decelerate': Curves.decelerate, + 'fastLinearToSlowEaseIn': Curves.fastLinearToSlowEaseIn, + 'ease': Curves.ease, + 'easeIn': Curves.easeIn, + 'easeInToLinear': Curves.easeInToLinear, + 'easeInSine': Curves.easeInSine, + 'easeInQuad': Curves.easeInQuad, + 'easeInCubic': Curves.easeInCubic, + 'easeInQuart': Curves.easeInQuart, + 'easeInQuint': Curves.easeInQuint, + 'easeInExpo': Curves.easeInExpo, + 'easeInCirc': Curves.easeInCirc, + 'easeInBack': Curves.easeInBack, + 'easeOut': Curves.easeOut, + 'linearToEaseOut': Curves.linearToEaseOut, + 'easeOutSine': Curves.easeOutSine, + 'easeOutQuad': Curves.easeOutQuad, + 'easeOutCubic': Curves.easeOutCubic, + 'easeOutQuart': Curves.easeOutQuart, + 'easeOutQuint': Curves.easeOutQuint, + 'easeOutExpo': Curves.easeOutExpo, + 'easeOutCirc': Curves.easeOutCirc, + 'easeOutBack': Curves.easeOutBack, + 'easeInOut': Curves.easeInOut, + 'easeInOutSine': Curves.easeInOutSine, + 'easeInOutQuad': Curves.easeInOutQuad, + 'easeInOutCubic': Curves.easeInOutCubic, + 'easeInOutCubicEmphasized': Curves.easeInOutCubicEmphasized, + 'easeInOutQuart': Curves.easeInOutQuart, + 'easeInOutQuint': Curves.easeInOutQuint, + 'easeInOutExpo': Curves.easeInOutExpo, + 'easeInOutCirc': Curves.easeInOutCirc, + 'easeInOutBack': Curves.easeInOutBack, + 'fastOutSlowIn': Curves.fastOutSlowIn, + 'slowMiddle': Curves.slowMiddle, + 'bounceIn': Curves.bounceIn, + 'bounceOut': Curves.bounceOut, + 'bounceInOut': Curves.bounceInOut, + 'elasticIn': Curves.elasticIn, + 'elasticOut': Curves.elasticOut, + 'elasticInOut': Curves.elasticInOut, + }, + 'AnimationStatus': { + 'values': AnimationStatus.values, + 'dismissed': AnimationStatus.dismissed, + 'forward': AnimationStatus.forward, + 'reverse': AnimationStatus.reverse, + 'completed': AnimationStatus.completed, + }, + 'FontWeight': { + 'w100': FontWeight.w100, + 'w200': FontWeight.w200, + 'w300': FontWeight.w300, + 'w400': FontWeight.w400, + 'w500': FontWeight.w500, + 'w600': FontWeight.w600, + 'w700': FontWeight.w700, + 'w800': FontWeight.w800, + 'w900': FontWeight.w900, + 'normal': FontWeight.normal, + 'bold': FontWeight.bold, + 'values': FontWeight.values, + }, + 'FontWeight.lerp': (props) => FontWeight.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TextDecoration': { + 'none': TextDecoration.none, + 'underline': TextDecoration.underline, + 'overline': TextDecoration.overline, + 'lineThrough': TextDecoration.lineThrough, + }, + 'TextRange': { + 'empty': TextRange.empty, + }, + 'FontStyle': { + 'values': FontStyle.values, + 'normal': FontStyle.normal, + 'italic': FontStyle.italic, + }, + 'TextAlign': { + 'values': TextAlign.values, + 'left': TextAlign.left, + 'right': TextAlign.right, + 'center': TextAlign.center, + 'justify': TextAlign.justify, + 'start': TextAlign.start, + 'end': TextAlign.end, + }, + 'TextBaseline': { + 'values': TextBaseline.values, + 'alphabetic': TextBaseline.alphabetic, + 'ideographic': TextBaseline.ideographic, + }, + 'TextDecorationStyle': { + 'values': TextDecorationStyle.values, + 'solid': TextDecorationStyle.solid, + 'double': TextDecorationStyle.double, + 'dotted': TextDecorationStyle.dotted, + 'dashed': TextDecorationStyle.dashed, + 'wavy': TextDecorationStyle.wavy, + }, + 'TextDirection': { + 'values': TextDirection.values, + 'rtl': TextDirection.rtl, + 'ltr': TextDirection.ltr, + }, + 'TextAffinity': { + 'values': TextAffinity.values, + 'upstream': TextAffinity.upstream, + 'downstream': TextAffinity.downstream, + }, + 'PlaceholderAlignment': { + 'values': PlaceholderAlignment.values, + 'baseline': PlaceholderAlignment.baseline, + 'aboveBaseline': PlaceholderAlignment.aboveBaseline, + 'belowBaseline': PlaceholderAlignment.belowBaseline, + 'top': PlaceholderAlignment.top, + 'bottom': PlaceholderAlignment.bottom, + 'middle': PlaceholderAlignment.middle, + }, +}; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$c.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$c.dart new file mode 100644 index 00000000..3162169b --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$c.dart @@ -0,0 +1,2094 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/cupertino.dart'; +import 'package:flutter/gestures.dart'; +import 'dart:ui' as ui show BoxHeightStyle, BoxWidthStyle; +import 'utils.dart'; + +const CupertinoDynamicColor _kThumbColor = CupertinoDynamicColor.withBrightness( + color: Color(0xFFFFFFFF), + darkColor: Color(0xFF636366), +); +const EdgeInsetsGeometry _kHorizontalItemPadding = EdgeInsets.symmetric(vertical: 2, horizontal: 3); +const double kMinInteractiveDimensionCupertino = 44.0; +const Color _kDefaultTabBarInactiveColor = CupertinoColors.inactiveGray; +const Color _kDefaultTabBarBorderColor = CupertinoDynamicColor.withBrightness( + color: Color(0x4C000000), + darkColor: Color(0x29000000), +); + +const double _defaultRefreshTriggerPullDistance = 100.0; +const double _defaultRefreshIndicatorExtent = 60.0; +var buildRefreshIndicator = CupertinoSliverRefreshControl.buildRefreshIndicator; +const double _kDefaultDiameterRatio = 1.07; +const double _kSqueeze = 1.45; +const double _kDefaultIndicatorRadius = 10.0; +// Value inspected from Xcode 11 & iOS 13.0 Simulator. +const BorderSide _kDefaultRoundedBorderSide = BorderSide( + color: CupertinoDynamicColor.withBrightness( + color: Color(0x33000000), + darkColor: Color(0x33FFFFFF), + ), + style: BorderStyle.solid, + width: 0.0, +); +const Border _kDefaultRoundedBorder = Border( + top: _kDefaultRoundedBorderSide, + bottom: _kDefaultRoundedBorderSide, + left: _kDefaultRoundedBorderSide, + right: _kDefaultRoundedBorderSide, +); + +const BoxDecoration _kDefaultRoundedBorderDecoration = BoxDecoration( + color: CupertinoDynamicColor.withBrightness( + color: CupertinoColors.white, + darkColor: CupertinoColors.black, + ), + border: _kDefaultRoundedBorder, + borderRadius: BorderRadius.all(Radius.circular(5.0)), +); + +const Color _kDefaultNavBarBorderColor = Color(0x4D000000); +const Border _kDefaultNavBarBorder = Border( + bottom: BorderSide( + color: _kDefaultNavBarBorderColor, + width: 0.0, // One physical pixel. + style: BorderStyle.solid, + ), +); +const _defaultHeroTag = ""; +var p = () => { + 'CupertinoTabScaffold': (props) => CupertinoTabScaffold( + key: props['key'], + tabBar: props['tabBar'], + tabBuilder: props['tabBuilder'], + controller: props['controller'], + backgroundColor: props['backgroundColor'], + resizeToAvoidBottomInset: props['resizeToAvoidBottomInset'] ?? true, + restorationId: props['restorationId'], + ), + 'CupertinoFormRow': (props) => CupertinoFormRow( + key: props['key'], + child: props['child'], + prefix: props['prefix'], + padding: props['padding'], + helper: props['helper'], + error: props['error'], + ), + 'CupertinoTextSelectionToolbar': (props) => CupertinoTextSelectionToolbar( + key: props['key'], + anchorAbove: props['anchorAbove'], + anchorBelow: props['anchorBelow'], + toolbarBuilder: props['toolbarBuilder'], + children: as(props['children'])!, + ), + 'CupertinoTextSelectionToolbar#toolbarBuilder': (props) => ( + dynamic context, + dynamic anchor, + bool isAbove, + dynamic child, + ) { + return (props['block']) as dynamic; + }, + 'CupertinoTextSelectionToolbarButton': (props) => CupertinoTextSelectionToolbarButton( + key: props['key'], + onPressed: props['onPressed'], + child: props['child'], + ), + 'CupertinoTextSelectionToolbarButton.text': (props) => CupertinoTextSelectionToolbarButton.text( + key: props['key'], + onPressed: props['onPressed'], + text: props['text'], + ), + 'CupertinoSegmentedControl': (props) => CupertinoSegmentedControl( + key: props['key'], + children: props['children'], + onValueChanged: props['onValueChanged'], + groupValue: props['groupValue'], + unselectedColor: props['unselectedColor'], + selectedColor: props['selectedColor'], + borderColor: props['borderColor'], + pressedColor: props['pressedColor'], + padding: props['padding'], + ), + 'CupertinoColors': { + 'activeBlue': CupertinoColors.activeBlue, + 'activeGreen': CupertinoColors.activeGreen, + 'activeOrange': CupertinoColors.activeOrange, + 'white': CupertinoColors.white, + 'black': CupertinoColors.black, + 'lightBackgroundGray': CupertinoColors.lightBackgroundGray, + 'extraLightBackgroundGray': CupertinoColors.extraLightBackgroundGray, + 'darkBackgroundGray': CupertinoColors.darkBackgroundGray, + 'inactiveGray': CupertinoColors.inactiveGray, + 'destructiveRed': CupertinoColors.destructiveRed, + 'systemBlue': CupertinoColors.systemBlue, + 'systemGreen': CupertinoColors.systemGreen, + 'systemIndigo': CupertinoColors.systemIndigo, + 'systemOrange': CupertinoColors.systemOrange, + 'systemPink': CupertinoColors.systemPink, + 'systemPurple': CupertinoColors.systemPurple, + 'systemRed': CupertinoColors.systemRed, + 'systemTeal': CupertinoColors.systemTeal, + 'systemYellow': CupertinoColors.systemYellow, + 'systemGrey': CupertinoColors.systemGrey, + 'systemGrey2': CupertinoColors.systemGrey2, + 'systemGrey3': CupertinoColors.systemGrey3, + 'systemGrey4': CupertinoColors.systemGrey4, + 'systemGrey5': CupertinoColors.systemGrey5, + 'systemGrey6': CupertinoColors.systemGrey6, + 'label': CupertinoColors.label, + 'secondaryLabel': CupertinoColors.secondaryLabel, + 'tertiaryLabel': CupertinoColors.tertiaryLabel, + 'quaternaryLabel': CupertinoColors.quaternaryLabel, + 'systemFill': CupertinoColors.systemFill, + 'secondarySystemFill': CupertinoColors.secondarySystemFill, + 'tertiarySystemFill': CupertinoColors.tertiarySystemFill, + 'quaternarySystemFill': CupertinoColors.quaternarySystemFill, + 'placeholderText': CupertinoColors.placeholderText, + 'systemBackground': CupertinoColors.systemBackground, + 'secondarySystemBackground': CupertinoColors.secondarySystemBackground, + 'tertiarySystemBackground': CupertinoColors.tertiarySystemBackground, + 'systemGroupedBackground': CupertinoColors.systemGroupedBackground, + 'secondarySystemGroupedBackground': CupertinoColors.secondarySystemGroupedBackground, + 'tertiarySystemGroupedBackground': CupertinoColors.tertiarySystemGroupedBackground, + 'separator': CupertinoColors.separator, + 'opaqueSeparator': CupertinoColors.opaqueSeparator, + 'link': CupertinoColors.link, + }, + 'CupertinoDynamicColor.resolve': (props) => CupertinoDynamicColor.resolve( + props['pa'][0], + props['pa'][1], + ), + 'CupertinoDynamicColor.maybeResolve': (props) => CupertinoDynamicColor.maybeResolve( + props['pa'][0], + props['pa'][1], + ), + 'CupertinoSlidingSegmentedControl': (props) => CupertinoSlidingSegmentedControl( + key: props['key'], + children: props['children'], + onValueChanged: props['onValueChanged'], + groupValue: props['groupValue'], + thumbColor: props['thumbColor'] ?? _kThumbColor, + padding: props['padding'] ?? _kHorizontalItemPadding, + backgroundColor: props['backgroundColor'] ?? CupertinoColors.tertiarySystemFill, + ), + 'CupertinoSearchTextField': (props) => CupertinoSearchTextField( + key: props['key'], + controller: props['controller'], + onChanged: props['onChanged'], + onSubmitted: props['onSubmitted'], + style: props['style'], + placeholder: props['placeholder'], + placeholderStyle: props['placeholderStyle'], + decoration: props['decoration'], + backgroundColor: props['backgroundColor'], + borderRadius: props['borderRadius'], + padding: props['padding'] ?? const EdgeInsetsDirectional.fromSTEB(3.8, 8, 5, 8), + itemColor: props['itemColor'] ?? CupertinoColors.secondaryLabel, + itemSize: props['itemSize']?.toDouble() ?? 20.0, + prefixInsets: props['prefixInsets'] ?? const EdgeInsetsDirectional.fromSTEB(6, 0, 0, 4), + prefixIcon: props['prefixIcon'] ?? const Icon(CupertinoIcons.search), + suffixInsets: props['suffixInsets'] ?? const EdgeInsetsDirectional.fromSTEB(0, 0, 5, 2), + suffixIcon: props['suffixIcon'] ?? const Icon(CupertinoIcons.xmark_circle_fill), + suffixMode: props['suffixMode'] ?? OverlayVisibilityMode.editing, + onSuffixTap: props['onSuffixTap'], + restorationId: props['restorationId'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + onTap: props['onTap'], + autocorrect: props['autocorrect'] ?? true, + enabled: props['enabled'], + ), + 'CupertinoButton': (props) => CupertinoButton( + key: props['key'], + child: props['child'], + padding: props['padding'], + color: props['color'], + disabledColor: props['disabledColor'] ?? CupertinoColors.quaternarySystemFill, + minSize: props['minSize']?.toDouble() ?? kMinInteractiveDimensionCupertino, + pressedOpacity: props['pressedOpacity']?.toDouble() ?? 0.4, + borderRadius: props['borderRadius'] ?? const BorderRadius.all(Radius.circular(8.0)), + alignment: props['alignment'] ?? Alignment.center, + onPressed: props['onPressed'], + ), + 'CupertinoButton.filled': (props) => CupertinoButton.filled( + key: props['key'], + child: props['child'], + padding: props['padding'], + disabledColor: props['disabledColor'] ?? CupertinoColors.quaternarySystemFill, + minSize: props['minSize']?.toDouble() ?? kMinInteractiveDimensionCupertino, + pressedOpacity: props['pressedOpacity']?.toDouble() ?? 0.4, + borderRadius: props['borderRadius'] ?? const BorderRadius.all(Radius.circular(8.0)), + alignment: props['alignment'] ?? Alignment.center, + onPressed: props['onPressed'], + ), + 'CupertinoTabView': (props) => CupertinoTabView( + key: props['key'], + builder: props['builder'], + navigatorKey: props['navigatorKey'], + defaultTitle: props['defaultTitle'], + routes: props['routes'], + onGenerateRoute: props['onGenerateRoute'], + onUnknownRoute: props['onUnknownRoute'], + navigatorObservers: as(props['navigatorObservers']) ?? const [], + restorationScopeId: props['restorationScopeId'], + ), + 'CupertinoAlertDialog': (props) => CupertinoAlertDialog( + key: props['key'], + title: props['title'], + content: props['content'], + actions: as(props['actions']) ?? const [], + scrollController: props['scrollController'], + actionScrollController: props['actionScrollController'], + insetAnimationDuration: props['insetAnimationDuration'] ?? const Duration(milliseconds: 100), + insetAnimationCurve: props['insetAnimationCurve'] ?? Curves.decelerate, + ), + 'CupertinoPopupSurface': (props) => CupertinoPopupSurface( + key: props['key'], + isSurfacePainted: props['isSurfacePainted'] ?? true, + child: props['child'], + ), + 'CupertinoActionSheet': (props) => CupertinoActionSheet( + key: props['key'], + title: props['title'], + message: props['message'], + actions: as(props['actions']), + messageScrollController: props['messageScrollController'], + actionScrollController: props['actionScrollController'], + cancelButton: props['cancelButton'], + ), + 'CupertinoActionSheetAction': (props) => CupertinoActionSheetAction( + key: props['key'], + onPressed: props['onPressed'], + isDefaultAction: props['isDefaultAction'] ?? false, + isDestructiveAction: props['isDestructiveAction'] ?? false, + child: props['child'], + ), + 'CupertinoDialogAction': (props) => CupertinoDialogAction( + key: props['key'], + onPressed: props['onPressed'], + isDefaultAction: props['isDefaultAction'] ?? false, + isDestructiveAction: props['isDestructiveAction'] ?? false, + textStyle: props['textStyle'], + child: props['child'], + ), + 'CupertinoTabBar': (props) => CupertinoTabBar( + key: props['key'], + items: as(props['items'])!, + onTap: props['onTap'], + currentIndex: props['currentIndex'] ?? 0, + backgroundColor: props['backgroundColor'], + activeColor: props['activeColor'], + inactiveColor: props['inactiveColor'] ?? _kDefaultTabBarInactiveColor, + iconSize: props['iconSize']?.toDouble() ?? 30.0, + border: props['border'] ?? const Border(top: BorderSide(color: _kDefaultTabBarBorderColor, width: 0.0, style: BorderStyle.solid)), + ), + 'CupertinoDatePicker': (props) => CupertinoDatePicker( + key: props['key'], + mode: props['mode'] ?? CupertinoDatePickerMode.dateAndTime, + onDateTimeChanged: props['onDateTimeChanged'], + initialDateTime: props['initialDateTime'], + minimumDate: props['minimumDate'], + maximumDate: props['maximumDate'], + minimumYear: props['minimumYear'] ?? 1, + maximumYear: props['maximumYear'], + minuteInterval: props['minuteInterval'] ?? 1, + use24hFormat: props['use24hFormat'] ?? false, + dateOrder: props['dateOrder'], + backgroundColor: props['backgroundColor'], + ), + 'CupertinoTimerPicker': (props) => CupertinoTimerPicker( + key: props['key'], + mode: props['mode'] ?? CupertinoTimerPickerMode.hms, + initialTimerDuration: props['initialTimerDuration'] ?? Duration.zero, + minuteInterval: props['minuteInterval'] ?? 1, + secondInterval: props['secondInterval'] ?? 1, + alignment: props['alignment'] ?? Alignment.center, + backgroundColor: props['backgroundColor'], + onTimerDurationChanged: props['onTimerDurationChanged'], + ), + 'CupertinoDatePickerMode': { + 'values': CupertinoDatePickerMode.values, + 'time': CupertinoDatePickerMode.time, + 'date': CupertinoDatePickerMode.date, + 'dateAndTime': CupertinoDatePickerMode.dateAndTime, + }, + 'CupertinoTimerPickerMode': { + 'values': CupertinoTimerPickerMode.values, + 'hm': CupertinoTimerPickerMode.hm, + 'ms': CupertinoTimerPickerMode.ms, + 'hms': CupertinoTimerPickerMode.hms, + }, + 'CupertinoSliverRefreshControl': (props) => CupertinoSliverRefreshControl( + key: props['key'], + refreshTriggerPullDistance: props['refreshTriggerPullDistance']?.toDouble() ?? _defaultRefreshTriggerPullDistance, + refreshIndicatorExtent: props['refreshIndicatorExtent']?.toDouble() ?? _defaultRefreshIndicatorExtent, + builder: props['builder'] ?? buildRefreshIndicator, + onRefresh: props['onRefresh'], + ), + 'CupertinoSliverRefreshControl#builder': (props) => ( + dynamic context, + RefreshIndicatorMode refreshState, + double pulledExtent, + double refreshTriggerPullDistance, + double refreshIndicatorExtent, + ) { + return (props['block']) as dynamic; + }, + 'CupertinoSliverRefreshControl#onRefresh': (props) => () { + return (props['block']) as Future; + }, + 'CupertinoSliverRefreshControl.buildRefreshIndicator': (props) => CupertinoSliverRefreshControl.buildRefreshIndicator( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + props['pa'][3]?.toDouble(), + props['pa'][4]?.toDouble(), + ), + 'RefreshIndicatorMode': { + 'values': RefreshIndicatorMode.values, + 'inactive': RefreshIndicatorMode.inactive, + 'drag': RefreshIndicatorMode.drag, + 'armed': RefreshIndicatorMode.armed, + 'refresh': RefreshIndicatorMode.refresh, + 'done': RefreshIndicatorMode.done, + }, + 'CupertinoPicker': (props) => CupertinoPicker( + key: props['key'], + diameterRatio: props['diameterRatio']?.toDouble() ?? _kDefaultDiameterRatio, + backgroundColor: props['backgroundColor'], + offAxisFraction: props['offAxisFraction']?.toDouble() ?? 0.0, + useMagnifier: props['useMagnifier'] ?? false, + magnification: props['magnification']?.toDouble() ?? 1.0, + scrollController: props['scrollController'], + squeeze: props['squeeze']?.toDouble() ?? _kSqueeze, + itemExtent: props['itemExtent']?.toDouble(), + onSelectedItemChanged: props['onSelectedItemChanged'], + selectionOverlay: props['selectionOverlay'] ?? const CupertinoPickerDefaultSelectionOverlay(), + looping: props['looping'] ?? false, + children: as(props['children'])!, + ), + 'CupertinoPicker.builder': (props) => CupertinoPicker.builder( + key: props['key'], + diameterRatio: props['diameterRatio']?.toDouble() ?? _kDefaultDiameterRatio, + backgroundColor: props['backgroundColor'], + offAxisFraction: props['offAxisFraction']?.toDouble() ?? 0.0, + useMagnifier: props['useMagnifier'] ?? false, + magnification: props['magnification']?.toDouble() ?? 1.0, + scrollController: props['scrollController'], + squeeze: props['squeeze']?.toDouble() ?? _kSqueeze, + itemExtent: props['itemExtent']?.toDouble(), + onSelectedItemChanged: props['onSelectedItemChanged'], + itemBuilder: props['itemBuilder'], + childCount: props['childCount'], + selectionOverlay: props['selectionOverlay'] ?? const CupertinoPickerDefaultSelectionOverlay(), + ), + 'CupertinoPickerDefaultSelectionOverlay': (props) => CupertinoPickerDefaultSelectionOverlay( + key: props['key'], + background: props['background'] ?? CupertinoColors.tertiarySystemFill, + capStartEdge: props['capStartEdge'] ?? true, + capEndEdge: props['capEndEdge'] ?? true, + ), + 'CupertinoContextMenu': (props) => CupertinoContextMenu( + key: props['key'], + actions: as(props['actions'])!, + child: props['child'], + previewBuilder: props['previewBuilder'], + ), + 'CupertinoContextMenu#previewBuilder': (props) => ( + dynamic context, + dynamic animation, + dynamic child, + ) { + return (props['block']) as dynamic; + }, + 'CupertinoPageTransition': (props) => CupertinoPageTransition( + key: props['key'], + primaryRouteAnimation: props['primaryRouteAnimation'], + secondaryRouteAnimation: props['secondaryRouteAnimation'], + child: props['child'], + linearTransition: props['linearTransition'], + ), + 'CupertinoFullscreenDialogTransition': (props) => CupertinoFullscreenDialogTransition( + key: props['key'], + primaryRouteAnimation: props['primaryRouteAnimation'], + secondaryRouteAnimation: props['secondaryRouteAnimation'], + child: props['child'], + linearTransition: props['linearTransition'], + ), + 'CupertinoThumbPainter': { + 'radius': CupertinoThumbPainter.radius, + 'extension': CupertinoThumbPainter.extension, + }, + 'CupertinoActivityIndicator': (props) => CupertinoActivityIndicator( + key: props['key'], + animating: props['animating'] ?? true, + radius: props['radius']?.toDouble() ?? _kDefaultIndicatorRadius, + ), + 'CupertinoActivityIndicator.partiallyRevealed': (props) => CupertinoActivityIndicator.partiallyRevealed( + key: props['key'], + radius: props['radius']?.toDouble() ?? _kDefaultIndicatorRadius, + progress: props['progress']?.toDouble() ?? 1.0, + ), + 'CupertinoTextField': (props) => CupertinoTextField( + key: props['key'], + controller: props['controller'], + focusNode: props['focusNode'], + decoration: props['decoration'] ?? _kDefaultRoundedBorderDecoration, + padding: props['padding'] ?? const EdgeInsets.all(6.0), + placeholder: props['placeholder'], + placeholderStyle: props['placeholderStyle'] ?? const TextStyle(fontWeight: FontWeight.w400, color: CupertinoColors.placeholderText), + prefix: props['prefix'], + prefixMode: props['prefixMode'] ?? OverlayVisibilityMode.always, + suffix: props['suffix'], + suffixMode: props['suffixMode'] ?? OverlayVisibilityMode.always, + clearButtonMode: props['clearButtonMode'] ?? OverlayVisibilityMode.never, + keyboardType: props['keyboardType'], + textInputAction: props['textInputAction'], + textCapitalization: props['textCapitalization'] ?? TextCapitalization.none, + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'] ?? TextAlign.start, + textAlignVertical: props['textAlignVertical'], + textDirection: props['textDirection'], + readOnly: props['readOnly'] ?? false, + toolbarOptions: props['toolbarOptions'], + showCursor: props['showCursor'], + autofocus: props['autofocus'] ?? false, + obscuringCharacter: props['obscuringCharacter'] ?? '•', + obscureText: props['obscureText'] ?? false, + autocorrect: props['autocorrect'] ?? true, + smartDashesType: props['smartDashesType'], + smartQuotesType: props['smartQuotesType'], + enableSuggestions: props['enableSuggestions'] ?? true, + maxLines: props['maxLines'] ?? 1, + minLines: props['minLines'], + expands: props['expands'] ?? false, + maxLength: props['maxLength'], + maxLengthEnforcement: props['maxLengthEnforcement'], + onChanged: props['onChanged'], + onEditingComplete: props['onEditingComplete'], + onSubmitted: props['onSubmitted'], + inputFormatters: as(props['inputFormatters']), + enabled: props['enabled'], + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'] ?? const Radius.circular(2.0), + cursorColor: props['cursorColor'], + selectionHeightStyle: props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + keyboardAppearance: props['keyboardAppearance'], + scrollPadding: props['scrollPadding'] ?? const EdgeInsets.all(20.0), + dragStartBehavior: props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: props['enableInteractiveSelection'] ?? true, + selectionControls: props['selectionControls'], + onTap: props['onTap'], + scrollController: props['scrollController'], + scrollPhysics: props['scrollPhysics'], + autofillHints: props['autofillHints'], + restorationId: props['restorationId'], + enableIMEPersonalizedLearning: props['enableIMEPersonalizedLearning'] ?? true, + ), + 'CupertinoTextField.borderless': (props) => CupertinoTextField.borderless( + key: props['key'], + controller: props['controller'], + focusNode: props['focusNode'], + decoration: props['decoration'] ?? _kDefaultRoundedBorderDecoration, + padding: props['padding'] ?? const EdgeInsets.all(6.0), + placeholder: props['placeholder'], + placeholderStyle: props['placeholderStyle'], + prefix: props['prefix'], + prefixMode: props['prefixMode'] ?? OverlayVisibilityMode.always, + suffix: props['suffix'], + suffixMode: props['suffixMode'] ?? OverlayVisibilityMode.always, + clearButtonMode: props['clearButtonMode'] ?? OverlayVisibilityMode.never, + keyboardType: props['keyboardType'], + textInputAction: props['textInputAction'], + textCapitalization: props['textCapitalization'] ?? TextCapitalization.none, + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'] ?? TextAlign.start, + textAlignVertical: props['textAlignVertical'], + textDirection: props['textDirection'], + readOnly: props['readOnly'] ?? false, + toolbarOptions: props['toolbarOptions'], + showCursor: props['showCursor'], + autofocus: props['autofocus'] ?? false, + obscuringCharacter: props['obscuringCharacter'] ?? '•', + obscureText: props['obscureText'] ?? false, + autocorrect: props['autocorrect'] ?? true, + smartDashesType: props['smartDashesType'], + smartQuotesType: props['smartQuotesType'], + enableSuggestions: props['enableSuggestions'] ?? true, + maxLines: props['maxLines'] ?? 1, + minLines: props['minLines'], + expands: props['expands'] ?? false, + maxLength: props['maxLength'], + maxLengthEnforcement: props['maxLengthEnforcement'], + onChanged: props['onChanged'], + onEditingComplete: props['onEditingComplete'], + onSubmitted: props['onSubmitted'], + inputFormatters: as(props['inputFormatters']), + enabled: props['enabled'], + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'] ?? const Radius.circular(2.0), + cursorColor: props['cursorColor'], + selectionHeightStyle: props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + keyboardAppearance: props['keyboardAppearance'], + scrollPadding: props['scrollPadding'] ?? const EdgeInsets.all(20.0), + dragStartBehavior: props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: props['enableInteractiveSelection'] ?? true, + selectionControls: props['selectionControls'], + onTap: props['onTap'], + scrollController: props['scrollController'], + scrollPhysics: props['scrollPhysics'], + autofillHints: props['autofillHints'], + restorationId: props['restorationId'], + enableIMEPersonalizedLearning: props['enableIMEPersonalizedLearning'] ?? true, + ), + 'OverlayVisibilityMode': { + 'values': OverlayVisibilityMode.values, + 'never': OverlayVisibilityMode.never, + 'editing': OverlayVisibilityMode.editing, + 'notEditing': OverlayVisibilityMode.notEditing, + 'always': OverlayVisibilityMode.always, + }, + 'CupertinoPageScaffold': (props) => CupertinoPageScaffold( + key: props['key'], + navigationBar: props['navigationBar'], + backgroundColor: props['backgroundColor'], + resizeToAvoidBottomInset: props['resizeToAvoidBottomInset'] ?? true, + child: props['child'], + ), + 'CupertinoUserInterfaceLevel': (props) => CupertinoUserInterfaceLevel( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'CupertinoUserInterfaceLevel.of': (props) => CupertinoUserInterfaceLevel.of( + props['pa'][0], + ), + 'CupertinoUserInterfaceLevel.maybeOf': (props) => CupertinoUserInterfaceLevel.maybeOf( + props['pa'][0], + ), + 'CupertinoUserInterfaceLevelData': { + 'values': CupertinoUserInterfaceLevelData.values, + 'base': CupertinoUserInterfaceLevelData.base, + 'elevated': CupertinoUserInterfaceLevelData.elevated, + }, + 'CupertinoFormSection': (props) => CupertinoFormSection( + key: props['key'], + header: props['header'], + footer: props['footer'], + margin: props['margin'] ?? EdgeInsets.zero, + backgroundColor: props['backgroundColor'] ?? CupertinoColors.systemGroupedBackground, + decoration: props['decoration'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + children: as(props['children'])!, + ), + 'CupertinoFormSection.insetGrouped': (props) => CupertinoFormSection.insetGrouped( + key: props['key'], + header: props['header'], + footer: props['footer'], + margin: props['margin'], + backgroundColor: props['backgroundColor'] ?? CupertinoColors.systemGroupedBackground, + decoration: props['decoration'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + children: as(props['children'])!, + ), + 'CupertinoContextMenuAction': (props) => CupertinoContextMenuAction( + key: props['key'], + child: props['child'], + isDefaultAction: props['isDefaultAction'] ?? false, + isDestructiveAction: props['isDestructiveAction'] ?? false, + onPressed: props['onPressed'], + trailingIcon: props['trailingIcon'], + ), + 'CupertinoSwitch': (props) => CupertinoSwitch( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + activeColor: props['activeColor'], + trackColor: props['trackColor'], + thumbColor: props['thumbColor'], + dragStartBehavior: props['dragStartBehavior'] ?? DragStartBehavior.start, + ), + 'CupertinoScrollbar': { + 'defaultThickness': CupertinoScrollbar.defaultThickness, + 'defaultThicknessWhileDragging': CupertinoScrollbar.defaultThicknessWhileDragging, + 'defaultRadius': CupertinoScrollbar.defaultRadius, + 'defaultRadiusWhileDragging': CupertinoScrollbar.defaultRadiusWhileDragging, + }, + 'CupertinoApp': (props) => CupertinoApp( + key: props['key'], + navigatorKey: props['navigatorKey'], + home: props['home'], + theme: props['theme'], + routes: props['routes'] ?? const {}, + initialRoute: props['initialRoute'], + onGenerateRoute: props['onGenerateRoute'], + onGenerateInitialRoutes: props['onGenerateInitialRoutes'], + onUnknownRoute: props['onUnknownRoute'], + navigatorObservers: as(props['navigatorObservers']) ?? const [], + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + color: props['color'], + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: props['supportedLocales'] ?? const [Locale('en', 'US')], + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowCheckedModeBanner: props['debugShowCheckedModeBanner'] ?? true, + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + scrollBehavior: props['scrollBehavior'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'CupertinoApp.router': (props) => CupertinoApp.router( + key: props['key'], + routeInformationProvider: props['routeInformationProvider'], + routeInformationParser: props['routeInformationParser'], + routerDelegate: props['routerDelegate'], + backButtonDispatcher: props['backButtonDispatcher'], + theme: props['theme'], + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + color: props['color'], + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: props['supportedLocales'] ?? const [Locale('en', 'US')], + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowCheckedModeBanner: props['debugShowCheckedModeBanner'] ?? true, + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + scrollBehavior: props['scrollBehavior'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'CupertinoApp.createCupertinoHeroController': (props) => CupertinoApp.createCupertinoHeroController(), + 'CupertinoIcons': { + 'iconFont': CupertinoIcons.iconFont, + 'iconFontPackage': CupertinoIcons.iconFontPackage, + 'left_chevron': CupertinoIcons.left_chevron, + 'right_chevron': CupertinoIcons.right_chevron, + 'share': CupertinoIcons.share, + 'share_solid': CupertinoIcons.share_solid, + 'book': CupertinoIcons.book, + 'book_solid': CupertinoIcons.book_solid, + 'bookmark': CupertinoIcons.bookmark, + 'bookmark_solid': CupertinoIcons.bookmark_solid, + 'info': CupertinoIcons.info, + 'reply': CupertinoIcons.reply, + 'conversation_bubble': CupertinoIcons.conversation_bubble, + 'profile_circled': CupertinoIcons.profile_circled, + 'plus_circled': CupertinoIcons.plus_circled, + 'minus_circled': CupertinoIcons.minus_circled, + 'flag': CupertinoIcons.flag, + 'search': CupertinoIcons.search, + 'check_mark': CupertinoIcons.check_mark, + 'check_mark_circled': CupertinoIcons.check_mark_circled, + 'check_mark_circled_solid': CupertinoIcons.check_mark_circled_solid, + 'circle': CupertinoIcons.circle, + 'circle_filled': CupertinoIcons.circle_filled, + 'back': CupertinoIcons.back, + 'forward': CupertinoIcons.forward, + 'home': CupertinoIcons.home, + 'shopping_cart': CupertinoIcons.shopping_cart, + 'ellipsis': CupertinoIcons.ellipsis, + 'phone': CupertinoIcons.phone, + 'phone_solid': CupertinoIcons.phone_solid, + 'down_arrow': CupertinoIcons.down_arrow, + 'up_arrow': CupertinoIcons.up_arrow, + 'battery_charging': CupertinoIcons.battery_charging, + 'battery_empty': CupertinoIcons.battery_empty, + 'battery_full': CupertinoIcons.battery_full, + 'battery_75_percent': CupertinoIcons.battery_75_percent, + 'battery_25_percent': CupertinoIcons.battery_25_percent, + 'bluetooth': CupertinoIcons.bluetooth, + 'restart': CupertinoIcons.restart, + 'reply_all': CupertinoIcons.reply_all, + 'reply_thick_solid': CupertinoIcons.reply_thick_solid, + 'share_up': CupertinoIcons.share_up, + 'shuffle': CupertinoIcons.shuffle, + 'shuffle_medium': CupertinoIcons.shuffle_medium, + 'shuffle_thick': CupertinoIcons.shuffle_thick, + 'photo_camera': CupertinoIcons.photo_camera, + 'photo_camera_solid': CupertinoIcons.photo_camera_solid, + 'video_camera': CupertinoIcons.video_camera, + 'video_camera_solid': CupertinoIcons.video_camera_solid, + 'switch_camera': CupertinoIcons.switch_camera, + 'switch_camera_solid': CupertinoIcons.switch_camera_solid, + 'collections': CupertinoIcons.collections, + 'collections_solid': CupertinoIcons.collections_solid, + 'folder': CupertinoIcons.folder, + 'folder_solid': CupertinoIcons.folder_solid, + 'folder_open': CupertinoIcons.folder_open, + 'delete': CupertinoIcons.delete, + 'delete_solid': CupertinoIcons.delete_solid, + 'delete_simple': CupertinoIcons.delete_simple, + 'pen': CupertinoIcons.pen, + 'pencil': CupertinoIcons.pencil, + 'create': CupertinoIcons.create, + 'create_solid': CupertinoIcons.create_solid, + 'refresh': CupertinoIcons.refresh, + 'refresh_circled': CupertinoIcons.refresh_circled, + 'refresh_circled_solid': CupertinoIcons.refresh_circled_solid, + 'refresh_thin': CupertinoIcons.refresh_thin, + 'refresh_thick': CupertinoIcons.refresh_thick, + 'refresh_bold': CupertinoIcons.refresh_bold, + 'clear_thick': CupertinoIcons.clear_thick, + 'clear_thick_circled': CupertinoIcons.clear_thick_circled, + 'clear': CupertinoIcons.clear, + 'clear_circled': CupertinoIcons.clear_circled, + 'clear_circled_solid': CupertinoIcons.clear_circled_solid, + 'add': CupertinoIcons.add, + 'add_circled': CupertinoIcons.add_circled, + 'add_circled_solid': CupertinoIcons.add_circled_solid, + 'gear': CupertinoIcons.gear, + 'gear_solid': CupertinoIcons.gear_solid, + 'gear_big': CupertinoIcons.gear_big, + 'settings': CupertinoIcons.settings, + 'settings_solid': CupertinoIcons.settings_solid, + 'music_note': CupertinoIcons.music_note, + 'double_music_note': CupertinoIcons.double_music_note, + 'play_arrow': CupertinoIcons.play_arrow, + 'play_arrow_solid': CupertinoIcons.play_arrow_solid, + 'pause': CupertinoIcons.pause, + 'pause_solid': CupertinoIcons.pause_solid, + 'loop': CupertinoIcons.loop, + 'loop_thick': CupertinoIcons.loop_thick, + 'volume_down': CupertinoIcons.volume_down, + 'volume_mute': CupertinoIcons.volume_mute, + 'volume_off': CupertinoIcons.volume_off, + 'volume_up': CupertinoIcons.volume_up, + 'fullscreen': CupertinoIcons.fullscreen, + 'fullscreen_exit': CupertinoIcons.fullscreen_exit, + 'mic_off': CupertinoIcons.mic_off, + 'mic': CupertinoIcons.mic, + 'mic_solid': CupertinoIcons.mic_solid, + 'clock': CupertinoIcons.clock, + 'clock_solid': CupertinoIcons.clock_solid, + 'time': CupertinoIcons.time, + 'time_solid': CupertinoIcons.time_solid, + 'padlock': CupertinoIcons.padlock, + 'padlock_solid': CupertinoIcons.padlock_solid, + 'eye': CupertinoIcons.eye, + 'eye_solid': CupertinoIcons.eye_solid, + 'person': CupertinoIcons.person, + 'person_solid': CupertinoIcons.person_solid, + 'person_add': CupertinoIcons.person_add, + 'person_add_solid': CupertinoIcons.person_add_solid, + 'group': CupertinoIcons.group, + 'group_solid': CupertinoIcons.group_solid, + 'mail': CupertinoIcons.mail, + 'mail_solid': CupertinoIcons.mail_solid, + 'location': CupertinoIcons.location, + 'location_solid': CupertinoIcons.location_solid, + 'tag': CupertinoIcons.tag, + 'tag_solid': CupertinoIcons.tag_solid, + 'tags': CupertinoIcons.tags, + 'tags_solid': CupertinoIcons.tags_solid, + 'bus': CupertinoIcons.bus, + 'car': CupertinoIcons.car, + 'car_detailed': CupertinoIcons.car_detailed, + 'train_style_one': CupertinoIcons.train_style_one, + 'train_style_two': CupertinoIcons.train_style_two, + 'paw': CupertinoIcons.paw, + 'paw_solid': CupertinoIcons.paw_solid, + 'game_controller': CupertinoIcons.game_controller, + 'game_controller_solid': CupertinoIcons.game_controller_solid, + 'lab_flask': CupertinoIcons.lab_flask, + 'lab_flask_solid': CupertinoIcons.lab_flask_solid, + 'heart': CupertinoIcons.heart, + 'heart_solid': CupertinoIcons.heart_solid, + 'bell': CupertinoIcons.bell, + 'bell_solid': CupertinoIcons.bell_solid, + 'news': CupertinoIcons.news, + 'news_solid': CupertinoIcons.news_solid, + 'brightness': CupertinoIcons.brightness, + 'brightness_solid': CupertinoIcons.brightness_solid, + 'airplane': CupertinoIcons.airplane, + 'alarm': CupertinoIcons.alarm, + 'alarm_fill': CupertinoIcons.alarm_fill, + 'alt': CupertinoIcons.alt, + 'ant': CupertinoIcons.ant, + 'ant_circle': CupertinoIcons.ant_circle, + 'ant_circle_fill': CupertinoIcons.ant_circle_fill, + 'ant_fill': CupertinoIcons.ant_fill, + 'antenna_radiowaves_left_right': CupertinoIcons.antenna_radiowaves_left_right, + 'app': CupertinoIcons.app, + 'app_badge': CupertinoIcons.app_badge, + 'app_badge_fill': CupertinoIcons.app_badge_fill, + 'app_fill': CupertinoIcons.app_fill, + 'archivebox': CupertinoIcons.archivebox, + 'archivebox_fill': CupertinoIcons.archivebox_fill, + 'arrow_2_circlepath': CupertinoIcons.arrow_2_circlepath, + 'arrow_2_circlepath_circle': CupertinoIcons.arrow_2_circlepath_circle, + 'arrow_2_circlepath_circle_fill': CupertinoIcons.arrow_2_circlepath_circle_fill, + 'arrow_2_squarepath': CupertinoIcons.arrow_2_squarepath, + 'arrow_3_trianglepath': CupertinoIcons.arrow_3_trianglepath, + 'arrow_branch': CupertinoIcons.arrow_branch, + 'arrow_clockwise': CupertinoIcons.arrow_clockwise, + 'arrow_clockwise_circle': CupertinoIcons.arrow_clockwise_circle, + 'arrow_clockwise_circle_fill': CupertinoIcons.arrow_clockwise_circle_fill, + 'arrow_counterclockwise': CupertinoIcons.arrow_counterclockwise, + 'arrow_counterclockwise_circle': CupertinoIcons.arrow_counterclockwise_circle, + 'arrow_counterclockwise_circle_fill': CupertinoIcons.arrow_counterclockwise_circle_fill, + 'arrow_down': CupertinoIcons.arrow_down, + 'arrow_down_circle': CupertinoIcons.arrow_down_circle, + 'arrow_down_circle_fill': CupertinoIcons.arrow_down_circle_fill, + 'arrow_down_doc': CupertinoIcons.arrow_down_doc, + 'arrow_down_doc_fill': CupertinoIcons.arrow_down_doc_fill, + 'arrow_down_left': CupertinoIcons.arrow_down_left, + 'arrow_down_left_circle': CupertinoIcons.arrow_down_left_circle, + 'arrow_down_left_circle_fill': CupertinoIcons.arrow_down_left_circle_fill, + 'arrow_down_left_square': CupertinoIcons.arrow_down_left_square, + 'arrow_down_left_square_fill': CupertinoIcons.arrow_down_left_square_fill, + 'arrow_down_right': CupertinoIcons.arrow_down_right, + 'arrow_down_right_arrow_up_left': CupertinoIcons.arrow_down_right_arrow_up_left, + 'arrow_down_right_circle': CupertinoIcons.arrow_down_right_circle, + 'arrow_down_right_circle_fill': CupertinoIcons.arrow_down_right_circle_fill, + 'arrow_down_right_square': CupertinoIcons.arrow_down_right_square, + 'arrow_down_right_square_fill': CupertinoIcons.arrow_down_right_square_fill, + 'arrow_down_square': CupertinoIcons.arrow_down_square, + 'arrow_down_square_fill': CupertinoIcons.arrow_down_square_fill, + 'arrow_down_to_line': CupertinoIcons.arrow_down_to_line, + 'arrow_down_to_line_alt': CupertinoIcons.arrow_down_to_line_alt, + 'arrow_left': CupertinoIcons.arrow_left, + 'arrow_left_circle': CupertinoIcons.arrow_left_circle, + 'arrow_left_circle_fill': CupertinoIcons.arrow_left_circle_fill, + 'arrow_left_right': CupertinoIcons.arrow_left_right, + 'arrow_left_right_circle': CupertinoIcons.arrow_left_right_circle, + 'arrow_left_right_circle_fill': CupertinoIcons.arrow_left_right_circle_fill, + 'arrow_left_right_square': CupertinoIcons.arrow_left_right_square, + 'arrow_left_right_square_fill': CupertinoIcons.arrow_left_right_square_fill, + 'arrow_left_square': CupertinoIcons.arrow_left_square, + 'arrow_left_square_fill': CupertinoIcons.arrow_left_square_fill, + 'arrow_left_to_line': CupertinoIcons.arrow_left_to_line, + 'arrow_left_to_line_alt': CupertinoIcons.arrow_left_to_line_alt, + 'arrow_merge': CupertinoIcons.arrow_merge, + 'arrow_right': CupertinoIcons.arrow_right, + 'arrow_right_arrow_left': CupertinoIcons.arrow_right_arrow_left, + 'arrow_right_arrow_left_circle': CupertinoIcons.arrow_right_arrow_left_circle, + 'arrow_right_arrow_left_circle_fill': CupertinoIcons.arrow_right_arrow_left_circle_fill, + 'arrow_right_arrow_left_square': CupertinoIcons.arrow_right_arrow_left_square, + 'arrow_right_arrow_left_square_fill': CupertinoIcons.arrow_right_arrow_left_square_fill, + 'arrow_right_circle': CupertinoIcons.arrow_right_circle, + 'arrow_right_circle_fill': CupertinoIcons.arrow_right_circle_fill, + 'arrow_right_square': CupertinoIcons.arrow_right_square, + 'arrow_right_square_fill': CupertinoIcons.arrow_right_square_fill, + 'arrow_right_to_line': CupertinoIcons.arrow_right_to_line, + 'arrow_right_to_line_alt': CupertinoIcons.arrow_right_to_line_alt, + 'arrow_swap': CupertinoIcons.arrow_swap, + 'arrow_turn_down_left': CupertinoIcons.arrow_turn_down_left, + 'arrow_turn_down_right': CupertinoIcons.arrow_turn_down_right, + 'arrow_turn_left_down': CupertinoIcons.arrow_turn_left_down, + 'arrow_turn_left_up': CupertinoIcons.arrow_turn_left_up, + 'arrow_turn_right_down': CupertinoIcons.arrow_turn_right_down, + 'arrow_turn_right_up': CupertinoIcons.arrow_turn_right_up, + 'arrow_turn_up_left': CupertinoIcons.arrow_turn_up_left, + 'arrow_turn_up_right': CupertinoIcons.arrow_turn_up_right, + 'arrow_up': CupertinoIcons.arrow_up, + 'arrow_up_arrow_down': CupertinoIcons.arrow_up_arrow_down, + 'arrow_up_arrow_down_circle': CupertinoIcons.arrow_up_arrow_down_circle, + 'arrow_up_arrow_down_circle_fill': CupertinoIcons.arrow_up_arrow_down_circle_fill, + 'arrow_up_arrow_down_square': CupertinoIcons.arrow_up_arrow_down_square, + 'arrow_up_arrow_down_square_fill': CupertinoIcons.arrow_up_arrow_down_square_fill, + 'arrow_up_bin': CupertinoIcons.arrow_up_bin, + 'arrow_up_bin_fill': CupertinoIcons.arrow_up_bin_fill, + 'arrow_up_circle': CupertinoIcons.arrow_up_circle, + 'arrow_up_circle_fill': CupertinoIcons.arrow_up_circle_fill, + 'arrow_up_doc': CupertinoIcons.arrow_up_doc, + 'arrow_up_doc_fill': CupertinoIcons.arrow_up_doc_fill, + 'arrow_up_down': CupertinoIcons.arrow_up_down, + 'arrow_up_down_circle': CupertinoIcons.arrow_up_down_circle, + 'arrow_up_down_circle_fill': CupertinoIcons.arrow_up_down_circle_fill, + 'arrow_up_down_square': CupertinoIcons.arrow_up_down_square, + 'arrow_up_down_square_fill': CupertinoIcons.arrow_up_down_square_fill, + 'arrow_up_left': CupertinoIcons.arrow_up_left, + 'arrow_up_left_arrow_down_right': CupertinoIcons.arrow_up_left_arrow_down_right, + 'arrow_up_left_circle': CupertinoIcons.arrow_up_left_circle, + 'arrow_up_left_circle_fill': CupertinoIcons.arrow_up_left_circle_fill, + 'arrow_up_left_square': CupertinoIcons.arrow_up_left_square, + 'arrow_up_left_square_fill': CupertinoIcons.arrow_up_left_square_fill, + 'arrow_up_right': CupertinoIcons.arrow_up_right, + 'arrow_up_right_circle': CupertinoIcons.arrow_up_right_circle, + 'arrow_up_right_circle_fill': CupertinoIcons.arrow_up_right_circle_fill, + 'arrow_up_right_diamond': CupertinoIcons.arrow_up_right_diamond, + 'arrow_up_right_diamond_fill': CupertinoIcons.arrow_up_right_diamond_fill, + 'arrow_up_right_square': CupertinoIcons.arrow_up_right_square, + 'arrow_up_right_square_fill': CupertinoIcons.arrow_up_right_square_fill, + 'arrow_up_square': CupertinoIcons.arrow_up_square, + 'arrow_up_square_fill': CupertinoIcons.arrow_up_square_fill, + 'arrow_up_to_line': CupertinoIcons.arrow_up_to_line, + 'arrow_up_to_line_alt': CupertinoIcons.arrow_up_to_line_alt, + 'arrow_uturn_down': CupertinoIcons.arrow_uturn_down, + 'arrow_uturn_down_circle': CupertinoIcons.arrow_uturn_down_circle, + 'arrow_uturn_down_circle_fill': CupertinoIcons.arrow_uturn_down_circle_fill, + 'arrow_uturn_down_square': CupertinoIcons.arrow_uturn_down_square, + 'arrow_uturn_down_square_fill': CupertinoIcons.arrow_uturn_down_square_fill, + 'arrow_uturn_left': CupertinoIcons.arrow_uturn_left, + 'arrow_uturn_left_circle': CupertinoIcons.arrow_uturn_left_circle, + 'arrow_uturn_left_circle_fill': CupertinoIcons.arrow_uturn_left_circle_fill, + 'arrow_uturn_left_square': CupertinoIcons.arrow_uturn_left_square, + 'arrow_uturn_left_square_fill': CupertinoIcons.arrow_uturn_left_square_fill, + 'arrow_uturn_right': CupertinoIcons.arrow_uturn_right, + 'arrow_uturn_right_circle': CupertinoIcons.arrow_uturn_right_circle, + 'arrow_uturn_right_circle_fill': CupertinoIcons.arrow_uturn_right_circle_fill, + 'arrow_uturn_right_square': CupertinoIcons.arrow_uturn_right_square, + 'arrow_uturn_right_square_fill': CupertinoIcons.arrow_uturn_right_square_fill, + 'arrow_uturn_up': CupertinoIcons.arrow_uturn_up, + 'arrow_uturn_up_circle': CupertinoIcons.arrow_uturn_up_circle, + 'arrow_uturn_up_circle_fill': CupertinoIcons.arrow_uturn_up_circle_fill, + 'arrow_uturn_up_square': CupertinoIcons.arrow_uturn_up_square, + 'arrow_uturn_up_square_fill': CupertinoIcons.arrow_uturn_up_square_fill, + 'arrowshape_turn_up_left': CupertinoIcons.arrowshape_turn_up_left, + 'arrowshape_turn_up_left_2': CupertinoIcons.arrowshape_turn_up_left_2, + 'arrowshape_turn_up_left_2_fill': CupertinoIcons.arrowshape_turn_up_left_2_fill, + 'arrowshape_turn_up_left_circle': CupertinoIcons.arrowshape_turn_up_left_circle, + 'arrowshape_turn_up_left_circle_fill': CupertinoIcons.arrowshape_turn_up_left_circle_fill, + 'arrowshape_turn_up_left_fill': CupertinoIcons.arrowshape_turn_up_left_fill, + 'arrowshape_turn_up_right': CupertinoIcons.arrowshape_turn_up_right, + 'arrowshape_turn_up_right_circle': CupertinoIcons.arrowshape_turn_up_right_circle, + 'arrowshape_turn_up_right_circle_fill': CupertinoIcons.arrowshape_turn_up_right_circle_fill, + 'arrowshape_turn_up_right_fill': CupertinoIcons.arrowshape_turn_up_right_fill, + 'arrowtriangle_down': CupertinoIcons.arrowtriangle_down, + 'arrowtriangle_down_circle': CupertinoIcons.arrowtriangle_down_circle, + 'arrowtriangle_down_circle_fill': CupertinoIcons.arrowtriangle_down_circle_fill, + 'arrowtriangle_down_fill': CupertinoIcons.arrowtriangle_down_fill, + 'arrowtriangle_down_square': CupertinoIcons.arrowtriangle_down_square, + 'arrowtriangle_down_square_fill': CupertinoIcons.arrowtriangle_down_square_fill, + 'arrowtriangle_left': CupertinoIcons.arrowtriangle_left, + 'arrowtriangle_left_circle': CupertinoIcons.arrowtriangle_left_circle, + 'arrowtriangle_left_circle_fill': CupertinoIcons.arrowtriangle_left_circle_fill, + 'arrowtriangle_left_fill': CupertinoIcons.arrowtriangle_left_fill, + 'arrowtriangle_left_square': CupertinoIcons.arrowtriangle_left_square, + 'arrowtriangle_left_square_fill': CupertinoIcons.arrowtriangle_left_square_fill, + 'arrowtriangle_right': CupertinoIcons.arrowtriangle_right, + 'arrowtriangle_right_circle': CupertinoIcons.arrowtriangle_right_circle, + 'arrowtriangle_right_circle_fill': CupertinoIcons.arrowtriangle_right_circle_fill, + 'arrowtriangle_right_fill': CupertinoIcons.arrowtriangle_right_fill, + 'arrowtriangle_right_square': CupertinoIcons.arrowtriangle_right_square, + 'arrowtriangle_right_square_fill': CupertinoIcons.arrowtriangle_right_square_fill, + 'arrowtriangle_up': CupertinoIcons.arrowtriangle_up, + 'arrowtriangle_up_circle': CupertinoIcons.arrowtriangle_up_circle, + 'arrowtriangle_up_circle_fill': CupertinoIcons.arrowtriangle_up_circle_fill, + 'arrowtriangle_up_fill': CupertinoIcons.arrowtriangle_up_fill, + 'arrowtriangle_up_square': CupertinoIcons.arrowtriangle_up_square, + 'arrowtriangle_up_square_fill': CupertinoIcons.arrowtriangle_up_square_fill, + 'asterisk_circle': CupertinoIcons.asterisk_circle, + 'asterisk_circle_fill': CupertinoIcons.asterisk_circle_fill, + 'at': CupertinoIcons.at, + 'at_badge_minus': CupertinoIcons.at_badge_minus, + 'at_badge_plus': CupertinoIcons.at_badge_plus, + 'at_circle': CupertinoIcons.at_circle, + 'at_circle_fill': CupertinoIcons.at_circle_fill, + 'backward': CupertinoIcons.backward, + 'backward_end': CupertinoIcons.backward_end, + 'backward_end_alt': CupertinoIcons.backward_end_alt, + 'backward_end_alt_fill': CupertinoIcons.backward_end_alt_fill, + 'backward_end_fill': CupertinoIcons.backward_end_fill, + 'backward_fill': CupertinoIcons.backward_fill, + 'badge_plus_radiowaves_right': CupertinoIcons.badge_plus_radiowaves_right, + 'bag': CupertinoIcons.bag, + 'bag_badge_minus': CupertinoIcons.bag_badge_minus, + 'bag_badge_plus': CupertinoIcons.bag_badge_plus, + 'bag_fill': CupertinoIcons.bag_fill, + 'bag_fill_badge_minus': CupertinoIcons.bag_fill_badge_minus, + 'bag_fill_badge_plus': CupertinoIcons.bag_fill_badge_plus, + 'bandage': CupertinoIcons.bandage, + 'bandage_fill': CupertinoIcons.bandage_fill, + 'barcode': CupertinoIcons.barcode, + 'barcode_viewfinder': CupertinoIcons.barcode_viewfinder, + 'bars': CupertinoIcons.bars, + 'battery_0': CupertinoIcons.battery_0, + 'battery_100': CupertinoIcons.battery_100, + 'battery_25': CupertinoIcons.battery_25, + 'bed_double': CupertinoIcons.bed_double, + 'bed_double_fill': CupertinoIcons.bed_double_fill, + 'bell_circle': CupertinoIcons.bell_circle, + 'bell_circle_fill': CupertinoIcons.bell_circle_fill, + 'bell_fill': CupertinoIcons.bell_fill, + 'bell_slash': CupertinoIcons.bell_slash, + 'bell_slash_fill': CupertinoIcons.bell_slash_fill, + 'bin_xmark': CupertinoIcons.bin_xmark, + 'bin_xmark_fill': CupertinoIcons.bin_xmark_fill, + 'bitcoin': CupertinoIcons.bitcoin, + 'bitcoin_circle': CupertinoIcons.bitcoin_circle, + 'bitcoin_circle_fill': CupertinoIcons.bitcoin_circle_fill, + 'bold': CupertinoIcons.bold, + 'bold_italic_underline': CupertinoIcons.bold_italic_underline, + 'bold_underline': CupertinoIcons.bold_underline, + 'bolt': CupertinoIcons.bolt, + 'bolt_badge_a': CupertinoIcons.bolt_badge_a, + 'bolt_badge_a_fill': CupertinoIcons.bolt_badge_a_fill, + 'bolt_circle': CupertinoIcons.bolt_circle, + 'bolt_circle_fill': CupertinoIcons.bolt_circle_fill, + 'bolt_fill': CupertinoIcons.bolt_fill, + 'bolt_horizontal': CupertinoIcons.bolt_horizontal, + 'bolt_horizontal_circle': CupertinoIcons.bolt_horizontal_circle, + 'bolt_horizontal_circle_fill': CupertinoIcons.bolt_horizontal_circle_fill, + 'bolt_horizontal_fill': CupertinoIcons.bolt_horizontal_fill, + 'bolt_slash': CupertinoIcons.bolt_slash, + 'bolt_slash_fill': CupertinoIcons.bolt_slash_fill, + 'book_circle': CupertinoIcons.book_circle, + 'book_circle_fill': CupertinoIcons.book_circle_fill, + 'book_fill': CupertinoIcons.book_fill, + 'bookmark_fill': CupertinoIcons.bookmark_fill, + 'briefcase': CupertinoIcons.briefcase, + 'briefcase_fill': CupertinoIcons.briefcase_fill, + 'bubble_left': CupertinoIcons.bubble_left, + 'bubble_left_bubble_right': CupertinoIcons.bubble_left_bubble_right, + 'bubble_left_bubble_right_fill': CupertinoIcons.bubble_left_bubble_right_fill, + 'bubble_left_fill': CupertinoIcons.bubble_left_fill, + 'bubble_middle_bottom': CupertinoIcons.bubble_middle_bottom, + 'bubble_middle_bottom_fill': CupertinoIcons.bubble_middle_bottom_fill, + 'bubble_middle_top': CupertinoIcons.bubble_middle_top, + 'bubble_middle_top_fill': CupertinoIcons.bubble_middle_top_fill, + 'bubble_right': CupertinoIcons.bubble_right, + 'bubble_right_fill': CupertinoIcons.bubble_right_fill, + 'building_2_fill': CupertinoIcons.building_2_fill, + 'burn': CupertinoIcons.burn, + 'burst': CupertinoIcons.burst, + 'burst_fill': CupertinoIcons.burst_fill, + 'calendar': CupertinoIcons.calendar, + 'calendar_badge_minus': CupertinoIcons.calendar_badge_minus, + 'calendar_badge_plus': CupertinoIcons.calendar_badge_plus, + 'calendar_circle': CupertinoIcons.calendar_circle, + 'calendar_circle_fill': CupertinoIcons.calendar_circle_fill, + 'calendar_today': CupertinoIcons.calendar_today, + 'camera': CupertinoIcons.camera, + 'camera_circle': CupertinoIcons.camera_circle, + 'camera_circle_fill': CupertinoIcons.camera_circle_fill, + 'camera_fill': CupertinoIcons.camera_fill, + 'camera_on_rectangle': CupertinoIcons.camera_on_rectangle, + 'camera_on_rectangle_fill': CupertinoIcons.camera_on_rectangle_fill, + 'camera_rotate': CupertinoIcons.camera_rotate, + 'camera_rotate_fill': CupertinoIcons.camera_rotate_fill, + 'camera_viewfinder': CupertinoIcons.camera_viewfinder, + 'capslock': CupertinoIcons.capslock, + 'capslock_fill': CupertinoIcons.capslock_fill, + 'capsule': CupertinoIcons.capsule, + 'capsule_fill': CupertinoIcons.capsule_fill, + 'captions_bubble': CupertinoIcons.captions_bubble, + 'captions_bubble_fill': CupertinoIcons.captions_bubble_fill, + 'car_fill': CupertinoIcons.car_fill, + 'cart': CupertinoIcons.cart, + 'cart_badge_minus': CupertinoIcons.cart_badge_minus, + 'cart_badge_plus': CupertinoIcons.cart_badge_plus, + 'cart_fill': CupertinoIcons.cart_fill, + 'cart_fill_badge_minus': CupertinoIcons.cart_fill_badge_minus, + 'cart_fill_badge_plus': CupertinoIcons.cart_fill_badge_plus, + 'chart_bar': CupertinoIcons.chart_bar, + 'chart_bar_alt_fill': CupertinoIcons.chart_bar_alt_fill, + 'chart_bar_circle': CupertinoIcons.chart_bar_circle, + 'chart_bar_circle_fill': CupertinoIcons.chart_bar_circle_fill, + 'chart_bar_fill': CupertinoIcons.chart_bar_fill, + 'chart_bar_square': CupertinoIcons.chart_bar_square, + 'chart_bar_square_fill': CupertinoIcons.chart_bar_square_fill, + 'chart_pie': CupertinoIcons.chart_pie, + 'chart_pie_fill': CupertinoIcons.chart_pie_fill, + 'chat_bubble': CupertinoIcons.chat_bubble, + 'chat_bubble_2': CupertinoIcons.chat_bubble_2, + 'chat_bubble_2_fill': CupertinoIcons.chat_bubble_2_fill, + 'chat_bubble_fill': CupertinoIcons.chat_bubble_fill, + 'chat_bubble_text': CupertinoIcons.chat_bubble_text, + 'chat_bubble_text_fill': CupertinoIcons.chat_bubble_text_fill, + 'checkmark': CupertinoIcons.checkmark, + 'checkmark_alt': CupertinoIcons.checkmark_alt, + 'checkmark_alt_circle': CupertinoIcons.checkmark_alt_circle, + 'checkmark_alt_circle_fill': CupertinoIcons.checkmark_alt_circle_fill, + 'checkmark_circle': CupertinoIcons.checkmark_circle, + 'checkmark_circle_fill': CupertinoIcons.checkmark_circle_fill, + 'checkmark_rectangle': CupertinoIcons.checkmark_rectangle, + 'checkmark_rectangle_fill': CupertinoIcons.checkmark_rectangle_fill, + 'checkmark_seal': CupertinoIcons.checkmark_seal, + 'checkmark_seal_fill': CupertinoIcons.checkmark_seal_fill, + 'checkmark_shield': CupertinoIcons.checkmark_shield, + 'checkmark_shield_fill': CupertinoIcons.checkmark_shield_fill, + 'checkmark_square': CupertinoIcons.checkmark_square, + 'checkmark_square_fill': CupertinoIcons.checkmark_square_fill, + 'chevron_back': CupertinoIcons.chevron_back, + 'chevron_compact_down': CupertinoIcons.chevron_compact_down, + 'chevron_compact_left': CupertinoIcons.chevron_compact_left, + 'chevron_compact_right': CupertinoIcons.chevron_compact_right, + 'chevron_compact_up': CupertinoIcons.chevron_compact_up, + 'chevron_down': CupertinoIcons.chevron_down, + 'chevron_down_circle': CupertinoIcons.chevron_down_circle, + 'chevron_down_circle_fill': CupertinoIcons.chevron_down_circle_fill, + 'chevron_down_square': CupertinoIcons.chevron_down_square, + 'chevron_down_square_fill': CupertinoIcons.chevron_down_square_fill, + 'chevron_forward': CupertinoIcons.chevron_forward, + 'chevron_left': CupertinoIcons.chevron_left, + 'chevron_left_2': CupertinoIcons.chevron_left_2, + 'chevron_left_circle': CupertinoIcons.chevron_left_circle, + 'chevron_left_circle_fill': CupertinoIcons.chevron_left_circle_fill, + 'chevron_left_slash_chevron_right': CupertinoIcons.chevron_left_slash_chevron_right, + 'chevron_left_square': CupertinoIcons.chevron_left_square, + 'chevron_left_square_fill': CupertinoIcons.chevron_left_square_fill, + 'chevron_right': CupertinoIcons.chevron_right, + 'chevron_right_2': CupertinoIcons.chevron_right_2, + 'chevron_right_circle': CupertinoIcons.chevron_right_circle, + 'chevron_right_circle_fill': CupertinoIcons.chevron_right_circle_fill, + 'chevron_right_square': CupertinoIcons.chevron_right_square, + 'chevron_right_square_fill': CupertinoIcons.chevron_right_square_fill, + 'chevron_up': CupertinoIcons.chevron_up, + 'chevron_up_chevron_down': CupertinoIcons.chevron_up_chevron_down, + 'chevron_up_circle': CupertinoIcons.chevron_up_circle, + 'chevron_up_circle_fill': CupertinoIcons.chevron_up_circle_fill, + 'chevron_up_square': CupertinoIcons.chevron_up_square, + 'chevron_up_square_fill': CupertinoIcons.chevron_up_square_fill, + 'circle_bottomthird_split': CupertinoIcons.circle_bottomthird_split, + 'circle_fill': CupertinoIcons.circle_fill, + 'circle_grid_3x3': CupertinoIcons.circle_grid_3x3, + 'circle_grid_3x3_fill': CupertinoIcons.circle_grid_3x3_fill, + 'circle_grid_hex': CupertinoIcons.circle_grid_hex, + 'circle_grid_hex_fill': CupertinoIcons.circle_grid_hex_fill, + 'circle_lefthalf_fill': CupertinoIcons.circle_lefthalf_fill, + 'circle_righthalf_fill': CupertinoIcons.circle_righthalf_fill, + 'clear_fill': CupertinoIcons.clear_fill, + 'clock_fill': CupertinoIcons.clock_fill, + 'cloud': CupertinoIcons.cloud, + 'cloud_bolt': CupertinoIcons.cloud_bolt, + 'cloud_bolt_fill': CupertinoIcons.cloud_bolt_fill, + 'cloud_bolt_rain': CupertinoIcons.cloud_bolt_rain, + 'cloud_bolt_rain_fill': CupertinoIcons.cloud_bolt_rain_fill, + 'cloud_download': CupertinoIcons.cloud_download, + 'cloud_download_fill': CupertinoIcons.cloud_download_fill, + 'cloud_drizzle': CupertinoIcons.cloud_drizzle, + 'cloud_drizzle_fill': CupertinoIcons.cloud_drizzle_fill, + 'cloud_fill': CupertinoIcons.cloud_fill, + 'cloud_fog': CupertinoIcons.cloud_fog, + 'cloud_fog_fill': CupertinoIcons.cloud_fog_fill, + 'cloud_hail': CupertinoIcons.cloud_hail, + 'cloud_hail_fill': CupertinoIcons.cloud_hail_fill, + 'cloud_heavyrain': CupertinoIcons.cloud_heavyrain, + 'cloud_heavyrain_fill': CupertinoIcons.cloud_heavyrain_fill, + 'cloud_moon': CupertinoIcons.cloud_moon, + 'cloud_moon_bolt': CupertinoIcons.cloud_moon_bolt, + 'cloud_moon_bolt_fill': CupertinoIcons.cloud_moon_bolt_fill, + 'cloud_moon_fill': CupertinoIcons.cloud_moon_fill, + 'cloud_moon_rain': CupertinoIcons.cloud_moon_rain, + 'cloud_moon_rain_fill': CupertinoIcons.cloud_moon_rain_fill, + 'cloud_rain': CupertinoIcons.cloud_rain, + 'cloud_rain_fill': CupertinoIcons.cloud_rain_fill, + 'cloud_sleet': CupertinoIcons.cloud_sleet, + 'cloud_sleet_fill': CupertinoIcons.cloud_sleet_fill, + 'cloud_snow': CupertinoIcons.cloud_snow, + 'cloud_snow_fill': CupertinoIcons.cloud_snow_fill, + 'cloud_sun': CupertinoIcons.cloud_sun, + 'cloud_sun_bolt': CupertinoIcons.cloud_sun_bolt, + 'cloud_sun_bolt_fill': CupertinoIcons.cloud_sun_bolt_fill, + 'cloud_sun_fill': CupertinoIcons.cloud_sun_fill, + 'cloud_sun_rain': CupertinoIcons.cloud_sun_rain, + 'cloud_sun_rain_fill': CupertinoIcons.cloud_sun_rain_fill, + 'cloud_upload': CupertinoIcons.cloud_upload, + 'cloud_upload_fill': CupertinoIcons.cloud_upload_fill, + 'color_filter': CupertinoIcons.color_filter, + 'color_filter_fill': CupertinoIcons.color_filter_fill, + 'command': CupertinoIcons.command, + 'compass': CupertinoIcons.compass, + 'compass_fill': CupertinoIcons.compass_fill, + 'control': CupertinoIcons.control, + 'creditcard': CupertinoIcons.creditcard, + 'creditcard_fill': CupertinoIcons.creditcard_fill, + 'crop': CupertinoIcons.crop, + 'crop_rotate': CupertinoIcons.crop_rotate, + 'cube': CupertinoIcons.cube, + 'cube_box': CupertinoIcons.cube_box, + 'cube_box_fill': CupertinoIcons.cube_box_fill, + 'cube_fill': CupertinoIcons.cube_fill, + 'cursor_rays': CupertinoIcons.cursor_rays, + 'decrease_indent': CupertinoIcons.decrease_indent, + 'decrease_quotelevel': CupertinoIcons.decrease_quotelevel, + 'delete_left': CupertinoIcons.delete_left, + 'delete_left_fill': CupertinoIcons.delete_left_fill, + 'delete_right': CupertinoIcons.delete_right, + 'delete_right_fill': CupertinoIcons.delete_right_fill, + 'desktopcomputer': CupertinoIcons.desktopcomputer, + 'device_desktop': CupertinoIcons.device_desktop, + 'device_laptop': CupertinoIcons.device_laptop, + 'device_phone_landscape': CupertinoIcons.device_phone_landscape, + 'device_phone_portrait': CupertinoIcons.device_phone_portrait, + 'dial': CupertinoIcons.dial, + 'dial_fill': CupertinoIcons.dial_fill, + 'divide': CupertinoIcons.divide, + 'divide_circle': CupertinoIcons.divide_circle, + 'divide_circle_fill': CupertinoIcons.divide_circle_fill, + 'divide_square': CupertinoIcons.divide_square, + 'divide_square_fill': CupertinoIcons.divide_square_fill, + 'doc': CupertinoIcons.doc, + 'doc_append': CupertinoIcons.doc_append, + 'doc_chart': CupertinoIcons.doc_chart, + 'doc_chart_fill': CupertinoIcons.doc_chart_fill, + 'doc_checkmark': CupertinoIcons.doc_checkmark, + 'doc_checkmark_fill': CupertinoIcons.doc_checkmark_fill, + 'doc_circle': CupertinoIcons.doc_circle, + 'doc_circle_fill': CupertinoIcons.doc_circle_fill, + 'doc_fill': CupertinoIcons.doc_fill, + 'doc_on_clipboard': CupertinoIcons.doc_on_clipboard, + 'doc_on_clipboard_fill': CupertinoIcons.doc_on_clipboard_fill, + 'doc_on_doc': CupertinoIcons.doc_on_doc, + 'doc_on_doc_fill': CupertinoIcons.doc_on_doc_fill, + 'doc_person': CupertinoIcons.doc_person, + 'doc_person_fill': CupertinoIcons.doc_person_fill, + 'doc_plaintext': CupertinoIcons.doc_plaintext, + 'doc_richtext': CupertinoIcons.doc_richtext, + 'doc_text': CupertinoIcons.doc_text, + 'doc_text_fill': CupertinoIcons.doc_text_fill, + 'doc_text_search': CupertinoIcons.doc_text_search, + 'doc_text_viewfinder': CupertinoIcons.doc_text_viewfinder, + 'dot_radiowaves_left_right': CupertinoIcons.dot_radiowaves_left_right, + 'dot_radiowaves_right': CupertinoIcons.dot_radiowaves_right, + 'dot_square': CupertinoIcons.dot_square, + 'dot_square_fill': CupertinoIcons.dot_square_fill, + 'download_circle': CupertinoIcons.download_circle, + 'download_circle_fill': CupertinoIcons.download_circle_fill, + 'drop': CupertinoIcons.drop, + 'drop_fill': CupertinoIcons.drop_fill, + 'drop_triangle': CupertinoIcons.drop_triangle, + 'drop_triangle_fill': CupertinoIcons.drop_triangle_fill, + 'ear': CupertinoIcons.ear, + 'eject': CupertinoIcons.eject, + 'eject_fill': CupertinoIcons.eject_fill, + 'ellipses_bubble': CupertinoIcons.ellipses_bubble, + 'ellipses_bubble_fill': CupertinoIcons.ellipses_bubble_fill, + 'ellipsis_circle': CupertinoIcons.ellipsis_circle, + 'ellipsis_circle_fill': CupertinoIcons.ellipsis_circle_fill, + 'ellipsis_vertical': CupertinoIcons.ellipsis_vertical, + 'ellipsis_vertical_circle': CupertinoIcons.ellipsis_vertical_circle, + 'ellipsis_vertical_circle_fill': CupertinoIcons.ellipsis_vertical_circle_fill, + 'envelope': CupertinoIcons.envelope, + 'envelope_badge': CupertinoIcons.envelope_badge, + 'envelope_badge_fill': CupertinoIcons.envelope_badge_fill, + 'envelope_circle': CupertinoIcons.envelope_circle, + 'envelope_circle_fill': CupertinoIcons.envelope_circle_fill, + 'envelope_fill': CupertinoIcons.envelope_fill, + 'envelope_open': CupertinoIcons.envelope_open, + 'envelope_open_fill': CupertinoIcons.envelope_open_fill, + 'equal': CupertinoIcons.equal, + 'equal_circle': CupertinoIcons.equal_circle, + 'equal_circle_fill': CupertinoIcons.equal_circle_fill, + 'equal_square': CupertinoIcons.equal_square, + 'equal_square_fill': CupertinoIcons.equal_square_fill, + 'escape': CupertinoIcons.escape, + 'exclamationmark': CupertinoIcons.exclamationmark, + 'exclamationmark_bubble': CupertinoIcons.exclamationmark_bubble, + 'exclamationmark_bubble_fill': CupertinoIcons.exclamationmark_bubble_fill, + 'exclamationmark_circle': CupertinoIcons.exclamationmark_circle, + 'exclamationmark_circle_fill': CupertinoIcons.exclamationmark_circle_fill, + 'exclamationmark_octagon': CupertinoIcons.exclamationmark_octagon, + 'exclamationmark_octagon_fill': CupertinoIcons.exclamationmark_octagon_fill, + 'exclamationmark_shield': CupertinoIcons.exclamationmark_shield, + 'exclamationmark_shield_fill': CupertinoIcons.exclamationmark_shield_fill, + 'exclamationmark_square': CupertinoIcons.exclamationmark_square, + 'exclamationmark_square_fill': CupertinoIcons.exclamationmark_square_fill, + 'exclamationmark_triangle': CupertinoIcons.exclamationmark_triangle, + 'exclamationmark_triangle_fill': CupertinoIcons.exclamationmark_triangle_fill, + 'eye_fill': CupertinoIcons.eye_fill, + 'eye_slash': CupertinoIcons.eye_slash, + 'eye_slash_fill': CupertinoIcons.eye_slash_fill, + 'eyedropper': CupertinoIcons.eyedropper, + 'eyedropper_full': CupertinoIcons.eyedropper_full, + 'eyedropper_halffull': CupertinoIcons.eyedropper_halffull, + 'eyeglasses': CupertinoIcons.eyeglasses, + 'f_cursive': CupertinoIcons.f_cursive, + 'f_cursive_circle': CupertinoIcons.f_cursive_circle, + 'f_cursive_circle_fill': CupertinoIcons.f_cursive_circle_fill, + 'film': CupertinoIcons.film, + 'film_fill': CupertinoIcons.film_fill, + 'flag_circle': CupertinoIcons.flag_circle, + 'flag_circle_fill': CupertinoIcons.flag_circle_fill, + 'flag_fill': CupertinoIcons.flag_fill, + 'flag_slash': CupertinoIcons.flag_slash, + 'flag_slash_fill': CupertinoIcons.flag_slash_fill, + 'flame': CupertinoIcons.flame, + 'flame_fill': CupertinoIcons.flame_fill, + 'floppy_disk': CupertinoIcons.floppy_disk, + 'flowchart': CupertinoIcons.flowchart, + 'flowchart_fill': CupertinoIcons.flowchart_fill, + 'folder_badge_minus': CupertinoIcons.folder_badge_minus, + 'folder_badge_person_crop': CupertinoIcons.folder_badge_person_crop, + 'folder_badge_plus': CupertinoIcons.folder_badge_plus, + 'folder_circle': CupertinoIcons.folder_circle, + 'folder_circle_fill': CupertinoIcons.folder_circle_fill, + 'folder_fill': CupertinoIcons.folder_fill, + 'folder_fill_badge_minus': CupertinoIcons.folder_fill_badge_minus, + 'folder_fill_badge_person_crop': CupertinoIcons.folder_fill_badge_person_crop, + 'folder_fill_badge_plus': CupertinoIcons.folder_fill_badge_plus, + 'forward_end': CupertinoIcons.forward_end, + 'forward_end_alt': CupertinoIcons.forward_end_alt, + 'forward_end_alt_fill': CupertinoIcons.forward_end_alt_fill, + 'forward_end_fill': CupertinoIcons.forward_end_fill, + 'forward_fill': CupertinoIcons.forward_fill, + 'function': CupertinoIcons.function, + 'fx': CupertinoIcons.fx, + 'gamecontroller': CupertinoIcons.gamecontroller, + 'gamecontroller_alt_fill': CupertinoIcons.gamecontroller_alt_fill, + 'gamecontroller_fill': CupertinoIcons.gamecontroller_fill, + 'gauge': CupertinoIcons.gauge, + 'gauge_badge_minus': CupertinoIcons.gauge_badge_minus, + 'gauge_badge_plus': CupertinoIcons.gauge_badge_plus, + 'gear_alt': CupertinoIcons.gear_alt, + 'gear_alt_fill': CupertinoIcons.gear_alt_fill, + 'gift': CupertinoIcons.gift, + 'gift_alt': CupertinoIcons.gift_alt, + 'gift_alt_fill': CupertinoIcons.gift_alt_fill, + 'gift_fill': CupertinoIcons.gift_fill, + 'globe': CupertinoIcons.globe, + 'gobackward': CupertinoIcons.gobackward, + 'gobackward_10': CupertinoIcons.gobackward_10, + 'gobackward_15': CupertinoIcons.gobackward_15, + 'gobackward_30': CupertinoIcons.gobackward_30, + 'gobackward_45': CupertinoIcons.gobackward_45, + 'gobackward_60': CupertinoIcons.gobackward_60, + 'gobackward_75': CupertinoIcons.gobackward_75, + 'gobackward_90': CupertinoIcons.gobackward_90, + 'gobackward_minus': CupertinoIcons.gobackward_minus, + 'goforward': CupertinoIcons.goforward, + 'goforward_10': CupertinoIcons.goforward_10, + 'goforward_15': CupertinoIcons.goforward_15, + 'goforward_30': CupertinoIcons.goforward_30, + 'goforward_45': CupertinoIcons.goforward_45, + 'goforward_60': CupertinoIcons.goforward_60, + 'goforward_75': CupertinoIcons.goforward_75, + 'goforward_90': CupertinoIcons.goforward_90, + 'goforward_plus': CupertinoIcons.goforward_plus, + 'graph_circle': CupertinoIcons.graph_circle, + 'graph_circle_fill': CupertinoIcons.graph_circle_fill, + 'graph_square': CupertinoIcons.graph_square, + 'graph_square_fill': CupertinoIcons.graph_square_fill, + 'greaterthan': CupertinoIcons.greaterthan, + 'greaterthan_circle': CupertinoIcons.greaterthan_circle, + 'greaterthan_circle_fill': CupertinoIcons.greaterthan_circle_fill, + 'greaterthan_square': CupertinoIcons.greaterthan_square, + 'greaterthan_square_fill': CupertinoIcons.greaterthan_square_fill, + 'grid': CupertinoIcons.grid, + 'grid_circle': CupertinoIcons.grid_circle, + 'grid_circle_fill': CupertinoIcons.grid_circle_fill, + 'guitars': CupertinoIcons.guitars, + 'hammer': CupertinoIcons.hammer, + 'hammer_fill': CupertinoIcons.hammer_fill, + 'hand_draw': CupertinoIcons.hand_draw, + 'hand_draw_fill': CupertinoIcons.hand_draw_fill, + 'hand_point_left': CupertinoIcons.hand_point_left, + 'hand_point_left_fill': CupertinoIcons.hand_point_left_fill, + 'hand_point_right': CupertinoIcons.hand_point_right, + 'hand_point_right_fill': CupertinoIcons.hand_point_right_fill, + 'hand_raised': CupertinoIcons.hand_raised, + 'hand_raised_fill': CupertinoIcons.hand_raised_fill, + 'hand_raised_slash': CupertinoIcons.hand_raised_slash, + 'hand_raised_slash_fill': CupertinoIcons.hand_raised_slash_fill, + 'hand_thumbsdown': CupertinoIcons.hand_thumbsdown, + 'hand_thumbsdown_fill': CupertinoIcons.hand_thumbsdown_fill, + 'hand_thumbsup': CupertinoIcons.hand_thumbsup, + 'hand_thumbsup_fill': CupertinoIcons.hand_thumbsup_fill, + 'hare': CupertinoIcons.hare, + 'hare_fill': CupertinoIcons.hare_fill, + 'headphones': CupertinoIcons.headphones, + 'heart_circle': CupertinoIcons.heart_circle, + 'heart_circle_fill': CupertinoIcons.heart_circle_fill, + 'heart_fill': CupertinoIcons.heart_fill, + 'heart_slash': CupertinoIcons.heart_slash, + 'heart_slash_circle': CupertinoIcons.heart_slash_circle, + 'heart_slash_circle_fill': CupertinoIcons.heart_slash_circle_fill, + 'heart_slash_fill': CupertinoIcons.heart_slash_fill, + 'helm': CupertinoIcons.helm, + 'hexagon': CupertinoIcons.hexagon, + 'hexagon_fill': CupertinoIcons.hexagon_fill, + 'hifispeaker': CupertinoIcons.hifispeaker, + 'hifispeaker_fill': CupertinoIcons.hifispeaker_fill, + 'hourglass': CupertinoIcons.hourglass, + 'hourglass_bottomhalf_fill': CupertinoIcons.hourglass_bottomhalf_fill, + 'hourglass_tophalf_fill': CupertinoIcons.hourglass_tophalf_fill, + 'house': CupertinoIcons.house, + 'house_alt': CupertinoIcons.house_alt, + 'house_alt_fill': CupertinoIcons.house_alt_fill, + 'house_fill': CupertinoIcons.house_fill, + 'hurricane': CupertinoIcons.hurricane, + 'increase_indent': CupertinoIcons.increase_indent, + 'increase_quotelevel': CupertinoIcons.increase_quotelevel, + 'infinite': CupertinoIcons.infinite, + 'info_circle': CupertinoIcons.info_circle, + 'info_circle_fill': CupertinoIcons.info_circle_fill, + 'italic': CupertinoIcons.italic, + 'keyboard': CupertinoIcons.keyboard, + 'keyboard_chevron_compact_down': CupertinoIcons.keyboard_chevron_compact_down, + 'largecircle_fill_circle': CupertinoIcons.largecircle_fill_circle, + 'lasso': CupertinoIcons.lasso, + 'layers': CupertinoIcons.layers, + 'layers_alt': CupertinoIcons.layers_alt, + 'layers_alt_fill': CupertinoIcons.layers_alt_fill, + 'layers_fill': CupertinoIcons.layers_fill, + 'leaf_arrow_circlepath': CupertinoIcons.leaf_arrow_circlepath, + 'lessthan': CupertinoIcons.lessthan, + 'lessthan_circle': CupertinoIcons.lessthan_circle, + 'lessthan_circle_fill': CupertinoIcons.lessthan_circle_fill, + 'lessthan_square': CupertinoIcons.lessthan_square, + 'lessthan_square_fill': CupertinoIcons.lessthan_square_fill, + 'light_max': CupertinoIcons.light_max, + 'light_min': CupertinoIcons.light_min, + 'lightbulb': CupertinoIcons.lightbulb, + 'lightbulb_fill': CupertinoIcons.lightbulb_fill, + 'lightbulb_slash': CupertinoIcons.lightbulb_slash, + 'lightbulb_slash_fill': CupertinoIcons.lightbulb_slash_fill, + 'line_horizontal_3': CupertinoIcons.line_horizontal_3, + 'line_horizontal_3_decrease': CupertinoIcons.line_horizontal_3_decrease, + 'line_horizontal_3_decrease_circle': CupertinoIcons.line_horizontal_3_decrease_circle, + 'line_horizontal_3_decrease_circle_fill': CupertinoIcons.line_horizontal_3_decrease_circle_fill, + 'link': CupertinoIcons.link, + 'link_circle': CupertinoIcons.link_circle, + 'link_circle_fill': CupertinoIcons.link_circle_fill, + 'list_bullet': CupertinoIcons.list_bullet, + 'list_bullet_below_rectangle': CupertinoIcons.list_bullet_below_rectangle, + 'list_bullet_indent': CupertinoIcons.list_bullet_indent, + 'list_dash': CupertinoIcons.list_dash, + 'list_number': CupertinoIcons.list_number, + 'list_number_rtl': CupertinoIcons.list_number_rtl, + 'location_circle': CupertinoIcons.location_circle, + 'location_circle_fill': CupertinoIcons.location_circle_fill, + 'location_fill': CupertinoIcons.location_fill, + 'location_north': CupertinoIcons.location_north, + 'location_north_fill': CupertinoIcons.location_north_fill, + 'location_north_line': CupertinoIcons.location_north_line, + 'location_north_line_fill': CupertinoIcons.location_north_line_fill, + 'location_slash': CupertinoIcons.location_slash, + 'location_slash_fill': CupertinoIcons.location_slash_fill, + 'lock': CupertinoIcons.lock, + 'lock_circle': CupertinoIcons.lock_circle, + 'lock_circle_fill': CupertinoIcons.lock_circle_fill, + 'lock_fill': CupertinoIcons.lock_fill, + 'lock_open': CupertinoIcons.lock_open, + 'lock_open_fill': CupertinoIcons.lock_open_fill, + 'lock_rotation': CupertinoIcons.lock_rotation, + 'lock_rotation_open': CupertinoIcons.lock_rotation_open, + 'lock_shield': CupertinoIcons.lock_shield, + 'lock_shield_fill': CupertinoIcons.lock_shield_fill, + 'lock_slash': CupertinoIcons.lock_slash, + 'lock_slash_fill': CupertinoIcons.lock_slash_fill, + 'macwindow': CupertinoIcons.macwindow, + 'map': CupertinoIcons.map, + 'map_fill': CupertinoIcons.map_fill, + 'map_pin': CupertinoIcons.map_pin, + 'map_pin_ellipse': CupertinoIcons.map_pin_ellipse, + 'map_pin_slash': CupertinoIcons.map_pin_slash, + 'memories': CupertinoIcons.memories, + 'memories_badge_minus': CupertinoIcons.memories_badge_minus, + 'memories_badge_plus': CupertinoIcons.memories_badge_plus, + 'metronome': CupertinoIcons.metronome, + 'mic_circle': CupertinoIcons.mic_circle, + 'mic_circle_fill': CupertinoIcons.mic_circle_fill, + 'mic_fill': CupertinoIcons.mic_fill, + 'mic_slash': CupertinoIcons.mic_slash, + 'mic_slash_fill': CupertinoIcons.mic_slash_fill, + 'minus': CupertinoIcons.minus, + 'minus_circle': CupertinoIcons.minus_circle, + 'minus_circle_fill': CupertinoIcons.minus_circle_fill, + 'minus_rectangle': CupertinoIcons.minus_rectangle, + 'minus_rectangle_fill': CupertinoIcons.minus_rectangle_fill, + 'minus_slash_plus': CupertinoIcons.minus_slash_plus, + 'minus_square': CupertinoIcons.minus_square, + 'minus_square_fill': CupertinoIcons.minus_square_fill, + 'money_dollar': CupertinoIcons.money_dollar, + 'money_dollar_circle': CupertinoIcons.money_dollar_circle, + 'money_dollar_circle_fill': CupertinoIcons.money_dollar_circle_fill, + 'money_euro': CupertinoIcons.money_euro, + 'money_euro_circle': CupertinoIcons.money_euro_circle, + 'money_euro_circle_fill': CupertinoIcons.money_euro_circle_fill, + 'money_pound': CupertinoIcons.money_pound, + 'money_pound_circle': CupertinoIcons.money_pound_circle, + 'money_pound_circle_fill': CupertinoIcons.money_pound_circle_fill, + 'money_rubl': CupertinoIcons.money_rubl, + 'money_rubl_circle': CupertinoIcons.money_rubl_circle, + 'money_rubl_circle_fill': CupertinoIcons.money_rubl_circle_fill, + 'money_yen': CupertinoIcons.money_yen, + 'money_yen_circle': CupertinoIcons.money_yen_circle, + 'money_yen_circle_fill': CupertinoIcons.money_yen_circle_fill, + 'moon': CupertinoIcons.moon, + 'moon_circle': CupertinoIcons.moon_circle, + 'moon_circle_fill': CupertinoIcons.moon_circle_fill, + 'moon_fill': CupertinoIcons.moon_fill, + 'moon_stars': CupertinoIcons.moon_stars, + 'moon_stars_fill': CupertinoIcons.moon_stars_fill, + 'moon_zzz': CupertinoIcons.moon_zzz, + 'moon_zzz_fill': CupertinoIcons.moon_zzz_fill, + 'move': CupertinoIcons.move, + 'multiply': CupertinoIcons.multiply, + 'multiply_circle': CupertinoIcons.multiply_circle, + 'multiply_circle_fill': CupertinoIcons.multiply_circle_fill, + 'multiply_square': CupertinoIcons.multiply_square, + 'multiply_square_fill': CupertinoIcons.multiply_square_fill, + 'music_albums': CupertinoIcons.music_albums, + 'music_albums_fill': CupertinoIcons.music_albums_fill, + 'music_house': CupertinoIcons.music_house, + 'music_house_fill': CupertinoIcons.music_house_fill, + 'music_mic': CupertinoIcons.music_mic, + 'music_note_2': CupertinoIcons.music_note_2, + 'music_note_list': CupertinoIcons.music_note_list, + 'nosign': CupertinoIcons.nosign, + 'number': CupertinoIcons.number, + 'number_circle': CupertinoIcons.number_circle, + 'number_circle_fill': CupertinoIcons.number_circle_fill, + 'number_square': CupertinoIcons.number_square, + 'number_square_fill': CupertinoIcons.number_square_fill, + 'option': CupertinoIcons.option, + 'paintbrush': CupertinoIcons.paintbrush, + 'paintbrush_fill': CupertinoIcons.paintbrush_fill, + 'pano': CupertinoIcons.pano, + 'pano_fill': CupertinoIcons.pano_fill, + 'paperclip': CupertinoIcons.paperclip, + 'paperplane': CupertinoIcons.paperplane, + 'paperplane_fill': CupertinoIcons.paperplane_fill, + 'paragraph': CupertinoIcons.paragraph, + 'pause_circle': CupertinoIcons.pause_circle, + 'pause_circle_fill': CupertinoIcons.pause_circle_fill, + 'pause_fill': CupertinoIcons.pause_fill, + 'pause_rectangle': CupertinoIcons.pause_rectangle, + 'pause_rectangle_fill': CupertinoIcons.pause_rectangle_fill, + 'pencil_circle': CupertinoIcons.pencil_circle, + 'pencil_circle_fill': CupertinoIcons.pencil_circle_fill, + 'pencil_ellipsis_rectangle': CupertinoIcons.pencil_ellipsis_rectangle, + 'pencil_outline': CupertinoIcons.pencil_outline, + 'pencil_slash': CupertinoIcons.pencil_slash, + 'percent': CupertinoIcons.percent, + 'person_2': CupertinoIcons.person_2, + 'person_2_alt': CupertinoIcons.person_2_alt, + 'person_2_fill': CupertinoIcons.person_2_fill, + 'person_2_square_stack': CupertinoIcons.person_2_square_stack, + 'person_2_square_stack_fill': CupertinoIcons.person_2_square_stack_fill, + 'person_3': CupertinoIcons.person_3, + 'person_3_fill': CupertinoIcons.person_3_fill, + 'person_alt': CupertinoIcons.person_alt, + 'person_alt_circle': CupertinoIcons.person_alt_circle, + 'person_alt_circle_fill': CupertinoIcons.person_alt_circle_fill, + 'person_badge_minus': CupertinoIcons.person_badge_minus, + 'person_badge_minus_fill': CupertinoIcons.person_badge_minus_fill, + 'person_badge_plus': CupertinoIcons.person_badge_plus, + 'person_badge_plus_fill': CupertinoIcons.person_badge_plus_fill, + 'person_circle': CupertinoIcons.person_circle, + 'person_circle_fill': CupertinoIcons.person_circle_fill, + 'person_crop_circle': CupertinoIcons.person_crop_circle, + 'person_crop_circle_badge_checkmark': CupertinoIcons.person_crop_circle_badge_checkmark, + 'person_crop_circle_badge_exclam': CupertinoIcons.person_crop_circle_badge_exclam, + 'person_crop_circle_badge_minus': CupertinoIcons.person_crop_circle_badge_minus, + 'person_crop_circle_badge_plus': CupertinoIcons.person_crop_circle_badge_plus, + 'person_crop_circle_badge_xmark': CupertinoIcons.person_crop_circle_badge_xmark, + 'person_crop_circle_fill': CupertinoIcons.person_crop_circle_fill, + 'person_crop_circle_fill_badge_checkmark': CupertinoIcons.person_crop_circle_fill_badge_checkmark, + 'person_crop_circle_fill_badge_exclam': CupertinoIcons.person_crop_circle_fill_badge_exclam, + 'person_crop_circle_fill_badge_minus': CupertinoIcons.person_crop_circle_fill_badge_minus, + 'person_crop_circle_fill_badge_plus': CupertinoIcons.person_crop_circle_fill_badge_plus, + 'person_crop_circle_fill_badge_xmark': CupertinoIcons.person_crop_circle_fill_badge_xmark, + 'person_crop_rectangle': CupertinoIcons.person_crop_rectangle, + 'person_crop_rectangle_fill': CupertinoIcons.person_crop_rectangle_fill, + 'person_crop_square': CupertinoIcons.person_crop_square, + 'person_crop_square_fill': CupertinoIcons.person_crop_square_fill, + 'person_fill': CupertinoIcons.person_fill, + 'personalhotspot': CupertinoIcons.personalhotspot, + 'perspective': CupertinoIcons.perspective, + 'phone_arrow_down_left': CupertinoIcons.phone_arrow_down_left, + 'phone_arrow_right': CupertinoIcons.phone_arrow_right, + 'phone_arrow_up_right': CupertinoIcons.phone_arrow_up_right, + 'phone_badge_plus': CupertinoIcons.phone_badge_plus, + 'phone_circle': CupertinoIcons.phone_circle, + 'phone_circle_fill': CupertinoIcons.phone_circle_fill, + 'phone_down': CupertinoIcons.phone_down, + 'phone_down_circle': CupertinoIcons.phone_down_circle, + 'phone_down_circle_fill': CupertinoIcons.phone_down_circle_fill, + 'phone_down_fill': CupertinoIcons.phone_down_fill, + 'phone_fill': CupertinoIcons.phone_fill, + 'phone_fill_arrow_down_left': CupertinoIcons.phone_fill_arrow_down_left, + 'phone_fill_arrow_right': CupertinoIcons.phone_fill_arrow_right, + 'phone_fill_arrow_up_right': CupertinoIcons.phone_fill_arrow_up_right, + 'phone_fill_badge_plus': CupertinoIcons.phone_fill_badge_plus, + 'photo': CupertinoIcons.photo, + 'photo_fill': CupertinoIcons.photo_fill, + 'photo_fill_on_rectangle_fill': CupertinoIcons.photo_fill_on_rectangle_fill, + 'photo_on_rectangle': CupertinoIcons.photo_on_rectangle, + 'piano': CupertinoIcons.piano, + 'pin': CupertinoIcons.pin, + 'pin_fill': CupertinoIcons.pin_fill, + 'pin_slash': CupertinoIcons.pin_slash, + 'pin_slash_fill': CupertinoIcons.pin_slash_fill, + 'placemark': CupertinoIcons.placemark, + 'placemark_fill': CupertinoIcons.placemark_fill, + 'play': CupertinoIcons.play, + 'play_circle': CupertinoIcons.play_circle, + 'play_circle_fill': CupertinoIcons.play_circle_fill, + 'play_fill': CupertinoIcons.play_fill, + 'play_rectangle': CupertinoIcons.play_rectangle, + 'play_rectangle_fill': CupertinoIcons.play_rectangle_fill, + 'playpause': CupertinoIcons.playpause, + 'playpause_fill': CupertinoIcons.playpause_fill, + 'plus': CupertinoIcons.plus, + 'plus_app': CupertinoIcons.plus_app, + 'plus_app_fill': CupertinoIcons.plus_app_fill, + 'plus_bubble': CupertinoIcons.plus_bubble, + 'plus_bubble_fill': CupertinoIcons.plus_bubble_fill, + 'plus_circle': CupertinoIcons.plus_circle, + 'plus_circle_fill': CupertinoIcons.plus_circle_fill, + 'plus_rectangle': CupertinoIcons.plus_rectangle, + 'plus_rectangle_fill': CupertinoIcons.plus_rectangle_fill, + 'plus_rectangle_fill_on_rectangle_fill': CupertinoIcons.plus_rectangle_fill_on_rectangle_fill, + 'plus_rectangle_on_rectangle': CupertinoIcons.plus_rectangle_on_rectangle, + 'plus_slash_minus': CupertinoIcons.plus_slash_minus, + 'plus_square': CupertinoIcons.plus_square, + 'plus_square_fill': CupertinoIcons.plus_square_fill, + 'plus_square_fill_on_square_fill': CupertinoIcons.plus_square_fill_on_square_fill, + 'plus_square_on_square': CupertinoIcons.plus_square_on_square, + 'plusminus': CupertinoIcons.plusminus, + 'plusminus_circle': CupertinoIcons.plusminus_circle, + 'plusminus_circle_fill': CupertinoIcons.plusminus_circle_fill, + 'power': CupertinoIcons.power, + 'printer': CupertinoIcons.printer, + 'printer_fill': CupertinoIcons.printer_fill, + 'projective': CupertinoIcons.projective, + 'purchased': CupertinoIcons.purchased, + 'purchased_circle': CupertinoIcons.purchased_circle, + 'purchased_circle_fill': CupertinoIcons.purchased_circle_fill, + 'qrcode': CupertinoIcons.qrcode, + 'qrcode_viewfinder': CupertinoIcons.qrcode_viewfinder, + 'question': CupertinoIcons.question, + 'question_circle': CupertinoIcons.question_circle, + 'question_circle_fill': CupertinoIcons.question_circle_fill, + 'question_diamond': CupertinoIcons.question_diamond, + 'question_diamond_fill': CupertinoIcons.question_diamond_fill, + 'question_square': CupertinoIcons.question_square, + 'question_square_fill': CupertinoIcons.question_square_fill, + 'quote_bubble': CupertinoIcons.quote_bubble, + 'quote_bubble_fill': CupertinoIcons.quote_bubble_fill, + 'radiowaves_left': CupertinoIcons.radiowaves_left, + 'radiowaves_right': CupertinoIcons.radiowaves_right, + 'rays': CupertinoIcons.rays, + 'recordingtape': CupertinoIcons.recordingtape, + 'rectangle': CupertinoIcons.rectangle, + 'rectangle_3_offgrid': CupertinoIcons.rectangle_3_offgrid, + 'rectangle_3_offgrid_fill': CupertinoIcons.rectangle_3_offgrid_fill, + 'rectangle_arrow_up_right_arrow_down_left': CupertinoIcons.rectangle_arrow_up_right_arrow_down_left, + 'rectangle_arrow_up_right_arrow_down_left_slash': CupertinoIcons.rectangle_arrow_up_right_arrow_down_left_slash, + 'rectangle_badge_checkmark': CupertinoIcons.rectangle_badge_checkmark, + 'rectangle_badge_xmark': CupertinoIcons.rectangle_badge_xmark, + 'rectangle_compress_vertical': CupertinoIcons.rectangle_compress_vertical, + 'rectangle_dock': CupertinoIcons.rectangle_dock, + 'rectangle_expand_vertical': CupertinoIcons.rectangle_expand_vertical, + 'rectangle_fill': CupertinoIcons.rectangle_fill, + 'rectangle_fill_badge_checkmark': CupertinoIcons.rectangle_fill_badge_checkmark, + 'rectangle_fill_badge_xmark': CupertinoIcons.rectangle_fill_badge_xmark, + 'rectangle_fill_on_rectangle_angled_fill': CupertinoIcons.rectangle_fill_on_rectangle_angled_fill, + 'rectangle_fill_on_rectangle_fill': CupertinoIcons.rectangle_fill_on_rectangle_fill, + 'rectangle_grid_1x2': CupertinoIcons.rectangle_grid_1x2, + 'rectangle_grid_1x2_fill': CupertinoIcons.rectangle_grid_1x2_fill, + 'rectangle_grid_2x2': CupertinoIcons.rectangle_grid_2x2, + 'rectangle_grid_2x2_fill': CupertinoIcons.rectangle_grid_2x2_fill, + 'rectangle_grid_3x2': CupertinoIcons.rectangle_grid_3x2, + 'rectangle_grid_3x2_fill': CupertinoIcons.rectangle_grid_3x2_fill, + 'rectangle_on_rectangle': CupertinoIcons.rectangle_on_rectangle, + 'rectangle_on_rectangle_angled': CupertinoIcons.rectangle_on_rectangle_angled, + 'rectangle_paperclip': CupertinoIcons.rectangle_paperclip, + 'rectangle_split_3x1': CupertinoIcons.rectangle_split_3x1, + 'rectangle_split_3x1_fill': CupertinoIcons.rectangle_split_3x1_fill, + 'rectangle_split_3x3': CupertinoIcons.rectangle_split_3x3, + 'rectangle_split_3x3_fill': CupertinoIcons.rectangle_split_3x3_fill, + 'rectangle_stack': CupertinoIcons.rectangle_stack, + 'rectangle_stack_badge_minus': CupertinoIcons.rectangle_stack_badge_minus, + 'rectangle_stack_badge_person_crop': CupertinoIcons.rectangle_stack_badge_person_crop, + 'rectangle_stack_badge_plus': CupertinoIcons.rectangle_stack_badge_plus, + 'rectangle_stack_fill': CupertinoIcons.rectangle_stack_fill, + 'rectangle_stack_fill_badge_minus': CupertinoIcons.rectangle_stack_fill_badge_minus, + 'rectangle_stack_fill_badge_person_crop': CupertinoIcons.rectangle_stack_fill_badge_person_crop, + 'rectangle_stack_fill_badge_plus': CupertinoIcons.rectangle_stack_fill_badge_plus, + 'rectangle_stack_person_crop': CupertinoIcons.rectangle_stack_person_crop, + 'rectangle_stack_person_crop_fill': CupertinoIcons.rectangle_stack_person_crop_fill, + 'repeat': CupertinoIcons.repeat, + 'repeat_1': CupertinoIcons.repeat_1, + 'resize': CupertinoIcons.resize, + 'resize_h': CupertinoIcons.resize_h, + 'resize_v': CupertinoIcons.resize_v, + 'return_icon': CupertinoIcons.return_icon, + 'rhombus': CupertinoIcons.rhombus, + 'rhombus_fill': CupertinoIcons.rhombus_fill, + 'rocket': CupertinoIcons.rocket, + 'rocket_fill': CupertinoIcons.rocket_fill, + 'rosette': CupertinoIcons.rosette, + 'rotate_left': CupertinoIcons.rotate_left, + 'rotate_left_fill': CupertinoIcons.rotate_left_fill, + 'rotate_right': CupertinoIcons.rotate_right, + 'rotate_right_fill': CupertinoIcons.rotate_right_fill, + 'scissors': CupertinoIcons.scissors, + 'scissors_alt': CupertinoIcons.scissors_alt, + 'scope': CupertinoIcons.scope, + 'scribble': CupertinoIcons.scribble, + 'search_circle': CupertinoIcons.search_circle, + 'search_circle_fill': CupertinoIcons.search_circle_fill, + 'selection_pin_in_out': CupertinoIcons.selection_pin_in_out, + 'shield': CupertinoIcons.shield, + 'shield_fill': CupertinoIcons.shield_fill, + 'shield_lefthalf_fill': CupertinoIcons.shield_lefthalf_fill, + 'shield_slash': CupertinoIcons.shield_slash, + 'shield_slash_fill': CupertinoIcons.shield_slash_fill, + 'shift': CupertinoIcons.shift, + 'shift_fill': CupertinoIcons.shift_fill, + 'sidebar_left': CupertinoIcons.sidebar_left, + 'sidebar_right': CupertinoIcons.sidebar_right, + 'signature': CupertinoIcons.signature, + 'skew': CupertinoIcons.skew, + 'slash_circle': CupertinoIcons.slash_circle, + 'slash_circle_fill': CupertinoIcons.slash_circle_fill, + 'slider_horizontal_3': CupertinoIcons.slider_horizontal_3, + 'slider_horizontal_below_rectangle': CupertinoIcons.slider_horizontal_below_rectangle, + 'slowmo': CupertinoIcons.slowmo, + 'smallcircle_circle': CupertinoIcons.smallcircle_circle, + 'smallcircle_circle_fill': CupertinoIcons.smallcircle_circle_fill, + 'smallcircle_fill_circle': CupertinoIcons.smallcircle_fill_circle, + 'smallcircle_fill_circle_fill': CupertinoIcons.smallcircle_fill_circle_fill, + 'smiley': CupertinoIcons.smiley, + 'smiley_fill': CupertinoIcons.smiley_fill, + 'smoke': CupertinoIcons.smoke, + 'smoke_fill': CupertinoIcons.smoke_fill, + 'snow': CupertinoIcons.snow, + 'sort_down': CupertinoIcons.sort_down, + 'sort_down_circle': CupertinoIcons.sort_down_circle, + 'sort_down_circle_fill': CupertinoIcons.sort_down_circle_fill, + 'sort_up': CupertinoIcons.sort_up, + 'sort_up_circle': CupertinoIcons.sort_up_circle, + 'sort_up_circle_fill': CupertinoIcons.sort_up_circle_fill, + 'sparkles': CupertinoIcons.sparkles, + 'speaker': CupertinoIcons.speaker, + 'speaker_1': CupertinoIcons.speaker_1, + 'speaker_1_fill': CupertinoIcons.speaker_1_fill, + 'speaker_2': CupertinoIcons.speaker_2, + 'speaker_2_fill': CupertinoIcons.speaker_2_fill, + 'speaker_3': CupertinoIcons.speaker_3, + 'speaker_3_fill': CupertinoIcons.speaker_3_fill, + 'speaker_fill': CupertinoIcons.speaker_fill, + 'speaker_slash': CupertinoIcons.speaker_slash, + 'speaker_slash_fill': CupertinoIcons.speaker_slash_fill, + 'speaker_slash_fill_rtl': CupertinoIcons.speaker_slash_fill_rtl, + 'speaker_slash_rtl': CupertinoIcons.speaker_slash_rtl, + 'speaker_zzz': CupertinoIcons.speaker_zzz, + 'speaker_zzz_fill': CupertinoIcons.speaker_zzz_fill, + 'speaker_zzz_fill_rtl': CupertinoIcons.speaker_zzz_fill_rtl, + 'speaker_zzz_rtl': CupertinoIcons.speaker_zzz_rtl, + 'speedometer': CupertinoIcons.speedometer, + 'sportscourt': CupertinoIcons.sportscourt, + 'sportscourt_fill': CupertinoIcons.sportscourt_fill, + 'square': CupertinoIcons.square, + 'square_arrow_down': CupertinoIcons.square_arrow_down, + 'square_arrow_down_fill': CupertinoIcons.square_arrow_down_fill, + 'square_arrow_down_on_square': CupertinoIcons.square_arrow_down_on_square, + 'square_arrow_down_on_square_fill': CupertinoIcons.square_arrow_down_on_square_fill, + 'square_arrow_left': CupertinoIcons.square_arrow_left, + 'square_arrow_left_fill': CupertinoIcons.square_arrow_left_fill, + 'square_arrow_right': CupertinoIcons.square_arrow_right, + 'square_arrow_right_fill': CupertinoIcons.square_arrow_right_fill, + 'square_arrow_up': CupertinoIcons.square_arrow_up, + 'square_arrow_up_fill': CupertinoIcons.square_arrow_up_fill, + 'square_arrow_up_on_square': CupertinoIcons.square_arrow_up_on_square, + 'square_arrow_up_on_square_fill': CupertinoIcons.square_arrow_up_on_square_fill, + 'square_favorites': CupertinoIcons.square_favorites, + 'square_favorites_alt': CupertinoIcons.square_favorites_alt, + 'square_favorites_alt_fill': CupertinoIcons.square_favorites_alt_fill, + 'square_favorites_fill': CupertinoIcons.square_favorites_fill, + 'square_fill': CupertinoIcons.square_fill, + 'square_fill_line_vertical_square': CupertinoIcons.square_fill_line_vertical_square, + 'square_fill_line_vertical_square_fill': CupertinoIcons.square_fill_line_vertical_square_fill, + 'square_fill_on_circle_fill': CupertinoIcons.square_fill_on_circle_fill, + 'square_fill_on_square_fill': CupertinoIcons.square_fill_on_square_fill, + 'square_grid_2x2': CupertinoIcons.square_grid_2x2, + 'square_grid_2x2_fill': CupertinoIcons.square_grid_2x2_fill, + 'square_grid_3x2': CupertinoIcons.square_grid_3x2, + 'square_grid_3x2_fill': CupertinoIcons.square_grid_3x2_fill, + 'square_grid_4x3_fill': CupertinoIcons.square_grid_4x3_fill, + 'square_lefthalf_fill': CupertinoIcons.square_lefthalf_fill, + 'square_line_vertical_square': CupertinoIcons.square_line_vertical_square, + 'square_line_vertical_square_fill': CupertinoIcons.square_line_vertical_square_fill, + 'square_list': CupertinoIcons.square_list, + 'square_list_fill': CupertinoIcons.square_list_fill, + 'square_on_circle': CupertinoIcons.square_on_circle, + 'square_on_square': CupertinoIcons.square_on_square, + 'square_pencil': CupertinoIcons.square_pencil, + 'square_pencil_fill': CupertinoIcons.square_pencil_fill, + 'square_righthalf_fill': CupertinoIcons.square_righthalf_fill, + 'square_split_1x2': CupertinoIcons.square_split_1x2, + 'square_split_1x2_fill': CupertinoIcons.square_split_1x2_fill, + 'square_split_2x1': CupertinoIcons.square_split_2x1, + 'square_split_2x1_fill': CupertinoIcons.square_split_2x1_fill, + 'square_split_2x2': CupertinoIcons.square_split_2x2, + 'square_split_2x2_fill': CupertinoIcons.square_split_2x2_fill, + 'square_stack': CupertinoIcons.square_stack, + 'square_stack_3d_down_dottedline': CupertinoIcons.square_stack_3d_down_dottedline, + 'square_stack_3d_down_right': CupertinoIcons.square_stack_3d_down_right, + 'square_stack_3d_down_right_fill': CupertinoIcons.square_stack_3d_down_right_fill, + 'square_stack_3d_up': CupertinoIcons.square_stack_3d_up, + 'square_stack_3d_up_fill': CupertinoIcons.square_stack_3d_up_fill, + 'square_stack_3d_up_slash': CupertinoIcons.square_stack_3d_up_slash, + 'square_stack_3d_up_slash_fill': CupertinoIcons.square_stack_3d_up_slash_fill, + 'square_stack_fill': CupertinoIcons.square_stack_fill, + 'squares_below_rectangle': CupertinoIcons.squares_below_rectangle, + 'star': CupertinoIcons.star, + 'star_circle': CupertinoIcons.star_circle, + 'star_circle_fill': CupertinoIcons.star_circle_fill, + 'star_fill': CupertinoIcons.star_fill, + 'star_lefthalf_fill': CupertinoIcons.star_lefthalf_fill, + 'star_slash': CupertinoIcons.star_slash, + 'star_slash_fill': CupertinoIcons.star_slash_fill, + 'staroflife': CupertinoIcons.staroflife, + 'staroflife_fill': CupertinoIcons.staroflife_fill, + 'stop': CupertinoIcons.stop, + 'stop_circle': CupertinoIcons.stop_circle, + 'stop_circle_fill': CupertinoIcons.stop_circle_fill, + 'stop_fill': CupertinoIcons.stop_fill, + 'stopwatch': CupertinoIcons.stopwatch, + 'stopwatch_fill': CupertinoIcons.stopwatch_fill, + 'strikethrough': CupertinoIcons.strikethrough, + 'suit_club': CupertinoIcons.suit_club, + 'suit_club_fill': CupertinoIcons.suit_club_fill, + 'suit_diamond': CupertinoIcons.suit_diamond, + 'suit_diamond_fill': CupertinoIcons.suit_diamond_fill, + 'suit_heart': CupertinoIcons.suit_heart, + 'suit_heart_fill': CupertinoIcons.suit_heart_fill, + 'suit_spade': CupertinoIcons.suit_spade, + 'suit_spade_fill': CupertinoIcons.suit_spade_fill, + 'sum': CupertinoIcons.sum, + 'sun_dust': CupertinoIcons.sun_dust, + 'sun_dust_fill': CupertinoIcons.sun_dust_fill, + 'sun_haze': CupertinoIcons.sun_haze, + 'sun_haze_fill': CupertinoIcons.sun_haze_fill, + 'sun_max': CupertinoIcons.sun_max, + 'sun_max_fill': CupertinoIcons.sun_max_fill, + 'sun_min': CupertinoIcons.sun_min, + 'sun_min_fill': CupertinoIcons.sun_min_fill, + 'sunrise': CupertinoIcons.sunrise, + 'sunrise_fill': CupertinoIcons.sunrise_fill, + 'sunset': CupertinoIcons.sunset, + 'sunset_fill': CupertinoIcons.sunset_fill, + 't_bubble': CupertinoIcons.t_bubble, + 't_bubble_fill': CupertinoIcons.t_bubble_fill, + 'table': CupertinoIcons.table, + 'table_badge_more': CupertinoIcons.table_badge_more, + 'table_badge_more_fill': CupertinoIcons.table_badge_more_fill, + 'table_fill': CupertinoIcons.table_fill, + 'tag_circle': CupertinoIcons.tag_circle, + 'tag_circle_fill': CupertinoIcons.tag_circle_fill, + 'tag_fill': CupertinoIcons.tag_fill, + 'text_aligncenter': CupertinoIcons.text_aligncenter, + 'text_alignleft': CupertinoIcons.text_alignleft, + 'text_alignright': CupertinoIcons.text_alignright, + 'text_append': CupertinoIcons.text_append, + 'text_badge_checkmark': CupertinoIcons.text_badge_checkmark, + 'text_badge_minus': CupertinoIcons.text_badge_minus, + 'text_badge_plus': CupertinoIcons.text_badge_plus, + 'text_badge_star': CupertinoIcons.text_badge_star, + 'text_badge_xmark': CupertinoIcons.text_badge_xmark, + 'text_bubble': CupertinoIcons.text_bubble, + 'text_bubble_fill': CupertinoIcons.text_bubble_fill, + 'text_cursor': CupertinoIcons.text_cursor, + 'text_insert': CupertinoIcons.text_insert, + 'text_justify': CupertinoIcons.text_justify, + 'text_justifyleft': CupertinoIcons.text_justifyleft, + 'text_justifyright': CupertinoIcons.text_justifyright, + 'text_quote': CupertinoIcons.text_quote, + 'textbox': CupertinoIcons.textbox, + 'textformat': CupertinoIcons.textformat, + 'textformat_123': CupertinoIcons.textformat_123, + 'textformat_abc': CupertinoIcons.textformat_abc, + 'textformat_abc_dottedunderline': CupertinoIcons.textformat_abc_dottedunderline, + 'textformat_alt': CupertinoIcons.textformat_alt, + 'textformat_size': CupertinoIcons.textformat_size, + 'textformat_subscript': CupertinoIcons.textformat_subscript, + 'textformat_superscript': CupertinoIcons.textformat_superscript, + 'thermometer': CupertinoIcons.thermometer, + 'thermometer_snowflake': CupertinoIcons.thermometer_snowflake, + 'thermometer_sun': CupertinoIcons.thermometer_sun, + 'ticket': CupertinoIcons.ticket, + 'ticket_fill': CupertinoIcons.ticket_fill, + 'tickets': CupertinoIcons.tickets, + 'tickets_fill': CupertinoIcons.tickets_fill, + 'timelapse': CupertinoIcons.timelapse, + 'timer': CupertinoIcons.timer, + 'timer_fill': CupertinoIcons.timer_fill, + 'today': CupertinoIcons.today, + 'today_fill': CupertinoIcons.today_fill, + 'tornado': CupertinoIcons.tornado, + 'tortoise': CupertinoIcons.tortoise, + 'tortoise_fill': CupertinoIcons.tortoise_fill, + 'tram_fill': CupertinoIcons.tram_fill, + 'trash': CupertinoIcons.trash, + 'trash_circle': CupertinoIcons.trash_circle, + 'trash_circle_fill': CupertinoIcons.trash_circle_fill, + 'trash_fill': CupertinoIcons.trash_fill, + 'trash_slash': CupertinoIcons.trash_slash, + 'trash_slash_fill': CupertinoIcons.trash_slash_fill, + 'tray': CupertinoIcons.tray, + 'tray_2': CupertinoIcons.tray_2, + 'tray_2_fill': CupertinoIcons.tray_2_fill, + 'tray_arrow_down': CupertinoIcons.tray_arrow_down, + 'tray_arrow_down_fill': CupertinoIcons.tray_arrow_down_fill, + 'tray_arrow_up': CupertinoIcons.tray_arrow_up, + 'tray_arrow_up_fill': CupertinoIcons.tray_arrow_up_fill, + 'tray_fill': CupertinoIcons.tray_fill, + 'tray_full': CupertinoIcons.tray_full, + 'tray_full_fill': CupertinoIcons.tray_full_fill, + 'tree': CupertinoIcons.tree, + 'triangle': CupertinoIcons.triangle, + 'triangle_fill': CupertinoIcons.triangle_fill, + 'triangle_lefthalf_fill': CupertinoIcons.triangle_lefthalf_fill, + 'triangle_righthalf_fill': CupertinoIcons.triangle_righthalf_fill, + 'tropicalstorm': CupertinoIcons.tropicalstorm, + 'tuningfork': CupertinoIcons.tuningfork, + 'tv': CupertinoIcons.tv, + 'tv_circle': CupertinoIcons.tv_circle, + 'tv_circle_fill': CupertinoIcons.tv_circle_fill, + 'tv_fill': CupertinoIcons.tv_fill, + 'tv_music_note': CupertinoIcons.tv_music_note, + 'tv_music_note_fill': CupertinoIcons.tv_music_note_fill, + 'uiwindow_split_2x1': CupertinoIcons.uiwindow_split_2x1, + 'umbrella': CupertinoIcons.umbrella, + 'umbrella_fill': CupertinoIcons.umbrella_fill, + 'underline': CupertinoIcons.underline, + 'upload_circle': CupertinoIcons.upload_circle, + 'upload_circle_fill': CupertinoIcons.upload_circle_fill, + 'videocam': CupertinoIcons.videocam, + 'videocam_circle': CupertinoIcons.videocam_circle, + 'videocam_circle_fill': CupertinoIcons.videocam_circle_fill, + 'videocam_fill': CupertinoIcons.videocam_fill, + 'view_2d': CupertinoIcons.view_2d, + 'view_3d': CupertinoIcons.view_3d, + 'viewfinder': CupertinoIcons.viewfinder, + 'viewfinder_circle': CupertinoIcons.viewfinder_circle, + 'viewfinder_circle_fill': CupertinoIcons.viewfinder_circle_fill, + 'wand_rays': CupertinoIcons.wand_rays, + 'wand_rays_inverse': CupertinoIcons.wand_rays_inverse, + 'wand_stars': CupertinoIcons.wand_stars, + 'wand_stars_inverse': CupertinoIcons.wand_stars_inverse, + 'waveform': CupertinoIcons.waveform, + 'waveform_circle': CupertinoIcons.waveform_circle, + 'waveform_circle_fill': CupertinoIcons.waveform_circle_fill, + 'waveform_path': CupertinoIcons.waveform_path, + 'waveform_path_badge_minus': CupertinoIcons.waveform_path_badge_minus, + 'waveform_path_badge_plus': CupertinoIcons.waveform_path_badge_plus, + 'waveform_path_ecg': CupertinoIcons.waveform_path_ecg, + 'wifi': CupertinoIcons.wifi, + 'wifi_exclamationmark': CupertinoIcons.wifi_exclamationmark, + 'wifi_slash': CupertinoIcons.wifi_slash, + 'wind': CupertinoIcons.wind, + 'wind_snow': CupertinoIcons.wind_snow, + 'wrench': CupertinoIcons.wrench, + 'wrench_fill': CupertinoIcons.wrench_fill, + 'xmark': CupertinoIcons.xmark, + 'xmark_circle': CupertinoIcons.xmark_circle, + 'xmark_circle_fill': CupertinoIcons.xmark_circle_fill, + 'xmark_octagon': CupertinoIcons.xmark_octagon, + 'xmark_octagon_fill': CupertinoIcons.xmark_octagon_fill, + 'xmark_rectangle': CupertinoIcons.xmark_rectangle, + 'xmark_rectangle_fill': CupertinoIcons.xmark_rectangle_fill, + 'xmark_seal': CupertinoIcons.xmark_seal, + 'xmark_seal_fill': CupertinoIcons.xmark_seal_fill, + 'xmark_shield': CupertinoIcons.xmark_shield, + 'xmark_shield_fill': CupertinoIcons.xmark_shield_fill, + 'xmark_square': CupertinoIcons.xmark_square, + 'xmark_square_fill': CupertinoIcons.xmark_square_fill, + 'zoom_in': CupertinoIcons.zoom_in, + 'zoom_out': CupertinoIcons.zoom_out, + 'zzz': CupertinoIcons.zzz, + }, + 'CupertinoNavigationBar': (props) => CupertinoNavigationBar( + key: props['key'], + leading: props['leading'], + automaticallyImplyLeading: props['automaticallyImplyLeading'] ?? true, + automaticallyImplyMiddle: props['automaticallyImplyMiddle'] ?? true, + previousPageTitle: props['previousPageTitle'], + middle: props['middle'], + trailing: props['trailing'], + border: props['border'] ?? _kDefaultNavBarBorder, + backgroundColor: props['backgroundColor'], + brightness: props['brightness'], + padding: props['padding'], + transitionBetweenRoutes: props['transitionBetweenRoutes'] ?? true, + heroTag: props['heroTag'] ?? _defaultHeroTag, + ), + 'CupertinoSliverNavigationBar': (props) => CupertinoSliverNavigationBar( + key: props['key'], + largeTitle: props['largeTitle'], + leading: props['leading'], + automaticallyImplyLeading: props['automaticallyImplyLeading'] ?? true, + automaticallyImplyTitle: props['automaticallyImplyTitle'] ?? true, + previousPageTitle: props['previousPageTitle'], + middle: props['middle'], + trailing: props['trailing'], + border: props['border'] ?? _kDefaultNavBarBorder, + backgroundColor: props['backgroundColor'], + brightness: props['brightness'], + padding: props['padding'], + transitionBetweenRoutes: props['transitionBetweenRoutes'] ?? true, + heroTag: props['heroTag'] ?? _defaultHeroTag, + stretch: props['stretch'] ?? false, + ), + 'CupertinoNavigationBarBackButton': (props) => CupertinoNavigationBarBackButton( + key: props['key'], + color: props['color'], + previousPageTitle: props['previousPageTitle'], + onPressed: props['onPressed'], + ), + 'CupertinoTheme': (props) => CupertinoTheme( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'CupertinoTheme.of': (props) => CupertinoTheme.of( + props['pa'][0], + ), + 'CupertinoTheme.brightnessOf': (props) => CupertinoTheme.brightnessOf( + props['pa'][0], + ), + 'CupertinoTheme.maybeBrightnessOf': (props) => CupertinoTheme.maybeBrightnessOf( + props['pa'][0], + ), + 'DefaultCupertinoLocalizations': { + 'delegate': DefaultCupertinoLocalizations.delegate, + }, + 'DefaultCupertinoLocalizations.load': (props) => DefaultCupertinoLocalizations.load( + props['pa'][0], + ), + 'DatePickerDateTimeOrder': { + 'values': DatePickerDateTimeOrder.values, + 'date_time_dayPeriod': DatePickerDateTimeOrder.date_time_dayPeriod, + 'date_dayPeriod_time': DatePickerDateTimeOrder.date_dayPeriod_time, + 'time_dayPeriod_date': DatePickerDateTimeOrder.time_dayPeriod_date, + 'dayPeriod_time_date': DatePickerDateTimeOrder.dayPeriod_time_date, + }, + 'DatePickerDateOrder': { + 'values': DatePickerDateOrder.values, + 'dmy': DatePickerDateOrder.dmy, + 'mdy': DatePickerDateOrder.mdy, + 'ymd': DatePickerDateOrder.ymd, + 'ydm': DatePickerDateOrder.ydm, + }, + 'CupertinoSlider': (props) => CupertinoSlider( + key: props['key'], + value: props['value']?.toDouble(), + onChanged: props['onChanged'], + onChangeStart: props['onChangeStart'], + onChangeEnd: props['onChangeEnd'], + min: props['min']?.toDouble() ?? 0.0, + max: props['max']?.toDouble() ?? 1.0, + divisions: props['divisions'], + activeColor: props['activeColor'], + thumbColor: props['thumbColor'] ?? CupertinoColors.white, + ), +}; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$m.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$m.dart new file mode 100644 index 00000000..4a519634 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$m.dart @@ -0,0 +1,10278 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/material.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/rendering.dart'; +import 'dart:ui' as ui show BoxHeightStyle, BoxWidthStyle; +import 'utils.dart'; + +const Duration _snackBarDisplayDuration = Duration(milliseconds: 4000); +const double kMinInteractiveDimensionCupertino = 44.0; + +class _DefaultHeroTag { + const _DefaultHeroTag(); + @override + String toString() => ''; +} + +const double _kMenuDividerHeight = 16.0; +const Color _kColor = Color(0xA0B71C1C); +const double _kHeight = 12.0; // height of banner +const TextStyle _kTextStyle = TextStyle( + color: Color(0xFFFFFFFF), + fontSize: _kHeight * 0.85, + fontWeight: FontWeight.w900, + height: 1.0, +); + +const int defaultRowsPerPage = 10; +var p = () => { + 'CalendarDatePicker': (props) => CalendarDatePicker( + key: props['key'], + initialDate: props['initialDate'], + firstDate: props['firstDate'], + lastDate: props['lastDate'], + currentDate: props['currentDate'], + onDateChanged: props['onDateChanged'], + onDisplayedMonthChanged: props['onDisplayedMonthChanged'], + initialCalendarMode: + props['initialCalendarMode'] ?? DatePickerMode.day, + selectableDayPredicate: props['selectableDayPredicate'], + ), + 'CalendarDatePicker#selectableDayPredicate': (props) => ( + DateTime day, + ) { + return (props['block']) as bool; + }, + 'YearPicker': (props) => YearPicker( + key: props['key'], + currentDate: props['currentDate'], + firstDate: props['firstDate'], + lastDate: props['lastDate'], + initialDate: props['initialDate'], + selectedDate: props['selectedDate'], + onChanged: props['onChanged'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + ), + 'TextButtonThemeData.lerp': (props) => TextButtonThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TextButtonTheme.of': (props) => TextButtonTheme.of( + props['pa'][0], + ), + 'DrawerHeader': (props) => DrawerHeader( + key: props['key'], + decoration: props['decoration'], + margin: props['margin'] ?? const EdgeInsets.only(bottom: 8.0), + padding: props['padding'] ?? + const EdgeInsets.fromLTRB(16.0, 16.0, 16.0, 8.0), + duration: props['duration'] ?? const Duration(milliseconds: 250), + curve: props['curve'] ?? Curves.fastOutSlowIn, + child: props['child'], + ), + 'ProgressIndicatorThemeData.lerp': (props) => + ProgressIndicatorThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ProgressIndicatorTheme.of': (props) => ProgressIndicatorTheme.of( + props['pa'][0], + ), + 'MaterialButton': (props) => MaterialButton( + key: props['key'], + onPressed: props['onPressed'], + onLongPress: props['onLongPress'], + onHighlightChanged: props['onHighlightChanged'], + mouseCursor: props['mouseCursor'], + textTheme: props['textTheme'], + textColor: props['textColor'], + disabledTextColor: props['disabledTextColor'], + color: props['color'], + disabledColor: props['disabledColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + highlightColor: props['highlightColor'], + splashColor: props['splashColor'], + colorBrightness: props['colorBrightness'], + elevation: props['elevation']?.toDouble(), + focusElevation: props['focusElevation']?.toDouble(), + hoverElevation: props['hoverElevation']?.toDouble(), + highlightElevation: props['highlightElevation']?.toDouble(), + disabledElevation: props['disabledElevation']?.toDouble(), + padding: props['padding'], + visualDensity: props['visualDensity'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + materialTapTargetSize: props['materialTapTargetSize'], + animationDuration: props['animationDuration'], + minWidth: props['minWidth']?.toDouble(), + height: props['height']?.toDouble(), + enableFeedback: props['enableFeedback'] ?? true, + child: props['child'], + ), + 'GridTile': (props) => GridTile( + key: props['key'], + header: props['header'], + footer: props['footer'], + child: props['child'], + ), + 'Material': (props) => Material( + key: props['key'], + type: props['type'] ?? MaterialType.canvas, + elevation: props['elevation']?.toDouble() ?? 0.0, + color: props['color'], + shadowColor: props['shadowColor'], + textStyle: props['textStyle'], + borderRadius: props['borderRadius'], + shape: props['shape'], + borderOnForeground: props['borderOnForeground'] ?? true, + clipBehavior: props['clipBehavior'] ?? Clip.none, + animationDuration: + props['animationDuration'] ?? kThemeChangeDuration, + child: props['child'], + ), + 'Material.defaultSplashRadius': Material.defaultSplashRadius, + 'Material.of': (props) => Material.of( + props['pa'][0], + ), + 'MaterialType': { + 'values': MaterialType.values, + 'canvas': MaterialType.canvas, + 'card': MaterialType.card, + 'circle': MaterialType.circle, + 'button': MaterialType.button, + 'transparency': MaterialType.transparency, + }, + 'TextTheme.lerp': (props) => TextTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'InkRipple': { + 'splashFactory': InkRipple.splashFactory, + }, + 'ElevatedButton': (props) => ElevatedButton( + key: props['key'], + onPressed: props['onPressed'], + onLongPress: props['onLongPress'], + onHover: props['onHover'], + onFocusChange: props['onFocusChange'], + style: props['style'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + clipBehavior: props['clipBehavior'] ?? Clip.none, + statesController: props['statesController'], + child: props['child'], + ), + 'ElevatedButtonThemeData.lerp': (props) => ElevatedButtonThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ElevatedButtonTheme.of': (props) => ElevatedButtonTheme.of( + props['pa'][0], + ), + 'MaterialBannerThemeData.lerp': (props) => MaterialBannerThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'MaterialBannerTheme.of': (props) => MaterialBannerTheme.of( + props['pa'][0], + ), + 'ScaffoldMessenger': (props) => ScaffoldMessenger( + key: props['key'], + child: props['child'], + ), + 'ScaffoldMessenger.of': (props) => ScaffoldMessenger.of( + props['pa'][0], + ), + 'ScaffoldMessenger.maybeOf': (props) => ScaffoldMessenger.maybeOf( + props['pa'][0], + ), + 'Scaffold': (props) => Scaffold( + key: props['key'], + appBar: props['appBar'], + body: props['body'], + floatingActionButton: props['floatingActionButton'], + floatingActionButtonLocation: props['floatingActionButtonLocation'], + floatingActionButtonAnimator: props['floatingActionButtonAnimator'], + persistentFooterButtons: as(props['persistentFooterButtons']), + persistentFooterAlignment: props['persistentFooterAlignment'] ?? AlignmentDirectional.centerEnd, + drawer: props['drawer'], + onDrawerChanged: props['onDrawerChanged'], + endDrawer: props['endDrawer'], + onEndDrawerChanged: props['onEndDrawerChanged'], + bottomNavigationBar: props['bottomNavigationBar'], + bottomSheet: props['bottomSheet'], + backgroundColor: props['backgroundColor'], + resizeToAvoidBottomInset: props['resizeToAvoidBottomInset'], + primary: props['primary'] ?? true, + drawerDragStartBehavior: + props['drawerDragStartBehavior'] ?? DragStartBehavior.start, + extendBody: props['extendBody'] ?? false, + extendBodyBehindAppBar: props['extendBodyBehindAppBar'] ?? false, + drawerScrimColor: props['drawerScrimColor'], + drawerEdgeDragWidth: props['drawerEdgeDragWidth']?.toDouble(), + drawerEnableOpenDragGesture: + props['drawerEnableOpenDragGesture'] ?? true, + endDrawerEnableOpenDragGesture: + props['endDrawerEnableOpenDragGesture'] ?? true, + restorationId: props['restorationId'], + ), + 'Scaffold#onDrawerChanged': (props) => ( + bool isOpened, + ) { + return (props['block']); + }, + 'Scaffold#onEndDrawerChanged': (props) => ( + bool isOpened, + ) { + return (props['block']); + }, + 'Scaffold.of': (props) => Scaffold.of( + props['pa'][0], + ), + 'Scaffold.maybeOf': (props) => Scaffold.maybeOf( + props['pa'][0], + ), + 'Scaffold.geometryOf': (props) => Scaffold.geometryOf( + props['pa'][0], + ), + 'Scaffold.hasDrawer': (props) => Scaffold.hasDrawer( + props['pa'][0], + registerForUpdates: props['registerForUpdates'] ?? true, + ), + 'Feedback.forTap': (props) => Feedback.forTap( + props['pa'][0], + ), + 'Feedback.wrapForTap': (props) => Feedback.wrapForTap( + props['pa'][0], + props['pa'][1], + ), + 'Feedback.forLongPress': (props) => Feedback.forLongPress( + props['pa'][0], + ), + 'Feedback.wrapForLongPress': (props) => Feedback.wrapForLongPress( + props['pa'][0], + props['pa'][1], + ), + 'SwitchThemeData.lerp': (props) => SwitchThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'SwitchTheme.of': (props) => SwitchTheme.of( + props['pa'][0], + ), + 'ToggleButtonsThemeData.lerp': (props) => ToggleButtonsThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ToggleButtonsTheme.of': (props) => ToggleButtonsTheme.of( + props['pa'][0], + ), + 'BackButtonIcon': (props) => BackButtonIcon( + key: props['key'], + ), + 'BackButton': (props) => BackButton( + key: props['key'], + color: props['color'], + onPressed: props['onPressed'], + ), + 'CloseButton': (props) => CloseButton( + key: props['key'], + color: props['color'], + onPressed: props['onPressed'], + ), + 'TextSelectionToolbarTextButton': (props) => + TextSelectionToolbarTextButton( + key: props['key'], + child: props['child'], + padding: props['padding'], + onPressed: props['onPressed'], + ), + 'TextSelectionToolbarTextButton.getPadding': (props) => + TextSelectionToolbarTextButton.getPadding( + props['pa'][0], + props['pa'][1], + ), + 'TextField': (props) => TextField( + key: props['key'], + controller: props['controller'], + focusNode: props['focusNode'], + decoration: props['decoration'] ?? const InputDecoration(), + keyboardType: props['keyboardType'], + textInputAction: props['textInputAction'], + textCapitalization: + props['textCapitalization'] ?? TextCapitalization.none, + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'] ?? TextAlign.start, + textAlignVertical: props['textAlignVertical'], + textDirection: props['textDirection'], + readOnly: props['readOnly'] ?? false, + toolbarOptions: props['toolbarOptions'], + showCursor: props['showCursor'], + autofocus: props['autofocus'] ?? false, + obscuringCharacter: props['obscuringCharacter'] ?? '•', + obscureText: props['obscureText'] ?? false, + autocorrect: props['autocorrect'] ?? true, + smartDashesType: props['smartDashesType'], + smartQuotesType: props['smartQuotesType'], + enableSuggestions: props['enableSuggestions'] ?? true, + maxLines: props['maxLines'] ?? 1, + minLines: props['minLines'], + expands: props['expands'] ?? false, + maxLength: props['maxLength'], + maxLengthEnforcement: props['maxLengthEnforcement'], + onChanged: props['onChanged'], + onEditingComplete: props['onEditingComplete'], + onSubmitted: props['onSubmitted'], + onAppPrivateCommand: props['onAppPrivateCommand'], + inputFormatters: as(props['inputFormatters']), + enabled: props['enabled'], + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'], + cursorColor: props['cursorColor'], + selectionHeightStyle: + props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: + props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + keyboardAppearance: props['keyboardAppearance'], + scrollPadding: props['scrollPadding'] ?? const EdgeInsets.all(20.0), + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: + props['enableInteractiveSelection'] ?? true, + selectionControls: props['selectionControls'], + onTap: props['onTap'], + mouseCursor: props['mouseCursor'], + buildCounter: props['buildCounter'], + scrollController: props['scrollController'], + scrollPhysics: props['scrollPhysics'], + autofillHints: props['autofillHints'], + restorationId: props['restorationId'], + enableIMEPersonalizedLearning: + props['enableIMEPersonalizedLearning'] ?? true, + ), + 'TextField#buildCounter': (props) => ( + dynamic context, + int currentLength, + bool isFocused, + int maxLength, + ) { + return (props['block']) as dynamic; + }, + 'TextField.noMaxLength': TextField.noMaxLength, + 'NavigationRailThemeData.lerp': (props) => NavigationRailThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'NavigationRailTheme.of': (props) => NavigationRailTheme.of( + props['pa'][0], + ), + 'AboutListTile': (props) => AboutListTile( + key: props['key'], + icon: props['icon'], + child: props['child'], + applicationName: props['applicationName'], + applicationVersion: props['applicationVersion'], + applicationIcon: props['applicationIcon'], + applicationLegalese: props['applicationLegalese'], + aboutBoxChildren: as(props['aboutBoxChildren']), + dense: props['dense'], + ), + 'AboutDialog': (props) => AboutDialog( + key: props['key'], + applicationName: props['applicationName'], + applicationVersion: props['applicationVersion'], + applicationIcon: props['applicationIcon'], + applicationLegalese: props['applicationLegalese'], + children: as(props['children']), + ), + 'LicensePage': (props) => LicensePage( + key: props['key'], + applicationName: props['applicationName'], + applicationVersion: props['applicationVersion'], + applicationIcon: props['applicationIcon'], + applicationLegalese: props['applicationLegalese'], + ), + 'TimePickerThemeData.lerp': (props) => TimePickerThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TimePickerTheme.of': (props) => TimePickerTheme.of( + props['pa'][0], + ), + 'TextSelectionToolbar': (props) => TextSelectionToolbar( + key: props['key'], + anchorAbove: props['anchorAbove'], + anchorBelow: props['anchorBelow'], + toolbarBuilder: props['toolbarBuilder'], // ?? _defaultToolbarBuilder, + children: as(props['children'])!, + ), + 'TextSelectionThemeData.lerp': (props) => TextSelectionThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TextSelectionTheme.of': (props) => TextSelectionTheme.of( + props['pa'][0], + ), + 'RadioListTile': (props) => RadioListTile( + key: props['key'], + value: props['value'], + groupValue: props['groupValue'], + onChanged: props['onChanged'], + toggleable: props['toggleable'] ?? false, + activeColor: props['activeColor'], + title: props['title'], + subtitle: props['subtitle'], + isThreeLine: props['isThreeLine'] ?? false, + dense: props['dense'], + secondary: props['secondary'], + selected: props['selected'] ?? false, + controlAffinity: + props['controlAffinity'] ?? ListTileControlAffinity.platform, + autofocus: props['autofocus'] ?? false, + contentPadding: props['contentPadding'], + shape: props['shape'], + tileColor: props['tileColor'], + selectedTileColor: props['selectedTileColor'], + ), + 'RefreshIndicator': (props) => RefreshIndicator( + key: props['key'], + child: props['child'], + displacement: props['displacement']?.toDouble() ?? 40.0, + edgeOffset: props['edgeOffset']?.toDouble() ?? 0.0, + onRefresh: props['onRefresh'], + color: props['color'], + backgroundColor: props['backgroundColor'], + notificationPredicate: props['notificationPredicate'] ?? + defaultScrollNotificationPredicate, + semanticsLabel: props['semanticsLabel'], + semanticsValue: props['semanticsValue'], + strokeWidth: props['strokeWidth']?.toDouble() ?? 2.0, + triggerMode: + props['triggerMode'] ?? RefreshIndicatorTriggerMode.onEdge, + ), + 'RefreshIndicator#onRefresh': (props) => () { + return (props['block']) as Future; + }, + 'RefreshIndicatorTriggerMode': { + 'values': RefreshIndicatorTriggerMode.values, + 'anywhere': RefreshIndicatorTriggerMode.anywhere, + 'onEdge': RefreshIndicatorTriggerMode.onEdge, + }, + 'InputDatePickerFormField': (props) => InputDatePickerFormField( + key: props['key'], + initialDate: props['initialDate'], + firstDate: props['firstDate'], + lastDate: props['lastDate'], + onDateSubmitted: props['onDateSubmitted'], + onDateSaved: props['onDateSaved'], + selectableDayPredicate: props['selectableDayPredicate'], + errorFormatText: props['errorFormatText'], + errorInvalidText: props['errorInvalidText'], + fieldHintText: props['fieldHintText'], + fieldLabelText: props['fieldLabelText'], + autofocus: props['autofocus'] ?? false, + ), + 'InputDatePickerFormField#selectableDayPredicate': (props) => ( + DateTime day, + ) { + return (props['block']) as bool; + }, + 'BottomAppBarTheme.of': (props) => BottomAppBarTheme.of( + props['pa'][0], + ), + 'BottomAppBarTheme.lerp': (props) => BottomAppBarTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TabBarTheme.of': (props) => TabBarTheme.of( + props['pa'][0], + ), + 'TabBarTheme.lerp': (props) => TabBarTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'OutlinedButtonThemeData.lerp': (props) => OutlinedButtonThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'OutlinedButtonTheme.of': (props) => OutlinedButtonTheme.of( + props['pa'][0], + ), + 'GridTileBar': (props) => GridTileBar( + key: props['key'], + backgroundColor: props['backgroundColor'], + leading: props['leading'], + title: props['title'], + subtitle: props['subtitle'], + trailing: props['trailing'], + ), + 'ElevationOverlay.applyOverlay': (props) => ElevationOverlay.applyOverlay( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ElevationOverlay.overlayColor': (props) => ElevationOverlay.overlayColor( + props['pa'][0], + props['pa'][1]?.toDouble(), + ), + 'ElevationOverlay.colorWithOverlay': (props) => + ElevationOverlay.colorWithOverlay( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'SelectableText': (props) => SelectableText( + props['pa'][0], + key: props['key'], + focusNode: props['focusNode'], + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'], + textDirection: props['textDirection'], + textScaleFactor: props['textScaleFactor']?.toDouble(), + showCursor: props['showCursor'] ?? false, + autofocus: props['autofocus'] ?? false, + toolbarOptions: props['toolbarOptions'], + minLines: props['minLines'], + maxLines: props['maxLines'], + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'], + cursorColor: props['cursorColor'], + selectionHeightStyle: + props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: + props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: + props['enableInteractiveSelection'] ?? true, + selectionControls: props['selectionControls'], + onTap: props['onTap'], + scrollPhysics: props['scrollPhysics'], + textHeightBehavior: props['textHeightBehavior'], + textWidthBasis: props['textWidthBasis'], + onSelectionChanged: props['onSelectionChanged'], + ), + 'SelectableText.rich': (props) => SelectableText.rich( + props['pa'][0], + key: props['key'], + focusNode: props['focusNode'], + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'], + textDirection: props['textDirection'], + textScaleFactor: props['textScaleFactor']?.toDouble(), + showCursor: props['showCursor'] ?? false, + autofocus: props['autofocus'] ?? false, + toolbarOptions: props['toolbarOptions'], + minLines: props['minLines'], + maxLines: props['maxLines'], + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'], + cursorColor: props['cursorColor'], + selectionHeightStyle: + props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: + props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: + props['enableInteractiveSelection'] ?? true, + selectionControls: props['selectionControls'], + onTap: props['onTap'], + scrollPhysics: props['scrollPhysics'], + textHeightBehavior: props['textHeightBehavior'], + textWidthBasis: props['textWidthBasis'], + onSelectionChanged: props['onSelectionChanged'], + ), + 'CircleAvatar': (props) => CircleAvatar( + key: props['key'], + child: props['child'], + backgroundColor: props['backgroundColor'], + backgroundImage: props['backgroundImage'], + foregroundImage: props['foregroundImage'], + onBackgroundImageError: props['onBackgroundImageError'], + onForegroundImageError: props['onForegroundImageError'], + foregroundColor: props['foregroundColor'], + radius: props['radius']?.toDouble(), + minRadius: props['minRadius']?.toDouble(), + maxRadius: props['maxRadius']?.toDouble(), + ), + 'Ink': (props) => Ink( + key: props['key'], + padding: props['padding'], + color: props['color'], + decoration: props['decoration'], + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'Ink.image': (props) => Ink.image( + key: props['key'], + padding: props['padding'], + image: props['image'], + onImageError: props['onImageError'], + colorFilter: props['colorFilter'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + centerSlice: props['centerSlice'], + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + matchTextDirection: props['matchTextDirection'] ?? false, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'ButtonBar': (props) => ButtonBar( + key: props['key'], + alignment: props['alignment'], + mainAxisSize: props['mainAxisSize'], + buttonTextTheme: props['buttonTextTheme'], + buttonMinWidth: props['buttonMinWidth']?.toDouble(), + buttonHeight: props['buttonHeight']?.toDouble(), + buttonPadding: props['buttonPadding'], + buttonAlignedDropdown: props['buttonAlignedDropdown'], + layoutBehavior: props['layoutBehavior'], + overflowDirection: props['overflowDirection'], + overflowButtonSpacing: props['overflowButtonSpacing']?.toDouble(), + children: as(props['children'])?? const [], + ), + 'AppBarTheme.of': (props) => AppBarTheme.of( + props['pa'][0], + ), + 'AppBarTheme.lerp': (props) => AppBarTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Colors': { + 'transparent': Colors.transparent, + 'black': Colors.black, + 'black87': Colors.black87, + 'black54': Colors.black54, + 'black45': Colors.black45, + 'black38': Colors.black38, + 'black26': Colors.black26, + 'black12': Colors.black12, + 'white': Colors.white, + 'white70': Colors.white70, + 'white60': Colors.white60, + 'white54': Colors.white54, + 'white38': Colors.white38, + 'white30': Colors.white30, + 'white24': Colors.white24, + 'white12': Colors.white12, + 'white10': Colors.white10, + 'red': Colors.red, + 'redAccent': Colors.redAccent, + 'pink': Colors.pink, + 'pinkAccent': Colors.pinkAccent, + 'purple': Colors.purple, + 'purpleAccent': Colors.purpleAccent, + 'deepPurple': Colors.deepPurple, + 'deepPurpleAccent': Colors.deepPurpleAccent, + 'indigo': Colors.indigo, + 'indigoAccent': Colors.indigoAccent, + 'blue': Colors.blue, + 'blueAccent': Colors.blueAccent, + 'lightBlue': Colors.lightBlue, + 'lightBlueAccent': Colors.lightBlueAccent, + 'cyan': Colors.cyan, + 'cyanAccent': Colors.cyanAccent, + 'teal': Colors.teal, + 'tealAccent': Colors.tealAccent, + 'green': Colors.green, + 'greenAccent': Colors.greenAccent, + 'lightGreen': Colors.lightGreen, + 'lightGreenAccent': Colors.lightGreenAccent, + 'lime': Colors.lime, + 'limeAccent': Colors.limeAccent, + 'yellow': Colors.yellow, + 'yellowAccent': Colors.yellowAccent, + 'amber': Colors.amber, + 'amberAccent': Colors.amberAccent, + 'orange': Colors.orange, + 'orangeAccent': Colors.orangeAccent, + 'deepOrange': Colors.deepOrange, + 'deepOrangeAccent': Colors.deepOrangeAccent, + 'brown': Colors.brown, + 'grey': Colors.grey, + 'blueGrey': Colors.blueGrey, + 'primaries': Colors.primaries, + 'accents': Colors.accents, + }, + 'SnackBarAction': (props) => SnackBarAction( + key: props['key'], + textColor: props['textColor'], + disabledTextColor: props['disabledTextColor'], + label: props['label'], + onPressed: props['onPressed'], + ), + 'SnackBar': (props) => SnackBar( + key: props['key'], + content: props['content'], + backgroundColor: props['backgroundColor'], + elevation: props['elevation']?.toDouble(), + margin: props['margin'], + padding: props['padding'], + width: props['width']?.toDouble(), + shape: props['shape'], + behavior: props['behavior'], + action: props['action'], + duration: props['duration'] ?? _snackBarDisplayDuration, + animation: props['animation'], + onVisible: props['onVisible'], + dismissDirection: + props['dismissDirection'] ?? DismissDirection.down, + ), + 'SnackBar.createAnimationController': (props) => + SnackBar.createAnimationController( + vsync: props['vsync'], + ), + 'SnackBarClosedReason': { + 'values': SnackBarClosedReason.values, + 'action': SnackBarClosedReason.action, + 'dismiss': SnackBarClosedReason.dismiss, + 'swipe': SnackBarClosedReason.swipe, + 'hide': SnackBarClosedReason.hide, + 'remove': SnackBarClosedReason.remove, + 'timeout': SnackBarClosedReason.timeout, + }, + 'InputDecorator': (props) => InputDecorator( + key: props['key'], + decoration: props['decoration'], + baseStyle: props['baseStyle'], + textAlign: props['textAlign'], + textAlignVertical: props['textAlignVertical'], + isFocused: props['isFocused'] ?? false, + isHovering: props['isHovering'] ?? false, + expands: props['expands'] ?? false, + isEmpty: props['isEmpty'] ?? false, + child: props['child'], + ), + 'InputDecorator.containerOf': (props) => InputDecorator.containerOf( + props['pa'][0], + ), + 'FloatingLabelBehavior': { + 'values': FloatingLabelBehavior.values, + 'never': FloatingLabelBehavior.never, + 'auto': FloatingLabelBehavior.auto, + 'always': FloatingLabelBehavior.always, + }, + 'ReorderableListView': (props) => ReorderableListView( + key: props['key'], + onReorder: props['onReorder'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + proxyDecorator: props['proxyDecorator'], + buildDefaultDragHandles: props['buildDefaultDragHandles'] ?? true, + padding: props['padding'], + header: props['header'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + scrollController: props['scrollController'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + anchor: props['anchor']?.toDouble() ?? 0.0, + cacheExtent: props['cacheExtent']?.toDouble(), + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + children: as(props['children'])!, + ), + 'ReorderableListView.builder': (props) => ReorderableListView.builder( + key: props['key'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + onReorder: props['onReorder'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + proxyDecorator: props['proxyDecorator'], + buildDefaultDragHandles: props['buildDefaultDragHandles'] ?? true, + padding: props['padding'], + header: props['header'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + scrollController: props['scrollController'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + anchor: props['anchor']?.toDouble() ?? 0.0, + cacheExtent: props['cacheExtent']?.toDouble(), + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ColorScheme.lerp': (props) => ColorScheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TimeOfDay': { + 'hoursPerDay': TimeOfDay.hoursPerDay, + 'hoursPerPeriod': TimeOfDay.hoursPerPeriod, + 'minutesPerHour': TimeOfDay.minutesPerHour, + }, + 'DayPeriod': { + 'values': DayPeriod.values, + 'am': DayPeriod.am, + 'pm': DayPeriod.pm, + }, + 'TimeOfDayFormat': { + 'values': TimeOfDayFormat.values, + 'HH_colon_mm': TimeOfDayFormat.HH_colon_mm, + 'HH_dot_mm': TimeOfDayFormat.HH_dot_mm, + 'frenchCanadian': TimeOfDayFormat.frenchCanadian, + 'H_colon_mm': TimeOfDayFormat.H_colon_mm, + 'h_colon_mm_space_a': TimeOfDayFormat.h_colon_mm_space_a, + 'a_space_h_colon_mm': TimeOfDayFormat.a_space_h_colon_mm, + }, + 'HourFormat': { + 'values': HourFormat.values, + 'HH': HourFormat.HH, + 'H': HourFormat.H, + 'h': HourFormat.h, + }, + 'Clip.none': Clip.none, + 'Clip.hardEdge': Clip.hardEdge, + 'Clip.antiAlias': Clip.antiAlias, + 'Clip.antiAliasWithSaveLayer': Clip.antiAliasWithSaveLayer, + 'Card': (props) => Card( + key: props['key'], + color: props['color'], + shadowColor: props['shadowColor'], + elevation: props['elevation']?.toDouble(), + shape: props['shape'], + borderOnForeground: props['borderOnForeground'] ?? true, + margin: props['margin'], + clipBehavior: props['clipBehavior'], + child: props['child'], + semanticContainer: props['semanticContainer'] ?? true, + ), + 'RawMaterialButton': (props) => RawMaterialButton( + key: props['key'], + onPressed: props['onPressed'], + onLongPress: props['onLongPress'], + onHighlightChanged: props['onHighlightChanged'], + mouseCursor: props['mouseCursor'], + textStyle: props['textStyle'], + fillColor: props['fillColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + highlightColor: props['highlightColor'], + splashColor: props['splashColor'], + elevation: props['elevation']?.toDouble() ?? 2.0, + focusElevation: props['focusElevation']?.toDouble() ?? 4.0, + hoverElevation: props['hoverElevation']?.toDouble() ?? 4.0, + highlightElevation: props['highlightElevation']?.toDouble() ?? 8.0, + disabledElevation: props['disabledElevation']?.toDouble() ?? 0.0, + padding: props['padding'] ?? EdgeInsets.zero, + visualDensity: props['visualDensity'] ?? VisualDensity.standard, + constraints: props['constraints'] ?? + const BoxConstraints(minWidth: 88.0, minHeight: 36.0), + shape: props['shape'] ?? const RoundedRectangleBorder(), + animationDuration: + props['animationDuration'] ?? kThemeChangeDuration, + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + materialTapTargetSize: props['materialTapTargetSize'], + child: props['child'], + enableFeedback: props['enableFeedback'] ?? true, + ), + 'PopupMenuThemeData.lerp': (props) => PopupMenuThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'PopupMenuTheme.of': (props) => PopupMenuTheme.of( + props['pa'][0], + ), + 'DataCell': { + 'empty': DataCell.empty, + }, + 'DataTable': (props) => DataTable( + key: props['key'], + columns: as(props['columns'])!, + sortColumnIndex: props['sortColumnIndex'], + sortAscending: props['sortAscending'] ?? true, + onSelectAll: props['onSelectAll'], + decoration: props['decoration'], + dataRowColor: props['dataRowColor'], + dataRowHeight: props['dataRowHeight']?.toDouble(), + dataTextStyle: props['dataTextStyle'], + headingRowColor: props['headingRowColor'], + headingRowHeight: props['headingRowHeight']?.toDouble(), + headingTextStyle: props['headingTextStyle'], + horizontalMargin: props['horizontalMargin']?.toDouble(), + columnSpacing: props['columnSpacing']?.toDouble(), + showCheckboxColumn: props['showCheckboxColumn'] ?? true, + showBottomBorder: props['showBottomBorder'] ?? false, + dividerThickness: props['dividerThickness']?.toDouble(), + rows: as(props['rows'])!, + checkboxHorizontalMargin: + props['checkboxHorizontalMargin']?.toDouble(), + ), + 'DefaultTabController': (props) => DefaultTabController( + key: props['key'], + length: props['length'], + initialIndex: props['initialIndex'] ?? 0, + child: props['child'], + ), + 'DefaultTabController.of': (props) => DefaultTabController.of( + props['pa'][0], + ), + 'NavigationRail': (props) => NavigationRail( + key: props['key'], + backgroundColor: props['backgroundColor'], + extended: props['extended'] ?? false, + leading: props['leading'], + trailing: props['trailing'], + destinations: as(props['destinations'])!, + selectedIndex: props['selectedIndex'], + onDestinationSelected: props['onDestinationSelected'], + elevation: props['elevation']?.toDouble(), + groupAlignment: props['groupAlignment']?.toDouble(), + labelType: props['labelType'], + unselectedLabelTextStyle: props['unselectedLabelTextStyle'], + selectedLabelTextStyle: props['selectedLabelTextStyle'], + unselectedIconTheme: props['unselectedIconTheme'], + selectedIconTheme: props['selectedIconTheme'], + minWidth: props['minWidth']?.toDouble(), + minExtendedWidth: props['minExtendedWidth']?.toDouble(), + ), + 'NavigationRail.extendedAnimation': (props) => + NavigationRail.extendedAnimation( + props['pa'][0], + ), + 'NavigationRailLabelType': { + 'values': NavigationRailLabelType.values, + 'none': NavigationRailLabelType.none, + 'selected': NavigationRailLabelType.selected, + 'all': NavigationRailLabelType.all, + }, + 'TooltipThemeData.lerp': (props) => TooltipThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TooltipTheme.of': (props) => TooltipTheme.of( + props['pa'][0], + ), + 'TooltipTriggerMode': { + 'values': TooltipTriggerMode.values, + 'manual': TooltipTriggerMode.manual, + 'longPress': TooltipTriggerMode.longPress, + 'tap': TooltipTriggerMode.tap, + }, + 'TextButton': (props) => TextButton( + key: props['key'], + onPressed: props['onPressed'], + onLongPress: props['onLongPress'], + style: props['style'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + clipBehavior: props['clipBehavior'] ?? Clip.none, + child: props['child'], + ), + 'TextButton.styleFrom': (props) => TextButton.styleFrom( + primary: props['primary'], + onSurface: props['onSurface'], + backgroundColor: props['backgroundColor'], + shadowColor: props['shadowColor'], + elevation: props['elevation']?.toDouble(), + textStyle: props['textStyle'], + padding: props['padding'], + minimumSize: props['minimumSize'], + fixedSize: props['fixedSize'], + maximumSize: props['maximumSize'], + side: props['side'], + shape: props['shape'], + enabledMouseCursor: props['enabledMouseCursor'], + disabledMouseCursor: props['disabledMouseCursor'], + visualDensity: props['visualDensity'], + tapTargetSize: props['tapTargetSize'], + animationDuration: props['animationDuration'], + enableFeedback: props['enableFeedback'], + alignment: props['alignment'], + splashFactory: props['splashFactory'], + ), + 'Dialog': (props) => Dialog( + key: props['key'], + backgroundColor: props['backgroundColor'], + elevation: props['elevation']?.toDouble(), + insetAnimationDuration: props['insetAnimationDuration'] ?? + const Duration(milliseconds: 100), + insetAnimationCurve: + props['insetAnimationCurve'] ?? Curves.decelerate, + clipBehavior: props['clipBehavior'] ?? Clip.none, + shape: props['shape'], + child: props['child'], + ), + 'AlertDialog': (props) => AlertDialog( + key: props['key'], + title: props['title'], + titlePadding: props['titlePadding'], + titleTextStyle: props['titleTextStyle'], + content: props['content'], + contentPadding: props['contentPadding'] ?? + const EdgeInsets.fromLTRB(24.0, 20.0, 24.0, 24.0), + contentTextStyle: props['contentTextStyle'], + actions: as(props['actions']), + actionsPadding: props['actionsPadding'] ?? EdgeInsets.zero, + actionsAlignment: props['actionsAlignment'], + actionsOverflowDirection: props['actionsOverflowDirection'], + actionsOverflowButtonSpacing: + props['actionsOverflowButtonSpacing']?.toDouble(), + buttonPadding: props['buttonPadding'], + backgroundColor: props['backgroundColor'], + elevation: props['elevation']?.toDouble(), + semanticLabel: props['semanticLabel'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + shape: props['shape'], + scrollable: props['scrollable'] ?? false, + ), + 'SimpleDialogOption': (props) => SimpleDialogOption( + key: props['key'], + onPressed: props['onPressed'], + padding: props['padding'], + child: props['child'], + ), + 'SimpleDialog': (props) => SimpleDialog( + key: props['key'], + title: props['title'], + titlePadding: props['titlePadding'] ?? + const EdgeInsets.fromLTRB(24.0, 24.0, 24.0, 0.0), + titleTextStyle: props['titleTextStyle'], + children: as(props['children']), + contentPadding: props['contentPadding'] ?? + const EdgeInsets.fromLTRB(0.0, 12.0, 0.0, 16.0), + backgroundColor: props['backgroundColor'], + elevation: props['elevation']?.toDouble(), + semanticLabel: props['semanticLabel'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + shape: props['shape'], + ), + 'InkResponse': (props) => InkResponse( + key: props['key'], + child: props['child'], + onTap: props['onTap'], + onTapDown: props['onTapDown'], + onTapCancel: props['onTapCancel'], + onDoubleTap: props['onDoubleTap'], + onLongPress: props['onLongPress'], + onHighlightChanged: props['onHighlightChanged'], + onHover: props['onHover'], + mouseCursor: props['mouseCursor'], + containedInkWell: props['containedInkWell'] ?? false, + highlightShape: props['highlightShape'] ?? BoxShape.circle, + radius: props['radius']?.toDouble(), + borderRadius: props['borderRadius'], + customBorder: props['customBorder'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + highlightColor: props['highlightColor'], + overlayColor: props['overlayColor'], + splashColor: props['splashColor'], + splashFactory: props['splashFactory'], + enableFeedback: props['enableFeedback'] ?? true, + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + focusNode: props['focusNode'], + canRequestFocus: props['canRequestFocus'] ?? true, + onFocusChange: props['onFocusChange'], + autofocus: props['autofocus'] ?? false, + ), + 'Checkbox': (props) => Checkbox( + key: props['key'], + value: props['value'], + tristate: props['tristate'] ?? false, + onChanged: props['onChanged'], + mouseCursor: props['mouseCursor'], + activeColor: props['activeColor'], + fillColor: props['fillColor'], + checkColor: props['checkColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + overlayColor: props['overlayColor'], + splashRadius: props['splashRadius']?.toDouble(), + materialTapTargetSize: props['materialTapTargetSize'], + visualDensity: props['visualDensity'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + shape: props['shape'], + side: props['side'], + ), + 'Checkbox.width': Checkbox.width, + 'TimePickerDialog': (props) => TimePickerDialog( + key: props['key'], + initialTime: props['initialTime'], + cancelText: props['cancelText'], + confirmText: props['confirmText'], + helpText: props['helpText'], + errorInvalidText: props['errorInvalidText'], + hourLabelText: props['hourLabelText'], + minuteLabelText: props['minuteLabelText'], + restorationId: props['restorationId'], + initialEntryMode: + props['initialEntryMode'] ?? TimePickerEntryMode.dial, + ), + 'TimePickerEntryMode': { + 'values': TimePickerEntryMode.values, + 'dial': TimePickerEntryMode.dial, + 'input': TimePickerEntryMode.input, + }, + 'Radio': (props) => Radio( + key: props['key'], + value: props['value'], + groupValue: props['groupValue'], + onChanged: props['onChanged'], + mouseCursor: props['mouseCursor'], + toggleable: props['toggleable'] ?? false, + activeColor: props['activeColor'], + fillColor: props['fillColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + overlayColor: props['overlayColor'], + splashRadius: props['splashRadius']?.toDouble(), + materialTapTargetSize: props['materialTapTargetSize'], + visualDensity: props['visualDensity'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + ), + 'Stepper': (props) => Stepper( + key: props['key'], + steps: as(props['steps'])!, + physics: props['physics'], + type: props['type'] ?? StepperType.vertical, + currentStep: props['currentStep'] ?? 0, + onStepTapped: props['onStepTapped'], + onStepContinue: props['onStepContinue'], + onStepCancel: props['onStepCancel'], + controlsBuilder: props['controlsBuilder'], + elevation: props['elevation']?.toDouble(), + ), + 'StepState': { + 'values': StepState.values, + 'indexed': StepState.indexed, + 'editing': StepState.editing, + 'complete': StepState.complete, + 'disabled': StepState.disabled, + 'error': StepState.error, + }, + 'StepperType': { + 'values': StepperType.values, + 'vertical': StepperType.vertical, + 'horizontal': StepperType.horizontal, + }, + 'CheckboxListTile': (props) => CheckboxListTile( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + activeColor: props['activeColor'], + checkColor: props['checkColor'], + tileColor: props['tileColor'], + title: props['title'], + subtitle: props['subtitle'], + isThreeLine: props['isThreeLine'] ?? false, + dense: props['dense'], + secondary: props['secondary'], + selected: props['selected'] ?? false, + controlAffinity: + props['controlAffinity'] ?? ListTileControlAffinity.platform, + autofocus: props['autofocus'] ?? false, + contentPadding: props['contentPadding'], + tristate: props['tristate'] ?? false, + shape: props['shape'], + selectedTileColor: props['selectedTileColor'], + ), + 'RadioThemeData.lerp': (props) => RadioThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'RadioTheme.of': (props) => RadioTheme.of( + props['pa'][0], + ), + 'Tab': (props) => Tab( + key: props['key'], + text: props['text'], + icon: props['icon'], + iconMargin: + props['iconMargin'] ?? const EdgeInsets.only(bottom: 10.0), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'TabBar': (props) => TabBar( + key: props['key'], + tabs: as(props['tabs'])!, + controller: props['controller'], + isScrollable: props['isScrollable'] ?? false, + padding: props['padding'], + indicatorColor: props['indicatorColor'], + automaticIndicatorColorAdjustment: + props['automaticIndicatorColorAdjustment'] ?? true, + indicatorWeight: props['indicatorWeight']?.toDouble() ?? 2.0, + indicatorPadding: props['indicatorPadding'] ?? EdgeInsets.zero, + indicator: props['indicator'], + indicatorSize: props['indicatorSize'], + labelColor: props['labelColor'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + unselectedLabelColor: props['unselectedLabelColor'], + unselectedLabelStyle: props['unselectedLabelStyle'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + overlayColor: props['overlayColor'], + mouseCursor: props['mouseCursor'], + enableFeedback: props['enableFeedback'], + onTap: props['onTap'], + physics: props['physics'], + ), + 'TabBarView': (props) => TabBarView( + key: props['key'], + controller: props['controller'], + physics: props['physics'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + children: as(props['children'])!, + ), + 'TabPageSelectorIndicator': (props) => TabPageSelectorIndicator( + key: props['key'], + backgroundColor: props['backgroundColor'], + borderColor: props['borderColor'], + size: props['size']?.toDouble(), + ), + 'TabPageSelector': (props) => TabPageSelector( + key: props['key'], + controller: props['controller'], + indicatorSize: props['indicatorSize']?.toDouble() ?? 12.0, + color: props['color'], + selectedColor: props['selectedColor'], + ), + 'TabBarIndicatorSize': { + 'values': TabBarIndicatorSize.values, + 'tab': TabBarIndicatorSize.tab, + 'label': TabBarIndicatorSize.label, + }, + 'DatePickerDialog': (props) => DatePickerDialog( + key: props['key'], + initialDate: props['initialDate'], + firstDate: props['firstDate'], + lastDate: props['lastDate'], + currentDate: props['currentDate'], + initialEntryMode: + props['initialEntryMode'] ?? DatePickerEntryMode.calendar, + selectableDayPredicate: props['selectableDayPredicate'], + cancelText: props['cancelText'], + confirmText: props['confirmText'], + helpText: props['helpText'], + initialCalendarMode: + props['initialCalendarMode'] ?? DatePickerMode.day, + errorFormatText: props['errorFormatText'], + errorInvalidText: props['errorInvalidText'], + fieldHintText: props['fieldHintText'], + fieldLabelText: props['fieldLabelText'], + restorationId: props['restorationId'], + ), + 'DatePickerDialog#selectableDayPredicate': (props) => ( + DateTime day, + ) { + return (props['block']) as bool; + }, + 'DateRangePickerDialog': (props) => DateRangePickerDialog( + key: props['key'], + initialDateRange: props['initialDateRange'], + firstDate: props['firstDate'], + lastDate: props['lastDate'], + currentDate: props['currentDate'], + initialEntryMode: + props['initialEntryMode'] ?? DatePickerEntryMode.calendar, + helpText: props['helpText'], + cancelText: props['cancelText'], + confirmText: props['confirmText'], + saveText: props['saveText'], + errorInvalidRangeText: props['errorInvalidRangeText'], + errorFormatText: props['errorFormatText'], + errorInvalidText: props['errorInvalidText'], + fieldStartHintText: props['fieldStartHintText'], + fieldEndHintText: props['fieldEndHintText'], + fieldStartLabelText: props['fieldStartLabelText'], + fieldEndLabelText: props['fieldEndLabelText'], + restorationId: props['restorationId'], + ), + 'BottomNavigationBarThemeData.lerp': (props) => + BottomNavigationBarThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BottomNavigationBarTheme.of': (props) => BottomNavigationBarTheme.of( + props['pa'][0], + ), + 'FloatingActionButton': (props) => FloatingActionButton( + key: props['key'], + child: props['child'], + tooltip: props['tooltip'], + foregroundColor: props['foregroundColor'], + backgroundColor: props['backgroundColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + splashColor: props['splashColor'], + heroTag: props['heroTag'] ?? const _DefaultHeroTag(), + elevation: props['elevation']?.toDouble(), + focusElevation: props['focusElevation']?.toDouble(), + hoverElevation: props['hoverElevation']?.toDouble(), + highlightElevation: props['highlightElevation']?.toDouble(), + disabledElevation: props['disabledElevation']?.toDouble(), + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'], + mini: props['mini'] ?? false, + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + materialTapTargetSize: props['materialTapTargetSize'], + isExtended: props['isExtended'] ?? false, + enableFeedback: props['enableFeedback'], + ), + 'FloatingActionButton.small': (props) => FloatingActionButton.small( + key: props['key'], + child: props['child'], + tooltip: props['tooltip'], + foregroundColor: props['foregroundColor'], + backgroundColor: props['backgroundColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + splashColor: props['splashColor'], + heroTag: props['heroTag'] ?? const _DefaultHeroTag(), + elevation: props['elevation']?.toDouble(), + focusElevation: props['focusElevation']?.toDouble(), + hoverElevation: props['hoverElevation']?.toDouble(), + highlightElevation: props['highlightElevation']?.toDouble(), + disabledElevation: props['disabledElevation']?.toDouble(), + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + materialTapTargetSize: props['materialTapTargetSize'], + enableFeedback: props['enableFeedback'], + ), + 'FloatingActionButton.large': (props) => FloatingActionButton.large( + key: props['key'], + child: props['child'], + tooltip: props['tooltip'], + foregroundColor: props['foregroundColor'], + backgroundColor: props['backgroundColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + splashColor: props['splashColor'], + heroTag: props['heroTag'] ?? const _DefaultHeroTag(), + elevation: props['elevation']?.toDouble(), + focusElevation: props['focusElevation']?.toDouble(), + hoverElevation: props['hoverElevation']?.toDouble(), + highlightElevation: props['highlightElevation']?.toDouble(), + disabledElevation: props['disabledElevation']?.toDouble(), + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + materialTapTargetSize: props['materialTapTargetSize'], + enableFeedback: props['enableFeedback'], + ), + 'FloatingActionButton.extended': (props) => FloatingActionButton.extended( + key: props['key'], + tooltip: props['tooltip'], + foregroundColor: props['foregroundColor'], + backgroundColor: props['backgroundColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + heroTag: props['heroTag'] ?? const _DefaultHeroTag(), + elevation: props['elevation']?.toDouble(), + focusElevation: props['focusElevation']?.toDouble(), + hoverElevation: props['hoverElevation']?.toDouble(), + splashColor: props['splashColor'], + highlightElevation: props['highlightElevation']?.toDouble(), + disabledElevation: props['disabledElevation']?.toDouble(), + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'] ?? SystemMouseCursors.click, + shape: props['shape'], + isExtended: props['isExtended'] ?? true, + materialTapTargetSize: props['materialTapTargetSize'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + extendedIconLabelSpacing: + props['extendedIconLabelSpacing']?.toDouble(), + extendedPadding: props['extendedPadding'], + extendedTextStyle: props['extendedTextStyle'], + icon: props['icon'], + label: props['label'], + enableFeedback: props['enableFeedback'], + ), + 'CheckboxThemeData.lerp': (props) => CheckboxThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'CheckboxTheme.of': (props) => CheckboxTheme.of( + props['pa'][0], + ), + 'RangeSlider': (props) => RangeSlider( + key: props['key'], + values: props['values'], + onChanged: props['onChanged'], + onChangeStart: props['onChangeStart'], + onChangeEnd: props['onChangeEnd'], + min: props['min']?.toDouble() ?? 0.0, + max: props['max']?.toDouble() ?? 1.0, + divisions: props['divisions'], + labels: props['labels'], + activeColor: props['activeColor'], + inactiveColor: props['inactiveColor'], + semanticFormatterCallback: props['semanticFormatterCallback'], + ), + 'RangeSlider#semanticFormatterCallback': (props) => ( + double value, + ) { + return (props['block']) as String; + }, + 'ScrollbarThemeData.lerp': (props) => ScrollbarThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ScrollbarTheme.of': (props) => ScrollbarTheme.of( + props['pa'][0], + ), + 'PopupMenuButton': (props) => PopupMenuButton( + key: props['key'], + itemBuilder: props['itemBuilder'], + initialValue: props['initialValue'], + onSelected: props['onSelected'], + onCanceled: props['onCanceled'], + tooltip: props['tooltip'], + elevation: props['elevation']?.toDouble(), + padding: props['padding'] ?? const EdgeInsets.all(8.0), + child: props['child'], + icon: props['icon'], + iconSize: props['iconSize']?.toDouble(), + offset: props['offset'] ?? Offset.zero, + enabled: props['enabled'] ?? true, + shape: props['shape'], + color: props['color'], + enableFeedback: props['enableFeedback'], + ), + 'PopupMenuButton#itemBuilder': (props) => ( + dynamic context, + ) { + return (props['block']) as List; + }, + 'PopupMenuButton#onSelected': (props) => ( + T value, + ) { + return (props['block']); + }, + 'PopupMenuButton#onCanceled': (props) => () { + return (props['block']); + }, + 'ExpandIcon': (props) => ExpandIcon( + key: props['key'], + isExpanded: props['isExpanded'] ?? false, + size: props['size']?.toDouble() ?? 24.0, + onPressed: props['onPressed'], + padding: props['padding'] ?? const EdgeInsets.all(8.0), + color: props['color'], + disabledColor: props['disabledColor'], + expandedColor: props['expandedColor'], + ), + 'AppBar': (props) => AppBar( + key: props['key'], + leading: props['leading'], + automaticallyImplyLeading: + props['automaticallyImplyLeading'] ?? true, + title: props['title'], + actions: as(props['actions']), + flexibleSpace: props['flexibleSpace'], + bottom: props['bottom'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + shape: props['shape'], + backgroundColor: props['backgroundColor'], + foregroundColor: props['foregroundColor'], + iconTheme: props['iconTheme'], + actionsIconTheme: props['actionsIconTheme'], + primary: props['primary'] ?? true, + centerTitle: props['centerTitle'], + excludeHeaderSemantics: props['excludeHeaderSemantics'] ?? false, + titleSpacing: props['titleSpacing']?.toDouble(), + toolbarOpacity: props['toolbarOpacity']?.toDouble() ?? 1.0, + bottomOpacity: props['bottomOpacity']?.toDouble() ?? 1.0, + toolbarHeight: props['toolbarHeight']?.toDouble(), + leadingWidth: props['leadingWidth']?.toDouble(), + toolbarTextStyle: props['toolbarTextStyle'], + titleTextStyle: props['titleTextStyle'], + systemOverlayStyle: props['systemOverlayStyle'], + ), + 'AppBar.preferredHeightFor': (props) => AppBar.preferredHeightFor( + props['pa'][0], + props['pa'][1], + ), + 'SliverAppBar': (props) => SliverAppBar( + key: props['key'], + leading: props['leading'], + automaticallyImplyLeading: + props['automaticallyImplyLeading'] ?? true, + title: props['title'], + actions: as(props['actions']), + flexibleSpace: props['flexibleSpace'], + bottom: props['bottom'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + forceElevated: props['forceElevated'] ?? false, + backgroundColor: props['backgroundColor'], + foregroundColor: props['foregroundColor'], + iconTheme: props['iconTheme'], + actionsIconTheme: props['actionsIconTheme'], + primary: props['primary'] ?? true, + centerTitle: props['centerTitle'], + excludeHeaderSemantics: props['excludeHeaderSemantics'] ?? false, + titleSpacing: props['titleSpacing']?.toDouble(), + collapsedHeight: props['collapsedHeight']?.toDouble(), + expandedHeight: props['expandedHeight']?.toDouble(), + floating: props['floating'] ?? false, + pinned: props['pinned'] ?? false, + snap: props['snap'] ?? false, + stretch: props['stretch'] ?? false, + stretchTriggerOffset: + props['stretchTriggerOffset']?.toDouble() ?? 100.0, + onStretchTrigger: props['onStretchTrigger'], + shape: props['shape'], + toolbarHeight: props['toolbarHeight']?.toDouble() ?? kToolbarHeight, + leadingWidth: props['leadingWidth']?.toDouble(), + toolbarTextStyle: props['toolbarTextStyle'], + titleTextStyle: props['titleTextStyle'], + systemOverlayStyle: props['systemOverlayStyle'], + ), + 'BottomAppBar': (props) => BottomAppBar( + key: props['key'], + color: props['color'], + elevation: props['elevation']?.toDouble(), + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + notchMargin: props['notchMargin']?.toDouble() ?? 4.0, + child: props['child'], + ), + 'UserAccountsDrawerHeader': (props) => UserAccountsDrawerHeader( + key: props['key'], + decoration: props['decoration'], + margin: props['margin'] ?? const EdgeInsets.only(bottom: 8.0), + currentAccountPicture: props['currentAccountPicture'], + otherAccountsPictures: as(props['otherAccountsPictures']), + currentAccountPictureSize: + props['currentAccountPictureSize'] ?? const Size.square(72.0), + otherAccountsPicturesSize: + props['otherAccountsPicturesSize'] ?? const Size.square(40.0), + accountName: props['accountName'], + accountEmail: props['accountEmail'], + onDetailsPressed: props['onDetailsPressed'], + arrowColor: props['arrowColor'] ?? Colors.white, + ), + 'ThemeData.localize': (props) => ThemeData.localize( + props['pa'][0], + props['pa'][1], + ), + 'ThemeData.estimateBrightnessForColor': (props) => + ThemeData.estimateBrightnessForColor( + props['pa'][0], + ), + 'ThemeData.lerp': (props) => ThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'VisualDensity': { + 'minimumDensity': VisualDensity.minimumDensity, + 'maximumDensity': VisualDensity.maximumDensity, + 'standard': VisualDensity.standard, + 'comfortable': VisualDensity.comfortable, + 'compact': VisualDensity.compact, + }, + 'VisualDensity.lerp': (props) => VisualDensity.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'MaterialTapTargetSize': { + 'values': MaterialTapTargetSize.values, + 'padded': MaterialTapTargetSize.padded, + 'shrinkWrap': MaterialTapTargetSize.shrinkWrap, + }, + 'MaterialBanner': (props) => MaterialBanner( + key: props['key'], + content: props['content'], + contentTextStyle: props['contentTextStyle'], + actions: as(props['actions'])!, + leading: props['leading'], + backgroundColor: props['backgroundColor'], + padding: props['padding'], + leadingPadding: props['leadingPadding'], + forceActionsBelow: props['forceActionsBelow'] ?? false, + overflowAlignment: + props['overflowAlignment'] ?? OverflowBarAlignment.end, + animation: props['animation'], + onVisible: props['onVisible'], + ), + 'MaterialBanner.createAnimationController': (props) => + MaterialBanner.createAnimationController( + vsync: props['vsync'], + ), + 'MaterialBannerClosedReason': { + 'values': MaterialBannerClosedReason.values, + 'dismiss': MaterialBannerClosedReason.dismiss, + 'swipe': MaterialBannerClosedReason.swipe, + 'hide': MaterialBannerClosedReason.hide, + 'remove': MaterialBannerClosedReason.remove, + }, + 'Chip': (props) => Chip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + deleteIcon: props['deleteIcon'], + onDeleted: props['onDeleted'], + deleteIconColor: props['deleteIconColor'], + useDeleteButtonTooltip: props['useDeleteButtonTooltip'] ?? true, + deleteButtonTooltipMessage: props['deleteButtonTooltipMessage'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + padding: props['padding'], + visualDensity: props['visualDensity'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + ), + 'InputChip': (props) => InputChip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + selected: props['selected'] ?? false, + isEnabled: props['isEnabled'] ?? true, + onSelected: props['onSelected'], + deleteIcon: props['deleteIcon'], + onDeleted: props['onDeleted'], + deleteIconColor: props['deleteIconColor'], + useDeleteButtonTooltip: props['useDeleteButtonTooltip'] ?? true, + deleteButtonTooltipMessage: props['deleteButtonTooltipMessage'], + onPressed: props['onPressed'], + pressElevation: props['pressElevation']?.toDouble(), + disabledColor: props['disabledColor'], + selectedColor: props['selectedColor'], + tooltip: props['tooltip'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + padding: props['padding'], + visualDensity: props['visualDensity'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + selectedShadowColor: props['selectedShadowColor'], + showCheckmark: props['showCheckmark'], + checkmarkColor: props['checkmarkColor'], + avatarBorder: props['avatarBorder'] ?? const CircleBorder(), + ), + 'ChoiceChip': (props) => ChoiceChip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + onSelected: props['onSelected'], + pressElevation: props['pressElevation']?.toDouble(), + selected: props['selected'], + selectedColor: props['selectedColor'], + disabledColor: props['disabledColor'], + tooltip: props['tooltip'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + padding: props['padding'], + visualDensity: props['visualDensity'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + selectedShadowColor: props['selectedShadowColor'], + avatarBorder: props['avatarBorder'] ?? const CircleBorder(), + ), + 'FilterChip': (props) => FilterChip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + selected: props['selected'] ?? false, + onSelected: props['onSelected'], + pressElevation: props['pressElevation']?.toDouble(), + disabledColor: props['disabledColor'], + selectedColor: props['selectedColor'], + tooltip: props['tooltip'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + padding: props['padding'], + visualDensity: props['visualDensity'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + selectedShadowColor: props['selectedShadowColor'], + showCheckmark: props['showCheckmark'], + checkmarkColor: props['checkmarkColor'], + avatarBorder: props['avatarBorder'] ?? const CircleBorder(), + ), + 'ActionChip': (props) => ActionChip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + labelPadding: props['labelPadding'], + onPressed: props['onPressed'], + pressElevation: props['pressElevation']?.toDouble(), + tooltip: props['tooltip'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + padding: props['padding'], + visualDensity: props['visualDensity'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + ), + 'RawChip': (props) => RawChip( + key: props['key'], + avatar: props['avatar'], + label: props['label'], + labelStyle: props['labelStyle'], + padding: props['padding'], + visualDensity: props['visualDensity'], + labelPadding: props['labelPadding'], + deleteIcon: props['deleteIcon'], + onDeleted: props['onDeleted'], + deleteIconColor: props['deleteIconColor'], + useDeleteButtonTooltip: props['useDeleteButtonTooltip'] ?? true, + deleteButtonTooltipMessage: props['deleteButtonTooltipMessage'], + onPressed: props['onPressed'], + onSelected: props['onSelected'], + pressElevation: props['pressElevation']?.toDouble(), + tapEnabled: props['tapEnabled'] ?? true, + selected: props['selected'] ?? false, + isEnabled: props['isEnabled'] ?? true, + disabledColor: props['disabledColor'], + selectedColor: props['selectedColor'], + tooltip: props['tooltip'], + side: props['side'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + backgroundColor: props['backgroundColor'], + materialTapTargetSize: props['materialTapTargetSize'], + elevation: props['elevation']?.toDouble(), + shadowColor: props['shadowColor'], + selectedShadowColor: props['selectedShadowColor'], + showCheckmark: props['showCheckmark'] ?? true, + checkmarkColor: props['checkmarkColor'], + avatarBorder: props['avatarBorder'] ?? const CircleBorder(), + ), + 'DialogTheme.of': (props) => DialogTheme.of( + props['pa'][0], + ), + 'DialogTheme.lerp': (props) => DialogTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'PaginatedDataTable': (props) => PaginatedDataTable( + key: props['key'], + header: props['header'], + actions: as(props['actions']), + columns: as(props['columns'])!, + sortColumnIndex: props['sortColumnIndex'], + sortAscending: props['sortAscending'] ?? true, + onSelectAll: props['onSelectAll'], + dataRowHeight: + props['dataRowHeight']?.toDouble() ?? kMinInteractiveDimension, + headingRowHeight: props['headingRowHeight']?.toDouble() ?? 56.0, + horizontalMargin: props['horizontalMargin']?.toDouble() ?? 24.0, + columnSpacing: props['columnSpacing']?.toDouble() ?? 56.0, + showCheckboxColumn: props['showCheckboxColumn'] ?? true, + showFirstLastButtons: props['showFirstLastButtons'] ?? false, + initialFirstRowIndex: props['initialFirstRowIndex'] ?? 0, + onPageChanged: props['onPageChanged'], + rowsPerPage: props['rowsPerPage'] ?? defaultRowsPerPage, + availableRowsPerPage: as(props['availableRowsPerPage']) ?? + const [ + defaultRowsPerPage, + defaultRowsPerPage * 2, + defaultRowsPerPage * 5, + defaultRowsPerPage * 10 + ], + onRowsPerPageChanged: props['onRowsPerPageChanged'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + arrowHeadColor: props['arrowHeadColor'], + source: props['source'], + checkboxHorizontalMargin: + props['checkboxHorizontalMargin']?.toDouble(), + ), + 'PaginatedDataTable.defaultRowsPerPage': + PaginatedDataTable.defaultRowsPerPage, + 'FloatingActionButtonThemeData.lerp': (props) => + FloatingActionButtonThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'FlutterLogo': (props) => FlutterLogo( + key: props['key'], + size: props['size']?.toDouble(), + textColor: props['textColor'] ?? const Color(0xFF757575), + style: props['style'] ?? FlutterLogoStyle.markOnly, + duration: props['duration'] ?? const Duration(milliseconds: 750), + curve: props['curve'] ?? Curves.fastOutSlowIn, + ), + 'CardTheme.of': (props) => CardTheme.of( + props['pa'][0], + ), + 'CardTheme.lerp': (props) => CardTheme.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BottomSheetThemeData.lerp': (props) => BottomSheetThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Tooltip': (props) => Tooltip( + key: props['key'], + message: props['message'], + height: props['height']?.toDouble(), + padding: props['padding'], + margin: props['margin'], + verticalOffset: props['verticalOffset']?.toDouble(), + preferBelow: props['preferBelow'], + excludeFromSemantics: props['excludeFromSemantics'], + decoration: props['decoration'], + textStyle: props['textStyle'], + waitDuration: props['waitDuration'], + showDuration: props['showDuration'], + child: props['child'], + triggerMode: props['triggerMode'], + enableFeedback: props['enableFeedback'], + ), + 'Tooltip.dismissAllToolTips': (props) => Tooltip.dismissAllToolTips(), + 'ElevatedButton.styleFrom': (props) => ElevatedButton.styleFrom( + primary: props['primary'], + onPrimary: props['onPrimary'], + onSurface: props['onSurface'], + shadowColor: props['shadowColor'], + elevation: props['elevation']?.toDouble(), + textStyle: props['textStyle'], + padding: props['padding'], + minimumSize: props['minimumSize'], + fixedSize: props['fixedSize'], + maximumSize: props['maximumSize'], + side: props['side'], + shape: props['shape'], + enabledMouseCursor: props['enabledMouseCursor'], + disabledMouseCursor: props['disabledMouseCursor'], + visualDensity: props['visualDensity'], + tapTargetSize: props['tapTargetSize'], + animationDuration: props['animationDuration'], + enableFeedback: props['enableFeedback'], + alignment: props['alignment'], + splashFactory: props['splashFactory'], + ), + 'SwitchListTile': (props) => SwitchListTile( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + tileColor: props['tileColor'], + activeColor: props['activeColor'], + activeTrackColor: props['activeTrackColor'], + inactiveThumbColor: props['inactiveThumbColor'], + inactiveTrackColor: props['inactiveTrackColor'], + activeThumbImage: props['activeThumbImage'], + inactiveThumbImage: props['inactiveThumbImage'], + title: props['title'], + subtitle: props['subtitle'], + isThreeLine: props['isThreeLine'] ?? false, + dense: props['dense'], + contentPadding: props['contentPadding'], + secondary: props['secondary'], + selected: props['selected'] ?? false, + autofocus: props['autofocus'] ?? false, + controlAffinity: + props['controlAffinity'] ?? ListTileControlAffinity.platform, + shape: props['shape'], + selectedTileColor: props['selectedTileColor'], + ), + 'SwitchListTile.adaptive': (props) => SwitchListTile.adaptive( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + tileColor: props['tileColor'], + activeColor: props['activeColor'], + activeTrackColor: props['activeTrackColor'], + inactiveThumbColor: props['inactiveThumbColor'], + inactiveTrackColor: props['inactiveTrackColor'], + activeThumbImage: props['activeThumbImage'], + inactiveThumbImage: props['inactiveThumbImage'], + title: props['title'], + subtitle: props['subtitle'], + isThreeLine: props['isThreeLine'] ?? false, + dense: props['dense'], + contentPadding: props['contentPadding'], + secondary: props['secondary'], + selected: props['selected'] ?? false, + autofocus: props['autofocus'] ?? false, + controlAffinity: + props['controlAffinity'] ?? ListTileControlAffinity.platform, + shape: props['shape'], + selectedTileColor: props['selectedTileColor'], + ), + 'DropdownButtonHideUnderline.at': (props) => + DropdownButtonHideUnderline.at( + props['pa'][0], + ), + 'DropdownButton': (props) => DropdownButton( + key: props['key'], + items: as(props['items']), + selectedItemBuilder: props['selectedItemBuilder'], + value: props['value'], + hint: props['hint'], + disabledHint: props['disabledHint'], + onChanged: props['onChanged'], + onTap: props['onTap'], + elevation: props['elevation'] ?? 8, + style: props['style'], + underline: props['underline'], + icon: props['icon'], + iconDisabledColor: props['iconDisabledColor'], + iconEnabledColor: props['iconEnabledColor'], + iconSize: props['iconSize']?.toDouble() ?? 24.0, + isDense: props['isDense'] ?? false, + isExpanded: props['isExpanded'] ?? false, + itemHeight: + props['itemHeight']?.toDouble() ?? kMinInteractiveDimension, + focusColor: props['focusColor'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + dropdownColor: props['dropdownColor'], + menuMaxHeight: props['menuMaxHeight']?.toDouble(), + enableFeedback: props['enableFeedback'], + alignment: props['alignment'] ?? AlignmentDirectional.centerStart, + borderRadius: props['borderRadius'], + ), + 'DropdownButton#selectedItemBuilder': (props) => ( + dynamic context, + ) { + return (props['block']) as List; + }, + 'IconButton': (props) => IconButton( + key: props['key'], + iconSize: props['iconSize']?.toDouble() ?? 24.0, + visualDensity: props['visualDensity'], + padding: props['padding'] ?? const EdgeInsets.all(8.0), + alignment: props['alignment'] ?? Alignment.center, + splashRadius: props['splashRadius']?.toDouble(), + color: props['color'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + highlightColor: props['highlightColor'], + splashColor: props['splashColor'], + disabledColor: props['disabledColor'], + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'] ?? SystemMouseCursors.click, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + tooltip: props['tooltip'], + enableFeedback: props['enableFeedback'] ?? true, + constraints: props['constraints'], + icon: props['icon'], + ), + 'Slider': (props) => Slider( + key: props['key'], + value: props['value']?.toDouble(), + onChanged: props['onChanged'], + onChangeStart: props['onChangeStart'], + onChangeEnd: props['onChangeEnd'], + min: props['min']?.toDouble() ?? 0.0, + max: props['max']?.toDouble() ?? 1.0, + divisions: props['divisions'], + label: props['label'], + activeColor: props['activeColor'], + inactiveColor: props['inactiveColor'], + thumbColor: props['thumbColor'], + mouseCursor: props['mouseCursor'], + semanticFormatterCallback: props['semanticFormatterCallback'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + ), + 'Slider.adaptive': (props) => Slider.adaptive( + key: props['key'], + value: props['value']?.toDouble(), + onChanged: props['onChanged'], + onChangeStart: props['onChangeStart'], + onChangeEnd: props['onChangeEnd'], + min: props['min']?.toDouble() ?? 0.0, + max: props['max']?.toDouble() ?? 1.0, + divisions: props['divisions'], + label: props['label'], + mouseCursor: props['mouseCursor'], + activeColor: props['activeColor'], + inactiveColor: props['inactiveColor'], + thumbColor: props['thumbColor'], + semanticFormatterCallback: props['semanticFormatterCallback'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + ), + 'Slider#semanticFormatterCallback': (props) => ( + double value, + ) { + return (props['block']) as String; + }, + 'Slider.adaptive#semanticFormatterCallback': (props) => ( + double value, + ) { + return (props['block']) as String; + }, + 'NoSplash': { + 'splashFactory': NoSplash.splashFactory, + }, + 'ButtonTheme.of': (props) => ButtonTheme.of( + props['pa'][0], + ), + 'ButtonTextTheme': { + 'values': ButtonTextTheme.values, + 'normal': ButtonTextTheme.normal, + 'accent': ButtonTextTheme.accent, + 'primary': ButtonTextTheme.primary, + }, + 'ButtonBarLayoutBehavior': { + 'values': ButtonBarLayoutBehavior.values, + 'constrained': ButtonBarLayoutBehavior.constrained, + 'padded': ButtonBarLayoutBehavior.padded, + }, + 'ListTileTheme.merge': (props) => ListTileTheme.merge( + key: props['key'], + dense: props['dense'], + shape: props['shape'], + style: props['style'], + selectedColor: props['selectedColor'], + iconColor: props['iconColor'], + textColor: props['textColor'], + contentPadding: props['contentPadding'], + tileColor: props['tileColor'], + selectedTileColor: props['selectedTileColor'], + enableFeedback: props['enableFeedback'], + horizontalTitleGap: props['horizontalTitleGap']?.toDouble(), + minVerticalPadding: props['minVerticalPadding']?.toDouble(), + minLeadingWidth: props['minLeadingWidth']?.toDouble(), + child: props['child'], + ), + 'ListTileTheme.of': (props) => ListTileTheme.of( + props['pa'][0], + ), + 'ListTile': (props) => ListTile( + key: props['key'], + leading: props['leading'], + title: props['title'], + subtitle: props['subtitle'], + trailing: props['trailing'], + isThreeLine: props['isThreeLine'] ?? false, + dense: props['dense'], + visualDensity: props['visualDensity'], + shape: props['shape'], + contentPadding: props['contentPadding'], + enabled: props['enabled'] ?? true, + onTap: props['onTap'], + onLongPress: props['onLongPress'], + mouseCursor: props['mouseCursor'], + selected: props['selected'] ?? false, + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + tileColor: props['tileColor'], + selectedTileColor: props['selectedTileColor'], + enableFeedback: props['enableFeedback'], + horizontalTitleGap: props['horizontalTitleGap']?.toDouble(), + minVerticalPadding: props['minVerticalPadding']?.toDouble(), + minLeadingWidth: props['minLeadingWidth']?.toDouble(), + ), + 'ListTile.divideTiles': (props) => ListTile.divideTiles( + context: props['context'], + tiles: props['tiles'], + color: props['color'], + ), + 'ListTileStyle': { + 'values': ListTileStyle.values, + 'list': ListTileStyle.list, + 'drawer': ListTileStyle.drawer, + }, + 'ListTileControlAffinity': { + 'values': ListTileControlAffinity.values, + 'leading': ListTileControlAffinity.leading, + 'trailing': ListTileControlAffinity.trailing, + 'platform': ListTileControlAffinity.platform, + }, + 'ExpansionTile': (props) => ExpansionTile( + key: props['key'], + leading: props['leading'], + title: props['title'], + subtitle: props['subtitle'], + onExpansionChanged: props['onExpansionChanged'], + children: as(props['children']) ?? const [], + trailing: props['trailing'], + initiallyExpanded: props['initiallyExpanded'] ?? false, + maintainState: props['maintainState'] ?? false, + tilePadding: props['tilePadding'], + expandedCrossAxisAlignment: props['expandedCrossAxisAlignment'], + expandedAlignment: props['expandedAlignment'], + childrenPadding: props['childrenPadding'], + backgroundColor: props['backgroundColor'], + collapsedBackgroundColor: props['collapsedBackgroundColor'], + textColor: props['textColor'], + collapsedTextColor: props['collapsedTextColor'], + iconColor: props['iconColor'], + collapsedIconColor: props['collapsedIconColor'], + controlAffinity: props['controlAffinity'], + ), + 'BottomSheet': (props) => BottomSheet( + key: props['key'], + animationController: props['animationController'], + enableDrag: props['enableDrag'] ?? true, + onDragStart: props['onDragStart'], + onDragEnd: props['onDragEnd'], + backgroundColor: props['backgroundColor'], + elevation: props['elevation']?.toDouble(), + shape: props['shape'], + clipBehavior: props['clipBehavior'], + constraints: props['constraints'], + onClosing: props['onClosing'], + builder: props['builder'], + ), + 'BottomSheet#onDragStart': (props) => ( + dynamic details, + ) { + return (props['block']); + }, + 'BottomSheet#onDragEnd': (props) => ( + dynamic details, + bool isClosing, + ) { + return (props['block']); + }, + 'BottomSheet.createAnimationController': (props) => + BottomSheet.createAnimationController( + props['pa'][0], + ), + 'DataTableThemeData.lerp': (props) => DataTableThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'DataTableTheme.of': (props) => DataTableTheme.of( + props['pa'][0], + ), + 'DefaultMaterialLocalizations': { + 'delegate': DefaultMaterialLocalizations.delegate, + }, + 'DefaultMaterialLocalizations.load': (props) => + DefaultMaterialLocalizations.load( + props['pa'][0], + ), + 'Typography': { + 'blackMountainView': Typography.blackMountainView, + 'whiteMountainView': Typography.whiteMountainView, + 'blackRedmond': Typography.blackRedmond, + 'whiteRedmond': Typography.whiteRedmond, + 'blackHelsinki': Typography.blackHelsinki, + 'whiteHelsinki': Typography.whiteHelsinki, + 'blackCupertino': Typography.blackCupertino, + 'whiteCupertino': Typography.whiteCupertino, + 'blackRedwoodCity': Typography.blackRedwoodCity, + 'whiteRedwoodCity': Typography.whiteRedwoodCity, + 'englishLike2014': Typography.englishLike2014, + 'englishLike2018': Typography.englishLike2018, + 'dense2014': Typography.dense2014, + 'dense2018': Typography.dense2018, + 'tall2014': Typography.tall2014, + 'tall2018': Typography.tall2018, + }, + 'Typography.lerp': (props) => Typography.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ScriptCategory': { + 'values': ScriptCategory.values, + 'englishLike': ScriptCategory.englishLike, + 'dense': ScriptCategory.dense, + 'tall': ScriptCategory.tall, + }, + 'OutlinedButton.styleFrom': (props) => OutlinedButton.styleFrom( + primary: props['primary'], + onSurface: props['onSurface'], + backgroundColor: props['backgroundColor'], + shadowColor: props['shadowColor'], + elevation: props['elevation']?.toDouble(), + textStyle: props['textStyle'], + padding: props['padding'], + minimumSize: props['minimumSize'], + fixedSize: props['fixedSize'], + maximumSize: props['maximumSize'], + side: props['side'], + shape: props['shape'], + enabledMouseCursor: props['enabledMouseCursor'], + disabledMouseCursor: props['disabledMouseCursor'], + visualDensity: props['visualDensity'], + tapTargetSize: props['tapTargetSize'], + animationDuration: props['animationDuration'], + enableFeedback: props['enableFeedback'], + alignment: props['alignment'], + splashFactory: props['splashFactory'], + ), + 'Divider': (props) => Divider( + key: props['key'], + height: props['height']?.toDouble(), + thickness: props['thickness']?.toDouble(), + indent: props['indent']?.toDouble(), + endIndent: props['endIndent']?.toDouble(), + color: props['color'], + ), + 'Divider.createBorderSide': (props) => Divider.createBorderSide( + props['pa'][0], + color: props['color'], + width: props['width']?.toDouble(), + ), + 'VerticalDivider': (props) => VerticalDivider( + key: props['key'], + width: props['width']?.toDouble(), + thickness: props['thickness']?.toDouble(), + indent: props['indent']?.toDouble(), + endIndent: props['endIndent']?.toDouble(), + color: props['color'], + ), + 'SliderTheme.of': (props) => SliderTheme.of( + props['pa'][0], + ), + 'SliderThemeData.lerp': (props) => SliderThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ShowValueIndicator': { + 'values': ShowValueIndicator.values, + 'onlyForDiscrete': ShowValueIndicator.onlyForDiscrete, + 'onlyForContinuous': ShowValueIndicator.onlyForContinuous, + 'always': ShowValueIndicator.always, + 'never': ShowValueIndicator.never, + }, + 'Thumb': { + 'values': Thumb.values, + 'start': Thumb.start, + 'end': Thumb.end, + }, + 'ToggleButtons': (props) => ToggleButtons( + key: props['key'], + children: as(props['children'])!, + isSelected: as(props['isSelected'])!, + onPressed: props['onPressed'], + mouseCursor: props['mouseCursor'], + textStyle: props['textStyle'], + constraints: props['constraints'], + color: props['color'], + selectedColor: props['selectedColor'], + disabledColor: props['disabledColor'], + fillColor: props['fillColor'], + focusColor: props['focusColor'], + highlightColor: props['highlightColor'], + hoverColor: props['hoverColor'], + splashColor: props['splashColor'], + focusNodes: as(props['focusNodes']), + renderBorder: props['renderBorder'] ?? true, + borderColor: props['borderColor'], + selectedBorderColor: props['selectedBorderColor'], + disabledBorderColor: props['disabledBorderColor'], + borderRadius: props['borderRadius'], + borderWidth: props['borderWidth']?.toDouble(), + direction: props['direction'] ?? Axis.horizontal, + verticalDirection: + props['verticalDirection'] ?? VerticalDirection.down, + ), + 'ToggleButtons#onPressed': (props) => ( + int index, + ) { + return (props['block']); + }, + 'ChipTheme.of': (props) => ChipTheme.of( + props['pa'][0], + ), + 'ChipThemeData.lerp': (props) => ChipThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Theme': (props) => Theme( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'Theme.of': (props) => Theme.of( + props['pa'][0], + ), + 'ButtonBarThemeData.lerp': (props) => ButtonBarThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ButtonBarTheme.of': (props) => ButtonBarTheme.of( + props['pa'][0], + ), + 'ExpansionPanelList': (props) => ExpansionPanelList( + key: props['key'], + children: as(props['children']) ?? + const [], + expansionCallback: props['expansionCallback'], + animationDuration: + props['animationDuration'] ?? kThemeAnimationDuration, + dividerColor: props['dividerColor'], + elevation: props['elevation']?.toDouble() ?? 2, + ), + 'ExpansionPanelList.radio': (props) => ExpansionPanelList.radio( + key: props['key'], + children: as(props['children']) ?? + const [], + expansionCallback: props['expansionCallback'], + animationDuration: + props['animationDuration'] ?? kThemeAnimationDuration, + initialOpenPanelValue: props['initialOpenPanelValue'], + dividerColor: props['dividerColor'], + elevation: props['elevation']?.toDouble() ?? 2, + ), + 'ExpansionPanelList#expansionCallback': (props) => ( + int panelIndex, + bool isExpanded, + ) { + return (props['block']); + }, + 'ExpansionPanelList.radio#expansionCallback': (props) => ( + int panelIndex, + bool isExpanded, + ) { + return (props['block']); + }, + 'InkSplash': { + 'splashFactory': InkSplash.splashFactory, + }, + 'Autocomplete': (props) => Autocomplete( + key: props['key'], + optionsBuilder: props['optionsBuilder'], + displayStringForOption: props['displayStringForOption'] ?? + RawAutocomplete.defaultStringForOption, + fieldViewBuilder: + props['fieldViewBuilder'], // ?? _defaultFieldViewBuilder, + onSelected: props['onSelected'], + optionsMaxHeight: props['optionsMaxHeight']?.toDouble() ?? 200.0, + optionsViewBuilder: props['optionsViewBuilder'], + initialValue: props['initialValue'], + ), + 'Icons': { + 'ten_k': Icons.ten_k, + 'ten_k_sharp': Icons.ten_k_sharp, + 'ten_k_rounded': Icons.ten_k_rounded, + 'ten_k_outlined': Icons.ten_k_outlined, + 'ten_mp': Icons.ten_mp, + 'ten_mp_sharp': Icons.ten_mp_sharp, + 'ten_mp_rounded': Icons.ten_mp_rounded, + 'ten_mp_outlined': Icons.ten_mp_outlined, + 'eleven_mp': Icons.eleven_mp, + 'eleven_mp_sharp': Icons.eleven_mp_sharp, + 'eleven_mp_rounded': Icons.eleven_mp_rounded, + 'eleven_mp_outlined': Icons.eleven_mp_outlined, + 'twelve_mp': Icons.twelve_mp, + 'twelve_mp_sharp': Icons.twelve_mp_sharp, + 'twelve_mp_rounded': Icons.twelve_mp_rounded, + 'twelve_mp_outlined': Icons.twelve_mp_outlined, + 'thirteen_mp': Icons.thirteen_mp, + 'thirteen_mp_sharp': Icons.thirteen_mp_sharp, + 'thirteen_mp_rounded': Icons.thirteen_mp_rounded, + 'thirteen_mp_outlined': Icons.thirteen_mp_outlined, + 'fourteen_mp': Icons.fourteen_mp, + 'fourteen_mp_sharp': Icons.fourteen_mp_sharp, + 'fourteen_mp_rounded': Icons.fourteen_mp_rounded, + 'fourteen_mp_outlined': Icons.fourteen_mp_outlined, + 'fifteen_mp': Icons.fifteen_mp, + 'fifteen_mp_sharp': Icons.fifteen_mp_sharp, + 'fifteen_mp_rounded': Icons.fifteen_mp_rounded, + 'fifteen_mp_outlined': Icons.fifteen_mp_outlined, + 'sixteen_mp': Icons.sixteen_mp, + 'sixteen_mp_sharp': Icons.sixteen_mp_sharp, + 'sixteen_mp_rounded': Icons.sixteen_mp_rounded, + 'sixteen_mp_outlined': Icons.sixteen_mp_outlined, + 'seventeen_mp': Icons.seventeen_mp, + 'seventeen_mp_sharp': Icons.seventeen_mp_sharp, + 'seventeen_mp_rounded': Icons.seventeen_mp_rounded, + 'seventeen_mp_outlined': Icons.seventeen_mp_outlined, + 'eighteen_mp': Icons.eighteen_mp, + 'eighteen_mp_sharp': Icons.eighteen_mp_sharp, + 'eighteen_mp_rounded': Icons.eighteen_mp_rounded, + 'eighteen_mp_outlined': Icons.eighteen_mp_outlined, + 'nineteen_mp': Icons.nineteen_mp, + 'nineteen_mp_sharp': Icons.nineteen_mp_sharp, + 'nineteen_mp_rounded': Icons.nineteen_mp_rounded, + 'nineteen_mp_outlined': Icons.nineteen_mp_outlined, + 'one_k': Icons.one_k, + 'one_k_sharp': Icons.one_k_sharp, + 'one_k_rounded': Icons.one_k_rounded, + 'one_k_outlined': Icons.one_k_outlined, + 'one_k_plus': Icons.one_k_plus, + 'one_k_plus_sharp': Icons.one_k_plus_sharp, + 'one_k_plus_rounded': Icons.one_k_plus_rounded, + 'one_k_plus_outlined': Icons.one_k_plus_outlined, + 'one_x_mobiledata': Icons.one_x_mobiledata, + 'one_x_mobiledata_sharp': Icons.one_x_mobiledata_sharp, + 'one_x_mobiledata_rounded': Icons.one_x_mobiledata_rounded, + 'one_x_mobiledata_outlined': Icons.one_x_mobiledata_outlined, + 'twenty_mp': Icons.twenty_mp, + 'twenty_mp_sharp': Icons.twenty_mp_sharp, + 'twenty_mp_rounded': Icons.twenty_mp_rounded, + 'twenty_mp_outlined': Icons.twenty_mp_outlined, + 'twenty_one_mp': Icons.twenty_one_mp, + 'twenty_one_mp_sharp': Icons.twenty_one_mp_sharp, + 'twenty_one_mp_rounded': Icons.twenty_one_mp_rounded, + 'twenty_one_mp_outlined': Icons.twenty_one_mp_outlined, + 'twenty_two_mp': Icons.twenty_two_mp, + 'twenty_two_mp_sharp': Icons.twenty_two_mp_sharp, + 'twenty_two_mp_rounded': Icons.twenty_two_mp_rounded, + 'twenty_two_mp_outlined': Icons.twenty_two_mp_outlined, + 'twenty_three_mp': Icons.twenty_three_mp, + 'twenty_three_mp_sharp': Icons.twenty_three_mp_sharp, + 'twenty_three_mp_rounded': Icons.twenty_three_mp_rounded, + 'twenty_three_mp_outlined': Icons.twenty_three_mp_outlined, + 'twenty_four_mp': Icons.twenty_four_mp, + 'twenty_four_mp_sharp': Icons.twenty_four_mp_sharp, + 'twenty_four_mp_rounded': Icons.twenty_four_mp_rounded, + 'twenty_four_mp_outlined': Icons.twenty_four_mp_outlined, + 'two_k': Icons.two_k, + 'two_k_sharp': Icons.two_k_sharp, + 'two_k_rounded': Icons.two_k_rounded, + 'two_k_outlined': Icons.two_k_outlined, + 'two_k_plus': Icons.two_k_plus, + 'two_k_plus_sharp': Icons.two_k_plus_sharp, + 'two_k_plus_rounded': Icons.two_k_plus_rounded, + 'two_k_plus_outlined': Icons.two_k_plus_outlined, + 'two_mp': Icons.two_mp, + 'two_mp_sharp': Icons.two_mp_sharp, + 'two_mp_rounded': Icons.two_mp_rounded, + 'two_mp_outlined': Icons.two_mp_outlined, + 'thirty_fps': Icons.thirty_fps, + 'thirty_fps_sharp': Icons.thirty_fps_sharp, + 'thirty_fps_rounded': Icons.thirty_fps_rounded, + 'thirty_fps_outlined': Icons.thirty_fps_outlined, + 'thirty_fps_select': Icons.thirty_fps_select, + 'thirty_fps_select_sharp': Icons.thirty_fps_select_sharp, + 'thirty_fps_select_rounded': Icons.thirty_fps_select_rounded, + 'thirty_fps_select_outlined': Icons.thirty_fps_select_outlined, + 'threesixty': Icons.threesixty, + 'threesixty_sharp': Icons.threesixty_sharp, + 'threesixty_rounded': Icons.threesixty_rounded, + 'threesixty_outlined': Icons.threesixty_outlined, + 'threed_rotation': Icons.threed_rotation, + 'threed_rotation_sharp': Icons.threed_rotation_sharp, + 'threed_rotation_rounded': Icons.threed_rotation_rounded, + 'threed_rotation_outlined': Icons.threed_rotation_outlined, + 'three_g_mobiledata': Icons.three_g_mobiledata, + 'three_g_mobiledata_sharp': Icons.three_g_mobiledata_sharp, + 'three_g_mobiledata_rounded': Icons.three_g_mobiledata_rounded, + 'three_g_mobiledata_outlined': Icons.three_g_mobiledata_outlined, + 'three_k': Icons.three_k, + 'three_k_sharp': Icons.three_k_sharp, + 'three_k_rounded': Icons.three_k_rounded, + 'three_k_outlined': Icons.three_k_outlined, + 'three_k_plus': Icons.three_k_plus, + 'three_k_plus_sharp': Icons.three_k_plus_sharp, + 'three_k_plus_rounded': Icons.three_k_plus_rounded, + 'three_k_plus_outlined': Icons.three_k_plus_outlined, + 'three_mp': Icons.three_mp, + 'three_mp_sharp': Icons.three_mp_sharp, + 'three_mp_rounded': Icons.three_mp_rounded, + 'three_mp_outlined': Icons.three_mp_outlined, + 'three_p': Icons.three_p, + 'three_p_sharp': Icons.three_p_sharp, + 'three_p_rounded': Icons.three_p_rounded, + 'three_p_outlined': Icons.three_p_outlined, + 'four_g_mobiledata': Icons.four_g_mobiledata, + 'four_g_mobiledata_sharp': Icons.four_g_mobiledata_sharp, + 'four_g_mobiledata_rounded': Icons.four_g_mobiledata_rounded, + 'four_g_mobiledata_outlined': Icons.four_g_mobiledata_outlined, + 'four_g_plus_mobiledata': Icons.four_g_plus_mobiledata, + 'four_g_plus_mobiledata_sharp': Icons.four_g_plus_mobiledata_sharp, + 'four_g_plus_mobiledata_rounded': Icons.four_g_plus_mobiledata_rounded, + 'four_g_plus_mobiledata_outlined': + Icons.four_g_plus_mobiledata_outlined, + 'four_k': Icons.four_k, + 'four_k_sharp': Icons.four_k_sharp, + 'four_k_rounded': Icons.four_k_rounded, + 'four_k_outlined': Icons.four_k_outlined, + 'four_k_plus': Icons.four_k_plus, + 'four_k_plus_sharp': Icons.four_k_plus_sharp, + 'four_k_plus_rounded': Icons.four_k_plus_rounded, + 'four_k_plus_outlined': Icons.four_k_plus_outlined, + 'four_mp': Icons.four_mp, + 'four_mp_sharp': Icons.four_mp_sharp, + 'four_mp_rounded': Icons.four_mp_rounded, + 'four_mp_outlined': Icons.four_mp_outlined, + 'five_g': Icons.five_g, + 'five_g_sharp': Icons.five_g_sharp, + 'five_g_rounded': Icons.five_g_rounded, + 'five_g_outlined': Icons.five_g_outlined, + 'five_k': Icons.five_k, + 'five_k_sharp': Icons.five_k_sharp, + 'five_k_rounded': Icons.five_k_rounded, + 'five_k_outlined': Icons.five_k_outlined, + 'five_k_plus': Icons.five_k_plus, + 'five_k_plus_sharp': Icons.five_k_plus_sharp, + 'five_k_plus_rounded': Icons.five_k_plus_rounded, + 'five_k_plus_outlined': Icons.five_k_plus_outlined, + 'five_mp': Icons.five_mp, + 'five_mp_sharp': Icons.five_mp_sharp, + 'five_mp_rounded': Icons.five_mp_rounded, + 'five_mp_outlined': Icons.five_mp_outlined, + 'sixty_fps': Icons.sixty_fps, + 'sixty_fps_sharp': Icons.sixty_fps_sharp, + 'sixty_fps_rounded': Icons.sixty_fps_rounded, + 'sixty_fps_outlined': Icons.sixty_fps_outlined, + 'sixty_fps_select': Icons.sixty_fps_select, + 'sixty_fps_select_sharp': Icons.sixty_fps_select_sharp, + 'sixty_fps_select_rounded': Icons.sixty_fps_select_rounded, + 'sixty_fps_select_outlined': Icons.sixty_fps_select_outlined, + 'six_ft_apart': Icons.six_ft_apart, + 'six_ft_apart_sharp': Icons.six_ft_apart_sharp, + 'six_ft_apart_rounded': Icons.six_ft_apart_rounded, + 'six_ft_apart_outlined': Icons.six_ft_apart_outlined, + 'six_k': Icons.six_k, + 'six_k_sharp': Icons.six_k_sharp, + 'six_k_rounded': Icons.six_k_rounded, + 'six_k_outlined': Icons.six_k_outlined, + 'six_k_plus': Icons.six_k_plus, + 'six_k_plus_sharp': Icons.six_k_plus_sharp, + 'six_k_plus_rounded': Icons.six_k_plus_rounded, + 'six_k_plus_outlined': Icons.six_k_plus_outlined, + 'six_mp': Icons.six_mp, + 'six_mp_sharp': Icons.six_mp_sharp, + 'six_mp_rounded': Icons.six_mp_rounded, + 'six_mp_outlined': Icons.six_mp_outlined, + 'seven_k': Icons.seven_k, + 'seven_k_sharp': Icons.seven_k_sharp, + 'seven_k_rounded': Icons.seven_k_rounded, + 'seven_k_outlined': Icons.seven_k_outlined, + 'seven_k_plus': Icons.seven_k_plus, + 'seven_k_plus_sharp': Icons.seven_k_plus_sharp, + 'seven_k_plus_rounded': Icons.seven_k_plus_rounded, + 'seven_k_plus_outlined': Icons.seven_k_plus_outlined, + 'seven_mp': Icons.seven_mp, + 'seven_mp_sharp': Icons.seven_mp_sharp, + 'seven_mp_rounded': Icons.seven_mp_rounded, + 'seven_mp_outlined': Icons.seven_mp_outlined, + 'eight_k': Icons.eight_k, + 'eight_k_sharp': Icons.eight_k_sharp, + 'eight_k_rounded': Icons.eight_k_rounded, + 'eight_k_outlined': Icons.eight_k_outlined, + 'eight_k_plus': Icons.eight_k_plus, + 'eight_k_plus_sharp': Icons.eight_k_plus_sharp, + 'eight_k_plus_rounded': Icons.eight_k_plus_rounded, + 'eight_k_plus_outlined': Icons.eight_k_plus_outlined, + 'eight_mp': Icons.eight_mp, + 'eight_mp_sharp': Icons.eight_mp_sharp, + 'eight_mp_rounded': Icons.eight_mp_rounded, + 'eight_mp_outlined': Icons.eight_mp_outlined, + 'nine_k': Icons.nine_k, + 'nine_k_sharp': Icons.nine_k_sharp, + 'nine_k_rounded': Icons.nine_k_rounded, + 'nine_k_outlined': Icons.nine_k_outlined, + 'nine_k_plus': Icons.nine_k_plus, + 'nine_k_plus_sharp': Icons.nine_k_plus_sharp, + 'nine_k_plus_rounded': Icons.nine_k_plus_rounded, + 'nine_k_plus_outlined': Icons.nine_k_plus_outlined, + 'nine_mp': Icons.nine_mp, + 'nine_mp_sharp': Icons.nine_mp_sharp, + 'nine_mp_rounded': Icons.nine_mp_rounded, + 'nine_mp_outlined': Icons.nine_mp_outlined, + 'ac_unit': Icons.ac_unit, + 'ac_unit_sharp': Icons.ac_unit_sharp, + 'ac_unit_rounded': Icons.ac_unit_rounded, + 'ac_unit_outlined': Icons.ac_unit_outlined, + 'access_alarm': Icons.access_alarm, + 'access_alarm_sharp': Icons.access_alarm_sharp, + 'access_alarm_rounded': Icons.access_alarm_rounded, + 'access_alarm_outlined': Icons.access_alarm_outlined, + 'access_alarms': Icons.access_alarms, + 'access_alarms_sharp': Icons.access_alarms_sharp, + 'access_alarms_rounded': Icons.access_alarms_rounded, + 'access_alarms_outlined': Icons.access_alarms_outlined, + 'access_time': Icons.access_time, + 'access_time_sharp': Icons.access_time_sharp, + 'access_time_rounded': Icons.access_time_rounded, + 'access_time_outlined': Icons.access_time_outlined, + 'access_time_filled': Icons.access_time_filled, + 'access_time_filled_sharp': Icons.access_time_filled_sharp, + 'access_time_filled_rounded': Icons.access_time_filled_rounded, + 'access_time_filled_outlined': Icons.access_time_filled_outlined, + 'accessibility': Icons.accessibility, + 'accessibility_sharp': Icons.accessibility_sharp, + 'accessibility_rounded': Icons.accessibility_rounded, + 'accessibility_outlined': Icons.accessibility_outlined, + 'accessibility_new': Icons.accessibility_new, + 'accessibility_new_sharp': Icons.accessibility_new_sharp, + 'accessibility_new_rounded': Icons.accessibility_new_rounded, + 'accessibility_new_outlined': Icons.accessibility_new_outlined, + 'accessible': Icons.accessible, + 'accessible_sharp': Icons.accessible_sharp, + 'accessible_rounded': Icons.accessible_rounded, + 'accessible_outlined': Icons.accessible_outlined, + 'accessible_forward': Icons.accessible_forward, + 'accessible_forward_sharp': Icons.accessible_forward_sharp, + 'accessible_forward_rounded': Icons.accessible_forward_rounded, + 'accessible_forward_outlined': Icons.accessible_forward_outlined, + 'account_balance': Icons.account_balance, + 'account_balance_sharp': Icons.account_balance_sharp, + 'account_balance_rounded': Icons.account_balance_rounded, + 'account_balance_outlined': Icons.account_balance_outlined, + 'account_balance_wallet': Icons.account_balance_wallet, + 'account_balance_wallet_sharp': Icons.account_balance_wallet_sharp, + 'account_balance_wallet_rounded': Icons.account_balance_wallet_rounded, + 'account_balance_wallet_outlined': + Icons.account_balance_wallet_outlined, + 'account_box': Icons.account_box, + 'account_box_sharp': Icons.account_box_sharp, + 'account_box_rounded': Icons.account_box_rounded, + 'account_box_outlined': Icons.account_box_outlined, + 'account_circle': Icons.account_circle, + 'account_circle_sharp': Icons.account_circle_sharp, + 'account_circle_rounded': Icons.account_circle_rounded, + 'account_circle_outlined': Icons.account_circle_outlined, + 'account_tree': Icons.account_tree, + 'account_tree_sharp': Icons.account_tree_sharp, + 'account_tree_rounded': Icons.account_tree_rounded, + 'account_tree_outlined': Icons.account_tree_outlined, + 'ad_units': Icons.ad_units, + 'ad_units_sharp': Icons.ad_units_sharp, + 'ad_units_rounded': Icons.ad_units_rounded, + 'ad_units_outlined': Icons.ad_units_outlined, + 'adb': Icons.adb, + 'adb_sharp': Icons.adb_sharp, + 'adb_rounded': Icons.adb_rounded, + 'adb_outlined': Icons.adb_outlined, + 'add': Icons.add, + 'add_sharp': Icons.add_sharp, + 'add_rounded': Icons.add_rounded, + 'add_outlined': Icons.add_outlined, + 'add_a_photo': Icons.add_a_photo, + 'add_a_photo_sharp': Icons.add_a_photo_sharp, + 'add_a_photo_rounded': Icons.add_a_photo_rounded, + 'add_a_photo_outlined': Icons.add_a_photo_outlined, + 'add_alarm': Icons.add_alarm, + 'add_alarm_sharp': Icons.add_alarm_sharp, + 'add_alarm_rounded': Icons.add_alarm_rounded, + 'add_alarm_outlined': Icons.add_alarm_outlined, + 'add_alert': Icons.add_alert, + 'add_alert_sharp': Icons.add_alert_sharp, + 'add_alert_rounded': Icons.add_alert_rounded, + 'add_alert_outlined': Icons.add_alert_outlined, + 'add_box': Icons.add_box, + 'add_box_sharp': Icons.add_box_sharp, + 'add_box_rounded': Icons.add_box_rounded, + 'add_box_outlined': Icons.add_box_outlined, + 'add_business': Icons.add_business, + 'add_business_sharp': Icons.add_business_sharp, + 'add_business_rounded': Icons.add_business_rounded, + 'add_business_outlined': Icons.add_business_outlined, + 'add_call': Icons.add_call, + 'add_chart': Icons.add_chart, + 'add_chart_sharp': Icons.add_chart_sharp, + 'add_chart_rounded': Icons.add_chart_rounded, + 'add_chart_outlined': Icons.add_chart_outlined, + 'add_circle': Icons.add_circle, + 'add_circle_sharp': Icons.add_circle_sharp, + 'add_circle_rounded': Icons.add_circle_rounded, + 'add_circle_outlined': Icons.add_circle_outlined, + 'add_circle_outline': Icons.add_circle_outline, + 'add_circle_outline_sharp': Icons.add_circle_outline_sharp, + 'add_circle_outline_rounded': Icons.add_circle_outline_rounded, + 'add_circle_outline_outlined': Icons.add_circle_outline_outlined, + 'add_comment': Icons.add_comment, + 'add_comment_sharp': Icons.add_comment_sharp, + 'add_comment_rounded': Icons.add_comment_rounded, + 'add_comment_outlined': Icons.add_comment_outlined, + 'add_ic_call': Icons.add_ic_call, + 'add_ic_call_sharp': Icons.add_ic_call_sharp, + 'add_ic_call_rounded': Icons.add_ic_call_rounded, + 'add_ic_call_outlined': Icons.add_ic_call_outlined, + 'add_link': Icons.add_link, + 'add_link_sharp': Icons.add_link_sharp, + 'add_link_rounded': Icons.add_link_rounded, + 'add_link_outlined': Icons.add_link_outlined, + 'add_location': Icons.add_location, + 'add_location_sharp': Icons.add_location_sharp, + 'add_location_rounded': Icons.add_location_rounded, + 'add_location_outlined': Icons.add_location_outlined, + 'add_location_alt': Icons.add_location_alt, + 'add_location_alt_sharp': Icons.add_location_alt_sharp, + 'add_location_alt_rounded': Icons.add_location_alt_rounded, + 'add_location_alt_outlined': Icons.add_location_alt_outlined, + 'add_moderator': Icons.add_moderator, + 'add_moderator_sharp': Icons.add_moderator_sharp, + 'add_moderator_rounded': Icons.add_moderator_rounded, + 'add_moderator_outlined': Icons.add_moderator_outlined, + 'add_photo_alternate': Icons.add_photo_alternate, + 'add_photo_alternate_sharp': Icons.add_photo_alternate_sharp, + 'add_photo_alternate_rounded': Icons.add_photo_alternate_rounded, + 'add_photo_alternate_outlined': Icons.add_photo_alternate_outlined, + 'add_reaction': Icons.add_reaction, + 'add_reaction_sharp': Icons.add_reaction_sharp, + 'add_reaction_rounded': Icons.add_reaction_rounded, + 'add_reaction_outlined': Icons.add_reaction_outlined, + 'add_road': Icons.add_road, + 'add_road_sharp': Icons.add_road_sharp, + 'add_road_rounded': Icons.add_road_rounded, + 'add_road_outlined': Icons.add_road_outlined, + 'add_shopping_cart': Icons.add_shopping_cart, + 'add_shopping_cart_sharp': Icons.add_shopping_cart_sharp, + 'add_shopping_cart_rounded': Icons.add_shopping_cart_rounded, + 'add_shopping_cart_outlined': Icons.add_shopping_cart_outlined, + 'add_task': Icons.add_task, + 'add_task_sharp': Icons.add_task_sharp, + 'add_task_rounded': Icons.add_task_rounded, + 'add_task_outlined': Icons.add_task_outlined, + 'add_to_drive': Icons.add_to_drive, + 'add_to_drive_sharp': Icons.add_to_drive_sharp, + 'add_to_drive_rounded': Icons.add_to_drive_rounded, + 'add_to_drive_outlined': Icons.add_to_drive_outlined, + 'add_to_home_screen': Icons.add_to_home_screen, + 'add_to_home_screen_sharp': Icons.add_to_home_screen_sharp, + 'add_to_home_screen_rounded': Icons.add_to_home_screen_rounded, + 'add_to_home_screen_outlined': Icons.add_to_home_screen_outlined, + 'add_to_photos': Icons.add_to_photos, + 'add_to_photos_sharp': Icons.add_to_photos_sharp, + 'add_to_photos_rounded': Icons.add_to_photos_rounded, + 'add_to_photos_outlined': Icons.add_to_photos_outlined, + 'add_to_queue': Icons.add_to_queue, + 'add_to_queue_sharp': Icons.add_to_queue_sharp, + 'add_to_queue_rounded': Icons.add_to_queue_rounded, + 'add_to_queue_outlined': Icons.add_to_queue_outlined, + 'addchart': Icons.addchart, + 'addchart_sharp': Icons.addchart_sharp, + 'addchart_rounded': Icons.addchart_rounded, + 'addchart_outlined': Icons.addchart_outlined, + 'adjust': Icons.adjust, + 'adjust_sharp': Icons.adjust_sharp, + 'adjust_rounded': Icons.adjust_rounded, + 'adjust_outlined': Icons.adjust_outlined, + 'admin_panel_settings': Icons.admin_panel_settings, + 'admin_panel_settings_sharp': Icons.admin_panel_settings_sharp, + 'admin_panel_settings_rounded': Icons.admin_panel_settings_rounded, + 'admin_panel_settings_outlined': Icons.admin_panel_settings_outlined, + 'agriculture': Icons.agriculture, + 'agriculture_sharp': Icons.agriculture_sharp, + 'agriculture_rounded': Icons.agriculture_rounded, + 'agriculture_outlined': Icons.agriculture_outlined, + 'air': Icons.air, + 'air_sharp': Icons.air_sharp, + 'air_rounded': Icons.air_rounded, + 'air_outlined': Icons.air_outlined, + 'airline_seat_flat': Icons.airline_seat_flat, + 'airline_seat_flat_sharp': Icons.airline_seat_flat_sharp, + 'airline_seat_flat_rounded': Icons.airline_seat_flat_rounded, + 'airline_seat_flat_outlined': Icons.airline_seat_flat_outlined, + 'airline_seat_flat_angled': Icons.airline_seat_flat_angled, + 'airline_seat_flat_angled_sharp': Icons.airline_seat_flat_angled_sharp, + 'airline_seat_flat_angled_rounded': + Icons.airline_seat_flat_angled_rounded, + 'airline_seat_flat_angled_outlined': + Icons.airline_seat_flat_angled_outlined, + 'airline_seat_individual_suite': Icons.airline_seat_individual_suite, + 'airline_seat_individual_suite_sharp': + Icons.airline_seat_individual_suite_sharp, + 'airline_seat_individual_suite_rounded': + Icons.airline_seat_individual_suite_rounded, + 'airline_seat_individual_suite_outlined': + Icons.airline_seat_individual_suite_outlined, + 'airline_seat_legroom_extra': Icons.airline_seat_legroom_extra, + 'airline_seat_legroom_extra_sharp': + Icons.airline_seat_legroom_extra_sharp, + 'airline_seat_legroom_extra_rounded': + Icons.airline_seat_legroom_extra_rounded, + 'airline_seat_legroom_extra_outlined': + Icons.airline_seat_legroom_extra_outlined, + 'airline_seat_legroom_normal': Icons.airline_seat_legroom_normal, + 'airline_seat_legroom_normal_sharp': + Icons.airline_seat_legroom_normal_sharp, + 'airline_seat_legroom_normal_rounded': + Icons.airline_seat_legroom_normal_rounded, + 'airline_seat_legroom_normal_outlined': + Icons.airline_seat_legroom_normal_outlined, + 'airline_seat_legroom_reduced': Icons.airline_seat_legroom_reduced, + 'airline_seat_legroom_reduced_sharp': + Icons.airline_seat_legroom_reduced_sharp, + 'airline_seat_legroom_reduced_rounded': + Icons.airline_seat_legroom_reduced_rounded, + 'airline_seat_legroom_reduced_outlined': + Icons.airline_seat_legroom_reduced_outlined, + 'airline_seat_recline_extra': Icons.airline_seat_recline_extra, + 'airline_seat_recline_extra_sharp': + Icons.airline_seat_recline_extra_sharp, + 'airline_seat_recline_extra_rounded': + Icons.airline_seat_recline_extra_rounded, + 'airline_seat_recline_extra_outlined': + Icons.airline_seat_recline_extra_outlined, + 'airline_seat_recline_normal': Icons.airline_seat_recline_normal, + 'airline_seat_recline_normal_sharp': + Icons.airline_seat_recline_normal_sharp, + 'airline_seat_recline_normal_rounded': + Icons.airline_seat_recline_normal_rounded, + 'airline_seat_recline_normal_outlined': + Icons.airline_seat_recline_normal_outlined, + 'airplane_ticket': Icons.airplane_ticket, + 'airplane_ticket_sharp': Icons.airplane_ticket_sharp, + 'airplane_ticket_rounded': Icons.airplane_ticket_rounded, + 'airplane_ticket_outlined': Icons.airplane_ticket_outlined, + 'airplanemode_active': Icons.airplanemode_active, + 'airplanemode_active_sharp': Icons.airplanemode_active_sharp, + 'airplanemode_active_rounded': Icons.airplanemode_active_rounded, + 'airplanemode_active_outlined': Icons.airplanemode_active_outlined, + 'airplanemode_inactive': Icons.airplanemode_inactive, + 'airplanemode_inactive_sharp': Icons.airplanemode_inactive_sharp, + 'airplanemode_inactive_rounded': Icons.airplanemode_inactive_rounded, + 'airplanemode_inactive_outlined': Icons.airplanemode_inactive_outlined, + 'airplanemode_off': Icons.airplanemode_off, + 'airplanemode_off_sharp': Icons.airplanemode_off_sharp, + 'airplanemode_off_rounded': Icons.airplanemode_off_rounded, + 'airplanemode_off_outlined': Icons.airplanemode_off_outlined, + 'airplanemode_on': Icons.airplanemode_on, + 'airplanemode_on_sharp': Icons.airplanemode_on_sharp, + 'airplanemode_on_rounded': Icons.airplanemode_on_rounded, + 'airplanemode_on_outlined': Icons.airplanemode_on_outlined, + 'airplay': Icons.airplay, + 'airplay_sharp': Icons.airplay_sharp, + 'airplay_rounded': Icons.airplay_rounded, + 'airplay_outlined': Icons.airplay_outlined, + 'airport_shuttle': Icons.airport_shuttle, + 'airport_shuttle_sharp': Icons.airport_shuttle_sharp, + 'airport_shuttle_rounded': Icons.airport_shuttle_rounded, + 'airport_shuttle_outlined': Icons.airport_shuttle_outlined, + 'alarm': Icons.alarm, + 'alarm_sharp': Icons.alarm_sharp, + 'alarm_rounded': Icons.alarm_rounded, + 'alarm_outlined': Icons.alarm_outlined, + 'alarm_add': Icons.alarm_add, + 'alarm_add_sharp': Icons.alarm_add_sharp, + 'alarm_add_rounded': Icons.alarm_add_rounded, + 'alarm_add_outlined': Icons.alarm_add_outlined, + 'alarm_off': Icons.alarm_off, + 'alarm_off_sharp': Icons.alarm_off_sharp, + 'alarm_off_rounded': Icons.alarm_off_rounded, + 'alarm_off_outlined': Icons.alarm_off_outlined, + 'alarm_on': Icons.alarm_on, + 'alarm_on_sharp': Icons.alarm_on_sharp, + 'alarm_on_rounded': Icons.alarm_on_rounded, + 'alarm_on_outlined': Icons.alarm_on_outlined, + 'album': Icons.album, + 'album_sharp': Icons.album_sharp, + 'album_rounded': Icons.album_rounded, + 'album_outlined': Icons.album_outlined, + 'align_horizontal_center': Icons.align_horizontal_center, + 'align_horizontal_center_sharp': Icons.align_horizontal_center_sharp, + 'align_horizontal_center_rounded': + Icons.align_horizontal_center_rounded, + 'align_horizontal_center_outlined': + Icons.align_horizontal_center_outlined, + 'align_horizontal_left': Icons.align_horizontal_left, + 'align_horizontal_left_sharp': Icons.align_horizontal_left_sharp, + 'align_horizontal_left_rounded': Icons.align_horizontal_left_rounded, + 'align_horizontal_left_outlined': Icons.align_horizontal_left_outlined, + 'align_horizontal_right': Icons.align_horizontal_right, + 'align_horizontal_right_sharp': Icons.align_horizontal_right_sharp, + 'align_horizontal_right_rounded': Icons.align_horizontal_right_rounded, + 'align_horizontal_right_outlined': + Icons.align_horizontal_right_outlined, + 'align_vertical_bottom': Icons.align_vertical_bottom, + 'align_vertical_bottom_sharp': Icons.align_vertical_bottom_sharp, + 'align_vertical_bottom_rounded': Icons.align_vertical_bottom_rounded, + 'align_vertical_bottom_outlined': Icons.align_vertical_bottom_outlined, + 'align_vertical_center': Icons.align_vertical_center, + 'align_vertical_center_sharp': Icons.align_vertical_center_sharp, + 'align_vertical_center_rounded': Icons.align_vertical_center_rounded, + 'align_vertical_center_outlined': Icons.align_vertical_center_outlined, + 'align_vertical_top': Icons.align_vertical_top, + 'align_vertical_top_sharp': Icons.align_vertical_top_sharp, + 'align_vertical_top_rounded': Icons.align_vertical_top_rounded, + 'align_vertical_top_outlined': Icons.align_vertical_top_outlined, + 'all_inbox': Icons.all_inbox, + 'all_inbox_sharp': Icons.all_inbox_sharp, + 'all_inbox_rounded': Icons.all_inbox_rounded, + 'all_inbox_outlined': Icons.all_inbox_outlined, + 'all_inclusive': Icons.all_inclusive, + 'all_inclusive_sharp': Icons.all_inclusive_sharp, + 'all_inclusive_rounded': Icons.all_inclusive_rounded, + 'all_inclusive_outlined': Icons.all_inclusive_outlined, + 'all_out': Icons.all_out, + 'all_out_sharp': Icons.all_out_sharp, + 'all_out_rounded': Icons.all_out_rounded, + 'all_out_outlined': Icons.all_out_outlined, + 'alt_route': Icons.alt_route, + 'alt_route_sharp': Icons.alt_route_sharp, + 'alt_route_rounded': Icons.alt_route_rounded, + 'alt_route_outlined': Icons.alt_route_outlined, + 'alternate_email': Icons.alternate_email, + 'alternate_email_sharp': Icons.alternate_email_sharp, + 'alternate_email_rounded': Icons.alternate_email_rounded, + 'alternate_email_outlined': Icons.alternate_email_outlined, + 'amp_stories': Icons.amp_stories, + 'amp_stories_sharp': Icons.amp_stories_sharp, + 'amp_stories_rounded': Icons.amp_stories_rounded, + 'amp_stories_outlined': Icons.amp_stories_outlined, + 'analytics': Icons.analytics, + 'analytics_sharp': Icons.analytics_sharp, + 'analytics_rounded': Icons.analytics_rounded, + 'analytics_outlined': Icons.analytics_outlined, + 'anchor': Icons.anchor, + 'anchor_sharp': Icons.anchor_sharp, + 'anchor_rounded': Icons.anchor_rounded, + 'anchor_outlined': Icons.anchor_outlined, + 'android': Icons.android, + 'android_sharp': Icons.android_sharp, + 'android_rounded': Icons.android_rounded, + 'android_outlined': Icons.android_outlined, + 'animation': Icons.animation, + 'animation_sharp': Icons.animation_sharp, + 'animation_rounded': Icons.animation_rounded, + 'animation_outlined': Icons.animation_outlined, + 'announcement': Icons.announcement, + 'announcement_sharp': Icons.announcement_sharp, + 'announcement_rounded': Icons.announcement_rounded, + 'announcement_outlined': Icons.announcement_outlined, + 'aod': Icons.aod, + 'aod_sharp': Icons.aod_sharp, + 'aod_rounded': Icons.aod_rounded, + 'aod_outlined': Icons.aod_outlined, + 'apartment': Icons.apartment, + 'apartment_sharp': Icons.apartment_sharp, + 'apartment_rounded': Icons.apartment_rounded, + 'apartment_outlined': Icons.apartment_outlined, + 'api': Icons.api, + 'api_sharp': Icons.api_sharp, + 'api_rounded': Icons.api_rounded, + 'api_outlined': Icons.api_outlined, + 'app_blocking': Icons.app_blocking, + 'app_blocking_sharp': Icons.app_blocking_sharp, + 'app_blocking_rounded': Icons.app_blocking_rounded, + 'app_blocking_outlined': Icons.app_blocking_outlined, + 'app_registration': Icons.app_registration, + 'app_registration_sharp': Icons.app_registration_sharp, + 'app_registration_rounded': Icons.app_registration_rounded, + 'app_registration_outlined': Icons.app_registration_outlined, + 'app_settings_alt': Icons.app_settings_alt, + 'app_settings_alt_sharp': Icons.app_settings_alt_sharp, + 'app_settings_alt_rounded': Icons.app_settings_alt_rounded, + 'app_settings_alt_outlined': Icons.app_settings_alt_outlined, + 'approval': Icons.approval, + 'approval_sharp': Icons.approval_sharp, + 'approval_rounded': Icons.approval_rounded, + 'approval_outlined': Icons.approval_outlined, + 'apps': Icons.apps, + 'apps_sharp': Icons.apps_sharp, + 'apps_rounded': Icons.apps_rounded, + 'apps_outlined': Icons.apps_outlined, + 'architecture': Icons.architecture, + 'architecture_sharp': Icons.architecture_sharp, + 'architecture_rounded': Icons.architecture_rounded, + 'architecture_outlined': Icons.architecture_outlined, + 'archive': Icons.archive, + 'archive_sharp': Icons.archive_sharp, + 'archive_rounded': Icons.archive_rounded, + 'archive_outlined': Icons.archive_outlined, + 'arrow_back': Icons.arrow_back, + 'arrow_back_sharp': Icons.arrow_back_sharp, + 'arrow_back_rounded': Icons.arrow_back_rounded, + 'arrow_back_outlined': Icons.arrow_back_outlined, + 'arrow_back_ios': Icons.arrow_back_ios, + 'arrow_back_ios_sharp': Icons.arrow_back_ios_sharp, + 'arrow_back_ios_rounded': Icons.arrow_back_ios_rounded, + 'arrow_back_ios_outlined': Icons.arrow_back_ios_outlined, + 'arrow_back_ios_new': Icons.arrow_back_ios_new, + 'arrow_back_ios_new_sharp': Icons.arrow_back_ios_new_sharp, + 'arrow_back_ios_new_rounded': Icons.arrow_back_ios_new_rounded, + 'arrow_back_ios_new_outlined': Icons.arrow_back_ios_new_outlined, + 'arrow_circle_down': Icons.arrow_circle_down, + 'arrow_circle_down_sharp': Icons.arrow_circle_down_sharp, + 'arrow_circle_down_rounded': Icons.arrow_circle_down_rounded, + 'arrow_circle_down_outlined': Icons.arrow_circle_down_outlined, + 'arrow_circle_up': Icons.arrow_circle_up, + 'arrow_circle_up_sharp': Icons.arrow_circle_up_sharp, + 'arrow_circle_up_rounded': Icons.arrow_circle_up_rounded, + 'arrow_circle_up_outlined': Icons.arrow_circle_up_outlined, + 'arrow_downward': Icons.arrow_downward, + 'arrow_downward_sharp': Icons.arrow_downward_sharp, + 'arrow_downward_rounded': Icons.arrow_downward_rounded, + 'arrow_downward_outlined': Icons.arrow_downward_outlined, + 'arrow_drop_down': Icons.arrow_drop_down, + 'arrow_drop_down_sharp': Icons.arrow_drop_down_sharp, + 'arrow_drop_down_rounded': Icons.arrow_drop_down_rounded, + 'arrow_drop_down_outlined': Icons.arrow_drop_down_outlined, + 'arrow_drop_down_circle': Icons.arrow_drop_down_circle, + 'arrow_drop_down_circle_sharp': Icons.arrow_drop_down_circle_sharp, + 'arrow_drop_down_circle_rounded': Icons.arrow_drop_down_circle_rounded, + 'arrow_drop_down_circle_outlined': + Icons.arrow_drop_down_circle_outlined, + 'arrow_drop_up': Icons.arrow_drop_up, + 'arrow_drop_up_sharp': Icons.arrow_drop_up_sharp, + 'arrow_drop_up_rounded': Icons.arrow_drop_up_rounded, + 'arrow_drop_up_outlined': Icons.arrow_drop_up_outlined, + 'arrow_forward': Icons.arrow_forward, + 'arrow_forward_sharp': Icons.arrow_forward_sharp, + 'arrow_forward_rounded': Icons.arrow_forward_rounded, + 'arrow_forward_outlined': Icons.arrow_forward_outlined, + 'arrow_forward_ios': Icons.arrow_forward_ios, + 'arrow_forward_ios_sharp': Icons.arrow_forward_ios_sharp, + 'arrow_forward_ios_rounded': Icons.arrow_forward_ios_rounded, + 'arrow_forward_ios_outlined': Icons.arrow_forward_ios_outlined, + 'arrow_left': Icons.arrow_left, + 'arrow_left_sharp': Icons.arrow_left_sharp, + 'arrow_left_rounded': Icons.arrow_left_rounded, + 'arrow_left_outlined': Icons.arrow_left_outlined, + 'arrow_right': Icons.arrow_right, + 'arrow_right_sharp': Icons.arrow_right_sharp, + 'arrow_right_rounded': Icons.arrow_right_rounded, + 'arrow_right_outlined': Icons.arrow_right_outlined, + 'arrow_right_alt': Icons.arrow_right_alt, + 'arrow_right_alt_sharp': Icons.arrow_right_alt_sharp, + 'arrow_right_alt_rounded': Icons.arrow_right_alt_rounded, + 'arrow_right_alt_outlined': Icons.arrow_right_alt_outlined, + 'arrow_upward': Icons.arrow_upward, + 'arrow_upward_sharp': Icons.arrow_upward_sharp, + 'arrow_upward_rounded': Icons.arrow_upward_rounded, + 'arrow_upward_outlined': Icons.arrow_upward_outlined, + 'art_track': Icons.art_track, + 'art_track_sharp': Icons.art_track_sharp, + 'art_track_rounded': Icons.art_track_rounded, + 'art_track_outlined': Icons.art_track_outlined, + 'article': Icons.article, + 'article_sharp': Icons.article_sharp, + 'article_rounded': Icons.article_rounded, + 'article_outlined': Icons.article_outlined, + 'aspect_ratio': Icons.aspect_ratio, + 'aspect_ratio_sharp': Icons.aspect_ratio_sharp, + 'aspect_ratio_rounded': Icons.aspect_ratio_rounded, + 'aspect_ratio_outlined': Icons.aspect_ratio_outlined, + 'assessment': Icons.assessment, + 'assessment_sharp': Icons.assessment_sharp, + 'assessment_rounded': Icons.assessment_rounded, + 'assessment_outlined': Icons.assessment_outlined, + 'assignment': Icons.assignment, + 'assignment_sharp': Icons.assignment_sharp, + 'assignment_rounded': Icons.assignment_rounded, + 'assignment_outlined': Icons.assignment_outlined, + 'assignment_ind': Icons.assignment_ind, + 'assignment_ind_sharp': Icons.assignment_ind_sharp, + 'assignment_ind_rounded': Icons.assignment_ind_rounded, + 'assignment_ind_outlined': Icons.assignment_ind_outlined, + 'assignment_late': Icons.assignment_late, + 'assignment_late_sharp': Icons.assignment_late_sharp, + 'assignment_late_rounded': Icons.assignment_late_rounded, + 'assignment_late_outlined': Icons.assignment_late_outlined, + 'assignment_return': Icons.assignment_return, + 'assignment_return_sharp': Icons.assignment_return_sharp, + 'assignment_return_rounded': Icons.assignment_return_rounded, + 'assignment_return_outlined': Icons.assignment_return_outlined, + 'assignment_returned': Icons.assignment_returned, + 'assignment_returned_sharp': Icons.assignment_returned_sharp, + 'assignment_returned_rounded': Icons.assignment_returned_rounded, + 'assignment_returned_outlined': Icons.assignment_returned_outlined, + 'assignment_turned_in': Icons.assignment_turned_in, + 'assignment_turned_in_sharp': Icons.assignment_turned_in_sharp, + 'assignment_turned_in_rounded': Icons.assignment_turned_in_rounded, + 'assignment_turned_in_outlined': Icons.assignment_turned_in_outlined, + 'assistant': Icons.assistant, + 'assistant_sharp': Icons.assistant_sharp, + 'assistant_rounded': Icons.assistant_rounded, + 'assistant_outlined': Icons.assistant_outlined, + 'assistant_direction': Icons.assistant_direction, + 'assistant_direction_sharp': Icons.assistant_direction_sharp, + 'assistant_direction_rounded': Icons.assistant_direction_rounded, + 'assistant_direction_outlined': Icons.assistant_direction_outlined, + 'assistant_navigation': Icons.assistant_navigation, + 'assistant_photo': Icons.assistant_photo, + 'assistant_photo_sharp': Icons.assistant_photo_sharp, + 'assistant_photo_rounded': Icons.assistant_photo_rounded, + 'assistant_photo_outlined': Icons.assistant_photo_outlined, + 'atm': Icons.atm, + 'atm_sharp': Icons.atm_sharp, + 'atm_rounded': Icons.atm_rounded, + 'atm_outlined': Icons.atm_outlined, + 'attach_email': Icons.attach_email, + 'attach_email_sharp': Icons.attach_email_sharp, + 'attach_email_rounded': Icons.attach_email_rounded, + 'attach_email_outlined': Icons.attach_email_outlined, + 'attach_file': Icons.attach_file, + 'attach_file_sharp': Icons.attach_file_sharp, + 'attach_file_rounded': Icons.attach_file_rounded, + 'attach_file_outlined': Icons.attach_file_outlined, + 'attach_money': Icons.attach_money, + 'attach_money_sharp': Icons.attach_money_sharp, + 'attach_money_rounded': Icons.attach_money_rounded, + 'attach_money_outlined': Icons.attach_money_outlined, + 'attachment': Icons.attachment, + 'attachment_sharp': Icons.attachment_sharp, + 'attachment_rounded': Icons.attachment_rounded, + 'attachment_outlined': Icons.attachment_outlined, + 'attractions': Icons.attractions, + 'attractions_sharp': Icons.attractions_sharp, + 'attractions_rounded': Icons.attractions_rounded, + 'attractions_outlined': Icons.attractions_outlined, + 'attribution': Icons.attribution, + 'attribution_sharp': Icons.attribution_sharp, + 'attribution_rounded': Icons.attribution_rounded, + 'attribution_outlined': Icons.attribution_outlined, + 'audiotrack': Icons.audiotrack, + 'audiotrack_sharp': Icons.audiotrack_sharp, + 'audiotrack_rounded': Icons.audiotrack_rounded, + 'audiotrack_outlined': Icons.audiotrack_outlined, + 'auto_awesome': Icons.auto_awesome, + 'auto_awesome_sharp': Icons.auto_awesome_sharp, + 'auto_awesome_rounded': Icons.auto_awesome_rounded, + 'auto_awesome_outlined': Icons.auto_awesome_outlined, + 'auto_awesome_mosaic': Icons.auto_awesome_mosaic, + 'auto_awesome_mosaic_sharp': Icons.auto_awesome_mosaic_sharp, + 'auto_awesome_mosaic_rounded': Icons.auto_awesome_mosaic_rounded, + 'auto_awesome_mosaic_outlined': Icons.auto_awesome_mosaic_outlined, + 'auto_awesome_motion': Icons.auto_awesome_motion, + 'auto_awesome_motion_sharp': Icons.auto_awesome_motion_sharp, + 'auto_awesome_motion_rounded': Icons.auto_awesome_motion_rounded, + 'auto_awesome_motion_outlined': Icons.auto_awesome_motion_outlined, + 'auto_delete': Icons.auto_delete, + 'auto_delete_sharp': Icons.auto_delete_sharp, + 'auto_delete_rounded': Icons.auto_delete_rounded, + 'auto_delete_outlined': Icons.auto_delete_outlined, + 'auto_fix_high': Icons.auto_fix_high, + 'auto_fix_high_sharp': Icons.auto_fix_high_sharp, + 'auto_fix_high_rounded': Icons.auto_fix_high_rounded, + 'auto_fix_high_outlined': Icons.auto_fix_high_outlined, + 'auto_fix_normal': Icons.auto_fix_normal, + 'auto_fix_normal_sharp': Icons.auto_fix_normal_sharp, + 'auto_fix_normal_rounded': Icons.auto_fix_normal_rounded, + 'auto_fix_normal_outlined': Icons.auto_fix_normal_outlined, + 'auto_fix_off': Icons.auto_fix_off, + 'auto_fix_off_sharp': Icons.auto_fix_off_sharp, + 'auto_fix_off_rounded': Icons.auto_fix_off_rounded, + 'auto_fix_off_outlined': Icons.auto_fix_off_outlined, + 'auto_graph': Icons.auto_graph, + 'auto_graph_sharp': Icons.auto_graph_sharp, + 'auto_graph_rounded': Icons.auto_graph_rounded, + 'auto_graph_outlined': Icons.auto_graph_outlined, + 'auto_stories': Icons.auto_stories, + 'auto_stories_sharp': Icons.auto_stories_sharp, + 'auto_stories_rounded': Icons.auto_stories_rounded, + 'auto_stories_outlined': Icons.auto_stories_outlined, + 'autofps_select': Icons.autofps_select, + 'autofps_select_sharp': Icons.autofps_select_sharp, + 'autofps_select_rounded': Icons.autofps_select_rounded, + 'autofps_select_outlined': Icons.autofps_select_outlined, + 'autorenew': Icons.autorenew, + 'autorenew_sharp': Icons.autorenew_sharp, + 'autorenew_rounded': Icons.autorenew_rounded, + 'autorenew_outlined': Icons.autorenew_outlined, + 'av_timer': Icons.av_timer, + 'av_timer_sharp': Icons.av_timer_sharp, + 'av_timer_rounded': Icons.av_timer_rounded, + 'av_timer_outlined': Icons.av_timer_outlined, + 'baby_changing_station': Icons.baby_changing_station, + 'baby_changing_station_sharp': Icons.baby_changing_station_sharp, + 'baby_changing_station_rounded': Icons.baby_changing_station_rounded, + 'baby_changing_station_outlined': Icons.baby_changing_station_outlined, + 'backpack': Icons.backpack, + 'backpack_sharp': Icons.backpack_sharp, + 'backpack_rounded': Icons.backpack_rounded, + 'backpack_outlined': Icons.backpack_outlined, + 'backspace': Icons.backspace, + 'backspace_sharp': Icons.backspace_sharp, + 'backspace_rounded': Icons.backspace_rounded, + 'backspace_outlined': Icons.backspace_outlined, + 'backup': Icons.backup, + 'backup_sharp': Icons.backup_sharp, + 'backup_rounded': Icons.backup_rounded, + 'backup_outlined': Icons.backup_outlined, + 'backup_table': Icons.backup_table, + 'backup_table_sharp': Icons.backup_table_sharp, + 'backup_table_rounded': Icons.backup_table_rounded, + 'backup_table_outlined': Icons.backup_table_outlined, + 'badge': Icons.badge, + 'badge_sharp': Icons.badge_sharp, + 'badge_rounded': Icons.badge_rounded, + 'badge_outlined': Icons.badge_outlined, + 'bakery_dining': Icons.bakery_dining, + 'bakery_dining_sharp': Icons.bakery_dining_sharp, + 'bakery_dining_rounded': Icons.bakery_dining_rounded, + 'bakery_dining_outlined': Icons.bakery_dining_outlined, + 'balcony': Icons.balcony, + 'balcony_sharp': Icons.balcony_sharp, + 'balcony_rounded': Icons.balcony_rounded, + 'balcony_outlined': Icons.balcony_outlined, + 'ballot': Icons.ballot, + 'ballot_sharp': Icons.ballot_sharp, + 'ballot_rounded': Icons.ballot_rounded, + 'ballot_outlined': Icons.ballot_outlined, + 'bar_chart': Icons.bar_chart, + 'bar_chart_sharp': Icons.bar_chart_sharp, + 'bar_chart_rounded': Icons.bar_chart_rounded, + 'bar_chart_outlined': Icons.bar_chart_outlined, + 'batch_prediction': Icons.batch_prediction, + 'batch_prediction_sharp': Icons.batch_prediction_sharp, + 'batch_prediction_rounded': Icons.batch_prediction_rounded, + 'batch_prediction_outlined': Icons.batch_prediction_outlined, + 'bathroom': Icons.bathroom, + 'bathroom_sharp': Icons.bathroom_sharp, + 'bathroom_rounded': Icons.bathroom_rounded, + 'bathroom_outlined': Icons.bathroom_outlined, + 'bathtub': Icons.bathtub, + 'bathtub_sharp': Icons.bathtub_sharp, + 'bathtub_rounded': Icons.bathtub_rounded, + 'bathtub_outlined': Icons.bathtub_outlined, + 'battery_alert': Icons.battery_alert, + 'battery_alert_sharp': Icons.battery_alert_sharp, + 'battery_alert_rounded': Icons.battery_alert_rounded, + 'battery_alert_outlined': Icons.battery_alert_outlined, + 'battery_charging_full': Icons.battery_charging_full, + 'battery_charging_full_sharp': Icons.battery_charging_full_sharp, + 'battery_charging_full_rounded': Icons.battery_charging_full_rounded, + 'battery_charging_full_outlined': Icons.battery_charging_full_outlined, + 'battery_full': Icons.battery_full, + 'battery_full_sharp': Icons.battery_full_sharp, + 'battery_full_rounded': Icons.battery_full_rounded, + 'battery_full_outlined': Icons.battery_full_outlined, + 'battery_saver': Icons.battery_saver, + 'battery_saver_sharp': Icons.battery_saver_sharp, + 'battery_saver_rounded': Icons.battery_saver_rounded, + 'battery_saver_outlined': Icons.battery_saver_outlined, + 'battery_std': Icons.battery_std, + 'battery_std_sharp': Icons.battery_std_sharp, + 'battery_std_rounded': Icons.battery_std_rounded, + 'battery_std_outlined': Icons.battery_std_outlined, + 'battery_unknown': Icons.battery_unknown, + 'battery_unknown_sharp': Icons.battery_unknown_sharp, + 'battery_unknown_rounded': Icons.battery_unknown_rounded, + 'battery_unknown_outlined': Icons.battery_unknown_outlined, + 'beach_access': Icons.beach_access, + 'beach_access_sharp': Icons.beach_access_sharp, + 'beach_access_rounded': Icons.beach_access_rounded, + 'beach_access_outlined': Icons.beach_access_outlined, + 'bed': Icons.bed, + 'bed_sharp': Icons.bed_sharp, + 'bed_rounded': Icons.bed_rounded, + 'bed_outlined': Icons.bed_outlined, + 'bedroom_baby': Icons.bedroom_baby, + 'bedroom_baby_sharp': Icons.bedroom_baby_sharp, + 'bedroom_baby_rounded': Icons.bedroom_baby_rounded, + 'bedroom_baby_outlined': Icons.bedroom_baby_outlined, + 'bedroom_child': Icons.bedroom_child, + 'bedroom_child_sharp': Icons.bedroom_child_sharp, + 'bedroom_child_rounded': Icons.bedroom_child_rounded, + 'bedroom_child_outlined': Icons.bedroom_child_outlined, + 'bedroom_parent': Icons.bedroom_parent, + 'bedroom_parent_sharp': Icons.bedroom_parent_sharp, + 'bedroom_parent_rounded': Icons.bedroom_parent_rounded, + 'bedroom_parent_outlined': Icons.bedroom_parent_outlined, + 'bedtime': Icons.bedtime, + 'bedtime_sharp': Icons.bedtime_sharp, + 'bedtime_rounded': Icons.bedtime_rounded, + 'bedtime_outlined': Icons.bedtime_outlined, + 'beenhere': Icons.beenhere, + 'beenhere_sharp': Icons.beenhere_sharp, + 'beenhere_rounded': Icons.beenhere_rounded, + 'beenhere_outlined': Icons.beenhere_outlined, + 'bento': Icons.bento, + 'bento_sharp': Icons.bento_sharp, + 'bento_rounded': Icons.bento_rounded, + 'bento_outlined': Icons.bento_outlined, + 'bike_scooter': Icons.bike_scooter, + 'bike_scooter_sharp': Icons.bike_scooter_sharp, + 'bike_scooter_rounded': Icons.bike_scooter_rounded, + 'bike_scooter_outlined': Icons.bike_scooter_outlined, + 'biotech': Icons.biotech, + 'biotech_sharp': Icons.biotech_sharp, + 'biotech_rounded': Icons.biotech_rounded, + 'biotech_outlined': Icons.biotech_outlined, + 'blender': Icons.blender, + 'blender_sharp': Icons.blender_sharp, + 'blender_rounded': Icons.blender_rounded, + 'blender_outlined': Icons.blender_outlined, + 'block': Icons.block, + 'block_sharp': Icons.block_sharp, + 'block_rounded': Icons.block_rounded, + 'block_outlined': Icons.block_outlined, + 'block_flipped': Icons.block_flipped, + 'bloodtype': Icons.bloodtype, + 'bloodtype_sharp': Icons.bloodtype_sharp, + 'bloodtype_rounded': Icons.bloodtype_rounded, + 'bloodtype_outlined': Icons.bloodtype_outlined, + 'bluetooth': Icons.bluetooth, + 'bluetooth_sharp': Icons.bluetooth_sharp, + 'bluetooth_rounded': Icons.bluetooth_rounded, + 'bluetooth_outlined': Icons.bluetooth_outlined, + 'bluetooth_audio': Icons.bluetooth_audio, + 'bluetooth_audio_sharp': Icons.bluetooth_audio_sharp, + 'bluetooth_audio_rounded': Icons.bluetooth_audio_rounded, + 'bluetooth_audio_outlined': Icons.bluetooth_audio_outlined, + 'bluetooth_connected': Icons.bluetooth_connected, + 'bluetooth_connected_sharp': Icons.bluetooth_connected_sharp, + 'bluetooth_connected_rounded': Icons.bluetooth_connected_rounded, + 'bluetooth_connected_outlined': Icons.bluetooth_connected_outlined, + 'bluetooth_disabled': Icons.bluetooth_disabled, + 'bluetooth_disabled_sharp': Icons.bluetooth_disabled_sharp, + 'bluetooth_disabled_rounded': Icons.bluetooth_disabled_rounded, + 'bluetooth_disabled_outlined': Icons.bluetooth_disabled_outlined, + 'bluetooth_drive': Icons.bluetooth_drive, + 'bluetooth_drive_sharp': Icons.bluetooth_drive_sharp, + 'bluetooth_drive_rounded': Icons.bluetooth_drive_rounded, + 'bluetooth_drive_outlined': Icons.bluetooth_drive_outlined, + 'bluetooth_searching': Icons.bluetooth_searching, + 'bluetooth_searching_sharp': Icons.bluetooth_searching_sharp, + 'bluetooth_searching_rounded': Icons.bluetooth_searching_rounded, + 'bluetooth_searching_outlined': Icons.bluetooth_searching_outlined, + 'blur_circular': Icons.blur_circular, + 'blur_circular_sharp': Icons.blur_circular_sharp, + 'blur_circular_rounded': Icons.blur_circular_rounded, + 'blur_circular_outlined': Icons.blur_circular_outlined, + 'blur_linear': Icons.blur_linear, + 'blur_linear_sharp': Icons.blur_linear_sharp, + 'blur_linear_rounded': Icons.blur_linear_rounded, + 'blur_linear_outlined': Icons.blur_linear_outlined, + 'blur_off': Icons.blur_off, + 'blur_off_sharp': Icons.blur_off_sharp, + 'blur_off_rounded': Icons.blur_off_rounded, + 'blur_off_outlined': Icons.blur_off_outlined, + 'blur_on': Icons.blur_on, + 'blur_on_sharp': Icons.blur_on_sharp, + 'blur_on_rounded': Icons.blur_on_rounded, + 'blur_on_outlined': Icons.blur_on_outlined, + 'bolt': Icons.bolt, + 'bolt_sharp': Icons.bolt_sharp, + 'bolt_rounded': Icons.bolt_rounded, + 'bolt_outlined': Icons.bolt_outlined, + 'book': Icons.book, + 'book_sharp': Icons.book_sharp, + 'book_rounded': Icons.book_rounded, + 'book_outlined': Icons.book_outlined, + 'book_online': Icons.book_online, + 'book_online_sharp': Icons.book_online_sharp, + 'book_online_rounded': Icons.book_online_rounded, + 'book_online_outlined': Icons.book_online_outlined, + 'bookmark': Icons.bookmark, + 'bookmark_sharp': Icons.bookmark_sharp, + 'bookmark_rounded': Icons.bookmark_rounded, + 'bookmark_outlined': Icons.bookmark_outlined, + 'bookmark_add': Icons.bookmark_add, + 'bookmark_add_sharp': Icons.bookmark_add_sharp, + 'bookmark_add_rounded': Icons.bookmark_add_rounded, + 'bookmark_add_outlined': Icons.bookmark_add_outlined, + 'bookmark_added': Icons.bookmark_added, + 'bookmark_added_sharp': Icons.bookmark_added_sharp, + 'bookmark_added_rounded': Icons.bookmark_added_rounded, + 'bookmark_added_outlined': Icons.bookmark_added_outlined, + 'bookmark_border': Icons.bookmark_border, + 'bookmark_border_sharp': Icons.bookmark_border_sharp, + 'bookmark_border_rounded': Icons.bookmark_border_rounded, + 'bookmark_border_outlined': Icons.bookmark_border_outlined, + 'bookmark_outline': Icons.bookmark_outline, + 'bookmark_outline_sharp': Icons.bookmark_outline_sharp, + 'bookmark_outline_rounded': Icons.bookmark_outline_rounded, + 'bookmark_outline_outlined': Icons.bookmark_outline_outlined, + 'bookmark_remove': Icons.bookmark_remove, + 'bookmark_remove_sharp': Icons.bookmark_remove_sharp, + 'bookmark_remove_rounded': Icons.bookmark_remove_rounded, + 'bookmark_remove_outlined': Icons.bookmark_remove_outlined, + 'bookmarks': Icons.bookmarks, + 'bookmarks_sharp': Icons.bookmarks_sharp, + 'bookmarks_rounded': Icons.bookmarks_rounded, + 'bookmarks_outlined': Icons.bookmarks_outlined, + 'border_all': Icons.border_all, + 'border_all_sharp': Icons.border_all_sharp, + 'border_all_rounded': Icons.border_all_rounded, + 'border_all_outlined': Icons.border_all_outlined, + 'border_bottom': Icons.border_bottom, + 'border_bottom_sharp': Icons.border_bottom_sharp, + 'border_bottom_rounded': Icons.border_bottom_rounded, + 'border_bottom_outlined': Icons.border_bottom_outlined, + 'border_clear': Icons.border_clear, + 'border_clear_sharp': Icons.border_clear_sharp, + 'border_clear_rounded': Icons.border_clear_rounded, + 'border_clear_outlined': Icons.border_clear_outlined, + 'border_color': Icons.border_color, + 'border_color_sharp': Icons.border_color_sharp, + 'border_color_rounded': Icons.border_color_rounded, + 'border_color_outlined': Icons.border_color_outlined, + 'border_horizontal': Icons.border_horizontal, + 'border_horizontal_sharp': Icons.border_horizontal_sharp, + 'border_horizontal_rounded': Icons.border_horizontal_rounded, + 'border_horizontal_outlined': Icons.border_horizontal_outlined, + 'border_inner': Icons.border_inner, + 'border_inner_sharp': Icons.border_inner_sharp, + 'border_inner_rounded': Icons.border_inner_rounded, + 'border_inner_outlined': Icons.border_inner_outlined, + 'border_left': Icons.border_left, + 'border_left_sharp': Icons.border_left_sharp, + 'border_left_rounded': Icons.border_left_rounded, + 'border_left_outlined': Icons.border_left_outlined, + 'border_outer': Icons.border_outer, + 'border_outer_sharp': Icons.border_outer_sharp, + 'border_outer_rounded': Icons.border_outer_rounded, + 'border_outer_outlined': Icons.border_outer_outlined, + 'border_right': Icons.border_right, + 'border_right_sharp': Icons.border_right_sharp, + 'border_right_rounded': Icons.border_right_rounded, + 'border_right_outlined': Icons.border_right_outlined, + 'border_style': Icons.border_style, + 'border_style_sharp': Icons.border_style_sharp, + 'border_style_rounded': Icons.border_style_rounded, + 'border_style_outlined': Icons.border_style_outlined, + 'border_top': Icons.border_top, + 'border_top_sharp': Icons.border_top_sharp, + 'border_top_rounded': Icons.border_top_rounded, + 'border_top_outlined': Icons.border_top_outlined, + 'border_vertical': Icons.border_vertical, + 'border_vertical_sharp': Icons.border_vertical_sharp, + 'border_vertical_rounded': Icons.border_vertical_rounded, + 'border_vertical_outlined': Icons.border_vertical_outlined, + 'branding_watermark': Icons.branding_watermark, + 'branding_watermark_sharp': Icons.branding_watermark_sharp, + 'branding_watermark_rounded': Icons.branding_watermark_rounded, + 'branding_watermark_outlined': Icons.branding_watermark_outlined, + 'breakfast_dining': Icons.breakfast_dining, + 'breakfast_dining_sharp': Icons.breakfast_dining_sharp, + 'breakfast_dining_rounded': Icons.breakfast_dining_rounded, + 'breakfast_dining_outlined': Icons.breakfast_dining_outlined, + 'brightness_1': Icons.brightness_1, + 'brightness_1_sharp': Icons.brightness_1_sharp, + 'brightness_1_rounded': Icons.brightness_1_rounded, + 'brightness_1_outlined': Icons.brightness_1_outlined, + 'brightness_2': Icons.brightness_2, + 'brightness_2_sharp': Icons.brightness_2_sharp, + 'brightness_2_rounded': Icons.brightness_2_rounded, + 'brightness_2_outlined': Icons.brightness_2_outlined, + 'brightness_3': Icons.brightness_3, + 'brightness_3_sharp': Icons.brightness_3_sharp, + 'brightness_3_rounded': Icons.brightness_3_rounded, + 'brightness_3_outlined': Icons.brightness_3_outlined, + 'brightness_4': Icons.brightness_4, + 'brightness_4_sharp': Icons.brightness_4_sharp, + 'brightness_4_rounded': Icons.brightness_4_rounded, + 'brightness_4_outlined': Icons.brightness_4_outlined, + 'brightness_5': Icons.brightness_5, + 'brightness_5_sharp': Icons.brightness_5_sharp, + 'brightness_5_rounded': Icons.brightness_5_rounded, + 'brightness_5_outlined': Icons.brightness_5_outlined, + 'brightness_6': Icons.brightness_6, + 'brightness_6_sharp': Icons.brightness_6_sharp, + 'brightness_6_rounded': Icons.brightness_6_rounded, + 'brightness_6_outlined': Icons.brightness_6_outlined, + 'brightness_7': Icons.brightness_7, + 'brightness_7_sharp': Icons.brightness_7_sharp, + 'brightness_7_rounded': Icons.brightness_7_rounded, + 'brightness_7_outlined': Icons.brightness_7_outlined, + 'brightness_auto': Icons.brightness_auto, + 'brightness_auto_sharp': Icons.brightness_auto_sharp, + 'brightness_auto_rounded': Icons.brightness_auto_rounded, + 'brightness_auto_outlined': Icons.brightness_auto_outlined, + 'brightness_high': Icons.brightness_high, + 'brightness_high_sharp': Icons.brightness_high_sharp, + 'brightness_high_rounded': Icons.brightness_high_rounded, + 'brightness_high_outlined': Icons.brightness_high_outlined, + 'brightness_low': Icons.brightness_low, + 'brightness_low_sharp': Icons.brightness_low_sharp, + 'brightness_low_rounded': Icons.brightness_low_rounded, + 'brightness_low_outlined': Icons.brightness_low_outlined, + 'brightness_medium': Icons.brightness_medium, + 'brightness_medium_sharp': Icons.brightness_medium_sharp, + 'brightness_medium_rounded': Icons.brightness_medium_rounded, + 'brightness_medium_outlined': Icons.brightness_medium_outlined, + 'broken_image': Icons.broken_image, + 'broken_image_sharp': Icons.broken_image_sharp, + 'broken_image_rounded': Icons.broken_image_rounded, + 'broken_image_outlined': Icons.broken_image_outlined, + 'browser_not_supported': Icons.browser_not_supported, + 'browser_not_supported_sharp': Icons.browser_not_supported_sharp, + 'browser_not_supported_rounded': Icons.browser_not_supported_rounded, + 'browser_not_supported_outlined': Icons.browser_not_supported_outlined, + 'brunch_dining': Icons.brunch_dining, + 'brunch_dining_sharp': Icons.brunch_dining_sharp, + 'brunch_dining_rounded': Icons.brunch_dining_rounded, + 'brunch_dining_outlined': Icons.brunch_dining_outlined, + 'brush': Icons.brush, + 'brush_sharp': Icons.brush_sharp, + 'brush_rounded': Icons.brush_rounded, + 'brush_outlined': Icons.brush_outlined, + 'bubble_chart': Icons.bubble_chart, + 'bubble_chart_sharp': Icons.bubble_chart_sharp, + 'bubble_chart_rounded': Icons.bubble_chart_rounded, + 'bubble_chart_outlined': Icons.bubble_chart_outlined, + 'bug_report': Icons.bug_report, + 'bug_report_sharp': Icons.bug_report_sharp, + 'bug_report_rounded': Icons.bug_report_rounded, + 'bug_report_outlined': Icons.bug_report_outlined, + 'build': Icons.build, + 'build_sharp': Icons.build_sharp, + 'build_rounded': Icons.build_rounded, + 'build_outlined': Icons.build_outlined, + 'build_circle': Icons.build_circle, + 'build_circle_sharp': Icons.build_circle_sharp, + 'build_circle_rounded': Icons.build_circle_rounded, + 'build_circle_outlined': Icons.build_circle_outlined, + 'bungalow': Icons.bungalow, + 'bungalow_sharp': Icons.bungalow_sharp, + 'bungalow_rounded': Icons.bungalow_rounded, + 'bungalow_outlined': Icons.bungalow_outlined, + 'burst_mode': Icons.burst_mode, + 'burst_mode_sharp': Icons.burst_mode_sharp, + 'burst_mode_rounded': Icons.burst_mode_rounded, + 'burst_mode_outlined': Icons.burst_mode_outlined, + 'bus_alert': Icons.bus_alert, + 'bus_alert_sharp': Icons.bus_alert_sharp, + 'bus_alert_rounded': Icons.bus_alert_rounded, + 'bus_alert_outlined': Icons.bus_alert_outlined, + 'business': Icons.business, + 'business_sharp': Icons.business_sharp, + 'business_rounded': Icons.business_rounded, + 'business_outlined': Icons.business_outlined, + 'business_center': Icons.business_center, + 'business_center_sharp': Icons.business_center_sharp, + 'business_center_rounded': Icons.business_center_rounded, + 'business_center_outlined': Icons.business_center_outlined, + 'cabin': Icons.cabin, + 'cabin_sharp': Icons.cabin_sharp, + 'cabin_rounded': Icons.cabin_rounded, + 'cabin_outlined': Icons.cabin_outlined, + 'cable': Icons.cable, + 'cable_sharp': Icons.cable_sharp, + 'cable_rounded': Icons.cable_rounded, + 'cable_outlined': Icons.cable_outlined, + 'cached': Icons.cached, + 'cached_sharp': Icons.cached_sharp, + 'cached_rounded': Icons.cached_rounded, + 'cached_outlined': Icons.cached_outlined, + 'cake': Icons.cake, + 'cake_sharp': Icons.cake_sharp, + 'cake_rounded': Icons.cake_rounded, + 'cake_outlined': Icons.cake_outlined, + 'calculate': Icons.calculate, + 'calculate_sharp': Icons.calculate_sharp, + 'calculate_rounded': Icons.calculate_rounded, + 'calculate_outlined': Icons.calculate_outlined, + 'calendar_today': Icons.calendar_today, + 'calendar_today_sharp': Icons.calendar_today_sharp, + 'calendar_today_rounded': Icons.calendar_today_rounded, + 'calendar_today_outlined': Icons.calendar_today_outlined, + 'calendar_view_day': Icons.calendar_view_day, + 'calendar_view_day_sharp': Icons.calendar_view_day_sharp, + 'calendar_view_day_rounded': Icons.calendar_view_day_rounded, + 'calendar_view_day_outlined': Icons.calendar_view_day_outlined, + 'calendar_view_month': Icons.calendar_view_month, + 'calendar_view_month_sharp': Icons.calendar_view_month_sharp, + 'calendar_view_month_rounded': Icons.calendar_view_month_rounded, + 'calendar_view_month_outlined': Icons.calendar_view_month_outlined, + 'calendar_view_week': Icons.calendar_view_week, + 'calendar_view_week_sharp': Icons.calendar_view_week_sharp, + 'calendar_view_week_rounded': Icons.calendar_view_week_rounded, + 'calendar_view_week_outlined': Icons.calendar_view_week_outlined, + 'call': Icons.call, + 'call_sharp': Icons.call_sharp, + 'call_rounded': Icons.call_rounded, + 'call_outlined': Icons.call_outlined, + 'call_end': Icons.call_end, + 'call_end_sharp': Icons.call_end_sharp, + 'call_end_rounded': Icons.call_end_rounded, + 'call_end_outlined': Icons.call_end_outlined, + 'call_made': Icons.call_made, + 'call_made_sharp': Icons.call_made_sharp, + 'call_made_rounded': Icons.call_made_rounded, + 'call_made_outlined': Icons.call_made_outlined, + 'call_merge': Icons.call_merge, + 'call_merge_sharp': Icons.call_merge_sharp, + 'call_merge_rounded': Icons.call_merge_rounded, + 'call_merge_outlined': Icons.call_merge_outlined, + 'call_missed': Icons.call_missed, + 'call_missed_sharp': Icons.call_missed_sharp, + 'call_missed_rounded': Icons.call_missed_rounded, + 'call_missed_outlined': Icons.call_missed_outlined, + 'call_missed_outgoing': Icons.call_missed_outgoing, + 'call_missed_outgoing_sharp': Icons.call_missed_outgoing_sharp, + 'call_missed_outgoing_rounded': Icons.call_missed_outgoing_rounded, + 'call_missed_outgoing_outlined': Icons.call_missed_outgoing_outlined, + 'call_received': Icons.call_received, + 'call_received_sharp': Icons.call_received_sharp, + 'call_received_rounded': Icons.call_received_rounded, + 'call_received_outlined': Icons.call_received_outlined, + 'call_split': Icons.call_split, + 'call_split_sharp': Icons.call_split_sharp, + 'call_split_rounded': Icons.call_split_rounded, + 'call_split_outlined': Icons.call_split_outlined, + 'call_to_action': Icons.call_to_action, + 'call_to_action_sharp': Icons.call_to_action_sharp, + 'call_to_action_rounded': Icons.call_to_action_rounded, + 'call_to_action_outlined': Icons.call_to_action_outlined, + 'camera': Icons.camera, + 'camera_sharp': Icons.camera_sharp, + 'camera_rounded': Icons.camera_rounded, + 'camera_outlined': Icons.camera_outlined, + 'camera_alt': Icons.camera_alt, + 'camera_alt_sharp': Icons.camera_alt_sharp, + 'camera_alt_rounded': Icons.camera_alt_rounded, + 'camera_alt_outlined': Icons.camera_alt_outlined, + 'camera_enhance': Icons.camera_enhance, + 'camera_enhance_sharp': Icons.camera_enhance_sharp, + 'camera_enhance_rounded': Icons.camera_enhance_rounded, + 'camera_enhance_outlined': Icons.camera_enhance_outlined, + 'camera_front': Icons.camera_front, + 'camera_front_sharp': Icons.camera_front_sharp, + 'camera_front_rounded': Icons.camera_front_rounded, + 'camera_front_outlined': Icons.camera_front_outlined, + 'camera_indoor': Icons.camera_indoor, + 'camera_indoor_sharp': Icons.camera_indoor_sharp, + 'camera_indoor_rounded': Icons.camera_indoor_rounded, + 'camera_indoor_outlined': Icons.camera_indoor_outlined, + 'camera_outdoor': Icons.camera_outdoor, + 'camera_outdoor_sharp': Icons.camera_outdoor_sharp, + 'camera_outdoor_rounded': Icons.camera_outdoor_rounded, + 'camera_outdoor_outlined': Icons.camera_outdoor_outlined, + 'camera_rear': Icons.camera_rear, + 'camera_rear_sharp': Icons.camera_rear_sharp, + 'camera_rear_rounded': Icons.camera_rear_rounded, + 'camera_rear_outlined': Icons.camera_rear_outlined, + 'camera_roll': Icons.camera_roll, + 'camera_roll_sharp': Icons.camera_roll_sharp, + 'camera_roll_rounded': Icons.camera_roll_rounded, + 'camera_roll_outlined': Icons.camera_roll_outlined, + 'cameraswitch': Icons.cameraswitch, + 'cameraswitch_sharp': Icons.cameraswitch_sharp, + 'cameraswitch_rounded': Icons.cameraswitch_rounded, + 'cameraswitch_outlined': Icons.cameraswitch_outlined, + 'campaign': Icons.campaign, + 'campaign_sharp': Icons.campaign_sharp, + 'campaign_rounded': Icons.campaign_rounded, + 'campaign_outlined': Icons.campaign_outlined, + 'cancel': Icons.cancel, + 'cancel_sharp': Icons.cancel_sharp, + 'cancel_rounded': Icons.cancel_rounded, + 'cancel_outlined': Icons.cancel_outlined, + 'cancel_presentation': Icons.cancel_presentation, + 'cancel_presentation_sharp': Icons.cancel_presentation_sharp, + 'cancel_presentation_rounded': Icons.cancel_presentation_rounded, + 'cancel_presentation_outlined': Icons.cancel_presentation_outlined, + 'cancel_schedule_send': Icons.cancel_schedule_send, + 'cancel_schedule_send_sharp': Icons.cancel_schedule_send_sharp, + 'cancel_schedule_send_rounded': Icons.cancel_schedule_send_rounded, + 'cancel_schedule_send_outlined': Icons.cancel_schedule_send_outlined, + 'car_rental': Icons.car_rental, + 'car_rental_sharp': Icons.car_rental_sharp, + 'car_rental_rounded': Icons.car_rental_rounded, + 'car_rental_outlined': Icons.car_rental_outlined, + 'car_repair': Icons.car_repair, + 'car_repair_sharp': Icons.car_repair_sharp, + 'car_repair_rounded': Icons.car_repair_rounded, + 'car_repair_outlined': Icons.car_repair_outlined, + 'card_giftcard': Icons.card_giftcard, + 'card_giftcard_sharp': Icons.card_giftcard_sharp, + 'card_giftcard_rounded': Icons.card_giftcard_rounded, + 'card_giftcard_outlined': Icons.card_giftcard_outlined, + 'card_membership': Icons.card_membership, + 'card_membership_sharp': Icons.card_membership_sharp, + 'card_membership_rounded': Icons.card_membership_rounded, + 'card_membership_outlined': Icons.card_membership_outlined, + 'card_travel': Icons.card_travel, + 'card_travel_sharp': Icons.card_travel_sharp, + 'card_travel_rounded': Icons.card_travel_rounded, + 'card_travel_outlined': Icons.card_travel_outlined, + 'carpenter': Icons.carpenter, + 'carpenter_sharp': Icons.carpenter_sharp, + 'carpenter_rounded': Icons.carpenter_rounded, + 'carpenter_outlined': Icons.carpenter_outlined, + 'cases': Icons.cases, + 'cases_sharp': Icons.cases_sharp, + 'cases_rounded': Icons.cases_rounded, + 'cases_outlined': Icons.cases_outlined, + 'casino': Icons.casino, + 'casino_sharp': Icons.casino_sharp, + 'casino_rounded': Icons.casino_rounded, + 'casino_outlined': Icons.casino_outlined, + 'cast': Icons.cast, + 'cast_sharp': Icons.cast_sharp, + 'cast_rounded': Icons.cast_rounded, + 'cast_outlined': Icons.cast_outlined, + 'cast_connected': Icons.cast_connected, + 'cast_connected_sharp': Icons.cast_connected_sharp, + 'cast_connected_rounded': Icons.cast_connected_rounded, + 'cast_connected_outlined': Icons.cast_connected_outlined, + 'cast_for_education': Icons.cast_for_education, + 'cast_for_education_sharp': Icons.cast_for_education_sharp, + 'cast_for_education_rounded': Icons.cast_for_education_rounded, + 'cast_for_education_outlined': Icons.cast_for_education_outlined, + 'catching_pokemon': Icons.catching_pokemon, + 'catching_pokemon_sharp': Icons.catching_pokemon_sharp, + 'catching_pokemon_rounded': Icons.catching_pokemon_rounded, + 'catching_pokemon_outlined': Icons.catching_pokemon_outlined, + 'category': Icons.category, + 'category_sharp': Icons.category_sharp, + 'category_rounded': Icons.category_rounded, + 'category_outlined': Icons.category_outlined, + 'celebration': Icons.celebration, + 'celebration_sharp': Icons.celebration_sharp, + 'celebration_rounded': Icons.celebration_rounded, + 'celebration_outlined': Icons.celebration_outlined, + 'cell_wifi': Icons.cell_wifi, + 'cell_wifi_sharp': Icons.cell_wifi_sharp, + 'cell_wifi_rounded': Icons.cell_wifi_rounded, + 'cell_wifi_outlined': Icons.cell_wifi_outlined, + 'center_focus_strong': Icons.center_focus_strong, + 'center_focus_strong_sharp': Icons.center_focus_strong_sharp, + 'center_focus_strong_rounded': Icons.center_focus_strong_rounded, + 'center_focus_strong_outlined': Icons.center_focus_strong_outlined, + 'center_focus_weak': Icons.center_focus_weak, + 'center_focus_weak_sharp': Icons.center_focus_weak_sharp, + 'center_focus_weak_rounded': Icons.center_focus_weak_rounded, + 'center_focus_weak_outlined': Icons.center_focus_weak_outlined, + 'chair': Icons.chair, + 'chair_sharp': Icons.chair_sharp, + 'chair_rounded': Icons.chair_rounded, + 'chair_outlined': Icons.chair_outlined, + 'chair_alt': Icons.chair_alt, + 'chair_alt_sharp': Icons.chair_alt_sharp, + 'chair_alt_rounded': Icons.chair_alt_rounded, + 'chair_alt_outlined': Icons.chair_alt_outlined, + 'chalet': Icons.chalet, + 'chalet_sharp': Icons.chalet_sharp, + 'chalet_rounded': Icons.chalet_rounded, + 'chalet_outlined': Icons.chalet_outlined, + 'change_circle': Icons.change_circle, + 'change_circle_sharp': Icons.change_circle_sharp, + 'change_circle_rounded': Icons.change_circle_rounded, + 'change_circle_outlined': Icons.change_circle_outlined, + 'change_history': Icons.change_history, + 'change_history_sharp': Icons.change_history_sharp, + 'change_history_rounded': Icons.change_history_rounded, + 'change_history_outlined': Icons.change_history_outlined, + 'charging_station': Icons.charging_station, + 'charging_station_sharp': Icons.charging_station_sharp, + 'charging_station_rounded': Icons.charging_station_rounded, + 'charging_station_outlined': Icons.charging_station_outlined, + 'chat': Icons.chat, + 'chat_sharp': Icons.chat_sharp, + 'chat_rounded': Icons.chat_rounded, + 'chat_outlined': Icons.chat_outlined, + 'chat_bubble': Icons.chat_bubble, + 'chat_bubble_sharp': Icons.chat_bubble_sharp, + 'chat_bubble_rounded': Icons.chat_bubble_rounded, + 'chat_bubble_outlined': Icons.chat_bubble_outlined, + 'chat_bubble_outline': Icons.chat_bubble_outline, + 'chat_bubble_outline_sharp': Icons.chat_bubble_outline_sharp, + 'chat_bubble_outline_rounded': Icons.chat_bubble_outline_rounded, + 'chat_bubble_outline_outlined': Icons.chat_bubble_outline_outlined, + 'check': Icons.check, + 'check_sharp': Icons.check_sharp, + 'check_rounded': Icons.check_rounded, + 'check_outlined': Icons.check_outlined, + 'check_box': Icons.check_box, + 'check_box_sharp': Icons.check_box_sharp, + 'check_box_rounded': Icons.check_box_rounded, + 'check_box_outlined': Icons.check_box_outlined, + 'check_box_outline_blank': Icons.check_box_outline_blank, + 'check_box_outline_blank_sharp': Icons.check_box_outline_blank_sharp, + 'check_box_outline_blank_rounded': + Icons.check_box_outline_blank_rounded, + 'check_box_outline_blank_outlined': + Icons.check_box_outline_blank_outlined, + 'check_circle': Icons.check_circle, + 'check_circle_sharp': Icons.check_circle_sharp, + 'check_circle_rounded': Icons.check_circle_rounded, + 'check_circle_outlined': Icons.check_circle_outlined, + 'check_circle_outline': Icons.check_circle_outline, + 'check_circle_outline_sharp': Icons.check_circle_outline_sharp, + 'check_circle_outline_rounded': Icons.check_circle_outline_rounded, + 'check_circle_outline_outlined': Icons.check_circle_outline_outlined, + 'checklist': Icons.checklist, + 'checklist_sharp': Icons.checklist_sharp, + 'checklist_rounded': Icons.checklist_rounded, + 'checklist_outlined': Icons.checklist_outlined, + 'checklist_rtl': Icons.checklist_rtl, + 'checklist_rtl_sharp': Icons.checklist_rtl_sharp, + 'checklist_rtl_rounded': Icons.checklist_rtl_rounded, + 'checklist_rtl_outlined': Icons.checklist_rtl_outlined, + 'checkroom': Icons.checkroom, + 'checkroom_sharp': Icons.checkroom_sharp, + 'checkroom_rounded': Icons.checkroom_rounded, + 'checkroom_outlined': Icons.checkroom_outlined, + 'chevron_left': Icons.chevron_left, + 'chevron_left_sharp': Icons.chevron_left_sharp, + 'chevron_left_rounded': Icons.chevron_left_rounded, + 'chevron_left_outlined': Icons.chevron_left_outlined, + 'chevron_right': Icons.chevron_right, + 'chevron_right_sharp': Icons.chevron_right_sharp, + 'chevron_right_rounded': Icons.chevron_right_rounded, + 'chevron_right_outlined': Icons.chevron_right_outlined, + 'child_care': Icons.child_care, + 'child_care_sharp': Icons.child_care_sharp, + 'child_care_rounded': Icons.child_care_rounded, + 'child_care_outlined': Icons.child_care_outlined, + 'child_friendly': Icons.child_friendly, + 'child_friendly_sharp': Icons.child_friendly_sharp, + 'child_friendly_rounded': Icons.child_friendly_rounded, + 'child_friendly_outlined': Icons.child_friendly_outlined, + 'chrome_reader_mode': Icons.chrome_reader_mode, + 'chrome_reader_mode_sharp': Icons.chrome_reader_mode_sharp, + 'chrome_reader_mode_rounded': Icons.chrome_reader_mode_rounded, + 'chrome_reader_mode_outlined': Icons.chrome_reader_mode_outlined, + 'circle': Icons.circle, + 'circle_sharp': Icons.circle_sharp, + 'circle_rounded': Icons.circle_rounded, + 'circle_outlined': Icons.circle_outlined, + 'circle_notifications': Icons.circle_notifications, + 'circle_notifications_sharp': Icons.circle_notifications_sharp, + 'circle_notifications_rounded': Icons.circle_notifications_rounded, + 'circle_notifications_outlined': Icons.circle_notifications_outlined, + 'class_': Icons.class_, + 'class__sharp': Icons.class_sharp, + 'class__rounded': Icons.class_rounded, + 'class__outlined': Icons.class_outlined, + 'clean_hands': Icons.clean_hands, + 'clean_hands_sharp': Icons.clean_hands_sharp, + 'clean_hands_rounded': Icons.clean_hands_rounded, + 'clean_hands_outlined': Icons.clean_hands_outlined, + 'cleaning_services': Icons.cleaning_services, + 'cleaning_services_sharp': Icons.cleaning_services_sharp, + 'cleaning_services_rounded': Icons.cleaning_services_rounded, + 'cleaning_services_outlined': Icons.cleaning_services_outlined, + 'clear': Icons.clear, + 'clear_sharp': Icons.clear_sharp, + 'clear_rounded': Icons.clear_rounded, + 'clear_outlined': Icons.clear_outlined, + 'clear_all': Icons.clear_all, + 'clear_all_sharp': Icons.clear_all_sharp, + 'clear_all_rounded': Icons.clear_all_rounded, + 'clear_all_outlined': Icons.clear_all_outlined, + 'close': Icons.close, + 'close_sharp': Icons.close_sharp, + 'close_rounded': Icons.close_rounded, + 'close_outlined': Icons.close_outlined, + 'close_fullscreen': Icons.close_fullscreen, + 'close_fullscreen_sharp': Icons.close_fullscreen_sharp, + 'close_fullscreen_rounded': Icons.close_fullscreen_rounded, + 'close_fullscreen_outlined': Icons.close_fullscreen_outlined, + 'closed_caption': Icons.closed_caption, + 'closed_caption_sharp': Icons.closed_caption_sharp, + 'closed_caption_rounded': Icons.closed_caption_rounded, + 'closed_caption_outlined': Icons.closed_caption_outlined, + 'closed_caption_disabled': Icons.closed_caption_disabled, + 'closed_caption_disabled_sharp': Icons.closed_caption_disabled_sharp, + 'closed_caption_disabled_rounded': + Icons.closed_caption_disabled_rounded, + 'closed_caption_disabled_outlined': + Icons.closed_caption_disabled_outlined, + 'closed_caption_off': Icons.closed_caption_off, + 'closed_caption_off_sharp': Icons.closed_caption_off_sharp, + 'closed_caption_off_rounded': Icons.closed_caption_off_rounded, + 'closed_caption_off_outlined': Icons.closed_caption_off_outlined, + 'cloud': Icons.cloud, + 'cloud_sharp': Icons.cloud_sharp, + 'cloud_rounded': Icons.cloud_rounded, + 'cloud_outlined': Icons.cloud_outlined, + 'cloud_circle': Icons.cloud_circle, + 'cloud_circle_sharp': Icons.cloud_circle_sharp, + 'cloud_circle_rounded': Icons.cloud_circle_rounded, + 'cloud_circle_outlined': Icons.cloud_circle_outlined, + 'cloud_done': Icons.cloud_done, + 'cloud_done_sharp': Icons.cloud_done_sharp, + 'cloud_done_rounded': Icons.cloud_done_rounded, + 'cloud_done_outlined': Icons.cloud_done_outlined, + 'cloud_download': Icons.cloud_download, + 'cloud_download_sharp': Icons.cloud_download_sharp, + 'cloud_download_rounded': Icons.cloud_download_rounded, + 'cloud_download_outlined': Icons.cloud_download_outlined, + 'cloud_off': Icons.cloud_off, + 'cloud_off_sharp': Icons.cloud_off_sharp, + 'cloud_off_rounded': Icons.cloud_off_rounded, + 'cloud_off_outlined': Icons.cloud_off_outlined, + 'cloud_queue': Icons.cloud_queue, + 'cloud_queue_sharp': Icons.cloud_queue_sharp, + 'cloud_queue_rounded': Icons.cloud_queue_rounded, + 'cloud_queue_outlined': Icons.cloud_queue_outlined, + 'cloud_upload': Icons.cloud_upload, + 'cloud_upload_sharp': Icons.cloud_upload_sharp, + 'cloud_upload_rounded': Icons.cloud_upload_rounded, + 'cloud_upload_outlined': Icons.cloud_upload_outlined, + 'code': Icons.code, + 'code_sharp': Icons.code_sharp, + 'code_rounded': Icons.code_rounded, + 'code_outlined': Icons.code_outlined, + 'code_off': Icons.code_off, + 'code_off_sharp': Icons.code_off_sharp, + 'code_off_rounded': Icons.code_off_rounded, + 'code_off_outlined': Icons.code_off_outlined, + 'coffee': Icons.coffee, + 'coffee_sharp': Icons.coffee_sharp, + 'coffee_rounded': Icons.coffee_rounded, + 'coffee_outlined': Icons.coffee_outlined, + 'coffee_maker': Icons.coffee_maker, + 'coffee_maker_sharp': Icons.coffee_maker_sharp, + 'coffee_maker_rounded': Icons.coffee_maker_rounded, + 'coffee_maker_outlined': Icons.coffee_maker_outlined, + 'collections': Icons.collections, + 'collections_sharp': Icons.collections_sharp, + 'collections_rounded': Icons.collections_rounded, + 'collections_outlined': Icons.collections_outlined, + 'collections_bookmark': Icons.collections_bookmark, + 'collections_bookmark_sharp': Icons.collections_bookmark_sharp, + 'collections_bookmark_rounded': Icons.collections_bookmark_rounded, + 'collections_bookmark_outlined': Icons.collections_bookmark_outlined, + 'color_lens': Icons.color_lens, + 'color_lens_sharp': Icons.color_lens_sharp, + 'color_lens_rounded': Icons.color_lens_rounded, + 'color_lens_outlined': Icons.color_lens_outlined, + 'colorize': Icons.colorize, + 'colorize_sharp': Icons.colorize_sharp, + 'colorize_rounded': Icons.colorize_rounded, + 'colorize_outlined': Icons.colorize_outlined, + 'comment': Icons.comment, + 'comment_sharp': Icons.comment_sharp, + 'comment_rounded': Icons.comment_rounded, + 'comment_outlined': Icons.comment_outlined, + 'comment_bank': Icons.comment_bank, + 'comment_bank_sharp': Icons.comment_bank_sharp, + 'comment_bank_rounded': Icons.comment_bank_rounded, + 'comment_bank_outlined': Icons.comment_bank_outlined, + 'commute': Icons.commute, + 'commute_sharp': Icons.commute_sharp, + 'commute_rounded': Icons.commute_rounded, + 'commute_outlined': Icons.commute_outlined, + 'compare': Icons.compare, + 'compare_sharp': Icons.compare_sharp, + 'compare_rounded': Icons.compare_rounded, + 'compare_outlined': Icons.compare_outlined, + 'compare_arrows': Icons.compare_arrows, + 'compare_arrows_sharp': Icons.compare_arrows_sharp, + 'compare_arrows_rounded': Icons.compare_arrows_rounded, + 'compare_arrows_outlined': Icons.compare_arrows_outlined, + 'compass_calibration': Icons.compass_calibration, + 'compass_calibration_sharp': Icons.compass_calibration_sharp, + 'compass_calibration_rounded': Icons.compass_calibration_rounded, + 'compass_calibration_outlined': Icons.compass_calibration_outlined, + 'compress': Icons.compress, + 'compress_sharp': Icons.compress_sharp, + 'compress_rounded': Icons.compress_rounded, + 'compress_outlined': Icons.compress_outlined, + 'computer': Icons.computer, + 'computer_sharp': Icons.computer_sharp, + 'computer_rounded': Icons.computer_rounded, + 'computer_outlined': Icons.computer_outlined, + 'confirmation_num': Icons.confirmation_num, + 'confirmation_num_sharp': Icons.confirmation_num_sharp, + 'confirmation_num_rounded': Icons.confirmation_num_rounded, + 'confirmation_num_outlined': Icons.confirmation_num_outlined, + 'confirmation_number': Icons.confirmation_number, + 'confirmation_number_sharp': Icons.confirmation_number_sharp, + 'confirmation_number_rounded': Icons.confirmation_number_rounded, + 'confirmation_number_outlined': Icons.confirmation_number_outlined, + 'connect_without_contact': Icons.connect_without_contact, + 'connect_without_contact_sharp': Icons.connect_without_contact_sharp, + 'connect_without_contact_rounded': + Icons.connect_without_contact_rounded, + 'connect_without_contact_outlined': + Icons.connect_without_contact_outlined, + 'connected_tv': Icons.connected_tv, + 'connected_tv_sharp': Icons.connected_tv_sharp, + 'connected_tv_rounded': Icons.connected_tv_rounded, + 'connected_tv_outlined': Icons.connected_tv_outlined, + 'construction': Icons.construction, + 'construction_sharp': Icons.construction_sharp, + 'construction_rounded': Icons.construction_rounded, + 'construction_outlined': Icons.construction_outlined, + 'contact_mail': Icons.contact_mail, + 'contact_mail_sharp': Icons.contact_mail_sharp, + 'contact_mail_rounded': Icons.contact_mail_rounded, + 'contact_mail_outlined': Icons.contact_mail_outlined, + 'contact_page': Icons.contact_page, + 'contact_page_sharp': Icons.contact_page_sharp, + 'contact_page_rounded': Icons.contact_page_rounded, + 'contact_page_outlined': Icons.contact_page_outlined, + 'contact_phone': Icons.contact_phone, + 'contact_phone_sharp': Icons.contact_phone_sharp, + 'contact_phone_rounded': Icons.contact_phone_rounded, + 'contact_phone_outlined': Icons.contact_phone_outlined, + 'contact_support': Icons.contact_support, + 'contact_support_sharp': Icons.contact_support_sharp, + 'contact_support_rounded': Icons.contact_support_rounded, + 'contact_support_outlined': Icons.contact_support_outlined, + 'contactless': Icons.contactless, + 'contactless_sharp': Icons.contactless_sharp, + 'contactless_rounded': Icons.contactless_rounded, + 'contactless_outlined': Icons.contactless_outlined, + 'contacts': Icons.contacts, + 'contacts_sharp': Icons.contacts_sharp, + 'contacts_rounded': Icons.contacts_rounded, + 'contacts_outlined': Icons.contacts_outlined, + 'content_copy': Icons.content_copy, + 'content_copy_sharp': Icons.content_copy_sharp, + 'content_copy_rounded': Icons.content_copy_rounded, + 'content_copy_outlined': Icons.content_copy_outlined, + 'content_cut': Icons.content_cut, + 'content_cut_sharp': Icons.content_cut_sharp, + 'content_cut_rounded': Icons.content_cut_rounded, + 'content_cut_outlined': Icons.content_cut_outlined, + 'content_paste': Icons.content_paste, + 'content_paste_sharp': Icons.content_paste_sharp, + 'content_paste_rounded': Icons.content_paste_rounded, + 'content_paste_outlined': Icons.content_paste_outlined, + 'content_paste_off': Icons.content_paste_off, + 'content_paste_off_sharp': Icons.content_paste_off_sharp, + 'content_paste_off_rounded': Icons.content_paste_off_rounded, + 'content_paste_off_outlined': Icons.content_paste_off_outlined, + 'control_camera': Icons.control_camera, + 'control_camera_sharp': Icons.control_camera_sharp, + 'control_camera_rounded': Icons.control_camera_rounded, + 'control_camera_outlined': Icons.control_camera_outlined, + 'control_point': Icons.control_point, + 'control_point_sharp': Icons.control_point_sharp, + 'control_point_rounded': Icons.control_point_rounded, + 'control_point_outlined': Icons.control_point_outlined, + 'control_point_duplicate': Icons.control_point_duplicate, + 'control_point_duplicate_sharp': Icons.control_point_duplicate_sharp, + 'control_point_duplicate_rounded': + Icons.control_point_duplicate_rounded, + 'control_point_duplicate_outlined': + Icons.control_point_duplicate_outlined, + 'copy': Icons.copy, + 'copy_sharp': Icons.copy_sharp, + 'copy_rounded': Icons.copy_rounded, + 'copy_outlined': Icons.copy_outlined, + 'copy_all': Icons.copy_all, + 'copy_all_sharp': Icons.copy_all_sharp, + 'copy_all_rounded': Icons.copy_all_rounded, + 'copy_all_outlined': Icons.copy_all_outlined, + 'copyright': Icons.copyright, + 'copyright_sharp': Icons.copyright_sharp, + 'copyright_rounded': Icons.copyright_rounded, + 'copyright_outlined': Icons.copyright_outlined, + 'coronavirus': Icons.coronavirus, + 'coronavirus_sharp': Icons.coronavirus_sharp, + 'coronavirus_rounded': Icons.coronavirus_rounded, + 'coronavirus_outlined': Icons.coronavirus_outlined, + 'corporate_fare': Icons.corporate_fare, + 'corporate_fare_sharp': Icons.corporate_fare_sharp, + 'corporate_fare_rounded': Icons.corporate_fare_rounded, + 'corporate_fare_outlined': Icons.corporate_fare_outlined, + 'cottage': Icons.cottage, + 'cottage_sharp': Icons.cottage_sharp, + 'cottage_rounded': Icons.cottage_rounded, + 'cottage_outlined': Icons.cottage_outlined, + 'countertops': Icons.countertops, + 'countertops_sharp': Icons.countertops_sharp, + 'countertops_rounded': Icons.countertops_rounded, + 'countertops_outlined': Icons.countertops_outlined, + 'create': Icons.create, + 'create_sharp': Icons.create_sharp, + 'create_rounded': Icons.create_rounded, + 'create_outlined': Icons.create_outlined, + 'create_new_folder': Icons.create_new_folder, + 'create_new_folder_sharp': Icons.create_new_folder_sharp, + 'create_new_folder_rounded': Icons.create_new_folder_rounded, + 'create_new_folder_outlined': Icons.create_new_folder_outlined, + 'credit_card': Icons.credit_card, + 'credit_card_sharp': Icons.credit_card_sharp, + 'credit_card_rounded': Icons.credit_card_rounded, + 'credit_card_outlined': Icons.credit_card_outlined, + 'credit_card_off': Icons.credit_card_off, + 'credit_card_off_sharp': Icons.credit_card_off_sharp, + 'credit_card_off_rounded': Icons.credit_card_off_rounded, + 'credit_card_off_outlined': Icons.credit_card_off_outlined, + 'credit_score': Icons.credit_score, + 'credit_score_sharp': Icons.credit_score_sharp, + 'credit_score_rounded': Icons.credit_score_rounded, + 'credit_score_outlined': Icons.credit_score_outlined, + 'crib': Icons.crib, + 'crib_sharp': Icons.crib_sharp, + 'crib_rounded': Icons.crib_rounded, + 'crib_outlined': Icons.crib_outlined, + 'crop': Icons.crop, + 'crop_sharp': Icons.crop_sharp, + 'crop_rounded': Icons.crop_rounded, + 'crop_outlined': Icons.crop_outlined, + 'crop_16_9': Icons.crop_16_9, + 'crop_16_9_sharp': Icons.crop_16_9_sharp, + 'crop_16_9_rounded': Icons.crop_16_9_rounded, + 'crop_16_9_outlined': Icons.crop_16_9_outlined, + 'crop_3_2': Icons.crop_3_2, + 'crop_3_2_sharp': Icons.crop_3_2_sharp, + 'crop_3_2_rounded': Icons.crop_3_2_rounded, + 'crop_3_2_outlined': Icons.crop_3_2_outlined, + 'crop_5_4': Icons.crop_5_4, + 'crop_5_4_sharp': Icons.crop_5_4_sharp, + 'crop_5_4_rounded': Icons.crop_5_4_rounded, + 'crop_5_4_outlined': Icons.crop_5_4_outlined, + 'crop_7_5': Icons.crop_7_5, + 'crop_7_5_sharp': Icons.crop_7_5_sharp, + 'crop_7_5_rounded': Icons.crop_7_5_rounded, + 'crop_7_5_outlined': Icons.crop_7_5_outlined, + 'crop_din': Icons.crop_din, + 'crop_din_sharp': Icons.crop_din_sharp, + 'crop_din_rounded': Icons.crop_din_rounded, + 'crop_din_outlined': Icons.crop_din_outlined, + 'crop_free': Icons.crop_free, + 'crop_free_sharp': Icons.crop_free_sharp, + 'crop_free_rounded': Icons.crop_free_rounded, + 'crop_free_outlined': Icons.crop_free_outlined, + 'crop_landscape': Icons.crop_landscape, + 'crop_landscape_sharp': Icons.crop_landscape_sharp, + 'crop_landscape_rounded': Icons.crop_landscape_rounded, + 'crop_landscape_outlined': Icons.crop_landscape_outlined, + 'crop_original': Icons.crop_original, + 'crop_original_sharp': Icons.crop_original_sharp, + 'crop_original_rounded': Icons.crop_original_rounded, + 'crop_original_outlined': Icons.crop_original_outlined, + 'crop_portrait': Icons.crop_portrait, + 'crop_portrait_sharp': Icons.crop_portrait_sharp, + 'crop_portrait_rounded': Icons.crop_portrait_rounded, + 'crop_portrait_outlined': Icons.crop_portrait_outlined, + 'crop_rotate': Icons.crop_rotate, + 'crop_rotate_sharp': Icons.crop_rotate_sharp, + 'crop_rotate_rounded': Icons.crop_rotate_rounded, + 'crop_rotate_outlined': Icons.crop_rotate_outlined, + 'crop_square': Icons.crop_square, + 'crop_square_sharp': Icons.crop_square_sharp, + 'crop_square_rounded': Icons.crop_square_rounded, + 'crop_square_outlined': Icons.crop_square_outlined, + 'cut': Icons.cut, + 'cut_sharp': Icons.cut_sharp, + 'cut_rounded': Icons.cut_rounded, + 'cut_outlined': Icons.cut_outlined, + 'dangerous': Icons.dangerous, + 'dangerous_sharp': Icons.dangerous_sharp, + 'dangerous_rounded': Icons.dangerous_rounded, + 'dangerous_outlined': Icons.dangerous_outlined, + 'dark_mode': Icons.dark_mode, + 'dark_mode_sharp': Icons.dark_mode_sharp, + 'dark_mode_rounded': Icons.dark_mode_rounded, + 'dark_mode_outlined': Icons.dark_mode_outlined, + 'dashboard': Icons.dashboard, + 'dashboard_sharp': Icons.dashboard_sharp, + 'dashboard_rounded': Icons.dashboard_rounded, + 'dashboard_outlined': Icons.dashboard_outlined, + 'dashboard_customize': Icons.dashboard_customize, + 'dashboard_customize_sharp': Icons.dashboard_customize_sharp, + 'dashboard_customize_rounded': Icons.dashboard_customize_rounded, + 'dashboard_customize_outlined': Icons.dashboard_customize_outlined, + 'data_saver_off': Icons.data_saver_off, + 'data_saver_off_sharp': Icons.data_saver_off_sharp, + 'data_saver_off_rounded': Icons.data_saver_off_rounded, + 'data_saver_off_outlined': Icons.data_saver_off_outlined, + 'data_saver_on': Icons.data_saver_on, + 'data_saver_on_sharp': Icons.data_saver_on_sharp, + 'data_saver_on_rounded': Icons.data_saver_on_rounded, + 'data_saver_on_outlined': Icons.data_saver_on_outlined, + 'data_usage': Icons.data_usage, + 'data_usage_sharp': Icons.data_usage_sharp, + 'data_usage_rounded': Icons.data_usage_rounded, + 'data_usage_outlined': Icons.data_usage_outlined, + 'date_range': Icons.date_range, + 'date_range_sharp': Icons.date_range_sharp, + 'date_range_rounded': Icons.date_range_rounded, + 'date_range_outlined': Icons.date_range_outlined, + 'deck': Icons.deck, + 'deck_sharp': Icons.deck_sharp, + 'deck_rounded': Icons.deck_rounded, + 'deck_outlined': Icons.deck_outlined, + 'dehaze': Icons.dehaze, + 'dehaze_sharp': Icons.dehaze_sharp, + 'dehaze_rounded': Icons.dehaze_rounded, + 'dehaze_outlined': Icons.dehaze_outlined, + 'delete': Icons.delete, + 'delete_sharp': Icons.delete_sharp, + 'delete_rounded': Icons.delete_rounded, + 'delete_outlined': Icons.delete_outlined, + 'delete_forever': Icons.delete_forever, + 'delete_forever_sharp': Icons.delete_forever_sharp, + 'delete_forever_rounded': Icons.delete_forever_rounded, + 'delete_forever_outlined': Icons.delete_forever_outlined, + 'delete_outline': Icons.delete_outline, + 'delete_outline_sharp': Icons.delete_outline_sharp, + 'delete_outline_rounded': Icons.delete_outline_rounded, + 'delete_outline_outlined': Icons.delete_outline_outlined, + 'delete_sweep': Icons.delete_sweep, + 'delete_sweep_sharp': Icons.delete_sweep_sharp, + 'delete_sweep_rounded': Icons.delete_sweep_rounded, + 'delete_sweep_outlined': Icons.delete_sweep_outlined, + 'delivery_dining': Icons.delivery_dining, + 'delivery_dining_sharp': Icons.delivery_dining_sharp, + 'delivery_dining_rounded': Icons.delivery_dining_rounded, + 'delivery_dining_outlined': Icons.delivery_dining_outlined, + 'departure_board': Icons.departure_board, + 'departure_board_sharp': Icons.departure_board_sharp, + 'departure_board_rounded': Icons.departure_board_rounded, + 'departure_board_outlined': Icons.departure_board_outlined, + 'description': Icons.description, + 'description_sharp': Icons.description_sharp, + 'description_rounded': Icons.description_rounded, + 'description_outlined': Icons.description_outlined, + 'design_services': Icons.design_services, + 'design_services_sharp': Icons.design_services_sharp, + 'design_services_rounded': Icons.design_services_rounded, + 'design_services_outlined': Icons.design_services_outlined, + 'desktop_access_disabled': Icons.desktop_access_disabled, + 'desktop_access_disabled_sharp': Icons.desktop_access_disabled_sharp, + 'desktop_access_disabled_rounded': + Icons.desktop_access_disabled_rounded, + 'desktop_access_disabled_outlined': + Icons.desktop_access_disabled_outlined, + 'desktop_mac': Icons.desktop_mac, + 'desktop_mac_sharp': Icons.desktop_mac_sharp, + 'desktop_mac_rounded': Icons.desktop_mac_rounded, + 'desktop_mac_outlined': Icons.desktop_mac_outlined, + 'desktop_windows': Icons.desktop_windows, + 'desktop_windows_sharp': Icons.desktop_windows_sharp, + 'desktop_windows_rounded': Icons.desktop_windows_rounded, + 'desktop_windows_outlined': Icons.desktop_windows_outlined, + 'details': Icons.details, + 'details_sharp': Icons.details_sharp, + 'details_rounded': Icons.details_rounded, + 'details_outlined': Icons.details_outlined, + 'developer_board': Icons.developer_board, + 'developer_board_sharp': Icons.developer_board_sharp, + 'developer_board_rounded': Icons.developer_board_rounded, + 'developer_board_outlined': Icons.developer_board_outlined, + 'developer_board_off': Icons.developer_board_off, + 'developer_board_off_sharp': Icons.developer_board_off_sharp, + 'developer_board_off_rounded': Icons.developer_board_off_rounded, + 'developer_board_off_outlined': Icons.developer_board_off_outlined, + 'developer_mode': Icons.developer_mode, + 'developer_mode_sharp': Icons.developer_mode_sharp, + 'developer_mode_rounded': Icons.developer_mode_rounded, + 'developer_mode_outlined': Icons.developer_mode_outlined, + 'device_hub': Icons.device_hub, + 'device_hub_sharp': Icons.device_hub_sharp, + 'device_hub_rounded': Icons.device_hub_rounded, + 'device_hub_outlined': Icons.device_hub_outlined, + 'device_thermostat': Icons.device_thermostat, + 'device_thermostat_sharp': Icons.device_thermostat_sharp, + 'device_thermostat_rounded': Icons.device_thermostat_rounded, + 'device_thermostat_outlined': Icons.device_thermostat_outlined, + 'device_unknown': Icons.device_unknown, + 'device_unknown_sharp': Icons.device_unknown_sharp, + 'device_unknown_rounded': Icons.device_unknown_rounded, + 'device_unknown_outlined': Icons.device_unknown_outlined, + 'devices': Icons.devices, + 'devices_sharp': Icons.devices_sharp, + 'devices_rounded': Icons.devices_rounded, + 'devices_outlined': Icons.devices_outlined, + 'devices_other': Icons.devices_other, + 'devices_other_sharp': Icons.devices_other_sharp, + 'devices_other_rounded': Icons.devices_other_rounded, + 'devices_other_outlined': Icons.devices_other_outlined, + 'dialer_sip': Icons.dialer_sip, + 'dialer_sip_sharp': Icons.dialer_sip_sharp, + 'dialer_sip_rounded': Icons.dialer_sip_rounded, + 'dialer_sip_outlined': Icons.dialer_sip_outlined, + 'dialpad': Icons.dialpad, + 'dialpad_sharp': Icons.dialpad_sharp, + 'dialpad_rounded': Icons.dialpad_rounded, + 'dialpad_outlined': Icons.dialpad_outlined, + 'dining': Icons.dining, + 'dining_sharp': Icons.dining_sharp, + 'dining_rounded': Icons.dining_rounded, + 'dining_outlined': Icons.dining_outlined, + 'dinner_dining': Icons.dinner_dining, + 'dinner_dining_sharp': Icons.dinner_dining_sharp, + 'dinner_dining_rounded': Icons.dinner_dining_rounded, + 'dinner_dining_outlined': Icons.dinner_dining_outlined, + 'directions': Icons.directions, + 'directions_sharp': Icons.directions_sharp, + 'directions_rounded': Icons.directions_rounded, + 'directions_outlined': Icons.directions_outlined, + 'directions_bike': Icons.directions_bike, + 'directions_bike_sharp': Icons.directions_bike_sharp, + 'directions_bike_rounded': Icons.directions_bike_rounded, + 'directions_bike_outlined': Icons.directions_bike_outlined, + 'directions_boat': Icons.directions_boat, + 'directions_boat_sharp': Icons.directions_boat_sharp, + 'directions_boat_rounded': Icons.directions_boat_rounded, + 'directions_boat_outlined': Icons.directions_boat_outlined, + 'directions_boat_filled': Icons.directions_boat_filled, + 'directions_boat_filled_sharp': Icons.directions_boat_filled_sharp, + 'directions_boat_filled_rounded': Icons.directions_boat_filled_rounded, + 'directions_boat_filled_outlined': + Icons.directions_boat_filled_outlined, + 'directions_bus': Icons.directions_bus, + 'directions_bus_sharp': Icons.directions_bus_sharp, + 'directions_bus_rounded': Icons.directions_bus_rounded, + 'directions_bus_outlined': Icons.directions_bus_outlined, + 'directions_bus_filled': Icons.directions_bus_filled, + 'directions_bus_filled_sharp': Icons.directions_bus_filled_sharp, + 'directions_bus_filled_rounded': Icons.directions_bus_filled_rounded, + 'directions_bus_filled_outlined': Icons.directions_bus_filled_outlined, + 'directions_car': Icons.directions_car, + 'directions_car_sharp': Icons.directions_car_sharp, + 'directions_car_rounded': Icons.directions_car_rounded, + 'directions_car_outlined': Icons.directions_car_outlined, + 'directions_car_filled': Icons.directions_car_filled, + 'directions_car_filled_sharp': Icons.directions_car_filled_sharp, + 'directions_car_filled_rounded': Icons.directions_car_filled_rounded, + 'directions_car_filled_outlined': Icons.directions_car_filled_outlined, + 'directions_ferry': Icons.directions_ferry, + 'directions_ferry_sharp': Icons.directions_ferry_sharp, + 'directions_ferry_rounded': Icons.directions_ferry_rounded, + 'directions_ferry_outlined': Icons.directions_ferry_outlined, + 'directions_off': Icons.directions_off, + 'directions_off_sharp': Icons.directions_off_sharp, + 'directions_off_rounded': Icons.directions_off_rounded, + 'directions_off_outlined': Icons.directions_off_outlined, + 'directions_railway': Icons.directions_railway, + 'directions_railway_sharp': Icons.directions_railway_sharp, + 'directions_railway_rounded': Icons.directions_railway_rounded, + 'directions_railway_outlined': Icons.directions_railway_outlined, + 'directions_railway_filled': Icons.directions_railway_filled, + 'directions_railway_filled_sharp': + Icons.directions_railway_filled_sharp, + 'directions_railway_filled_rounded': + Icons.directions_railway_filled_rounded, + 'directions_railway_filled_outlined': + Icons.directions_railway_filled_outlined, + 'directions_run': Icons.directions_run, + 'directions_run_sharp': Icons.directions_run_sharp, + 'directions_run_rounded': Icons.directions_run_rounded, + 'directions_run_outlined': Icons.directions_run_outlined, + 'directions_subway': Icons.directions_subway, + 'directions_subway_sharp': Icons.directions_subway_sharp, + 'directions_subway_rounded': Icons.directions_subway_rounded, + 'directions_subway_outlined': Icons.directions_subway_outlined, + 'directions_subway_filled': Icons.directions_subway_filled, + 'directions_subway_filled_sharp': Icons.directions_subway_filled_sharp, + 'directions_subway_filled_rounded': + Icons.directions_subway_filled_rounded, + 'directions_subway_filled_outlined': + Icons.directions_subway_filled_outlined, + 'directions_train': Icons.directions_train, + 'directions_train_sharp': Icons.directions_train_sharp, + 'directions_train_rounded': Icons.directions_train_rounded, + 'directions_train_outlined': Icons.directions_train_outlined, + 'directions_transit': Icons.directions_transit, + 'directions_transit_sharp': Icons.directions_transit_sharp, + 'directions_transit_rounded': Icons.directions_transit_rounded, + 'directions_transit_outlined': Icons.directions_transit_outlined, + 'directions_transit_filled': Icons.directions_transit_filled, + 'directions_transit_filled_sharp': + Icons.directions_transit_filled_sharp, + 'directions_transit_filled_rounded': + Icons.directions_transit_filled_rounded, + 'directions_transit_filled_outlined': + Icons.directions_transit_filled_outlined, + 'directions_walk': Icons.directions_walk, + 'directions_walk_sharp': Icons.directions_walk_sharp, + 'directions_walk_rounded': Icons.directions_walk_rounded, + 'directions_walk_outlined': Icons.directions_walk_outlined, + 'dirty_lens': Icons.dirty_lens, + 'dirty_lens_sharp': Icons.dirty_lens_sharp, + 'dirty_lens_rounded': Icons.dirty_lens_rounded, + 'dirty_lens_outlined': Icons.dirty_lens_outlined, + 'disabled_by_default': Icons.disabled_by_default, + 'disabled_by_default_sharp': Icons.disabled_by_default_sharp, + 'disabled_by_default_rounded': Icons.disabled_by_default_rounded, + 'disabled_by_default_outlined': Icons.disabled_by_default_outlined, + 'disc_full': Icons.disc_full, + 'disc_full_sharp': Icons.disc_full_sharp, + 'disc_full_rounded': Icons.disc_full_rounded, + 'disc_full_outlined': Icons.disc_full_outlined, + 'dnd_forwardslash': Icons.dnd_forwardslash, + 'dnd_forwardslash_sharp': Icons.dnd_forwardslash_sharp, + 'dnd_forwardslash_rounded': Icons.dnd_forwardslash_rounded, + 'dnd_forwardslash_outlined': Icons.dnd_forwardslash_outlined, + 'dns': Icons.dns, + 'dns_sharp': Icons.dns_sharp, + 'dns_rounded': Icons.dns_rounded, + 'dns_outlined': Icons.dns_outlined, + 'do_disturb': Icons.do_disturb, + 'do_disturb_sharp': Icons.do_disturb_sharp, + 'do_disturb_rounded': Icons.do_disturb_rounded, + 'do_disturb_outlined': Icons.do_disturb_outlined, + 'do_disturb_alt': Icons.do_disturb_alt, + 'do_disturb_alt_sharp': Icons.do_disturb_alt_sharp, + 'do_disturb_alt_rounded': Icons.do_disturb_alt_rounded, + 'do_disturb_alt_outlined': Icons.do_disturb_alt_outlined, + 'do_disturb_off': Icons.do_disturb_off, + 'do_disturb_off_sharp': Icons.do_disturb_off_sharp, + 'do_disturb_off_rounded': Icons.do_disturb_off_rounded, + 'do_disturb_off_outlined': Icons.do_disturb_off_outlined, + 'do_disturb_on': Icons.do_disturb_on, + 'do_disturb_on_sharp': Icons.do_disturb_on_sharp, + 'do_disturb_on_rounded': Icons.do_disturb_on_rounded, + 'do_disturb_on_outlined': Icons.do_disturb_on_outlined, + 'do_not_disturb': Icons.do_not_disturb, + 'do_not_disturb_sharp': Icons.do_not_disturb_sharp, + 'do_not_disturb_rounded': Icons.do_not_disturb_rounded, + 'do_not_disturb_outlined': Icons.do_not_disturb_outlined, + 'do_not_disturb_alt': Icons.do_not_disturb_alt, + 'do_not_disturb_alt_sharp': Icons.do_not_disturb_alt_sharp, + 'do_not_disturb_alt_rounded': Icons.do_not_disturb_alt_rounded, + 'do_not_disturb_alt_outlined': Icons.do_not_disturb_alt_outlined, + 'do_not_disturb_off': Icons.do_not_disturb_off, + 'do_not_disturb_off_sharp': Icons.do_not_disturb_off_sharp, + 'do_not_disturb_off_rounded': Icons.do_not_disturb_off_rounded, + 'do_not_disturb_off_outlined': Icons.do_not_disturb_off_outlined, + 'do_not_disturb_on': Icons.do_not_disturb_on, + 'do_not_disturb_on_sharp': Icons.do_not_disturb_on_sharp, + 'do_not_disturb_on_rounded': Icons.do_not_disturb_on_rounded, + 'do_not_disturb_on_outlined': Icons.do_not_disturb_on_outlined, + 'do_not_disturb_on_total_silence': + Icons.do_not_disturb_on_total_silence, + 'do_not_disturb_on_total_silence_sharp': + Icons.do_not_disturb_on_total_silence_sharp, + 'do_not_disturb_on_total_silence_rounded': + Icons.do_not_disturb_on_total_silence_rounded, + 'do_not_disturb_on_total_silence_outlined': + Icons.do_not_disturb_on_total_silence_outlined, + 'do_not_step': Icons.do_not_step, + 'do_not_step_sharp': Icons.do_not_step_sharp, + 'do_not_step_rounded': Icons.do_not_step_rounded, + 'do_not_step_outlined': Icons.do_not_step_outlined, + 'do_not_touch': Icons.do_not_touch, + 'do_not_touch_sharp': Icons.do_not_touch_sharp, + 'do_not_touch_rounded': Icons.do_not_touch_rounded, + 'do_not_touch_outlined': Icons.do_not_touch_outlined, + 'dock': Icons.dock, + 'dock_sharp': Icons.dock_sharp, + 'dock_rounded': Icons.dock_rounded, + 'dock_outlined': Icons.dock_outlined, + 'document_scanner': Icons.document_scanner, + 'document_scanner_sharp': Icons.document_scanner_sharp, + 'document_scanner_rounded': Icons.document_scanner_rounded, + 'document_scanner_outlined': Icons.document_scanner_outlined, + 'domain': Icons.domain, + 'domain_sharp': Icons.domain_sharp, + 'domain_rounded': Icons.domain_rounded, + 'domain_outlined': Icons.domain_outlined, + 'domain_disabled': Icons.domain_disabled, + 'domain_disabled_sharp': Icons.domain_disabled_sharp, + 'domain_disabled_rounded': Icons.domain_disabled_rounded, + 'domain_disabled_outlined': Icons.domain_disabled_outlined, + 'domain_verification': Icons.domain_verification, + 'domain_verification_sharp': Icons.domain_verification_sharp, + 'domain_verification_rounded': Icons.domain_verification_rounded, + 'domain_verification_outlined': Icons.domain_verification_outlined, + 'done': Icons.done, + 'done_sharp': Icons.done_sharp, + 'done_rounded': Icons.done_rounded, + 'done_outlined': Icons.done_outlined, + 'done_all': Icons.done_all, + 'done_all_sharp': Icons.done_all_sharp, + 'done_all_rounded': Icons.done_all_rounded, + 'done_all_outlined': Icons.done_all_outlined, + 'done_outline': Icons.done_outline, + 'done_outline_sharp': Icons.done_outline_sharp, + 'done_outline_rounded': Icons.done_outline_rounded, + 'done_outline_outlined': Icons.done_outline_outlined, + 'donut_large': Icons.donut_large, + 'donut_large_sharp': Icons.donut_large_sharp, + 'donut_large_rounded': Icons.donut_large_rounded, + 'donut_large_outlined': Icons.donut_large_outlined, + 'donut_small': Icons.donut_small, + 'donut_small_sharp': Icons.donut_small_sharp, + 'donut_small_rounded': Icons.donut_small_rounded, + 'donut_small_outlined': Icons.donut_small_outlined, + 'door_back_door': Icons.door_back_door, + 'door_back_door_sharp': Icons.door_back_door_sharp, + 'door_back_door_rounded': Icons.door_back_door_rounded, + 'door_back_door_outlined': Icons.door_back_door_outlined, + 'door_front_door': Icons.door_front_door, + 'door_front_door_sharp': Icons.door_front_door_sharp, + 'door_front_door_rounded': Icons.door_front_door_rounded, + 'door_front_door_outlined': Icons.door_front_door_outlined, + 'door_sliding': Icons.door_sliding, + 'door_sliding_sharp': Icons.door_sliding_sharp, + 'door_sliding_rounded': Icons.door_sliding_rounded, + 'door_sliding_outlined': Icons.door_sliding_outlined, + 'doorbell': Icons.doorbell, + 'doorbell_sharp': Icons.doorbell_sharp, + 'doorbell_rounded': Icons.doorbell_rounded, + 'doorbell_outlined': Icons.doorbell_outlined, + 'double_arrow': Icons.double_arrow, + 'double_arrow_sharp': Icons.double_arrow_sharp, + 'double_arrow_rounded': Icons.double_arrow_rounded, + 'double_arrow_outlined': Icons.double_arrow_outlined, + 'downhill_skiing': Icons.downhill_skiing, + 'downhill_skiing_sharp': Icons.downhill_skiing_sharp, + 'downhill_skiing_rounded': Icons.downhill_skiing_rounded, + 'downhill_skiing_outlined': Icons.downhill_skiing_outlined, + 'download': Icons.download, + 'download_sharp': Icons.download_sharp, + 'download_rounded': Icons.download_rounded, + 'download_outlined': Icons.download_outlined, + 'download_done': Icons.download_done, + 'download_done_sharp': Icons.download_done_sharp, + 'download_done_rounded': Icons.download_done_rounded, + 'download_done_outlined': Icons.download_done_outlined, + 'download_for_offline': Icons.download_for_offline, + 'download_for_offline_sharp': Icons.download_for_offline_sharp, + 'download_for_offline_rounded': Icons.download_for_offline_rounded, + 'download_for_offline_outlined': Icons.download_for_offline_outlined, + 'downloading': Icons.downloading, + 'downloading_sharp': Icons.downloading_sharp, + 'downloading_rounded': Icons.downloading_rounded, + 'downloading_outlined': Icons.downloading_outlined, + 'drafts': Icons.drafts, + 'drafts_sharp': Icons.drafts_sharp, + 'drafts_rounded': Icons.drafts_rounded, + 'drafts_outlined': Icons.drafts_outlined, + 'drag_handle': Icons.drag_handle, + 'drag_handle_sharp': Icons.drag_handle_sharp, + 'drag_handle_rounded': Icons.drag_handle_rounded, + 'drag_handle_outlined': Icons.drag_handle_outlined, + 'drag_indicator': Icons.drag_indicator, + 'drag_indicator_sharp': Icons.drag_indicator_sharp, + 'drag_indicator_rounded': Icons.drag_indicator_rounded, + 'drag_indicator_outlined': Icons.drag_indicator_outlined, + 'drive_eta': Icons.drive_eta, + 'drive_eta_sharp': Icons.drive_eta_sharp, + 'drive_eta_rounded': Icons.drive_eta_rounded, + 'drive_eta_outlined': Icons.drive_eta_outlined, + 'drive_file_move': Icons.drive_file_move, + 'drive_file_move_sharp': Icons.drive_file_move_sharp, + 'drive_file_move_rounded': Icons.drive_file_move_rounded, + 'drive_file_move_outlined': Icons.drive_file_move_outlined, + 'drive_file_move_outline': Icons.drive_file_move_outline, + 'drive_file_rename_outline': Icons.drive_file_rename_outline, + 'drive_file_rename_outline_sharp': + Icons.drive_file_rename_outline_sharp, + 'drive_file_rename_outline_rounded': + Icons.drive_file_rename_outline_rounded, + 'drive_file_rename_outline_outlined': + Icons.drive_file_rename_outline_outlined, + 'drive_folder_upload': Icons.drive_folder_upload, + 'drive_folder_upload_sharp': Icons.drive_folder_upload_sharp, + 'drive_folder_upload_rounded': Icons.drive_folder_upload_rounded, + 'drive_folder_upload_outlined': Icons.drive_folder_upload_outlined, + 'dry': Icons.dry, + 'dry_sharp': Icons.dry_sharp, + 'dry_rounded': Icons.dry_rounded, + 'dry_outlined': Icons.dry_outlined, + 'dry_cleaning': Icons.dry_cleaning, + 'dry_cleaning_sharp': Icons.dry_cleaning_sharp, + 'dry_cleaning_rounded': Icons.dry_cleaning_rounded, + 'dry_cleaning_outlined': Icons.dry_cleaning_outlined, + 'duo': Icons.duo, + 'duo_sharp': Icons.duo_sharp, + 'duo_rounded': Icons.duo_rounded, + 'duo_outlined': Icons.duo_outlined, + 'dvr': Icons.dvr, + 'dvr_sharp': Icons.dvr_sharp, + 'dvr_rounded': Icons.dvr_rounded, + 'dvr_outlined': Icons.dvr_outlined, + 'dynamic_feed': Icons.dynamic_feed, + 'dynamic_feed_sharp': Icons.dynamic_feed_sharp, + 'dynamic_feed_rounded': Icons.dynamic_feed_rounded, + 'dynamic_feed_outlined': Icons.dynamic_feed_outlined, + 'dynamic_form': Icons.dynamic_form, + 'dynamic_form_sharp': Icons.dynamic_form_sharp, + 'dynamic_form_rounded': Icons.dynamic_form_rounded, + 'dynamic_form_outlined': Icons.dynamic_form_outlined, + 'e_mobiledata': Icons.e_mobiledata, + 'e_mobiledata_sharp': Icons.e_mobiledata_sharp, + 'e_mobiledata_rounded': Icons.e_mobiledata_rounded, + 'e_mobiledata_outlined': Icons.e_mobiledata_outlined, + 'earbuds': Icons.earbuds, + 'earbuds_sharp': Icons.earbuds_sharp, + 'earbuds_rounded': Icons.earbuds_rounded, + 'earbuds_outlined': Icons.earbuds_outlined, + 'earbuds_battery': Icons.earbuds_battery, + 'earbuds_battery_sharp': Icons.earbuds_battery_sharp, + 'earbuds_battery_rounded': Icons.earbuds_battery_rounded, + 'earbuds_battery_outlined': Icons.earbuds_battery_outlined, + 'east': Icons.east, + 'east_sharp': Icons.east_sharp, + 'east_rounded': Icons.east_rounded, + 'east_outlined': Icons.east_outlined, + 'eco': Icons.eco, + 'eco_sharp': Icons.eco_sharp, + 'eco_rounded': Icons.eco_rounded, + 'eco_outlined': Icons.eco_outlined, + 'edgesensor_high': Icons.edgesensor_high, + 'edgesensor_high_sharp': Icons.edgesensor_high_sharp, + 'edgesensor_high_rounded': Icons.edgesensor_high_rounded, + 'edgesensor_high_outlined': Icons.edgesensor_high_outlined, + 'edgesensor_low': Icons.edgesensor_low, + 'edgesensor_low_sharp': Icons.edgesensor_low_sharp, + 'edgesensor_low_rounded': Icons.edgesensor_low_rounded, + 'edgesensor_low_outlined': Icons.edgesensor_low_outlined, + 'edit': Icons.edit, + 'edit_sharp': Icons.edit_sharp, + 'edit_rounded': Icons.edit_rounded, + 'edit_outlined': Icons.edit_outlined, + 'edit_attributes': Icons.edit_attributes, + 'edit_attributes_sharp': Icons.edit_attributes_sharp, + 'edit_attributes_rounded': Icons.edit_attributes_rounded, + 'edit_attributes_outlined': Icons.edit_attributes_outlined, + 'edit_location': Icons.edit_location, + 'edit_location_sharp': Icons.edit_location_sharp, + 'edit_location_rounded': Icons.edit_location_rounded, + 'edit_location_outlined': Icons.edit_location_outlined, + 'edit_location_alt': Icons.edit_location_alt, + 'edit_location_alt_sharp': Icons.edit_location_alt_sharp, + 'edit_location_alt_rounded': Icons.edit_location_alt_rounded, + 'edit_location_alt_outlined': Icons.edit_location_alt_outlined, + 'edit_notifications': Icons.edit_notifications, + 'edit_notifications_sharp': Icons.edit_notifications_sharp, + 'edit_notifications_rounded': Icons.edit_notifications_rounded, + 'edit_notifications_outlined': Icons.edit_notifications_outlined, + 'edit_off': Icons.edit_off, + 'edit_off_sharp': Icons.edit_off_sharp, + 'edit_off_rounded': Icons.edit_off_rounded, + 'edit_off_outlined': Icons.edit_off_outlined, + 'edit_road': Icons.edit_road, + 'edit_road_sharp': Icons.edit_road_sharp, + 'edit_road_rounded': Icons.edit_road_rounded, + 'edit_road_outlined': Icons.edit_road_outlined, + 'eject': Icons.eject, + 'eject_sharp': Icons.eject_sharp, + 'eject_rounded': Icons.eject_rounded, + 'eject_outlined': Icons.eject_outlined, + 'elderly': Icons.elderly, + 'elderly_sharp': Icons.elderly_sharp, + 'elderly_rounded': Icons.elderly_rounded, + 'elderly_outlined': Icons.elderly_outlined, + 'electric_bike': Icons.electric_bike, + 'electric_bike_sharp': Icons.electric_bike_sharp, + 'electric_bike_rounded': Icons.electric_bike_rounded, + 'electric_bike_outlined': Icons.electric_bike_outlined, + 'electric_car': Icons.electric_car, + 'electric_car_sharp': Icons.electric_car_sharp, + 'electric_car_rounded': Icons.electric_car_rounded, + 'electric_car_outlined': Icons.electric_car_outlined, + 'electric_moped': Icons.electric_moped, + 'electric_moped_sharp': Icons.electric_moped_sharp, + 'electric_moped_rounded': Icons.electric_moped_rounded, + 'electric_moped_outlined': Icons.electric_moped_outlined, + 'electric_rickshaw': Icons.electric_rickshaw, + 'electric_rickshaw_sharp': Icons.electric_rickshaw_sharp, + 'electric_rickshaw_rounded': Icons.electric_rickshaw_rounded, + 'electric_rickshaw_outlined': Icons.electric_rickshaw_outlined, + 'electric_scooter': Icons.electric_scooter, + 'electric_scooter_sharp': Icons.electric_scooter_sharp, + 'electric_scooter_rounded': Icons.electric_scooter_rounded, + 'electric_scooter_outlined': Icons.electric_scooter_outlined, + 'electrical_services': Icons.electrical_services, + 'electrical_services_sharp': Icons.electrical_services_sharp, + 'electrical_services_rounded': Icons.electrical_services_rounded, + 'electrical_services_outlined': Icons.electrical_services_outlined, + 'elevator': Icons.elevator, + 'elevator_sharp': Icons.elevator_sharp, + 'elevator_rounded': Icons.elevator_rounded, + 'elevator_outlined': Icons.elevator_outlined, + 'email': Icons.email, + 'email_sharp': Icons.email_sharp, + 'email_rounded': Icons.email_rounded, + 'email_outlined': Icons.email_outlined, + 'emoji_emotions': Icons.emoji_emotions, + 'emoji_emotions_sharp': Icons.emoji_emotions_sharp, + 'emoji_emotions_rounded': Icons.emoji_emotions_rounded, + 'emoji_emotions_outlined': Icons.emoji_emotions_outlined, + 'emoji_events': Icons.emoji_events, + 'emoji_events_sharp': Icons.emoji_events_sharp, + 'emoji_events_rounded': Icons.emoji_events_rounded, + 'emoji_events_outlined': Icons.emoji_events_outlined, + 'emoji_flags': Icons.emoji_flags, + 'emoji_flags_sharp': Icons.emoji_flags_sharp, + 'emoji_flags_rounded': Icons.emoji_flags_rounded, + 'emoji_flags_outlined': Icons.emoji_flags_outlined, + 'emoji_food_beverage': Icons.emoji_food_beverage, + 'emoji_food_beverage_sharp': Icons.emoji_food_beverage_sharp, + 'emoji_food_beverage_rounded': Icons.emoji_food_beverage_rounded, + 'emoji_food_beverage_outlined': Icons.emoji_food_beverage_outlined, + 'emoji_nature': Icons.emoji_nature, + 'emoji_nature_sharp': Icons.emoji_nature_sharp, + 'emoji_nature_rounded': Icons.emoji_nature_rounded, + 'emoji_nature_outlined': Icons.emoji_nature_outlined, + 'emoji_objects': Icons.emoji_objects, + 'emoji_objects_sharp': Icons.emoji_objects_sharp, + 'emoji_objects_rounded': Icons.emoji_objects_rounded, + 'emoji_objects_outlined': Icons.emoji_objects_outlined, + 'emoji_people': Icons.emoji_people, + 'emoji_people_sharp': Icons.emoji_people_sharp, + 'emoji_people_rounded': Icons.emoji_people_rounded, + 'emoji_people_outlined': Icons.emoji_people_outlined, + 'emoji_symbols': Icons.emoji_symbols, + 'emoji_symbols_sharp': Icons.emoji_symbols_sharp, + 'emoji_symbols_rounded': Icons.emoji_symbols_rounded, + 'emoji_symbols_outlined': Icons.emoji_symbols_outlined, + 'emoji_transportation': Icons.emoji_transportation, + 'emoji_transportation_sharp': Icons.emoji_transportation_sharp, + 'emoji_transportation_rounded': Icons.emoji_transportation_rounded, + 'emoji_transportation_outlined': Icons.emoji_transportation_outlined, + 'engineering': Icons.engineering, + 'engineering_sharp': Icons.engineering_sharp, + 'engineering_rounded': Icons.engineering_rounded, + 'engineering_outlined': Icons.engineering_outlined, + 'enhance_photo_translate': Icons.enhance_photo_translate, + 'enhance_photo_translate_sharp': Icons.enhance_photo_translate_sharp, + 'enhance_photo_translate_rounded': + Icons.enhance_photo_translate_rounded, + 'enhance_photo_translate_outlined': + Icons.enhance_photo_translate_outlined, + 'enhanced_encryption': Icons.enhanced_encryption, + 'enhanced_encryption_sharp': Icons.enhanced_encryption_sharp, + 'enhanced_encryption_rounded': Icons.enhanced_encryption_rounded, + 'enhanced_encryption_outlined': Icons.enhanced_encryption_outlined, + 'equalizer': Icons.equalizer, + 'equalizer_sharp': Icons.equalizer_sharp, + 'equalizer_rounded': Icons.equalizer_rounded, + 'equalizer_outlined': Icons.equalizer_outlined, + 'error': Icons.error, + 'error_sharp': Icons.error_sharp, + 'error_rounded': Icons.error_rounded, + 'error_outlined': Icons.error_outlined, + 'error_outline': Icons.error_outline, + 'error_outline_sharp': Icons.error_outline_sharp, + 'error_outline_rounded': Icons.error_outline_rounded, + 'error_outline_outlined': Icons.error_outline_outlined, + 'escalator': Icons.escalator, + 'escalator_sharp': Icons.escalator_sharp, + 'escalator_rounded': Icons.escalator_rounded, + 'escalator_outlined': Icons.escalator_outlined, + 'escalator_warning': Icons.escalator_warning, + 'escalator_warning_sharp': Icons.escalator_warning_sharp, + 'escalator_warning_rounded': Icons.escalator_warning_rounded, + 'escalator_warning_outlined': Icons.escalator_warning_outlined, + 'euro': Icons.euro, + 'euro_sharp': Icons.euro_sharp, + 'euro_rounded': Icons.euro_rounded, + 'euro_outlined': Icons.euro_outlined, + 'euro_symbol': Icons.euro_symbol, + 'euro_symbol_sharp': Icons.euro_symbol_sharp, + 'euro_symbol_rounded': Icons.euro_symbol_rounded, + 'euro_symbol_outlined': Icons.euro_symbol_outlined, + 'ev_station': Icons.ev_station, + 'ev_station_sharp': Icons.ev_station_sharp, + 'ev_station_rounded': Icons.ev_station_rounded, + 'ev_station_outlined': Icons.ev_station_outlined, + 'event': Icons.event, + 'event_sharp': Icons.event_sharp, + 'event_rounded': Icons.event_rounded, + 'event_outlined': Icons.event_outlined, + 'event_available': Icons.event_available, + 'event_available_sharp': Icons.event_available_sharp, + 'event_available_rounded': Icons.event_available_rounded, + 'event_available_outlined': Icons.event_available_outlined, + 'event_busy': Icons.event_busy, + 'event_busy_sharp': Icons.event_busy_sharp, + 'event_busy_rounded': Icons.event_busy_rounded, + 'event_busy_outlined': Icons.event_busy_outlined, + 'event_note': Icons.event_note, + 'event_note_sharp': Icons.event_note_sharp, + 'event_note_rounded': Icons.event_note_rounded, + 'event_note_outlined': Icons.event_note_outlined, + 'event_seat': Icons.event_seat, + 'event_seat_sharp': Icons.event_seat_sharp, + 'event_seat_rounded': Icons.event_seat_rounded, + 'event_seat_outlined': Icons.event_seat_outlined, + 'exit_to_app': Icons.exit_to_app, + 'exit_to_app_sharp': Icons.exit_to_app_sharp, + 'exit_to_app_rounded': Icons.exit_to_app_rounded, + 'exit_to_app_outlined': Icons.exit_to_app_outlined, + 'expand': Icons.expand, + 'expand_sharp': Icons.expand_sharp, + 'expand_rounded': Icons.expand_rounded, + 'expand_outlined': Icons.expand_outlined, + 'expand_less': Icons.expand_less, + 'expand_less_sharp': Icons.expand_less_sharp, + 'expand_less_rounded': Icons.expand_less_rounded, + 'expand_less_outlined': Icons.expand_less_outlined, + 'expand_more': Icons.expand_more, + 'expand_more_sharp': Icons.expand_more_sharp, + 'expand_more_rounded': Icons.expand_more_rounded, + 'expand_more_outlined': Icons.expand_more_outlined, + 'explicit': Icons.explicit, + 'explicit_sharp': Icons.explicit_sharp, + 'explicit_rounded': Icons.explicit_rounded, + 'explicit_outlined': Icons.explicit_outlined, + 'explore': Icons.explore, + 'explore_sharp': Icons.explore_sharp, + 'explore_rounded': Icons.explore_rounded, + 'explore_outlined': Icons.explore_outlined, + 'explore_off': Icons.explore_off, + 'explore_off_sharp': Icons.explore_off_sharp, + 'explore_off_rounded': Icons.explore_off_rounded, + 'explore_off_outlined': Icons.explore_off_outlined, + 'exposure': Icons.exposure, + 'exposure_sharp': Icons.exposure_sharp, + 'exposure_rounded': Icons.exposure_rounded, + 'exposure_outlined': Icons.exposure_outlined, + 'exposure_minus_1': Icons.exposure_minus_1, + 'exposure_minus_1_sharp': Icons.exposure_minus_1_sharp, + 'exposure_minus_1_rounded': Icons.exposure_minus_1_rounded, + 'exposure_minus_1_outlined': Icons.exposure_minus_1_outlined, + 'exposure_minus_2': Icons.exposure_minus_2, + 'exposure_minus_2_sharp': Icons.exposure_minus_2_sharp, + 'exposure_minus_2_rounded': Icons.exposure_minus_2_rounded, + 'exposure_minus_2_outlined': Icons.exposure_minus_2_outlined, + 'exposure_neg_1': Icons.exposure_neg_1, + 'exposure_neg_1_sharp': Icons.exposure_neg_1_sharp, + 'exposure_neg_1_rounded': Icons.exposure_neg_1_rounded, + 'exposure_neg_1_outlined': Icons.exposure_neg_1_outlined, + 'exposure_neg_2': Icons.exposure_neg_2, + 'exposure_neg_2_sharp': Icons.exposure_neg_2_sharp, + 'exposure_neg_2_rounded': Icons.exposure_neg_2_rounded, + 'exposure_neg_2_outlined': Icons.exposure_neg_2_outlined, + 'exposure_plus_1': Icons.exposure_plus_1, + 'exposure_plus_1_sharp': Icons.exposure_plus_1_sharp, + 'exposure_plus_1_rounded': Icons.exposure_plus_1_rounded, + 'exposure_plus_1_outlined': Icons.exposure_plus_1_outlined, + 'exposure_plus_2': Icons.exposure_plus_2, + 'exposure_plus_2_sharp': Icons.exposure_plus_2_sharp, + 'exposure_plus_2_rounded': Icons.exposure_plus_2_rounded, + 'exposure_plus_2_outlined': Icons.exposure_plus_2_outlined, + 'exposure_zero': Icons.exposure_zero, + 'exposure_zero_sharp': Icons.exposure_zero_sharp, + 'exposure_zero_rounded': Icons.exposure_zero_rounded, + 'exposure_zero_outlined': Icons.exposure_zero_outlined, + 'extension': Icons.extension, + 'extension_sharp': Icons.extension_sharp, + 'extension_rounded': Icons.extension_rounded, + 'extension_outlined': Icons.extension_outlined, + 'extension_off': Icons.extension_off, + 'extension_off_sharp': Icons.extension_off_sharp, + 'extension_off_rounded': Icons.extension_off_rounded, + 'extension_off_outlined': Icons.extension_off_outlined, + 'face': Icons.face, + 'face_sharp': Icons.face_sharp, + 'face_rounded': Icons.face_rounded, + 'face_outlined': Icons.face_outlined, + 'face_retouching_natural': Icons.face_retouching_natural, + 'face_retouching_natural_sharp': Icons.face_retouching_natural_sharp, + 'face_retouching_natural_rounded': + Icons.face_retouching_natural_rounded, + 'face_retouching_natural_outlined': + Icons.face_retouching_natural_outlined, + 'face_retouching_off': Icons.face_retouching_off, + 'face_retouching_off_sharp': Icons.face_retouching_off_sharp, + 'face_retouching_off_rounded': Icons.face_retouching_off_rounded, + 'face_retouching_off_outlined': Icons.face_retouching_off_outlined, + 'face_unlock_sharp': Icons.face_unlock_sharp, + 'face_unlock_rounded': Icons.face_unlock_rounded, + 'face_unlock_outlined': Icons.face_unlock_outlined, + 'facebook': Icons.facebook, + 'facebook_sharp': Icons.facebook_sharp, + 'facebook_rounded': Icons.facebook_rounded, + 'facebook_outlined': Icons.facebook_outlined, + 'fact_check': Icons.fact_check, + 'fact_check_sharp': Icons.fact_check_sharp, + 'fact_check_rounded': Icons.fact_check_rounded, + 'fact_check_outlined': Icons.fact_check_outlined, + 'family_restroom': Icons.family_restroom, + 'family_restroom_sharp': Icons.family_restroom_sharp, + 'family_restroom_rounded': Icons.family_restroom_rounded, + 'family_restroom_outlined': Icons.family_restroom_outlined, + 'fast_forward': Icons.fast_forward, + 'fast_forward_sharp': Icons.fast_forward_sharp, + 'fast_forward_rounded': Icons.fast_forward_rounded, + 'fast_forward_outlined': Icons.fast_forward_outlined, + 'fast_rewind': Icons.fast_rewind, + 'fast_rewind_sharp': Icons.fast_rewind_sharp, + 'fast_rewind_rounded': Icons.fast_rewind_rounded, + 'fast_rewind_outlined': Icons.fast_rewind_outlined, + 'fastfood': Icons.fastfood, + 'fastfood_sharp': Icons.fastfood_sharp, + 'fastfood_rounded': Icons.fastfood_rounded, + 'fastfood_outlined': Icons.fastfood_outlined, + 'favorite': Icons.favorite, + 'favorite_sharp': Icons.favorite_sharp, + 'favorite_rounded': Icons.favorite_rounded, + 'favorite_outlined': Icons.favorite_outlined, + 'favorite_border': Icons.favorite_border, + 'favorite_border_sharp': Icons.favorite_border_sharp, + 'favorite_border_rounded': Icons.favorite_border_rounded, + 'favorite_border_outlined': Icons.favorite_border_outlined, + 'favorite_outline': Icons.favorite_outline, + 'favorite_outline_sharp': Icons.favorite_outline_sharp, + 'favorite_outline_rounded': Icons.favorite_outline_rounded, + 'favorite_outline_outlined': Icons.favorite_outline_outlined, + 'featured_play_list': Icons.featured_play_list, + 'featured_play_list_sharp': Icons.featured_play_list_sharp, + 'featured_play_list_rounded': Icons.featured_play_list_rounded, + 'featured_play_list_outlined': Icons.featured_play_list_outlined, + 'featured_video': Icons.featured_video, + 'featured_video_sharp': Icons.featured_video_sharp, + 'featured_video_rounded': Icons.featured_video_rounded, + 'featured_video_outlined': Icons.featured_video_outlined, + 'feed': Icons.feed, + 'feed_sharp': Icons.feed_sharp, + 'feed_rounded': Icons.feed_rounded, + 'feed_outlined': Icons.feed_outlined, + 'feedback': Icons.feedback, + 'feedback_sharp': Icons.feedback_sharp, + 'feedback_rounded': Icons.feedback_rounded, + 'feedback_outlined': Icons.feedback_outlined, + 'female': Icons.female, + 'female_sharp': Icons.female_sharp, + 'female_rounded': Icons.female_rounded, + 'female_outlined': Icons.female_outlined, + 'fence': Icons.fence, + 'fence_sharp': Icons.fence_sharp, + 'fence_rounded': Icons.fence_rounded, + 'fence_outlined': Icons.fence_outlined, + 'festival': Icons.festival, + 'festival_sharp': Icons.festival_sharp, + 'festival_rounded': Icons.festival_rounded, + 'festival_outlined': Icons.festival_outlined, + 'fiber_dvr': Icons.fiber_dvr, + 'fiber_dvr_sharp': Icons.fiber_dvr_sharp, + 'fiber_dvr_rounded': Icons.fiber_dvr_rounded, + 'fiber_dvr_outlined': Icons.fiber_dvr_outlined, + 'fiber_manual_record': Icons.fiber_manual_record, + 'fiber_manual_record_sharp': Icons.fiber_manual_record_sharp, + 'fiber_manual_record_rounded': Icons.fiber_manual_record_rounded, + 'fiber_manual_record_outlined': Icons.fiber_manual_record_outlined, + 'fiber_new': Icons.fiber_new, + 'fiber_new_sharp': Icons.fiber_new_sharp, + 'fiber_new_rounded': Icons.fiber_new_rounded, + 'fiber_new_outlined': Icons.fiber_new_outlined, + 'fiber_pin': Icons.fiber_pin, + 'fiber_pin_sharp': Icons.fiber_pin_sharp, + 'fiber_pin_rounded': Icons.fiber_pin_rounded, + 'fiber_pin_outlined': Icons.fiber_pin_outlined, + 'fiber_smart_record': Icons.fiber_smart_record, + 'fiber_smart_record_sharp': Icons.fiber_smart_record_sharp, + 'fiber_smart_record_rounded': Icons.fiber_smart_record_rounded, + 'fiber_smart_record_outlined': Icons.fiber_smart_record_outlined, + 'file_copy': Icons.file_copy, + 'file_copy_sharp': Icons.file_copy_sharp, + 'file_copy_rounded': Icons.file_copy_rounded, + 'file_copy_outlined': Icons.file_copy_outlined, + 'file_download': Icons.file_download, + 'file_download_sharp': Icons.file_download_sharp, + 'file_download_rounded': Icons.file_download_rounded, + 'file_download_outlined': Icons.file_download_outlined, + 'file_download_done': Icons.file_download_done, + 'file_download_done_sharp': Icons.file_download_done_sharp, + 'file_download_done_rounded': Icons.file_download_done_rounded, + 'file_download_done_outlined': Icons.file_download_done_outlined, + 'file_download_off': Icons.file_download_off, + 'file_download_off_sharp': Icons.file_download_off_sharp, + 'file_download_off_rounded': Icons.file_download_off_rounded, + 'file_download_off_outlined': Icons.file_download_off_outlined, + 'file_present': Icons.file_present, + 'file_present_sharp': Icons.file_present_sharp, + 'file_present_rounded': Icons.file_present_rounded, + 'file_present_outlined': Icons.file_present_outlined, + 'file_upload': Icons.file_upload, + 'file_upload_sharp': Icons.file_upload_sharp, + 'file_upload_rounded': Icons.file_upload_rounded, + 'file_upload_outlined': Icons.file_upload_outlined, + 'filter': Icons.filter, + 'filter_sharp': Icons.filter_sharp, + 'filter_rounded': Icons.filter_rounded, + 'filter_outlined': Icons.filter_outlined, + 'filter_1': Icons.filter_1, + 'filter_1_sharp': Icons.filter_1_sharp, + 'filter_1_rounded': Icons.filter_1_rounded, + 'filter_1_outlined': Icons.filter_1_outlined, + 'filter_2': Icons.filter_2, + 'filter_2_sharp': Icons.filter_2_sharp, + 'filter_2_rounded': Icons.filter_2_rounded, + 'filter_2_outlined': Icons.filter_2_outlined, + 'filter_3': Icons.filter_3, + 'filter_3_sharp': Icons.filter_3_sharp, + 'filter_3_rounded': Icons.filter_3_rounded, + 'filter_3_outlined': Icons.filter_3_outlined, + 'filter_4': Icons.filter_4, + 'filter_4_sharp': Icons.filter_4_sharp, + 'filter_4_rounded': Icons.filter_4_rounded, + 'filter_4_outlined': Icons.filter_4_outlined, + 'filter_5': Icons.filter_5, + 'filter_5_sharp': Icons.filter_5_sharp, + 'filter_5_rounded': Icons.filter_5_rounded, + 'filter_5_outlined': Icons.filter_5_outlined, + 'filter_6': Icons.filter_6, + 'filter_6_sharp': Icons.filter_6_sharp, + 'filter_6_rounded': Icons.filter_6_rounded, + 'filter_6_outlined': Icons.filter_6_outlined, + 'filter_7': Icons.filter_7, + 'filter_7_sharp': Icons.filter_7_sharp, + 'filter_7_rounded': Icons.filter_7_rounded, + 'filter_7_outlined': Icons.filter_7_outlined, + 'filter_8': Icons.filter_8, + 'filter_8_sharp': Icons.filter_8_sharp, + 'filter_8_rounded': Icons.filter_8_rounded, + 'filter_8_outlined': Icons.filter_8_outlined, + 'filter_9': Icons.filter_9, + 'filter_9_sharp': Icons.filter_9_sharp, + 'filter_9_rounded': Icons.filter_9_rounded, + 'filter_9_outlined': Icons.filter_9_outlined, + 'filter_9_plus': Icons.filter_9_plus, + 'filter_9_plus_sharp': Icons.filter_9_plus_sharp, + 'filter_9_plus_rounded': Icons.filter_9_plus_rounded, + 'filter_9_plus_outlined': Icons.filter_9_plus_outlined, + 'filter_alt': Icons.filter_alt, + 'filter_alt_sharp': Icons.filter_alt_sharp, + 'filter_alt_rounded': Icons.filter_alt_rounded, + 'filter_alt_outlined': Icons.filter_alt_outlined, + 'filter_b_and_w': Icons.filter_b_and_w, + 'filter_b_and_w_sharp': Icons.filter_b_and_w_sharp, + 'filter_b_and_w_rounded': Icons.filter_b_and_w_rounded, + 'filter_b_and_w_outlined': Icons.filter_b_and_w_outlined, + 'filter_center_focus': Icons.filter_center_focus, + 'filter_center_focus_sharp': Icons.filter_center_focus_sharp, + 'filter_center_focus_rounded': Icons.filter_center_focus_rounded, + 'filter_center_focus_outlined': Icons.filter_center_focus_outlined, + 'filter_drama': Icons.filter_drama, + 'filter_drama_sharp': Icons.filter_drama_sharp, + 'filter_drama_rounded': Icons.filter_drama_rounded, + 'filter_drama_outlined': Icons.filter_drama_outlined, + 'filter_frames': Icons.filter_frames, + 'filter_frames_sharp': Icons.filter_frames_sharp, + 'filter_frames_rounded': Icons.filter_frames_rounded, + 'filter_frames_outlined': Icons.filter_frames_outlined, + 'filter_hdr': Icons.filter_hdr, + 'filter_hdr_sharp': Icons.filter_hdr_sharp, + 'filter_hdr_rounded': Icons.filter_hdr_rounded, + 'filter_hdr_outlined': Icons.filter_hdr_outlined, + 'filter_list': Icons.filter_list, + 'filter_list_sharp': Icons.filter_list_sharp, + 'filter_list_rounded': Icons.filter_list_rounded, + 'filter_list_outlined': Icons.filter_list_outlined, + 'filter_list_alt': Icons.filter_list_alt, + 'filter_none': Icons.filter_none, + 'filter_none_sharp': Icons.filter_none_sharp, + 'filter_none_rounded': Icons.filter_none_rounded, + 'filter_none_outlined': Icons.filter_none_outlined, + 'filter_tilt_shift': Icons.filter_tilt_shift, + 'filter_tilt_shift_sharp': Icons.filter_tilt_shift_sharp, + 'filter_tilt_shift_rounded': Icons.filter_tilt_shift_rounded, + 'filter_tilt_shift_outlined': Icons.filter_tilt_shift_outlined, + 'filter_vintage': Icons.filter_vintage, + 'filter_vintage_sharp': Icons.filter_vintage_sharp, + 'filter_vintage_rounded': Icons.filter_vintage_rounded, + 'filter_vintage_outlined': Icons.filter_vintage_outlined, + 'find_in_page': Icons.find_in_page, + 'find_in_page_sharp': Icons.find_in_page_sharp, + 'find_in_page_rounded': Icons.find_in_page_rounded, + 'find_in_page_outlined': Icons.find_in_page_outlined, + 'find_replace': Icons.find_replace, + 'find_replace_sharp': Icons.find_replace_sharp, + 'find_replace_rounded': Icons.find_replace_rounded, + 'find_replace_outlined': Icons.find_replace_outlined, + 'fingerprint': Icons.fingerprint, + 'fingerprint_sharp': Icons.fingerprint_sharp, + 'fingerprint_rounded': Icons.fingerprint_rounded, + 'fingerprint_outlined': Icons.fingerprint_outlined, + 'fire_extinguisher': Icons.fire_extinguisher, + 'fire_extinguisher_sharp': Icons.fire_extinguisher_sharp, + 'fire_extinguisher_rounded': Icons.fire_extinguisher_rounded, + 'fire_extinguisher_outlined': Icons.fire_extinguisher_outlined, + 'fire_hydrant': Icons.fire_hydrant, + 'fireplace': Icons.fireplace, + 'fireplace_sharp': Icons.fireplace_sharp, + 'fireplace_rounded': Icons.fireplace_rounded, + 'fireplace_outlined': Icons.fireplace_outlined, + 'first_page': Icons.first_page, + 'first_page_sharp': Icons.first_page_sharp, + 'first_page_rounded': Icons.first_page_rounded, + 'first_page_outlined': Icons.first_page_outlined, + 'fit_screen': Icons.fit_screen, + 'fit_screen_sharp': Icons.fit_screen_sharp, + 'fit_screen_rounded': Icons.fit_screen_rounded, + 'fit_screen_outlined': Icons.fit_screen_outlined, + 'fitness_center': Icons.fitness_center, + 'fitness_center_sharp': Icons.fitness_center_sharp, + 'fitness_center_rounded': Icons.fitness_center_rounded, + 'fitness_center_outlined': Icons.fitness_center_outlined, + 'flag': Icons.flag, + 'flag_sharp': Icons.flag_sharp, + 'flag_rounded': Icons.flag_rounded, + 'flag_outlined': Icons.flag_outlined, + 'flaky': Icons.flaky, + 'flaky_sharp': Icons.flaky_sharp, + 'flaky_rounded': Icons.flaky_rounded, + 'flaky_outlined': Icons.flaky_outlined, + 'flare': Icons.flare, + 'flare_sharp': Icons.flare_sharp, + 'flare_rounded': Icons.flare_rounded, + 'flare_outlined': Icons.flare_outlined, + 'flash_auto': Icons.flash_auto, + 'flash_auto_sharp': Icons.flash_auto_sharp, + 'flash_auto_rounded': Icons.flash_auto_rounded, + 'flash_auto_outlined': Icons.flash_auto_outlined, + 'flash_off': Icons.flash_off, + 'flash_off_sharp': Icons.flash_off_sharp, + 'flash_off_rounded': Icons.flash_off_rounded, + 'flash_off_outlined': Icons.flash_off_outlined, + 'flash_on': Icons.flash_on, + 'flash_on_sharp': Icons.flash_on_sharp, + 'flash_on_rounded': Icons.flash_on_rounded, + 'flash_on_outlined': Icons.flash_on_outlined, + 'flashlight_off': Icons.flashlight_off, + 'flashlight_off_sharp': Icons.flashlight_off_sharp, + 'flashlight_off_rounded': Icons.flashlight_off_rounded, + 'flashlight_off_outlined': Icons.flashlight_off_outlined, + 'flashlight_on': Icons.flashlight_on, + 'flashlight_on_sharp': Icons.flashlight_on_sharp, + 'flashlight_on_rounded': Icons.flashlight_on_rounded, + 'flashlight_on_outlined': Icons.flashlight_on_outlined, + 'flatware': Icons.flatware, + 'flatware_sharp': Icons.flatware_sharp, + 'flatware_rounded': Icons.flatware_rounded, + 'flatware_outlined': Icons.flatware_outlined, + 'flight': Icons.flight, + 'flight_sharp': Icons.flight_sharp, + 'flight_rounded': Icons.flight_rounded, + 'flight_outlined': Icons.flight_outlined, + 'flight_land': Icons.flight_land, + 'flight_land_sharp': Icons.flight_land_sharp, + 'flight_land_rounded': Icons.flight_land_rounded, + 'flight_land_outlined': Icons.flight_land_outlined, + 'flight_takeoff': Icons.flight_takeoff, + 'flight_takeoff_sharp': Icons.flight_takeoff_sharp, + 'flight_takeoff_rounded': Icons.flight_takeoff_rounded, + 'flight_takeoff_outlined': Icons.flight_takeoff_outlined, + 'flip': Icons.flip, + 'flip_sharp': Icons.flip_sharp, + 'flip_rounded': Icons.flip_rounded, + 'flip_outlined': Icons.flip_outlined, + 'flip_camera_android': Icons.flip_camera_android, + 'flip_camera_android_sharp': Icons.flip_camera_android_sharp, + 'flip_camera_android_rounded': Icons.flip_camera_android_rounded, + 'flip_camera_android_outlined': Icons.flip_camera_android_outlined, + 'flip_camera_ios': Icons.flip_camera_ios, + 'flip_camera_ios_sharp': Icons.flip_camera_ios_sharp, + 'flip_camera_ios_rounded': Icons.flip_camera_ios_rounded, + 'flip_camera_ios_outlined': Icons.flip_camera_ios_outlined, + 'flip_to_back': Icons.flip_to_back, + 'flip_to_back_sharp': Icons.flip_to_back_sharp, + 'flip_to_back_rounded': Icons.flip_to_back_rounded, + 'flip_to_back_outlined': Icons.flip_to_back_outlined, + 'flip_to_front': Icons.flip_to_front, + 'flip_to_front_sharp': Icons.flip_to_front_sharp, + 'flip_to_front_rounded': Icons.flip_to_front_rounded, + 'flip_to_front_outlined': Icons.flip_to_front_outlined, + 'flourescent': Icons.flourescent, + 'flourescent_sharp': Icons.flourescent_sharp, + 'flourescent_rounded': Icons.flourescent_rounded, + 'flourescent_outlined': Icons.flourescent_outlined, + 'flutter_dash': Icons.flutter_dash, + 'flutter_dash_sharp': Icons.flutter_dash_sharp, + 'flutter_dash_rounded': Icons.flutter_dash_rounded, + 'flutter_dash_outlined': Icons.flutter_dash_outlined, + 'fmd_bad': Icons.fmd_bad, + 'fmd_bad_sharp': Icons.fmd_bad_sharp, + 'fmd_bad_rounded': Icons.fmd_bad_rounded, + 'fmd_bad_outlined': Icons.fmd_bad_outlined, + 'fmd_good': Icons.fmd_good, + 'fmd_good_sharp': Icons.fmd_good_sharp, + 'fmd_good_rounded': Icons.fmd_good_rounded, + 'fmd_good_outlined': Icons.fmd_good_outlined, + 'folder': Icons.folder, + 'folder_sharp': Icons.folder_sharp, + 'folder_rounded': Icons.folder_rounded, + 'folder_outlined': Icons.folder_outlined, + 'folder_open': Icons.folder_open, + 'folder_open_sharp': Icons.folder_open_sharp, + 'folder_open_rounded': Icons.folder_open_rounded, + 'folder_open_outlined': Icons.folder_open_outlined, + 'folder_shared': Icons.folder_shared, + 'folder_shared_sharp': Icons.folder_shared_sharp, + 'folder_shared_rounded': Icons.folder_shared_rounded, + 'folder_shared_outlined': Icons.folder_shared_outlined, + 'folder_special': Icons.folder_special, + 'folder_special_sharp': Icons.folder_special_sharp, + 'folder_special_rounded': Icons.folder_special_rounded, + 'folder_special_outlined': Icons.folder_special_outlined, + 'follow_the_signs': Icons.follow_the_signs, + 'follow_the_signs_sharp': Icons.follow_the_signs_sharp, + 'follow_the_signs_rounded': Icons.follow_the_signs_rounded, + 'follow_the_signs_outlined': Icons.follow_the_signs_outlined, + 'font_download': Icons.font_download, + 'font_download_sharp': Icons.font_download_sharp, + 'font_download_rounded': Icons.font_download_rounded, + 'font_download_outlined': Icons.font_download_outlined, + 'font_download_off': Icons.font_download_off, + 'font_download_off_sharp': Icons.font_download_off_sharp, + 'font_download_off_rounded': Icons.font_download_off_rounded, + 'font_download_off_outlined': Icons.font_download_off_outlined, + 'food_bank': Icons.food_bank, + 'food_bank_sharp': Icons.food_bank_sharp, + 'food_bank_rounded': Icons.food_bank_rounded, + 'food_bank_outlined': Icons.food_bank_outlined, + 'format_align_center': Icons.format_align_center, + 'format_align_center_sharp': Icons.format_align_center_sharp, + 'format_align_center_rounded': Icons.format_align_center_rounded, + 'format_align_center_outlined': Icons.format_align_center_outlined, + 'format_align_justify': Icons.format_align_justify, + 'format_align_justify_sharp': Icons.format_align_justify_sharp, + 'format_align_justify_rounded': Icons.format_align_justify_rounded, + 'format_align_justify_outlined': Icons.format_align_justify_outlined, + 'format_align_left': Icons.format_align_left, + 'format_align_left_sharp': Icons.format_align_left_sharp, + 'format_align_left_rounded': Icons.format_align_left_rounded, + 'format_align_left_outlined': Icons.format_align_left_outlined, + 'format_align_right': Icons.format_align_right, + 'format_align_right_sharp': Icons.format_align_right_sharp, + 'format_align_right_rounded': Icons.format_align_right_rounded, + 'format_align_right_outlined': Icons.format_align_right_outlined, + 'format_bold': Icons.format_bold, + 'format_bold_sharp': Icons.format_bold_sharp, + 'format_bold_rounded': Icons.format_bold_rounded, + 'format_bold_outlined': Icons.format_bold_outlined, + 'format_clear': Icons.format_clear, + 'format_clear_sharp': Icons.format_clear_sharp, + 'format_clear_rounded': Icons.format_clear_rounded, + 'format_clear_outlined': Icons.format_clear_outlined, + 'format_color_fill': Icons.format_color_fill, + 'format_color_fill_sharp': Icons.format_color_fill_sharp, + 'format_color_fill_rounded': Icons.format_color_fill_rounded, + 'format_color_fill_outlined': Icons.format_color_fill_outlined, + 'format_color_reset': Icons.format_color_reset, + 'format_color_reset_sharp': Icons.format_color_reset_sharp, + 'format_color_reset_rounded': Icons.format_color_reset_rounded, + 'format_color_reset_outlined': Icons.format_color_reset_outlined, + 'format_color_text': Icons.format_color_text, + 'format_color_text_sharp': Icons.format_color_text_sharp, + 'format_color_text_rounded': Icons.format_color_text_rounded, + 'format_color_text_outlined': Icons.format_color_text_outlined, + 'format_indent_decrease': Icons.format_indent_decrease, + 'format_indent_decrease_sharp': Icons.format_indent_decrease_sharp, + 'format_indent_decrease_rounded': Icons.format_indent_decrease_rounded, + 'format_indent_decrease_outlined': + Icons.format_indent_decrease_outlined, + 'format_indent_increase': Icons.format_indent_increase, + 'format_indent_increase_sharp': Icons.format_indent_increase_sharp, + 'format_indent_increase_rounded': Icons.format_indent_increase_rounded, + 'format_indent_increase_outlined': + Icons.format_indent_increase_outlined, + 'format_italic': Icons.format_italic, + 'format_italic_sharp': Icons.format_italic_sharp, + 'format_italic_rounded': Icons.format_italic_rounded, + 'format_italic_outlined': Icons.format_italic_outlined, + 'format_line_spacing': Icons.format_line_spacing, + 'format_line_spacing_sharp': Icons.format_line_spacing_sharp, + 'format_line_spacing_rounded': Icons.format_line_spacing_rounded, + 'format_line_spacing_outlined': Icons.format_line_spacing_outlined, + 'format_list_bulleted': Icons.format_list_bulleted, + 'format_list_bulleted_sharp': Icons.format_list_bulleted_sharp, + 'format_list_bulleted_rounded': Icons.format_list_bulleted_rounded, + 'format_list_bulleted_outlined': Icons.format_list_bulleted_outlined, + 'format_list_numbered': Icons.format_list_numbered, + 'format_list_numbered_sharp': Icons.format_list_numbered_sharp, + 'format_list_numbered_rounded': Icons.format_list_numbered_rounded, + 'format_list_numbered_outlined': Icons.format_list_numbered_outlined, + 'format_list_numbered_rtl': Icons.format_list_numbered_rtl, + 'format_list_numbered_rtl_sharp': Icons.format_list_numbered_rtl_sharp, + 'format_list_numbered_rtl_rounded': + Icons.format_list_numbered_rtl_rounded, + 'format_list_numbered_rtl_outlined': + Icons.format_list_numbered_rtl_outlined, + 'format_paint': Icons.format_paint, + 'format_paint_sharp': Icons.format_paint_sharp, + 'format_paint_rounded': Icons.format_paint_rounded, + 'format_paint_outlined': Icons.format_paint_outlined, + 'format_quote': Icons.format_quote, + 'format_quote_sharp': Icons.format_quote_sharp, + 'format_quote_rounded': Icons.format_quote_rounded, + 'format_quote_outlined': Icons.format_quote_outlined, + 'format_shapes': Icons.format_shapes, + 'format_shapes_sharp': Icons.format_shapes_sharp, + 'format_shapes_rounded': Icons.format_shapes_rounded, + 'format_shapes_outlined': Icons.format_shapes_outlined, + 'format_size': Icons.format_size, + 'format_size_sharp': Icons.format_size_sharp, + 'format_size_rounded': Icons.format_size_rounded, + 'format_size_outlined': Icons.format_size_outlined, + 'format_strikethrough': Icons.format_strikethrough, + 'format_strikethrough_sharp': Icons.format_strikethrough_sharp, + 'format_strikethrough_rounded': Icons.format_strikethrough_rounded, + 'format_strikethrough_outlined': Icons.format_strikethrough_outlined, + 'format_textdirection_l_to_r': Icons.format_textdirection_l_to_r, + 'format_textdirection_l_to_r_sharp': + Icons.format_textdirection_l_to_r_sharp, + 'format_textdirection_l_to_r_rounded': + Icons.format_textdirection_l_to_r_rounded, + 'format_textdirection_l_to_r_outlined': + Icons.format_textdirection_l_to_r_outlined, + 'format_textdirection_r_to_l': Icons.format_textdirection_r_to_l, + 'format_textdirection_r_to_l_sharp': + Icons.format_textdirection_r_to_l_sharp, + 'format_textdirection_r_to_l_rounded': + Icons.format_textdirection_r_to_l_rounded, + 'format_textdirection_r_to_l_outlined': + Icons.format_textdirection_r_to_l_outlined, + 'format_underline': Icons.format_underline, + 'format_underline_sharp': Icons.format_underline_sharp, + 'format_underline_rounded': Icons.format_underline_rounded, + 'format_underline_outlined': Icons.format_underline_outlined, + 'format_underlined': Icons.format_underlined, + 'format_underlined_sharp': Icons.format_underlined_sharp, + 'format_underlined_rounded': Icons.format_underlined_rounded, + 'format_underlined_outlined': Icons.format_underlined_outlined, + 'forum': Icons.forum, + 'forum_sharp': Icons.forum_sharp, + 'forum_rounded': Icons.forum_rounded, + 'forum_outlined': Icons.forum_outlined, + 'forward': Icons.forward, + 'forward_sharp': Icons.forward_sharp, + 'forward_rounded': Icons.forward_rounded, + 'forward_outlined': Icons.forward_outlined, + 'forward_10': Icons.forward_10, + 'forward_10_sharp': Icons.forward_10_sharp, + 'forward_10_rounded': Icons.forward_10_rounded, + 'forward_10_outlined': Icons.forward_10_outlined, + 'forward_30': Icons.forward_30, + 'forward_30_sharp': Icons.forward_30_sharp, + 'forward_30_rounded': Icons.forward_30_rounded, + 'forward_30_outlined': Icons.forward_30_outlined, + 'forward_5': Icons.forward_5, + 'forward_5_sharp': Icons.forward_5_sharp, + 'forward_5_rounded': Icons.forward_5_rounded, + 'forward_5_outlined': Icons.forward_5_outlined, + 'forward_to_inbox': Icons.forward_to_inbox, + 'forward_to_inbox_sharp': Icons.forward_to_inbox_sharp, + 'forward_to_inbox_rounded': Icons.forward_to_inbox_rounded, + 'forward_to_inbox_outlined': Icons.forward_to_inbox_outlined, + 'foundation': Icons.foundation, + 'foundation_sharp': Icons.foundation_sharp, + 'foundation_rounded': Icons.foundation_rounded, + 'foundation_outlined': Icons.foundation_outlined, + 'free_breakfast': Icons.free_breakfast, + 'free_breakfast_sharp': Icons.free_breakfast_sharp, + 'free_breakfast_rounded': Icons.free_breakfast_rounded, + 'free_breakfast_outlined': Icons.free_breakfast_outlined, + 'fullscreen': Icons.fullscreen, + 'fullscreen_sharp': Icons.fullscreen_sharp, + 'fullscreen_rounded': Icons.fullscreen_rounded, + 'fullscreen_outlined': Icons.fullscreen_outlined, + 'fullscreen_exit': Icons.fullscreen_exit, + 'fullscreen_exit_sharp': Icons.fullscreen_exit_sharp, + 'fullscreen_exit_rounded': Icons.fullscreen_exit_rounded, + 'fullscreen_exit_outlined': Icons.fullscreen_exit_outlined, + 'functions': Icons.functions, + 'functions_sharp': Icons.functions_sharp, + 'functions_rounded': Icons.functions_rounded, + 'functions_outlined': Icons.functions_outlined, + 'g_mobiledata': Icons.g_mobiledata, + 'g_mobiledata_sharp': Icons.g_mobiledata_sharp, + 'g_mobiledata_rounded': Icons.g_mobiledata_rounded, + 'g_mobiledata_outlined': Icons.g_mobiledata_outlined, + 'g_translate': Icons.g_translate, + 'g_translate_sharp': Icons.g_translate_sharp, + 'g_translate_rounded': Icons.g_translate_rounded, + 'g_translate_outlined': Icons.g_translate_outlined, + 'gamepad': Icons.gamepad, + 'gamepad_sharp': Icons.gamepad_sharp, + 'gamepad_rounded': Icons.gamepad_rounded, + 'gamepad_outlined': Icons.gamepad_outlined, + 'games': Icons.games, + 'games_sharp': Icons.games_sharp, + 'games_rounded': Icons.games_rounded, + 'games_outlined': Icons.games_outlined, + 'garage': Icons.garage, + 'garage_sharp': Icons.garage_sharp, + 'garage_rounded': Icons.garage_rounded, + 'garage_outlined': Icons.garage_outlined, + 'gavel': Icons.gavel, + 'gavel_sharp': Icons.gavel_sharp, + 'gavel_rounded': Icons.gavel_rounded, + 'gavel_outlined': Icons.gavel_outlined, + 'gesture': Icons.gesture, + 'gesture_sharp': Icons.gesture_sharp, + 'gesture_rounded': Icons.gesture_rounded, + 'gesture_outlined': Icons.gesture_outlined, + 'get_app': Icons.get_app, + 'get_app_sharp': Icons.get_app_sharp, + 'get_app_rounded': Icons.get_app_rounded, + 'get_app_outlined': Icons.get_app_outlined, + 'gif': Icons.gif, + 'gif_sharp': Icons.gif_sharp, + 'gif_rounded': Icons.gif_rounded, + 'gif_outlined': Icons.gif_outlined, + 'gite': Icons.gite, + 'gite_sharp': Icons.gite_sharp, + 'gite_rounded': Icons.gite_rounded, + 'gite_outlined': Icons.gite_outlined, + 'golf_course': Icons.golf_course, + 'golf_course_sharp': Icons.golf_course_sharp, + 'golf_course_rounded': Icons.golf_course_rounded, + 'golf_course_outlined': Icons.golf_course_outlined, + 'gpp_bad': Icons.gpp_bad, + 'gpp_bad_sharp': Icons.gpp_bad_sharp, + 'gpp_bad_rounded': Icons.gpp_bad_rounded, + 'gpp_bad_outlined': Icons.gpp_bad_outlined, + 'gpp_good': Icons.gpp_good, + 'gpp_good_sharp': Icons.gpp_good_sharp, + 'gpp_good_rounded': Icons.gpp_good_rounded, + 'gpp_good_outlined': Icons.gpp_good_outlined, + 'gpp_maybe': Icons.gpp_maybe, + 'gpp_maybe_sharp': Icons.gpp_maybe_sharp, + 'gpp_maybe_rounded': Icons.gpp_maybe_rounded, + 'gpp_maybe_outlined': Icons.gpp_maybe_outlined, + 'gps_fixed': Icons.gps_fixed, + 'gps_fixed_sharp': Icons.gps_fixed_sharp, + 'gps_fixed_rounded': Icons.gps_fixed_rounded, + 'gps_fixed_outlined': Icons.gps_fixed_outlined, + 'gps_not_fixed': Icons.gps_not_fixed, + 'gps_not_fixed_sharp': Icons.gps_not_fixed_sharp, + 'gps_not_fixed_rounded': Icons.gps_not_fixed_rounded, + 'gps_not_fixed_outlined': Icons.gps_not_fixed_outlined, + 'gps_off': Icons.gps_off, + 'gps_off_sharp': Icons.gps_off_sharp, + 'gps_off_rounded': Icons.gps_off_rounded, + 'gps_off_outlined': Icons.gps_off_outlined, + 'grade': Icons.grade, + 'grade_sharp': Icons.grade_sharp, + 'grade_rounded': Icons.grade_rounded, + 'grade_outlined': Icons.grade_outlined, + 'gradient': Icons.gradient, + 'gradient_sharp': Icons.gradient_sharp, + 'gradient_rounded': Icons.gradient_rounded, + 'gradient_outlined': Icons.gradient_outlined, + 'grading': Icons.grading, + 'grading_sharp': Icons.grading_sharp, + 'grading_rounded': Icons.grading_rounded, + 'grading_outlined': Icons.grading_outlined, + 'grain': Icons.grain, + 'grain_sharp': Icons.grain_sharp, + 'grain_rounded': Icons.grain_rounded, + 'grain_outlined': Icons.grain_outlined, + 'graphic_eq': Icons.graphic_eq, + 'graphic_eq_sharp': Icons.graphic_eq_sharp, + 'graphic_eq_rounded': Icons.graphic_eq_rounded, + 'graphic_eq_outlined': Icons.graphic_eq_outlined, + 'grass': Icons.grass, + 'grass_sharp': Icons.grass_sharp, + 'grass_rounded': Icons.grass_rounded, + 'grass_outlined': Icons.grass_outlined, + 'grid_3x3': Icons.grid_3x3, + 'grid_3x3_sharp': Icons.grid_3x3_sharp, + 'grid_3x3_rounded': Icons.grid_3x3_rounded, + 'grid_3x3_outlined': Icons.grid_3x3_outlined, + 'grid_4x4': Icons.grid_4x4, + 'grid_4x4_sharp': Icons.grid_4x4_sharp, + 'grid_4x4_rounded': Icons.grid_4x4_rounded, + 'grid_4x4_outlined': Icons.grid_4x4_outlined, + 'grid_goldenratio': Icons.grid_goldenratio, + 'grid_goldenratio_sharp': Icons.grid_goldenratio_sharp, + 'grid_goldenratio_rounded': Icons.grid_goldenratio_rounded, + 'grid_goldenratio_outlined': Icons.grid_goldenratio_outlined, + 'grid_off': Icons.grid_off, + 'grid_off_sharp': Icons.grid_off_sharp, + 'grid_off_rounded': Icons.grid_off_rounded, + 'grid_off_outlined': Icons.grid_off_outlined, + 'grid_on': Icons.grid_on, + 'grid_on_sharp': Icons.grid_on_sharp, + 'grid_on_rounded': Icons.grid_on_rounded, + 'grid_on_outlined': Icons.grid_on_outlined, + 'grid_view': Icons.grid_view, + 'grid_view_sharp': Icons.grid_view_sharp, + 'grid_view_rounded': Icons.grid_view_rounded, + 'grid_view_outlined': Icons.grid_view_outlined, + 'group': Icons.group, + 'group_sharp': Icons.group_sharp, + 'group_rounded': Icons.group_rounded, + 'group_outlined': Icons.group_outlined, + 'group_add': Icons.group_add, + 'group_add_sharp': Icons.group_add_sharp, + 'group_add_rounded': Icons.group_add_rounded, + 'group_add_outlined': Icons.group_add_outlined, + 'group_work': Icons.group_work, + 'group_work_sharp': Icons.group_work_sharp, + 'group_work_rounded': Icons.group_work_rounded, + 'group_work_outlined': Icons.group_work_outlined, + 'groups': Icons.groups, + 'groups_sharp': Icons.groups_sharp, + 'groups_rounded': Icons.groups_rounded, + 'groups_outlined': Icons.groups_outlined, + 'h_mobiledata': Icons.h_mobiledata, + 'h_mobiledata_sharp': Icons.h_mobiledata_sharp, + 'h_mobiledata_rounded': Icons.h_mobiledata_rounded, + 'h_mobiledata_outlined': Icons.h_mobiledata_outlined, + 'h_plus_mobiledata': Icons.h_plus_mobiledata, + 'h_plus_mobiledata_sharp': Icons.h_plus_mobiledata_sharp, + 'h_plus_mobiledata_rounded': Icons.h_plus_mobiledata_rounded, + 'h_plus_mobiledata_outlined': Icons.h_plus_mobiledata_outlined, + 'hail': Icons.hail, + 'hail_sharp': Icons.hail_sharp, + 'hail_rounded': Icons.hail_rounded, + 'hail_outlined': Icons.hail_outlined, + 'handyman': Icons.handyman, + 'handyman_sharp': Icons.handyman_sharp, + 'handyman_rounded': Icons.handyman_rounded, + 'handyman_outlined': Icons.handyman_outlined, + 'hardware': Icons.hardware, + 'hardware_sharp': Icons.hardware_sharp, + 'hardware_rounded': Icons.hardware_rounded, + 'hardware_outlined': Icons.hardware_outlined, + 'hd': Icons.hd, + 'hd_sharp': Icons.hd_sharp, + 'hd_rounded': Icons.hd_rounded, + 'hd_outlined': Icons.hd_outlined, + 'hdr_auto': Icons.hdr_auto, + 'hdr_auto_sharp': Icons.hdr_auto_sharp, + 'hdr_auto_rounded': Icons.hdr_auto_rounded, + 'hdr_auto_outlined': Icons.hdr_auto_outlined, + 'hdr_auto_select': Icons.hdr_auto_select, + 'hdr_auto_select_sharp': Icons.hdr_auto_select_sharp, + 'hdr_auto_select_rounded': Icons.hdr_auto_select_rounded, + 'hdr_auto_select_outlined': Icons.hdr_auto_select_outlined, + 'hdr_enhanced_select': Icons.hdr_enhanced_select, + 'hdr_enhanced_select_sharp': Icons.hdr_enhanced_select_sharp, + 'hdr_enhanced_select_rounded': Icons.hdr_enhanced_select_rounded, + 'hdr_enhanced_select_outlined': Icons.hdr_enhanced_select_outlined, + 'hdr_off': Icons.hdr_off, + 'hdr_off_sharp': Icons.hdr_off_sharp, + 'hdr_off_rounded': Icons.hdr_off_rounded, + 'hdr_off_outlined': Icons.hdr_off_outlined, + 'hdr_off_select': Icons.hdr_off_select, + 'hdr_off_select_sharp': Icons.hdr_off_select_sharp, + 'hdr_off_select_rounded': Icons.hdr_off_select_rounded, + 'hdr_off_select_outlined': Icons.hdr_off_select_outlined, + 'hdr_on': Icons.hdr_on, + 'hdr_on_sharp': Icons.hdr_on_sharp, + 'hdr_on_rounded': Icons.hdr_on_rounded, + 'hdr_on_outlined': Icons.hdr_on_outlined, + 'hdr_on_select': Icons.hdr_on_select, + 'hdr_on_select_sharp': Icons.hdr_on_select_sharp, + 'hdr_on_select_rounded': Icons.hdr_on_select_rounded, + 'hdr_on_select_outlined': Icons.hdr_on_select_outlined, + 'hdr_plus': Icons.hdr_plus, + 'hdr_plus_sharp': Icons.hdr_plus_sharp, + 'hdr_plus_rounded': Icons.hdr_plus_rounded, + 'hdr_plus_outlined': Icons.hdr_plus_outlined, + 'hdr_strong': Icons.hdr_strong, + 'hdr_strong_sharp': Icons.hdr_strong_sharp, + 'hdr_strong_rounded': Icons.hdr_strong_rounded, + 'hdr_strong_outlined': Icons.hdr_strong_outlined, + 'hdr_weak': Icons.hdr_weak, + 'hdr_weak_sharp': Icons.hdr_weak_sharp, + 'hdr_weak_rounded': Icons.hdr_weak_rounded, + 'hdr_weak_outlined': Icons.hdr_weak_outlined, + 'headphones': Icons.headphones, + 'headphones_sharp': Icons.headphones_sharp, + 'headphones_rounded': Icons.headphones_rounded, + 'headphones_outlined': Icons.headphones_outlined, + 'headphones_battery': Icons.headphones_battery, + 'headphones_battery_sharp': Icons.headphones_battery_sharp, + 'headphones_battery_rounded': Icons.headphones_battery_rounded, + 'headphones_battery_outlined': Icons.headphones_battery_outlined, + 'headset': Icons.headset, + 'headset_sharp': Icons.headset_sharp, + 'headset_rounded': Icons.headset_rounded, + 'headset_outlined': Icons.headset_outlined, + 'headset_mic': Icons.headset_mic, + 'headset_mic_sharp': Icons.headset_mic_sharp, + 'headset_mic_rounded': Icons.headset_mic_rounded, + 'headset_mic_outlined': Icons.headset_mic_outlined, + 'headset_off': Icons.headset_off, + 'headset_off_sharp': Icons.headset_off_sharp, + 'headset_off_rounded': Icons.headset_off_rounded, + 'headset_off_outlined': Icons.headset_off_outlined, + 'healing': Icons.healing, + 'healing_sharp': Icons.healing_sharp, + 'healing_rounded': Icons.healing_rounded, + 'healing_outlined': Icons.healing_outlined, + 'health_and_safety': Icons.health_and_safety, + 'health_and_safety_sharp': Icons.health_and_safety_sharp, + 'health_and_safety_rounded': Icons.health_and_safety_rounded, + 'health_and_safety_outlined': Icons.health_and_safety_outlined, + 'hearing': Icons.hearing, + 'hearing_sharp': Icons.hearing_sharp, + 'hearing_rounded': Icons.hearing_rounded, + 'hearing_outlined': Icons.hearing_outlined, + 'hearing_disabled': Icons.hearing_disabled, + 'hearing_disabled_sharp': Icons.hearing_disabled_sharp, + 'hearing_disabled_rounded': Icons.hearing_disabled_rounded, + 'hearing_disabled_outlined': Icons.hearing_disabled_outlined, + 'height': Icons.height, + 'height_sharp': Icons.height_sharp, + 'height_rounded': Icons.height_rounded, + 'height_outlined': Icons.height_outlined, + 'help': Icons.help, + 'help_sharp': Icons.help_sharp, + 'help_rounded': Icons.help_rounded, + 'help_outlined': Icons.help_outlined, + 'help_center': Icons.help_center, + 'help_center_sharp': Icons.help_center_sharp, + 'help_center_rounded': Icons.help_center_rounded, + 'help_center_outlined': Icons.help_center_outlined, + 'help_outline': Icons.help_outline, + 'help_outline_sharp': Icons.help_outline_sharp, + 'help_outline_rounded': Icons.help_outline_rounded, + 'help_outline_outlined': Icons.help_outline_outlined, + 'hevc': Icons.hevc, + 'hevc_sharp': Icons.hevc_sharp, + 'hevc_rounded': Icons.hevc_rounded, + 'hevc_outlined': Icons.hevc_outlined, + 'hide_image': Icons.hide_image, + 'hide_image_sharp': Icons.hide_image_sharp, + 'hide_image_rounded': Icons.hide_image_rounded, + 'hide_image_outlined': Icons.hide_image_outlined, + 'hide_source': Icons.hide_source, + 'hide_source_sharp': Icons.hide_source_sharp, + 'hide_source_rounded': Icons.hide_source_rounded, + 'hide_source_outlined': Icons.hide_source_outlined, + 'high_quality': Icons.high_quality, + 'high_quality_sharp': Icons.high_quality_sharp, + 'high_quality_rounded': Icons.high_quality_rounded, + 'high_quality_outlined': Icons.high_quality_outlined, + 'highlight': Icons.highlight, + 'highlight_sharp': Icons.highlight_sharp, + 'highlight_rounded': Icons.highlight_rounded, + 'highlight_outlined': Icons.highlight_outlined, + 'highlight_alt': Icons.highlight_alt, + 'highlight_alt_sharp': Icons.highlight_alt_sharp, + 'highlight_alt_rounded': Icons.highlight_alt_rounded, + 'highlight_alt_outlined': Icons.highlight_alt_outlined, + 'highlight_off': Icons.highlight_off, + 'highlight_off_sharp': Icons.highlight_off_sharp, + 'highlight_off_rounded': Icons.highlight_off_rounded, + 'highlight_off_outlined': Icons.highlight_off_outlined, + 'highlight_remove': Icons.highlight_remove, + 'highlight_remove_sharp': Icons.highlight_remove_sharp, + 'highlight_remove_rounded': Icons.highlight_remove_rounded, + 'highlight_remove_outlined': Icons.highlight_remove_outlined, + 'hiking': Icons.hiking, + 'hiking_sharp': Icons.hiking_sharp, + 'hiking_rounded': Icons.hiking_rounded, + 'hiking_outlined': Icons.hiking_outlined, + 'history': Icons.history, + 'history_sharp': Icons.history_sharp, + 'history_rounded': Icons.history_rounded, + 'history_outlined': Icons.history_outlined, + 'history_edu': Icons.history_edu, + 'history_edu_sharp': Icons.history_edu_sharp, + 'history_edu_rounded': Icons.history_edu_rounded, + 'history_edu_outlined': Icons.history_edu_outlined, + 'history_toggle_off': Icons.history_toggle_off, + 'history_toggle_off_sharp': Icons.history_toggle_off_sharp, + 'history_toggle_off_rounded': Icons.history_toggle_off_rounded, + 'history_toggle_off_outlined': Icons.history_toggle_off_outlined, + 'holiday_village': Icons.holiday_village, + 'holiday_village_sharp': Icons.holiday_village_sharp, + 'holiday_village_rounded': Icons.holiday_village_rounded, + 'holiday_village_outlined': Icons.holiday_village_outlined, + 'home': Icons.home, + 'home_sharp': Icons.home_sharp, + 'home_rounded': Icons.home_rounded, + 'home_outlined': Icons.home_outlined, + 'home_filled': Icons.home_filled, + 'home_max': Icons.home_max, + 'home_max_sharp': Icons.home_max_sharp, + 'home_max_rounded': Icons.home_max_rounded, + 'home_max_outlined': Icons.home_max_outlined, + 'home_mini': Icons.home_mini, + 'home_mini_sharp': Icons.home_mini_sharp, + 'home_mini_rounded': Icons.home_mini_rounded, + 'home_mini_outlined': Icons.home_mini_outlined, + 'home_repair_service': Icons.home_repair_service, + 'home_repair_service_sharp': Icons.home_repair_service_sharp, + 'home_repair_service_rounded': Icons.home_repair_service_rounded, + 'home_repair_service_outlined': Icons.home_repair_service_outlined, + 'home_work': Icons.home_work, + 'home_work_sharp': Icons.home_work_sharp, + 'home_work_rounded': Icons.home_work_rounded, + 'home_work_outlined': Icons.home_work_outlined, + 'horizontal_distribute': Icons.horizontal_distribute, + 'horizontal_distribute_sharp': Icons.horizontal_distribute_sharp, + 'horizontal_distribute_rounded': Icons.horizontal_distribute_rounded, + 'horizontal_distribute_outlined': Icons.horizontal_distribute_outlined, + 'horizontal_rule': Icons.horizontal_rule, + 'horizontal_rule_sharp': Icons.horizontal_rule_sharp, + 'horizontal_rule_rounded': Icons.horizontal_rule_rounded, + 'horizontal_rule_outlined': Icons.horizontal_rule_outlined, + 'horizontal_split': Icons.horizontal_split, + 'horizontal_split_sharp': Icons.horizontal_split_sharp, + 'horizontal_split_rounded': Icons.horizontal_split_rounded, + 'horizontal_split_outlined': Icons.horizontal_split_outlined, + 'hot_tub': Icons.hot_tub, + 'hot_tub_sharp': Icons.hot_tub_sharp, + 'hot_tub_rounded': Icons.hot_tub_rounded, + 'hot_tub_outlined': Icons.hot_tub_outlined, + 'hotel': Icons.hotel, + 'hotel_sharp': Icons.hotel_sharp, + 'hotel_rounded': Icons.hotel_rounded, + 'hotel_outlined': Icons.hotel_outlined, + 'hourglass_bottom': Icons.hourglass_bottom, + 'hourglass_bottom_sharp': Icons.hourglass_bottom_sharp, + 'hourglass_bottom_rounded': Icons.hourglass_bottom_rounded, + 'hourglass_bottom_outlined': Icons.hourglass_bottom_outlined, + 'hourglass_disabled': Icons.hourglass_disabled, + 'hourglass_disabled_sharp': Icons.hourglass_disabled_sharp, + 'hourglass_disabled_rounded': Icons.hourglass_disabled_rounded, + 'hourglass_disabled_outlined': Icons.hourglass_disabled_outlined, + 'hourglass_empty': Icons.hourglass_empty, + 'hourglass_empty_sharp': Icons.hourglass_empty_sharp, + 'hourglass_empty_rounded': Icons.hourglass_empty_rounded, + 'hourglass_empty_outlined': Icons.hourglass_empty_outlined, + 'hourglass_full': Icons.hourglass_full, + 'hourglass_full_sharp': Icons.hourglass_full_sharp, + 'hourglass_full_rounded': Icons.hourglass_full_rounded, + 'hourglass_full_outlined': Icons.hourglass_full_outlined, + 'hourglass_top': Icons.hourglass_top, + 'hourglass_top_sharp': Icons.hourglass_top_sharp, + 'hourglass_top_rounded': Icons.hourglass_top_rounded, + 'hourglass_top_outlined': Icons.hourglass_top_outlined, + 'house': Icons.house, + 'house_sharp': Icons.house_sharp, + 'house_rounded': Icons.house_rounded, + 'house_outlined': Icons.house_outlined, + 'house_siding': Icons.house_siding, + 'house_siding_sharp': Icons.house_siding_sharp, + 'house_siding_rounded': Icons.house_siding_rounded, + 'house_siding_outlined': Icons.house_siding_outlined, + 'houseboat': Icons.houseboat, + 'houseboat_sharp': Icons.houseboat_sharp, + 'houseboat_rounded': Icons.houseboat_rounded, + 'houseboat_outlined': Icons.houseboat_outlined, + 'how_to_reg': Icons.how_to_reg, + 'how_to_reg_sharp': Icons.how_to_reg_sharp, + 'how_to_reg_rounded': Icons.how_to_reg_rounded, + 'how_to_reg_outlined': Icons.how_to_reg_outlined, + 'how_to_vote': Icons.how_to_vote, + 'how_to_vote_sharp': Icons.how_to_vote_sharp, + 'how_to_vote_rounded': Icons.how_to_vote_rounded, + 'how_to_vote_outlined': Icons.how_to_vote_outlined, + 'http': Icons.http, + 'http_sharp': Icons.http_sharp, + 'http_rounded': Icons.http_rounded, + 'http_outlined': Icons.http_outlined, + 'https': Icons.https, + 'https_sharp': Icons.https_sharp, + 'https_rounded': Icons.https_rounded, + 'https_outlined': Icons.https_outlined, + 'hvac': Icons.hvac, + 'hvac_sharp': Icons.hvac_sharp, + 'hvac_rounded': Icons.hvac_rounded, + 'hvac_outlined': Icons.hvac_outlined, + 'ice_skating': Icons.ice_skating, + 'ice_skating_sharp': Icons.ice_skating_sharp, + 'ice_skating_rounded': Icons.ice_skating_rounded, + 'ice_skating_outlined': Icons.ice_skating_outlined, + 'icecream': Icons.icecream, + 'icecream_sharp': Icons.icecream_sharp, + 'icecream_rounded': Icons.icecream_rounded, + 'icecream_outlined': Icons.icecream_outlined, + 'image': Icons.image, + 'image_sharp': Icons.image_sharp, + 'image_rounded': Icons.image_rounded, + 'image_outlined': Icons.image_outlined, + 'image_aspect_ratio': Icons.image_aspect_ratio, + 'image_aspect_ratio_sharp': Icons.image_aspect_ratio_sharp, + 'image_aspect_ratio_rounded': Icons.image_aspect_ratio_rounded, + 'image_aspect_ratio_outlined': Icons.image_aspect_ratio_outlined, + 'image_not_supported': Icons.image_not_supported, + 'image_not_supported_sharp': Icons.image_not_supported_sharp, + 'image_not_supported_rounded': Icons.image_not_supported_rounded, + 'image_not_supported_outlined': Icons.image_not_supported_outlined, + 'image_search': Icons.image_search, + 'image_search_sharp': Icons.image_search_sharp, + 'image_search_rounded': Icons.image_search_rounded, + 'image_search_outlined': Icons.image_search_outlined, + 'imagesearch_roller': Icons.imagesearch_roller, + 'imagesearch_roller_sharp': Icons.imagesearch_roller_sharp, + 'imagesearch_roller_rounded': Icons.imagesearch_roller_rounded, + 'imagesearch_roller_outlined': Icons.imagesearch_roller_outlined, + 'import_contacts': Icons.import_contacts, + 'import_contacts_sharp': Icons.import_contacts_sharp, + 'import_contacts_rounded': Icons.import_contacts_rounded, + 'import_contacts_outlined': Icons.import_contacts_outlined, + 'import_export': Icons.import_export, + 'import_export_sharp': Icons.import_export_sharp, + 'import_export_rounded': Icons.import_export_rounded, + 'import_export_outlined': Icons.import_export_outlined, + 'important_devices': Icons.important_devices, + 'important_devices_sharp': Icons.important_devices_sharp, + 'important_devices_rounded': Icons.important_devices_rounded, + 'important_devices_outlined': Icons.important_devices_outlined, + 'inbox': Icons.inbox, + 'inbox_sharp': Icons.inbox_sharp, + 'inbox_rounded': Icons.inbox_rounded, + 'inbox_outlined': Icons.inbox_outlined, + 'indeterminate_check_box': Icons.indeterminate_check_box, + 'indeterminate_check_box_sharp': Icons.indeterminate_check_box_sharp, + 'indeterminate_check_box_rounded': + Icons.indeterminate_check_box_rounded, + 'indeterminate_check_box_outlined': + Icons.indeterminate_check_box_outlined, + 'info': Icons.info, + 'info_sharp': Icons.info_sharp, + 'info_rounded': Icons.info_rounded, + 'info_outlined': Icons.info_outlined, + 'info_outline': Icons.info_outline, + 'info_outline_sharp': Icons.info_outline_sharp, + 'info_outline_rounded': Icons.info_outline_rounded, + 'input': Icons.input, + 'input_sharp': Icons.input_sharp, + 'input_rounded': Icons.input_rounded, + 'input_outlined': Icons.input_outlined, + 'insert_chart': Icons.insert_chart, + 'insert_chart_sharp': Icons.insert_chart_sharp, + 'insert_chart_rounded': Icons.insert_chart_rounded, + 'insert_chart_outlined': Icons.insert_chart_outlined, + 'insert_chart_outlined_sharp': Icons.insert_chart_outlined_sharp, + 'insert_chart_outlined_rounded': Icons.insert_chart_outlined_rounded, + 'insert_chart_outlined_outlined': Icons.insert_chart_outlined_outlined, + 'insert_comment': Icons.insert_comment, + 'insert_comment_sharp': Icons.insert_comment_sharp, + 'insert_comment_rounded': Icons.insert_comment_rounded, + 'insert_comment_outlined': Icons.insert_comment_outlined, + 'insert_drive_file': Icons.insert_drive_file, + 'insert_drive_file_sharp': Icons.insert_drive_file_sharp, + 'insert_drive_file_rounded': Icons.insert_drive_file_rounded, + 'insert_drive_file_outlined': Icons.insert_drive_file_outlined, + 'insert_emoticon': Icons.insert_emoticon, + 'insert_emoticon_sharp': Icons.insert_emoticon_sharp, + 'insert_emoticon_rounded': Icons.insert_emoticon_rounded, + 'insert_emoticon_outlined': Icons.insert_emoticon_outlined, + 'insert_invitation': Icons.insert_invitation, + 'insert_invitation_sharp': Icons.insert_invitation_sharp, + 'insert_invitation_rounded': Icons.insert_invitation_rounded, + 'insert_invitation_outlined': Icons.insert_invitation_outlined, + 'insert_link': Icons.insert_link, + 'insert_link_sharp': Icons.insert_link_sharp, + 'insert_link_rounded': Icons.insert_link_rounded, + 'insert_link_outlined': Icons.insert_link_outlined, + 'insert_photo': Icons.insert_photo, + 'insert_photo_sharp': Icons.insert_photo_sharp, + 'insert_photo_rounded': Icons.insert_photo_rounded, + 'insert_photo_outlined': Icons.insert_photo_outlined, + 'insights': Icons.insights, + 'insights_sharp': Icons.insights_sharp, + 'insights_rounded': Icons.insights_rounded, + 'insights_outlined': Icons.insights_outlined, + 'integration_instructions': Icons.integration_instructions, + 'integration_instructions_sharp': Icons.integration_instructions_sharp, + 'integration_instructions_rounded': + Icons.integration_instructions_rounded, + 'integration_instructions_outlined': + Icons.integration_instructions_outlined, + 'inventory': Icons.inventory, + 'inventory_sharp': Icons.inventory_sharp, + 'inventory_rounded': Icons.inventory_rounded, + 'inventory_outlined': Icons.inventory_outlined, + 'inventory_2': Icons.inventory_2, + 'inventory_2_sharp': Icons.inventory_2_sharp, + 'inventory_2_rounded': Icons.inventory_2_rounded, + 'inventory_2_outlined': Icons.inventory_2_outlined, + 'invert_colors': Icons.invert_colors, + 'invert_colors_sharp': Icons.invert_colors_sharp, + 'invert_colors_rounded': Icons.invert_colors_rounded, + 'invert_colors_outlined': Icons.invert_colors_outlined, + 'invert_colors_off': Icons.invert_colors_off, + 'invert_colors_off_sharp': Icons.invert_colors_off_sharp, + 'invert_colors_off_rounded': Icons.invert_colors_off_rounded, + 'invert_colors_off_outlined': Icons.invert_colors_off_outlined, + 'invert_colors_on': Icons.invert_colors_on, + 'invert_colors_on_sharp': Icons.invert_colors_on_sharp, + 'invert_colors_on_rounded': Icons.invert_colors_on_rounded, + 'invert_colors_on_outlined': Icons.invert_colors_on_outlined, + 'ios_share': Icons.ios_share, + 'ios_share_sharp': Icons.ios_share_sharp, + 'ios_share_rounded': Icons.ios_share_rounded, + 'ios_share_outlined': Icons.ios_share_outlined, + 'iron': Icons.iron, + 'iron_sharp': Icons.iron_sharp, + 'iron_rounded': Icons.iron_rounded, + 'iron_outlined': Icons.iron_outlined, + 'iso': Icons.iso, + 'iso_sharp': Icons.iso_sharp, + 'iso_rounded': Icons.iso_rounded, + 'iso_outlined': Icons.iso_outlined, + 'kayaking': Icons.kayaking, + 'kayaking_sharp': Icons.kayaking_sharp, + 'kayaking_rounded': Icons.kayaking_rounded, + 'kayaking_outlined': Icons.kayaking_outlined, + 'keyboard': Icons.keyboard, + 'keyboard_sharp': Icons.keyboard_sharp, + 'keyboard_rounded': Icons.keyboard_rounded, + 'keyboard_outlined': Icons.keyboard_outlined, + 'keyboard_alt': Icons.keyboard_alt, + 'keyboard_alt_sharp': Icons.keyboard_alt_sharp, + 'keyboard_alt_rounded': Icons.keyboard_alt_rounded, + 'keyboard_alt_outlined': Icons.keyboard_alt_outlined, + 'keyboard_arrow_down': Icons.keyboard_arrow_down, + 'keyboard_arrow_down_sharp': Icons.keyboard_arrow_down_sharp, + 'keyboard_arrow_down_rounded': Icons.keyboard_arrow_down_rounded, + 'keyboard_arrow_down_outlined': Icons.keyboard_arrow_down_outlined, + 'keyboard_arrow_left': Icons.keyboard_arrow_left, + 'keyboard_arrow_left_sharp': Icons.keyboard_arrow_left_sharp, + 'keyboard_arrow_left_rounded': Icons.keyboard_arrow_left_rounded, + 'keyboard_arrow_left_outlined': Icons.keyboard_arrow_left_outlined, + 'keyboard_arrow_right': Icons.keyboard_arrow_right, + 'keyboard_arrow_right_sharp': Icons.keyboard_arrow_right_sharp, + 'keyboard_arrow_right_rounded': Icons.keyboard_arrow_right_rounded, + 'keyboard_arrow_right_outlined': Icons.keyboard_arrow_right_outlined, + 'keyboard_arrow_up': Icons.keyboard_arrow_up, + 'keyboard_arrow_up_sharp': Icons.keyboard_arrow_up_sharp, + 'keyboard_arrow_up_rounded': Icons.keyboard_arrow_up_rounded, + 'keyboard_arrow_up_outlined': Icons.keyboard_arrow_up_outlined, + 'keyboard_backspace': Icons.keyboard_backspace, + 'keyboard_backspace_sharp': Icons.keyboard_backspace_sharp, + 'keyboard_backspace_rounded': Icons.keyboard_backspace_rounded, + 'keyboard_backspace_outlined': Icons.keyboard_backspace_outlined, + 'keyboard_capslock': Icons.keyboard_capslock, + 'keyboard_capslock_sharp': Icons.keyboard_capslock_sharp, + 'keyboard_capslock_rounded': Icons.keyboard_capslock_rounded, + 'keyboard_capslock_outlined': Icons.keyboard_capslock_outlined, + 'keyboard_control': Icons.keyboard_control, + 'keyboard_control_sharp': Icons.keyboard_control_sharp, + 'keyboard_control_rounded': Icons.keyboard_control_rounded, + 'keyboard_control_outlined': Icons.keyboard_control_outlined, + 'keyboard_hide': Icons.keyboard_hide, + 'keyboard_hide_sharp': Icons.keyboard_hide_sharp, + 'keyboard_hide_rounded': Icons.keyboard_hide_rounded, + 'keyboard_hide_outlined': Icons.keyboard_hide_outlined, + 'keyboard_return': Icons.keyboard_return, + 'keyboard_return_sharp': Icons.keyboard_return_sharp, + 'keyboard_return_rounded': Icons.keyboard_return_rounded, + 'keyboard_return_outlined': Icons.keyboard_return_outlined, + 'keyboard_tab': Icons.keyboard_tab, + 'keyboard_tab_sharp': Icons.keyboard_tab_sharp, + 'keyboard_tab_rounded': Icons.keyboard_tab_rounded, + 'keyboard_tab_outlined': Icons.keyboard_tab_outlined, + 'keyboard_voice': Icons.keyboard_voice, + 'keyboard_voice_sharp': Icons.keyboard_voice_sharp, + 'keyboard_voice_rounded': Icons.keyboard_voice_rounded, + 'keyboard_voice_outlined': Icons.keyboard_voice_outlined, + 'king_bed': Icons.king_bed, + 'king_bed_sharp': Icons.king_bed_sharp, + 'king_bed_rounded': Icons.king_bed_rounded, + 'king_bed_outlined': Icons.king_bed_outlined, + 'kitchen': Icons.kitchen, + 'kitchen_sharp': Icons.kitchen_sharp, + 'kitchen_rounded': Icons.kitchen_rounded, + 'kitchen_outlined': Icons.kitchen_outlined, + 'kitesurfing': Icons.kitesurfing, + 'kitesurfing_sharp': Icons.kitesurfing_sharp, + 'kitesurfing_rounded': Icons.kitesurfing_rounded, + 'kitesurfing_outlined': Icons.kitesurfing_outlined, + 'label': Icons.label, + 'label_sharp': Icons.label_sharp, + 'label_rounded': Icons.label_rounded, + 'label_outlined': Icons.label_outlined, + 'label_important': Icons.label_important, + 'label_important_sharp': Icons.label_important_sharp, + 'label_important_rounded': Icons.label_important_rounded, + 'label_important_outlined': Icons.label_important_outlined, + 'label_important_outline': Icons.label_important_outline, + 'label_important_outline_sharp': Icons.label_important_outline_sharp, + 'label_important_outline_rounded': + Icons.label_important_outline_rounded, + 'label_off': Icons.label_off, + 'label_off_sharp': Icons.label_off_sharp, + 'label_off_rounded': Icons.label_off_rounded, + 'label_off_outlined': Icons.label_off_outlined, + 'label_outline': Icons.label_outline, + 'label_outline_sharp': Icons.label_outline_sharp, + 'label_outline_rounded': Icons.label_outline_rounded, + 'landscape': Icons.landscape, + 'landscape_sharp': Icons.landscape_sharp, + 'landscape_rounded': Icons.landscape_rounded, + 'landscape_outlined': Icons.landscape_outlined, + 'language': Icons.language, + 'language_sharp': Icons.language_sharp, + 'language_rounded': Icons.language_rounded, + 'language_outlined': Icons.language_outlined, + 'laptop': Icons.laptop, + 'laptop_sharp': Icons.laptop_sharp, + 'laptop_rounded': Icons.laptop_rounded, + 'laptop_outlined': Icons.laptop_outlined, + 'laptop_chromebook': Icons.laptop_chromebook, + 'laptop_chromebook_sharp': Icons.laptop_chromebook_sharp, + 'laptop_chromebook_rounded': Icons.laptop_chromebook_rounded, + 'laptop_chromebook_outlined': Icons.laptop_chromebook_outlined, + 'laptop_mac': Icons.laptop_mac, + 'laptop_mac_sharp': Icons.laptop_mac_sharp, + 'laptop_mac_rounded': Icons.laptop_mac_rounded, + 'laptop_mac_outlined': Icons.laptop_mac_outlined, + 'laptop_windows': Icons.laptop_windows, + 'laptop_windows_sharp': Icons.laptop_windows_sharp, + 'laptop_windows_rounded': Icons.laptop_windows_rounded, + 'laptop_windows_outlined': Icons.laptop_windows_outlined, + 'last_page': Icons.last_page, + 'last_page_sharp': Icons.last_page_sharp, + 'last_page_rounded': Icons.last_page_rounded, + 'last_page_outlined': Icons.last_page_outlined, + 'launch': Icons.launch, + 'launch_sharp': Icons.launch_sharp, + 'launch_rounded': Icons.launch_rounded, + 'launch_outlined': Icons.launch_outlined, + 'layers': Icons.layers, + 'layers_sharp': Icons.layers_sharp, + 'layers_rounded': Icons.layers_rounded, + 'layers_outlined': Icons.layers_outlined, + 'layers_clear': Icons.layers_clear, + 'layers_clear_sharp': Icons.layers_clear_sharp, + 'layers_clear_rounded': Icons.layers_clear_rounded, + 'layers_clear_outlined': Icons.layers_clear_outlined, + 'leaderboard': Icons.leaderboard, + 'leaderboard_sharp': Icons.leaderboard_sharp, + 'leaderboard_rounded': Icons.leaderboard_rounded, + 'leaderboard_outlined': Icons.leaderboard_outlined, + 'leak_add': Icons.leak_add, + 'leak_add_sharp': Icons.leak_add_sharp, + 'leak_add_rounded': Icons.leak_add_rounded, + 'leak_add_outlined': Icons.leak_add_outlined, + 'leak_remove': Icons.leak_remove, + 'leak_remove_sharp': Icons.leak_remove_sharp, + 'leak_remove_rounded': Icons.leak_remove_rounded, + 'leak_remove_outlined': Icons.leak_remove_outlined, + 'leave_bags_at_home': Icons.leave_bags_at_home, + 'leave_bags_at_home_sharp': Icons.leave_bags_at_home_sharp, + 'leave_bags_at_home_rounded': Icons.leave_bags_at_home_rounded, + 'leave_bags_at_home_outlined': Icons.leave_bags_at_home_outlined, + 'legend_toggle': Icons.legend_toggle, + 'legend_toggle_sharp': Icons.legend_toggle_sharp, + 'legend_toggle_rounded': Icons.legend_toggle_rounded, + 'legend_toggle_outlined': Icons.legend_toggle_outlined, + 'lens': Icons.lens, + 'lens_sharp': Icons.lens_sharp, + 'lens_rounded': Icons.lens_rounded, + 'lens_outlined': Icons.lens_outlined, + 'lens_blur': Icons.lens_blur, + 'lens_blur_sharp': Icons.lens_blur_sharp, + 'lens_blur_rounded': Icons.lens_blur_rounded, + 'lens_blur_outlined': Icons.lens_blur_outlined, + 'library_add': Icons.library_add, + 'library_add_sharp': Icons.library_add_sharp, + 'library_add_rounded': Icons.library_add_rounded, + 'library_add_outlined': Icons.library_add_outlined, + 'library_add_check': Icons.library_add_check, + 'library_add_check_sharp': Icons.library_add_check_sharp, + 'library_add_check_rounded': Icons.library_add_check_rounded, + 'library_add_check_outlined': Icons.library_add_check_outlined, + 'library_books': Icons.library_books, + 'library_books_sharp': Icons.library_books_sharp, + 'library_books_rounded': Icons.library_books_rounded, + 'library_books_outlined': Icons.library_books_outlined, + 'library_music': Icons.library_music, + 'library_music_sharp': Icons.library_music_sharp, + 'library_music_rounded': Icons.library_music_rounded, + 'library_music_outlined': Icons.library_music_outlined, + 'light': Icons.light, + 'light_sharp': Icons.light_sharp, + 'light_rounded': Icons.light_rounded, + 'light_outlined': Icons.light_outlined, + 'light_mode': Icons.light_mode, + 'light_mode_sharp': Icons.light_mode_sharp, + 'light_mode_rounded': Icons.light_mode_rounded, + 'light_mode_outlined': Icons.light_mode_outlined, + 'lightbulb': Icons.lightbulb, + 'lightbulb_sharp': Icons.lightbulb_sharp, + 'lightbulb_rounded': Icons.lightbulb_rounded, + 'lightbulb_outlined': Icons.lightbulb_outlined, + 'lightbulb_outline': Icons.lightbulb_outline, + 'lightbulb_outline_sharp': Icons.lightbulb_outline_sharp, + 'lightbulb_outline_rounded': Icons.lightbulb_outline_rounded, + 'line_style': Icons.line_style, + 'line_style_sharp': Icons.line_style_sharp, + 'line_style_rounded': Icons.line_style_rounded, + 'line_style_outlined': Icons.line_style_outlined, + 'line_weight': Icons.line_weight, + 'line_weight_sharp': Icons.line_weight_sharp, + 'line_weight_rounded': Icons.line_weight_rounded, + 'line_weight_outlined': Icons.line_weight_outlined, + 'linear_scale': Icons.linear_scale, + 'linear_scale_sharp': Icons.linear_scale_sharp, + 'linear_scale_rounded': Icons.linear_scale_rounded, + 'linear_scale_outlined': Icons.linear_scale_outlined, + 'link': Icons.link, + 'link_sharp': Icons.link_sharp, + 'link_rounded': Icons.link_rounded, + 'link_outlined': Icons.link_outlined, + 'link_off': Icons.link_off, + 'link_off_sharp': Icons.link_off_sharp, + 'link_off_rounded': Icons.link_off_rounded, + 'link_off_outlined': Icons.link_off_outlined, + 'linked_camera': Icons.linked_camera, + 'linked_camera_sharp': Icons.linked_camera_sharp, + 'linked_camera_rounded': Icons.linked_camera_rounded, + 'linked_camera_outlined': Icons.linked_camera_outlined, + 'liquor': Icons.liquor, + 'liquor_sharp': Icons.liquor_sharp, + 'liquor_rounded': Icons.liquor_rounded, + 'liquor_outlined': Icons.liquor_outlined, + 'list': Icons.list, + 'list_sharp': Icons.list_sharp, + 'list_rounded': Icons.list_rounded, + 'list_outlined': Icons.list_outlined, + 'list_alt': Icons.list_alt, + 'list_alt_sharp': Icons.list_alt_sharp, + 'list_alt_rounded': Icons.list_alt_rounded, + 'list_alt_outlined': Icons.list_alt_outlined, + 'live_help': Icons.live_help, + 'live_help_sharp': Icons.live_help_sharp, + 'live_help_rounded': Icons.live_help_rounded, + 'live_help_outlined': Icons.live_help_outlined, + 'live_tv': Icons.live_tv, + 'live_tv_sharp': Icons.live_tv_sharp, + 'live_tv_rounded': Icons.live_tv_rounded, + 'live_tv_outlined': Icons.live_tv_outlined, + 'living': Icons.living, + 'living_sharp': Icons.living_sharp, + 'living_rounded': Icons.living_rounded, + 'living_outlined': Icons.living_outlined, + 'local_activity': Icons.local_activity, + 'local_activity_sharp': Icons.local_activity_sharp, + 'local_activity_rounded': Icons.local_activity_rounded, + 'local_activity_outlined': Icons.local_activity_outlined, + 'local_airport': Icons.local_airport, + 'local_airport_sharp': Icons.local_airport_sharp, + 'local_airport_rounded': Icons.local_airport_rounded, + 'local_airport_outlined': Icons.local_airport_outlined, + 'local_atm': Icons.local_atm, + 'local_atm_sharp': Icons.local_atm_sharp, + 'local_atm_rounded': Icons.local_atm_rounded, + 'local_atm_outlined': Icons.local_atm_outlined, + 'local_attraction': Icons.local_attraction, + 'local_attraction_sharp': Icons.local_attraction_sharp, + 'local_attraction_rounded': Icons.local_attraction_rounded, + 'local_attraction_outlined': Icons.local_attraction_outlined, + 'local_bar': Icons.local_bar, + 'local_bar_sharp': Icons.local_bar_sharp, + 'local_bar_rounded': Icons.local_bar_rounded, + 'local_bar_outlined': Icons.local_bar_outlined, + 'local_cafe': Icons.local_cafe, + 'local_cafe_sharp': Icons.local_cafe_sharp, + 'local_cafe_rounded': Icons.local_cafe_rounded, + 'local_cafe_outlined': Icons.local_cafe_outlined, + 'local_car_wash': Icons.local_car_wash, + 'local_car_wash_sharp': Icons.local_car_wash_sharp, + 'local_car_wash_rounded': Icons.local_car_wash_rounded, + 'local_car_wash_outlined': Icons.local_car_wash_outlined, + 'local_convenience_store': Icons.local_convenience_store, + 'local_convenience_store_sharp': Icons.local_convenience_store_sharp, + 'local_convenience_store_rounded': + Icons.local_convenience_store_rounded, + 'local_convenience_store_outlined': + Icons.local_convenience_store_outlined, + 'local_dining': Icons.local_dining, + 'local_dining_sharp': Icons.local_dining_sharp, + 'local_dining_rounded': Icons.local_dining_rounded, + 'local_dining_outlined': Icons.local_dining_outlined, + 'local_drink': Icons.local_drink, + 'local_drink_sharp': Icons.local_drink_sharp, + 'local_drink_rounded': Icons.local_drink_rounded, + 'local_drink_outlined': Icons.local_drink_outlined, + 'local_fire_department': Icons.local_fire_department, + 'local_fire_department_sharp': Icons.local_fire_department_sharp, + 'local_fire_department_rounded': Icons.local_fire_department_rounded, + 'local_fire_department_outlined': Icons.local_fire_department_outlined, + 'local_florist': Icons.local_florist, + 'local_florist_sharp': Icons.local_florist_sharp, + 'local_florist_rounded': Icons.local_florist_rounded, + 'local_florist_outlined': Icons.local_florist_outlined, + 'local_gas_station': Icons.local_gas_station, + 'local_gas_station_sharp': Icons.local_gas_station_sharp, + 'local_gas_station_rounded': Icons.local_gas_station_rounded, + 'local_gas_station_outlined': Icons.local_gas_station_outlined, + 'local_grocery_store': Icons.local_grocery_store, + 'local_grocery_store_sharp': Icons.local_grocery_store_sharp, + 'local_grocery_store_rounded': Icons.local_grocery_store_rounded, + 'local_grocery_store_outlined': Icons.local_grocery_store_outlined, + 'local_hospital': Icons.local_hospital, + 'local_hospital_sharp': Icons.local_hospital_sharp, + 'local_hospital_rounded': Icons.local_hospital_rounded, + 'local_hospital_outlined': Icons.local_hospital_outlined, + 'local_hotel': Icons.local_hotel, + 'local_hotel_sharp': Icons.local_hotel_sharp, + 'local_hotel_rounded': Icons.local_hotel_rounded, + 'local_hotel_outlined': Icons.local_hotel_outlined, + 'local_laundry_service': Icons.local_laundry_service, + 'local_laundry_service_sharp': Icons.local_laundry_service_sharp, + 'local_laundry_service_rounded': Icons.local_laundry_service_rounded, + 'local_laundry_service_outlined': Icons.local_laundry_service_outlined, + 'local_library': Icons.local_library, + 'local_library_sharp': Icons.local_library_sharp, + 'local_library_rounded': Icons.local_library_rounded, + 'local_library_outlined': Icons.local_library_outlined, + 'local_mall': Icons.local_mall, + 'local_mall_sharp': Icons.local_mall_sharp, + 'local_mall_rounded': Icons.local_mall_rounded, + 'local_mall_outlined': Icons.local_mall_outlined, + 'local_movies': Icons.local_movies, + 'local_movies_sharp': Icons.local_movies_sharp, + 'local_movies_rounded': Icons.local_movies_rounded, + 'local_movies_outlined': Icons.local_movies_outlined, + 'local_offer': Icons.local_offer, + 'local_offer_sharp': Icons.local_offer_sharp, + 'local_offer_rounded': Icons.local_offer_rounded, + 'local_offer_outlined': Icons.local_offer_outlined, + 'local_parking': Icons.local_parking, + 'local_parking_sharp': Icons.local_parking_sharp, + 'local_parking_rounded': Icons.local_parking_rounded, + 'local_parking_outlined': Icons.local_parking_outlined, + 'local_pharmacy': Icons.local_pharmacy, + 'local_pharmacy_sharp': Icons.local_pharmacy_sharp, + 'local_pharmacy_rounded': Icons.local_pharmacy_rounded, + 'local_pharmacy_outlined': Icons.local_pharmacy_outlined, + 'local_phone': Icons.local_phone, + 'local_phone_sharp': Icons.local_phone_sharp, + 'local_phone_rounded': Icons.local_phone_rounded, + 'local_phone_outlined': Icons.local_phone_outlined, + 'local_pizza': Icons.local_pizza, + 'local_pizza_sharp': Icons.local_pizza_sharp, + 'local_pizza_rounded': Icons.local_pizza_rounded, + 'local_pizza_outlined': Icons.local_pizza_outlined, + 'local_play': Icons.local_play, + 'local_play_sharp': Icons.local_play_sharp, + 'local_play_rounded': Icons.local_play_rounded, + 'local_play_outlined': Icons.local_play_outlined, + 'local_police': Icons.local_police, + 'local_police_sharp': Icons.local_police_sharp, + 'local_police_rounded': Icons.local_police_rounded, + 'local_police_outlined': Icons.local_police_outlined, + 'local_post_office': Icons.local_post_office, + 'local_post_office_sharp': Icons.local_post_office_sharp, + 'local_post_office_rounded': Icons.local_post_office_rounded, + 'local_post_office_outlined': Icons.local_post_office_outlined, + 'local_print_shop': Icons.local_print_shop, + 'local_print_shop_sharp': Icons.local_print_shop_sharp, + 'local_print_shop_rounded': Icons.local_print_shop_rounded, + 'local_print_shop_outlined': Icons.local_print_shop_outlined, + 'local_printshop': Icons.local_printshop, + 'local_printshop_sharp': Icons.local_printshop_sharp, + 'local_printshop_rounded': Icons.local_printshop_rounded, + 'local_printshop_outlined': Icons.local_printshop_outlined, + 'local_restaurant': Icons.local_restaurant, + 'local_restaurant_sharp': Icons.local_restaurant_sharp, + 'local_restaurant_rounded': Icons.local_restaurant_rounded, + 'local_restaurant_outlined': Icons.local_restaurant_outlined, + 'local_see': Icons.local_see, + 'local_see_sharp': Icons.local_see_sharp, + 'local_see_rounded': Icons.local_see_rounded, + 'local_see_outlined': Icons.local_see_outlined, + 'local_shipping': Icons.local_shipping, + 'local_shipping_sharp': Icons.local_shipping_sharp, + 'local_shipping_rounded': Icons.local_shipping_rounded, + 'local_shipping_outlined': Icons.local_shipping_outlined, + 'local_taxi': Icons.local_taxi, + 'local_taxi_sharp': Icons.local_taxi_sharp, + 'local_taxi_rounded': Icons.local_taxi_rounded, + 'local_taxi_outlined': Icons.local_taxi_outlined, + 'location_city': Icons.location_city, + 'location_city_sharp': Icons.location_city_sharp, + 'location_city_rounded': Icons.location_city_rounded, + 'location_city_outlined': Icons.location_city_outlined, + 'location_disabled': Icons.location_disabled, + 'location_disabled_sharp': Icons.location_disabled_sharp, + 'location_disabled_rounded': Icons.location_disabled_rounded, + 'location_disabled_outlined': Icons.location_disabled_outlined, + 'location_history': Icons.location_history, + 'location_history_sharp': Icons.location_history_sharp, + 'location_history_rounded': Icons.location_history_rounded, + 'location_history_outlined': Icons.location_history_outlined, + 'location_off': Icons.location_off, + 'location_off_sharp': Icons.location_off_sharp, + 'location_off_rounded': Icons.location_off_rounded, + 'location_off_outlined': Icons.location_off_outlined, + 'location_on': Icons.location_on, + 'location_on_sharp': Icons.location_on_sharp, + 'location_on_rounded': Icons.location_on_rounded, + 'location_on_outlined': Icons.location_on_outlined, + 'location_pin': Icons.location_pin, + 'location_searching': Icons.location_searching, + 'location_searching_sharp': Icons.location_searching_sharp, + 'location_searching_rounded': Icons.location_searching_rounded, + 'location_searching_outlined': Icons.location_searching_outlined, + 'lock': Icons.lock, + 'lock_sharp': Icons.lock_sharp, + 'lock_rounded': Icons.lock_rounded, + 'lock_outlined': Icons.lock_outlined, + 'lock_clock': Icons.lock_clock, + 'lock_clock_sharp': Icons.lock_clock_sharp, + 'lock_clock_rounded': Icons.lock_clock_rounded, + 'lock_clock_outlined': Icons.lock_clock_outlined, + 'lock_open': Icons.lock_open, + 'lock_open_sharp': Icons.lock_open_sharp, + 'lock_open_rounded': Icons.lock_open_rounded, + 'lock_open_outlined': Icons.lock_open_outlined, + 'lock_outline': Icons.lock_outline, + 'lock_outline_sharp': Icons.lock_outline_sharp, + 'lock_outline_rounded': Icons.lock_outline_rounded, + 'login': Icons.login, + 'login_sharp': Icons.login_sharp, + 'login_rounded': Icons.login_rounded, + 'login_outlined': Icons.login_outlined, + 'logout': Icons.logout, + 'logout_sharp': Icons.logout_sharp, + 'logout_rounded': Icons.logout_rounded, + 'logout_outlined': Icons.logout_outlined, + 'looks': Icons.looks, + 'looks_sharp': Icons.looks_sharp, + 'looks_rounded': Icons.looks_rounded, + 'looks_outlined': Icons.looks_outlined, + 'looks_3': Icons.looks_3, + 'looks_3_sharp': Icons.looks_3_sharp, + 'looks_3_rounded': Icons.looks_3_rounded, + 'looks_3_outlined': Icons.looks_3_outlined, + 'looks_4': Icons.looks_4, + 'looks_4_sharp': Icons.looks_4_sharp, + 'looks_4_rounded': Icons.looks_4_rounded, + 'looks_4_outlined': Icons.looks_4_outlined, + 'looks_5': Icons.looks_5, + 'looks_5_sharp': Icons.looks_5_sharp, + 'looks_5_rounded': Icons.looks_5_rounded, + 'looks_5_outlined': Icons.looks_5_outlined, + 'looks_6': Icons.looks_6, + 'looks_6_sharp': Icons.looks_6_sharp, + 'looks_6_rounded': Icons.looks_6_rounded, + 'looks_6_outlined': Icons.looks_6_outlined, + 'looks_one': Icons.looks_one, + 'looks_one_sharp': Icons.looks_one_sharp, + 'looks_one_rounded': Icons.looks_one_rounded, + 'looks_one_outlined': Icons.looks_one_outlined, + 'looks_two': Icons.looks_two, + 'looks_two_sharp': Icons.looks_two_sharp, + 'looks_two_rounded': Icons.looks_two_rounded, + 'looks_two_outlined': Icons.looks_two_outlined, + 'loop': Icons.loop, + 'loop_sharp': Icons.loop_sharp, + 'loop_rounded': Icons.loop_rounded, + 'loop_outlined': Icons.loop_outlined, + 'loupe': Icons.loupe, + 'loupe_sharp': Icons.loupe_sharp, + 'loupe_rounded': Icons.loupe_rounded, + 'loupe_outlined': Icons.loupe_outlined, + 'low_priority': Icons.low_priority, + 'low_priority_sharp': Icons.low_priority_sharp, + 'low_priority_rounded': Icons.low_priority_rounded, + 'low_priority_outlined': Icons.low_priority_outlined, + 'loyalty': Icons.loyalty, + 'loyalty_sharp': Icons.loyalty_sharp, + 'loyalty_rounded': Icons.loyalty_rounded, + 'loyalty_outlined': Icons.loyalty_outlined, + 'lte_mobiledata': Icons.lte_mobiledata, + 'lte_mobiledata_sharp': Icons.lte_mobiledata_sharp, + 'lte_mobiledata_rounded': Icons.lte_mobiledata_rounded, + 'lte_mobiledata_outlined': Icons.lte_mobiledata_outlined, + 'lte_plus_mobiledata': Icons.lte_plus_mobiledata, + 'lte_plus_mobiledata_sharp': Icons.lte_plus_mobiledata_sharp, + 'lte_plus_mobiledata_rounded': Icons.lte_plus_mobiledata_rounded, + 'lte_plus_mobiledata_outlined': Icons.lte_plus_mobiledata_outlined, + 'luggage': Icons.luggage, + 'luggage_sharp': Icons.luggage_sharp, + 'luggage_rounded': Icons.luggage_rounded, + 'luggage_outlined': Icons.luggage_outlined, + 'lunch_dining': Icons.lunch_dining, + 'lunch_dining_sharp': Icons.lunch_dining_sharp, + 'lunch_dining_rounded': Icons.lunch_dining_rounded, + 'lunch_dining_outlined': Icons.lunch_dining_outlined, + 'mail': Icons.mail, + 'mail_sharp': Icons.mail_sharp, + 'mail_rounded': Icons.mail_rounded, + 'mail_outlined': Icons.mail_outlined, + 'mail_outline': Icons.mail_outline, + 'mail_outline_sharp': Icons.mail_outline_sharp, + 'mail_outline_rounded': Icons.mail_outline_rounded, + 'mail_outline_outlined': Icons.mail_outline_outlined, + 'male': Icons.male, + 'male_sharp': Icons.male_sharp, + 'male_rounded': Icons.male_rounded, + 'male_outlined': Icons.male_outlined, + 'manage_accounts': Icons.manage_accounts, + 'manage_accounts_sharp': Icons.manage_accounts_sharp, + 'manage_accounts_rounded': Icons.manage_accounts_rounded, + 'manage_accounts_outlined': Icons.manage_accounts_outlined, + 'manage_search': Icons.manage_search, + 'manage_search_sharp': Icons.manage_search_sharp, + 'manage_search_rounded': Icons.manage_search_rounded, + 'manage_search_outlined': Icons.manage_search_outlined, + 'map': Icons.map, + 'map_sharp': Icons.map_sharp, + 'map_rounded': Icons.map_rounded, + 'map_outlined': Icons.map_outlined, + 'maps_home_work': Icons.maps_home_work, + 'maps_home_work_sharp': Icons.maps_home_work_sharp, + 'maps_home_work_rounded': Icons.maps_home_work_rounded, + 'maps_home_work_outlined': Icons.maps_home_work_outlined, + 'maps_ugc': Icons.maps_ugc, + 'maps_ugc_sharp': Icons.maps_ugc_sharp, + 'maps_ugc_rounded': Icons.maps_ugc_rounded, + 'maps_ugc_outlined': Icons.maps_ugc_outlined, + 'margin': Icons.margin, + 'margin_sharp': Icons.margin_sharp, + 'margin_rounded': Icons.margin_rounded, + 'margin_outlined': Icons.margin_outlined, + 'mark_as_unread': Icons.mark_as_unread, + 'mark_as_unread_sharp': Icons.mark_as_unread_sharp, + 'mark_as_unread_rounded': Icons.mark_as_unread_rounded, + 'mark_as_unread_outlined': Icons.mark_as_unread_outlined, + 'mark_chat_read': Icons.mark_chat_read, + 'mark_chat_read_sharp': Icons.mark_chat_read_sharp, + 'mark_chat_read_rounded': Icons.mark_chat_read_rounded, + 'mark_chat_read_outlined': Icons.mark_chat_read_outlined, + 'mark_chat_unread': Icons.mark_chat_unread, + 'mark_chat_unread_sharp': Icons.mark_chat_unread_sharp, + 'mark_chat_unread_rounded': Icons.mark_chat_unread_rounded, + 'mark_chat_unread_outlined': Icons.mark_chat_unread_outlined, + 'mark_email_read': Icons.mark_email_read, + 'mark_email_read_sharp': Icons.mark_email_read_sharp, + 'mark_email_read_rounded': Icons.mark_email_read_rounded, + 'mark_email_read_outlined': Icons.mark_email_read_outlined, + 'mark_email_unread': Icons.mark_email_unread, + 'mark_email_unread_sharp': Icons.mark_email_unread_sharp, + 'mark_email_unread_rounded': Icons.mark_email_unread_rounded, + 'mark_email_unread_outlined': Icons.mark_email_unread_outlined, + 'markunread': Icons.markunread, + 'markunread_sharp': Icons.markunread_sharp, + 'markunread_rounded': Icons.markunread_rounded, + 'markunread_outlined': Icons.markunread_outlined, + 'markunread_mailbox': Icons.markunread_mailbox, + 'markunread_mailbox_sharp': Icons.markunread_mailbox_sharp, + 'markunread_mailbox_rounded': Icons.markunread_mailbox_rounded, + 'markunread_mailbox_outlined': Icons.markunread_mailbox_outlined, + 'masks': Icons.masks, + 'masks_sharp': Icons.masks_sharp, + 'masks_rounded': Icons.masks_rounded, + 'masks_outlined': Icons.masks_outlined, + 'maximize': Icons.maximize, + 'maximize_sharp': Icons.maximize_sharp, + 'maximize_rounded': Icons.maximize_rounded, + 'maximize_outlined': Icons.maximize_outlined, + 'media_bluetooth_off': Icons.media_bluetooth_off, + 'media_bluetooth_off_sharp': Icons.media_bluetooth_off_sharp, + 'media_bluetooth_off_rounded': Icons.media_bluetooth_off_rounded, + 'media_bluetooth_off_outlined': Icons.media_bluetooth_off_outlined, + 'media_bluetooth_on': Icons.media_bluetooth_on, + 'media_bluetooth_on_sharp': Icons.media_bluetooth_on_sharp, + 'media_bluetooth_on_rounded': Icons.media_bluetooth_on_rounded, + 'media_bluetooth_on_outlined': Icons.media_bluetooth_on_outlined, + 'mediation': Icons.mediation, + 'mediation_sharp': Icons.mediation_sharp, + 'mediation_rounded': Icons.mediation_rounded, + 'mediation_outlined': Icons.mediation_outlined, + 'medical_services': Icons.medical_services, + 'medical_services_sharp': Icons.medical_services_sharp, + 'medical_services_rounded': Icons.medical_services_rounded, + 'medical_services_outlined': Icons.medical_services_outlined, + 'medication': Icons.medication, + 'medication_sharp': Icons.medication_sharp, + 'medication_rounded': Icons.medication_rounded, + 'medication_outlined': Icons.medication_outlined, + 'meeting_room': Icons.meeting_room, + 'meeting_room_sharp': Icons.meeting_room_sharp, + 'meeting_room_rounded': Icons.meeting_room_rounded, + 'meeting_room_outlined': Icons.meeting_room_outlined, + 'memory': Icons.memory, + 'memory_sharp': Icons.memory_sharp, + 'memory_rounded': Icons.memory_rounded, + 'memory_outlined': Icons.memory_outlined, + 'menu': Icons.menu, + 'menu_sharp': Icons.menu_sharp, + 'menu_rounded': Icons.menu_rounded, + 'menu_outlined': Icons.menu_outlined, + 'menu_book': Icons.menu_book, + 'menu_book_sharp': Icons.menu_book_sharp, + 'menu_book_rounded': Icons.menu_book_rounded, + 'menu_book_outlined': Icons.menu_book_outlined, + 'menu_open': Icons.menu_open, + 'menu_open_sharp': Icons.menu_open_sharp, + 'menu_open_rounded': Icons.menu_open_rounded, + 'menu_open_outlined': Icons.menu_open_outlined, + 'merge_type': Icons.merge_type, + 'merge_type_sharp': Icons.merge_type_sharp, + 'merge_type_rounded': Icons.merge_type_rounded, + 'merge_type_outlined': Icons.merge_type_outlined, + 'message': Icons.message, + 'message_sharp': Icons.message_sharp, + 'message_rounded': Icons.message_rounded, + 'message_outlined': Icons.message_outlined, + 'messenger': Icons.messenger, + 'messenger_sharp': Icons.messenger_sharp, + 'messenger_rounded': Icons.messenger_rounded, + 'messenger_outlined': Icons.messenger_outlined, + 'messenger_outline': Icons.messenger_outline, + 'messenger_outline_sharp': Icons.messenger_outline_sharp, + 'messenger_outline_rounded': Icons.messenger_outline_rounded, + 'messenger_outline_outlined': Icons.messenger_outline_outlined, + 'mic': Icons.mic, + 'mic_sharp': Icons.mic_sharp, + 'mic_rounded': Icons.mic_rounded, + 'mic_outlined': Icons.mic_outlined, + 'mic_external_off': Icons.mic_external_off, + 'mic_external_off_sharp': Icons.mic_external_off_sharp, + 'mic_external_off_rounded': Icons.mic_external_off_rounded, + 'mic_external_off_outlined': Icons.mic_external_off_outlined, + 'mic_external_on': Icons.mic_external_on, + 'mic_external_on_sharp': Icons.mic_external_on_sharp, + 'mic_external_on_rounded': Icons.mic_external_on_rounded, + 'mic_external_on_outlined': Icons.mic_external_on_outlined, + 'mic_none': Icons.mic_none, + 'mic_none_sharp': Icons.mic_none_sharp, + 'mic_none_rounded': Icons.mic_none_rounded, + 'mic_none_outlined': Icons.mic_none_outlined, + 'mic_off': Icons.mic_off, + 'mic_off_sharp': Icons.mic_off_sharp, + 'mic_off_rounded': Icons.mic_off_rounded, + 'mic_off_outlined': Icons.mic_off_outlined, + 'microwave': Icons.microwave, + 'microwave_sharp': Icons.microwave_sharp, + 'microwave_rounded': Icons.microwave_rounded, + 'microwave_outlined': Icons.microwave_outlined, + 'military_tech': Icons.military_tech, + 'military_tech_sharp': Icons.military_tech_sharp, + 'military_tech_rounded': Icons.military_tech_rounded, + 'military_tech_outlined': Icons.military_tech_outlined, + 'minimize': Icons.minimize, + 'minimize_sharp': Icons.minimize_sharp, + 'minimize_rounded': Icons.minimize_rounded, + 'minimize_outlined': Icons.minimize_outlined, + 'miscellaneous_services': Icons.miscellaneous_services, + 'miscellaneous_services_sharp': Icons.miscellaneous_services_sharp, + 'miscellaneous_services_rounded': Icons.miscellaneous_services_rounded, + 'miscellaneous_services_outlined': + Icons.miscellaneous_services_outlined, + 'missed_video_call': Icons.missed_video_call, + 'missed_video_call_sharp': Icons.missed_video_call_sharp, + 'missed_video_call_rounded': Icons.missed_video_call_rounded, + 'missed_video_call_outlined': Icons.missed_video_call_outlined, + 'mms': Icons.mms, + 'mms_sharp': Icons.mms_sharp, + 'mms_rounded': Icons.mms_rounded, + 'mms_outlined': Icons.mms_outlined, + 'mobile_friendly': Icons.mobile_friendly, + 'mobile_friendly_sharp': Icons.mobile_friendly_sharp, + 'mobile_friendly_rounded': Icons.mobile_friendly_rounded, + 'mobile_friendly_outlined': Icons.mobile_friendly_outlined, + 'mobile_off': Icons.mobile_off, + 'mobile_off_sharp': Icons.mobile_off_sharp, + 'mobile_off_rounded': Icons.mobile_off_rounded, + 'mobile_off_outlined': Icons.mobile_off_outlined, + 'mobile_screen_share': Icons.mobile_screen_share, + 'mobile_screen_share_sharp': Icons.mobile_screen_share_sharp, + 'mobile_screen_share_rounded': Icons.mobile_screen_share_rounded, + 'mobile_screen_share_outlined': Icons.mobile_screen_share_outlined, + 'mobiledata_off': Icons.mobiledata_off, + 'mobiledata_off_sharp': Icons.mobiledata_off_sharp, + 'mobiledata_off_rounded': Icons.mobiledata_off_rounded, + 'mobiledata_off_outlined': Icons.mobiledata_off_outlined, + 'mode': Icons.mode, + 'mode_sharp': Icons.mode_sharp, + 'mode_rounded': Icons.mode_rounded, + 'mode_outlined': Icons.mode_outlined, + 'mode_comment': Icons.mode_comment, + 'mode_comment_sharp': Icons.mode_comment_sharp, + 'mode_comment_rounded': Icons.mode_comment_rounded, + 'mode_comment_outlined': Icons.mode_comment_outlined, + 'mode_edit': Icons.mode_edit, + 'mode_edit_sharp': Icons.mode_edit_sharp, + 'mode_edit_rounded': Icons.mode_edit_rounded, + 'mode_edit_outlined': Icons.mode_edit_outlined, + 'mode_edit_outline': Icons.mode_edit_outline, + 'mode_edit_outline_sharp': Icons.mode_edit_outline_sharp, + 'mode_edit_outline_rounded': Icons.mode_edit_outline_rounded, + 'mode_edit_outline_outlined': Icons.mode_edit_outline_outlined, + 'mode_night': Icons.mode_night, + 'mode_night_sharp': Icons.mode_night_sharp, + 'mode_night_rounded': Icons.mode_night_rounded, + 'mode_night_outlined': Icons.mode_night_outlined, + 'mode_standby': Icons.mode_standby, + 'mode_standby_sharp': Icons.mode_standby_sharp, + 'mode_standby_rounded': Icons.mode_standby_rounded, + 'mode_standby_outlined': Icons.mode_standby_outlined, + 'model_training': Icons.model_training, + 'model_training_sharp': Icons.model_training_sharp, + 'model_training_rounded': Icons.model_training_rounded, + 'model_training_outlined': Icons.model_training_outlined, + 'monetization_on': Icons.monetization_on, + 'monetization_on_sharp': Icons.monetization_on_sharp, + 'monetization_on_rounded': Icons.monetization_on_rounded, + 'monetization_on_outlined': Icons.monetization_on_outlined, + 'money': Icons.money, + 'money_sharp': Icons.money_sharp, + 'money_rounded': Icons.money_rounded, + 'money_outlined': Icons.money_outlined, + 'money_off': Icons.money_off, + 'money_off_sharp': Icons.money_off_sharp, + 'money_off_rounded': Icons.money_off_rounded, + 'money_off_outlined': Icons.money_off_outlined, + 'money_off_csred': Icons.money_off_csred, + 'money_off_csred_sharp': Icons.money_off_csred_sharp, + 'money_off_csred_rounded': Icons.money_off_csred_rounded, + 'money_off_csred_outlined': Icons.money_off_csred_outlined, + 'monitor': Icons.monitor, + 'monitor_sharp': Icons.monitor_sharp, + 'monitor_rounded': Icons.monitor_rounded, + 'monitor_outlined': Icons.monitor_outlined, + 'monitor_weight': Icons.monitor_weight, + 'monitor_weight_sharp': Icons.monitor_weight_sharp, + 'monitor_weight_rounded': Icons.monitor_weight_rounded, + 'monitor_weight_outlined': Icons.monitor_weight_outlined, + 'monochrome_photos': Icons.monochrome_photos, + 'monochrome_photos_sharp': Icons.monochrome_photos_sharp, + 'monochrome_photos_rounded': Icons.monochrome_photos_rounded, + 'monochrome_photos_outlined': Icons.monochrome_photos_outlined, + 'mood': Icons.mood, + 'mood_sharp': Icons.mood_sharp, + 'mood_rounded': Icons.mood_rounded, + 'mood_outlined': Icons.mood_outlined, + 'mood_bad': Icons.mood_bad, + 'mood_bad_sharp': Icons.mood_bad_sharp, + 'mood_bad_rounded': Icons.mood_bad_rounded, + 'mood_bad_outlined': Icons.mood_bad_outlined, + 'moped': Icons.moped, + 'moped_sharp': Icons.moped_sharp, + 'moped_rounded': Icons.moped_rounded, + 'moped_outlined': Icons.moped_outlined, + 'more': Icons.more, + 'more_sharp': Icons.more_sharp, + 'more_rounded': Icons.more_rounded, + 'more_outlined': Icons.more_outlined, + 'more_horiz': Icons.more_horiz, + 'more_horiz_sharp': Icons.more_horiz_sharp, + 'more_horiz_rounded': Icons.more_horiz_rounded, + 'more_horiz_outlined': Icons.more_horiz_outlined, + 'more_time': Icons.more_time, + 'more_time_sharp': Icons.more_time_sharp, + 'more_time_rounded': Icons.more_time_rounded, + 'more_time_outlined': Icons.more_time_outlined, + 'more_vert': Icons.more_vert, + 'more_vert_sharp': Icons.more_vert_sharp, + 'more_vert_rounded': Icons.more_vert_rounded, + 'more_vert_outlined': Icons.more_vert_outlined, + 'motion_photos_auto': Icons.motion_photos_auto, + 'motion_photos_auto_sharp': Icons.motion_photos_auto_sharp, + 'motion_photos_auto_rounded': Icons.motion_photos_auto_rounded, + 'motion_photos_auto_outlined': Icons.motion_photos_auto_outlined, + 'motion_photos_off': Icons.motion_photos_off, + 'motion_photos_off_sharp': Icons.motion_photos_off_sharp, + 'motion_photos_off_rounded': Icons.motion_photos_off_rounded, + 'motion_photos_off_outlined': Icons.motion_photos_off_outlined, + 'motion_photos_on': Icons.motion_photos_on, + 'motion_photos_on_sharp': Icons.motion_photos_on_sharp, + 'motion_photos_on_rounded': Icons.motion_photos_on_rounded, + 'motion_photos_on_outlined': Icons.motion_photos_on_outlined, + 'motion_photos_pause': Icons.motion_photos_pause, + 'motion_photos_pause_sharp': Icons.motion_photos_pause_sharp, + 'motion_photos_pause_rounded': Icons.motion_photos_pause_rounded, + 'motion_photos_pause_outlined': Icons.motion_photos_pause_outlined, + 'motion_photos_paused': Icons.motion_photos_paused, + 'motion_photos_paused_sharp': Icons.motion_photos_paused_sharp, + 'motion_photos_paused_rounded': Icons.motion_photos_paused_rounded, + 'motion_photos_paused_outlined': Icons.motion_photos_paused_outlined, + 'motorcycle': Icons.motorcycle, + 'motorcycle_sharp': Icons.motorcycle_sharp, + 'motorcycle_rounded': Icons.motorcycle_rounded, + 'motorcycle_outlined': Icons.motorcycle_outlined, + 'mouse': Icons.mouse, + 'mouse_sharp': Icons.mouse_sharp, + 'mouse_rounded': Icons.mouse_rounded, + 'mouse_outlined': Icons.mouse_outlined, + 'move_to_inbox': Icons.move_to_inbox, + 'move_to_inbox_sharp': Icons.move_to_inbox_sharp, + 'move_to_inbox_rounded': Icons.move_to_inbox_rounded, + 'move_to_inbox_outlined': Icons.move_to_inbox_outlined, + 'movie': Icons.movie, + 'movie_sharp': Icons.movie_sharp, + 'movie_rounded': Icons.movie_rounded, + 'movie_outlined': Icons.movie_outlined, + 'movie_creation': Icons.movie_creation, + 'movie_creation_sharp': Icons.movie_creation_sharp, + 'movie_creation_rounded': Icons.movie_creation_rounded, + 'movie_creation_outlined': Icons.movie_creation_outlined, + 'movie_filter': Icons.movie_filter, + 'movie_filter_sharp': Icons.movie_filter_sharp, + 'movie_filter_rounded': Icons.movie_filter_rounded, + 'movie_filter_outlined': Icons.movie_filter_outlined, + 'moving': Icons.moving, + 'moving_sharp': Icons.moving_sharp, + 'moving_rounded': Icons.moving_rounded, + 'moving_outlined': Icons.moving_outlined, + 'mp': Icons.mp, + 'mp_sharp': Icons.mp_sharp, + 'mp_rounded': Icons.mp_rounded, + 'mp_outlined': Icons.mp_outlined, + 'multiline_chart': Icons.multiline_chart, + 'multiline_chart_sharp': Icons.multiline_chart_sharp, + 'multiline_chart_rounded': Icons.multiline_chart_rounded, + 'multiline_chart_outlined': Icons.multiline_chart_outlined, + 'multiple_stop': Icons.multiple_stop, + 'multiple_stop_sharp': Icons.multiple_stop_sharp, + 'multiple_stop_rounded': Icons.multiple_stop_rounded, + 'multiple_stop_outlined': Icons.multiple_stop_outlined, + 'multitrack_audio': Icons.multitrack_audio, + 'multitrack_audio_sharp': Icons.multitrack_audio_sharp, + 'multitrack_audio_rounded': Icons.multitrack_audio_rounded, + 'multitrack_audio_outlined': Icons.multitrack_audio_outlined, + 'museum': Icons.museum, + 'museum_sharp': Icons.museum_sharp, + 'museum_rounded': Icons.museum_rounded, + 'museum_outlined': Icons.museum_outlined, + 'music_note': Icons.music_note, + 'music_note_sharp': Icons.music_note_sharp, + 'music_note_rounded': Icons.music_note_rounded, + 'music_note_outlined': Icons.music_note_outlined, + 'music_off': Icons.music_off, + 'music_off_sharp': Icons.music_off_sharp, + 'music_off_rounded': Icons.music_off_rounded, + 'music_off_outlined': Icons.music_off_outlined, + 'music_video': Icons.music_video, + 'music_video_sharp': Icons.music_video_sharp, + 'music_video_rounded': Icons.music_video_rounded, + 'music_video_outlined': Icons.music_video_outlined, + 'my_library_add': Icons.my_library_add, + 'my_library_add_sharp': Icons.my_library_add_sharp, + 'my_library_add_rounded': Icons.my_library_add_rounded, + 'my_library_add_outlined': Icons.my_library_add_outlined, + 'my_library_books': Icons.my_library_books, + 'my_library_books_sharp': Icons.my_library_books_sharp, + 'my_library_books_rounded': Icons.my_library_books_rounded, + 'my_library_books_outlined': Icons.my_library_books_outlined, + 'my_library_music': Icons.my_library_music, + 'my_library_music_sharp': Icons.my_library_music_sharp, + 'my_library_music_rounded': Icons.my_library_music_rounded, + 'my_library_music_outlined': Icons.my_library_music_outlined, + 'my_location': Icons.my_location, + 'my_location_sharp': Icons.my_location_sharp, + 'my_location_rounded': Icons.my_location_rounded, + 'my_location_outlined': Icons.my_location_outlined, + 'nat': Icons.nat, + 'nat_sharp': Icons.nat_sharp, + 'nat_rounded': Icons.nat_rounded, + 'nat_outlined': Icons.nat_outlined, + 'nature': Icons.nature, + 'nature_sharp': Icons.nature_sharp, + 'nature_rounded': Icons.nature_rounded, + 'nature_outlined': Icons.nature_outlined, + 'nature_people': Icons.nature_people, + 'nature_people_sharp': Icons.nature_people_sharp, + 'nature_people_rounded': Icons.nature_people_rounded, + 'nature_people_outlined': Icons.nature_people_outlined, + 'navigate_before': Icons.navigate_before, + 'navigate_before_sharp': Icons.navigate_before_sharp, + 'navigate_before_rounded': Icons.navigate_before_rounded, + 'navigate_before_outlined': Icons.navigate_before_outlined, + 'navigate_next': Icons.navigate_next, + 'navigate_next_sharp': Icons.navigate_next_sharp, + 'navigate_next_rounded': Icons.navigate_next_rounded, + 'navigate_next_outlined': Icons.navigate_next_outlined, + 'navigation': Icons.navigation, + 'navigation_sharp': Icons.navigation_sharp, + 'navigation_rounded': Icons.navigation_rounded, + 'navigation_outlined': Icons.navigation_outlined, + 'near_me': Icons.near_me, + 'near_me_sharp': Icons.near_me_sharp, + 'near_me_rounded': Icons.near_me_rounded, + 'near_me_outlined': Icons.near_me_outlined, + 'near_me_disabled': Icons.near_me_disabled, + 'near_me_disabled_sharp': Icons.near_me_disabled_sharp, + 'near_me_disabled_rounded': Icons.near_me_disabled_rounded, + 'near_me_disabled_outlined': Icons.near_me_disabled_outlined, + 'nearby_error': Icons.nearby_error, + 'nearby_error_sharp': Icons.nearby_error_sharp, + 'nearby_error_rounded': Icons.nearby_error_rounded, + 'nearby_error_outlined': Icons.nearby_error_outlined, + 'nearby_off': Icons.nearby_off, + 'nearby_off_sharp': Icons.nearby_off_sharp, + 'nearby_off_rounded': Icons.nearby_off_rounded, + 'nearby_off_outlined': Icons.nearby_off_outlined, + 'network_cell': Icons.network_cell, + 'network_cell_sharp': Icons.network_cell_sharp, + 'network_cell_rounded': Icons.network_cell_rounded, + 'network_cell_outlined': Icons.network_cell_outlined, + 'network_check': Icons.network_check, + 'network_check_sharp': Icons.network_check_sharp, + 'network_check_rounded': Icons.network_check_rounded, + 'network_check_outlined': Icons.network_check_outlined, + 'network_locked': Icons.network_locked, + 'network_locked_sharp': Icons.network_locked_sharp, + 'network_locked_rounded': Icons.network_locked_rounded, + 'network_locked_outlined': Icons.network_locked_outlined, + 'network_wifi': Icons.network_wifi, + 'network_wifi_sharp': Icons.network_wifi_sharp, + 'network_wifi_rounded': Icons.network_wifi_rounded, + 'network_wifi_outlined': Icons.network_wifi_outlined, + 'new_label': Icons.new_label, + 'new_label_sharp': Icons.new_label_sharp, + 'new_label_rounded': Icons.new_label_rounded, + 'new_label_outlined': Icons.new_label_outlined, + 'new_releases': Icons.new_releases, + 'new_releases_sharp': Icons.new_releases_sharp, + 'new_releases_rounded': Icons.new_releases_rounded, + 'new_releases_outlined': Icons.new_releases_outlined, + 'next_plan': Icons.next_plan, + 'next_plan_sharp': Icons.next_plan_sharp, + 'next_plan_rounded': Icons.next_plan_rounded, + 'next_plan_outlined': Icons.next_plan_outlined, + 'next_week': Icons.next_week, + 'next_week_sharp': Icons.next_week_sharp, + 'next_week_rounded': Icons.next_week_rounded, + 'next_week_outlined': Icons.next_week_outlined, + 'nfc': Icons.nfc, + 'nfc_sharp': Icons.nfc_sharp, + 'nfc_rounded': Icons.nfc_rounded, + 'nfc_outlined': Icons.nfc_outlined, + 'night_shelter': Icons.night_shelter, + 'night_shelter_sharp': Icons.night_shelter_sharp, + 'night_shelter_rounded': Icons.night_shelter_rounded, + 'night_shelter_outlined': Icons.night_shelter_outlined, + 'nightlife': Icons.nightlife, + 'nightlife_sharp': Icons.nightlife_sharp, + 'nightlife_rounded': Icons.nightlife_rounded, + 'nightlife_outlined': Icons.nightlife_outlined, + 'nightlight': Icons.nightlight, + 'nightlight_sharp': Icons.nightlight_sharp, + 'nightlight_rounded': Icons.nightlight_rounded, + 'nightlight_outlined': Icons.nightlight_outlined, + 'nightlight_round': Icons.nightlight_round, + 'nightlight_round_sharp': Icons.nightlight_round_sharp, + 'nightlight_round_rounded': Icons.nightlight_round_rounded, + 'nightlight_round_outlined': Icons.nightlight_round_outlined, + 'nights_stay': Icons.nights_stay, + 'nights_stay_sharp': Icons.nights_stay_sharp, + 'nights_stay_rounded': Icons.nights_stay_rounded, + 'nights_stay_outlined': Icons.nights_stay_outlined, + 'no_accounts': Icons.no_accounts, + 'no_accounts_sharp': Icons.no_accounts_sharp, + 'no_accounts_rounded': Icons.no_accounts_rounded, + 'no_accounts_outlined': Icons.no_accounts_outlined, + 'no_backpack': Icons.no_backpack, + 'no_backpack_sharp': Icons.no_backpack_sharp, + 'no_backpack_rounded': Icons.no_backpack_rounded, + 'no_backpack_outlined': Icons.no_backpack_outlined, + 'no_cell': Icons.no_cell, + 'no_cell_sharp': Icons.no_cell_sharp, + 'no_cell_rounded': Icons.no_cell_rounded, + 'no_cell_outlined': Icons.no_cell_outlined, + 'no_drinks': Icons.no_drinks, + 'no_drinks_sharp': Icons.no_drinks_sharp, + 'no_drinks_rounded': Icons.no_drinks_rounded, + 'no_drinks_outlined': Icons.no_drinks_outlined, + 'no_encryption': Icons.no_encryption, + 'no_encryption_sharp': Icons.no_encryption_sharp, + 'no_encryption_rounded': Icons.no_encryption_rounded, + 'no_encryption_outlined': Icons.no_encryption_outlined, + 'no_encryption_gmailerrorred': Icons.no_encryption_gmailerrorred, + 'no_encryption_gmailerrorred_sharp': + Icons.no_encryption_gmailerrorred_sharp, + 'no_encryption_gmailerrorred_rounded': + Icons.no_encryption_gmailerrorred_rounded, + 'no_encryption_gmailerrorred_outlined': + Icons.no_encryption_gmailerrorred_outlined, + 'no_flash': Icons.no_flash, + 'no_flash_sharp': Icons.no_flash_sharp, + 'no_flash_rounded': Icons.no_flash_rounded, + 'no_flash_outlined': Icons.no_flash_outlined, + 'no_food': Icons.no_food, + 'no_food_sharp': Icons.no_food_sharp, + 'no_food_rounded': Icons.no_food_rounded, + 'no_food_outlined': Icons.no_food_outlined, + 'no_luggage': Icons.no_luggage, + 'no_luggage_sharp': Icons.no_luggage_sharp, + 'no_luggage_rounded': Icons.no_luggage_rounded, + 'no_luggage_outlined': Icons.no_luggage_outlined, + 'no_meals': Icons.no_meals, + 'no_meals_sharp': Icons.no_meals_sharp, + 'no_meals_rounded': Icons.no_meals_rounded, + 'no_meals_outlined': Icons.no_meals_outlined, + 'no_meals_ouline': Icons.no_meals_ouline, + 'no_meeting_room': Icons.no_meeting_room, + 'no_meeting_room_sharp': Icons.no_meeting_room_sharp, + 'no_meeting_room_rounded': Icons.no_meeting_room_rounded, + 'no_meeting_room_outlined': Icons.no_meeting_room_outlined, + 'no_photography': Icons.no_photography, + 'no_photography_sharp': Icons.no_photography_sharp, + 'no_photography_rounded': Icons.no_photography_rounded, + 'no_photography_outlined': Icons.no_photography_outlined, + 'no_sim': Icons.no_sim, + 'no_sim_sharp': Icons.no_sim_sharp, + 'no_sim_rounded': Icons.no_sim_rounded, + 'no_sim_outlined': Icons.no_sim_outlined, + 'no_stroller': Icons.no_stroller, + 'no_stroller_sharp': Icons.no_stroller_sharp, + 'no_stroller_rounded': Icons.no_stroller_rounded, + 'no_stroller_outlined': Icons.no_stroller_outlined, + 'no_transfer': Icons.no_transfer, + 'no_transfer_sharp': Icons.no_transfer_sharp, + 'no_transfer_rounded': Icons.no_transfer_rounded, + 'no_transfer_outlined': Icons.no_transfer_outlined, + 'nordic_walking': Icons.nordic_walking, + 'nordic_walking_sharp': Icons.nordic_walking_sharp, + 'nordic_walking_rounded': Icons.nordic_walking_rounded, + 'nordic_walking_outlined': Icons.nordic_walking_outlined, + 'north': Icons.north, + 'north_sharp': Icons.north_sharp, + 'north_rounded': Icons.north_rounded, + 'north_outlined': Icons.north_outlined, + 'north_east': Icons.north_east, + 'north_east_sharp': Icons.north_east_sharp, + 'north_east_rounded': Icons.north_east_rounded, + 'north_east_outlined': Icons.north_east_outlined, + 'north_west': Icons.north_west, + 'north_west_sharp': Icons.north_west_sharp, + 'north_west_rounded': Icons.north_west_rounded, + 'north_west_outlined': Icons.north_west_outlined, + 'not_accessible': Icons.not_accessible, + 'not_accessible_sharp': Icons.not_accessible_sharp, + 'not_accessible_rounded': Icons.not_accessible_rounded, + 'not_accessible_outlined': Icons.not_accessible_outlined, + 'not_interested': Icons.not_interested, + 'not_interested_sharp': Icons.not_interested_sharp, + 'not_interested_rounded': Icons.not_interested_rounded, + 'not_interested_outlined': Icons.not_interested_outlined, + 'not_listed_location': Icons.not_listed_location, + 'not_listed_location_sharp': Icons.not_listed_location_sharp, + 'not_listed_location_rounded': Icons.not_listed_location_rounded, + 'not_listed_location_outlined': Icons.not_listed_location_outlined, + 'not_started': Icons.not_started, + 'not_started_sharp': Icons.not_started_sharp, + 'not_started_rounded': Icons.not_started_rounded, + 'not_started_outlined': Icons.not_started_outlined, + 'note': Icons.note, + 'note_sharp': Icons.note_sharp, + 'note_rounded': Icons.note_rounded, + 'note_outlined': Icons.note_outlined, + 'note_add': Icons.note_add, + 'note_add_sharp': Icons.note_add_sharp, + 'note_add_rounded': Icons.note_add_rounded, + 'note_add_outlined': Icons.note_add_outlined, + 'note_alt': Icons.note_alt, + 'note_alt_sharp': Icons.note_alt_sharp, + 'note_alt_rounded': Icons.note_alt_rounded, + 'note_alt_outlined': Icons.note_alt_outlined, + 'notes': Icons.notes, + 'notes_sharp': Icons.notes_sharp, + 'notes_rounded': Icons.notes_rounded, + 'notes_outlined': Icons.notes_outlined, + 'notification_add': Icons.notification_add, + 'notification_add_sharp': Icons.notification_add_sharp, + 'notification_add_rounded': Icons.notification_add_rounded, + 'notification_add_outlined': Icons.notification_add_outlined, + 'notification_important': Icons.notification_important, + 'notification_important_sharp': Icons.notification_important_sharp, + 'notification_important_rounded': Icons.notification_important_rounded, + 'notification_important_outlined': + Icons.notification_important_outlined, + 'notifications': Icons.notifications, + 'notifications_sharp': Icons.notifications_sharp, + 'notifications_rounded': Icons.notifications_rounded, + 'notifications_outlined': Icons.notifications_outlined, + 'notifications_active': Icons.notifications_active, + 'notifications_active_sharp': Icons.notifications_active_sharp, + 'notifications_active_rounded': Icons.notifications_active_rounded, + 'notifications_active_outlined': Icons.notifications_active_outlined, + 'notifications_none': Icons.notifications_none, + 'notifications_none_sharp': Icons.notifications_none_sharp, + 'notifications_none_rounded': Icons.notifications_none_rounded, + 'notifications_none_outlined': Icons.notifications_none_outlined, + 'notifications_off': Icons.notifications_off, + 'notifications_off_sharp': Icons.notifications_off_sharp, + 'notifications_off_rounded': Icons.notifications_off_rounded, + 'notifications_off_outlined': Icons.notifications_off_outlined, + 'notifications_on': Icons.notifications_on, + 'notifications_on_sharp': Icons.notifications_on_sharp, + 'notifications_on_rounded': Icons.notifications_on_rounded, + 'notifications_on_outlined': Icons.notifications_on_outlined, + 'notifications_paused': Icons.notifications_paused, + 'notifications_paused_sharp': Icons.notifications_paused_sharp, + 'notifications_paused_rounded': Icons.notifications_paused_rounded, + 'notifications_paused_outlined': Icons.notifications_paused_outlined, + 'now_wallpaper': Icons.now_wallpaper, + 'now_wallpaper_sharp': Icons.now_wallpaper_sharp, + 'now_wallpaper_rounded': Icons.now_wallpaper_rounded, + 'now_wallpaper_outlined': Icons.now_wallpaper_outlined, + 'now_widgets': Icons.now_widgets, + 'now_widgets_sharp': Icons.now_widgets_sharp, + 'now_widgets_rounded': Icons.now_widgets_rounded, + 'now_widgets_outlined': Icons.now_widgets_outlined, + 'offline_bolt': Icons.offline_bolt, + 'offline_bolt_sharp': Icons.offline_bolt_sharp, + 'offline_bolt_rounded': Icons.offline_bolt_rounded, + 'offline_bolt_outlined': Icons.offline_bolt_outlined, + 'offline_pin': Icons.offline_pin, + 'offline_pin_sharp': Icons.offline_pin_sharp, + 'offline_pin_rounded': Icons.offline_pin_rounded, + 'offline_pin_outlined': Icons.offline_pin_outlined, + 'offline_share': Icons.offline_share, + 'offline_share_sharp': Icons.offline_share_sharp, + 'offline_share_rounded': Icons.offline_share_rounded, + 'offline_share_outlined': Icons.offline_share_outlined, + 'ondemand_video': Icons.ondemand_video, + 'ondemand_video_sharp': Icons.ondemand_video_sharp, + 'ondemand_video_rounded': Icons.ondemand_video_rounded, + 'ondemand_video_outlined': Icons.ondemand_video_outlined, + 'online_prediction': Icons.online_prediction, + 'online_prediction_sharp': Icons.online_prediction_sharp, + 'online_prediction_rounded': Icons.online_prediction_rounded, + 'online_prediction_outlined': Icons.online_prediction_outlined, + 'opacity': Icons.opacity, + 'opacity_sharp': Icons.opacity_sharp, + 'opacity_rounded': Icons.opacity_rounded, + 'opacity_outlined': Icons.opacity_outlined, + 'open_in_browser': Icons.open_in_browser, + 'open_in_browser_sharp': Icons.open_in_browser_sharp, + 'open_in_browser_rounded': Icons.open_in_browser_rounded, + 'open_in_browser_outlined': Icons.open_in_browser_outlined, + 'open_in_full': Icons.open_in_full, + 'open_in_full_sharp': Icons.open_in_full_sharp, + 'open_in_full_rounded': Icons.open_in_full_rounded, + 'open_in_full_outlined': Icons.open_in_full_outlined, + 'open_in_new': Icons.open_in_new, + 'open_in_new_sharp': Icons.open_in_new_sharp, + 'open_in_new_rounded': Icons.open_in_new_rounded, + 'open_in_new_outlined': Icons.open_in_new_outlined, + 'open_in_new_off': Icons.open_in_new_off, + 'open_in_new_off_sharp': Icons.open_in_new_off_sharp, + 'open_in_new_off_rounded': Icons.open_in_new_off_rounded, + 'open_in_new_off_outlined': Icons.open_in_new_off_outlined, + 'open_with': Icons.open_with, + 'open_with_sharp': Icons.open_with_sharp, + 'open_with_rounded': Icons.open_with_rounded, + 'open_with_outlined': Icons.open_with_outlined, + 'other_houses': Icons.other_houses, + 'other_houses_sharp': Icons.other_houses_sharp, + 'other_houses_rounded': Icons.other_houses_rounded, + 'other_houses_outlined': Icons.other_houses_outlined, + 'outbond': Icons.outbond, + 'outbond_sharp': Icons.outbond_sharp, + 'outbond_rounded': Icons.outbond_rounded, + 'outbond_outlined': Icons.outbond_outlined, + 'outbound': Icons.outbound, + 'outbound_sharp': Icons.outbound_sharp, + 'outbound_rounded': Icons.outbound_rounded, + 'outbound_outlined': Icons.outbound_outlined, + 'outbox': Icons.outbox, + 'outbox_sharp': Icons.outbox_sharp, + 'outbox_rounded': Icons.outbox_rounded, + 'outbox_outlined': Icons.outbox_outlined, + 'outdoor_grill': Icons.outdoor_grill, + 'outdoor_grill_sharp': Icons.outdoor_grill_sharp, + 'outdoor_grill_rounded': Icons.outdoor_grill_rounded, + 'outdoor_grill_outlined': Icons.outdoor_grill_outlined, + 'outgoing_mail': Icons.outgoing_mail, + 'outlet': Icons.outlet, + 'outlet_sharp': Icons.outlet_sharp, + 'outlet_rounded': Icons.outlet_rounded, + 'outlet_outlined': Icons.outlet_outlined, + 'outlined_flag': Icons.outlined_flag, + 'outlined_flag_sharp': Icons.outlined_flag_sharp, + 'outlined_flag_rounded': Icons.outlined_flag_rounded, + 'outlined_flag_outlined': Icons.outlined_flag_outlined, + 'padding': Icons.padding, + 'padding_sharp': Icons.padding_sharp, + 'padding_rounded': Icons.padding_rounded, + 'padding_outlined': Icons.padding_outlined, + 'pages': Icons.pages, + 'pages_sharp': Icons.pages_sharp, + 'pages_rounded': Icons.pages_rounded, + 'pages_outlined': Icons.pages_outlined, + 'pageview': Icons.pageview, + 'pageview_sharp': Icons.pageview_sharp, + 'pageview_rounded': Icons.pageview_rounded, + 'pageview_outlined': Icons.pageview_outlined, + 'paid': Icons.paid, + 'paid_sharp': Icons.paid_sharp, + 'paid_rounded': Icons.paid_rounded, + 'paid_outlined': Icons.paid_outlined, + 'palette': Icons.palette, + 'palette_sharp': Icons.palette_sharp, + 'palette_rounded': Icons.palette_rounded, + 'palette_outlined': Icons.palette_outlined, + 'pan_tool': Icons.pan_tool, + 'pan_tool_sharp': Icons.pan_tool_sharp, + 'pan_tool_rounded': Icons.pan_tool_rounded, + 'pan_tool_outlined': Icons.pan_tool_outlined, + 'panorama': Icons.panorama, + 'panorama_sharp': Icons.panorama_sharp, + 'panorama_rounded': Icons.panorama_rounded, + 'panorama_outlined': Icons.panorama_outlined, + 'panorama_fish_eye': Icons.panorama_fish_eye, + 'panorama_fish_eye_sharp': Icons.panorama_fish_eye_sharp, + 'panorama_fish_eye_rounded': Icons.panorama_fish_eye_rounded, + 'panorama_fish_eye_outlined': Icons.panorama_fish_eye_outlined, + 'panorama_fisheye': Icons.panorama_fisheye, + 'panorama_fisheye_sharp': Icons.panorama_fisheye_sharp, + 'panorama_fisheye_rounded': Icons.panorama_fisheye_rounded, + 'panorama_fisheye_outlined': Icons.panorama_fisheye_outlined, + 'panorama_horizontal': Icons.panorama_horizontal, + 'panorama_horizontal_sharp': Icons.panorama_horizontal_sharp, + 'panorama_horizontal_rounded': Icons.panorama_horizontal_rounded, + 'panorama_horizontal_outlined': Icons.panorama_horizontal_outlined, + 'panorama_horizontal_select': Icons.panorama_horizontal_select, + 'panorama_horizontal_select_sharp': + Icons.panorama_horizontal_select_sharp, + 'panorama_horizontal_select_rounded': + Icons.panorama_horizontal_select_rounded, + 'panorama_horizontal_select_outlined': + Icons.panorama_horizontal_select_outlined, + 'panorama_photosphere': Icons.panorama_photosphere, + 'panorama_photosphere_sharp': Icons.panorama_photosphere_sharp, + 'panorama_photosphere_rounded': Icons.panorama_photosphere_rounded, + 'panorama_photosphere_outlined': Icons.panorama_photosphere_outlined, + 'panorama_photosphere_select': Icons.panorama_photosphere_select, + 'panorama_photosphere_select_sharp': + Icons.panorama_photosphere_select_sharp, + 'panorama_photosphere_select_rounded': + Icons.panorama_photosphere_select_rounded, + 'panorama_photosphere_select_outlined': + Icons.panorama_photosphere_select_outlined, + 'panorama_vertical': Icons.panorama_vertical, + 'panorama_vertical_sharp': Icons.panorama_vertical_sharp, + 'panorama_vertical_rounded': Icons.panorama_vertical_rounded, + 'panorama_vertical_outlined': Icons.panorama_vertical_outlined, + 'panorama_vertical_select': Icons.panorama_vertical_select, + 'panorama_vertical_select_sharp': Icons.panorama_vertical_select_sharp, + 'panorama_vertical_select_rounded': + Icons.panorama_vertical_select_rounded, + 'panorama_vertical_select_outlined': + Icons.panorama_vertical_select_outlined, + 'panorama_wide_angle': Icons.panorama_wide_angle, + 'panorama_wide_angle_sharp': Icons.panorama_wide_angle_sharp, + 'panorama_wide_angle_rounded': Icons.panorama_wide_angle_rounded, + 'panorama_wide_angle_outlined': Icons.panorama_wide_angle_outlined, + 'panorama_wide_angle_select': Icons.panorama_wide_angle_select, + 'panorama_wide_angle_select_sharp': + Icons.panorama_wide_angle_select_sharp, + 'panorama_wide_angle_select_rounded': + Icons.panorama_wide_angle_select_rounded, + 'panorama_wide_angle_select_outlined': + Icons.panorama_wide_angle_select_outlined, + 'paragliding': Icons.paragliding, + 'paragliding_sharp': Icons.paragliding_sharp, + 'paragliding_rounded': Icons.paragliding_rounded, + 'paragliding_outlined': Icons.paragliding_outlined, + 'park': Icons.park, + 'park_sharp': Icons.park_sharp, + 'park_rounded': Icons.park_rounded, + 'park_outlined': Icons.park_outlined, + 'party_mode': Icons.party_mode, + 'party_mode_sharp': Icons.party_mode_sharp, + 'party_mode_rounded': Icons.party_mode_rounded, + 'party_mode_outlined': Icons.party_mode_outlined, + 'password': Icons.password, + 'password_sharp': Icons.password_sharp, + 'password_rounded': Icons.password_rounded, + 'password_outlined': Icons.password_outlined, + 'paste': Icons.paste, + 'paste_sharp': Icons.paste_sharp, + 'paste_rounded': Icons.paste_rounded, + 'paste_outlined': Icons.paste_outlined, + 'pattern': Icons.pattern, + 'pattern_sharp': Icons.pattern_sharp, + 'pattern_rounded': Icons.pattern_rounded, + 'pattern_outlined': Icons.pattern_outlined, + 'pause': Icons.pause, + 'pause_sharp': Icons.pause_sharp, + 'pause_rounded': Icons.pause_rounded, + 'pause_outlined': Icons.pause_outlined, + 'pause_circle': Icons.pause_circle, + 'pause_circle_sharp': Icons.pause_circle_sharp, + 'pause_circle_rounded': Icons.pause_circle_rounded, + 'pause_circle_outlined': Icons.pause_circle_outlined, + 'pause_circle_filled': Icons.pause_circle_filled, + 'pause_circle_filled_sharp': Icons.pause_circle_filled_sharp, + 'pause_circle_filled_rounded': Icons.pause_circle_filled_rounded, + 'pause_circle_filled_outlined': Icons.pause_circle_filled_outlined, + 'pause_circle_outline': Icons.pause_circle_outline, + 'pause_circle_outline_sharp': Icons.pause_circle_outline_sharp, + 'pause_circle_outline_rounded': Icons.pause_circle_outline_rounded, + 'pause_circle_outline_outlined': Icons.pause_circle_outline_outlined, + 'pause_presentation': Icons.pause_presentation, + 'pause_presentation_sharp': Icons.pause_presentation_sharp, + 'pause_presentation_rounded': Icons.pause_presentation_rounded, + 'pause_presentation_outlined': Icons.pause_presentation_outlined, + 'payment': Icons.payment, + 'payment_sharp': Icons.payment_sharp, + 'payment_rounded': Icons.payment_rounded, + 'payment_outlined': Icons.payment_outlined, + 'payments': Icons.payments, + 'payments_sharp': Icons.payments_sharp, + 'payments_rounded': Icons.payments_rounded, + 'payments_outlined': Icons.payments_outlined, + 'pedal_bike': Icons.pedal_bike, + 'pedal_bike_sharp': Icons.pedal_bike_sharp, + 'pedal_bike_rounded': Icons.pedal_bike_rounded, + 'pedal_bike_outlined': Icons.pedal_bike_outlined, + 'pending': Icons.pending, + 'pending_sharp': Icons.pending_sharp, + 'pending_rounded': Icons.pending_rounded, + 'pending_outlined': Icons.pending_outlined, + 'pending_actions': Icons.pending_actions, + 'pending_actions_sharp': Icons.pending_actions_sharp, + 'pending_actions_rounded': Icons.pending_actions_rounded, + 'pending_actions_outlined': Icons.pending_actions_outlined, + 'people': Icons.people, + 'people_sharp': Icons.people_sharp, + 'people_rounded': Icons.people_rounded, + 'people_outlined': Icons.people_outlined, + 'people_alt': Icons.people_alt, + 'people_alt_sharp': Icons.people_alt_sharp, + 'people_alt_rounded': Icons.people_alt_rounded, + 'people_alt_outlined': Icons.people_alt_outlined, + 'people_outline': Icons.people_outline, + 'people_outline_sharp': Icons.people_outline_sharp, + 'people_outline_rounded': Icons.people_outline_rounded, + 'people_outline_outlined': Icons.people_outline_outlined, + 'perm_camera_mic': Icons.perm_camera_mic, + 'perm_camera_mic_sharp': Icons.perm_camera_mic_sharp, + 'perm_camera_mic_rounded': Icons.perm_camera_mic_rounded, + 'perm_camera_mic_outlined': Icons.perm_camera_mic_outlined, + 'perm_contact_cal': Icons.perm_contact_cal, + 'perm_contact_cal_sharp': Icons.perm_contact_cal_sharp, + 'perm_contact_cal_rounded': Icons.perm_contact_cal_rounded, + 'perm_contact_cal_outlined': Icons.perm_contact_cal_outlined, + 'perm_contact_calendar': Icons.perm_contact_calendar, + 'perm_contact_calendar_sharp': Icons.perm_contact_calendar_sharp, + 'perm_contact_calendar_rounded': Icons.perm_contact_calendar_rounded, + 'perm_contact_calendar_outlined': Icons.perm_contact_calendar_outlined, + 'perm_data_setting': Icons.perm_data_setting, + 'perm_data_setting_sharp': Icons.perm_data_setting_sharp, + 'perm_data_setting_rounded': Icons.perm_data_setting_rounded, + 'perm_data_setting_outlined': Icons.perm_data_setting_outlined, + 'perm_device_info': Icons.perm_device_info, + 'perm_device_info_sharp': Icons.perm_device_info_sharp, + 'perm_device_info_rounded': Icons.perm_device_info_rounded, + 'perm_device_info_outlined': Icons.perm_device_info_outlined, + 'perm_device_information': Icons.perm_device_information, + 'perm_device_information_sharp': Icons.perm_device_information_sharp, + 'perm_device_information_rounded': + Icons.perm_device_information_rounded, + 'perm_device_information_outlined': + Icons.perm_device_information_outlined, + 'perm_identity': Icons.perm_identity, + 'perm_identity_sharp': Icons.perm_identity_sharp, + 'perm_identity_rounded': Icons.perm_identity_rounded, + 'perm_identity_outlined': Icons.perm_identity_outlined, + 'perm_media': Icons.perm_media, + 'perm_media_sharp': Icons.perm_media_sharp, + 'perm_media_rounded': Icons.perm_media_rounded, + 'perm_media_outlined': Icons.perm_media_outlined, + 'perm_phone_msg': Icons.perm_phone_msg, + 'perm_phone_msg_sharp': Icons.perm_phone_msg_sharp, + 'perm_phone_msg_rounded': Icons.perm_phone_msg_rounded, + 'perm_phone_msg_outlined': Icons.perm_phone_msg_outlined, + 'perm_scan_wifi': Icons.perm_scan_wifi, + 'perm_scan_wifi_sharp': Icons.perm_scan_wifi_sharp, + 'perm_scan_wifi_rounded': Icons.perm_scan_wifi_rounded, + 'perm_scan_wifi_outlined': Icons.perm_scan_wifi_outlined, + 'person': Icons.person, + 'person_sharp': Icons.person_sharp, + 'person_rounded': Icons.person_rounded, + 'person_outlined': Icons.person_outlined, + 'person_add': Icons.person_add, + 'person_add_sharp': Icons.person_add_sharp, + 'person_add_rounded': Icons.person_add_rounded, + 'person_add_outlined': Icons.person_add_outlined, + 'person_add_alt': Icons.person_add_alt, + 'person_add_alt_sharp': Icons.person_add_alt_sharp, + 'person_add_alt_rounded': Icons.person_add_alt_rounded, + 'person_add_alt_outlined': Icons.person_add_alt_outlined, + 'person_add_alt_1': Icons.person_add_alt_1, + 'person_add_alt_1_sharp': Icons.person_add_alt_1_sharp, + 'person_add_alt_1_rounded': Icons.person_add_alt_1_rounded, + 'person_add_alt_1_outlined': Icons.person_add_alt_1_outlined, + 'person_add_disabled': Icons.person_add_disabled, + 'person_add_disabled_sharp': Icons.person_add_disabled_sharp, + 'person_add_disabled_rounded': Icons.person_add_disabled_rounded, + 'person_add_disabled_outlined': Icons.person_add_disabled_outlined, + 'person_off': Icons.person_off, + 'person_off_sharp': Icons.person_off_sharp, + 'person_off_rounded': Icons.person_off_rounded, + 'person_off_outlined': Icons.person_off_outlined, + 'person_outline': Icons.person_outline, + 'person_outline_sharp': Icons.person_outline_sharp, + 'person_outline_rounded': Icons.person_outline_rounded, + 'person_outline_outlined': Icons.person_outline_outlined, + 'person_pin': Icons.person_pin, + 'person_pin_sharp': Icons.person_pin_sharp, + 'person_pin_rounded': Icons.person_pin_rounded, + 'person_pin_outlined': Icons.person_pin_outlined, + 'person_pin_circle': Icons.person_pin_circle, + 'person_pin_circle_sharp': Icons.person_pin_circle_sharp, + 'person_pin_circle_rounded': Icons.person_pin_circle_rounded, + 'person_pin_circle_outlined': Icons.person_pin_circle_outlined, + 'person_remove': Icons.person_remove, + 'person_remove_sharp': Icons.person_remove_sharp, + 'person_remove_rounded': Icons.person_remove_rounded, + 'person_remove_outlined': Icons.person_remove_outlined, + 'person_remove_alt_1': Icons.person_remove_alt_1, + 'person_remove_alt_1_sharp': Icons.person_remove_alt_1_sharp, + 'person_remove_alt_1_rounded': Icons.person_remove_alt_1_rounded, + 'person_remove_alt_1_outlined': Icons.person_remove_alt_1_outlined, + 'person_search': Icons.person_search, + 'person_search_sharp': Icons.person_search_sharp, + 'person_search_rounded': Icons.person_search_rounded, + 'person_search_outlined': Icons.person_search_outlined, + 'personal_injury': Icons.personal_injury, + 'personal_injury_sharp': Icons.personal_injury_sharp, + 'personal_injury_rounded': Icons.personal_injury_rounded, + 'personal_injury_outlined': Icons.personal_injury_outlined, + 'personal_video': Icons.personal_video, + 'personal_video_sharp': Icons.personal_video_sharp, + 'personal_video_rounded': Icons.personal_video_rounded, + 'personal_video_outlined': Icons.personal_video_outlined, + 'pest_control': Icons.pest_control, + 'pest_control_sharp': Icons.pest_control_sharp, + 'pest_control_rounded': Icons.pest_control_rounded, + 'pest_control_outlined': Icons.pest_control_outlined, + 'pest_control_rodent': Icons.pest_control_rodent, + 'pest_control_rodent_sharp': Icons.pest_control_rodent_sharp, + 'pest_control_rodent_rounded': Icons.pest_control_rodent_rounded, + 'pest_control_rodent_outlined': Icons.pest_control_rodent_outlined, + 'pets': Icons.pets, + 'pets_sharp': Icons.pets_sharp, + 'pets_rounded': Icons.pets_rounded, + 'pets_outlined': Icons.pets_outlined, + 'phone': Icons.phone, + 'phone_sharp': Icons.phone_sharp, + 'phone_rounded': Icons.phone_rounded, + 'phone_outlined': Icons.phone_outlined, + 'phone_android': Icons.phone_android, + 'phone_android_sharp': Icons.phone_android_sharp, + 'phone_android_rounded': Icons.phone_android_rounded, + 'phone_android_outlined': Icons.phone_android_outlined, + 'phone_bluetooth_speaker': Icons.phone_bluetooth_speaker, + 'phone_bluetooth_speaker_sharp': Icons.phone_bluetooth_speaker_sharp, + 'phone_bluetooth_speaker_rounded': + Icons.phone_bluetooth_speaker_rounded, + 'phone_bluetooth_speaker_outlined': + Icons.phone_bluetooth_speaker_outlined, + 'phone_callback': Icons.phone_callback, + 'phone_callback_sharp': Icons.phone_callback_sharp, + 'phone_callback_rounded': Icons.phone_callback_rounded, + 'phone_callback_outlined': Icons.phone_callback_outlined, + 'phone_disabled': Icons.phone_disabled, + 'phone_disabled_sharp': Icons.phone_disabled_sharp, + 'phone_disabled_rounded': Icons.phone_disabled_rounded, + 'phone_disabled_outlined': Icons.phone_disabled_outlined, + 'phone_enabled': Icons.phone_enabled, + 'phone_enabled_sharp': Icons.phone_enabled_sharp, + 'phone_enabled_rounded': Icons.phone_enabled_rounded, + 'phone_enabled_outlined': Icons.phone_enabled_outlined, + 'phone_forwarded': Icons.phone_forwarded, + 'phone_forwarded_sharp': Icons.phone_forwarded_sharp, + 'phone_forwarded_rounded': Icons.phone_forwarded_rounded, + 'phone_forwarded_outlined': Icons.phone_forwarded_outlined, + 'phone_in_talk': Icons.phone_in_talk, + 'phone_in_talk_sharp': Icons.phone_in_talk_sharp, + 'phone_in_talk_rounded': Icons.phone_in_talk_rounded, + 'phone_in_talk_outlined': Icons.phone_in_talk_outlined, + 'phone_iphone': Icons.phone_iphone, + 'phone_iphone_sharp': Icons.phone_iphone_sharp, + 'phone_iphone_rounded': Icons.phone_iphone_rounded, + 'phone_iphone_outlined': Icons.phone_iphone_outlined, + 'phone_locked': Icons.phone_locked, + 'phone_locked_sharp': Icons.phone_locked_sharp, + 'phone_locked_rounded': Icons.phone_locked_rounded, + 'phone_locked_outlined': Icons.phone_locked_outlined, + 'phone_missed': Icons.phone_missed, + 'phone_missed_sharp': Icons.phone_missed_sharp, + 'phone_missed_rounded': Icons.phone_missed_rounded, + 'phone_missed_outlined': Icons.phone_missed_outlined, + 'phone_paused': Icons.phone_paused, + 'phone_paused_sharp': Icons.phone_paused_sharp, + 'phone_paused_rounded': Icons.phone_paused_rounded, + 'phone_paused_outlined': Icons.phone_paused_outlined, + 'phonelink': Icons.phonelink, + 'phonelink_sharp': Icons.phonelink_sharp, + 'phonelink_rounded': Icons.phonelink_rounded, + 'phonelink_outlined': Icons.phonelink_outlined, + 'phonelink_erase': Icons.phonelink_erase, + 'phonelink_erase_sharp': Icons.phonelink_erase_sharp, + 'phonelink_erase_rounded': Icons.phonelink_erase_rounded, + 'phonelink_erase_outlined': Icons.phonelink_erase_outlined, + 'phonelink_lock': Icons.phonelink_lock, + 'phonelink_lock_sharp': Icons.phonelink_lock_sharp, + 'phonelink_lock_rounded': Icons.phonelink_lock_rounded, + 'phonelink_lock_outlined': Icons.phonelink_lock_outlined, + 'phonelink_off': Icons.phonelink_off, + 'phonelink_off_sharp': Icons.phonelink_off_sharp, + 'phonelink_off_rounded': Icons.phonelink_off_rounded, + 'phonelink_off_outlined': Icons.phonelink_off_outlined, + 'phonelink_ring': Icons.phonelink_ring, + 'phonelink_ring_sharp': Icons.phonelink_ring_sharp, + 'phonelink_ring_rounded': Icons.phonelink_ring_rounded, + 'phonelink_ring_outlined': Icons.phonelink_ring_outlined, + 'phonelink_setup': Icons.phonelink_setup, + 'phonelink_setup_sharp': Icons.phonelink_setup_sharp, + 'phonelink_setup_rounded': Icons.phonelink_setup_rounded, + 'phonelink_setup_outlined': Icons.phonelink_setup_outlined, + 'photo': Icons.photo, + 'photo_sharp': Icons.photo_sharp, + 'photo_rounded': Icons.photo_rounded, + 'photo_outlined': Icons.photo_outlined, + 'photo_album': Icons.photo_album, + 'photo_album_sharp': Icons.photo_album_sharp, + 'photo_album_rounded': Icons.photo_album_rounded, + 'photo_album_outlined': Icons.photo_album_outlined, + 'photo_camera': Icons.photo_camera, + 'photo_camera_sharp': Icons.photo_camera_sharp, + 'photo_camera_rounded': Icons.photo_camera_rounded, + 'photo_camera_outlined': Icons.photo_camera_outlined, + 'photo_camera_back': Icons.photo_camera_back, + 'photo_camera_back_sharp': Icons.photo_camera_back_sharp, + 'photo_camera_back_rounded': Icons.photo_camera_back_rounded, + 'photo_camera_back_outlined': Icons.photo_camera_back_outlined, + 'photo_camera_front': Icons.photo_camera_front, + 'photo_camera_front_sharp': Icons.photo_camera_front_sharp, + 'photo_camera_front_rounded': Icons.photo_camera_front_rounded, + 'photo_camera_front_outlined': Icons.photo_camera_front_outlined, + 'photo_filter': Icons.photo_filter, + 'photo_filter_sharp': Icons.photo_filter_sharp, + 'photo_filter_rounded': Icons.photo_filter_rounded, + 'photo_filter_outlined': Icons.photo_filter_outlined, + 'photo_library': Icons.photo_library, + 'photo_library_sharp': Icons.photo_library_sharp, + 'photo_library_rounded': Icons.photo_library_rounded, + 'photo_library_outlined': Icons.photo_library_outlined, + 'photo_size_select_actual': Icons.photo_size_select_actual, + 'photo_size_select_actual_sharp': Icons.photo_size_select_actual_sharp, + 'photo_size_select_actual_rounded': + Icons.photo_size_select_actual_rounded, + 'photo_size_select_actual_outlined': + Icons.photo_size_select_actual_outlined, + 'photo_size_select_large': Icons.photo_size_select_large, + 'photo_size_select_large_sharp': Icons.photo_size_select_large_sharp, + 'photo_size_select_large_rounded': + Icons.photo_size_select_large_rounded, + 'photo_size_select_large_outlined': + Icons.photo_size_select_large_outlined, + 'photo_size_select_small': Icons.photo_size_select_small, + 'photo_size_select_small_sharp': Icons.photo_size_select_small_sharp, + 'photo_size_select_small_rounded': + Icons.photo_size_select_small_rounded, + 'photo_size_select_small_outlined': + Icons.photo_size_select_small_outlined, + 'piano': Icons.piano, + 'piano_sharp': Icons.piano_sharp, + 'piano_rounded': Icons.piano_rounded, + 'piano_outlined': Icons.piano_outlined, + 'piano_off': Icons.piano_off, + 'piano_off_sharp': Icons.piano_off_sharp, + 'piano_off_rounded': Icons.piano_off_rounded, + 'piano_off_outlined': Icons.piano_off_outlined, + 'picture_as_pdf': Icons.picture_as_pdf, + 'picture_as_pdf_sharp': Icons.picture_as_pdf_sharp, + 'picture_as_pdf_rounded': Icons.picture_as_pdf_rounded, + 'picture_as_pdf_outlined': Icons.picture_as_pdf_outlined, + 'picture_in_picture': Icons.picture_in_picture, + 'picture_in_picture_sharp': Icons.picture_in_picture_sharp, + 'picture_in_picture_rounded': Icons.picture_in_picture_rounded, + 'picture_in_picture_outlined': Icons.picture_in_picture_outlined, + 'picture_in_picture_alt': Icons.picture_in_picture_alt, + 'picture_in_picture_alt_sharp': Icons.picture_in_picture_alt_sharp, + 'picture_in_picture_alt_rounded': Icons.picture_in_picture_alt_rounded, + 'picture_in_picture_alt_outlined': + Icons.picture_in_picture_alt_outlined, + 'pie_chart': Icons.pie_chart, + 'pie_chart_sharp': Icons.pie_chart_sharp, + 'pie_chart_rounded': Icons.pie_chart_rounded, + 'pie_chart_outline': Icons.pie_chart_outline, + 'pie_chart_outline_sharp': Icons.pie_chart_outline_sharp, + 'pie_chart_outline_rounded': Icons.pie_chart_outline_rounded, + 'pie_chart_outline_outlined': Icons.pie_chart_outline_outlined, + 'pin': Icons.pin, + 'pin_sharp': Icons.pin_sharp, + 'pin_rounded': Icons.pin_rounded, + 'pin_outlined': Icons.pin_outlined, + 'pin_drop': Icons.pin_drop, + 'pin_drop_sharp': Icons.pin_drop_sharp, + 'pin_drop_rounded': Icons.pin_drop_rounded, + 'pin_drop_outlined': Icons.pin_drop_outlined, + 'pivot_table_chart': Icons.pivot_table_chart, + 'pivot_table_chart_sharp': Icons.pivot_table_chart_sharp, + 'pivot_table_chart_rounded': Icons.pivot_table_chart_rounded, + 'pivot_table_chart_outlined': Icons.pivot_table_chart_outlined, + 'place': Icons.place, + 'place_sharp': Icons.place_sharp, + 'place_rounded': Icons.place_rounded, + 'place_outlined': Icons.place_outlined, + 'plagiarism': Icons.plagiarism, + 'plagiarism_sharp': Icons.plagiarism_sharp, + 'plagiarism_rounded': Icons.plagiarism_rounded, + 'plagiarism_outlined': Icons.plagiarism_outlined, + 'play_arrow': Icons.play_arrow, + 'play_arrow_sharp': Icons.play_arrow_sharp, + 'play_arrow_rounded': Icons.play_arrow_rounded, + 'play_arrow_outlined': Icons.play_arrow_outlined, + 'play_circle': Icons.play_circle, + 'play_circle_sharp': Icons.play_circle_sharp, + 'play_circle_rounded': Icons.play_circle_rounded, + 'play_circle_outlined': Icons.play_circle_outlined, + 'play_circle_fill': Icons.play_circle_fill, + 'play_circle_fill_sharp': Icons.play_circle_fill_sharp, + 'play_circle_fill_rounded': Icons.play_circle_fill_rounded, + 'play_circle_fill_outlined': Icons.play_circle_fill_outlined, + 'play_circle_filled': Icons.play_circle_filled, + 'play_circle_filled_sharp': Icons.play_circle_filled_sharp, + 'play_circle_filled_rounded': Icons.play_circle_filled_rounded, + 'play_circle_filled_outlined': Icons.play_circle_filled_outlined, + 'play_circle_outline': Icons.play_circle_outline, + 'play_circle_outline_sharp': Icons.play_circle_outline_sharp, + 'play_circle_outline_rounded': Icons.play_circle_outline_rounded, + 'play_circle_outline_outlined': Icons.play_circle_outline_outlined, + 'play_disabled': Icons.play_disabled, + 'play_disabled_sharp': Icons.play_disabled_sharp, + 'play_disabled_rounded': Icons.play_disabled_rounded, + 'play_disabled_outlined': Icons.play_disabled_outlined, + 'play_for_work': Icons.play_for_work, + 'play_for_work_sharp': Icons.play_for_work_sharp, + 'play_for_work_rounded': Icons.play_for_work_rounded, + 'play_for_work_outlined': Icons.play_for_work_outlined, + 'play_lesson': Icons.play_lesson, + 'play_lesson_sharp': Icons.play_lesson_sharp, + 'play_lesson_rounded': Icons.play_lesson_rounded, + 'play_lesson_outlined': Icons.play_lesson_outlined, + 'playlist_add': Icons.playlist_add, + 'playlist_add_sharp': Icons.playlist_add_sharp, + 'playlist_add_rounded': Icons.playlist_add_rounded, + 'playlist_add_outlined': Icons.playlist_add_outlined, + 'playlist_add_check': Icons.playlist_add_check, + 'playlist_add_check_sharp': Icons.playlist_add_check_sharp, + 'playlist_add_check_rounded': Icons.playlist_add_check_rounded, + 'playlist_add_check_outlined': Icons.playlist_add_check_outlined, + 'playlist_play': Icons.playlist_play, + 'playlist_play_sharp': Icons.playlist_play_sharp, + 'playlist_play_rounded': Icons.playlist_play_rounded, + 'playlist_play_outlined': Icons.playlist_play_outlined, + 'plumbing': Icons.plumbing, + 'plumbing_sharp': Icons.plumbing_sharp, + 'plumbing_rounded': Icons.plumbing_rounded, + 'plumbing_outlined': Icons.plumbing_outlined, + 'plus_one': Icons.plus_one, + 'plus_one_sharp': Icons.plus_one_sharp, + 'plus_one_rounded': Icons.plus_one_rounded, + 'plus_one_outlined': Icons.plus_one_outlined, + 'podcasts': Icons.podcasts, + 'podcasts_sharp': Icons.podcasts_sharp, + 'podcasts_rounded': Icons.podcasts_rounded, + 'podcasts_outlined': Icons.podcasts_outlined, + 'point_of_sale': Icons.point_of_sale, + 'point_of_sale_sharp': Icons.point_of_sale_sharp, + 'point_of_sale_rounded': Icons.point_of_sale_rounded, + 'point_of_sale_outlined': Icons.point_of_sale_outlined, + 'policy': Icons.policy, + 'policy_sharp': Icons.policy_sharp, + 'policy_rounded': Icons.policy_rounded, + 'policy_outlined': Icons.policy_outlined, + 'poll': Icons.poll, + 'poll_sharp': Icons.poll_sharp, + 'poll_rounded': Icons.poll_rounded, + 'poll_outlined': Icons.poll_outlined, + 'polymer': Icons.polymer, + 'polymer_sharp': Icons.polymer_sharp, + 'polymer_rounded': Icons.polymer_rounded, + 'polymer_outlined': Icons.polymer_outlined, + 'pool': Icons.pool, + 'pool_sharp': Icons.pool_sharp, + 'pool_rounded': Icons.pool_rounded, + 'pool_outlined': Icons.pool_outlined, + 'portable_wifi_off': Icons.portable_wifi_off, + 'portable_wifi_off_sharp': Icons.portable_wifi_off_sharp, + 'portable_wifi_off_rounded': Icons.portable_wifi_off_rounded, + 'portable_wifi_off_outlined': Icons.portable_wifi_off_outlined, + 'portrait': Icons.portrait, + 'portrait_sharp': Icons.portrait_sharp, + 'portrait_rounded': Icons.portrait_rounded, + 'portrait_outlined': Icons.portrait_outlined, + 'post_add': Icons.post_add, + 'post_add_sharp': Icons.post_add_sharp, + 'post_add_rounded': Icons.post_add_rounded, + 'post_add_outlined': Icons.post_add_outlined, + 'power': Icons.power, + 'power_sharp': Icons.power_sharp, + 'power_rounded': Icons.power_rounded, + 'power_outlined': Icons.power_outlined, + 'power_input': Icons.power_input, + 'power_input_sharp': Icons.power_input_sharp, + 'power_input_rounded': Icons.power_input_rounded, + 'power_input_outlined': Icons.power_input_outlined, + 'power_off': Icons.power_off, + 'power_off_sharp': Icons.power_off_sharp, + 'power_off_rounded': Icons.power_off_rounded, + 'power_off_outlined': Icons.power_off_outlined, + 'power_settings_new': Icons.power_settings_new, + 'power_settings_new_sharp': Icons.power_settings_new_sharp, + 'power_settings_new_rounded': Icons.power_settings_new_rounded, + 'power_settings_new_outlined': Icons.power_settings_new_outlined, + 'precision_manufacturing': Icons.precision_manufacturing, + 'precision_manufacturing_sharp': Icons.precision_manufacturing_sharp, + 'precision_manufacturing_rounded': + Icons.precision_manufacturing_rounded, + 'precision_manufacturing_outlined': + Icons.precision_manufacturing_outlined, + 'pregnant_woman': Icons.pregnant_woman, + 'pregnant_woman_sharp': Icons.pregnant_woman_sharp, + 'pregnant_woman_rounded': Icons.pregnant_woman_rounded, + 'pregnant_woman_outlined': Icons.pregnant_woman_outlined, + 'present_to_all': Icons.present_to_all, + 'present_to_all_sharp': Icons.present_to_all_sharp, + 'present_to_all_rounded': Icons.present_to_all_rounded, + 'present_to_all_outlined': Icons.present_to_all_outlined, + 'preview': Icons.preview, + 'preview_sharp': Icons.preview_sharp, + 'preview_rounded': Icons.preview_rounded, + 'preview_outlined': Icons.preview_outlined, + 'price_change': Icons.price_change, + 'price_change_sharp': Icons.price_change_sharp, + 'price_change_rounded': Icons.price_change_rounded, + 'price_change_outlined': Icons.price_change_outlined, + 'price_check': Icons.price_check, + 'price_check_sharp': Icons.price_check_sharp, + 'price_check_rounded': Icons.price_check_rounded, + 'price_check_outlined': Icons.price_check_outlined, + 'print': Icons.print, + 'print_sharp': Icons.print_sharp, + 'print_rounded': Icons.print_rounded, + 'print_outlined': Icons.print_outlined, + 'print_disabled': Icons.print_disabled, + 'print_disabled_sharp': Icons.print_disabled_sharp, + 'print_disabled_rounded': Icons.print_disabled_rounded, + 'print_disabled_outlined': Icons.print_disabled_outlined, + 'priority_high': Icons.priority_high, + 'priority_high_sharp': Icons.priority_high_sharp, + 'priority_high_rounded': Icons.priority_high_rounded, + 'priority_high_outlined': Icons.priority_high_outlined, + 'privacy_tip': Icons.privacy_tip, + 'privacy_tip_sharp': Icons.privacy_tip_sharp, + 'privacy_tip_rounded': Icons.privacy_tip_rounded, + 'privacy_tip_outlined': Icons.privacy_tip_outlined, + 'production_quantity_limits': Icons.production_quantity_limits, + 'production_quantity_limits_sharp': + Icons.production_quantity_limits_sharp, + 'production_quantity_limits_rounded': + Icons.production_quantity_limits_rounded, + 'production_quantity_limits_outlined': + Icons.production_quantity_limits_outlined, + 'psychology': Icons.psychology, + 'psychology_sharp': Icons.psychology_sharp, + 'psychology_rounded': Icons.psychology_rounded, + 'psychology_outlined': Icons.psychology_outlined, + 'public': Icons.public, + 'public_sharp': Icons.public_sharp, + 'public_rounded': Icons.public_rounded, + 'public_outlined': Icons.public_outlined, + 'public_off': Icons.public_off, + 'public_off_sharp': Icons.public_off_sharp, + 'public_off_rounded': Icons.public_off_rounded, + 'public_off_outlined': Icons.public_off_outlined, + 'publish': Icons.publish, + 'publish_sharp': Icons.publish_sharp, + 'publish_rounded': Icons.publish_rounded, + 'publish_outlined': Icons.publish_outlined, + 'published_with_changes': Icons.published_with_changes, + 'published_with_changes_sharp': Icons.published_with_changes_sharp, + 'published_with_changes_rounded': Icons.published_with_changes_rounded, + 'published_with_changes_outlined': + Icons.published_with_changes_outlined, + 'push_pin': Icons.push_pin, + 'push_pin_sharp': Icons.push_pin_sharp, + 'push_pin_rounded': Icons.push_pin_rounded, + 'push_pin_outlined': Icons.push_pin_outlined, + 'qr_code': Icons.qr_code, + 'qr_code_sharp': Icons.qr_code_sharp, + 'qr_code_rounded': Icons.qr_code_rounded, + 'qr_code_outlined': Icons.qr_code_outlined, + 'qr_code_2': Icons.qr_code_2, + 'qr_code_2_sharp': Icons.qr_code_2_sharp, + 'qr_code_2_rounded': Icons.qr_code_2_rounded, + 'qr_code_2_outlined': Icons.qr_code_2_outlined, + 'qr_code_scanner': Icons.qr_code_scanner, + 'qr_code_scanner_sharp': Icons.qr_code_scanner_sharp, + 'qr_code_scanner_rounded': Icons.qr_code_scanner_rounded, + 'qr_code_scanner_outlined': Icons.qr_code_scanner_outlined, + 'query_builder': Icons.query_builder, + 'query_builder_sharp': Icons.query_builder_sharp, + 'query_builder_rounded': Icons.query_builder_rounded, + 'query_builder_outlined': Icons.query_builder_outlined, + 'query_stats': Icons.query_stats, + 'query_stats_sharp': Icons.query_stats_sharp, + 'query_stats_rounded': Icons.query_stats_rounded, + 'query_stats_outlined': Icons.query_stats_outlined, + 'question_answer': Icons.question_answer, + 'question_answer_sharp': Icons.question_answer_sharp, + 'question_answer_rounded': Icons.question_answer_rounded, + 'question_answer_outlined': Icons.question_answer_outlined, + 'queue': Icons.queue, + 'queue_sharp': Icons.queue_sharp, + 'queue_rounded': Icons.queue_rounded, + 'queue_outlined': Icons.queue_outlined, + 'queue_music': Icons.queue_music, + 'queue_music_sharp': Icons.queue_music_sharp, + 'queue_music_rounded': Icons.queue_music_rounded, + 'queue_music_outlined': Icons.queue_music_outlined, + 'queue_play_next': Icons.queue_play_next, + 'queue_play_next_sharp': Icons.queue_play_next_sharp, + 'queue_play_next_rounded': Icons.queue_play_next_rounded, + 'queue_play_next_outlined': Icons.queue_play_next_outlined, + 'quick_contacts_dialer': Icons.quick_contacts_dialer, + 'quick_contacts_dialer_sharp': Icons.quick_contacts_dialer_sharp, + 'quick_contacts_dialer_rounded': Icons.quick_contacts_dialer_rounded, + 'quick_contacts_dialer_outlined': Icons.quick_contacts_dialer_outlined, + 'quick_contacts_mail': Icons.quick_contacts_mail, + 'quick_contacts_mail_sharp': Icons.quick_contacts_mail_sharp, + 'quick_contacts_mail_rounded': Icons.quick_contacts_mail_rounded, + 'quick_contacts_mail_outlined': Icons.quick_contacts_mail_outlined, + 'quickreply': Icons.quickreply, + 'quickreply_sharp': Icons.quickreply_sharp, + 'quickreply_rounded': Icons.quickreply_rounded, + 'quickreply_outlined': Icons.quickreply_outlined, + 'quiz': Icons.quiz, + 'quiz_sharp': Icons.quiz_sharp, + 'quiz_rounded': Icons.quiz_rounded, + 'quiz_outlined': Icons.quiz_outlined, + 'r_mobiledata': Icons.r_mobiledata, + 'r_mobiledata_sharp': Icons.r_mobiledata_sharp, + 'r_mobiledata_rounded': Icons.r_mobiledata_rounded, + 'r_mobiledata_outlined': Icons.r_mobiledata_outlined, + 'radar': Icons.radar, + 'radar_sharp': Icons.radar_sharp, + 'radar_rounded': Icons.radar_rounded, + 'radar_outlined': Icons.radar_outlined, + 'radio': Icons.radio, + 'radio_sharp': Icons.radio_sharp, + 'radio_rounded': Icons.radio_rounded, + 'radio_outlined': Icons.radio_outlined, + 'radio_button_checked': Icons.radio_button_checked, + 'radio_button_checked_sharp': Icons.radio_button_checked_sharp, + 'radio_button_checked_rounded': Icons.radio_button_checked_rounded, + 'radio_button_checked_outlined': Icons.radio_button_checked_outlined, + 'radio_button_off': Icons.radio_button_off, + 'radio_button_off_sharp': Icons.radio_button_off_sharp, + 'radio_button_off_rounded': Icons.radio_button_off_rounded, + 'radio_button_off_outlined': Icons.radio_button_off_outlined, + 'radio_button_on': Icons.radio_button_on, + 'radio_button_on_sharp': Icons.radio_button_on_sharp, + 'radio_button_on_rounded': Icons.radio_button_on_rounded, + 'radio_button_on_outlined': Icons.radio_button_on_outlined, + 'radio_button_unchecked': Icons.radio_button_unchecked, + 'radio_button_unchecked_sharp': Icons.radio_button_unchecked_sharp, + 'radio_button_unchecked_rounded': Icons.radio_button_unchecked_rounded, + 'radio_button_unchecked_outlined': + Icons.radio_button_unchecked_outlined, + 'railway_alert': Icons.railway_alert, + 'railway_alert_sharp': Icons.railway_alert_sharp, + 'railway_alert_rounded': Icons.railway_alert_rounded, + 'railway_alert_outlined': Icons.railway_alert_outlined, + 'ramen_dining': Icons.ramen_dining, + 'ramen_dining_sharp': Icons.ramen_dining_sharp, + 'ramen_dining_rounded': Icons.ramen_dining_rounded, + 'ramen_dining_outlined': Icons.ramen_dining_outlined, + 'rate_review': Icons.rate_review, + 'rate_review_sharp': Icons.rate_review_sharp, + 'rate_review_rounded': Icons.rate_review_rounded, + 'rate_review_outlined': Icons.rate_review_outlined, + 'raw_off': Icons.raw_off, + 'raw_off_sharp': Icons.raw_off_sharp, + 'raw_off_rounded': Icons.raw_off_rounded, + 'raw_off_outlined': Icons.raw_off_outlined, + 'raw_on': Icons.raw_on, + 'raw_on_sharp': Icons.raw_on_sharp, + 'raw_on_rounded': Icons.raw_on_rounded, + 'raw_on_outlined': Icons.raw_on_outlined, + 'read_more': Icons.read_more, + 'read_more_sharp': Icons.read_more_sharp, + 'read_more_rounded': Icons.read_more_rounded, + 'read_more_outlined': Icons.read_more_outlined, + 'real_estate_agent': Icons.real_estate_agent, + 'real_estate_agent_sharp': Icons.real_estate_agent_sharp, + 'real_estate_agent_rounded': Icons.real_estate_agent_rounded, + 'real_estate_agent_outlined': Icons.real_estate_agent_outlined, + 'receipt': Icons.receipt, + 'receipt_sharp': Icons.receipt_sharp, + 'receipt_rounded': Icons.receipt_rounded, + 'receipt_outlined': Icons.receipt_outlined, + 'receipt_long': Icons.receipt_long, + 'receipt_long_sharp': Icons.receipt_long_sharp, + 'receipt_long_rounded': Icons.receipt_long_rounded, + 'receipt_long_outlined': Icons.receipt_long_outlined, + 'recent_actors': Icons.recent_actors, + 'recent_actors_sharp': Icons.recent_actors_sharp, + 'recent_actors_rounded': Icons.recent_actors_rounded, + 'recent_actors_outlined': Icons.recent_actors_outlined, + 'recommend': Icons.recommend, + 'recommend_sharp': Icons.recommend_sharp, + 'recommend_rounded': Icons.recommend_rounded, + 'recommend_outlined': Icons.recommend_outlined, + 'record_voice_over': Icons.record_voice_over, + 'record_voice_over_sharp': Icons.record_voice_over_sharp, + 'record_voice_over_rounded': Icons.record_voice_over_rounded, + 'record_voice_over_outlined': Icons.record_voice_over_outlined, + 'redeem': Icons.redeem, + 'redeem_sharp': Icons.redeem_sharp, + 'redeem_rounded': Icons.redeem_rounded, + 'redeem_outlined': Icons.redeem_outlined, + 'redo': Icons.redo, + 'redo_sharp': Icons.redo_sharp, + 'redo_rounded': Icons.redo_rounded, + 'redo_outlined': Icons.redo_outlined, + 'reduce_capacity': Icons.reduce_capacity, + 'reduce_capacity_sharp': Icons.reduce_capacity_sharp, + 'reduce_capacity_rounded': Icons.reduce_capacity_rounded, + 'reduce_capacity_outlined': Icons.reduce_capacity_outlined, + 'refresh': Icons.refresh, + 'refresh_sharp': Icons.refresh_sharp, + 'refresh_rounded': Icons.refresh_rounded, + 'refresh_outlined': Icons.refresh_outlined, + 'remember_me': Icons.remember_me, + 'remember_me_sharp': Icons.remember_me_sharp, + 'remember_me_rounded': Icons.remember_me_rounded, + 'remember_me_outlined': Icons.remember_me_outlined, + 'remove': Icons.remove, + 'remove_sharp': Icons.remove_sharp, + 'remove_rounded': Icons.remove_rounded, + 'remove_outlined': Icons.remove_outlined, + 'remove_circle': Icons.remove_circle, + 'remove_circle_sharp': Icons.remove_circle_sharp, + 'remove_circle_rounded': Icons.remove_circle_rounded, + 'remove_circle_outlined': Icons.remove_circle_outlined, + 'remove_circle_outline': Icons.remove_circle_outline, + 'remove_circle_outline_sharp': Icons.remove_circle_outline_sharp, + 'remove_circle_outline_rounded': Icons.remove_circle_outline_rounded, + 'remove_circle_outline_outlined': Icons.remove_circle_outline_outlined, + 'remove_done': Icons.remove_done, + 'remove_done_sharp': Icons.remove_done_sharp, + 'remove_done_rounded': Icons.remove_done_rounded, + 'remove_done_outlined': Icons.remove_done_outlined, + 'remove_from_queue': Icons.remove_from_queue, + 'remove_from_queue_sharp': Icons.remove_from_queue_sharp, + 'remove_from_queue_rounded': Icons.remove_from_queue_rounded, + 'remove_from_queue_outlined': Icons.remove_from_queue_outlined, + 'remove_moderator': Icons.remove_moderator, + 'remove_moderator_sharp': Icons.remove_moderator_sharp, + 'remove_moderator_rounded': Icons.remove_moderator_rounded, + 'remove_moderator_outlined': Icons.remove_moderator_outlined, + 'remove_red_eye': Icons.remove_red_eye, + 'remove_red_eye_sharp': Icons.remove_red_eye_sharp, + 'remove_red_eye_rounded': Icons.remove_red_eye_rounded, + 'remove_red_eye_outlined': Icons.remove_red_eye_outlined, + 'remove_shopping_cart': Icons.remove_shopping_cart, + 'remove_shopping_cart_sharp': Icons.remove_shopping_cart_sharp, + 'remove_shopping_cart_rounded': Icons.remove_shopping_cart_rounded, + 'remove_shopping_cart_outlined': Icons.remove_shopping_cart_outlined, + 'reorder': Icons.reorder, + 'reorder_sharp': Icons.reorder_sharp, + 'reorder_rounded': Icons.reorder_rounded, + 'reorder_outlined': Icons.reorder_outlined, + 'repeat': Icons.repeat, + 'repeat_sharp': Icons.repeat_sharp, + 'repeat_rounded': Icons.repeat_rounded, + 'repeat_outlined': Icons.repeat_outlined, + 'repeat_on': Icons.repeat_on, + 'repeat_on_sharp': Icons.repeat_on_sharp, + 'repeat_on_rounded': Icons.repeat_on_rounded, + 'repeat_on_outlined': Icons.repeat_on_outlined, + 'repeat_one': Icons.repeat_one, + 'repeat_one_sharp': Icons.repeat_one_sharp, + 'repeat_one_rounded': Icons.repeat_one_rounded, + 'repeat_one_outlined': Icons.repeat_one_outlined, + 'repeat_one_on': Icons.repeat_one_on, + 'repeat_one_on_sharp': Icons.repeat_one_on_sharp, + 'repeat_one_on_rounded': Icons.repeat_one_on_rounded, + 'repeat_one_on_outlined': Icons.repeat_one_on_outlined, + 'replay': Icons.replay, + 'replay_sharp': Icons.replay_sharp, + 'replay_rounded': Icons.replay_rounded, + 'replay_outlined': Icons.replay_outlined, + 'replay_10': Icons.replay_10, + 'replay_10_sharp': Icons.replay_10_sharp, + 'replay_10_rounded': Icons.replay_10_rounded, + 'replay_10_outlined': Icons.replay_10_outlined, + 'replay_30': Icons.replay_30, + 'replay_30_sharp': Icons.replay_30_sharp, + 'replay_30_rounded': Icons.replay_30_rounded, + 'replay_30_outlined': Icons.replay_30_outlined, + 'replay_5': Icons.replay_5, + 'replay_5_sharp': Icons.replay_5_sharp, + 'replay_5_rounded': Icons.replay_5_rounded, + 'replay_5_outlined': Icons.replay_5_outlined, + 'replay_circle_filled': Icons.replay_circle_filled, + 'replay_circle_filled_sharp': Icons.replay_circle_filled_sharp, + 'replay_circle_filled_rounded': Icons.replay_circle_filled_rounded, + 'replay_circle_filled_outlined': Icons.replay_circle_filled_outlined, + 'reply': Icons.reply, + 'reply_sharp': Icons.reply_sharp, + 'reply_rounded': Icons.reply_rounded, + 'reply_outlined': Icons.reply_outlined, + 'reply_all': Icons.reply_all, + 'reply_all_sharp': Icons.reply_all_sharp, + 'reply_all_rounded': Icons.reply_all_rounded, + 'reply_all_outlined': Icons.reply_all_outlined, + 'report': Icons.report, + 'report_sharp': Icons.report_sharp, + 'report_rounded': Icons.report_rounded, + 'report_outlined': Icons.report_outlined, + 'report_gmailerrorred': Icons.report_gmailerrorred, + 'report_gmailerrorred_sharp': Icons.report_gmailerrorred_sharp, + 'report_gmailerrorred_rounded': Icons.report_gmailerrorred_rounded, + 'report_gmailerrorred_outlined': Icons.report_gmailerrorred_outlined, + 'report_off': Icons.report_off, + 'report_off_sharp': Icons.report_off_sharp, + 'report_off_rounded': Icons.report_off_rounded, + 'report_off_outlined': Icons.report_off_outlined, + 'report_problem': Icons.report_problem, + 'report_problem_sharp': Icons.report_problem_sharp, + 'report_problem_rounded': Icons.report_problem_rounded, + 'report_problem_outlined': Icons.report_problem_outlined, + 'request_page': Icons.request_page, + 'request_page_sharp': Icons.request_page_sharp, + 'request_page_rounded': Icons.request_page_rounded, + 'request_page_outlined': Icons.request_page_outlined, + 'request_quote': Icons.request_quote, + 'request_quote_sharp': Icons.request_quote_sharp, + 'request_quote_rounded': Icons.request_quote_rounded, + 'request_quote_outlined': Icons.request_quote_outlined, + 'reset_tv': Icons.reset_tv, + 'reset_tv_sharp': Icons.reset_tv_sharp, + 'reset_tv_rounded': Icons.reset_tv_rounded, + 'reset_tv_outlined': Icons.reset_tv_outlined, + 'restart_alt': Icons.restart_alt, + 'restart_alt_sharp': Icons.restart_alt_sharp, + 'restart_alt_rounded': Icons.restart_alt_rounded, + 'restart_alt_outlined': Icons.restart_alt_outlined, + 'restaurant': Icons.restaurant, + 'restaurant_sharp': Icons.restaurant_sharp, + 'restaurant_rounded': Icons.restaurant_rounded, + 'restaurant_outlined': Icons.restaurant_outlined, + 'restaurant_menu': Icons.restaurant_menu, + 'restaurant_menu_sharp': Icons.restaurant_menu_sharp, + 'restaurant_menu_rounded': Icons.restaurant_menu_rounded, + 'restaurant_menu_outlined': Icons.restaurant_menu_outlined, + 'restore': Icons.restore, + 'restore_sharp': Icons.restore_sharp, + 'restore_rounded': Icons.restore_rounded, + 'restore_outlined': Icons.restore_outlined, + 'restore_from_trash': Icons.restore_from_trash, + 'restore_from_trash_sharp': Icons.restore_from_trash_sharp, + 'restore_from_trash_rounded': Icons.restore_from_trash_rounded, + 'restore_from_trash_outlined': Icons.restore_from_trash_outlined, + 'restore_page': Icons.restore_page, + 'restore_page_sharp': Icons.restore_page_sharp, + 'restore_page_rounded': Icons.restore_page_rounded, + 'restore_page_outlined': Icons.restore_page_outlined, + 'reviews': Icons.reviews, + 'reviews_sharp': Icons.reviews_sharp, + 'reviews_rounded': Icons.reviews_rounded, + 'reviews_outlined': Icons.reviews_outlined, + 'rice_bowl': Icons.rice_bowl, + 'rice_bowl_sharp': Icons.rice_bowl_sharp, + 'rice_bowl_rounded': Icons.rice_bowl_rounded, + 'rice_bowl_outlined': Icons.rice_bowl_outlined, + 'ring_volume': Icons.ring_volume, + 'ring_volume_sharp': Icons.ring_volume_sharp, + 'ring_volume_rounded': Icons.ring_volume_rounded, + 'ring_volume_outlined': Icons.ring_volume_outlined, + 'roofing': Icons.roofing, + 'roofing_sharp': Icons.roofing_sharp, + 'roofing_rounded': Icons.roofing_rounded, + 'roofing_outlined': Icons.roofing_outlined, + 'room': Icons.room, + 'room_sharp': Icons.room_sharp, + 'room_rounded': Icons.room_rounded, + 'room_outlined': Icons.room_outlined, + 'room_preferences': Icons.room_preferences, + 'room_preferences_sharp': Icons.room_preferences_sharp, + 'room_preferences_rounded': Icons.room_preferences_rounded, + 'room_preferences_outlined': Icons.room_preferences_outlined, + 'room_service': Icons.room_service, + 'room_service_sharp': Icons.room_service_sharp, + 'room_service_rounded': Icons.room_service_rounded, + 'room_service_outlined': Icons.room_service_outlined, + 'rotate_90_degrees_ccw': Icons.rotate_90_degrees_ccw, + 'rotate_90_degrees_ccw_sharp': Icons.rotate_90_degrees_ccw_sharp, + 'rotate_90_degrees_ccw_rounded': Icons.rotate_90_degrees_ccw_rounded, + 'rotate_90_degrees_ccw_outlined': Icons.rotate_90_degrees_ccw_outlined, + 'rotate_left': Icons.rotate_left, + 'rotate_left_sharp': Icons.rotate_left_sharp, + 'rotate_left_rounded': Icons.rotate_left_rounded, + 'rotate_left_outlined': Icons.rotate_left_outlined, + 'rotate_right': Icons.rotate_right, + 'rotate_right_sharp': Icons.rotate_right_sharp, + 'rotate_right_rounded': Icons.rotate_right_rounded, + 'rotate_right_outlined': Icons.rotate_right_outlined, + 'rounded_corner': Icons.rounded_corner, + 'rounded_corner_sharp': Icons.rounded_corner_sharp, + 'rounded_corner_rounded': Icons.rounded_corner_rounded, + 'rounded_corner_outlined': Icons.rounded_corner_outlined, + 'router': Icons.router, + 'router_sharp': Icons.router_sharp, + 'router_rounded': Icons.router_rounded, + 'router_outlined': Icons.router_outlined, + 'rowing': Icons.rowing, + 'rowing_sharp': Icons.rowing_sharp, + 'rowing_rounded': Icons.rowing_rounded, + 'rowing_outlined': Icons.rowing_outlined, + 'rss_feed': Icons.rss_feed, + 'rss_feed_sharp': Icons.rss_feed_sharp, + 'rss_feed_rounded': Icons.rss_feed_rounded, + 'rss_feed_outlined': Icons.rss_feed_outlined, + 'rsvp': Icons.rsvp, + 'rsvp_sharp': Icons.rsvp_sharp, + 'rsvp_rounded': Icons.rsvp_rounded, + 'rsvp_outlined': Icons.rsvp_outlined, + 'rtt': Icons.rtt, + 'rtt_sharp': Icons.rtt_sharp, + 'rtt_rounded': Icons.rtt_rounded, + 'rtt_outlined': Icons.rtt_outlined, + 'rule': Icons.rule, + 'rule_sharp': Icons.rule_sharp, + 'rule_rounded': Icons.rule_rounded, + 'rule_outlined': Icons.rule_outlined, + 'rule_folder': Icons.rule_folder, + 'rule_folder_sharp': Icons.rule_folder_sharp, + 'rule_folder_rounded': Icons.rule_folder_rounded, + 'rule_folder_outlined': Icons.rule_folder_outlined, + 'run_circle': Icons.run_circle, + 'run_circle_sharp': Icons.run_circle_sharp, + 'run_circle_rounded': Icons.run_circle_rounded, + 'run_circle_outlined': Icons.run_circle_outlined, + 'running_with_errors': Icons.running_with_errors, + 'running_with_errors_sharp': Icons.running_with_errors_sharp, + 'running_with_errors_rounded': Icons.running_with_errors_rounded, + 'running_with_errors_outlined': Icons.running_with_errors_outlined, + 'rv_hookup': Icons.rv_hookup, + 'rv_hookup_sharp': Icons.rv_hookup_sharp, + 'rv_hookup_rounded': Icons.rv_hookup_rounded, + 'rv_hookup_outlined': Icons.rv_hookup_outlined, + 'safety_divider': Icons.safety_divider, + 'safety_divider_sharp': Icons.safety_divider_sharp, + 'safety_divider_rounded': Icons.safety_divider_rounded, + 'safety_divider_outlined': Icons.safety_divider_outlined, + 'sailing': Icons.sailing, + 'sailing_sharp': Icons.sailing_sharp, + 'sailing_rounded': Icons.sailing_rounded, + 'sailing_outlined': Icons.sailing_outlined, + 'sanitizer': Icons.sanitizer, + 'sanitizer_sharp': Icons.sanitizer_sharp, + 'sanitizer_rounded': Icons.sanitizer_rounded, + 'sanitizer_outlined': Icons.sanitizer_outlined, + 'satellite': Icons.satellite, + 'satellite_sharp': Icons.satellite_sharp, + 'satellite_rounded': Icons.satellite_rounded, + 'satellite_outlined': Icons.satellite_outlined, + 'save': Icons.save, + 'save_sharp': Icons.save_sharp, + 'save_rounded': Icons.save_rounded, + 'save_outlined': Icons.save_outlined, + 'save_alt': Icons.save_alt, + 'save_alt_sharp': Icons.save_alt_sharp, + 'save_alt_rounded': Icons.save_alt_rounded, + 'save_alt_outlined': Icons.save_alt_outlined, + 'saved_search': Icons.saved_search, + 'saved_search_sharp': Icons.saved_search_sharp, + 'saved_search_rounded': Icons.saved_search_rounded, + 'saved_search_outlined': Icons.saved_search_outlined, + 'savings': Icons.savings, + 'savings_sharp': Icons.savings_sharp, + 'savings_rounded': Icons.savings_rounded, + 'savings_outlined': Icons.savings_outlined, + 'scanner': Icons.scanner, + 'scanner_sharp': Icons.scanner_sharp, + 'scanner_rounded': Icons.scanner_rounded, + 'scanner_outlined': Icons.scanner_outlined, + 'scatter_plot': Icons.scatter_plot, + 'scatter_plot_sharp': Icons.scatter_plot_sharp, + 'scatter_plot_rounded': Icons.scatter_plot_rounded, + 'scatter_plot_outlined': Icons.scatter_plot_outlined, + 'schedule': Icons.schedule, + 'schedule_sharp': Icons.schedule_sharp, + 'schedule_rounded': Icons.schedule_rounded, + 'schedule_outlined': Icons.schedule_outlined, + 'schedule_send': Icons.schedule_send, + 'schedule_send_sharp': Icons.schedule_send_sharp, + 'schedule_send_rounded': Icons.schedule_send_rounded, + 'schedule_send_outlined': Icons.schedule_send_outlined, + 'schema': Icons.schema, + 'schema_sharp': Icons.schema_sharp, + 'schema_rounded': Icons.schema_rounded, + 'schema_outlined': Icons.schema_outlined, + 'school': Icons.school, + 'school_sharp': Icons.school_sharp, + 'school_rounded': Icons.school_rounded, + 'school_outlined': Icons.school_outlined, + 'science': Icons.science, + 'science_sharp': Icons.science_sharp, + 'science_rounded': Icons.science_rounded, + 'science_outlined': Icons.science_outlined, + 'score': Icons.score, + 'score_sharp': Icons.score_sharp, + 'score_rounded': Icons.score_rounded, + 'score_outlined': Icons.score_outlined, + 'screen_lock_landscape': Icons.screen_lock_landscape, + 'screen_lock_landscape_sharp': Icons.screen_lock_landscape_sharp, + 'screen_lock_landscape_rounded': Icons.screen_lock_landscape_rounded, + 'screen_lock_landscape_outlined': Icons.screen_lock_landscape_outlined, + 'screen_lock_portrait': Icons.screen_lock_portrait, + 'screen_lock_portrait_sharp': Icons.screen_lock_portrait_sharp, + 'screen_lock_portrait_rounded': Icons.screen_lock_portrait_rounded, + 'screen_lock_portrait_outlined': Icons.screen_lock_portrait_outlined, + 'screen_lock_rotation': Icons.screen_lock_rotation, + 'screen_lock_rotation_sharp': Icons.screen_lock_rotation_sharp, + 'screen_lock_rotation_rounded': Icons.screen_lock_rotation_rounded, + 'screen_lock_rotation_outlined': Icons.screen_lock_rotation_outlined, + 'screen_rotation': Icons.screen_rotation, + 'screen_rotation_sharp': Icons.screen_rotation_sharp, + 'screen_rotation_rounded': Icons.screen_rotation_rounded, + 'screen_rotation_outlined': Icons.screen_rotation_outlined, + 'screen_search_desktop': Icons.screen_search_desktop, + 'screen_search_desktop_sharp': Icons.screen_search_desktop_sharp, + 'screen_search_desktop_rounded': Icons.screen_search_desktop_rounded, + 'screen_search_desktop_outlined': Icons.screen_search_desktop_outlined, + 'screen_share': Icons.screen_share, + 'screen_share_sharp': Icons.screen_share_sharp, + 'screen_share_rounded': Icons.screen_share_rounded, + 'screen_share_outlined': Icons.screen_share_outlined, + 'screenshot': Icons.screenshot, + 'screenshot_sharp': Icons.screenshot_sharp, + 'screenshot_rounded': Icons.screenshot_rounded, + 'screenshot_outlined': Icons.screenshot_outlined, + 'sd': Icons.sd, + 'sd_sharp': Icons.sd_sharp, + 'sd_rounded': Icons.sd_rounded, + 'sd_outlined': Icons.sd_outlined, + 'sd_card': Icons.sd_card, + 'sd_card_sharp': Icons.sd_card_sharp, + 'sd_card_rounded': Icons.sd_card_rounded, + 'sd_card_outlined': Icons.sd_card_outlined, + 'sd_card_alert': Icons.sd_card_alert, + 'sd_card_alert_sharp': Icons.sd_card_alert_sharp, + 'sd_card_alert_rounded': Icons.sd_card_alert_rounded, + 'sd_card_alert_outlined': Icons.sd_card_alert_outlined, + 'sd_storage': Icons.sd_storage, + 'sd_storage_sharp': Icons.sd_storage_sharp, + 'sd_storage_rounded': Icons.sd_storage_rounded, + 'sd_storage_outlined': Icons.sd_storage_outlined, + 'search': Icons.search, + 'search_sharp': Icons.search_sharp, + 'search_rounded': Icons.search_rounded, + 'search_outlined': Icons.search_outlined, + 'search_off': Icons.search_off, + 'search_off_sharp': Icons.search_off_sharp, + 'search_off_rounded': Icons.search_off_rounded, + 'search_off_outlined': Icons.search_off_outlined, + 'security': Icons.security, + 'security_sharp': Icons.security_sharp, + 'security_rounded': Icons.security_rounded, + 'security_outlined': Icons.security_outlined, + 'security_update': Icons.security_update, + 'security_update_sharp': Icons.security_update_sharp, + 'security_update_rounded': Icons.security_update_rounded, + 'security_update_outlined': Icons.security_update_outlined, + 'security_update_good': Icons.security_update_good, + 'security_update_good_sharp': Icons.security_update_good_sharp, + 'security_update_good_rounded': Icons.security_update_good_rounded, + 'security_update_good_outlined': Icons.security_update_good_outlined, + 'security_update_warning': Icons.security_update_warning, + 'security_update_warning_sharp': Icons.security_update_warning_sharp, + 'security_update_warning_rounded': + Icons.security_update_warning_rounded, + 'security_update_warning_outlined': + Icons.security_update_warning_outlined, + 'segment': Icons.segment, + 'segment_sharp': Icons.segment_sharp, + 'segment_rounded': Icons.segment_rounded, + 'segment_outlined': Icons.segment_outlined, + 'select_all': Icons.select_all, + 'select_all_sharp': Icons.select_all_sharp, + 'select_all_rounded': Icons.select_all_rounded, + 'select_all_outlined': Icons.select_all_outlined, + 'self_improvement': Icons.self_improvement, + 'self_improvement_sharp': Icons.self_improvement_sharp, + 'self_improvement_rounded': Icons.self_improvement_rounded, + 'self_improvement_outlined': Icons.self_improvement_outlined, + 'sell': Icons.sell, + 'sell_sharp': Icons.sell_sharp, + 'sell_rounded': Icons.sell_rounded, + 'sell_outlined': Icons.sell_outlined, + 'send': Icons.send, + 'send_sharp': Icons.send_sharp, + 'send_rounded': Icons.send_rounded, + 'send_outlined': Icons.send_outlined, + 'send_and_archive': Icons.send_and_archive, + 'send_and_archive_sharp': Icons.send_and_archive_sharp, + 'send_and_archive_rounded': Icons.send_and_archive_rounded, + 'send_and_archive_outlined': Icons.send_and_archive_outlined, + 'send_to_mobile': Icons.send_to_mobile, + 'send_to_mobile_sharp': Icons.send_to_mobile_sharp, + 'send_to_mobile_rounded': Icons.send_to_mobile_rounded, + 'send_to_mobile_outlined': Icons.send_to_mobile_outlined, + 'sensor_door': Icons.sensor_door, + 'sensor_door_sharp': Icons.sensor_door_sharp, + 'sensor_door_rounded': Icons.sensor_door_rounded, + 'sensor_door_outlined': Icons.sensor_door_outlined, + 'sensor_window': Icons.sensor_window, + 'sensor_window_sharp': Icons.sensor_window_sharp, + 'sensor_window_rounded': Icons.sensor_window_rounded, + 'sensor_window_outlined': Icons.sensor_window_outlined, + 'sensors': Icons.sensors, + 'sensors_sharp': Icons.sensors_sharp, + 'sensors_rounded': Icons.sensors_rounded, + 'sensors_outlined': Icons.sensors_outlined, + 'sensors_off': Icons.sensors_off, + 'sensors_off_sharp': Icons.sensors_off_sharp, + 'sensors_off_rounded': Icons.sensors_off_rounded, + 'sensors_off_outlined': Icons.sensors_off_outlined, + 'sentiment_dissatisfied': Icons.sentiment_dissatisfied, + 'sentiment_dissatisfied_sharp': Icons.sentiment_dissatisfied_sharp, + 'sentiment_dissatisfied_rounded': Icons.sentiment_dissatisfied_rounded, + 'sentiment_dissatisfied_outlined': + Icons.sentiment_dissatisfied_outlined, + 'sentiment_neutral': Icons.sentiment_neutral, + 'sentiment_neutral_sharp': Icons.sentiment_neutral_sharp, + 'sentiment_neutral_rounded': Icons.sentiment_neutral_rounded, + 'sentiment_neutral_outlined': Icons.sentiment_neutral_outlined, + 'sentiment_satisfied': Icons.sentiment_satisfied, + 'sentiment_satisfied_sharp': Icons.sentiment_satisfied_sharp, + 'sentiment_satisfied_rounded': Icons.sentiment_satisfied_rounded, + 'sentiment_satisfied_outlined': Icons.sentiment_satisfied_outlined, + 'sentiment_satisfied_alt': Icons.sentiment_satisfied_alt, + 'sentiment_satisfied_alt_sharp': Icons.sentiment_satisfied_alt_sharp, + 'sentiment_satisfied_alt_rounded': + Icons.sentiment_satisfied_alt_rounded, + 'sentiment_satisfied_alt_outlined': + Icons.sentiment_satisfied_alt_outlined, + 'sentiment_very_dissatisfied': Icons.sentiment_very_dissatisfied, + 'sentiment_very_dissatisfied_sharp': + Icons.sentiment_very_dissatisfied_sharp, + 'sentiment_very_dissatisfied_rounded': + Icons.sentiment_very_dissatisfied_rounded, + 'sentiment_very_dissatisfied_outlined': + Icons.sentiment_very_dissatisfied_outlined, + 'sentiment_very_satisfied': Icons.sentiment_very_satisfied, + 'sentiment_very_satisfied_sharp': Icons.sentiment_very_satisfied_sharp, + 'sentiment_very_satisfied_rounded': + Icons.sentiment_very_satisfied_rounded, + 'sentiment_very_satisfied_outlined': + Icons.sentiment_very_satisfied_outlined, + 'set_meal': Icons.set_meal, + 'set_meal_sharp': Icons.set_meal_sharp, + 'set_meal_rounded': Icons.set_meal_rounded, + 'set_meal_outlined': Icons.set_meal_outlined, + 'settings': Icons.settings, + 'settings_sharp': Icons.settings_sharp, + 'settings_rounded': Icons.settings_rounded, + 'settings_outlined': Icons.settings_outlined, + 'settings_accessibility': Icons.settings_accessibility, + 'settings_accessibility_sharp': Icons.settings_accessibility_sharp, + 'settings_accessibility_rounded': Icons.settings_accessibility_rounded, + 'settings_accessibility_outlined': + Icons.settings_accessibility_outlined, + 'settings_applications': Icons.settings_applications, + 'settings_applications_sharp': Icons.settings_applications_sharp, + 'settings_applications_rounded': Icons.settings_applications_rounded, + 'settings_applications_outlined': Icons.settings_applications_outlined, + 'settings_backup_restore': Icons.settings_backup_restore, + 'settings_backup_restore_sharp': Icons.settings_backup_restore_sharp, + 'settings_backup_restore_rounded': + Icons.settings_backup_restore_rounded, + 'settings_backup_restore_outlined': + Icons.settings_backup_restore_outlined, + 'settings_bluetooth': Icons.settings_bluetooth, + 'settings_bluetooth_sharp': Icons.settings_bluetooth_sharp, + 'settings_bluetooth_rounded': Icons.settings_bluetooth_rounded, + 'settings_bluetooth_outlined': Icons.settings_bluetooth_outlined, + 'settings_brightness': Icons.settings_brightness, + 'settings_brightness_sharp': Icons.settings_brightness_sharp, + 'settings_brightness_rounded': Icons.settings_brightness_rounded, + 'settings_brightness_outlined': Icons.settings_brightness_outlined, + 'settings_cell': Icons.settings_cell, + 'settings_cell_sharp': Icons.settings_cell_sharp, + 'settings_cell_rounded': Icons.settings_cell_rounded, + 'settings_cell_outlined': Icons.settings_cell_outlined, + 'settings_display': Icons.settings_display, + 'settings_display_sharp': Icons.settings_display_sharp, + 'settings_display_rounded': Icons.settings_display_rounded, + 'settings_display_outlined': Icons.settings_display_outlined, + 'settings_ethernet': Icons.settings_ethernet, + 'settings_ethernet_sharp': Icons.settings_ethernet_sharp, + 'settings_ethernet_rounded': Icons.settings_ethernet_rounded, + 'settings_ethernet_outlined': Icons.settings_ethernet_outlined, + 'settings_input_antenna': Icons.settings_input_antenna, + 'settings_input_antenna_sharp': Icons.settings_input_antenna_sharp, + 'settings_input_antenna_rounded': Icons.settings_input_antenna_rounded, + 'settings_input_antenna_outlined': + Icons.settings_input_antenna_outlined, + 'settings_input_component': Icons.settings_input_component, + 'settings_input_component_sharp': Icons.settings_input_component_sharp, + 'settings_input_component_rounded': + Icons.settings_input_component_rounded, + 'settings_input_component_outlined': + Icons.settings_input_component_outlined, + 'settings_input_composite': Icons.settings_input_composite, + 'settings_input_composite_sharp': Icons.settings_input_composite_sharp, + 'settings_input_composite_rounded': + Icons.settings_input_composite_rounded, + 'settings_input_composite_outlined': + Icons.settings_input_composite_outlined, + 'settings_input_hdmi': Icons.settings_input_hdmi, + 'settings_input_hdmi_sharp': Icons.settings_input_hdmi_sharp, + 'settings_input_hdmi_rounded': Icons.settings_input_hdmi_rounded, + 'settings_input_hdmi_outlined': Icons.settings_input_hdmi_outlined, + 'settings_input_svideo': Icons.settings_input_svideo, + 'settings_input_svideo_sharp': Icons.settings_input_svideo_sharp, + 'settings_input_svideo_rounded': Icons.settings_input_svideo_rounded, + 'settings_input_svideo_outlined': Icons.settings_input_svideo_outlined, + 'settings_overscan': Icons.settings_overscan, + 'settings_overscan_sharp': Icons.settings_overscan_sharp, + 'settings_overscan_rounded': Icons.settings_overscan_rounded, + 'settings_overscan_outlined': Icons.settings_overscan_outlined, + 'settings_phone': Icons.settings_phone, + 'settings_phone_sharp': Icons.settings_phone_sharp, + 'settings_phone_rounded': Icons.settings_phone_rounded, + 'settings_phone_outlined': Icons.settings_phone_outlined, + 'settings_power': Icons.settings_power, + 'settings_power_sharp': Icons.settings_power_sharp, + 'settings_power_rounded': Icons.settings_power_rounded, + 'settings_power_outlined': Icons.settings_power_outlined, + 'settings_remote': Icons.settings_remote, + 'settings_remote_sharp': Icons.settings_remote_sharp, + 'settings_remote_rounded': Icons.settings_remote_rounded, + 'settings_remote_outlined': Icons.settings_remote_outlined, + 'settings_suggest': Icons.settings_suggest, + 'settings_suggest_sharp': Icons.settings_suggest_sharp, + 'settings_suggest_rounded': Icons.settings_suggest_rounded, + 'settings_suggest_outlined': Icons.settings_suggest_outlined, + 'settings_system_daydream': Icons.settings_system_daydream, + 'settings_system_daydream_sharp': Icons.settings_system_daydream_sharp, + 'settings_system_daydream_rounded': + Icons.settings_system_daydream_rounded, + 'settings_system_daydream_outlined': + Icons.settings_system_daydream_outlined, + 'settings_voice': Icons.settings_voice, + 'settings_voice_sharp': Icons.settings_voice_sharp, + 'settings_voice_rounded': Icons.settings_voice_rounded, + 'settings_voice_outlined': Icons.settings_voice_outlined, + 'share': Icons.share, + 'share_sharp': Icons.share_sharp, + 'share_rounded': Icons.share_rounded, + 'share_outlined': Icons.share_outlined, + 'share_arrival_time': Icons.share_arrival_time, + 'share_arrival_time_sharp': Icons.share_arrival_time_sharp, + 'share_arrival_time_rounded': Icons.share_arrival_time_rounded, + 'share_arrival_time_outlined': Icons.share_arrival_time_outlined, + 'share_location': Icons.share_location, + 'share_location_sharp': Icons.share_location_sharp, + 'share_location_rounded': Icons.share_location_rounded, + 'share_location_outlined': Icons.share_location_outlined, + 'shield': Icons.shield, + 'shield_sharp': Icons.shield_sharp, + 'shield_rounded': Icons.shield_rounded, + 'shield_outlined': Icons.shield_outlined, + 'shop': Icons.shop, + 'shop_sharp': Icons.shop_sharp, + 'shop_rounded': Icons.shop_rounded, + 'shop_outlined': Icons.shop_outlined, + 'shop_2': Icons.shop_2, + 'shop_2_sharp': Icons.shop_2_sharp, + 'shop_2_rounded': Icons.shop_2_rounded, + 'shop_2_outlined': Icons.shop_2_outlined, + 'shop_two': Icons.shop_two, + 'shop_two_sharp': Icons.shop_two_sharp, + 'shop_two_rounded': Icons.shop_two_rounded, + 'shop_two_outlined': Icons.shop_two_outlined, + 'shopping_bag': Icons.shopping_bag, + 'shopping_bag_sharp': Icons.shopping_bag_sharp, + 'shopping_bag_rounded': Icons.shopping_bag_rounded, + 'shopping_bag_outlined': Icons.shopping_bag_outlined, + 'shopping_basket': Icons.shopping_basket, + 'shopping_basket_sharp': Icons.shopping_basket_sharp, + 'shopping_basket_rounded': Icons.shopping_basket_rounded, + 'shopping_basket_outlined': Icons.shopping_basket_outlined, + 'shopping_cart': Icons.shopping_cart, + 'shopping_cart_sharp': Icons.shopping_cart_sharp, + 'shopping_cart_rounded': Icons.shopping_cart_rounded, + 'shopping_cart_outlined': Icons.shopping_cart_outlined, + 'short_text': Icons.short_text, + 'short_text_sharp': Icons.short_text_sharp, + 'short_text_rounded': Icons.short_text_rounded, + 'short_text_outlined': Icons.short_text_outlined, + 'shortcut': Icons.shortcut, + 'shortcut_sharp': Icons.shortcut_sharp, + 'shortcut_rounded': Icons.shortcut_rounded, + 'shortcut_outlined': Icons.shortcut_outlined, + 'show_chart': Icons.show_chart, + 'show_chart_sharp': Icons.show_chart_sharp, + 'show_chart_rounded': Icons.show_chart_rounded, + 'show_chart_outlined': Icons.show_chart_outlined, + 'shower': Icons.shower, + 'shower_sharp': Icons.shower_sharp, + 'shower_rounded': Icons.shower_rounded, + 'shower_outlined': Icons.shower_outlined, + 'shuffle': Icons.shuffle, + 'shuffle_sharp': Icons.shuffle_sharp, + 'shuffle_rounded': Icons.shuffle_rounded, + 'shuffle_outlined': Icons.shuffle_outlined, + 'shuffle_on': Icons.shuffle_on, + 'shuffle_on_sharp': Icons.shuffle_on_sharp, + 'shuffle_on_rounded': Icons.shuffle_on_rounded, + 'shuffle_on_outlined': Icons.shuffle_on_outlined, + 'shutter_speed': Icons.shutter_speed, + 'shutter_speed_sharp': Icons.shutter_speed_sharp, + 'shutter_speed_rounded': Icons.shutter_speed_rounded, + 'shutter_speed_outlined': Icons.shutter_speed_outlined, + 'sick': Icons.sick, + 'sick_sharp': Icons.sick_sharp, + 'sick_rounded': Icons.sick_rounded, + 'sick_outlined': Icons.sick_outlined, + 'signal_cellular_0_bar': Icons.signal_cellular_0_bar, + 'signal_cellular_0_bar_sharp': Icons.signal_cellular_0_bar_sharp, + 'signal_cellular_0_bar_rounded': Icons.signal_cellular_0_bar_rounded, + 'signal_cellular_0_bar_outlined': Icons.signal_cellular_0_bar_outlined, + 'signal_cellular_4_bar': Icons.signal_cellular_4_bar, + 'signal_cellular_4_bar_sharp': Icons.signal_cellular_4_bar_sharp, + 'signal_cellular_4_bar_rounded': Icons.signal_cellular_4_bar_rounded, + 'signal_cellular_4_bar_outlined': Icons.signal_cellular_4_bar_outlined, + 'signal_cellular_alt': Icons.signal_cellular_alt, + 'signal_cellular_alt_sharp': Icons.signal_cellular_alt_sharp, + 'signal_cellular_alt_rounded': Icons.signal_cellular_alt_rounded, + 'signal_cellular_alt_outlined': Icons.signal_cellular_alt_outlined, + 'signal_cellular_connected_no_internet_0_bar': + Icons.signal_cellular_connected_no_internet_0_bar, + 'signal_cellular_connected_no_internet_0_bar_sharp': + Icons.signal_cellular_connected_no_internet_0_bar_sharp, + 'signal_cellular_connected_no_internet_0_bar_rounded': + Icons.signal_cellular_connected_no_internet_0_bar_rounded, + 'signal_cellular_connected_no_internet_0_bar_outlined': + Icons.signal_cellular_connected_no_internet_0_bar_outlined, + 'signal_cellular_connected_no_internet_4_bar': + Icons.signal_cellular_connected_no_internet_4_bar, + 'signal_cellular_connected_no_internet_4_bar_sharp': + Icons.signal_cellular_connected_no_internet_4_bar_sharp, + 'signal_cellular_connected_no_internet_4_bar_rounded': + Icons.signal_cellular_connected_no_internet_4_bar_rounded, + 'signal_cellular_connected_no_internet_4_bar_outlined': + Icons.signal_cellular_connected_no_internet_4_bar_outlined, + 'signal_cellular_no_sim': Icons.signal_cellular_no_sim, + 'signal_cellular_no_sim_sharp': Icons.signal_cellular_no_sim_sharp, + 'signal_cellular_no_sim_rounded': Icons.signal_cellular_no_sim_rounded, + 'signal_cellular_no_sim_outlined': + Icons.signal_cellular_no_sim_outlined, + 'signal_cellular_nodata': Icons.signal_cellular_nodata, + 'signal_cellular_nodata_sharp': Icons.signal_cellular_nodata_sharp, + 'signal_cellular_nodata_rounded': Icons.signal_cellular_nodata_rounded, + 'signal_cellular_nodata_outlined': + Icons.signal_cellular_nodata_outlined, + 'signal_cellular_null': Icons.signal_cellular_null, + 'signal_cellular_null_sharp': Icons.signal_cellular_null_sharp, + 'signal_cellular_null_rounded': Icons.signal_cellular_null_rounded, + 'signal_cellular_null_outlined': Icons.signal_cellular_null_outlined, + 'signal_cellular_off': Icons.signal_cellular_off, + 'signal_cellular_off_sharp': Icons.signal_cellular_off_sharp, + 'signal_cellular_off_rounded': Icons.signal_cellular_off_rounded, + 'signal_cellular_off_outlined': Icons.signal_cellular_off_outlined, + 'signal_wifi_0_bar': Icons.signal_wifi_0_bar, + 'signal_wifi_0_bar_sharp': Icons.signal_wifi_0_bar_sharp, + 'signal_wifi_0_bar_rounded': Icons.signal_wifi_0_bar_rounded, + 'signal_wifi_0_bar_outlined': Icons.signal_wifi_0_bar_outlined, + 'signal_wifi_4_bar': Icons.signal_wifi_4_bar, + 'signal_wifi_4_bar_sharp': Icons.signal_wifi_4_bar_sharp, + 'signal_wifi_4_bar_rounded': Icons.signal_wifi_4_bar_rounded, + 'signal_wifi_4_bar_outlined': Icons.signal_wifi_4_bar_outlined, + 'signal_wifi_4_bar_lock': Icons.signal_wifi_4_bar_lock, + 'signal_wifi_4_bar_lock_sharp': Icons.signal_wifi_4_bar_lock_sharp, + 'signal_wifi_4_bar_lock_rounded': Icons.signal_wifi_4_bar_lock_rounded, + 'signal_wifi_4_bar_lock_outlined': + Icons.signal_wifi_4_bar_lock_outlined, + 'signal_wifi_bad': Icons.signal_wifi_bad, + 'signal_wifi_bad_sharp': Icons.signal_wifi_bad_sharp, + 'signal_wifi_bad_rounded': Icons.signal_wifi_bad_rounded, + 'signal_wifi_bad_outlined': Icons.signal_wifi_bad_outlined, + 'signal_wifi_connected_no_internet_4': + Icons.signal_wifi_connected_no_internet_4, + 'signal_wifi_connected_no_internet_4_sharp': + Icons.signal_wifi_connected_no_internet_4_sharp, + 'signal_wifi_connected_no_internet_4_rounded': + Icons.signal_wifi_connected_no_internet_4_rounded, + 'signal_wifi_connected_no_internet_4_outlined': + Icons.signal_wifi_connected_no_internet_4_outlined, + 'signal_wifi_off': Icons.signal_wifi_off, + 'signal_wifi_off_sharp': Icons.signal_wifi_off_sharp, + 'signal_wifi_off_rounded': Icons.signal_wifi_off_rounded, + 'signal_wifi_off_outlined': Icons.signal_wifi_off_outlined, + 'signal_wifi_statusbar_4_bar': Icons.signal_wifi_statusbar_4_bar, + 'signal_wifi_statusbar_4_bar_sharp': + Icons.signal_wifi_statusbar_4_bar_sharp, + 'signal_wifi_statusbar_4_bar_rounded': + Icons.signal_wifi_statusbar_4_bar_rounded, + 'signal_wifi_statusbar_4_bar_outlined': + Icons.signal_wifi_statusbar_4_bar_outlined, + 'signal_wifi_statusbar_connected_no_internet_4': + Icons.signal_wifi_statusbar_connected_no_internet_4, + 'signal_wifi_statusbar_connected_no_internet_4_sharp': + Icons.signal_wifi_statusbar_connected_no_internet_4_sharp, + 'signal_wifi_statusbar_connected_no_internet_4_rounded': + Icons.signal_wifi_statusbar_connected_no_internet_4_rounded, + 'signal_wifi_statusbar_connected_no_internet_4_outlined': + Icons.signal_wifi_statusbar_connected_no_internet_4_outlined, + 'signal_wifi_statusbar_null': Icons.signal_wifi_statusbar_null, + 'signal_wifi_statusbar_null_sharp': + Icons.signal_wifi_statusbar_null_sharp, + 'signal_wifi_statusbar_null_rounded': + Icons.signal_wifi_statusbar_null_rounded, + 'signal_wifi_statusbar_null_outlined': + Icons.signal_wifi_statusbar_null_outlined, + 'sim_card': Icons.sim_card, + 'sim_card_sharp': Icons.sim_card_sharp, + 'sim_card_rounded': Icons.sim_card_rounded, + 'sim_card_outlined': Icons.sim_card_outlined, + 'sim_card_alert': Icons.sim_card_alert, + 'sim_card_alert_sharp': Icons.sim_card_alert_sharp, + 'sim_card_alert_rounded': Icons.sim_card_alert_rounded, + 'sim_card_alert_outlined': Icons.sim_card_alert_outlined, + 'sim_card_download': Icons.sim_card_download, + 'sim_card_download_sharp': Icons.sim_card_download_sharp, + 'sim_card_download_rounded': Icons.sim_card_download_rounded, + 'sim_card_download_outlined': Icons.sim_card_download_outlined, + 'single_bed': Icons.single_bed, + 'single_bed_sharp': Icons.single_bed_sharp, + 'single_bed_rounded': Icons.single_bed_rounded, + 'single_bed_outlined': Icons.single_bed_outlined, + 'sip': Icons.sip, + 'sip_sharp': Icons.sip_sharp, + 'sip_rounded': Icons.sip_rounded, + 'sip_outlined': Icons.sip_outlined, + 'skateboarding': Icons.skateboarding, + 'skateboarding_sharp': Icons.skateboarding_sharp, + 'skateboarding_rounded': Icons.skateboarding_rounded, + 'skateboarding_outlined': Icons.skateboarding_outlined, + 'skip_next': Icons.skip_next, + 'skip_next_sharp': Icons.skip_next_sharp, + 'skip_next_rounded': Icons.skip_next_rounded, + 'skip_next_outlined': Icons.skip_next_outlined, + 'skip_previous': Icons.skip_previous, + 'skip_previous_sharp': Icons.skip_previous_sharp, + 'skip_previous_rounded': Icons.skip_previous_rounded, + 'skip_previous_outlined': Icons.skip_previous_outlined, + 'sledding': Icons.sledding, + 'sledding_sharp': Icons.sledding_sharp, + 'sledding_rounded': Icons.sledding_rounded, + 'sledding_outlined': Icons.sledding_outlined, + 'slideshow': Icons.slideshow, + 'slideshow_sharp': Icons.slideshow_sharp, + 'slideshow_rounded': Icons.slideshow_rounded, + 'slideshow_outlined': Icons.slideshow_outlined, + 'slow_motion_video': Icons.slow_motion_video, + 'slow_motion_video_sharp': Icons.slow_motion_video_sharp, + 'slow_motion_video_rounded': Icons.slow_motion_video_rounded, + 'slow_motion_video_outlined': Icons.slow_motion_video_outlined, + 'smart_button': Icons.smart_button, + 'smart_button_sharp': Icons.smart_button_sharp, + 'smart_button_rounded': Icons.smart_button_rounded, + 'smart_button_outlined': Icons.smart_button_outlined, + 'smart_display': Icons.smart_display, + 'smart_display_sharp': Icons.smart_display_sharp, + 'smart_display_rounded': Icons.smart_display_rounded, + 'smart_display_outlined': Icons.smart_display_outlined, + 'smart_screen': Icons.smart_screen, + 'smart_screen_sharp': Icons.smart_screen_sharp, + 'smart_screen_rounded': Icons.smart_screen_rounded, + 'smart_screen_outlined': Icons.smart_screen_outlined, + 'smart_toy': Icons.smart_toy, + 'smart_toy_sharp': Icons.smart_toy_sharp, + 'smart_toy_rounded': Icons.smart_toy_rounded, + 'smart_toy_outlined': Icons.smart_toy_outlined, + 'smartphone': Icons.smartphone, + 'smartphone_sharp': Icons.smartphone_sharp, + 'smartphone_rounded': Icons.smartphone_rounded, + 'smartphone_outlined': Icons.smartphone_outlined, + 'smoke_free': Icons.smoke_free, + 'smoke_free_sharp': Icons.smoke_free_sharp, + 'smoke_free_rounded': Icons.smoke_free_rounded, + 'smoke_free_outlined': Icons.smoke_free_outlined, + 'smoking_rooms': Icons.smoking_rooms, + 'smoking_rooms_sharp': Icons.smoking_rooms_sharp, + 'smoking_rooms_rounded': Icons.smoking_rooms_rounded, + 'smoking_rooms_outlined': Icons.smoking_rooms_outlined, + 'sms': Icons.sms, + 'sms_sharp': Icons.sms_sharp, + 'sms_rounded': Icons.sms_rounded, + 'sms_outlined': Icons.sms_outlined, + 'sms_failed': Icons.sms_failed, + 'sms_failed_sharp': Icons.sms_failed_sharp, + 'sms_failed_rounded': Icons.sms_failed_rounded, + 'sms_failed_outlined': Icons.sms_failed_outlined, + 'snippet_folder': Icons.snippet_folder, + 'snippet_folder_sharp': Icons.snippet_folder_sharp, + 'snippet_folder_rounded': Icons.snippet_folder_rounded, + 'snippet_folder_outlined': Icons.snippet_folder_outlined, + 'snooze': Icons.snooze, + 'snooze_sharp': Icons.snooze_sharp, + 'snooze_rounded': Icons.snooze_rounded, + 'snooze_outlined': Icons.snooze_outlined, + 'snowboarding': Icons.snowboarding, + 'snowboarding_sharp': Icons.snowboarding_sharp, + 'snowboarding_rounded': Icons.snowboarding_rounded, + 'snowboarding_outlined': Icons.snowboarding_outlined, + 'snowmobile': Icons.snowmobile, + 'snowmobile_sharp': Icons.snowmobile_sharp, + 'snowmobile_rounded': Icons.snowmobile_rounded, + 'snowmobile_outlined': Icons.snowmobile_outlined, + 'snowshoeing': Icons.snowshoeing, + 'snowshoeing_sharp': Icons.snowshoeing_sharp, + 'snowshoeing_rounded': Icons.snowshoeing_rounded, + 'snowshoeing_outlined': Icons.snowshoeing_outlined, + 'soap': Icons.soap, + 'soap_sharp': Icons.soap_sharp, + 'soap_rounded': Icons.soap_rounded, + 'soap_outlined': Icons.soap_outlined, + 'social_distance': Icons.social_distance, + 'social_distance_sharp': Icons.social_distance_sharp, + 'social_distance_rounded': Icons.social_distance_rounded, + 'social_distance_outlined': Icons.social_distance_outlined, + 'sort': Icons.sort, + 'sort_sharp': Icons.sort_sharp, + 'sort_rounded': Icons.sort_rounded, + 'sort_outlined': Icons.sort_outlined, + 'sort_by_alpha': Icons.sort_by_alpha, + 'sort_by_alpha_sharp': Icons.sort_by_alpha_sharp, + 'sort_by_alpha_rounded': Icons.sort_by_alpha_rounded, + 'sort_by_alpha_outlined': Icons.sort_by_alpha_outlined, + 'source': Icons.source, + 'source_sharp': Icons.source_sharp, + 'source_rounded': Icons.source_rounded, + 'source_outlined': Icons.source_outlined, + 'south': Icons.south, + 'south_sharp': Icons.south_sharp, + 'south_rounded': Icons.south_rounded, + 'south_outlined': Icons.south_outlined, + 'south_east': Icons.south_east, + 'south_east_sharp': Icons.south_east_sharp, + 'south_east_rounded': Icons.south_east_rounded, + 'south_east_outlined': Icons.south_east_outlined, + 'south_west': Icons.south_west, + 'south_west_sharp': Icons.south_west_sharp, + 'south_west_rounded': Icons.south_west_rounded, + 'south_west_outlined': Icons.south_west_outlined, + 'spa': Icons.spa, + 'spa_sharp': Icons.spa_sharp, + 'spa_rounded': Icons.spa_rounded, + 'spa_outlined': Icons.spa_outlined, + 'space_bar': Icons.space_bar, + 'space_bar_sharp': Icons.space_bar_sharp, + 'space_bar_rounded': Icons.space_bar_rounded, + 'space_bar_outlined': Icons.space_bar_outlined, + 'space_dashboard': Icons.space_dashboard, + 'space_dashboard_sharp': Icons.space_dashboard_sharp, + 'space_dashboard_rounded': Icons.space_dashboard_rounded, + 'space_dashboard_outlined': Icons.space_dashboard_outlined, + 'speaker': Icons.speaker, + 'speaker_sharp': Icons.speaker_sharp, + 'speaker_rounded': Icons.speaker_rounded, + 'speaker_outlined': Icons.speaker_outlined, + 'speaker_group': Icons.speaker_group, + 'speaker_group_sharp': Icons.speaker_group_sharp, + 'speaker_group_rounded': Icons.speaker_group_rounded, + 'speaker_group_outlined': Icons.speaker_group_outlined, + 'speaker_notes': Icons.speaker_notes, + 'speaker_notes_sharp': Icons.speaker_notes_sharp, + 'speaker_notes_rounded': Icons.speaker_notes_rounded, + 'speaker_notes_outlined': Icons.speaker_notes_outlined, + 'speaker_notes_off': Icons.speaker_notes_off, + 'speaker_notes_off_sharp': Icons.speaker_notes_off_sharp, + 'speaker_notes_off_rounded': Icons.speaker_notes_off_rounded, + 'speaker_notes_off_outlined': Icons.speaker_notes_off_outlined, + 'speaker_phone': Icons.speaker_phone, + 'speaker_phone_sharp': Icons.speaker_phone_sharp, + 'speaker_phone_rounded': Icons.speaker_phone_rounded, + 'speaker_phone_outlined': Icons.speaker_phone_outlined, + 'speed': Icons.speed, + 'speed_sharp': Icons.speed_sharp, + 'speed_rounded': Icons.speed_rounded, + 'speed_outlined': Icons.speed_outlined, + 'spellcheck': Icons.spellcheck, + 'spellcheck_sharp': Icons.spellcheck_sharp, + 'spellcheck_rounded': Icons.spellcheck_rounded, + 'spellcheck_outlined': Icons.spellcheck_outlined, + 'splitscreen': Icons.splitscreen, + 'splitscreen_sharp': Icons.splitscreen_sharp, + 'splitscreen_rounded': Icons.splitscreen_rounded, + 'splitscreen_outlined': Icons.splitscreen_outlined, + 'sports': Icons.sports, + 'sports_sharp': Icons.sports_sharp, + 'sports_rounded': Icons.sports_rounded, + 'sports_outlined': Icons.sports_outlined, + 'sports_bar': Icons.sports_bar, + 'sports_bar_sharp': Icons.sports_bar_sharp, + 'sports_bar_rounded': Icons.sports_bar_rounded, + 'sports_bar_outlined': Icons.sports_bar_outlined, + 'sports_baseball': Icons.sports_baseball, + 'sports_baseball_sharp': Icons.sports_baseball_sharp, + 'sports_baseball_rounded': Icons.sports_baseball_rounded, + 'sports_baseball_outlined': Icons.sports_baseball_outlined, + 'sports_basketball': Icons.sports_basketball, + 'sports_basketball_sharp': Icons.sports_basketball_sharp, + 'sports_basketball_rounded': Icons.sports_basketball_rounded, + 'sports_basketball_outlined': Icons.sports_basketball_outlined, + 'sports_cricket': Icons.sports_cricket, + 'sports_cricket_sharp': Icons.sports_cricket_sharp, + 'sports_cricket_rounded': Icons.sports_cricket_rounded, + 'sports_cricket_outlined': Icons.sports_cricket_outlined, + 'sports_esports': Icons.sports_esports, + 'sports_esports_sharp': Icons.sports_esports_sharp, + 'sports_esports_rounded': Icons.sports_esports_rounded, + 'sports_esports_outlined': Icons.sports_esports_outlined, + 'sports_football': Icons.sports_football, + 'sports_football_sharp': Icons.sports_football_sharp, + 'sports_football_rounded': Icons.sports_football_rounded, + 'sports_football_outlined': Icons.sports_football_outlined, + 'sports_golf': Icons.sports_golf, + 'sports_golf_sharp': Icons.sports_golf_sharp, + 'sports_golf_rounded': Icons.sports_golf_rounded, + 'sports_golf_outlined': Icons.sports_golf_outlined, + 'sports_handball': Icons.sports_handball, + 'sports_handball_sharp': Icons.sports_handball_sharp, + 'sports_handball_rounded': Icons.sports_handball_rounded, + 'sports_handball_outlined': Icons.sports_handball_outlined, + 'sports_hockey': Icons.sports_hockey, + 'sports_hockey_sharp': Icons.sports_hockey_sharp, + 'sports_hockey_rounded': Icons.sports_hockey_rounded, + 'sports_hockey_outlined': Icons.sports_hockey_outlined, + 'sports_kabaddi': Icons.sports_kabaddi, + 'sports_kabaddi_sharp': Icons.sports_kabaddi_sharp, + 'sports_kabaddi_rounded': Icons.sports_kabaddi_rounded, + 'sports_kabaddi_outlined': Icons.sports_kabaddi_outlined, + 'sports_mma': Icons.sports_mma, + 'sports_mma_sharp': Icons.sports_mma_sharp, + 'sports_mma_rounded': Icons.sports_mma_rounded, + 'sports_mma_outlined': Icons.sports_mma_outlined, + 'sports_motorsports': Icons.sports_motorsports, + 'sports_motorsports_sharp': Icons.sports_motorsports_sharp, + 'sports_motorsports_rounded': Icons.sports_motorsports_rounded, + 'sports_motorsports_outlined': Icons.sports_motorsports_outlined, + 'sports_rugby': Icons.sports_rugby, + 'sports_rugby_sharp': Icons.sports_rugby_sharp, + 'sports_rugby_rounded': Icons.sports_rugby_rounded, + 'sports_rugby_outlined': Icons.sports_rugby_outlined, + 'sports_score': Icons.sports_score, + 'sports_score_sharp': Icons.sports_score_sharp, + 'sports_score_rounded': Icons.sports_score_rounded, + 'sports_score_outlined': Icons.sports_score_outlined, + 'sports_soccer': Icons.sports_soccer, + 'sports_soccer_sharp': Icons.sports_soccer_sharp, + 'sports_soccer_rounded': Icons.sports_soccer_rounded, + 'sports_soccer_outlined': Icons.sports_soccer_outlined, + 'sports_tennis': Icons.sports_tennis, + 'sports_tennis_sharp': Icons.sports_tennis_sharp, + 'sports_tennis_rounded': Icons.sports_tennis_rounded, + 'sports_tennis_outlined': Icons.sports_tennis_outlined, + 'sports_volleyball': Icons.sports_volleyball, + 'sports_volleyball_sharp': Icons.sports_volleyball_sharp, + 'sports_volleyball_rounded': Icons.sports_volleyball_rounded, + 'sports_volleyball_outlined': Icons.sports_volleyball_outlined, + 'square_foot': Icons.square_foot, + 'square_foot_sharp': Icons.square_foot_sharp, + 'square_foot_rounded': Icons.square_foot_rounded, + 'square_foot_outlined': Icons.square_foot_outlined, + 'stacked_bar_chart': Icons.stacked_bar_chart, + 'stacked_bar_chart_sharp': Icons.stacked_bar_chart_sharp, + 'stacked_bar_chart_rounded': Icons.stacked_bar_chart_rounded, + 'stacked_bar_chart_outlined': Icons.stacked_bar_chart_outlined, + 'stacked_line_chart': Icons.stacked_line_chart, + 'stacked_line_chart_sharp': Icons.stacked_line_chart_sharp, + 'stacked_line_chart_rounded': Icons.stacked_line_chart_rounded, + 'stacked_line_chart_outlined': Icons.stacked_line_chart_outlined, + 'stairs': Icons.stairs, + 'stairs_sharp': Icons.stairs_sharp, + 'stairs_rounded': Icons.stairs_rounded, + 'stairs_outlined': Icons.stairs_outlined, + 'star': Icons.star, + 'star_sharp': Icons.star_sharp, + 'star_rounded': Icons.star_rounded, + 'star_outlined': Icons.star_outlined, + 'star_border': Icons.star_border, + 'star_border_sharp': Icons.star_border_sharp, + 'star_border_rounded': Icons.star_border_rounded, + 'star_border_outlined': Icons.star_border_outlined, + 'star_border_purple500': Icons.star_border_purple500, + 'star_border_purple500_sharp': Icons.star_border_purple500_sharp, + 'star_border_purple500_rounded': Icons.star_border_purple500_rounded, + 'star_border_purple500_outlined': Icons.star_border_purple500_outlined, + 'star_half': Icons.star_half, + 'star_half_sharp': Icons.star_half_sharp, + 'star_half_rounded': Icons.star_half_rounded, + 'star_half_outlined': Icons.star_half_outlined, + 'star_outline': Icons.star_outline, + 'star_outline_sharp': Icons.star_outline_sharp, + 'star_outline_rounded': Icons.star_outline_rounded, + 'star_outline_outlined': Icons.star_outline_outlined, + 'star_purple500': Icons.star_purple500, + 'star_purple500_sharp': Icons.star_purple500_sharp, + 'star_purple500_rounded': Icons.star_purple500_rounded, + 'star_purple500_outlined': Icons.star_purple500_outlined, + 'star_rate': Icons.star_rate, + 'star_rate_sharp': Icons.star_rate_sharp, + 'star_rate_rounded': Icons.star_rate_rounded, + 'star_rate_outlined': Icons.star_rate_outlined, + 'stars': Icons.stars, + 'stars_sharp': Icons.stars_sharp, + 'stars_rounded': Icons.stars_rounded, + 'stars_outlined': Icons.stars_outlined, + 'stay_current_landscape': Icons.stay_current_landscape, + 'stay_current_landscape_sharp': Icons.stay_current_landscape_sharp, + 'stay_current_landscape_rounded': Icons.stay_current_landscape_rounded, + 'stay_current_landscape_outlined': + Icons.stay_current_landscape_outlined, + 'stay_current_portrait': Icons.stay_current_portrait, + 'stay_current_portrait_sharp': Icons.stay_current_portrait_sharp, + 'stay_current_portrait_rounded': Icons.stay_current_portrait_rounded, + 'stay_current_portrait_outlined': Icons.stay_current_portrait_outlined, + 'stay_primary_landscape': Icons.stay_primary_landscape, + 'stay_primary_landscape_sharp': Icons.stay_primary_landscape_sharp, + 'stay_primary_landscape_rounded': Icons.stay_primary_landscape_rounded, + 'stay_primary_landscape_outlined': + Icons.stay_primary_landscape_outlined, + 'stay_primary_portrait': Icons.stay_primary_portrait, + 'stay_primary_portrait_sharp': Icons.stay_primary_portrait_sharp, + 'stay_primary_portrait_rounded': Icons.stay_primary_portrait_rounded, + 'stay_primary_portrait_outlined': Icons.stay_primary_portrait_outlined, + 'sticky_note_2': Icons.sticky_note_2, + 'sticky_note_2_sharp': Icons.sticky_note_2_sharp, + 'sticky_note_2_rounded': Icons.sticky_note_2_rounded, + 'sticky_note_2_outlined': Icons.sticky_note_2_outlined, + 'stop': Icons.stop, + 'stop_sharp': Icons.stop_sharp, + 'stop_rounded': Icons.stop_rounded, + 'stop_outlined': Icons.stop_outlined, + 'stop_circle': Icons.stop_circle, + 'stop_circle_sharp': Icons.stop_circle_sharp, + 'stop_circle_rounded': Icons.stop_circle_rounded, + 'stop_circle_outlined': Icons.stop_circle_outlined, + 'stop_screen_share': Icons.stop_screen_share, + 'stop_screen_share_sharp': Icons.stop_screen_share_sharp, + 'stop_screen_share_rounded': Icons.stop_screen_share_rounded, + 'stop_screen_share_outlined': Icons.stop_screen_share_outlined, + 'storage': Icons.storage, + 'storage_sharp': Icons.storage_sharp, + 'storage_rounded': Icons.storage_rounded, + 'storage_outlined': Icons.storage_outlined, + 'store': Icons.store, + 'store_sharp': Icons.store_sharp, + 'store_rounded': Icons.store_rounded, + 'store_outlined': Icons.store_outlined, + 'store_mall_directory': Icons.store_mall_directory, + 'store_mall_directory_sharp': Icons.store_mall_directory_sharp, + 'store_mall_directory_rounded': Icons.store_mall_directory_rounded, + 'store_mall_directory_outlined': Icons.store_mall_directory_outlined, + 'storefront': Icons.storefront, + 'storefront_sharp': Icons.storefront_sharp, + 'storefront_rounded': Icons.storefront_rounded, + 'storefront_outlined': Icons.storefront_outlined, + 'storm': Icons.storm, + 'storm_sharp': Icons.storm_sharp, + 'storm_rounded': Icons.storm_rounded, + 'storm_outlined': Icons.storm_outlined, + 'straighten': Icons.straighten, + 'straighten_sharp': Icons.straighten_sharp, + 'straighten_rounded': Icons.straighten_rounded, + 'straighten_outlined': Icons.straighten_outlined, + 'stream': Icons.stream, + 'stream_sharp': Icons.stream_sharp, + 'stream_rounded': Icons.stream_rounded, + 'stream_outlined': Icons.stream_outlined, + 'streetview': Icons.streetview, + 'streetview_sharp': Icons.streetview_sharp, + 'streetview_rounded': Icons.streetview_rounded, + 'streetview_outlined': Icons.streetview_outlined, + 'strikethrough_s': Icons.strikethrough_s, + 'strikethrough_s_sharp': Icons.strikethrough_s_sharp, + 'strikethrough_s_rounded': Icons.strikethrough_s_rounded, + 'strikethrough_s_outlined': Icons.strikethrough_s_outlined, + 'stroller': Icons.stroller, + 'stroller_sharp': Icons.stroller_sharp, + 'stroller_rounded': Icons.stroller_rounded, + 'stroller_outlined': Icons.stroller_outlined, + 'style': Icons.style, + 'style_sharp': Icons.style_sharp, + 'style_rounded': Icons.style_rounded, + 'style_outlined': Icons.style_outlined, + 'subdirectory_arrow_left': Icons.subdirectory_arrow_left, + 'subdirectory_arrow_left_sharp': Icons.subdirectory_arrow_left_sharp, + 'subdirectory_arrow_left_rounded': + Icons.subdirectory_arrow_left_rounded, + 'subdirectory_arrow_left_outlined': + Icons.subdirectory_arrow_left_outlined, + 'subdirectory_arrow_right': Icons.subdirectory_arrow_right, + 'subdirectory_arrow_right_sharp': Icons.subdirectory_arrow_right_sharp, + 'subdirectory_arrow_right_rounded': + Icons.subdirectory_arrow_right_rounded, + 'subdirectory_arrow_right_outlined': + Icons.subdirectory_arrow_right_outlined, + 'subject': Icons.subject, + 'subject_sharp': Icons.subject_sharp, + 'subject_rounded': Icons.subject_rounded, + 'subject_outlined': Icons.subject_outlined, + 'subscript': Icons.subscript, + 'subscript_sharp': Icons.subscript_sharp, + 'subscript_rounded': Icons.subscript_rounded, + 'subscript_outlined': Icons.subscript_outlined, + 'subscriptions': Icons.subscriptions, + 'subscriptions_sharp': Icons.subscriptions_sharp, + 'subscriptions_rounded': Icons.subscriptions_rounded, + 'subscriptions_outlined': Icons.subscriptions_outlined, + 'subtitles': Icons.subtitles, + 'subtitles_sharp': Icons.subtitles_sharp, + 'subtitles_rounded': Icons.subtitles_rounded, + 'subtitles_outlined': Icons.subtitles_outlined, + 'subtitles_off': Icons.subtitles_off, + 'subtitles_off_sharp': Icons.subtitles_off_sharp, + 'subtitles_off_rounded': Icons.subtitles_off_rounded, + 'subtitles_off_outlined': Icons.subtitles_off_outlined, + 'subway': Icons.subway, + 'subway_sharp': Icons.subway_sharp, + 'subway_rounded': Icons.subway_rounded, + 'subway_outlined': Icons.subway_outlined, + 'summarize': Icons.summarize, + 'summarize_sharp': Icons.summarize_sharp, + 'summarize_rounded': Icons.summarize_rounded, + 'summarize_outlined': Icons.summarize_outlined, + 'superscript': Icons.superscript, + 'superscript_sharp': Icons.superscript_sharp, + 'superscript_rounded': Icons.superscript_rounded, + 'superscript_outlined': Icons.superscript_outlined, + 'supervised_user_circle': Icons.supervised_user_circle, + 'supervised_user_circle_sharp': Icons.supervised_user_circle_sharp, + 'supervised_user_circle_rounded': Icons.supervised_user_circle_rounded, + 'supervised_user_circle_outlined': + Icons.supervised_user_circle_outlined, + 'supervisor_account': Icons.supervisor_account, + 'supervisor_account_sharp': Icons.supervisor_account_sharp, + 'supervisor_account_rounded': Icons.supervisor_account_rounded, + 'supervisor_account_outlined': Icons.supervisor_account_outlined, + 'support': Icons.support, + 'support_sharp': Icons.support_sharp, + 'support_rounded': Icons.support_rounded, + 'support_outlined': Icons.support_outlined, + 'support_agent': Icons.support_agent, + 'support_agent_sharp': Icons.support_agent_sharp, + 'support_agent_rounded': Icons.support_agent_rounded, + 'support_agent_outlined': Icons.support_agent_outlined, + 'surfing': Icons.surfing, + 'surfing_sharp': Icons.surfing_sharp, + 'surfing_rounded': Icons.surfing_rounded, + 'surfing_outlined': Icons.surfing_outlined, + 'surround_sound': Icons.surround_sound, + 'surround_sound_sharp': Icons.surround_sound_sharp, + 'surround_sound_rounded': Icons.surround_sound_rounded, + 'surround_sound_outlined': Icons.surround_sound_outlined, + 'swap_calls': Icons.swap_calls, + 'swap_calls_sharp': Icons.swap_calls_sharp, + 'swap_calls_rounded': Icons.swap_calls_rounded, + 'swap_calls_outlined': Icons.swap_calls_outlined, + 'swap_horiz': Icons.swap_horiz, + 'swap_horiz_sharp': Icons.swap_horiz_sharp, + 'swap_horiz_rounded': Icons.swap_horiz_rounded, + 'swap_horiz_outlined': Icons.swap_horiz_outlined, + 'swap_horizontal_circle': Icons.swap_horizontal_circle, + 'swap_horizontal_circle_sharp': Icons.swap_horizontal_circle_sharp, + 'swap_horizontal_circle_rounded': Icons.swap_horizontal_circle_rounded, + 'swap_horizontal_circle_outlined': + Icons.swap_horizontal_circle_outlined, + 'swap_vert': Icons.swap_vert, + 'swap_vert_sharp': Icons.swap_vert_sharp, + 'swap_vert_rounded': Icons.swap_vert_rounded, + 'swap_vert_outlined': Icons.swap_vert_outlined, + 'swap_vert_circle': Icons.swap_vert_circle, + 'swap_vert_circle_sharp': Icons.swap_vert_circle_sharp, + 'swap_vert_circle_rounded': Icons.swap_vert_circle_rounded, + 'swap_vert_circle_outlined': Icons.swap_vert_circle_outlined, + 'swap_vertical_circle': Icons.swap_vertical_circle, + 'swap_vertical_circle_sharp': Icons.swap_vertical_circle_sharp, + 'swap_vertical_circle_rounded': Icons.swap_vertical_circle_rounded, + 'swap_vertical_circle_outlined': Icons.swap_vertical_circle_outlined, + 'swipe': Icons.swipe, + 'swipe_sharp': Icons.swipe_sharp, + 'swipe_rounded': Icons.swipe_rounded, + 'swipe_outlined': Icons.swipe_outlined, + 'switch_account': Icons.switch_account, + 'switch_account_sharp': Icons.switch_account_sharp, + 'switch_account_rounded': Icons.switch_account_rounded, + 'switch_account_outlined': Icons.switch_account_outlined, + 'switch_camera': Icons.switch_camera, + 'switch_camera_sharp': Icons.switch_camera_sharp, + 'switch_camera_rounded': Icons.switch_camera_rounded, + 'switch_camera_outlined': Icons.switch_camera_outlined, + 'switch_left': Icons.switch_left, + 'switch_left_sharp': Icons.switch_left_sharp, + 'switch_left_rounded': Icons.switch_left_rounded, + 'switch_left_outlined': Icons.switch_left_outlined, + 'switch_right': Icons.switch_right, + 'switch_right_sharp': Icons.switch_right_sharp, + 'switch_right_rounded': Icons.switch_right_rounded, + 'switch_right_outlined': Icons.switch_right_outlined, + 'switch_video': Icons.switch_video, + 'switch_video_sharp': Icons.switch_video_sharp, + 'switch_video_rounded': Icons.switch_video_rounded, + 'switch_video_outlined': Icons.switch_video_outlined, + 'sync': Icons.sync, + 'sync_sharp': Icons.sync_sharp, + 'sync_rounded': Icons.sync_rounded, + 'sync_outlined': Icons.sync_outlined, + 'sync_alt': Icons.sync_alt, + 'sync_alt_sharp': Icons.sync_alt_sharp, + 'sync_alt_rounded': Icons.sync_alt_rounded, + 'sync_alt_outlined': Icons.sync_alt_outlined, + 'sync_disabled': Icons.sync_disabled, + 'sync_disabled_sharp': Icons.sync_disabled_sharp, + 'sync_disabled_rounded': Icons.sync_disabled_rounded, + 'sync_disabled_outlined': Icons.sync_disabled_outlined, + 'sync_problem': Icons.sync_problem, + 'sync_problem_sharp': Icons.sync_problem_sharp, + 'sync_problem_rounded': Icons.sync_problem_rounded, + 'sync_problem_outlined': Icons.sync_problem_outlined, + 'system_security_update': Icons.system_security_update, + 'system_security_update_sharp': Icons.system_security_update_sharp, + 'system_security_update_rounded': Icons.system_security_update_rounded, + 'system_security_update_outlined': + Icons.system_security_update_outlined, + 'system_security_update_good': Icons.system_security_update_good, + 'system_security_update_good_sharp': + Icons.system_security_update_good_sharp, + 'system_security_update_good_rounded': + Icons.system_security_update_good_rounded, + 'system_security_update_good_outlined': + Icons.system_security_update_good_outlined, + 'system_security_update_warning': Icons.system_security_update_warning, + 'system_security_update_warning_sharp': + Icons.system_security_update_warning_sharp, + 'system_security_update_warning_rounded': + Icons.system_security_update_warning_rounded, + 'system_security_update_warning_outlined': + Icons.system_security_update_warning_outlined, + 'system_update': Icons.system_update, + 'system_update_sharp': Icons.system_update_sharp, + 'system_update_rounded': Icons.system_update_rounded, + 'system_update_outlined': Icons.system_update_outlined, + 'system_update_alt': Icons.system_update_alt, + 'system_update_alt_sharp': Icons.system_update_alt_sharp, + 'system_update_alt_rounded': Icons.system_update_alt_rounded, + 'system_update_alt_outlined': Icons.system_update_alt_outlined, + 'system_update_tv': Icons.system_update_tv, + 'system_update_tv_sharp': Icons.system_update_tv_sharp, + 'system_update_tv_rounded': Icons.system_update_tv_rounded, + 'system_update_tv_outlined': Icons.system_update_tv_outlined, + 'tab': Icons.tab, + 'tab_sharp': Icons.tab_sharp, + 'tab_rounded': Icons.tab_rounded, + 'tab_outlined': Icons.tab_outlined, + 'tab_unselected': Icons.tab_unselected, + 'tab_unselected_sharp': Icons.tab_unselected_sharp, + 'tab_unselected_rounded': Icons.tab_unselected_rounded, + 'tab_unselected_outlined': Icons.tab_unselected_outlined, + 'table_chart': Icons.table_chart, + 'table_chart_sharp': Icons.table_chart_sharp, + 'table_chart_rounded': Icons.table_chart_rounded, + 'table_chart_outlined': Icons.table_chart_outlined, + 'table_rows': Icons.table_rows, + 'table_rows_sharp': Icons.table_rows_sharp, + 'table_rows_rounded': Icons.table_rows_rounded, + 'table_rows_outlined': Icons.table_rows_outlined, + 'table_view': Icons.table_view, + 'table_view_sharp': Icons.table_view_sharp, + 'table_view_rounded': Icons.table_view_rounded, + 'table_view_outlined': Icons.table_view_outlined, + 'tablet': Icons.tablet, + 'tablet_sharp': Icons.tablet_sharp, + 'tablet_rounded': Icons.tablet_rounded, + 'tablet_outlined': Icons.tablet_outlined, + 'tablet_android': Icons.tablet_android, + 'tablet_android_sharp': Icons.tablet_android_sharp, + 'tablet_android_rounded': Icons.tablet_android_rounded, + 'tablet_android_outlined': Icons.tablet_android_outlined, + 'tablet_mac': Icons.tablet_mac, + 'tablet_mac_sharp': Icons.tablet_mac_sharp, + 'tablet_mac_rounded': Icons.tablet_mac_rounded, + 'tablet_mac_outlined': Icons.tablet_mac_outlined, + 'tag': Icons.tag, + 'tag_sharp': Icons.tag_sharp, + 'tag_rounded': Icons.tag_rounded, + 'tag_outlined': Icons.tag_outlined, + 'tag_faces': Icons.tag_faces, + 'tag_faces_sharp': Icons.tag_faces_sharp, + 'tag_faces_rounded': Icons.tag_faces_rounded, + 'tag_faces_outlined': Icons.tag_faces_outlined, + 'takeout_dining': Icons.takeout_dining, + 'takeout_dining_sharp': Icons.takeout_dining_sharp, + 'takeout_dining_rounded': Icons.takeout_dining_rounded, + 'takeout_dining_outlined': Icons.takeout_dining_outlined, + 'tap_and_play': Icons.tap_and_play, + 'tap_and_play_sharp': Icons.tap_and_play_sharp, + 'tap_and_play_rounded': Icons.tap_and_play_rounded, + 'tap_and_play_outlined': Icons.tap_and_play_outlined, + 'tapas': Icons.tapas, + 'tapas_sharp': Icons.tapas_sharp, + 'tapas_rounded': Icons.tapas_rounded, + 'tapas_outlined': Icons.tapas_outlined, + 'task': Icons.task, + 'task_sharp': Icons.task_sharp, + 'task_rounded': Icons.task_rounded, + 'task_outlined': Icons.task_outlined, + 'task_alt': Icons.task_alt, + 'task_alt_sharp': Icons.task_alt_sharp, + 'task_alt_rounded': Icons.task_alt_rounded, + 'task_alt_outlined': Icons.task_alt_outlined, + 'taxi_alert': Icons.taxi_alert, + 'taxi_alert_sharp': Icons.taxi_alert_sharp, + 'taxi_alert_rounded': Icons.taxi_alert_rounded, + 'taxi_alert_outlined': Icons.taxi_alert_outlined, + 'terrain': Icons.terrain, + 'terrain_sharp': Icons.terrain_sharp, + 'terrain_rounded': Icons.terrain_rounded, + 'terrain_outlined': Icons.terrain_outlined, + 'text_fields': Icons.text_fields, + 'text_fields_sharp': Icons.text_fields_sharp, + 'text_fields_rounded': Icons.text_fields_rounded, + 'text_fields_outlined': Icons.text_fields_outlined, + 'text_format': Icons.text_format, + 'text_format_sharp': Icons.text_format_sharp, + 'text_format_rounded': Icons.text_format_rounded, + 'text_format_outlined': Icons.text_format_outlined, + 'text_rotate_up': Icons.text_rotate_up, + 'text_rotate_up_sharp': Icons.text_rotate_up_sharp, + 'text_rotate_up_rounded': Icons.text_rotate_up_rounded, + 'text_rotate_up_outlined': Icons.text_rotate_up_outlined, + 'text_rotate_vertical': Icons.text_rotate_vertical, + 'text_rotate_vertical_sharp': Icons.text_rotate_vertical_sharp, + 'text_rotate_vertical_rounded': Icons.text_rotate_vertical_rounded, + 'text_rotate_vertical_outlined': Icons.text_rotate_vertical_outlined, + 'text_rotation_angledown': Icons.text_rotation_angledown, + 'text_rotation_angledown_sharp': Icons.text_rotation_angledown_sharp, + 'text_rotation_angledown_rounded': + Icons.text_rotation_angledown_rounded, + 'text_rotation_angledown_outlined': + Icons.text_rotation_angledown_outlined, + 'text_rotation_angleup': Icons.text_rotation_angleup, + 'text_rotation_angleup_sharp': Icons.text_rotation_angleup_sharp, + 'text_rotation_angleup_rounded': Icons.text_rotation_angleup_rounded, + 'text_rotation_angleup_outlined': Icons.text_rotation_angleup_outlined, + 'text_rotation_down': Icons.text_rotation_down, + 'text_rotation_down_sharp': Icons.text_rotation_down_sharp, + 'text_rotation_down_rounded': Icons.text_rotation_down_rounded, + 'text_rotation_down_outlined': Icons.text_rotation_down_outlined, + 'text_rotation_none': Icons.text_rotation_none, + 'text_rotation_none_sharp': Icons.text_rotation_none_sharp, + 'text_rotation_none_rounded': Icons.text_rotation_none_rounded, + 'text_rotation_none_outlined': Icons.text_rotation_none_outlined, + 'text_snippet': Icons.text_snippet, + 'text_snippet_sharp': Icons.text_snippet_sharp, + 'text_snippet_rounded': Icons.text_snippet_rounded, + 'text_snippet_outlined': Icons.text_snippet_outlined, + 'textsms': Icons.textsms, + 'textsms_sharp': Icons.textsms_sharp, + 'textsms_rounded': Icons.textsms_rounded, + 'textsms_outlined': Icons.textsms_outlined, + 'texture': Icons.texture, + 'texture_sharp': Icons.texture_sharp, + 'texture_rounded': Icons.texture_rounded, + 'texture_outlined': Icons.texture_outlined, + 'theater_comedy': Icons.theater_comedy, + 'theater_comedy_sharp': Icons.theater_comedy_sharp, + 'theater_comedy_rounded': Icons.theater_comedy_rounded, + 'theater_comedy_outlined': Icons.theater_comedy_outlined, + 'theaters': Icons.theaters, + 'theaters_sharp': Icons.theaters_sharp, + 'theaters_rounded': Icons.theaters_rounded, + 'theaters_outlined': Icons.theaters_outlined, + 'thermostat': Icons.thermostat, + 'thermostat_sharp': Icons.thermostat_sharp, + 'thermostat_rounded': Icons.thermostat_rounded, + 'thermostat_outlined': Icons.thermostat_outlined, + 'thermostat_auto': Icons.thermostat_auto, + 'thermostat_auto_sharp': Icons.thermostat_auto_sharp, + 'thermostat_auto_rounded': Icons.thermostat_auto_rounded, + 'thermostat_auto_outlined': Icons.thermostat_auto_outlined, + 'thumb_down': Icons.thumb_down, + 'thumb_down_sharp': Icons.thumb_down_sharp, + 'thumb_down_rounded': Icons.thumb_down_rounded, + 'thumb_down_outlined': Icons.thumb_down_outlined, + 'thumb_down_alt': Icons.thumb_down_alt, + 'thumb_down_alt_sharp': Icons.thumb_down_alt_sharp, + 'thumb_down_alt_rounded': Icons.thumb_down_alt_rounded, + 'thumb_down_alt_outlined': Icons.thumb_down_alt_outlined, + 'thumb_down_off_alt': Icons.thumb_down_off_alt, + 'thumb_down_off_alt_sharp': Icons.thumb_down_off_alt_sharp, + 'thumb_down_off_alt_rounded': Icons.thumb_down_off_alt_rounded, + 'thumb_down_off_alt_outlined': Icons.thumb_down_off_alt_outlined, + 'thumb_up': Icons.thumb_up, + 'thumb_up_sharp': Icons.thumb_up_sharp, + 'thumb_up_rounded': Icons.thumb_up_rounded, + 'thumb_up_outlined': Icons.thumb_up_outlined, + 'thumb_up_alt': Icons.thumb_up_alt, + 'thumb_up_alt_sharp': Icons.thumb_up_alt_sharp, + 'thumb_up_alt_rounded': Icons.thumb_up_alt_rounded, + 'thumb_up_alt_outlined': Icons.thumb_up_alt_outlined, + 'thumb_up_off_alt': Icons.thumb_up_off_alt, + 'thumb_up_off_alt_sharp': Icons.thumb_up_off_alt_sharp, + 'thumb_up_off_alt_rounded': Icons.thumb_up_off_alt_rounded, + 'thumb_up_off_alt_outlined': Icons.thumb_up_off_alt_outlined, + 'thumbs_up_down': Icons.thumbs_up_down, + 'thumbs_up_down_sharp': Icons.thumbs_up_down_sharp, + 'thumbs_up_down_rounded': Icons.thumbs_up_down_rounded, + 'thumbs_up_down_outlined': Icons.thumbs_up_down_outlined, + 'time_to_leave': Icons.time_to_leave, + 'time_to_leave_sharp': Icons.time_to_leave_sharp, + 'time_to_leave_rounded': Icons.time_to_leave_rounded, + 'time_to_leave_outlined': Icons.time_to_leave_outlined, + 'timelapse': Icons.timelapse, + 'timelapse_sharp': Icons.timelapse_sharp, + 'timelapse_rounded': Icons.timelapse_rounded, + 'timelapse_outlined': Icons.timelapse_outlined, + 'timeline': Icons.timeline, + 'timeline_sharp': Icons.timeline_sharp, + 'timeline_rounded': Icons.timeline_rounded, + 'timeline_outlined': Icons.timeline_outlined, + 'timer': Icons.timer, + 'timer_sharp': Icons.timer_sharp, + 'timer_rounded': Icons.timer_rounded, + 'timer_outlined': Icons.timer_outlined, + 'timer_10': Icons.timer_10, + 'timer_10_sharp': Icons.timer_10_sharp, + 'timer_10_rounded': Icons.timer_10_rounded, + 'timer_10_outlined': Icons.timer_10_outlined, + 'timer_10_select': Icons.timer_10_select, + 'timer_10_select_sharp': Icons.timer_10_select_sharp, + 'timer_10_select_rounded': Icons.timer_10_select_rounded, + 'timer_10_select_outlined': Icons.timer_10_select_outlined, + 'timer_3': Icons.timer_3, + 'timer_3_sharp': Icons.timer_3_sharp, + 'timer_3_rounded': Icons.timer_3_rounded, + 'timer_3_outlined': Icons.timer_3_outlined, + 'timer_3_select': Icons.timer_3_select, + 'timer_3_select_sharp': Icons.timer_3_select_sharp, + 'timer_3_select_rounded': Icons.timer_3_select_rounded, + 'timer_3_select_outlined': Icons.timer_3_select_outlined, + 'timer_off': Icons.timer_off, + 'timer_off_sharp': Icons.timer_off_sharp, + 'timer_off_rounded': Icons.timer_off_rounded, + 'timer_off_outlined': Icons.timer_off_outlined, + 'title': Icons.title, + 'title_sharp': Icons.title_sharp, + 'title_rounded': Icons.title_rounded, + 'title_outlined': Icons.title_outlined, + 'toc': Icons.toc, + 'toc_sharp': Icons.toc_sharp, + 'toc_rounded': Icons.toc_rounded, + 'toc_outlined': Icons.toc_outlined, + 'today': Icons.today, + 'today_sharp': Icons.today_sharp, + 'today_rounded': Icons.today_rounded, + 'today_outlined': Icons.today_outlined, + 'toggle_off': Icons.toggle_off, + 'toggle_off_sharp': Icons.toggle_off_sharp, + 'toggle_off_rounded': Icons.toggle_off_rounded, + 'toggle_off_outlined': Icons.toggle_off_outlined, + 'toggle_on': Icons.toggle_on, + 'toggle_on_sharp': Icons.toggle_on_sharp, + 'toggle_on_rounded': Icons.toggle_on_rounded, + 'toggle_on_outlined': Icons.toggle_on_outlined, + 'toll': Icons.toll, + 'toll_sharp': Icons.toll_sharp, + 'toll_rounded': Icons.toll_rounded, + 'toll_outlined': Icons.toll_outlined, + 'tonality': Icons.tonality, + 'tonality_sharp': Icons.tonality_sharp, + 'tonality_rounded': Icons.tonality_rounded, + 'tonality_outlined': Icons.tonality_outlined, + 'topic': Icons.topic, + 'topic_sharp': Icons.topic_sharp, + 'topic_rounded': Icons.topic_rounded, + 'topic_outlined': Icons.topic_outlined, + 'touch_app': Icons.touch_app, + 'touch_app_sharp': Icons.touch_app_sharp, + 'touch_app_rounded': Icons.touch_app_rounded, + 'touch_app_outlined': Icons.touch_app_outlined, + 'tour': Icons.tour, + 'tour_sharp': Icons.tour_sharp, + 'tour_rounded': Icons.tour_rounded, + 'tour_outlined': Icons.tour_outlined, + 'toys': Icons.toys, + 'toys_sharp': Icons.toys_sharp, + 'toys_rounded': Icons.toys_rounded, + 'toys_outlined': Icons.toys_outlined, + 'track_changes': Icons.track_changes, + 'track_changes_sharp': Icons.track_changes_sharp, + 'track_changes_rounded': Icons.track_changes_rounded, + 'track_changes_outlined': Icons.track_changes_outlined, + 'traffic': Icons.traffic, + 'traffic_sharp': Icons.traffic_sharp, + 'traffic_rounded': Icons.traffic_rounded, + 'traffic_outlined': Icons.traffic_outlined, + 'train': Icons.train, + 'train_sharp': Icons.train_sharp, + 'train_rounded': Icons.train_rounded, + 'train_outlined': Icons.train_outlined, + 'tram': Icons.tram, + 'tram_sharp': Icons.tram_sharp, + 'tram_rounded': Icons.tram_rounded, + 'tram_outlined': Icons.tram_outlined, + 'transfer_within_a_station': Icons.transfer_within_a_station, + 'transfer_within_a_station_sharp': + Icons.transfer_within_a_station_sharp, + 'transfer_within_a_station_rounded': + Icons.transfer_within_a_station_rounded, + 'transfer_within_a_station_outlined': + Icons.transfer_within_a_station_outlined, + 'transform': Icons.transform, + 'transform_sharp': Icons.transform_sharp, + 'transform_rounded': Icons.transform_rounded, + 'transform_outlined': Icons.transform_outlined, + 'transgender': Icons.transgender, + 'transgender_sharp': Icons.transgender_sharp, + 'transgender_rounded': Icons.transgender_rounded, + 'transgender_outlined': Icons.transgender_outlined, + 'transit_enterexit': Icons.transit_enterexit, + 'transit_enterexit_sharp': Icons.transit_enterexit_sharp, + 'transit_enterexit_rounded': Icons.transit_enterexit_rounded, + 'transit_enterexit_outlined': Icons.transit_enterexit_outlined, + 'translate': Icons.translate, + 'translate_sharp': Icons.translate_sharp, + 'translate_rounded': Icons.translate_rounded, + 'translate_outlined': Icons.translate_outlined, + 'travel_explore': Icons.travel_explore, + 'travel_explore_sharp': Icons.travel_explore_sharp, + 'travel_explore_rounded': Icons.travel_explore_rounded, + 'travel_explore_outlined': Icons.travel_explore_outlined, + 'trending_down': Icons.trending_down, + 'trending_down_sharp': Icons.trending_down_sharp, + 'trending_down_rounded': Icons.trending_down_rounded, + 'trending_down_outlined': Icons.trending_down_outlined, + 'trending_flat': Icons.trending_flat, + 'trending_flat_sharp': Icons.trending_flat_sharp, + 'trending_flat_rounded': Icons.trending_flat_rounded, + 'trending_flat_outlined': Icons.trending_flat_outlined, + 'trending_neutral': Icons.trending_neutral, + 'trending_neutral_sharp': Icons.trending_neutral_sharp, + 'trending_neutral_rounded': Icons.trending_neutral_rounded, + 'trending_neutral_outlined': Icons.trending_neutral_outlined, + 'trending_up': Icons.trending_up, + 'trending_up_sharp': Icons.trending_up_sharp, + 'trending_up_rounded': Icons.trending_up_rounded, + 'trending_up_outlined': Icons.trending_up_outlined, + 'trip_origin': Icons.trip_origin, + 'trip_origin_sharp': Icons.trip_origin_sharp, + 'trip_origin_rounded': Icons.trip_origin_rounded, + 'trip_origin_outlined': Icons.trip_origin_outlined, + 'try_sms_star': Icons.try_sms_star, + 'try_sms_star_sharp': Icons.try_sms_star_sharp, + 'try_sms_star_rounded': Icons.try_sms_star_rounded, + 'try_sms_star_outlined': Icons.try_sms_star_outlined, + 'tty': Icons.tty, + 'tty_sharp': Icons.tty_sharp, + 'tty_rounded': Icons.tty_rounded, + 'tty_outlined': Icons.tty_outlined, + 'tune': Icons.tune, + 'tune_sharp': Icons.tune_sharp, + 'tune_rounded': Icons.tune_rounded, + 'tune_outlined': Icons.tune_outlined, + 'tungsten': Icons.tungsten, + 'tungsten_sharp': Icons.tungsten_sharp, + 'tungsten_rounded': Icons.tungsten_rounded, + 'tungsten_outlined': Icons.tungsten_outlined, + 'turned_in': Icons.turned_in, + 'turned_in_sharp': Icons.turned_in_sharp, + 'turned_in_rounded': Icons.turned_in_rounded, + 'turned_in_outlined': Icons.turned_in_outlined, + 'turned_in_not': Icons.turned_in_not, + 'turned_in_not_sharp': Icons.turned_in_not_sharp, + 'turned_in_not_rounded': Icons.turned_in_not_rounded, + 'turned_in_not_outlined': Icons.turned_in_not_outlined, + 'tv': Icons.tv, + 'tv_sharp': Icons.tv_sharp, + 'tv_rounded': Icons.tv_rounded, + 'tv_outlined': Icons.tv_outlined, + 'tv_off': Icons.tv_off, + 'tv_off_sharp': Icons.tv_off_sharp, + 'tv_off_rounded': Icons.tv_off_rounded, + 'tv_off_outlined': Icons.tv_off_outlined, + 'two_wheeler': Icons.two_wheeler, + 'two_wheeler_sharp': Icons.two_wheeler_sharp, + 'two_wheeler_rounded': Icons.two_wheeler_rounded, + 'two_wheeler_outlined': Icons.two_wheeler_outlined, + 'umbrella': Icons.umbrella, + 'umbrella_sharp': Icons.umbrella_sharp, + 'umbrella_rounded': Icons.umbrella_rounded, + 'umbrella_outlined': Icons.umbrella_outlined, + 'unarchive': Icons.unarchive, + 'unarchive_sharp': Icons.unarchive_sharp, + 'unarchive_rounded': Icons.unarchive_rounded, + 'unarchive_outlined': Icons.unarchive_outlined, + 'undo': Icons.undo, + 'undo_sharp': Icons.undo_sharp, + 'undo_rounded': Icons.undo_rounded, + 'undo_outlined': Icons.undo_outlined, + 'unfold_less': Icons.unfold_less, + 'unfold_less_sharp': Icons.unfold_less_sharp, + 'unfold_less_rounded': Icons.unfold_less_rounded, + 'unfold_less_outlined': Icons.unfold_less_outlined, + 'unfold_more': Icons.unfold_more, + 'unfold_more_sharp': Icons.unfold_more_sharp, + 'unfold_more_rounded': Icons.unfold_more_rounded, + 'unfold_more_outlined': Icons.unfold_more_outlined, + 'unpublished': Icons.unpublished, + 'unpublished_sharp': Icons.unpublished_sharp, + 'unpublished_rounded': Icons.unpublished_rounded, + 'unpublished_outlined': Icons.unpublished_outlined, + 'unsubscribe': Icons.unsubscribe, + 'unsubscribe_sharp': Icons.unsubscribe_sharp, + 'unsubscribe_rounded': Icons.unsubscribe_rounded, + 'unsubscribe_outlined': Icons.unsubscribe_outlined, + 'upcoming': Icons.upcoming, + 'upcoming_sharp': Icons.upcoming_sharp, + 'upcoming_rounded': Icons.upcoming_rounded, + 'upcoming_outlined': Icons.upcoming_outlined, + 'update': Icons.update, + 'update_sharp': Icons.update_sharp, + 'update_rounded': Icons.update_rounded, + 'update_outlined': Icons.update_outlined, + 'update_disabled': Icons.update_disabled, + 'update_disabled_sharp': Icons.update_disabled_sharp, + 'update_disabled_rounded': Icons.update_disabled_rounded, + 'update_disabled_outlined': Icons.update_disabled_outlined, + 'upgrade': Icons.upgrade, + 'upgrade_sharp': Icons.upgrade_sharp, + 'upgrade_rounded': Icons.upgrade_rounded, + 'upgrade_outlined': Icons.upgrade_outlined, + 'upload': Icons.upload, + 'upload_sharp': Icons.upload_sharp, + 'upload_rounded': Icons.upload_rounded, + 'upload_outlined': Icons.upload_outlined, + 'upload_file': Icons.upload_file, + 'upload_file_sharp': Icons.upload_file_sharp, + 'upload_file_rounded': Icons.upload_file_rounded, + 'upload_file_outlined': Icons.upload_file_outlined, + 'usb': Icons.usb, + 'usb_sharp': Icons.usb_sharp, + 'usb_rounded': Icons.usb_rounded, + 'usb_outlined': Icons.usb_outlined, + 'usb_off': Icons.usb_off, + 'usb_off_sharp': Icons.usb_off_sharp, + 'usb_off_rounded': Icons.usb_off_rounded, + 'usb_off_outlined': Icons.usb_off_outlined, + 'verified': Icons.verified, + 'verified_sharp': Icons.verified_sharp, + 'verified_rounded': Icons.verified_rounded, + 'verified_outlined': Icons.verified_outlined, + 'verified_user': Icons.verified_user, + 'verified_user_sharp': Icons.verified_user_sharp, + 'verified_user_rounded': Icons.verified_user_rounded, + 'verified_user_outlined': Icons.verified_user_outlined, + 'vertical_align_bottom': Icons.vertical_align_bottom, + 'vertical_align_bottom_sharp': Icons.vertical_align_bottom_sharp, + 'vertical_align_bottom_rounded': Icons.vertical_align_bottom_rounded, + 'vertical_align_bottom_outlined': Icons.vertical_align_bottom_outlined, + 'vertical_align_center': Icons.vertical_align_center, + 'vertical_align_center_sharp': Icons.vertical_align_center_sharp, + 'vertical_align_center_rounded': Icons.vertical_align_center_rounded, + 'vertical_align_center_outlined': Icons.vertical_align_center_outlined, + 'vertical_align_top': Icons.vertical_align_top, + 'vertical_align_top_sharp': Icons.vertical_align_top_sharp, + 'vertical_align_top_rounded': Icons.vertical_align_top_rounded, + 'vertical_align_top_outlined': Icons.vertical_align_top_outlined, + 'vertical_distribute': Icons.vertical_distribute, + 'vertical_distribute_sharp': Icons.vertical_distribute_sharp, + 'vertical_distribute_rounded': Icons.vertical_distribute_rounded, + 'vertical_distribute_outlined': Icons.vertical_distribute_outlined, + 'vertical_split': Icons.vertical_split, + 'vertical_split_sharp': Icons.vertical_split_sharp, + 'vertical_split_rounded': Icons.vertical_split_rounded, + 'vertical_split_outlined': Icons.vertical_split_outlined, + 'vibration': Icons.vibration, + 'vibration_sharp': Icons.vibration_sharp, + 'vibration_rounded': Icons.vibration_rounded, + 'vibration_outlined': Icons.vibration_outlined, + 'video_call': Icons.video_call, + 'video_call_sharp': Icons.video_call_sharp, + 'video_call_rounded': Icons.video_call_rounded, + 'video_call_outlined': Icons.video_call_outlined, + 'video_camera_back': Icons.video_camera_back, + 'video_camera_back_sharp': Icons.video_camera_back_sharp, + 'video_camera_back_rounded': Icons.video_camera_back_rounded, + 'video_camera_back_outlined': Icons.video_camera_back_outlined, + 'video_camera_front': Icons.video_camera_front, + 'video_camera_front_sharp': Icons.video_camera_front_sharp, + 'video_camera_front_rounded': Icons.video_camera_front_rounded, + 'video_camera_front_outlined': Icons.video_camera_front_outlined, + 'video_collection': Icons.video_collection, + 'video_collection_sharp': Icons.video_collection_sharp, + 'video_collection_rounded': Icons.video_collection_rounded, + 'video_collection_outlined': Icons.video_collection_outlined, + 'video_label': Icons.video_label, + 'video_label_sharp': Icons.video_label_sharp, + 'video_label_rounded': Icons.video_label_rounded, + 'video_label_outlined': Icons.video_label_outlined, + 'video_library': Icons.video_library, + 'video_library_sharp': Icons.video_library_sharp, + 'video_library_rounded': Icons.video_library_rounded, + 'video_library_outlined': Icons.video_library_outlined, + 'video_settings': Icons.video_settings, + 'video_settings_sharp': Icons.video_settings_sharp, + 'video_settings_rounded': Icons.video_settings_rounded, + 'video_settings_outlined': Icons.video_settings_outlined, + 'video_stable': Icons.video_stable, + 'video_stable_sharp': Icons.video_stable_sharp, + 'video_stable_rounded': Icons.video_stable_rounded, + 'video_stable_outlined': Icons.video_stable_outlined, + 'videocam': Icons.videocam, + 'videocam_sharp': Icons.videocam_sharp, + 'videocam_rounded': Icons.videocam_rounded, + 'videocam_outlined': Icons.videocam_outlined, + 'videocam_off': Icons.videocam_off, + 'videocam_off_sharp': Icons.videocam_off_sharp, + 'videocam_off_rounded': Icons.videocam_off_rounded, + 'videocam_off_outlined': Icons.videocam_off_outlined, + 'videogame_asset': Icons.videogame_asset, + 'videogame_asset_sharp': Icons.videogame_asset_sharp, + 'videogame_asset_rounded': Icons.videogame_asset_rounded, + 'videogame_asset_outlined': Icons.videogame_asset_outlined, + 'videogame_asset_off': Icons.videogame_asset_off, + 'videogame_asset_off_sharp': Icons.videogame_asset_off_sharp, + 'videogame_asset_off_rounded': Icons.videogame_asset_off_rounded, + 'videogame_asset_off_outlined': Icons.videogame_asset_off_outlined, + 'view_agenda': Icons.view_agenda, + 'view_agenda_sharp': Icons.view_agenda_sharp, + 'view_agenda_rounded': Icons.view_agenda_rounded, + 'view_agenda_outlined': Icons.view_agenda_outlined, + 'view_array': Icons.view_array, + 'view_array_sharp': Icons.view_array_sharp, + 'view_array_rounded': Icons.view_array_rounded, + 'view_array_outlined': Icons.view_array_outlined, + 'view_carousel': Icons.view_carousel, + 'view_carousel_sharp': Icons.view_carousel_sharp, + 'view_carousel_rounded': Icons.view_carousel_rounded, + 'view_carousel_outlined': Icons.view_carousel_outlined, + 'view_column': Icons.view_column, + 'view_column_sharp': Icons.view_column_sharp, + 'view_column_rounded': Icons.view_column_rounded, + 'view_column_outlined': Icons.view_column_outlined, + 'view_comfortable': Icons.view_comfortable, + 'view_comfortable_sharp': Icons.view_comfortable_sharp, + 'view_comfortable_rounded': Icons.view_comfortable_rounded, + 'view_comfortable_outlined': Icons.view_comfortable_outlined, + 'view_comfy': Icons.view_comfy, + 'view_comfy_sharp': Icons.view_comfy_sharp, + 'view_comfy_rounded': Icons.view_comfy_rounded, + 'view_comfy_outlined': Icons.view_comfy_outlined, + 'view_compact': Icons.view_compact, + 'view_compact_sharp': Icons.view_compact_sharp, + 'view_compact_rounded': Icons.view_compact_rounded, + 'view_compact_outlined': Icons.view_compact_outlined, + 'view_day': Icons.view_day, + 'view_day_sharp': Icons.view_day_sharp, + 'view_day_rounded': Icons.view_day_rounded, + 'view_day_outlined': Icons.view_day_outlined, + 'view_headline': Icons.view_headline, + 'view_headline_sharp': Icons.view_headline_sharp, + 'view_headline_rounded': Icons.view_headline_rounded, + 'view_headline_outlined': Icons.view_headline_outlined, + 'view_in_ar': Icons.view_in_ar, + 'view_in_ar_sharp': Icons.view_in_ar_sharp, + 'view_in_ar_rounded': Icons.view_in_ar_rounded, + 'view_in_ar_outlined': Icons.view_in_ar_outlined, + 'view_list': Icons.view_list, + 'view_list_sharp': Icons.view_list_sharp, + 'view_list_rounded': Icons.view_list_rounded, + 'view_list_outlined': Icons.view_list_outlined, + 'view_module': Icons.view_module, + 'view_module_sharp': Icons.view_module_sharp, + 'view_module_rounded': Icons.view_module_rounded, + 'view_module_outlined': Icons.view_module_outlined, + 'view_quilt': Icons.view_quilt, + 'view_quilt_sharp': Icons.view_quilt_sharp, + 'view_quilt_rounded': Icons.view_quilt_rounded, + 'view_quilt_outlined': Icons.view_quilt_outlined, + 'view_sidebar': Icons.view_sidebar, + 'view_sidebar_sharp': Icons.view_sidebar_sharp, + 'view_sidebar_rounded': Icons.view_sidebar_rounded, + 'view_sidebar_outlined': Icons.view_sidebar_outlined, + 'view_stream': Icons.view_stream, + 'view_stream_sharp': Icons.view_stream_sharp, + 'view_stream_rounded': Icons.view_stream_rounded, + 'view_stream_outlined': Icons.view_stream_outlined, + 'view_week': Icons.view_week, + 'view_week_sharp': Icons.view_week_sharp, + 'view_week_rounded': Icons.view_week_rounded, + 'view_week_outlined': Icons.view_week_outlined, + 'vignette': Icons.vignette, + 'vignette_sharp': Icons.vignette_sharp, + 'vignette_rounded': Icons.vignette_rounded, + 'vignette_outlined': Icons.vignette_outlined, + 'villa': Icons.villa, + 'villa_sharp': Icons.villa_sharp, + 'villa_rounded': Icons.villa_rounded, + 'villa_outlined': Icons.villa_outlined, + 'visibility': Icons.visibility, + 'visibility_sharp': Icons.visibility_sharp, + 'visibility_rounded': Icons.visibility_rounded, + 'visibility_outlined': Icons.visibility_outlined, + 'visibility_off': Icons.visibility_off, + 'visibility_off_sharp': Icons.visibility_off_sharp, + 'visibility_off_rounded': Icons.visibility_off_rounded, + 'visibility_off_outlined': Icons.visibility_off_outlined, + 'voice_chat': Icons.voice_chat, + 'voice_chat_sharp': Icons.voice_chat_sharp, + 'voice_chat_rounded': Icons.voice_chat_rounded, + 'voice_chat_outlined': Icons.voice_chat_outlined, + 'voice_over_off': Icons.voice_over_off, + 'voice_over_off_sharp': Icons.voice_over_off_sharp, + 'voice_over_off_rounded': Icons.voice_over_off_rounded, + 'voice_over_off_outlined': Icons.voice_over_off_outlined, + 'voicemail': Icons.voicemail, + 'voicemail_sharp': Icons.voicemail_sharp, + 'voicemail_rounded': Icons.voicemail_rounded, + 'voicemail_outlined': Icons.voicemail_outlined, + 'volume_down': Icons.volume_down, + 'volume_down_sharp': Icons.volume_down_sharp, + 'volume_down_rounded': Icons.volume_down_rounded, + 'volume_down_outlined': Icons.volume_down_outlined, + 'volume_mute': Icons.volume_mute, + 'volume_mute_sharp': Icons.volume_mute_sharp, + 'volume_mute_rounded': Icons.volume_mute_rounded, + 'volume_mute_outlined': Icons.volume_mute_outlined, + 'volume_off': Icons.volume_off, + 'volume_off_sharp': Icons.volume_off_sharp, + 'volume_off_rounded': Icons.volume_off_rounded, + 'volume_off_outlined': Icons.volume_off_outlined, + 'volume_up': Icons.volume_up, + 'volume_up_sharp': Icons.volume_up_sharp, + 'volume_up_rounded': Icons.volume_up_rounded, + 'volume_up_outlined': Icons.volume_up_outlined, + 'volunteer_activism': Icons.volunteer_activism, + 'volunteer_activism_sharp': Icons.volunteer_activism_sharp, + 'volunteer_activism_rounded': Icons.volunteer_activism_rounded, + 'volunteer_activism_outlined': Icons.volunteer_activism_outlined, + 'vpn_key': Icons.vpn_key, + 'vpn_key_sharp': Icons.vpn_key_sharp, + 'vpn_key_rounded': Icons.vpn_key_rounded, + 'vpn_key_outlined': Icons.vpn_key_outlined, + 'vpn_lock': Icons.vpn_lock, + 'vpn_lock_sharp': Icons.vpn_lock_sharp, + 'vpn_lock_rounded': Icons.vpn_lock_rounded, + 'vpn_lock_outlined': Icons.vpn_lock_outlined, + 'vrpano': Icons.vrpano, + 'vrpano_sharp': Icons.vrpano_sharp, + 'vrpano_rounded': Icons.vrpano_rounded, + 'vrpano_outlined': Icons.vrpano_outlined, + 'wallet_giftcard': Icons.wallet_giftcard, + 'wallet_giftcard_sharp': Icons.wallet_giftcard_sharp, + 'wallet_giftcard_rounded': Icons.wallet_giftcard_rounded, + 'wallet_giftcard_outlined': Icons.wallet_giftcard_outlined, + 'wallet_membership': Icons.wallet_membership, + 'wallet_membership_sharp': Icons.wallet_membership_sharp, + 'wallet_membership_rounded': Icons.wallet_membership_rounded, + 'wallet_membership_outlined': Icons.wallet_membership_outlined, + 'wallet_travel': Icons.wallet_travel, + 'wallet_travel_sharp': Icons.wallet_travel_sharp, + 'wallet_travel_rounded': Icons.wallet_travel_rounded, + 'wallet_travel_outlined': Icons.wallet_travel_outlined, + 'wallpaper': Icons.wallpaper, + 'wallpaper_sharp': Icons.wallpaper_sharp, + 'wallpaper_rounded': Icons.wallpaper_rounded, + 'wallpaper_outlined': Icons.wallpaper_outlined, + 'warning': Icons.warning, + 'warning_sharp': Icons.warning_sharp, + 'warning_rounded': Icons.warning_rounded, + 'warning_outlined': Icons.warning_outlined, + 'warning_amber': Icons.warning_amber, + 'warning_amber_sharp': Icons.warning_amber_sharp, + 'warning_amber_rounded': Icons.warning_amber_rounded, + 'warning_amber_outlined': Icons.warning_amber_outlined, + 'wash': Icons.wash, + 'wash_sharp': Icons.wash_sharp, + 'wash_rounded': Icons.wash_rounded, + 'wash_outlined': Icons.wash_outlined, + 'watch': Icons.watch, + 'watch_sharp': Icons.watch_sharp, + 'watch_rounded': Icons.watch_rounded, + 'watch_outlined': Icons.watch_outlined, + 'watch_later': Icons.watch_later, + 'watch_later_sharp': Icons.watch_later_sharp, + 'watch_later_rounded': Icons.watch_later_rounded, + 'watch_later_outlined': Icons.watch_later_outlined, + 'water': Icons.water, + 'water_sharp': Icons.water_sharp, + 'water_rounded': Icons.water_rounded, + 'water_outlined': Icons.water_outlined, + 'water_damage': Icons.water_damage, + 'water_damage_sharp': Icons.water_damage_sharp, + 'water_damage_rounded': Icons.water_damage_rounded, + 'water_damage_outlined': Icons.water_damage_outlined, + 'waterfall_chart': Icons.waterfall_chart, + 'waterfall_chart_sharp': Icons.waterfall_chart_sharp, + 'waterfall_chart_rounded': Icons.waterfall_chart_rounded, + 'waterfall_chart_outlined': Icons.waterfall_chart_outlined, + 'waves': Icons.waves, + 'waves_sharp': Icons.waves_sharp, + 'waves_rounded': Icons.waves_rounded, + 'waves_outlined': Icons.waves_outlined, + 'wb_auto': Icons.wb_auto, + 'wb_auto_sharp': Icons.wb_auto_sharp, + 'wb_auto_rounded': Icons.wb_auto_rounded, + 'wb_auto_outlined': Icons.wb_auto_outlined, + 'wb_cloudy': Icons.wb_cloudy, + 'wb_cloudy_sharp': Icons.wb_cloudy_sharp, + 'wb_cloudy_rounded': Icons.wb_cloudy_rounded, + 'wb_cloudy_outlined': Icons.wb_cloudy_outlined, + 'wb_incandescent': Icons.wb_incandescent, + 'wb_incandescent_sharp': Icons.wb_incandescent_sharp, + 'wb_incandescent_rounded': Icons.wb_incandescent_rounded, + 'wb_incandescent_outlined': Icons.wb_incandescent_outlined, + 'wb_iridescent': Icons.wb_iridescent, + 'wb_iridescent_sharp': Icons.wb_iridescent_sharp, + 'wb_iridescent_rounded': Icons.wb_iridescent_rounded, + 'wb_iridescent_outlined': Icons.wb_iridescent_outlined, + 'wb_shade': Icons.wb_shade, + 'wb_shade_sharp': Icons.wb_shade_sharp, + 'wb_shade_rounded': Icons.wb_shade_rounded, + 'wb_shade_outlined': Icons.wb_shade_outlined, + 'wb_sunny': Icons.wb_sunny, + 'wb_sunny_sharp': Icons.wb_sunny_sharp, + 'wb_sunny_rounded': Icons.wb_sunny_rounded, + 'wb_sunny_outlined': Icons.wb_sunny_outlined, + 'wb_twighlight': Icons.wb_twighlight, + 'wb_twilight': Icons.wb_twilight, + 'wb_twilight_sharp': Icons.wb_twilight_sharp, + 'wb_twilight_rounded': Icons.wb_twilight_rounded, + 'wb_twilight_outlined': Icons.wb_twilight_outlined, + 'wc': Icons.wc, + 'wc_sharp': Icons.wc_sharp, + 'wc_rounded': Icons.wc_rounded, + 'wc_outlined': Icons.wc_outlined, + 'web': Icons.web, + 'web_sharp': Icons.web_sharp, + 'web_rounded': Icons.web_rounded, + 'web_outlined': Icons.web_outlined, + 'web_asset': Icons.web_asset, + 'web_asset_sharp': Icons.web_asset_sharp, + 'web_asset_rounded': Icons.web_asset_rounded, + 'web_asset_outlined': Icons.web_asset_outlined, + 'web_asset_off': Icons.web_asset_off, + 'web_asset_off_sharp': Icons.web_asset_off_sharp, + 'web_asset_off_rounded': Icons.web_asset_off_rounded, + 'web_asset_off_outlined': Icons.web_asset_off_outlined, + 'web_stories': Icons.web_stories, + 'weekend': Icons.weekend, + 'weekend_sharp': Icons.weekend_sharp, + 'weekend_rounded': Icons.weekend_rounded, + 'weekend_outlined': Icons.weekend_outlined, + 'west': Icons.west, + 'west_sharp': Icons.west_sharp, + 'west_rounded': Icons.west_rounded, + 'west_outlined': Icons.west_outlined, + 'whatshot': Icons.whatshot, + 'whatshot_sharp': Icons.whatshot_sharp, + 'whatshot_rounded': Icons.whatshot_rounded, + 'whatshot_outlined': Icons.whatshot_outlined, + 'wheelchair_pickup': Icons.wheelchair_pickup, + 'wheelchair_pickup_sharp': Icons.wheelchair_pickup_sharp, + 'wheelchair_pickup_rounded': Icons.wheelchair_pickup_rounded, + 'wheelchair_pickup_outlined': Icons.wheelchair_pickup_outlined, + 'where_to_vote': Icons.where_to_vote, + 'where_to_vote_sharp': Icons.where_to_vote_sharp, + 'where_to_vote_rounded': Icons.where_to_vote_rounded, + 'where_to_vote_outlined': Icons.where_to_vote_outlined, + 'widgets': Icons.widgets, + 'widgets_sharp': Icons.widgets_sharp, + 'widgets_rounded': Icons.widgets_rounded, + 'widgets_outlined': Icons.widgets_outlined, + 'wifi': Icons.wifi, + 'wifi_sharp': Icons.wifi_sharp, + 'wifi_rounded': Icons.wifi_rounded, + 'wifi_outlined': Icons.wifi_outlined, + 'wifi_calling': Icons.wifi_calling, + 'wifi_calling_sharp': Icons.wifi_calling_sharp, + 'wifi_calling_rounded': Icons.wifi_calling_rounded, + 'wifi_calling_outlined': Icons.wifi_calling_outlined, + 'wifi_calling_3': Icons.wifi_calling_3, + 'wifi_calling_3_sharp': Icons.wifi_calling_3_sharp, + 'wifi_calling_3_rounded': Icons.wifi_calling_3_rounded, + 'wifi_calling_3_outlined': Icons.wifi_calling_3_outlined, + 'wifi_lock': Icons.wifi_lock, + 'wifi_lock_sharp': Icons.wifi_lock_sharp, + 'wifi_lock_rounded': Icons.wifi_lock_rounded, + 'wifi_lock_outlined': Icons.wifi_lock_outlined, + 'wifi_off': Icons.wifi_off, + 'wifi_off_sharp': Icons.wifi_off_sharp, + 'wifi_off_rounded': Icons.wifi_off_rounded, + 'wifi_off_outlined': Icons.wifi_off_outlined, + 'wifi_protected_setup': Icons.wifi_protected_setup, + 'wifi_protected_setup_sharp': Icons.wifi_protected_setup_sharp, + 'wifi_protected_setup_rounded': Icons.wifi_protected_setup_rounded, + 'wifi_protected_setup_outlined': Icons.wifi_protected_setup_outlined, + 'wifi_tethering': Icons.wifi_tethering, + 'wifi_tethering_sharp': Icons.wifi_tethering_sharp, + 'wifi_tethering_rounded': Icons.wifi_tethering_rounded, + 'wifi_tethering_outlined': Icons.wifi_tethering_outlined, + 'wifi_tethering_error_rounded': Icons.wifi_tethering_error_rounded, + 'wifi_tethering_error_rounded_sharp': + Icons.wifi_tethering_error_rounded_sharp, + 'wifi_tethering_error_rounded_rounded': + Icons.wifi_tethering_error_rounded_rounded, + 'wifi_tethering_error_rounded_outlined': + Icons.wifi_tethering_error_rounded_outlined, + 'wifi_tethering_off': Icons.wifi_tethering_off, + 'wifi_tethering_off_sharp': Icons.wifi_tethering_off_sharp, + 'wifi_tethering_off_rounded': Icons.wifi_tethering_off_rounded, + 'wifi_tethering_off_outlined': Icons.wifi_tethering_off_outlined, + 'window': Icons.window, + 'window_sharp': Icons.window_sharp, + 'window_rounded': Icons.window_rounded, + 'window_outlined': Icons.window_outlined, + 'wine_bar': Icons.wine_bar, + 'wine_bar_sharp': Icons.wine_bar_sharp, + 'wine_bar_rounded': Icons.wine_bar_rounded, + 'wine_bar_outlined': Icons.wine_bar_outlined, + 'work': Icons.work, + 'work_sharp': Icons.work_sharp, + 'work_rounded': Icons.work_rounded, + 'work_outlined': Icons.work_outlined, + 'work_off': Icons.work_off, + 'work_off_sharp': Icons.work_off_sharp, + 'work_off_rounded': Icons.work_off_rounded, + 'work_off_outlined': Icons.work_off_outlined, + 'work_outline': Icons.work_outline, + 'work_outline_sharp': Icons.work_outline_sharp, + 'work_outline_rounded': Icons.work_outline_rounded, + 'work_outline_outlined': Icons.work_outline_outlined, + 'workspaces': Icons.workspaces, + 'workspaces_sharp': Icons.workspaces_sharp, + 'workspaces_rounded': Icons.workspaces_rounded, + 'workspaces_outlined': Icons.workspaces_outlined, + 'workspaces_filled': Icons.workspaces_filled, + 'workspaces_outline': Icons.workspaces_outline, + 'wrap_text': Icons.wrap_text, + 'wrap_text_sharp': Icons.wrap_text_sharp, + 'wrap_text_rounded': Icons.wrap_text_rounded, + 'wrap_text_outlined': Icons.wrap_text_outlined, + 'wrong_location': Icons.wrong_location, + 'wrong_location_sharp': Icons.wrong_location_sharp, + 'wrong_location_rounded': Icons.wrong_location_rounded, + 'wrong_location_outlined': Icons.wrong_location_outlined, + 'wysiwyg': Icons.wysiwyg, + 'wysiwyg_sharp': Icons.wysiwyg_sharp, + 'wysiwyg_rounded': Icons.wysiwyg_rounded, + 'wysiwyg_outlined': Icons.wysiwyg_outlined, + 'yard': Icons.yard, + 'yard_sharp': Icons.yard_sharp, + 'yard_rounded': Icons.yard_rounded, + 'yard_outlined': Icons.yard_outlined, + 'youtube_searched_for': Icons.youtube_searched_for, + 'youtube_searched_for_sharp': Icons.youtube_searched_for_sharp, + 'youtube_searched_for_rounded': Icons.youtube_searched_for_rounded, + 'youtube_searched_for_outlined': Icons.youtube_searched_for_outlined, + 'zoom_in': Icons.zoom_in, + 'zoom_in_sharp': Icons.zoom_in_sharp, + 'zoom_in_rounded': Icons.zoom_in_rounded, + 'zoom_in_outlined': Icons.zoom_in_outlined, + 'zoom_out': Icons.zoom_out, + 'zoom_out_sharp': Icons.zoom_out_sharp, + 'zoom_out_rounded': Icons.zoom_out_rounded, + 'zoom_out_outlined': Icons.zoom_out_outlined, + 'zoom_out_map': Icons.zoom_out_map, + 'zoom_out_map_sharp': Icons.zoom_out_map_sharp, + 'zoom_out_map_rounded': Icons.zoom_out_map_rounded, + 'zoom_out_map_outlined': Icons.zoom_out_map_outlined, + }, + 'MaterialApp': (props) => MaterialApp( + key: props['key'], + navigatorKey: props['navigatorKey'], + scaffoldMessengerKey: props['scaffoldMessengerKey'], + home: props['home'], + routes: props['routes'] ?? const {}, + initialRoute: props['initialRoute'], + onGenerateRoute: props['onGenerateRoute'], + onGenerateInitialRoutes: props['onGenerateInitialRoutes'], + onUnknownRoute: props['onUnknownRoute'], + navigatorObservers: + as(props['navigatorObservers']) ?? const [], + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + color: props['color'], + theme: props['theme'], + darkTheme: props['darkTheme'], + highContrastTheme: props['highContrastTheme'], + highContrastDarkTheme: props['highContrastDarkTheme'], + themeMode: props['themeMode'] ?? ThemeMode.system, + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: + props['supportedLocales'] ?? const [Locale('en', 'US')], + debugShowMaterialGrid: props['debugShowMaterialGrid'] ?? false, + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: + props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: + props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowCheckedModeBanner: + props['debugShowCheckedModeBanner'] ?? true, + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + scrollBehavior: props['scrollBehavior'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'MaterialApp.router': (props) => MaterialApp.router( + key: props['key'], + scaffoldMessengerKey: props['scaffoldMessengerKey'], + routeInformationProvider: props['routeInformationProvider'], + routeInformationParser: props['routeInformationParser'], + routerDelegate: props['routerDelegate'], + backButtonDispatcher: props['backButtonDispatcher'], + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + color: props['color'], + theme: props['theme'], + darkTheme: props['darkTheme'], + highContrastTheme: props['highContrastTheme'], + highContrastDarkTheme: props['highContrastDarkTheme'], + themeMode: props['themeMode'] ?? ThemeMode.system, + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: + props['supportedLocales'] ?? const [Locale('en', 'US')], + debugShowMaterialGrid: props['debugShowMaterialGrid'] ?? false, + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: + props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: + props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowCheckedModeBanner: + props['debugShowCheckedModeBanner'] ?? true, + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + scrollBehavior: props['scrollBehavior'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'MaterialApp.createMaterialHeroController': (props) => + MaterialApp.createMaterialHeroController(), + 'ThemeMode': { + 'values': ThemeMode.values, + 'system': ThemeMode.system, + 'light': ThemeMode.light, + 'dark': ThemeMode.dark, + }, + 'BottomNavigationBar': (props) => BottomNavigationBar( + key: props['key'], + items: as(props['items'])!, + onTap: props['onTap'], + currentIndex: props['currentIndex'] ?? 0, + elevation: props['elevation']?.toDouble(), + type: props['type'], + fixedColor: props['fixedColor'], + backgroundColor: props['backgroundColor'], + iconSize: props['iconSize']?.toDouble() ?? 24.0, + selectedItemColor: props['selectedItemColor'], + unselectedItemColor: props['unselectedItemColor'], + selectedIconTheme: props['selectedIconTheme'], + unselectedIconTheme: props['unselectedIconTheme'], + selectedFontSize: props['selectedFontSize']?.toDouble() ?? 14.0, + unselectedFontSize: props['unselectedFontSize']?.toDouble() ?? 12.0, + selectedLabelStyle: props['selectedLabelStyle'], + unselectedLabelStyle: props['unselectedLabelStyle'], + showSelectedLabels: props['showSelectedLabels'], + showUnselectedLabels: props['showUnselectedLabels'], + mouseCursor: props['mouseCursor'], + enableFeedback: props['enableFeedback'], + landscapeLayout: props['landscapeLayout'], + ), + 'BottomNavigationBarType': { + 'values': BottomNavigationBarType.values, + 'fixed': BottomNavigationBarType.fixed, + 'shifting': BottomNavigationBarType.shifting, + }, + 'BottomNavigationBarLandscapeLayout': { + 'values': BottomNavigationBarLandscapeLayout.values, + 'spread': BottomNavigationBarLandscapeLayout.spread, + 'centered': BottomNavigationBarLandscapeLayout.centered, + 'linear': BottomNavigationBarLandscapeLayout.linear, + }, + 'ButtonStyle.lerp': (props) => ButtonStyle.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Scrollbar': (props) => Scrollbar( + key: props['key'], + child: props['child'], + controller: props['controller'], + thumbVisibility: props['thumbVisibility'] ?? false, + showTrackOnHover: props['showTrackOnHover'], + trackVisibility: props['trackVisibility'] ?? false, + thickness: props['thickness']?.toDouble(), + radius: props['radius'], + notificationPredicate: props['notificationPredicate'], + interactive: props['interactive'], + scrollbarOrientation: props['scrollbarOrientation'], + ), + 'Switch': (props) => Switch( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + activeColor: props['activeColor'], + activeTrackColor: props['activeTrackColor'], + inactiveThumbColor: props['inactiveThumbColor'], + inactiveTrackColor: props['inactiveTrackColor'], + activeThumbImage: props['activeThumbImage'], + onActiveThumbImageError: props['onActiveThumbImageError'], + inactiveThumbImage: props['inactiveThumbImage'], + onInactiveThumbImageError: props['onInactiveThumbImageError'], + thumbColor: props['thumbColor'], + trackColor: props['trackColor'], + materialTapTargetSize: props['materialTapTargetSize'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + mouseCursor: props['mouseCursor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + overlayColor: props['overlayColor'], + splashRadius: props['splashRadius']?.toDouble(), + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + ), + 'Switch.adaptive': (props) => Switch.adaptive( + key: props['key'], + value: props['value'], + onChanged: props['onChanged'], + activeColor: props['activeColor'], + activeTrackColor: props['activeTrackColor'], + inactiveThumbColor: props['inactiveThumbColor'], + inactiveTrackColor: props['inactiveTrackColor'], + activeThumbImage: props['activeThumbImage'], + onActiveThumbImageError: props['onActiveThumbImageError'], + inactiveThumbImage: props['inactiveThumbImage'], + onInactiveThumbImageError: props['onInactiveThumbImageError'], + materialTapTargetSize: props['materialTapTargetSize'], + thumbColor: props['thumbColor'], + trackColor: props['trackColor'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + mouseCursor: props['mouseCursor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + overlayColor: props['overlayColor'], + splashRadius: props['splashRadius']?.toDouble(), + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + ), + 'FlexibleSpaceBar': (props) => FlexibleSpaceBar( + key: props['key'], + title: props['title'], + background: props['background'], + centerTitle: props['centerTitle'], + titlePadding: props['titlePadding'], + collapseMode: props['collapseMode'] ?? CollapseMode.parallax, + stretchModes: as(props['stretchModes']) ?? + const [StretchMode.zoomBackground], + ), + 'FlexibleSpaceBar.createSettings': (props) => + FlexibleSpaceBar.createSettings( + toolbarOpacity: props['toolbarOpacity']?.toDouble(), + minExtent: props['minExtent']?.toDouble(), + maxExtent: props['maxExtent']?.toDouble(), + isScrolledUnder: props['isScrolledUnder'], + currentExtent: props['currentExtent']?.toDouble(), + child: props['child'], + ), + 'CollapseMode': { + 'values': CollapseMode.values, + 'parallax': CollapseMode.parallax, + 'pin': CollapseMode.pin, + 'none': CollapseMode.none, + }, + 'StretchMode': { + 'values': StretchMode.values, + 'zoomBackground': StretchMode.zoomBackground, + 'blurBackground': StretchMode.blurBackground, + 'fadeTitle': StretchMode.fadeTitle, + }, + 'DividerThemeData.lerp': (props) => DividerThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'DividerTheme.of': (props) => DividerTheme.of( + props['pa'][0], + ), + 'AnimatedIcon': (props) => AnimatedIcon( + key: props['key'], + icon: props['icon'], + progress: props['progress'], + color: props['color'], + size: props['size']?.toDouble(), + semanticLabel: props['semanticLabel'], + textDirection: props['textDirection'], + ), + 'SnackBarThemeData.lerp': (props) => SnackBarThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'SnackBarBehavior': { + 'values': SnackBarBehavior.values, + 'fixed': SnackBarBehavior.fixed, + 'floating': SnackBarBehavior.floating, + }, + 'DateUtils.dateOnly': (props) => DateUtils.dateOnly( + props['pa'][0], + ), + 'DateUtils.datesOnly': (props) => DateUtils.datesOnly( + props['pa'][0], + ), + 'DateUtils.isSameDay': (props) => DateUtils.isSameDay( + props['pa'][0], + props['pa'][1], + ), + 'DateUtils.isSameMonth': (props) => DateUtils.isSameMonth( + props['pa'][0], + props['pa'][1], + ), + 'DateUtils.monthDelta': (props) => DateUtils.monthDelta( + props['pa'][0], + props['pa'][1], + ), + 'DateUtils.addMonthsToMonthDate': (props) => + DateUtils.addMonthsToMonthDate( + props['pa'][0], + props['pa'][1], + ), + 'DateUtils.addDaysToDate': (props) => DateUtils.addDaysToDate( + props['pa'][0], + props['pa'][1], + ), + 'DateUtils.firstDayOffset': (props) => DateUtils.firstDayOffset( + props['pa'][0], + props['pa'][1], + props['pa'][2], + ), + 'DateUtils.getDaysInMonth': (props) => DateUtils.getDaysInMonth( + props['pa'][0], + props['pa'][1], + ), + 'DatePickerEntryMode': { + 'values': DatePickerEntryMode.values, + 'calendar': DatePickerEntryMode.calendar, + 'input': DatePickerEntryMode.input, + 'calendarOnly': DatePickerEntryMode.calendarOnly, + 'inputOnly': DatePickerEntryMode.inputOnly, + }, + 'DatePickerMode': { + 'values': DatePickerMode.values, + 'day': DatePickerMode.day, + 'year': DatePickerMode.year, + }, + 'Drawer': (props) => Drawer( + key: props['key'], + elevation: props['elevation']?.toDouble() ?? 16.0, + child: props['child'], + semanticLabel: props['semanticLabel'], + ), + 'DrawerController': (props) => DrawerController( + key: props['key'], + child: props['child'], + alignment: props['alignment'], + isDrawerOpen: props['isDrawerOpen'] ?? false, + drawerCallback: props['drawerCallback'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + scrimColor: props['scrimColor'], + edgeDragWidth: props['edgeDragWidth']?.toDouble(), + enableOpenDragGesture: props['enableOpenDragGesture'] ?? true, + ), + 'DrawerController#drawerCallback': (props) => ( + bool isOpened, + ) { + return (props['block']); + }, + 'DrawerAlignment': { + 'values': DrawerAlignment.values, + 'start': DrawerAlignment.start, + 'end': DrawerAlignment.end, + }, + 'MergeableMaterial': (props) => MergeableMaterial( + key: props['key'], + mainAxis: props['mainAxis'] ?? Axis.vertical, + elevation: props['elevation']?.toDouble() ?? 2, + hasDividers: props['hasDividers'] ?? false, + children: as(props['children']) ?? + const [], + dividerColor: props['dividerColor'], + ), + 'MaterialState': { + 'values': MaterialState.values, + 'hovered': MaterialState.hovered, + 'focused': MaterialState.focused, + 'pressed': MaterialState.pressed, + 'dragged': MaterialState.dragged, + 'selected': MaterialState.selected, + 'scrolledUnder': MaterialState.scrolledUnder, + 'disabled': MaterialState.disabled, + 'error': MaterialState.error, + }, +}; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$p.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$p.dart new file mode 100644 index 00000000..e7077e02 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$p.dart @@ -0,0 +1,512 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/material.dart'; +import 'utils.dart'; + +var p = () => { + 'BoxShadow': (props) => BoxShadow( + color: props['color']?? const Color(0xFF000000), + offset: props['offset']?? Offset.zero, + blurRadius: props['blurRadius'].toDouble(), + spreadRadius: props['spreadRadius'], + blurStyle: props['blurStyle']??BlurStyle.normal, + ), + 'BoxShadow.lerp': (props) => BoxShadow.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BoxShadow.lerpList': (props) => BoxShadow.lerpList( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'PlaceholderDimensions': { + 'empty': PlaceholderDimensions.empty, + }, + 'TextOverflow': { + 'values': TextOverflow.values, + 'clip': TextOverflow.clip, + 'fade': TextOverflow.fade, + 'ellipsis': TextOverflow.ellipsis, + 'visible': TextOverflow.visible, + }, + 'TextWidthBasis': { + 'values': TextWidthBasis.values, + 'parent': TextWidthBasis.parent, + 'longestLine': TextWidthBasis.longestLine, + }, + 'LinearGradient': (props) => LinearGradient( + colors: as(props["colors"])!, + begin: props['begin'] ?? Alignment.centerLeft, + end: props['end'] ?? Alignment.centerRight, + stops: as(props['stops']), + tileMode: props['tileMode'] ?? TileMode.clamp, + transform: props['transform'], + ), + 'LinearGradient.lerp': (props) => LinearGradient.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'RadialGradient.lerp': (props) => RadialGradient.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'SweepGradient.lerp': (props) => SweepGradient.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'StrutStyle': { + 'disabled': StrutStyle.disabled, + }, + 'DecorationImage': (props) => DecorationImage( + image: props['image'], + onError: props['onError'], + colorFilter: props['colorFilter'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + centerSlice: props['centerSlice'], + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + matchTextDirection: props['matchTextDirection'] ?? false, + scale: props['scale']?.toDouble() ?? 1.0, + opacity: props['opacity']?.toDouble() ?? 1.0, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + invertColors: props['invertColors'] ?? false, + isAntiAlias: props['isAntiAlias'] ?? false, + ), + 'DecorationImage#onError': (props) => ( + Object exception, + StackTrace stackTrace, + ) { + return (props['block']); + }, + 'ImageRepeat': { + 'values': ImageRepeat.values, + 'repeat': ImageRepeat.repeat, + 'repeatX': ImageRepeat.repeatX, + 'repeatY': ImageRepeat.repeatY, + 'noRepeat': ImageRepeat.noRepeat, + }, + 'AssetImage': (props) => AssetImage( + props['pa'][0], + bundle: props['bundle'], + package: props['package'], + ), + 'EdgeInsets.fromLTRB': (props) => EdgeInsets.fromLTRB( + props['pa'][0]?.toDouble(), + props['pa'][1]?.toDouble(), + props['pa'][2]?.toDouble(), + props['pa'][3]?.toDouble(), + ), + 'EdgeInsets.all': (props) => EdgeInsets.all( + props['pa'][0]?.toDouble(), + ), + 'EdgeInsets.only': (props) => EdgeInsets.only( + left: props['left']?.toDouble() ?? 0.0, + top: props['top']?.toDouble() ?? 0.0, + right: props['right']?.toDouble() ?? 0.0, + bottom: props['bottom']?.toDouble() ?? 0.0, + ), + 'EdgeInsets.symmetric': (props) => EdgeInsets.symmetric( + vertical: props['vertical']?.toDouble() ?? 0.0, + horizontal: props['horizontal']?.toDouble() ?? 0.0, + ), + 'EdgeInsets.fromWindowPadding': (props) => EdgeInsets.fromWindowPadding( + props['pa'][0], + props['pa'][1]?.toDouble(), + ), + 'EdgeInsets.zero': EdgeInsets.zero, + 'EdgeInsets.lerp': (props) => EdgeInsets.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'EdgeInsetsDirectional': { + 'zero': EdgeInsetsDirectional.zero, + }, + 'EdgeInsetsDirectional.lerp': (props) => EdgeInsetsDirectional.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ShapeDecoration.lerp': (props) => ShapeDecoration.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'InlineSpanSemanticsInformation': { + 'placeholder': InlineSpanSemanticsInformation.placeholder, + }, + 'MatrixUtils.getAsTranslation': (props) => MatrixUtils.getAsTranslation( + props['pa'][0], + ), + 'MatrixUtils.getAsScale': (props) => MatrixUtils.getAsScale( + props['pa'][0], + ), + 'MatrixUtils.matrixEquals': (props) => MatrixUtils.matrixEquals( + props['pa'][0], + props['pa'][1], + ), + 'MatrixUtils.isIdentity': (props) => MatrixUtils.isIdentity( + props['pa'][0], + ), + 'MatrixUtils.transformPoint': (props) => MatrixUtils.transformPoint( + props['pa'][0], + props['pa'][1], + ), + 'MatrixUtils.transformRect': (props) => MatrixUtils.transformRect( + props['pa'][0], + props['pa'][1], + ), + 'MatrixUtils.inverseTransformRect': (props) => MatrixUtils.inverseTransformRect( + props['pa'][0], + props['pa'][1], + ), + 'MatrixUtils.createCylindricalProjectionTransform': (props) => MatrixUtils.createCylindricalProjectionTransform( + radius: props['radius']?.toDouble(), + angle: props['angle']?.toDouble(), + perspective: props['perspective']?.toDouble() ?? 0.001, + orientation: props['orientation'] ?? Axis.vertical, + ), + 'MatrixUtils.forceToPoint': (props) => MatrixUtils.forceToPoint( + props['pa'][0], + ), + 'BoxFit': { + 'values': BoxFit.values, + 'fill': BoxFit.fill, + 'contain': BoxFit.contain, + 'cover': BoxFit.cover, + 'fitWidth': BoxFit.fitWidth, + 'fitHeight': BoxFit.fitHeight, + 'none': BoxFit.none, + 'scaleDown': BoxFit.scaleDown, + }, + 'FractionalOffset': (props) => FractionalOffset( + props['pa'][0]?.toDouble(), + props['pa'][1]?.toDouble(), + ), + 'FractionalOffset.fromOffsetAndSize': (props) => FractionalOffset.fromOffsetAndSize( + props['pa'][0], + props['pa'][1], + ), + 'FractionalOffset.fromOffsetAndRect': (props) => FractionalOffset.fromOffsetAndRect( + props['pa'][0], + props['pa'][1], + ), + 'FractionalOffset.topLeft': FractionalOffset.topLeft, + 'FractionalOffset.topCenter': FractionalOffset.topCenter, + 'FractionalOffset.topRight': FractionalOffset.topRight, + 'FractionalOffset.centerLeft': FractionalOffset.centerLeft, + 'FractionalOffset.center': FractionalOffset.center, + 'FractionalOffset.centerRight': FractionalOffset.centerRight, + 'FractionalOffset.bottomLeft': FractionalOffset.bottomLeft, + 'FractionalOffset.bottomCenter': FractionalOffset.bottomCenter, + 'FractionalOffset.bottomRight': FractionalOffset.bottomRight, + 'FractionalOffset.lerp': (props) => FractionalOffset.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'RenderComparison': { + 'values': RenderComparison.values, + 'identical': RenderComparison.identical, + 'metadata': RenderComparison.metadata, + 'paint': RenderComparison.paint, + 'layout': RenderComparison.layout, + }, + 'Axis': { + 'values': Axis.values, + 'horizontal': Axis.horizontal, + 'vertical': Axis.vertical, + }, + 'VerticalDirection': { + 'values': VerticalDirection.values, + 'up': VerticalDirection.up, + 'down': VerticalDirection.down, + }, + 'AxisDirection': { + 'values': AxisDirection.values, + 'up': AxisDirection.up, + 'right': AxisDirection.right, + 'down': AxisDirection.down, + 'left': AxisDirection.left, + }, + 'InputDecoration': (props) => InputDecoration( + icon: props['icon'], + iconColor: props['iconColor'], + label: props['label'], + labelText: props['labelText'], + labelStyle: props['labelStyle'], + floatingLabelStyle: props['floatingLabelStyle'], + helperText: props['helperText'], + helperStyle: props['helperStyle'], + helperMaxLines: props['helperMaxLines'], + hintText: props['hintText'], + hintStyle: props['hintStyle'], + hintTextDirection: props['hintTextDirection'], + hintMaxLines: props['hintMaxLines'], + error: props['error'], + errorText: props['errorText'], + errorStyle: props['errorStyle'], + errorMaxLines: props['errorMaxLines'], + floatingLabelBehavior: props['floatingLabelBehavior'], + floatingLabelAlignment: props['floatingLabelAlignment'], + isCollapsed: props['isCollapsed'] ?? false, + isDense: props['isDense'], + contentPadding: props['contentPadding'], + prefixIcon: props['prefixIcon'], + prefixIconConstraints: props['prefixIconConstraints'], + prefix: props['prefix'], + prefixText: props['prefixText'], + prefixStyle: props['prefixStyle'], + prefixIconColor: props['prefixIconColor'], + suffixIcon: props['suffixIcon'], + suffix: props['suffix'], + suffixText: props['suffixText'], + suffixStyle: props['suffixStyle'], + suffixIconColor: props['suffixIconColor'], + suffixIconConstraints: props['suffixIconConstraints'], + counter: props['counter'], + counterText: props['counterText'], + counterStyle: props['counterStyle'], + filled: props['filled'], + fillColor: props['fillColor'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + errorBorder: props['errorBorder'], + focusedBorder: props['focusedBorder'], + focusedErrorBorder: props['focusedErrorBorder'], + disabledBorder: props['disabledBorder'], + enabledBorder: props['enabledBorder'], + border: props['border'], + enabled: props['enabled'] ?? true, + semanticCounterText: props['semanticCounterText'], + alignLabelWithHint: props['alignLabelWithHint'], + constraints: props['constraints'], + ), + 'InputBorder.none': InputBorder.none, + 'BoxDecoration': (props) => BoxDecoration( + color: props['color'], + image: props['image'], + border: props['border'], + borderRadius: props['borderRadius'], + boxShadow: as(props['boxShadow']), + gradient: props['gradient'], + backgroundBlendMode: props['backgroundBlendMode'], + shape: props['shape'] ?? BoxShape.rectangle, + ), + 'BoxDecoration.lerp': (props) => BoxDecoration.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BorderRadius.all': (props) => BorderRadius.all( + props['pa'][0], + ), + 'BorderRadius.circular': (props) => BorderRadius.circular( + props['pa'][0]?.toDouble(), + ), + 'BorderRadius.vertical': (props) => BorderRadius.vertical( + top: props['top'] ?? Radius.zero, + bottom: props['bottom'] ?? Radius.zero, + ), + 'BorderRadius.horizontal': (props) => BorderRadius.horizontal( + left: props['left'] ?? Radius.zero, + right: props['right'] ?? Radius.zero, + ), + 'BorderRadius.only': (props) => BorderRadius.only( + topLeft: props['topLeft'] ?? Radius.zero, + topRight: props['topRight'] ?? Radius.zero, + bottomLeft: props['bottomLeft'] ?? Radius.zero, + bottomRight: props['bottomRight'] ?? Radius.zero, + ), + 'BorderRadius.zero': BorderRadius.zero, + 'BorderRadius.lerp': (props) => BorderRadius.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BorderRadiusDirectional.all': (props) => BorderRadiusDirectional.all( + props['pa'][0], + ), + 'BorderRadiusDirectional.circular': (props) => BorderRadiusDirectional.circular( + props['pa'][0]?.toDouble(), + ), + 'BorderRadiusDirectional.vertical': (props) => BorderRadiusDirectional.vertical( + top: props['top'] ?? Radius.zero, + bottom: props['bottom'] ?? Radius.zero, + ), + 'BorderRadiusDirectional.horizontal': (props) => BorderRadiusDirectional.horizontal( + start: props['start'] ?? Radius.zero, + end: props['end'] ?? Radius.zero, + ), + 'BorderRadiusDirectional.only': (props) => BorderRadiusDirectional.only( + topStart: props['topStart'] ?? Radius.zero, + topEnd: props['topEnd'] ?? Radius.zero, + bottomStart: props['bottomStart'] ?? Radius.zero, + bottomEnd: props['bottomEnd'] ?? Radius.zero, + ), + 'BorderRadiusDirectional.zero': BorderRadiusDirectional.zero, + 'BorderRadiusDirectional.lerp': (props) => BorderRadiusDirectional.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'NetworkImage': (props) => NetworkImage( + props['pa'][0], + scale: props['scale']?.toDouble() ?? 1.0, + headers: props['headers'], + ), + 'TextStyle': (props) => TextStyle( + inherit: props['inherit'] ?? true, + color: props['color'], + backgroundColor: props['backgroundColor'], + fontSize: props['fontSize']?.toDouble(), + fontWeight: props['fontWeight'], + fontStyle: props['fontStyle'], + letterSpacing: props['letterSpacing']?.toDouble(), + wordSpacing: props['wordSpacing']?.toDouble(), + textBaseline: props['textBaseline'], + height: props['height']?.toDouble(), + leadingDistribution: props['leadingDistribution'], + locale: props['locale'], + foreground: props['foreground'], + background: props['background'], + shadows: as(props['shadows']), + fontFeatures: as(props['fontFeatures']), + decoration: props['decoration'], + decorationColor: props['decorationColor'], + decorationStyle: props['decorationStyle'], + decorationThickness: props['decorationThickness']?.toDouble(), + debugLabel: props['debugLabel'], + fontFamily: props['fontFamily'], + fontFamilyFallback: as(props['fontFamilyFallback']), + package: props['package'], + overflow: props['overflow'], + ), + 'TextStyle.lerp': (props) => TextStyle.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'HSVColor.lerp': (props) => HSVColor.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'HSLColor.lerp': (props) => HSLColor.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'ImageConfiguration': { + 'empty': ImageConfiguration.empty, + }, + 'ResizeImage.resizeIfNeeded': (props) => ResizeImage.resizeIfNeeded( + props['pa'][0], + props['pa'][1], + props['pa'][2], + ), + 'Border.merge': (props) => Border.merge( + props['pa'][0], + props['pa'][1], + ), + 'Border.lerp': (props) => Border.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Border.all': (props) => Border.all( + width: props['width']?.toDouble() ?? 1.0, + color : props['color'] ?? const Color(0xFF000000), + style : props['style'] ?? BorderStyle.solid, + ), + 'BorderDirectional.merge': (props) => BorderDirectional.merge( + props['pa'][0], + props['pa'][1], + ), + 'BorderDirectional.lerp': (props) => BorderDirectional.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BoxShape': { + 'values': BoxShape.values, + 'rectangle': BoxShape.rectangle, + 'circle': BoxShape.circle, + }, + 'BorderSide': { + 'none': BorderSide.none, + }, + 'BorderSide.merge': (props) => BorderSide.merge( + props['pa'][0], + props['pa'][1], + ), + 'BorderSide.canMerge': (props) => BorderSide.canMerge( + props['pa'][0], + props['pa'][1], + ), + 'BorderSide.lerp': (props) => BorderSide.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'BorderStyle': { + 'values': BorderStyle.values, + 'none': BorderStyle.none, + 'solid': BorderStyle.solid, + }, + 'FlutterLogoDecoration.lerp': (props) => FlutterLogoDecoration.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'FlutterLogoStyle': { + 'values': FlutterLogoStyle.values, + 'markOnly': FlutterLogoStyle.markOnly, + 'horizontal': FlutterLogoStyle.horizontal, + 'stacked': FlutterLogoStyle.stacked, + }, + 'Alignment': (props) => Alignment( + props['pa'][0]?.toDouble(), + props['pa'][1]?.toDouble(), + ), + 'Alignment.topLeft': Alignment.topLeft, + 'Alignment.topCenter': Alignment.topCenter, + 'Alignment.topRight': Alignment.topRight, + 'Alignment.centerLeft': Alignment.centerLeft, + 'Alignment.center': Alignment.center, + 'Alignment.centerRight': Alignment.centerRight, + 'Alignment.bottomLeft': Alignment.bottomLeft, + 'Alignment.bottomCenter': Alignment.bottomCenter, + 'Alignment.bottomRight': Alignment.bottomRight, + 'Alignment.lerp': (props) => Alignment.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'AlignmentDirectional': { + 'topStart': AlignmentDirectional.topStart, + 'topCenter': AlignmentDirectional.topCenter, + 'topEnd': AlignmentDirectional.topEnd, + 'centerStart': AlignmentDirectional.centerStart, + 'center': AlignmentDirectional.center, + 'centerEnd': AlignmentDirectional.centerEnd, + 'bottomStart': AlignmentDirectional.bottomStart, + 'bottomCenter': AlignmentDirectional.bottomCenter, + 'bottomEnd': AlignmentDirectional.bottomEnd, + }, + 'AlignmentDirectional.lerp': (props) => AlignmentDirectional.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'TextAlignVertical': { + 'top': TextAlignVertical.top, + 'center': TextAlignVertical.center, + 'bottom': TextAlignVertical.bottom, + }, +}; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$r.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$r.dart new file mode 100644 index 00000000..6a3c8b07 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$r.dart @@ -0,0 +1,153 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/material.dart'; +import 'package:flutter/rendering.dart'; + +var p = () => { + 'BoxConstraints.lerp': (props) => BoxConstraints.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'WrapAlignment': { + 'values': WrapAlignment.values, + 'start': WrapAlignment.start, + 'end': WrapAlignment.end, + 'center': WrapAlignment.center, + 'spaceBetween': WrapAlignment.spaceBetween, + 'spaceAround': WrapAlignment.spaceAround, + 'spaceEvenly': WrapAlignment.spaceEvenly, + }, + 'WrapCrossAlignment': { + 'values': WrapCrossAlignment.values, + 'start': WrapCrossAlignment.start, + 'end': WrapCrossAlignment.end, + 'center': WrapCrossAlignment.center, + }, + 'RelativeRect': { + 'fill': RelativeRect.fill, + }, + 'RelativeRect.lerp': (props) => RelativeRect.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'RenderStack.getIntrinsicDimension': (props) => + RenderStack.getIntrinsicDimension( + props['pa'][0], + props['pa'][1], + ), + 'RenderStack.layoutPositionedChild': (props) => + RenderStack.layoutPositionedChild( + props['pa'][0], + props['pa'][1], + props['pa'][2], + props['pa'][3], + ), + 'StackFit': { + 'values': StackFit.values, + 'loose': StackFit.loose, + 'expand': StackFit.expand, + 'passthrough': StackFit.passthrough, + }, + 'SliverGeometry': { + 'zero': SliverGeometry.zero, + }, + 'GrowthDirection': { + 'values': GrowthDirection.values, + 'forward': GrowthDirection.forward, + 'reverse': GrowthDirection.reverse, + }, + 'RenderViewport': { + 'useTwoPaneSemantics': RenderViewport.useTwoPaneSemantics, + 'excludeFromScrolling': RenderViewport.excludeFromScrolling, + }, + 'CacheExtentStyle': { + 'values': CacheExtentStyle.values, + 'pixel': CacheExtentStyle.pixel, + 'viewport': CacheExtentStyle.viewport, + }, + 'ChildLayoutHelper.dryLayoutChild': (props) => + ChildLayoutHelper.dryLayoutChild( + props['pa'][0], + props['pa'][1], + ), + 'ChildLayoutHelper.layoutChild': (props) => ChildLayoutHelper.layoutChild( + props['pa'][0], + props['pa'][1], + ), + 'TableCellVerticalAlignment': { + 'values': TableCellVerticalAlignment.values, + 'top': TableCellVerticalAlignment.top, + 'middle': TableCellVerticalAlignment.middle, + 'bottom': TableCellVerticalAlignment.bottom, + 'baseline': TableCellVerticalAlignment.baseline, + 'fill': TableCellVerticalAlignment.fill, + }, + 'PlatformViewHitTestBehavior': { + 'values': PlatformViewHitTestBehavior.values, + 'opaque': PlatformViewHitTestBehavior.opaque, + 'translucent': PlatformViewHitTestBehavior.translucent, + 'transparent': PlatformViewHitTestBehavior.transparent, + }, + 'PaintingContext.repaintCompositedChild': (props) => + PaintingContext.repaintCompositedChild( + props['pa'][0], + debugAlsoPaintedParent: props['debugAlsoPaintedParent'] ?? false, + ), + 'PaintingContext.debugInstrumentRepaintCompositedChild': (props) => + PaintingContext.debugInstrumentRepaintCompositedChild( + props['pa'][0], + debugAlsoPaintedParent: props['debugAlsoPaintedParent'] ?? false, + customContext: props['customContext'], + ), + 'ScrollDirection': { + 'values': ScrollDirection.values, + 'idle': ScrollDirection.idle, + 'forward': ScrollDirection.forward, + 'reverse': ScrollDirection.reverse, + }, + 'HitTestBehavior': { + 'values': HitTestBehavior.values, + 'deferToChild': HitTestBehavior.deferToChild, + 'opaque': HitTestBehavior.opaque, + 'translucent': HitTestBehavior.translucent, + }, + 'DecorationPosition': { + 'values': DecorationPosition.values, + 'background': DecorationPosition.background, + 'foreground': DecorationPosition.foreground, + }, + 'TableBorder.lerp': (props) => TableBorder.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'FlexFit': { + 'values': FlexFit.values, + 'tight': FlexFit.tight, + 'loose': FlexFit.loose, + }, + 'MainAxisSize': { + 'values': MainAxisSize.values, + 'min': MainAxisSize.min, + 'max': MainAxisSize.max, + }, + 'MainAxisAlignment': { + 'values': MainAxisAlignment.values, + 'start': MainAxisAlignment.start, + 'end': MainAxisAlignment.end, + 'center': MainAxisAlignment.center, + 'spaceBetween': MainAxisAlignment.spaceBetween, + 'spaceAround': MainAxisAlignment.spaceAround, + 'spaceEvenly': MainAxisAlignment.spaceEvenly, + }, + 'CrossAxisAlignment': { + 'values': CrossAxisAlignment.values, + 'start': CrossAxisAlignment.start, + 'end': CrossAxisAlignment.end, + 'center': CrossAxisAlignment.center, + 'stretch': CrossAxisAlignment.stretch, + 'baseline': CrossAxisAlignment.baseline, + }, +}; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/$$w.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/$$w.dart new file mode 100644 index 00000000..4149a558 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/$$w.dart @@ -0,0 +1,4041 @@ +// This file is generated by Fair, do not edit manually! + +import 'package:flutter/material.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/rendering.dart'; +import 'dart:ui' as ui show BoxHeightStyle, BoxWidthStyle; +import 'utils.dart'; + +const Color _kColor = Color(0xA0B71C1C); +const double _kHeight = 12.0; // height of banner +const TextStyle _kTextStyle = TextStyle( + color: Color(0xFFFFFFFF), + fontSize: _kHeight * 0.85, + fontWeight: FontWeight.w900, + height: 1.0, +); + +const double kMiddleSpacing = 16.0; +var p = () => { + 'RenderObjectToWidgetAdapter': (props) => RenderObjectToWidgetAdapter( + child: props['child'], + container: props['container'], + debugShortDescription: props['debugShortDescription'], + ), + 'WidgetsFlutterBinding.ensureInitialized': (props) => + WidgetsFlutterBinding.ensureInitialized(), + 'AnimatedCrossFade': (props) => AnimatedCrossFade( + key: props['key'], + firstChild: props['firstChild'], + secondChild: props['secondChild'], + firstCurve: props['firstCurve'] ?? Curves.linear, + secondCurve: props['secondCurve'] ?? Curves.linear, + sizeCurve: props['sizeCurve'] ?? Curves.linear, + alignment: props['alignment'] ?? Alignment.topCenter, + crossFadeState: props['crossFadeState'], + duration: props['duration'], + reverseDuration: props['reverseDuration'], + ), + 'AnimatedCrossFade#layoutBuilder': (props) => ( + Widget topChild, + dynamic topChildKey, + Widget bottomChild, + dynamic bottomChildKey, + ) { + return (props['block']) as Widget; + }, + 'AnimatedCrossFade.defaultLayoutBuilder': (props) => + AnimatedCrossFade.defaultLayoutBuilder( + props['pa'][0], + props['pa'][1], + props['pa'][2], + props['pa'][3], + ), + 'CrossFadeState': { + 'values': CrossFadeState.values, + 'showFirst': CrossFadeState.showFirst, + 'showSecond': CrossFadeState.showSecond, + }, + 'SingleChildScrollView': (props) => SingleChildScrollView( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + padding: props['padding'], + primary: props['primary'], + physics: props['physics'], + controller: props['controller'], + child: props['child'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + restorationId: props['restorationId'], + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + ), + 'SliverFillViewport': (props) => SliverFillViewport( + key: props['key'], + delegate: props['delegate'], + viewportFraction: props['viewportFraction']?.toDouble() ?? 1.0, + padEnds: props['padEnds'] ?? true, + ), + 'SliverFillRemaining': (props) => SliverFillRemaining( + key: props['key'], + child: props['child'], + hasScrollBody: props['hasScrollBody'] ?? true, + fillOverscroll: props['fillOverscroll'] ?? false, + ), + 'DefaultWidgetsLocalizations': { + 'delegate': DefaultWidgetsLocalizations.delegate, + }, + 'DefaultWidgetsLocalizations.load': (props) => + DefaultWidgetsLocalizations.load( + props['pa'][0], + ), + 'Localizations': (props) => Localizations( + key: props['key'], + locale: props['locale'], + delegates: as(props['delegates'])!, + child: props['child'], + ), + 'Localizations.override': (props) => Localizations.override( + key: props['key'], + context: props['context'], + locale: props['locale'], + delegates: as(props['delegates']), + child: props['child'], + ), + 'Localizations.localeOf': (props) => Localizations.localeOf( + props['pa'][0], + ), + 'Localizations.maybeLocaleOf': (props) => Localizations.maybeLocaleOf( + props['pa'][0], + ), + 'Localizations.of': (props) => Localizations.of( + props['pa'][0], + props['pa'][1], + ), + 'CustomScrollView': (props) => CustomScrollView( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + scrollBehavior: props['scrollBehavior'], + shrinkWrap: props['shrinkWrap'] ?? false, + center: props['center'], + anchor: props['anchor']?.toDouble() ?? 0.0, + cacheExtent: props['cacheExtent']?.toDouble(), + slivers: as(props['slivers']) ?? const [], + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ListView': (props) => ListView( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + children: as(props['children']) ?? const [], + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ListView.builder': (props) => ListView.builder( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ListView.separated': (props) => ListView.separated( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + itemBuilder: props['itemBuilder'], + separatorBuilder: props['separatorBuilder'], + itemCount: props['itemCount'], + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ListView.custom': (props) => ListView.custom( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + childrenDelegate: props['childrenDelegate'], + cacheExtent: props['cacheExtent']?.toDouble(), + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ListView.builder#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'ListView.separated#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'ListView.separated#separatorBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'GridView': (props) => GridView( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + gridDelegate: props['gridDelegate'], + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + children: as(props['children']) ?? const [], + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + ), + 'GridView.builder': (props) => GridView.builder( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + gridDelegate: props['gridDelegate'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'GridView.custom': (props) => GridView.custom( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + gridDelegate: props['gridDelegate'], + childrenDelegate: props['childrenDelegate'], + cacheExtent: props['cacheExtent']?.toDouble(), + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'GridView.count': (props) => GridView.count( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + crossAxisCount: props['crossAxisCount'], + mainAxisSpacing: props['mainAxisSpacing']?.toDouble() ?? 0.0, + crossAxisSpacing: props['crossAxisSpacing']?.toDouble() ?? 0.0, + childAspectRatio: props['childAspectRatio']?.toDouble() ?? 1.0, + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + children: as(props['children']) ?? const [], + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'GridView.extent': (props) => GridView.extent( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + maxCrossAxisExtent: props['maxCrossAxisExtent']?.toDouble(), + mainAxisSpacing: props['mainAxisSpacing']?.toDouble() ?? 0.0, + crossAxisSpacing: props['crossAxisSpacing']?.toDouble() ?? 0.0, + childAspectRatio: props['childAspectRatio']?.toDouble() ?? 1.0, + addAutomaticKeepAlives: props['addAutomaticKeepAlives'] ?? true, + addRepaintBoundaries: props['addRepaintBoundaries'] ?? true, + addSemanticIndexes: props['addSemanticIndexes'] ?? true, + cacheExtent: props['cacheExtent']?.toDouble(), + children: as(props['children']) ?? const [], + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'GridView.builder#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'ScrollViewKeyboardDismissBehavior': { + 'values': ScrollViewKeyboardDismissBehavior.values, + 'manual': ScrollViewKeyboardDismissBehavior.manual, + 'onDrag': ScrollViewKeyboardDismissBehavior.onDrag, + }, + 'Spacer': (props) => Spacer( + key: props['key'], + flex: props['flex'] ?? 1, + ), + 'RawKeyboardListener': (props) => RawKeyboardListener( + key: props['key'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + includeSemantics: props['includeSemantics'] ?? true, + onKey: props['onKey'], + child: props['child'], + ), + 'BouncingScrollSimulation': { + 'maxSpringTransferVelocity': + BouncingScrollSimulation.maxSpringTransferVelocity, + }, + 'Overlay': (props) => Overlay( + key: props['key'], + initialEntries: as(props['initialEntries']) ?? + const [], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'Overlay.of': (props) => Overlay.of( + props['pa'][0], + rootOverlay: props['rootOverlay'] ?? false, + debugRequiredFor: props['debugRequiredFor'], + ), + 'RawAutocomplete': (props) => RawAutocomplete( + key: props['key'], + optionsViewBuilder: props['optionsViewBuilder'], + optionsBuilder: props['optionsBuilder'], + displayStringForOption: + props['displayStringForOption'], + fieldViewBuilder: props['fieldViewBuilder'], + focusNode: props['focusNode'], + onSelected: props['onSelected'], + textEditingController: props['textEditingController'], + initialValue: props['initialValue'], + ), + 'RawAutocomplete#optionsViewBuilder': (props) => ( + BuildContext context, + AutocompleteOnSelected onSelected, + Iterable options, + ) { + return (props['block']) as Widget; + }, + 'RawAutocomplete#optionsBuilder': (props) => ( + dynamic textEditingValue, + ) { + return (props['block']) as Iterable; + }, + 'RawAutocomplete#displayStringForOption': (props) => ( + T option, + ) { + return (props['block']) as String; + }, + 'RawAutocomplete#fieldViewBuilder': (props) => ( + BuildContext context, + TextEditingController textEditingController, + FocusNode focusNode, + dynamic onFieldSubmitted, + ) { + return (props['block']) as Widget; + }, + 'RawAutocomplete#onSelected': (props) => ( + T option, + ) { + return (props['block']); + }, + 'RawAutocomplete.onFieldSubmitted': (props) => + RawAutocomplete.onFieldSubmitted( + props['pa'][0], + ), + 'RawAutocomplete.defaultStringForOption': (props) => + RawAutocomplete.defaultStringForOption( + props['pa'][0], + ), + 'AutocompleteHighlightedOption': (props) => AutocompleteHighlightedOption( + key: props['key'], + highlightIndexNotifier: props['highlightIndexNotifier'], + child: props['child'], + ), + 'AutocompleteHighlightedOption.of': (props) => + AutocompleteHighlightedOption.of( + props['pa'][0], + ), + 'WidgetsApp': (props) => WidgetsApp( + key: props['key'], + navigatorKey: props['navigatorKey'], + onGenerateRoute: props['onGenerateRoute'], + onGenerateInitialRoutes: props['onGenerateInitialRoutes'], + onUnknownRoute: props['onUnknownRoute'], + navigatorObservers: + as(props['navigatorObservers']) ?? + const [], + initialRoute: props['initialRoute'], + pageRouteBuilder: props['pageRouteBuilder'], + home: props['home'], + routes: props['routes'] ?? const {}, + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + textStyle: props['textStyle'], + color: props['color'], + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: + props['supportedLocales'] ?? const [Locale('en', 'US')], + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: + props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: + props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowWidgetInspector: + props['debugShowWidgetInspector'] ?? false, + debugShowCheckedModeBanner: + props['debugShowCheckedModeBanner'] ?? true, + inspectorSelectButtonBuilder: props['inspectorSelectButtonBuilder'], + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'WidgetsApp.router': (props) => WidgetsApp.router( + key: props['key'], + routeInformationProvider: props['routeInformationProvider'], + routeInformationParser: props['routeInformationParser'], + routerDelegate: props['routerDelegate'], + backButtonDispatcher: props['backButtonDispatcher'], + builder: props['builder'], + title: props['title'] ?? '', + onGenerateTitle: props['onGenerateTitle'], + textStyle: props['textStyle'], + color: props['color'], + locale: props['locale'], + localizationsDelegates: props['localizationsDelegates'], + localeListResolutionCallback: props['localeListResolutionCallback'], + localeResolutionCallback: props['localeResolutionCallback'], + supportedLocales: + props['supportedLocales'] ?? const [Locale('en', 'US')], + showPerformanceOverlay: props['showPerformanceOverlay'] ?? false, + checkerboardRasterCacheImages: + props['checkerboardRasterCacheImages'] ?? false, + checkerboardOffscreenLayers: + props['checkerboardOffscreenLayers'] ?? false, + showSemanticsDebugger: props['showSemanticsDebugger'] ?? false, + debugShowWidgetInspector: + props['debugShowWidgetInspector'] ?? false, + debugShowCheckedModeBanner: + props['debugShowCheckedModeBanner'] ?? true, + inspectorSelectButtonBuilder: props['inspectorSelectButtonBuilder'], + shortcuts: props['shortcuts'], + actions: props['actions'], + restorationScopeId: props['restorationScopeId'], + useInheritedMediaQuery: props['useInheritedMediaQuery'] ?? false, + ), + 'WidgetsApp#onGenerateRoute': (props) => ( + RouteSettings settings, + ) { + return (props['block']) as Route; + }, + 'WidgetsApp#onGenerateInitialRoutes': (props) => ( + String initialRoute, + ) { + return (props['block']) as List; + }, + 'WidgetsApp#onUnknownRoute': (props) => ( + RouteSettings settings, + ) { + return (props['block']) as Route; + }, + 'WidgetsApp#pageRouteBuilder': (props) => ( + RouteSettings settings, + WidgetBuilder builder, + ) { + return (props['block']) as PageRoute; + }, + 'WidgetsApp#builder': (props) => ( + BuildContext context, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'WidgetsApp#onGenerateTitle': (props) => ( + BuildContext context, + ) { + return (props['block']) as String; + }, + 'WidgetsApp#localeListResolutionCallback': (props) => ( + List locales, + Iterable supportedLocales, + ) { + return (props['block']) as dynamic; + }, + 'WidgetsApp#localeResolutionCallback': (props) => ( + dynamic locale, + Iterable supportedLocales, + ) { + return (props['block']) as dynamic; + }, + 'WidgetsApp#inspectorSelectButtonBuilder': (props) => ( + BuildContext context, + dynamic onPressed, + ) { + return (props['block']) as Widget; + }, + 'WidgetsApp.router#builder': (props) => ( + BuildContext context, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'WidgetsApp.router#onGenerateTitle': (props) => ( + BuildContext context, + ) { + return (props['block']) as String; + }, + 'WidgetsApp.router#localeListResolutionCallback': (props) => ( + List locales, + Iterable supportedLocales, + ) { + return (props['block']) as dynamic; + }, + 'WidgetsApp.router#localeResolutionCallback': (props) => ( + dynamic locale, + Iterable supportedLocales, + ) { + return (props['block']) as dynamic; + }, + 'WidgetsApp.router#inspectorSelectButtonBuilder': (props) => ( + BuildContext context, + dynamic onPressed, + ) { + return (props['block']) as Widget; + }, + 'AndroidView': (props) => AndroidView( + key: props['key'], + viewType: props['viewType'], + onPlatformViewCreated: props['onPlatformViewCreated'], + hitTestBehavior: + props['hitTestBehavior'] ?? PlatformViewHitTestBehavior.opaque, + layoutDirection: props['layoutDirection'], + gestureRecognizers: props['gestureRecognizers'], + creationParams: props['creationParams'], + creationParamsCodec: props['creationParamsCodec'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'UiKitView': (props) => UiKitView( + key: props['key'], + viewType: props['viewType'], + onPlatformViewCreated: props['onPlatformViewCreated'], + hitTestBehavior: + props['hitTestBehavior'] ?? PlatformViewHitTestBehavior.opaque, + layoutDirection: props['layoutDirection'], + creationParams: props['creationParams'], + creationParamsCodec: props['creationParamsCodec'], + gestureRecognizers: props['gestureRecognizers'], + ), + 'HtmlElementView': (props) => HtmlElementView( + key: props['key'], + viewType: props['viewType'], + onPlatformViewCreated: props['onPlatformViewCreated'], + ), + 'PlatformViewLink': (props) => PlatformViewLink( + key: props['key'], + surfaceFactory: props['surfaceFactory'], + onCreatePlatformView: props['onCreatePlatformView'], + viewType: props['viewType'], + ), + 'PlatformViewLink#surfaceFactory': (props) => ( + BuildContext context, + dynamic controller, + ) { + return (props['block']) as Widget; + }, + 'PlatformViewLink#onCreatePlatformView': (props) => ( + PlatformViewCreationParams params, + ) { + return (props['block']) as dynamic; + }, + 'PlatformViewSurface': (props) => PlatformViewSurface( + key: props['key'], + controller: props['controller'], + hitTestBehavior: props['hitTestBehavior'], + gestureRecognizers: props['gestureRecognizers'], + ), + 'AndroidViewSurface': (props) => AndroidViewSurface( + key: props['key'], + controller: props['controller'], + hitTestBehavior: props['hitTestBehavior'], + gestureRecognizers: props['gestureRecognizers'], + ), + 'RawScrollbar': (props) => RawScrollbar( + key: props['key'], + child: props['child'], + controller: props['controller'], + thumbVisibility: props['thumbVisibility'] ?? false, + shape: props['shape'], + radius: props['radius'], + thickness: props['thickness']?.toDouble(), + thumbColor: props['thumbColor'], + minThumbLength: + props['minThumbLength']?.toDouble(), + minOverscrollLength: props['minOverscrollLength']?.toDouble(), + trackVisibility: props['trackVisibility'] ?? false, + trackRadius: props['trackRadius'], + trackColor: props['trackColor'], + trackBorderColor: props['trackBorderColor'], + fadeDuration: props['fadeDuration'], + timeToFade: props['timeToFade'], + pressDuration: props['pressDuration'] ?? Duration.zero, + notificationPredicate: props['notificationPredicate'] ?? + defaultScrollNotificationPredicate, + interactive: props['interactive'], + scrollbarOrientation: props['scrollbarOrientation'], + mainAxisMargin: props['mainAxisMargin']?.toDouble() ?? 0.0, + crossAxisMargin: props['crossAxisMargin']?.toDouble() ?? 0.0, + padding: props['padding'], + ), + 'RawScrollbar#notificationPredicate': (props) => ( + ScrollNotification notification, + ) { + return (props['block']) as bool; + }, + 'ScrollbarOrientation': { + 'values': ScrollbarOrientation.values, + 'left': ScrollbarOrientation.left, + 'right': ScrollbarOrientation.right, + 'top': ScrollbarOrientation.top, + 'bottom': ScrollbarOrientation.bottom, + }, + 'SafeArea': (props) => SafeArea( + key: props['key'], + left: props['left'] ?? true, + top: props['top'] ?? true, + right: props['right'] ?? true, + bottom: props['bottom'] ?? true, + minimum: props['minimum'] ?? EdgeInsets.zero, + maintainBottomViewPadding: + props['maintainBottomViewPadding'] ?? false, + child: props['child'], + ), + 'SliverSafeArea': (props) => SliverSafeArea( + key: props['key'], + left: props['left'] ?? true, + top: props['top'] ?? true, + right: props['right'] ?? true, + bottom: props['bottom'] ?? true, + minimum: props['minimum'] ?? EdgeInsets.zero, + sliver: props['sliver'], + ), + 'WillPopScope': (props) => WillPopScope( + key: props['key'], + child: props['child'], + onWillPop: props['onWillPop'], + ), + 'WillPopScope#onWillPop': (props) => () { + return (props['block']) as Future; + }, + 'Dismissible': (props) => Dismissible( + key: props['key'], + child: props['child'], + background: props['background'], + secondaryBackground: props['secondaryBackground'], + confirmDismiss: props['confirmDismiss'], + onResize: props['onResize'], + onDismissed: props['onDismissed'], + direction: props['direction'] ?? DismissDirection.horizontal, + resizeDuration: + props['resizeDuration'] ?? const Duration(milliseconds: 300), + dismissThresholds: props['dismissThresholds'] ?? + const {}, + movementDuration: + props['movementDuration'] ?? const Duration(milliseconds: 200), + crossAxisEndOffset: props['crossAxisEndOffset']?.toDouble() ?? 0.0, + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + behavior: props['behavior'] ?? HitTestBehavior.opaque, + ), + 'Dismissible#confirmDismiss': (props) => ( + DismissDirection direction, + ) { + return (props['block']) as Future; + }, + 'Dismissible#onDismissed': (props) => ( + DismissDirection direction, + ) { + return (props['block']); + }, + 'DismissDirection': { + 'values': DismissDirection.values, + 'vertical': DismissDirection.vertical, + 'horizontal': DismissDirection.horizontal, + 'endToStart': DismissDirection.endToStart, + 'startToEnd': DismissDirection.startToEnd, + 'up': DismissDirection.up, + 'down': DismissDirection.down, + 'none': DismissDirection.none, + }, + 'SliverList': (props) => SliverList( + key: props['key'], + delegate: props['delegate'], + ), + 'SliverFixedExtentList': (props) => SliverFixedExtentList( + key: props['key'], + delegate: props['delegate'], + itemExtent: props['itemExtent']?.toDouble(), + ), + 'SliverGrid': (props) => SliverGrid( + key: props['key'], + delegate: props['delegate'], + gridDelegate: props['gridDelegate'], + ), + 'SliverGrid.count': (props) => SliverGrid.count( + key: props['key'], + crossAxisCount: props['crossAxisCount'], + mainAxisSpacing: props['mainAxisSpacing']?.toDouble() ?? 0.0, + crossAxisSpacing: props['crossAxisSpacing']?.toDouble() ?? 0.0, + childAspectRatio: props['childAspectRatio']?.toDouble() ?? 1.0, + children: as(props['children']) ?? const [], + ), + 'SliverGrid.extent': (props) => SliverGrid.extent( + key: props['key'], + maxCrossAxisExtent: props['maxCrossAxisExtent']?.toDouble(), + mainAxisSpacing: props['mainAxisSpacing']?.toDouble() ?? 0.0, + crossAxisSpacing: props['crossAxisSpacing']?.toDouble() ?? 0.0, + childAspectRatio: props['childAspectRatio']?.toDouble() ?? 1.0, + children: as(props['children']) ?? const [], + ), + 'SliverOpacity': (props) => SliverOpacity( + key: props['key'], + opacity: props['opacity']?.toDouble(), + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + sliver: props['sliver'], + ), + 'SliverIgnorePointer': (props) => SliverIgnorePointer( + key: props['key'], + ignoring: props['ignoring'] ?? true, + ignoringSemantics: props['ignoringSemantics'], + sliver: props['sliver'], + ), + 'SliverOffstage': (props) => SliverOffstage( + key: props['key'], + offstage: props['offstage'] ?? true, + sliver: props['sliver'], + ), + 'KeepAlive': (props) => KeepAlive( + key: props['key'], + keepAlive: props['keepAlive'], + child: props['child'], + ), + 'ListWheelScrollView': (props) => ListWheelScrollView( + key: props['key'], + controller: props['controller'], + physics: props['physics'], + diameterRatio: props['diameterRatio']?.toDouble() ?? + RenderListWheelViewport.defaultDiameterRatio, + perspective: props['perspective']?.toDouble() ?? + RenderListWheelViewport.defaultPerspective, + offAxisFraction: props['offAxisFraction']?.toDouble() ?? 0.0, + useMagnifier: props['useMagnifier'] ?? false, + magnification: props['magnification']?.toDouble() ?? 1.0, + overAndUnderCenterOpacity: + props['overAndUnderCenterOpacity']?.toDouble() ?? 1.0, + itemExtent: props['itemExtent']?.toDouble(), + squeeze: props['squeeze']?.toDouble() ?? 1.0, + onSelectedItemChanged: props['onSelectedItemChanged'], + renderChildrenOutsideViewport: + props['renderChildrenOutsideViewport'] ?? false, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + restorationId: props['restorationId'], + scrollBehavior: props['scrollBehavior'], + children: as(props['children'])!, + ), + 'ListWheelScrollView.useDelegate': (props) => + ListWheelScrollView.useDelegate( + key: props['key'], + controller: props['controller'], + physics: props['physics'], + diameterRatio: props['diameterRatio']?.toDouble() ?? + RenderListWheelViewport.defaultDiameterRatio, + perspective: props['perspective']?.toDouble() ?? + RenderListWheelViewport.defaultPerspective, + offAxisFraction: props['offAxisFraction']?.toDouble() ?? 0.0, + useMagnifier: props['useMagnifier'] ?? false, + magnification: props['magnification']?.toDouble() ?? 1.0, + overAndUnderCenterOpacity: + props['overAndUnderCenterOpacity']?.toDouble() ?? 1.0, + itemExtent: props['itemExtent']?.toDouble(), + squeeze: props['squeeze']?.toDouble() ?? 1.0, + onSelectedItemChanged: props['onSelectedItemChanged'], + renderChildrenOutsideViewport: + props['renderChildrenOutsideViewport'] ?? false, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + restorationId: props['restorationId'], + scrollBehavior: props['scrollBehavior'], + childDelegate: props['childDelegate'], + ), + 'ListWheelViewport': (props) => ListWheelViewport( + key: props['key'], + diameterRatio: props['diameterRatio']?.toDouble() ?? + RenderListWheelViewport.defaultDiameterRatio, + perspective: props['perspective']?.toDouble() ?? + RenderListWheelViewport.defaultPerspective, + offAxisFraction: props['offAxisFraction']?.toDouble() ?? 0.0, + useMagnifier: props['useMagnifier'] ?? false, + magnification: props['magnification']?.toDouble() ?? 1.0, + overAndUnderCenterOpacity: + props['overAndUnderCenterOpacity']?.toDouble() ?? 1.0, + itemExtent: props['itemExtent']?.toDouble(), + squeeze: props['squeeze']?.toDouble() ?? 1.0, + renderChildrenOutsideViewport: + props['renderChildrenOutsideViewport'] ?? false, + offset: props['offset'], + childDelegate: props['childDelegate'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ScrollDragController': { + 'momentumRetainStationaryDurationThreshold': + ScrollDragController.momentumRetainStationaryDurationThreshold, + 'momentumRetainVelocityThresholdFactor': + ScrollDragController.momentumRetainVelocityThresholdFactor, + 'motionStoppedDurationThreshold': + ScrollDragController.motionStoppedDurationThreshold, + }, + 'AutofillGroup': (props) => AutofillGroup( + key: props['key'], + child: props['child'], + onDisposeAction: + props['onDisposeAction'] ?? AutofillContextAction.commit, + ), + 'AutofillGroup.of': (props) => AutofillGroup.of( + props['pa'][0], + ), + 'AutofillContextAction': { + 'values': AutofillContextAction.values, + 'commit': AutofillContextAction.commit, + 'cancel': AutofillContextAction.cancel, + }, + 'InteractiveViewer': (props) => InteractiveViewer( + key: props['key'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + alignPanAxis: props['alignPanAxis'] ?? false, + boundaryMargin: props['boundaryMargin'] ?? EdgeInsets.zero, + constrained: props['constrained'] ?? true, + maxScale: props['maxScale']?.toDouble() ?? 2.5, + minScale: props['minScale']?.toDouble() ?? 0.8, + onInteractionEnd: props['onInteractionEnd'], + onInteractionStart: props['onInteractionStart'], + onInteractionUpdate: props['onInteractionUpdate'], + panEnabled: props['panEnabled'] ?? true, + scaleEnabled: props['scaleEnabled'] ?? true, + transformationController: props['transformationController'], + child: props['child'], + ), + 'InteractiveViewer.builder': (props) => InteractiveViewer.builder( + key: props['key'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + alignPanAxis: props['alignPanAxis'] ?? false, + boundaryMargin: props['boundaryMargin'] ?? EdgeInsets.zero, + maxScale: props['maxScale']?.toDouble() ?? 2.5, + minScale: props['minScale']?.toDouble() ?? 0.8, + onInteractionEnd: props['onInteractionEnd'], + onInteractionStart: props['onInteractionStart'], + onInteractionUpdate: props['onInteractionUpdate'], + panEnabled: props['panEnabled'] ?? true, + scaleEnabled: props['scaleEnabled'] ?? true, + transformationController: props['transformationController'], + builder: props['builder'], + ), + 'InteractiveViewer.builder#builder': (props) => ( + BuildContext context, + dynamic viewport, + ) { + return (props['block']) as Widget; + }, + 'ModalBarrier': (props) => ModalBarrier( + key: props['key'], + color: props['color'], + dismissible: props['dismissible'] ?? true, + semanticsLabel: props['semanticsLabel'], + barrierSemanticsDismissible: + props['barrierSemanticsDismissible'] ?? true, + ), + 'AnimatedModalBarrier': (props) => AnimatedModalBarrier( + key: props['key'], + color: props['color'], + dismissible: props['dismissible'] ?? true, + semanticsLabel: props['semanticsLabel'], + barrierSemanticsDismissible: props['barrierSemanticsDismissible'], + ), + 'Focus': (props) => Focus( + key: props['key'], + child: props['child'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + onFocusChange: props['onFocusChange'], + onKey: props['onKey'], + onKeyEvent: props['onKeyEvent'], + debugLabel: props['debugLabel'], + canRequestFocus: props['canRequestFocus'], + descendantsAreFocusable: props['descendantsAreFocusable'] ?? true, + skipTraversal: props['skipTraversal'], + includeSemantics: props['includeSemantics'] ?? true, + ), + 'Focus#onKey': (props) => ( + FocusNode node, + dynamic event, + ) { + return (props['block']) as KeyEventResult; + }, + 'Focus#onKeyEvent': (props) => ( + FocusNode node, + dynamic event, + ) { + return (props['block']) as KeyEventResult; + }, + 'Focus.of': (props) => Focus.of( + props['pa'][0], + scopeOk: props['scopeOk'] ?? false, + ), + 'Focus.maybeOf': (props) => Focus.maybeOf( + props['pa'][0], + scopeOk: props['scopeOk'] ?? false, + ), + 'Focus.isAt': (props) => Focus.isAt( + props['pa'][0], + ), + 'FocusScope': (props) => FocusScope( + key: props['key'], + node: props['node'], + child: props['child'], + autofocus: props['autofocus'] ?? false, + onFocusChange: props['onFocusChange'], + canRequestFocus: props['canRequestFocus'], + skipTraversal: props['skipTraversal'], + onKeyEvent: props['onKeyEvent'], + onKey: props['onKey'], + debugLabel: props['debugLabel'], + ), + 'FocusScope#onKeyEvent': (props) => ( + FocusNode node, + dynamic event, + ) { + return (props['block']) as KeyEventResult; + }, + 'FocusScope#onKey': (props) => ( + FocusNode node, + dynamic event, + ) { + return (props['block']) as KeyEventResult; + }, + 'FocusScope.of': (props) => FocusScope.of( + props['pa'][0], + ), + 'ExcludeFocus': (props) => ExcludeFocus( + key: props['key'], + excluding: props['excluding'] ?? true, + child: props['child'], + ), + 'FadeInImage': (props) => FadeInImage( + key: props['key'], + placeholder: props['placeholder'], + placeholderErrorBuilder: props['placeholderErrorBuilder'], + image: props['image'], + imageErrorBuilder: props['imageErrorBuilder'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + imageSemanticLabel: props['imageSemanticLabel'], + fadeOutDuration: + props['fadeOutDuration'] ?? const Duration(milliseconds: 300), + fadeOutCurve: props['fadeOutCurve'] ?? Curves.easeOut, + fadeInDuration: + props['fadeInDuration'] ?? const Duration(milliseconds: 700), + fadeInCurve: props['fadeInCurve'] ?? Curves.easeIn, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + matchTextDirection: props['matchTextDirection'] ?? false, + ), + 'FadeInImage.memoryNetwork': (props) => FadeInImage.memoryNetwork( + key: props['key'], + placeholder: props['placeholder'], + placeholderErrorBuilder: props['placeholderErrorBuilder'], + image: props['image'], + imageErrorBuilder: props['imageErrorBuilder'], + placeholderScale: props['placeholderScale']?.toDouble() ?? 1.0, + imageScale: props['imageScale']?.toDouble() ?? 1.0, + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + imageSemanticLabel: props['imageSemanticLabel'], + fadeOutDuration: + props['fadeOutDuration'] ?? const Duration(milliseconds: 300), + fadeOutCurve: props['fadeOutCurve'] ?? Curves.easeOut, + fadeInDuration: + props['fadeInDuration'] ?? const Duration(milliseconds: 700), + fadeInCurve: props['fadeInCurve'] ?? Curves.easeIn, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + matchTextDirection: props['matchTextDirection'] ?? false, + placeholderCacheWidth: props['placeholderCacheWidth'], + placeholderCacheHeight: props['placeholderCacheHeight'], + imageCacheWidth: props['imageCacheWidth'], + imageCacheHeight: props['imageCacheHeight'], + ), + 'FadeInImage.assetNetwork': (props) => FadeInImage.assetNetwork( + key: props['key'], + placeholder: props['placeholder'], + placeholderErrorBuilder: props['placeholderErrorBuilder'], + image: props['image'], + imageErrorBuilder: props['imageErrorBuilder'], + bundle: props['bundle'], + placeholderScale: props['placeholderScale']?.toDouble() ?? 1.0, + imageScale: props['imageScale']?.toDouble() ?? 1.0, + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + imageSemanticLabel: props['imageSemanticLabel'], + fadeOutDuration: + props['fadeOutDuration'] ?? const Duration(milliseconds: 300), + fadeOutCurve: props['fadeOutCurve'] ?? Curves.easeOut, + fadeInDuration: + props['fadeInDuration'] ?? const Duration(milliseconds: 700), + fadeInCurve: props['fadeInCurve'] ?? Curves.easeIn, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + matchTextDirection: props['matchTextDirection'] ?? false, + placeholderCacheWidth: props['placeholderCacheWidth'], + placeholderCacheHeight: props['placeholderCacheHeight'], + imageCacheWidth: props['imageCacheWidth'], + imageCacheHeight: props['imageCacheHeight'], + ), + 'FadeInImage#placeholderErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'FadeInImage#imageErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'FadeInImage.memoryNetwork#placeholderErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'FadeInImage.memoryNetwork#imageErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'FadeInImage.assetNetwork#placeholderErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'FadeInImage.assetNetwork#imageErrorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'OverflowBar': (props) => OverflowBar( + key: props['key'], + spacing: props['spacing']?.toDouble() ?? 0.0, + alignment: props['alignment'], + overflowSpacing: props['overflowSpacing']?.toDouble() ?? 0.0, + overflowAlignment: + props['overflowAlignment'] ?? OverflowBarAlignment.start, + overflowDirection: + props['overflowDirection'] ?? VerticalDirection.down, + textDirection: props['textDirection'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + children: as(props['children']) ?? const [], + ), + 'OverflowBarAlignment': { + 'values': OverflowBarAlignment.values, + 'start': OverflowBarAlignment.start, + 'end': OverflowBarAlignment.end, + 'center': OverflowBarAlignment.center, + }, + 'AnimatedList': (props) => AnimatedList( + key: props['key'], + itemBuilder: props['itemBuilder'], + initialItemCount: props['initialItemCount'] ?? 0, + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + padding: props['padding'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'AnimatedList#itemBuilder': (props) => ( + BuildContext context, + int index, + dynamic animation, + ) { + return (props['block']) as Widget; + }, + 'AnimatedList.of': (props) => AnimatedList.of( + props['pa'][0], + ), + 'AnimatedList.maybeOf': (props) => AnimatedList.maybeOf( + props['pa'][0], + ), + 'SliverAnimatedList': (props) => SliverAnimatedList( + key: props['key'], + itemBuilder: props['itemBuilder'], + initialItemCount: props['initialItemCount'] ?? 0, + ), + 'SliverAnimatedList#itemBuilder': (props) => ( + BuildContext context, + int index, + dynamic animation, + ) { + return (props['block']) as Widget; + }, + 'SliverAnimatedList.of': (props) => SliverAnimatedList.of( + props['pa'][0], + ), + 'SliverAnimatedList.maybeOf': (props) => SliverAnimatedList.maybeOf( + props['pa'][0], + ), + 'RestorationScope': (props) => RestorationScope( + key: props['key'], + restorationId: props['restorationId'], + child: props['child'], + ), + 'RestorationScope.of': (props) => RestorationScope.of( + props['pa'][0], + ), + 'UnmanagedRestorationScope': (props) => UnmanagedRestorationScope( + key: props['key'], + bucket: props['bucket'], + child: props['child'], + ), + 'RootRestorationScope': (props) => RootRestorationScope( + key: props['key'], + restorationId: props['restorationId'], + child: props['child'], + ), + 'TickerMode': (props) => TickerMode( + key: props['key'], + enabled: props['enabled'], + child: props['child'], + ), + 'TickerMode.of': (props) => TickerMode.of( + props['pa'][0], + ), + 'TextSelectionOverlay': { + 'fadeDuration': TextSelectionOverlay.fadeDuration, + }, + 'TextSelectionGestureDetector': (props) => TextSelectionGestureDetector( + key: props['key'], + onTapDown: props['onTapDown'], + onForcePressStart: props['onForcePressStart'], + onForcePressEnd: props['onForcePressEnd'], + onSecondaryTap: props['onSecondaryTap'], + onSecondaryTapDown: props['onSecondaryTapDown'], + onSingleTapUp: props['onSingleTapUp'], + onSingleTapCancel: props['onSingleTapCancel'], + onSingleLongTapStart: props['onSingleLongTapStart'], + onSingleLongTapMoveUpdate: props['onSingleLongTapMoveUpdate'], + onSingleLongTapEnd: props['onSingleLongTapEnd'], + onDoubleTapDown: props['onDoubleTapDown'], + onDragSelectionStart: props['onDragSelectionStart'], + onDragSelectionUpdate: props['onDragSelectionUpdate'], + onDragSelectionEnd: props['onDragSelectionEnd'], + behavior: props['behavior'], + child: props['child'], + ), + 'TextSelectionGestureDetector#onDragSelectionUpdate': (props) => ( + dynamic startDetails, + dynamic updateDetails, + ) { + return (props['block']); + }, + 'TextSelectionHandleType': { + 'values': TextSelectionHandleType.values, + 'left': TextSelectionHandleType.left, + 'right': TextSelectionHandleType.right, + 'collapsed': TextSelectionHandleType.collapsed, + }, + 'ClipboardStatus': { + 'values': ClipboardStatus.values, + 'pasteable': ClipboardStatus.pasteable, + 'unknown': ClipboardStatus.unknown, + 'notPasteable': ClipboardStatus.notPasteable, + }, + 'SemanticsDebugger': (props) => SemanticsDebugger( + key: props['key'], + child: props['child'], + labelStyle: props['labelStyle'] ?? + const TextStyle( + color: Color(0xFF000000), fontSize: 10.0, height: 0.8), + ), + 'IconTheme': (props) => IconTheme( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'IconTheme.merge': (props) => IconTheme.merge( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'IconTheme.of': (props) => IconTheme.of( + props['pa'][0], + ), + 'ScrollConfiguration': (props) => ScrollConfiguration( + key: props['key'], + behavior: props['behavior'], + child: props['child'], + ), + 'ScrollConfiguration.of': (props) => ScrollConfiguration.of( + props['pa'][0], + ), + 'ErrorWidget': (props) => ErrorWidget( + props['pa'][0], + ), + 'ErrorWidget.withDetails': (props) => ErrorWidget.withDetails( + message: props['message'] ?? '', + error: props['error'], + ), + 'AutomaticKeepAlive': (props) => AutomaticKeepAlive( + key: props['key'], + child: props['child'], + ), + 'Viewport': (props) => Viewport( + key: props['key'], + axisDirection: props['axisDirection'] ?? AxisDirection.down, + crossAxisDirection: props['crossAxisDirection'], + anchor: props['anchor']?.toDouble() ?? 0.0, + offset: props['offset'], + center: props['center'], + cacheExtent: props['cacheExtent']?.toDouble(), + cacheExtentStyle: + props['cacheExtentStyle'] ?? CacheExtentStyle.pixel, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + slivers: as(props['slivers']) ?? const [], + ), + 'Viewport.getDefaultCrossAxisDirection': (props) => + Viewport.getDefaultCrossAxisDirection( + props['pa'][0], + props['pa'][1], + ), + 'ShrinkWrappingViewport': (props) => ShrinkWrappingViewport( + key: props['key'], + axisDirection: props['axisDirection'] ?? AxisDirection.down, + crossAxisDirection: props['crossAxisDirection'], + offset: props['offset'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + slivers: as(props['slivers']) ?? const [], + ), + 'SizeChangedLayoutNotifier': (props) => SizeChangedLayoutNotifier( + key: props['key'], + child: props['child'], + ), + 'Hero': (props) => Hero( + key: props['key'], + tag: props['tag'], + createRectTween: props['createRectTween'], + flightShuttleBuilder: props['flightShuttleBuilder'], + placeholderBuilder: props['placeholderBuilder'], + transitionOnUserGestures: + props['transitionOnUserGestures'] ?? false, + child: props['child'], + ), + 'Hero#createRectTween': (props) => ( + dynamic begin, + dynamic end, + ) { + return (props['block']) as dynamic; + }, + 'Hero#flightShuttleBuilder': (props) => ( + BuildContext flightContext, + dynamic animation, + HeroFlightDirection flightDirection, + BuildContext fromHeroContext, + BuildContext toHeroContext, + ) { + return (props['block']) as Widget; + }, + 'Hero#placeholderBuilder': (props) => ( + BuildContext context, + dynamic heroSize, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'HeroMode': (props) => HeroMode( + key: props['key'], + child: props['child'], + enabled: props['enabled'] ?? true, + ), + 'HeroFlightDirection': { + 'values': HeroFlightDirection.values, + 'push': HeroFlightDirection.push, + 'pop': HeroFlightDirection.pop, + }, + 'GlowingOverscrollIndicator': (props) => GlowingOverscrollIndicator( + key: props['key'], + showLeading: props['showLeading'] ?? true, + showTrailing: props['showTrailing'] ?? true, + axisDirection: props['axisDirection'], + color: props['color'], + notificationPredicate: props['notificationPredicate'] ?? + defaultScrollNotificationPredicate, + child: props['child'], + ), + 'GlowingOverscrollIndicator#notificationPredicate': (props) => ( + ScrollNotification notification, + ) { + return (props['block']) as bool; + }, + 'Draggable': (props) => Draggable( + key: props['key'], + child: props['child'], + feedback: props['feedback'], + data: props['data'], + axis: props['axis'], + childWhenDragging: props['childWhenDragging'], + feedbackOffset: props['feedbackOffset'] ?? Offset.zero, + dragAnchorStrategy: props['dragAnchorStrategy'], + affinity: props['affinity'], + maxSimultaneousDrags: props['maxSimultaneousDrags'], + onDragStarted: props['onDragStarted'], + onDragUpdate: props['onDragUpdate'], + onDraggableCanceled: props['onDraggableCanceled'], + onDragEnd: props['onDragEnd'], + onDragCompleted: props['onDragCompleted'], + ignoringFeedbackSemantics: + props['ignoringFeedbackSemantics'] ?? true, + rootOverlay: props['rootOverlay'] ?? false, + hitTestBehavior: + props['hitTestBehavior'] ?? HitTestBehavior.deferToChild, + ), + 'Draggable#dragAnchorStrategy': (props) => ( + Draggable draggable, + BuildContext context, + dynamic position, + ) { + return (props['block']) as dynamic; + }, + 'Draggable#onDragUpdate': (props) => ( + dynamic details, + ) { + return (props['block']); + }, + 'Draggable#onDraggableCanceled': (props) => ( + dynamic velocity, + dynamic offset, + ) { + return (props['block']); + }, + 'Draggable#onDragEnd': (props) => ( + DraggableDetails details, + ) { + return (props['block']); + }, + 'LongPressDraggable': (props) => LongPressDraggable( + key: props['key'], + child: props['child'], + feedback: props['feedback'], + data: props['data'], + axis: props['axis'], + childWhenDragging: props['childWhenDragging'], + feedbackOffset: props['feedbackOffset'] ?? Offset.zero, + dragAnchorStrategy: props['dragAnchorStrategy'], + maxSimultaneousDrags: props['maxSimultaneousDrags'], + onDragStarted: props['onDragStarted'], + onDragUpdate: props['onDragUpdate'], + onDraggableCanceled: props['onDraggableCanceled'], + onDragEnd: props['onDragEnd'], + onDragCompleted: props['onDragCompleted'], + hapticFeedbackOnStart: props['hapticFeedbackOnStart'] ?? true, + ignoringFeedbackSemantics: + props['ignoringFeedbackSemantics'] ?? true, + delay: props['delay'] ?? kLongPressTimeout, + ), + 'LongPressDraggable#dragAnchorStrategy': (props) => ( + Draggable draggable, + BuildContext context, + dynamic position, + ) { + return (props['block']) as dynamic; + }, + 'LongPressDraggable#onDragUpdate': (props) => ( + dynamic details, + ) { + return (props['block']); + }, + 'LongPressDraggable#onDraggableCanceled': (props) => ( + dynamic velocity, + dynamic offset, + ) { + return (props['block']); + }, + 'LongPressDraggable#onDragEnd': (props) => ( + DraggableDetails details, + ) { + return (props['block']); + }, + 'DragTarget': (props) => DragTarget( + key: props['key'], + builder: props['builder'], + onWillAccept: props['onWillAccept'], + onAccept: props['onAccept'], + onAcceptWithDetails: props['onAcceptWithDetails'], + onLeave: props['onLeave'], + onMove: props['onMove'], + hitTestBehavior: + props['hitTestBehavior'] ?? HitTestBehavior.translucent, + ), + 'DragTarget#builder': (props) => ( + BuildContext context, + List candidateData, + List rejectedData, + ) { + return (props['block']) as Widget; + }, + 'DragTarget#onWillAccept': (props) => ( + T data, + ) { + return (props['block']) as bool; + }, + 'DragTarget#onAccept': (props) => ( + T data, + ) { + return (props['block']); + }, + 'DragTarget#onAcceptWithDetails': (props) => ( + DragTargetDetails details, + ) { + return (props['block']); + }, + 'DragTarget#onLeave': (props) => ( + T data, + ) { + return (props['block']); + }, + 'DragTarget#onMove': (props) => ( + DragTargetDetails details, + ) { + return (props['block']); + }, + 'ScrollNotificationObserver': (props) => ScrollNotificationObserver( + key: props['key'], + child: props['child'], + ), + 'ScrollNotificationObserver.of': (props) => ScrollNotificationObserver.of( + props['pa'][0], + ), + 'ImageFiltered': (props) => ImageFiltered( + key: props['key'], + imageFilter: props['imageFilter'], + child: props['child'], + ), + 'KeyboardListener': (props) => KeyboardListener( + key: props['key'], + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + includeSemantics: props['includeSemantics'] ?? true, + onKeyEvent: props['onKeyEvent'], + child: props['child'], + ), + 'Shortcuts': (props) => Shortcuts( + key: props['key'], + shortcuts: props['shortcuts'], + child: props['child'], + debugLabel: props['debugLabel'], + ), + 'Shortcuts.manager': (props) => Shortcuts.manager( + key: props['key'], + manager: props['manager'], + child: props['child'], + debugLabel: props['debugLabel'], + ), + 'CallbackShortcuts': (props) => CallbackShortcuts( + key: props['key'], + bindings: props['bindings'], + child: props['child'], + ), + 'PageView': (props) => PageView( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.horizontal, + reverse: props['reverse'] ?? false, + controller: props['controller'], + physics: props['physics'], + pageSnapping: props['pageSnapping'] ?? true, + onPageChanged: props['onPageChanged'], + children: as(props['children']) ?? const [], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + allowImplicitScrolling: props['allowImplicitScrolling'] ?? false, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + scrollBehavior: props['scrollBehavior'], + padEnds: props['padEnds'] ?? true, + ), + 'PageView.builder': (props) => PageView.builder( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.horizontal, + reverse: props['reverse'] ?? false, + controller: props['controller'], + physics: props['physics'], + pageSnapping: props['pageSnapping'] ?? true, + onPageChanged: props['onPageChanged'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + allowImplicitScrolling: props['allowImplicitScrolling'] ?? false, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + scrollBehavior: props['scrollBehavior'], + padEnds: props['padEnds'] ?? true, + ), + 'PageView.custom': (props) => PageView.custom( + key: props['key'], + scrollDirection: props['scrollDirection'] ?? Axis.horizontal, + reverse: props['reverse'] ?? false, + controller: props['controller'], + physics: props['physics'], + pageSnapping: props['pageSnapping'] ?? true, + onPageChanged: props['onPageChanged'], + childrenDelegate: props['childrenDelegate'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + allowImplicitScrolling: props['allowImplicitScrolling'] ?? false, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + scrollBehavior: props['scrollBehavior'], + padEnds: props['padEnds'] ?? true, + ), + 'PageView.builder#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'NotificationListener': (props) => NotificationListener( + key: props['key'], + child: props['child'], + onNotification: props['onNotification'], + ), + 'NotificationListener#onNotification': (props) => ( + T notification, + ) { + return (props['block']) as bool; + }, + 'Banner': (props) => Banner( + key: props['key'], + child: props['child'], + message: props['message'], + textDirection: props['textDirection'], + location: props['location'], + layoutDirection: props['layoutDirection'], + color: props['color'] ?? _kColor, + textStyle: props['textStyle'] ?? _kTextStyle, + ), + 'CheckedModeBanner': (props) => CheckedModeBanner( + key: props['key'], + child: props['child'], + ), + 'BannerLocation': { + 'values': BannerLocation.values, + 'topStart': BannerLocation.topStart, + 'topEnd': BannerLocation.topEnd, + 'bottomStart': BannerLocation.bottomStart, + 'bottomEnd': BannerLocation.bottomEnd, + }, + 'AnnotatedRegion': (props) => AnnotatedRegion( + key: props['key'], + child: props['child'], + value: props['value'], + sized: props['sized'] ?? true, + ), + 'AnimatedSize': (props) => AnimatedSize( + key: props['key'], + child: props['child'], + alignment: props['alignment'] ?? Alignment.center, + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + reverseDuration: props['reverseDuration'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'GridPaper': (props) => GridPaper( + key: props['key'], + color: props['color'] ?? const Color(0x7FC3E8F3), + interval: props['interval']?.toDouble() ?? 100.0, + divisions: props['divisions'] ?? 2, + subdivisions: props['subdivisions'] ?? 5, + child: props['child'], + ), + 'TweenAnimationBuilder': (props) => TweenAnimationBuilder( + key: props['key'], + tween: props['tween'], + duration: props['duration'], + curve: props['curve'] ?? Curves.linear, + builder: props['builder'], + onEnd: props['onEnd'], + child: props['child'], + ), + 'TweenAnimationBuilder#builder': (props) => ( + BuildContext context, + T value, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'DefaultTextEditingShortcuts': (props) => DefaultTextEditingShortcuts( + key: props['key'], + child: props['child'], + ), + 'SlideTransition': (props) => SlideTransition( + key: props['key'], + position: props['position'], + transformHitTests: props['transformHitTests'] ?? true, + textDirection: props['textDirection'], + child: props['child'], + ), + 'ScaleTransition': (props) => ScaleTransition( + key: props['key'], + scale: props['scale'], + alignment: props['alignment'] ?? Alignment.center, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'RotationTransition': (props) => RotationTransition( + key: props['key'], + turns: props['turns'], + alignment: props['alignment'] ?? Alignment.center, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'SizeTransition': (props) => SizeTransition( + key: props['key'], + axis: props['axis'] ?? Axis.vertical, + sizeFactor: props['sizeFactor'], + axisAlignment: props['axisAlignment']?.toDouble() ?? 0.0, + child: props['child'], + ), + 'FadeTransition': (props) => FadeTransition( + key: props['key'], + opacity: props['opacity'], + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + child: props['child'], + ), + 'SliverFadeTransition': (props) => SliverFadeTransition( + key: props['key'], + opacity: props['opacity'], + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + sliver: props['sliver'], + ), + 'PositionedTransition': (props) => PositionedTransition( + key: props['key'], + rect: props['rect'], + child: props['child'], + ), + 'RelativePositionedTransition': (props) => RelativePositionedTransition( + key: props['key'], + rect: props['rect'], + size: props['size'], + child: props['child'], + ), + 'DecoratedBoxTransition': (props) => DecoratedBoxTransition( + key: props['key'], + decoration: props['decoration'], + position: props['position'] ?? DecorationPosition.background, + child: props['child'], + ), + 'AlignTransition': (props) => AlignTransition( + key: props['key'], + alignment: props['alignment'], + child: props['child'], + widthFactor: props['widthFactor']?.toDouble(), + heightFactor: props['heightFactor']?.toDouble(), + ), + 'DefaultTextStyleTransition': (props) => DefaultTextStyleTransition( + key: props['key'], + style: props['style'], + child: props['child'], + textAlign: props['textAlign'], + softWrap: props['softWrap'] ?? true, + overflow: props['overflow'] ?? TextOverflow.clip, + maxLines: props['maxLines'], + ), + 'AnimatedBuilder': (props) => AnimatedBuilder( + key: props['key'], + animation: props['animation'], + builder: props['builder'], + child: props['child'], + ), + 'AnimatedBuilder#builder': (props) => ( + BuildContext context, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'SliverPersistentHeader': (props) => SliverPersistentHeader( + key: props['key'], + delegate: props['delegate'], + pinned: props['pinned'] ?? false, + floating: props['floating'] ?? false, + ), + 'PageStorage': (props) => PageStorage( + key: props['key'], + bucket: props['bucket'], + child: props['child'], + ), + 'PageStorage.of': (props) => PageStorage.of( + props['pa'][0], + ), + 'Router': (props) => Router( + key: props['key'], + routeInformationProvider: props['routeInformationProvider'], + routeInformationParser: props['routeInformationParser'], + routerDelegate: props['routerDelegate'], + backButtonDispatcher: props['backButtonDispatcher'], + restorationScopeId: props['restorationScopeId'], + ), + 'Router.of': (props) => Router.of( + props['pa'][0], + ), + 'Router.maybeOf': (props) => Router.maybeOf( + props['pa'][0], + ), + 'Router.navigate': (props) => Router.navigate( + props['pa'][0], + props['pa'][1], + ), + 'Router.neglect': (props) => Router.neglect( + props['pa'][0], + props['pa'][1], + ), + 'BackButtonListener': (props) => BackButtonListener( + key: props['key'], + child: props['child'], + onBackButtonPressed: props['onBackButtonPressed'], + ), + 'Directionality': (props) => Directionality( + key: props['key'], + textDirection: props['textDirection'], + child: props['child'], + ), + 'Directionality.of': (props) => Directionality.of( + props['pa'][0], + ), + 'Directionality.maybeOf': (props) => Directionality.maybeOf( + props['pa'][0], + ), + 'Opacity': (props) => Opacity( + key: props['key'], + opacity: props['opacity']?.toDouble(), + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + child: props['child'], + ), + 'ShaderMask': (props) => ShaderMask( + key: props['key'], + shaderCallback: props['shaderCallback'], + blendMode: props['blendMode'] ?? BlendMode.modulate, + child: props['child'], + ), + 'BackdropFilter': (props) => BackdropFilter( + key: props['key'], + filter: props['filter'], + child: props['child'], + blendMode: props['blendMode'] ?? BlendMode.srcOver, + ), + 'CustomPaint': (props) => CustomPaint( + key: props['key'], + painter: props['painter'], + foregroundPainter: props['foregroundPainter'], + size: props['size'] ?? Size.zero, + isComplex: props['isComplex'] ?? false, + willChange: props['willChange'] ?? false, + child: props['child'], + ), + 'ClipRect': (props) => ClipRect( + key: props['key'], + clipper: props['clipper'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + child: props['child'], + ), + 'ClipRRect': (props) => ClipRRect( + key: props['key'], + borderRadius: props['borderRadius'] ?? BorderRadius.zero, + clipper: props['clipper'], + clipBehavior: props['clipBehavior'] ?? Clip.antiAlias, + child: props['child'], + ), + 'ClipOval': (props) => ClipOval( + key: props['key'], + clipper: props['clipper'], + clipBehavior: props['clipBehavior'] ?? Clip.antiAlias, + child: props['child'], + ), + 'ClipPath': (props) => ClipPath( + key: props['key'], + clipper: props['clipper'], + clipBehavior: props['clipBehavior'] ?? Clip.antiAlias, + child: props['child'], + ), + 'ClipPath.shape': (props) => ClipPath.shape( + key: props['key'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.antiAlias, + child: props['child'], + ), + 'PhysicalModel': (props) => PhysicalModel( + key: props['key'], + shape: props['shape'] ?? BoxShape.rectangle, + clipBehavior: props['clipBehavior'] ?? Clip.none, + borderRadius: props['borderRadius'], + elevation: props['elevation']?.toDouble() ?? 0.0, + color: props['color'], + shadowColor: props['shadowColor'] ?? const Color(0xFF000000), + child: props['child'], + ), + 'PhysicalShape': (props) => PhysicalShape( + key: props['key'], + clipper: props['clipper'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + elevation: props['elevation']?.toDouble() ?? 0.0, + color: props['color'], + shadowColor: props['shadowColor'] ?? const Color(0xFF000000), + child: props['child'], + ), + 'Transform': (props) => Transform( + key: props['key'], + transform: props['transform'], + origin: props['origin'], + alignment: props['alignment'], + transformHitTests: props['transformHitTests'] ?? true, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'Transform.rotate': (props) => Transform.rotate( + key: props['key'], + angle: props['angle']?.toDouble(), + origin: props['origin'], + alignment: props['alignment'] ?? Alignment.center, + transformHitTests: props['transformHitTests'] ?? true, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'Transform.translate': (props) => Transform.translate( + key: props['key'], + offset: props['offset'], + transformHitTests: props['transformHitTests'] ?? true, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'Transform.scale': (props) => Transform.scale( + key: props['key'], + scale: props['scale']?.toDouble(), + origin: props['origin'], + alignment: props['alignment'] ?? Alignment.center, + transformHitTests: props['transformHitTests'] ?? true, + filterQuality: props['filterQuality'], + child: props['child'], + ), + 'CompositedTransformTarget': (props) => CompositedTransformTarget( + key: props['key'], + link: props['link'], + child: props['child'], + ), + 'CompositedTransformFollower': (props) => CompositedTransformFollower( + key: props['key'], + link: props['link'], + showWhenUnlinked: props['showWhenUnlinked'] ?? true, + offset: props['offset'] ?? Offset.zero, + targetAnchor: props['targetAnchor'] ?? Alignment.topLeft, + followerAnchor: props['followerAnchor'] ?? Alignment.topLeft, + child: props['child'], + ), + 'FittedBox': (props) => FittedBox( + key: props['key'], + fit: props['fit'] ?? BoxFit.contain, + alignment: props['alignment'] ?? Alignment.center, + clipBehavior: props['clipBehavior'] ?? Clip.none, + child: props['child'], + ), + 'FractionalTranslation': (props) => FractionalTranslation( + key: props['key'], + translation: props['translation'], + transformHitTests: props['transformHitTests'] ?? true, + child: props['child'], + ), + 'RotatedBox': (props) => RotatedBox( + key: props['key'], + quarterTurns: props['quarterTurns'], + child: props['child'], + ), + 'Padding': (props) => Padding( + key: props['key'], + padding: props['padding'], + child: props['child'], + ), + 'Align': (props) => Align( + key: props['key'], + alignment: props['alignment'] ?? Alignment.center, + widthFactor: props['widthFactor']?.toDouble(), + heightFactor: props['heightFactor']?.toDouble(), + child: props['child'], + ), + 'Center': (props) => Center( + key: props['key'], + widthFactor: props['widthFactor']?.toDouble(), + heightFactor: props['heightFactor']?.toDouble(), + child: props['child'], + ), + 'CustomSingleChildLayout': (props) => CustomSingleChildLayout( + key: props['key'], + delegate: props['delegate'], + child: props['child'], + ), + 'LayoutId': (props) => LayoutId( + key: props['key'], + id: props['id'], + child: props['child'], + ), + 'CustomMultiChildLayout': (props) => CustomMultiChildLayout( + key: props['key'], + delegate: props['delegate'], + children: as(props['children']) ?? const [], + ), + 'SizedBox': (props) => SizedBox( + key: props['key'], + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'SizedBox.expand': (props) => SizedBox.expand( + key: props['key'], + child: props['child'], + ), + 'SizedBox.shrink': (props) => SizedBox.shrink( + key: props['key'], + child: props['child'], + ), + 'SizedBox.fromSize': (props) => SizedBox.fromSize( + key: props['key'], + child: props['child'], + size: props['size'], + ), + 'SizedBox.square': (props) => SizedBox.square( + key: props['key'], + child: props['child'], + dimension: props['dimension']?.toDouble(), + ), + 'ConstrainedBox': (props) => ConstrainedBox( + key: props['key'], + constraints: props['constraints'], + child: props['child'], + ), + 'ConstraintsTransformBox': (props) => ConstraintsTransformBox( + key: props['key'], + child: props['child'], + textDirection: props['textDirection'], + alignment: props['alignment'] ?? Alignment.center, + constraintsTransform: props['constraintsTransform'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + debugTransformType: props['debugTransformType'] ?? '', + ), + 'ConstraintsTransformBox.unmodified': (props) => + ConstraintsTransformBox.unmodified( + props['pa'][0], + ), + 'ConstraintsTransformBox.unconstrained': (props) => + ConstraintsTransformBox.unconstrained( + props['pa'][0], + ), + 'ConstraintsTransformBox.widthUnconstrained': (props) => + ConstraintsTransformBox.widthUnconstrained( + props['pa'][0], + ), + 'ConstraintsTransformBox.heightUnconstrained': (props) => + ConstraintsTransformBox.heightUnconstrained( + props['pa'][0], + ), + 'ConstraintsTransformBox.maxHeightUnconstrained': (props) => + ConstraintsTransformBox.maxHeightUnconstrained( + props['pa'][0], + ), + 'ConstraintsTransformBox.maxWidthUnconstrained': (props) => + ConstraintsTransformBox.maxWidthUnconstrained( + props['pa'][0], + ), + 'ConstraintsTransformBox.maxUnconstrained': (props) => + ConstraintsTransformBox.maxUnconstrained( + props['pa'][0], + ), + 'UnconstrainedBox': (props) => UnconstrainedBox( + key: props['key'], + child: props['child'], + textDirection: props['textDirection'], + alignment: props['alignment'] ?? Alignment.center, + constrainedAxis: props['constrainedAxis'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + ), + 'FractionallySizedBox': (props) => FractionallySizedBox( + key: props['key'], + alignment: props['alignment'] ?? Alignment.center, + widthFactor: props['widthFactor']?.toDouble(), + heightFactor: props['heightFactor']?.toDouble(), + child: props['child'], + ), + 'LimitedBox': (props) => LimitedBox( + key: props['key'], + maxWidth: props['maxWidth']?.toDouble() ?? double.infinity, + maxHeight: props['maxHeight']?.toDouble() ?? double.infinity, + child: props['child'], + ), + 'OverflowBox': (props) => OverflowBox( + key: props['key'], + alignment: props['alignment'] ?? Alignment.center, + minWidth: props['minWidth']?.toDouble(), + maxWidth: props['maxWidth']?.toDouble(), + minHeight: props['minHeight']?.toDouble(), + maxHeight: props['maxHeight']?.toDouble(), + child: props['child'], + ), + 'SizedOverflowBox': (props) => SizedOverflowBox( + key: props['key'], + size: props['size'], + alignment: props['alignment'] ?? Alignment.center, + child: props['child'], + ), + 'Offstage': (props) => Offstage( + key: props['key'], + offstage: props['offstage'] ?? true, + child: props['child'], + ), + 'AspectRatio': (props) => AspectRatio( + key: props['key'], + aspectRatio: props['aspectRatio']?.toDouble(), + child: props['child'], + ), + 'IntrinsicWidth': (props) => IntrinsicWidth( + key: props['key'], + stepWidth: props['stepWidth']?.toDouble(), + stepHeight: props['stepHeight']?.toDouble(), + child: props['child'], + ), + 'IntrinsicHeight': (props) => IntrinsicHeight( + key: props['key'], + child: props['child'], + ), + 'Baseline': (props) => Baseline( + key: props['key'], + baseline: props['baseline']?.toDouble(), + baselineType: props['baselineType'], + child: props['child'], + ), + 'SliverToBoxAdapter': (props) => SliverToBoxAdapter( + key: props['key'], + child: props['child'], + ), + 'SliverPadding': (props) => SliverPadding( + key: props['key'], + padding: props['padding'], + sliver: props['sliver'], + ), + 'ListBody': (props) => ListBody( + key: props['key'], + mainAxis: props['mainAxis'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + children: as(props['children']) ?? const [], + ), + 'Stack': (props) => Stack( + key: props['key'], + alignment: props['alignment'] ?? AlignmentDirectional.topStart, + textDirection: props['textDirection'], + fit: props['fit'] ?? StackFit.loose, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + children: as(props['children']) ?? const [], + ), + 'IndexedStack': (props) => IndexedStack( + key: props['key'], + alignment: props['alignment'] ?? AlignmentDirectional.topStart, + textDirection: props['textDirection'], + sizing: props['sizing'] ?? StackFit.loose, + index: props['index'] ?? 0, + children: as(props['children']) ?? const [], + ), + 'Positioned': (props) => Positioned( + key: props['key'], + left: props['left']?.toDouble(), + top: props['top']?.toDouble(), + right: props['right']?.toDouble(), + bottom: props['bottom']?.toDouble(), + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'Positioned.fromRect': (props) => Positioned.fromRect( + key: props['key'], + rect: props['rect'], + child: props['child'], + ), + 'Positioned.fromRelativeRect': (props) => Positioned.fromRelativeRect( + key: props['key'], + rect: props['rect'], + child: props['child'], + ), + 'Positioned.fill': (props) => Positioned.fill( + key: props['key'], + left: props['left']?.toDouble() ?? 0.0, + top: props['top']?.toDouble() ?? 0.0, + right: props['right']?.toDouble() ?? 0.0, + bottom: props['bottom']?.toDouble() ?? 0.0, + child: props['child'], + ), + 'Positioned.directional': (props) => Positioned.directional( + key: props['key'], + textDirection: props['textDirection'], + start: props['start']?.toDouble(), + top: props['top']?.toDouble() ?? 0.0, + end: props['end']?.toDouble(), + bottom: props['bottom']?.toDouble() ?? 0.0, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'PositionedDirectional': (props) => PositionedDirectional( + key: props['key'], + start: props['start']?.toDouble(), + top: props['top']?.toDouble(), + end: props['end']?.toDouble(), + bottom: props['bottom']?.toDouble(), + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + child: props['child'], + ), + 'Flex': (props) => Flex( + key: props['key'], + direction: props['direction'], + mainAxisAlignment: + props['mainAxisAlignment'] ?? MainAxisAlignment.start, + mainAxisSize: props['mainAxisSize'] ?? MainAxisSize.max, + crossAxisAlignment: + props['crossAxisAlignment'] ?? CrossAxisAlignment.center, + textDirection: props['textDirection'], + verticalDirection: + props['verticalDirection'] ?? VerticalDirection.down, + textBaseline: props['textBaseline'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + children: as(props['children']) ?? const [], + ), + 'Row': (props) => Row( + key: props['key'], + mainAxisAlignment: + props['mainAxisAlignment'] ?? MainAxisAlignment.start, + mainAxisSize: props['mainAxisSize'] ?? MainAxisSize.max, + crossAxisAlignment: + props['crossAxisAlignment'] ?? CrossAxisAlignment.center, + textDirection: props['textDirection'], + verticalDirection: + props['verticalDirection'] ?? VerticalDirection.down, + textBaseline: props['textBaseline'], + children: as(props['children']) ?? const [], + ), + 'Column': (props) => Column( + key: props['key'], + mainAxisAlignment: + props['mainAxisAlignment'] ?? MainAxisAlignment.start, + mainAxisSize: props['mainAxisSize'] ?? MainAxisSize.max, + crossAxisAlignment: + props['crossAxisAlignment'] ?? CrossAxisAlignment.center, + textDirection: props['textDirection'], + verticalDirection: + props['verticalDirection'] ?? VerticalDirection.down, + textBaseline: props['textBaseline'], + children: as(props['children']) ?? const [], + ), + 'Flexible': (props) => Flexible( + key: props['key'], + flex: props['flex'] ?? 1, + fit: props['fit'] ?? FlexFit.loose, + child: props['child'], + ), + 'Expanded': (props) => Expanded( + key: props['key'], + flex: props['flex'] ?? 1, + child: props['child'], + ), + 'Wrap': (props) => Wrap( + key: props['key'], + direction: props['direction'] ?? Axis.horizontal, + alignment: props['alignment'] ?? WrapAlignment.start, + spacing: props['spacing']?.toDouble() ?? 0.0, + runAlignment: props['runAlignment'] ?? WrapAlignment.start, + runSpacing: props['runSpacing']?.toDouble() ?? 0.0, + crossAxisAlignment: + props['crossAxisAlignment'] ?? WrapCrossAlignment.start, + textDirection: props['textDirection'], + verticalDirection: + props['verticalDirection'] ?? VerticalDirection.down, + clipBehavior: props['clipBehavior'] ?? Clip.none, + children: as(props['children']) ?? const [], + ), + 'Flow': (props) => Flow( + key: props['key'], + delegate: props['delegate'], + children: as(props['children']) ?? const [], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'Flow.unwrapped': (props) => Flow.unwrapped( + key: props['key'], + delegate: props['delegate'], + children: as(props['children']) ?? const [], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'RichText': (props) => RichText( + key: props['key'], + text: props['text'], + textAlign: props['textAlign'] ?? TextAlign.start, + textDirection: props['textDirection'], + softWrap: props['softWrap'] ?? true, + overflow: props['overflow'] ?? TextOverflow.clip, + textScaleFactor: props['textScaleFactor']?.toDouble() ?? 1.0, + maxLines: props['maxLines'], + locale: props['locale'], + strutStyle: props['strutStyle'], + textWidthBasis: props['textWidthBasis'] ?? TextWidthBasis.parent, + textHeightBehavior: props['textHeightBehavior'], + ), + 'RawImage': (props) => RawImage( + key: props['key'], + image: props['image'], + debugImageLabel: props['debugImageLabel'], + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + scale: props['scale']?.toDouble() ?? 1.0, + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + invertColors: props['invertColors'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + isAntiAlias: props['isAntiAlias'] ?? false, + ), + 'DefaultAssetBundle': (props) => DefaultAssetBundle( + key: props['key'], + bundle: props['bundle'], + child: props['child'], + ), + 'DefaultAssetBundle.of': (props) => DefaultAssetBundle.of( + props['pa'][0], + ), + 'WidgetToRenderBoxAdapter': (props) => WidgetToRenderBoxAdapter( + renderBox: props['renderBox'], + onBuild: props['onBuild'], + onUnmount: props['onUnmount'], + ), + 'Listener': (props) => Listener( + key: props['key'], + onPointerDown: props['onPointerDown'], + onPointerMove: props['onPointerMove'], + onPointerUp: props['onPointerUp'], + onPointerHover: props['onPointerHover'], + onPointerCancel: props['onPointerCancel'], + onPointerSignal: props['onPointerSignal'], + behavior: props['behavior'] ?? HitTestBehavior.deferToChild, + child: props['child'], + ), + 'MouseRegion': (props) => MouseRegion( + key: props['key'], + onEnter: props['onEnter'], + onExit: props['onExit'], + onHover: props['onHover'], + cursor: props['cursor'] ?? MouseCursor.defer, + opaque: props['opaque'] ?? true, + child: props['child'], + ), + 'RepaintBoundary': (props) => RepaintBoundary( + key: props['key'], + child: props['child'], + ), + 'RepaintBoundary.wrap': (props) => RepaintBoundary.wrap( + props['pa'][0], + props['pa'][1], + ), + 'RepaintBoundary.wrapAll': (props) => RepaintBoundary.wrapAll( + props['pa'][0], + ), + 'IgnorePointer': (props) => IgnorePointer( + key: props['key'], + ignoring: props['ignoring'] ?? true, + ignoringSemantics: props['ignoringSemantics'], + child: props['child'], + ), + 'AbsorbPointer': (props) => AbsorbPointer( + key: props['key'], + absorbing: props['absorbing'] ?? true, + child: props['child'], + ignoringSemantics: props['ignoringSemantics'], + ), + 'MetaData': (props) => MetaData( + key: props['key'], + metaData: props['metaData'], + behavior: props['behavior'] ?? HitTestBehavior.deferToChild, + child: props['child'], + ), + 'Semantics': (props) => Semantics( + key: props['key'], + child: props['child'], + container: props['container'] ?? false, + explicitChildNodes: props['explicitChildNodes'] ?? false, + excludeSemantics: props['excludeSemantics'] ?? false, + enabled: props['enabled'], + checked: props['checked'], + selected: props['selected'], + toggled: props['toggled'], + button: props['button'], + slider: props['slider'], + keyboardKey: props['keyboardKey'], + link: props['link'], + header: props['header'], + textField: props['textField'], + readOnly: props['readOnly'], + focusable: props['focusable'], + focused: props['focused'], + inMutuallyExclusiveGroup: props['inMutuallyExclusiveGroup'], + obscured: props['obscured'], + multiline: props['multiline'], + scopesRoute: props['scopesRoute'], + namesRoute: props['namesRoute'], + hidden: props['hidden'], + image: props['image'], + liveRegion: props['liveRegion'], + maxValueLength: props['maxValueLength'], + currentValueLength: props['currentValueLength'], + label: props['label'], + attributedLabel: props['attributedLabel'], + value: props['value'], + attributedValue: props['attributedValue'], + increasedValue: props['increasedValue'], + attributedIncreasedValue: props['attributedIncreasedValue'], + decreasedValue: props['decreasedValue'], + attributedDecreasedValue: props['attributedDecreasedValue'], + hint: props['hint'], + attributedHint: props['attributedHint'], + onTapHint: props['onTapHint'], + onLongPressHint: props['onLongPressHint'], + textDirection: props['textDirection'], + sortKey: props['sortKey'], + tagForChildren: props['tagForChildren'], + onTap: props['onTap'], + onLongPress: props['onLongPress'], + onScrollLeft: props['onScrollLeft'], + onScrollRight: props['onScrollRight'], + onScrollUp: props['onScrollUp'], + onScrollDown: props['onScrollDown'], + onIncrease: props['onIncrease'], + onDecrease: props['onDecrease'], + onCopy: props['onCopy'], + onCut: props['onCut'], + onPaste: props['onPaste'], + onDismiss: props['onDismiss'], + onMoveCursorForwardByCharacter: + props['onMoveCursorForwardByCharacter'], + onMoveCursorBackwardByCharacter: + props['onMoveCursorBackwardByCharacter'], + onSetSelection: props['onSetSelection'], + onSetText: props['onSetText'], + onDidGainAccessibilityFocus: props['onDidGainAccessibilityFocus'], + onDidLoseAccessibilityFocus: props['onDidLoseAccessibilityFocus'], + customSemanticsActions: props['customSemanticsActions'], + ), + 'Semantics.fromProperties': (props) => Semantics.fromProperties( + key: props['key'], + child: props['child'], + container: props['container'] ?? false, + explicitChildNodes: props['explicitChildNodes'] ?? false, + excludeSemantics: props['excludeSemantics'] ?? false, + properties: props['properties'], + ), + 'MergeSemantics': (props) => MergeSemantics( + key: props['key'], + child: props['child'], + ), + 'BlockSemantics': (props) => BlockSemantics( + key: props['key'], + blocking: props['blocking'] ?? true, + child: props['child'], + ), + 'ExcludeSemantics': (props) => ExcludeSemantics( + key: props['key'], + excluding: props['excluding'] ?? true, + child: props['child'], + ), + 'IndexedSemantics': (props) => IndexedSemantics( + key: props['key'], + index: props['index'], + child: props['child'], + ), + 'KeyedSubtree': (props) => KeyedSubtree( + key: props['key'], + child: props['child'], + ), + 'KeyedSubtree.wrap': (props) => KeyedSubtree.wrap( + props['pa'][0], + props['pa'][1], + ), + 'KeyedSubtree.ensureUniqueKeysForList': (props) => + KeyedSubtree.ensureUniqueKeysForList( + props['pa'][0], + baseIndex: props['baseIndex'] ?? 0, + ), + 'Builder': (props) => Builder( + key: props['key'], + builder: props['builder'], + ), + 'Builder#builder': (props) => ( + BuildContext context, + ) { + return (props['block']) as Widget; + }, + 'StatefulBuilder': (props) => StatefulBuilder( + key: props['key'], + builder: props['builder'], + ), + 'StatefulBuilder#builder': (props) => ( + BuildContext context, + StateSetter setState, + ) { + return (props['block']) as Widget; + }, + 'ColoredBox': (props) => ColoredBox( + color: props['color'], + child: props['child'], + key: props['key'], + ), + 'GestureDetector': (props) => GestureDetector( + key: props['key'], + child: props['child'], + onTapDown: props['onTapDown'], + onTapUp: props['onTapUp'], + onTap: props['onTap'], + onTapCancel: props['onTapCancel'], + onSecondaryTap: props['onSecondaryTap'], + onSecondaryTapDown: props['onSecondaryTapDown'], + onSecondaryTapUp: props['onSecondaryTapUp'], + onSecondaryTapCancel: props['onSecondaryTapCancel'], + onTertiaryTapDown: props['onTertiaryTapDown'], + onTertiaryTapUp: props['onTertiaryTapUp'], + onTertiaryTapCancel: props['onTertiaryTapCancel'], + onDoubleTapDown: props['onDoubleTapDown'], + onDoubleTap: props['onDoubleTap'], + onDoubleTapCancel: props['onDoubleTapCancel'], + onLongPressDown: props['onLongPressDown'], + onLongPressCancel: props['onLongPressCancel'], + onLongPress: props['onLongPress'], + onLongPressStart: props['onLongPressStart'], + onLongPressMoveUpdate: props['onLongPressMoveUpdate'], + onLongPressUp: props['onLongPressUp'], + onLongPressEnd: props['onLongPressEnd'], + onSecondaryLongPressDown: props['onSecondaryLongPressDown'], + onSecondaryLongPressCancel: props['onSecondaryLongPressCancel'], + onSecondaryLongPress: props['onSecondaryLongPress'], + onSecondaryLongPressStart: props['onSecondaryLongPressStart'], + onSecondaryLongPressMoveUpdate: + props['onSecondaryLongPressMoveUpdate'], + onSecondaryLongPressUp: props['onSecondaryLongPressUp'], + onSecondaryLongPressEnd: props['onSecondaryLongPressEnd'], + onTertiaryLongPressDown: props['onTertiaryLongPressDown'], + onTertiaryLongPressCancel: props['onTertiaryLongPressCancel'], + onTertiaryLongPress: props['onTertiaryLongPress'], + onTertiaryLongPressStart: props['onTertiaryLongPressStart'], + onTertiaryLongPressMoveUpdate: + props['onTertiaryLongPressMoveUpdate'], + onTertiaryLongPressUp: props['onTertiaryLongPressUp'], + onTertiaryLongPressEnd: props['onTertiaryLongPressEnd'], + onVerticalDragDown: props['onVerticalDragDown'], + onVerticalDragStart: props['onVerticalDragStart'], + onVerticalDragUpdate: props['onVerticalDragUpdate'], + onVerticalDragEnd: props['onVerticalDragEnd'], + onVerticalDragCancel: props['onVerticalDragCancel'], + onHorizontalDragDown: props['onHorizontalDragDown'], + onHorizontalDragStart: props['onHorizontalDragStart'], + onHorizontalDragUpdate: props['onHorizontalDragUpdate'], + onHorizontalDragEnd: props['onHorizontalDragEnd'], + onHorizontalDragCancel: props['onHorizontalDragCancel'], + onForcePressStart: props['onForcePressStart'], + onForcePressPeak: props['onForcePressPeak'], + onForcePressUpdate: props['onForcePressUpdate'], + onForcePressEnd: props['onForcePressEnd'], + onPanDown: props['onPanDown'], + onPanStart: props['onPanStart'], + onPanUpdate: props['onPanUpdate'], + onPanEnd: props['onPanEnd'], + onPanCancel: props['onPanCancel'], + onScaleStart: props['onScaleStart'], + onScaleUpdate: props['onScaleUpdate'], + onScaleEnd: props['onScaleEnd'], + behavior: props['behavior'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + ), + 'RawGestureDetector': (props) => RawGestureDetector( + key: props['key'], + child: props['child'], + gestures: + props['gestures'] ?? const {}, + behavior: props['behavior'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + semantics: props['semantics'], + ), + 'StreamBuilder': (props) => StreamBuilder( + key: props['key'], + initialData: props['initialData'], + stream: props['stream'], + builder: props['builder'], + ), + 'StreamBuilder#builder': (props) => ( + BuildContext context, + AsyncSnapshot snapshot, + ) { + return (props['block']) as Widget; + }, + 'FutureBuilder': (props) => FutureBuilder( + key: props['key'], + future: props['future'], + initialData: props['initialData'], + builder: props['builder'], + ), + 'FutureBuilder#builder': (props) => ( + BuildContext context, + AsyncSnapshot snapshot, + ) { + return (props['block']) as Widget; + }, + 'ConnectionState': { + 'values': ConnectionState.values, + 'none': ConnectionState.none, + 'waiting': ConnectionState.waiting, + 'active': ConnectionState.active, + 'done': ConnectionState.done, + }, + 'DefaultTextStyle': (props) => DefaultTextStyle( + key: props['key'], + style: props['style'], + textAlign: props['textAlign'], + softWrap: props['softWrap'] ?? true, + overflow: props['overflow'] ?? TextOverflow.clip, + maxLines: props['maxLines'], + textWidthBasis: props['textWidthBasis'] ?? TextWidthBasis.parent, + textHeightBehavior: props['textHeightBehavior'], + child: props['child'], + ), + 'DefaultTextStyle.fallback': (props) => DefaultTextStyle.fallback( + key: props['key'], + ), + 'DefaultTextStyle.merge': (props) => DefaultTextStyle.merge( + key: props['key'], + style: props['style'], + textAlign: props['textAlign'], + softWrap: props['softWrap'] ?? true, + overflow: props['overflow'] ?? TextOverflow.clip, + maxLines: props['maxLines'], + textWidthBasis: props['textWidthBasis'] ?? TextWidthBasis.parent, + child: props['child'], + ), + 'DefaultTextStyle.of': (props) => DefaultTextStyle.of( + props['pa'][0], + ), + 'DefaultTextHeightBehavior': (props) => DefaultTextHeightBehavior( + key: props['key'], + textHeightBehavior: props['textHeightBehavior'], + child: props['child'], + ), + 'DefaultTextHeightBehavior.of': (props) => DefaultTextHeightBehavior.of( + props['pa'][0], + ), + 'Text': (props) => Text( + props['pa'][0], + key: props['key'], + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'], + textDirection: props['textDirection'], + locale: props['locale'], + softWrap: props['softWrap'], + overflow: props['overflow'], + textScaleFactor: props['textScaleFactor']?.toDouble(), + maxLines: props['maxLines'], + semanticsLabel: props['semanticsLabel'], + textWidthBasis: props['textWidthBasis'], + textHeightBehavior: props['textHeightBehavior'], + ), + 'Text.rich': (props) => Text.rich( + props['pa'][0], + key: props['key'], + style: props['style'], + strutStyle: props['strutStyle'], + textAlign: props['textAlign'], + textDirection: props['textDirection'], + locale: props['locale'], + softWrap: props['softWrap'], + overflow: props['overflow'], + textScaleFactor: props['textScaleFactor']?.toDouble(), + maxLines: props['maxLines'], + semanticsLabel: props['semanticsLabel'], + textWidthBasis: props['textWidthBasis'], + textHeightBehavior: props['textHeightBehavior'], + ), + 'ActionListener': (props) => ActionListener( + key: props['key'], + listener: props['listener'], + action: props['action'], + child: props['child'], + ), + 'ActionListener#listener': (props) => ( + Action action, + ) { + return (props['block']); + }, + 'Actions': (props) => Actions( + key: props['key'], + dispatcher: props['dispatcher'], + actions: props['actions'], + child: props['child'], + ), + 'Actions.handler': (props) => Actions.handler( + props['pa'][0], + props['pa'][1] as T, + ), + 'Actions.find': (props) => Actions.find( + props['pa'][0], + intent: props['intent'] as T, + ), + 'Actions.maybeFind': (props) => Actions.maybeFind( + props['pa'][0], + intent: props['intent'] as T, + ), + 'Actions.of': (props) => Actions.of( + props['pa'][0], + ), + 'Actions.invoke': (props) => Actions.invoke( + props['pa'][0], + props['pa'][1] as T, + ), + 'Actions.maybeInvoke': (props) => Actions.maybeInvoke( + props['pa'][0], + props['pa'][1] as T, + ), + 'FocusableActionDetector': (props) => FocusableActionDetector( + key: props['key'], + enabled: props['enabled'] ?? true, + focusNode: props['focusNode'], + autofocus: props['autofocus'] ?? false, + descendantsAreFocusable: props['descendantsAreFocusable'] ?? true, + shortcuts: props['shortcuts'], + actions: props['actions'], + onShowFocusHighlight: props['onShowFocusHighlight'], + onShowHoverHighlight: props['onShowHoverHighlight'], + onFocusChange: props['onFocusChange'], + mouseCursor: props['mouseCursor'] ?? MouseCursor.defer, + child: props['child'], + ), + 'Form': (props) => Form( + key: props['key'], + child: props['child'], + onWillPop: props['onWillPop'], + onChanged: props['onChanged'], + autovalidateMode: props['autovalidateMode'], + ), + 'Form#onWillPop': (props) => () { + return (props['block']) as Future; + }, + 'Form.of': (props) => Form.of( + props['pa'][0], + ), + 'FormField': (props) => FormField( + key: props['key'], + builder: props['builder'], + onSaved: props['onSaved'], + validator: props['validator'], + initialValue: props['initialValue'], + enabled: props['enabled'] ?? true, + autovalidateMode: props['autovalidateMode'], + restorationId: props['restorationId'], + ), + 'FormField#builder': (props) => ( + FormFieldState field, + ) { + return (props['block']) as Widget; + }, + 'FormField#onSaved': (props) => ( + T newValue, + ) { + return (props['block']); + }, + 'FormField#validator': (props) => ( + T value, + ) { + return (props['block']) as String; + }, + 'AutovalidateMode': { + 'values': AutovalidateMode.values, + 'disabled': AutovalidateMode.disabled, + 'always': AutovalidateMode.always, + 'onUserInteraction': AutovalidateMode.onUserInteraction, + }, + 'Image': (props) => Image( + key: props['key'], + image: props['image'], + frameBuilder: props['frameBuilder'], + loadingBuilder: props['loadingBuilder'], + errorBuilder: props['errorBuilder'], + semanticLabel: props['semanticLabel'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + gaplessPlayback: props['gaplessPlayback'] ?? false, + isAntiAlias: props['isAntiAlias'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + ), + 'Image.network': (props) => Image.network( + props['pa'][0], + key: props['key'], + scale: props['scale']?.toDouble() ?? 1.0, + frameBuilder: props['frameBuilder'], + loadingBuilder: props['loadingBuilder'], + errorBuilder: props['errorBuilder'], + semanticLabel: props['semanticLabel'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + gaplessPlayback: props['gaplessPlayback'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + isAntiAlias: props['isAntiAlias'] ?? false, + headers: props['headers'], + cacheWidth: props['cacheWidth'], + cacheHeight: props['cacheHeight'], + ), + 'Image.file': (props) => Image.file( + props['pa'][0], + key: props['key'], + scale: props['scale']?.toDouble() ?? 1.0, + frameBuilder: props['frameBuilder'], + errorBuilder: props['errorBuilder'], + semanticLabel: props['semanticLabel'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + gaplessPlayback: props['gaplessPlayback'] ?? false, + isAntiAlias: props['isAntiAlias'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + cacheWidth: props['cacheWidth'], + cacheHeight: props['cacheHeight'], + ), + 'Image.asset': (props) => Image.asset( + props['pa'][0], + key: props['key'], + bundle: props['bundle'], + frameBuilder: props['frameBuilder'], + errorBuilder: props['errorBuilder'], + semanticLabel: props['semanticLabel'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + scale: props['scale']?.toDouble() ?? 1.0, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + gaplessPlayback: props['gaplessPlayback'] ?? false, + isAntiAlias: props['isAntiAlias'] ?? false, + package: props['package'], + filterQuality: props['filterQuality'] ?? FilterQuality.low, + cacheWidth: props['cacheWidth'], + cacheHeight: props['cacheHeight'], + ), + 'Image.memory': (props) => Image.memory( + props['pa'][0], + key: props['key'], + scale: props['scale']?.toDouble() ?? 1.0, + frameBuilder: props['frameBuilder'], + errorBuilder: props['errorBuilder'], + semanticLabel: props['semanticLabel'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + color: props['color'], + opacity: props['opacity'], + colorBlendMode: props['colorBlendMode'], + fit: props['fit'], + alignment: props['alignment'] ?? Alignment.center, + repeat: props['repeat'] ?? ImageRepeat.noRepeat, + centerSlice: props['centerSlice'], + matchTextDirection: props['matchTextDirection'] ?? false, + gaplessPlayback: props['gaplessPlayback'] ?? false, + isAntiAlias: props['isAntiAlias'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + cacheWidth: props['cacheWidth'], + cacheHeight: props['cacheHeight'], + ), + 'Image#frameBuilder': (props) => ( + BuildContext context, + Widget child, + int frame, + bool wasSynchronouslyLoaded, + ) { + return (props['block']) as Widget; + }, + 'Image#loadingBuilder': (props) => ( + BuildContext context, + Widget child, + dynamic loadingProgress, + ) { + return (props['block']) as Widget; + }, + 'Image#errorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'Image.network#frameBuilder': (props) => ( + BuildContext context, + Widget child, + int frame, + bool wasSynchronouslyLoaded, + ) { + return (props['block']) as Widget; + }, + 'Image.network#loadingBuilder': (props) => ( + BuildContext context, + Widget child, + dynamic loadingProgress, + ) { + return (props['block']) as Widget; + }, + 'Image.network#errorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'Image.file#frameBuilder': (props) => ( + BuildContext context, + Widget child, + int frame, + bool wasSynchronouslyLoaded, + ) { + return (props['block']) as Widget; + }, + 'Image.file#errorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'Image.asset#frameBuilder': (props) => ( + BuildContext context, + Widget child, + int frame, + bool wasSynchronouslyLoaded, + ) { + return (props['block']) as Widget; + }, + 'Image.asset#errorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'Image.memory#frameBuilder': (props) => ( + BuildContext context, + Widget child, + int frame, + bool wasSynchronouslyLoaded, + ) { + return (props['block']) as Widget; + }, + 'Image.memory#errorBuilder': (props) => ( + BuildContext context, + Object error, + StackTrace stackTrace, + ) { + return (props['block']) as Widget; + }, + 'IconThemeData.lerp': (props) => IconThemeData.lerp( + props['pa'][0], + props['pa'][1], + props['pa'][2]?.toDouble(), + ), + 'Texture': (props) => Texture( + key: props['key'], + textureId: props['textureId'], + freeze: props['freeze'] ?? false, + filterQuality: props['filterQuality'] ?? FilterQuality.low, + ), + 'NestedScrollView': (props) => NestedScrollView( + key: props['key'], + controller: props['controller'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + physics: props['physics'], + headerSliverBuilder: props['headerSliverBuilder'], + body: props['body'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + floatHeaderSlivers: props['floatHeaderSlivers'] ?? false, + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + restorationId: props['restorationId'], + scrollBehavior: props['scrollBehavior'], + ), + 'NestedScrollView#headerSliverBuilder': (props) => ( + BuildContext context, + bool innerBoxIsScrolled, + ) { + return (props['block']) as List; + }, + 'NestedScrollView.sliverOverlapAbsorberHandleFor': (props) => + NestedScrollView.sliverOverlapAbsorberHandleFor( + props['pa'][0], + ), + 'SliverOverlapAbsorber': (props) => SliverOverlapAbsorber( + key: props['key'], + handle: props['handle'], + sliver: props['sliver'], + ), + 'SliverOverlapInjector': (props) => SliverOverlapInjector( + key: props['key'], + handle: props['handle'], + sliver: props['sliver'], + ), + 'NestedScrollViewViewport': (props) => NestedScrollViewViewport( + key: props['key'], + axisDirection: props['axisDirection'] ?? AxisDirection.down, + crossAxisDirection: props['crossAxisDirection'], + anchor: props['anchor']?.toDouble() ?? 0.0, + offset: props['offset'], + center: props['center'], + slivers: as(props['slivers']) ?? const [], + handle: props['handle'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'NavigationToolbar': (props) => NavigationToolbar( + key: props['key'], + leading: props['leading'], + middle: props['middle'], + trailing: props['trailing'], + centerMiddle: props['centerMiddle'] ?? true, + middleSpacing: props['middleSpacing']?.toDouble() ?? kMiddleSpacing, + ), + 'NavigationToolbar.kMiddleSpacing': NavigationToolbar.kMiddleSpacing, + + 'ReorderableList': (props) => ReorderableList( + key: props['key'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + onReorder: props['onReorder'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + proxyDecorator: props['proxyDecorator'], + padding: props['padding'], + scrollDirection: props['scrollDirection'] ?? Axis.vertical, + reverse: props['reverse'] ?? false, + controller: props['controller'], + primary: props['primary'], + physics: props['physics'], + shrinkWrap: props['shrinkWrap'] ?? false, + anchor: props['anchor']?.toDouble() ?? 0.0, + cacheExtent: props['cacheExtent']?.toDouble(), + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + keyboardDismissBehavior: props['keyboardDismissBehavior'] ?? + ScrollViewKeyboardDismissBehavior.manual, + restorationId: props['restorationId'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + ), + 'ReorderableList#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'ReorderableList#onReorder': (props) => ( + int oldIndex, + int newIndex, + ) { + return (props['block']); + }, + 'ReorderableList#proxyDecorator': (props) => ( + Widget child, + int index, + dynamic animation, + ) { + return (props['block']) as Widget; + }, + 'ReorderableList.of': (props) => ReorderableList.of( + props['pa'][0], + ), + 'ReorderableList.maybeOf': (props) => ReorderableList.maybeOf( + props['pa'][0], + ), + 'SliverReorderableList': (props) => SliverReorderableList( + key: props['key'], + itemBuilder: props['itemBuilder'], + itemCount: props['itemCount'], + onReorder: props['onReorder'], + itemExtent: props['itemExtent']?.toDouble(), + prototypeItem: props['prototypeItem'], + proxyDecorator: props['proxyDecorator'], + ), + 'SliverReorderableList#itemBuilder': (props) => ( + BuildContext context, + int index, + ) { + return (props['block']) as Widget; + }, + 'SliverReorderableList#onReorder': (props) => ( + int oldIndex, + int newIndex, + ) { + return (props['block']); + }, + 'SliverReorderableList#proxyDecorator': (props) => ( + Widget child, + int index, + dynamic animation, + ) { + return (props['block']) as Widget; + }, + 'SliverReorderableList.of': (props) => SliverReorderableList.of( + props['pa'][0], + ), + 'SliverReorderableList.maybeOf': (props) => SliverReorderableList.maybeOf( + props['pa'][0], + ), + 'ReorderableDragStartListener': (props) => ReorderableDragStartListener( + key: props['key'], + child: props['child'], + index: props['index'], + enabled: props['enabled'] ?? true, + ), + 'ReorderableDelayedDragStartListener': (props) => + ReorderableDelayedDragStartListener( + key: props['key'], + child: props['child'], + index: props['index'], + enabled: props['enabled'] ?? true, + ), + 'SliverLayoutBuilder': (props) => SliverLayoutBuilder( + key: props['key'], + builder: props['builder'], + ), + 'SliverLayoutBuilder#builder': (props) => ( + BuildContext context, + dynamic constraints, + ) { + return (props['block']) as Widget; + }, + 'HeroControllerScope': (props) => HeroControllerScope( + key: props['key'], + controller: props['controller'], + child: props['child'], + ), + 'HeroControllerScope.none': (props) => HeroControllerScope.none( + key: props['key'], + child: props['child'], + ), + 'HeroControllerScope.of': (props) => HeroControllerScope.of( + props['pa'][0], + ), + 'Navigator': (props) => Navigator( + key: props['key'], + pages: as(props['pages']) ?? const >[], + onPopPage: props['onPopPage'], + initialRoute: props['initialRoute'], + onGenerateInitialRoutes: props['onGenerateInitialRoutes'] ?? + Navigator.defaultGenerateInitialRoutes, + onGenerateRoute: props['onGenerateRoute'], + onUnknownRoute: props['onUnknownRoute'], + transitionDelegate: props['transitionDelegate'] ?? + const DefaultTransitionDelegate(), + reportsRouteUpdateToEngine: + props['reportsRouteUpdateToEngine'] ?? false, + observers: as(props['observers']) ?? + const [], + restorationScopeId: props['restorationScopeId'], + ), + 'Navigator#onPopPage': (props) => ( + Route route, + dynamic result, + ) { + return (props['block']) as bool; + }, + 'Navigator#onGenerateInitialRoutes': (props) => ( + NavigatorState navigator, + String initialRoute, + ) { + return (props['block']) as List; + }, + 'Navigator#onGenerateRoute': (props) => ( + RouteSettings settings, + ) { + return (props['block']) as Route; + }, + 'Navigator#onUnknownRoute': (props) => ( + RouteSettings settings, + ) { + return (props['block']) as Route; + }, + 'Navigator.defaultRouteName': Navigator.defaultRouteName, + 'Navigator.restorablePushNamed': (props) => Navigator.restorablePushNamed( + props['pa'][0], + props['pa'][1], + arguments: props['arguments'], + ), + 'Navigator.pushReplacementNamed': (props) => + Navigator.pushReplacementNamed( + props['pa'][0], + props['pa'][1], + result: props['result'], + arguments: props['arguments'], + ), + 'Navigator.restorablePushReplacementNamed': (props) => + Navigator.restorablePushReplacementNamed( + props['pa'][0], + props['pa'][1], + result: props['result'], + arguments: props['arguments'], + ), + 'Navigator.popAndPushNamed': (props) => Navigator.popAndPushNamed( + props['pa'][0], + props['pa'][1], + result: props['result'], + arguments: props['arguments'], + ), + 'Navigator.restorablePopAndPushNamed': (props) => + Navigator.restorablePopAndPushNamed( + props['pa'][0], + props['pa'][1], + result: props['result'], + arguments: props['arguments'], + ), + 'Navigator.pushNamedAndRemoveUntil': (props) => + Navigator.pushNamedAndRemoveUntil( + props['pa'][0], + props['pa'][1], + props['pa'][2], + arguments: props['arguments'], + ), + 'Navigator.restorablePushNamedAndRemoveUntil': (props) => + Navigator.restorablePushNamedAndRemoveUntil( + props['pa'][0], + props['pa'][1], + props['pa'][2], + arguments: props['arguments'], + ), + 'Navigator.push': (props) => Navigator.push( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.restorablePush': (props) => Navigator.restorablePush( + props['pa'][0], + props['pa'][1], + arguments: props['arguments'], + ), + 'Navigator.pushReplacement': (props) => Navigator.pushReplacement( + props['pa'][0], + props['pa'][1], + result: props['result'], + ), + 'Navigator.restorablePushReplacement': (props) => + Navigator.restorablePushReplacement( + props['pa'][0], + props['pa'][1], + result: props['result'], + arguments: props['arguments'], + ), + 'Navigator.pushAndRemoveUntil': (props) => Navigator.pushAndRemoveUntil( + props['pa'][0], + props['pa'][1], + props['pa'][2], + ), + 'Navigator.restorablePushAndRemoveUntil': (props) => + Navigator.restorablePushAndRemoveUntil( + props['pa'][0], + props['pa'][1], + props['pa'][2], + arguments: props['arguments'], + ), + 'Navigator.replace': (props) => Navigator.replace( + props['pa'][0], + oldRoute: props['oldRoute'], + newRoute: props['newRoute'], + ), + 'Navigator.restorableReplace': (props) => Navigator.restorableReplace( + props['pa'][0], + oldRoute: props['oldRoute'], + newRouteBuilder: props['newRouteBuilder'], + arguments: props['arguments'], + ), + 'Navigator.replaceRouteBelow': (props) => Navigator.replaceRouteBelow( + props['pa'][0], + anchorRoute: props['anchorRoute'], + newRoute: props['newRoute'], + ), + 'Navigator.restorableReplaceRouteBelow': (props) => + Navigator.restorableReplaceRouteBelow( + props['pa'][0], + anchorRoute: props['anchorRoute'], + newRouteBuilder: props['newRouteBuilder'], + arguments: props['arguments'], + ), + 'Navigator.canPop': (props) => Navigator.canPop( + props['pa'][0], + ), + 'Navigator.maybePop': (props) => Navigator.maybePop( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.pop': (props) => Navigator.pop( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.popUntil': (props) => Navigator.popUntil( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.removeRoute': (props) => Navigator.removeRoute( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.removeRouteBelow': (props) => Navigator.removeRouteBelow( + props['pa'][0], + props['pa'][1], + ), + 'Navigator.of': (props) => Navigator.of( + props['pa'][0], + rootNavigator: props['rootNavigator'] ?? false, + ), + 'Navigator.maybeOf': (props) => Navigator.maybeOf( + props['pa'][0], + rootNavigator: props['rootNavigator'] ?? false, + ), + 'Navigator.defaultGenerateInitialRoutes': (props) => + Navigator.defaultGenerateInitialRoutes( + props['pa'][0], + props['pa'][1], + ), + 'RoutePopDisposition': { + 'values': RoutePopDisposition.values, + 'pop': RoutePopDisposition.pop, + 'doNotPop': RoutePopDisposition.doNotPop, + 'bubble': RoutePopDisposition.bubble, + }, + 'PreferredSize': (props) => PreferredSize( + key: props['key'], + child: props['child'], + preferredSize: props['preferredSize'], + ), + 'ValueListenableBuilder': (props) => ValueListenableBuilder( + key: props['key'], + valueListenable: props['valueListenable'], + builder: props['builder'], + child: props['child'], + ), + 'ValueListenableBuilder#builder': (props) => ( + BuildContext context, + T value, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'MediaQuery': (props) => MediaQuery( + key: props['key'], + data: props['data'], + child: props['child'], + ), + 'MediaQuery.removePadding': (props) => MediaQuery.removePadding( + key: props['key'], + context: props['context'], + removeLeft: props['removeLeft'] ?? false, + removeTop: props['removeTop'] ?? false, + removeRight: props['removeRight'] ?? false, + removeBottom: props['removeBottom'] ?? false, + child: props['child'], + ), + 'MediaQuery.removeViewInsets': (props) => MediaQuery.removeViewInsets( + key: props['key'], + context: props['context'], + removeLeft: props['removeLeft'] ?? false, + removeTop: props['removeTop'] ?? false, + removeRight: props['removeRight'] ?? false, + removeBottom: props['removeBottom'] ?? false, + child: props['child'], + ), + 'MediaQuery.removeViewPadding': (props) => MediaQuery.removeViewPadding( + key: props['key'], + context: props['context'], + removeLeft: props['removeLeft'] ?? false, + removeTop: props['removeTop'] ?? false, + removeRight: props['removeRight'] ?? false, + removeBottom: props['removeBottom'] ?? false, + child: props['child'], + ), + 'MediaQuery.fromWindow': (props) => MediaQuery.fromWindow( + key: props['key'], + child: props['child'], + ), + 'MediaQuery.of': (props) => MediaQuery.of( + props['pa'][0], + ), + 'MediaQuery.maybeOf': (props) => MediaQuery.maybeOf( + props['pa'][0], + ), + 'MediaQuery.textScaleFactorOf': (props) => MediaQuery.textScaleFactorOf( + props['pa'][0], + ), + 'MediaQuery.platformBrightnessOf': (props) => + MediaQuery.platformBrightnessOf( + props['pa'][0], + ), + 'MediaQuery.highContrastOf': (props) => MediaQuery.highContrastOf( + props['pa'][0], + ), + 'MediaQuery.boldTextOverride': (props) => MediaQuery.boldTextOverride( + props['pa'][0], + ), + 'Orientation': { + 'values': Orientation.values, + 'portrait': Orientation.portrait, + 'landscape': Orientation.landscape, + }, + 'NavigationMode': { + 'values': NavigationMode.values, + 'traditional': NavigationMode.traditional, + 'directional': NavigationMode.directional, + }, + 'DraggableScrollableSheet': (props) => DraggableScrollableSheet( + key: props['key'], + initialChildSize: props['initialChildSize']?.toDouble() ?? 0.5, + minChildSize: props['minChildSize']?.toDouble() ?? 0.25, + maxChildSize: props['maxChildSize']?.toDouble() ?? 1.0, + expand: props['expand'] ?? true, + builder: props['builder'], + ), + 'DraggableScrollableSheet#builder': (props) => ( + BuildContext context, + ScrollController scrollController, + ) { + return (props['block']) as Widget; + }, + 'DraggableScrollableActuator': (props) => DraggableScrollableActuator( + key: props['key'], + child: props['child'], + ), + 'DraggableScrollableActuator.reset': (props) => + DraggableScrollableActuator.reset( + props['pa'][0], + ), + 'DecoratedBox': (props) => DecoratedBox( + key: props['key'], + decoration: props['decoration'], + position: props['position'] ?? DecorationPosition.background, + child: props['child'], + ), + 'Container': (props) => Container( + key: props['key'], + alignment: props['alignment'], + padding: props['padding'], + color: props['color'], + decoration: props['decoration'], + foregroundDecoration: props['foregroundDecoration'], + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + constraints: props['constraints'], + margin: props['margin'], + transform: props['transform'], + transformAlignment: props['transformAlignment'], + child: props['child'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + ), + 'EditableText': (props) => EditableText( + key: props['key'], + controller: props['controller'], + focusNode: props['focusNode'], + readOnly: props['readOnly'] ?? false, + obscuringCharacter: props['obscuringCharacter'] ?? '•', + obscureText: props['obscureText'] ?? false, + autocorrect: props['autocorrect'] ?? true, + smartDashesType: props['smartDashesType'], + smartQuotesType: props['smartQuotesType'], + enableSuggestions: props['enableSuggestions'] ?? true, + style: props['style'], + strutStyle: props['strutStyle'], + cursorColor: props['cursorColor'], + backgroundCursorColor: props['backgroundCursorColor'], + textAlign: props['textAlign'] ?? TextAlign.start, + textDirection: props['textDirection'], + locale: props['locale'], + textScaleFactor: props['textScaleFactor']?.toDouble(), + maxLines: props['maxLines'] ?? 1, + minLines: props['minLines'], + expands: props['expands'] ?? false, + forceLine: props['forceLine'] ?? true, + textHeightBehavior: props['textHeightBehavior'], + textWidthBasis: props['textWidthBasis'] ?? TextWidthBasis.parent, + autofocus: props['autofocus'] ?? false, + showCursor: props['showCursor'], + showSelectionHandles: props['showSelectionHandles'] ?? false, + selectionColor: props['selectionColor'], + selectionControls: props['selectionControls'], + keyboardType: props['keyboardType'], + textInputAction: props['textInputAction'], + textCapitalization: + props['textCapitalization'] ?? TextCapitalization.none, + onChanged: props['onChanged'], + onEditingComplete: props['onEditingComplete'], + onSubmitted: props['onSubmitted'], + onAppPrivateCommand: props['onAppPrivateCommand'], + onSelectionChanged: props['onSelectionChanged'], + onSelectionHandleTapped: props['onSelectionHandleTapped'], + inputFormatters: as(props['inputFormatters']), + mouseCursor: props['mouseCursor'], + rendererIgnoresPointer: props['rendererIgnoresPointer'] ?? false, + cursorWidth: props['cursorWidth']?.toDouble() ?? 2.0, + cursorHeight: props['cursorHeight']?.toDouble(), + cursorRadius: props['cursorRadius'], + cursorOpacityAnimates: props['cursorOpacityAnimates'] ?? false, + cursorOffset: props['cursorOffset'], + paintCursorAboveText: props['paintCursorAboveText'] ?? false, + selectionHeightStyle: + props['selectionHeightStyle'] ?? ui.BoxHeightStyle.tight, + selectionWidthStyle: + props['selectionWidthStyle'] ?? ui.BoxWidthStyle.tight, + scrollPadding: props['scrollPadding'] ?? const EdgeInsets.all(20.0), + keyboardAppearance: props['keyboardAppearance'] ?? Brightness.light, + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + enableInteractiveSelection: + props['enableInteractiveSelection'] ?? true, + scrollController: props['scrollController'], + scrollPhysics: props['scrollPhysics'], + autocorrectionTextRectColor: props['autocorrectionTextRectColor'], + toolbarOptions: props['toolbarOptions'] ?? + const ToolbarOptions( + copy: true, cut: true, paste: true, selectAll: true), + autofillHints: props['autofillHints'], + clipBehavior: props['clipBehavior'] ?? Clip.hardEdge, + restorationId: props['restorationId'], + scrollBehavior: props['scrollBehavior'], + enableIMEPersonalizedLearning: + props['enableIMEPersonalizedLearning'] ?? true, + ), + 'EditableText#onAppPrivateCommand': (props) => ( + String, + Map, + ) { + return (props['block']); + }, + 'EditableText#onSelectionChanged': (props) => ( + dynamic selection, + dynamic cause, + ) { + return (props['block']); + }, + 'Placeholder': (props) => Placeholder( + key: props['key'], + color: props['color'] ?? const Color(0xFF455A64), + strokeWidth: props['strokeWidth']?.toDouble() ?? 2.0, + fallbackWidth: props['fallbackWidth']?.toDouble() ?? 400.0, + fallbackHeight: props['fallbackHeight']?.toDouble() ?? 400.0, + ), + 'Icon': (props) => Icon( + props['pa'][0], + key: props['key'], + size: props['size']?.toDouble(), + color: props['color'], + semanticLabel: props['semanticLabel'], + textDirection: props['textDirection'], + ), + 'Visibility': (props) => Visibility( + key: props['key'], + child: props['child'], + replacement: props['replacement'] ?? const SizedBox.shrink(), + visible: props['visible'] ?? true, + maintainState: props['maintainState'] ?? false, + maintainAnimation: props['maintainAnimation'] ?? false, + maintainSize: props['maintainSize'] ?? false, + maintainSemantics: props['maintainSemantics'] ?? false, + maintainInteractivity: props['maintainInteractivity'] ?? false, + ), + 'SliverVisibility': (props) => SliverVisibility( + key: props['key'], + sliver: props['sliver'], + replacementSliver: + props['replacementSliver'] ?? const SliverToBoxAdapter(), + visible: props['visible'] ?? true, + maintainState: props['maintainState'] ?? false, + maintainAnimation: props['maintainAnimation'] ?? false, + maintainSize: props['maintainSize'] ?? false, + maintainSemantics: props['maintainSemantics'] ?? false, + maintainInteractivity: props['maintainInteractivity'] ?? false, + ), + 'AnimatedContainer': (props) => AnimatedContainer( + key: props['key'], + alignment: props['alignment'], + padding: props['padding'], + color: props['color'], + decoration: props['decoration'], + foregroundDecoration: props['foregroundDecoration'], + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + constraints: props['constraints'], + margin: props['margin'], + transform: props['transform'], + transformAlignment: props['transformAlignment'], + child: props['child'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedPadding': (props) => AnimatedPadding( + key: props['key'], + padding: props['padding'], + child: props['child'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedAlign': (props) => AnimatedAlign( + key: props['key'], + alignment: props['alignment'], + child: props['child'], + heightFactor: props['heightFactor']?.toDouble(), + widthFactor: props['widthFactor']?.toDouble(), + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedPositioned': (props) => AnimatedPositioned( + key: props['key'], + child: props['child'], + left: props['left']?.toDouble(), + top: props['top']?.toDouble(), + right: props['right']?.toDouble(), + bottom: props['bottom']?.toDouble(), + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedPositioned.fromRect': (props) => AnimatedPositioned.fromRect( + key: props['key'], + child: props['child'], + rect: props['rect'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedPositionedDirectional': (props) => AnimatedPositionedDirectional( + key: props['key'], + child: props['child'], + start: props['start']?.toDouble(), + top: props['top']?.toDouble(), + end: props['end']?.toDouble(), + bottom: props['bottom']?.toDouble(), + width: props['width']?.toDouble(), + height: props['height']?.toDouble(), + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedScale': (props) => AnimatedScale( + key: props['key'], + child: props['child'], + scale: props['scale']?.toDouble(), + alignment: props['alignment'] ?? Alignment.center, + filterQuality: props['filterQuality'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedRotation': (props) => AnimatedRotation( + key: props['key'], + child: props['child'], + turns: props['turns']?.toDouble(), + alignment: props['alignment'] ?? Alignment.center, + filterQuality: props['filterQuality'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedSlide': (props) => AnimatedSlide( + key: props['key'], + child: props['child'], + offset: props['offset'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedOpacity': (props) => AnimatedOpacity( + key: props['key'], + child: props['child'], + opacity: props['opacity']?.toDouble(), + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + ), + 'SliverAnimatedOpacity': (props) => SliverAnimatedOpacity( + key: props['key'], + sliver: props['sliver'], + opacity: props['opacity']?.toDouble(), + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + alwaysIncludeSemantics: props['alwaysIncludeSemantics'] ?? false, + ), + 'AnimatedDefaultTextStyle': (props) => AnimatedDefaultTextStyle( + key: props['key'], + child: props['child'], + style: props['style'], + textAlign: props['textAlign'], + softWrap: props['softWrap'] ?? true, + overflow: props['overflow'] ?? TextOverflow.clip, + maxLines: props['maxLines'], + textWidthBasis: props['textWidthBasis'] ?? TextWidthBasis.parent, + textHeightBehavior: props['textHeightBehavior'], + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'AnimatedPhysicalModel': (props) => AnimatedPhysicalModel( + key: props['key'], + child: props['child'], + shape: props['shape'], + clipBehavior: props['clipBehavior'] ?? Clip.none, + borderRadius: props['borderRadius'] ?? BorderRadius.zero, + elevation: props['elevation']?.toDouble(), + color: props['color'], + animateColor: props['animateColor'] ?? true, + shadowColor: props['shadowColor'], + animateShadowColor: props['animateShadowColor'] ?? true, + curve: props['curve'] ?? Curves.linear, + duration: props['duration'], + onEnd: props['onEnd'], + ), + 'Table': (props) => Table( + key: props['key'], + children: as(props['children']) ?? const [], + columnWidths: props['columnWidths'], + defaultColumnWidth: + props['defaultColumnWidth'] ?? const FlexColumnWidth(1.0), + textDirection: props['textDirection'], + border: props['border'], + defaultVerticalAlignment: props['defaultVerticalAlignment'] ?? + TableCellVerticalAlignment.top, + textBaseline: props['textBaseline'], + ), + 'TableCell': (props) => TableCell( + key: props['key'], + verticalAlignment: props['verticalAlignment'], + child: props['child'], + ), + 'SliverPrototypeExtentList': (props) => SliverPrototypeExtentList( + key: props['key'], + delegate: props['delegate'], + prototypeItem: props['prototypeItem'], + ), + 'AnimatedSwitcher': (props) => AnimatedSwitcher( + key: props['key'], + child: props['child'], + duration: props['duration'], + reverseDuration: props['reverseDuration'], + switchInCurve: props['switchInCurve'] ?? Curves.linear, + switchOutCurve: props['switchOutCurve'] ?? Curves.linear, + transitionBuilder: props['transitionBuilder'] ?? + AnimatedSwitcher.defaultTransitionBuilder, + ), + 'AnimatedSwitcher#transitionBuilder': (props) => ( + Widget child, + dynamic animation, + ) { + return (props['block']) as Widget; + }, + 'AnimatedSwitcher#layoutBuilder': (props) => ( + Widget currentChild, + List previousChildren, + ) { + return (props['block']) as Widget; + }, + 'AnimatedSwitcher.defaultTransitionBuilder': (props) => + AnimatedSwitcher.defaultTransitionBuilder( + props['pa'][0], + props['pa'][1], + ), + 'AnimatedSwitcher.defaultLayoutBuilder': (props) => + AnimatedSwitcher.defaultLayoutBuilder( + props['pa'][0], + props['pa'][1], + ), + 'Title': (props) => Title( + key: props['key'], + title: props['title'] ?? '', + color: props['color'], + child: props['child'], + ), + 'ColorFiltered': (props) => ColorFiltered( + colorFilter: props['colorFilter'], + child: props['child'], + key: props['key'], + ), + 'FocusTraversalOrder': (props) => FocusTraversalOrder( + key: props['key'], + order: props['order'], + child: props['child'], + ), + 'FocusTraversalOrder.of': (props) => FocusTraversalOrder.of( + props['pa'][0], + ), + 'FocusTraversalOrder.maybeOf': (props) => FocusTraversalOrder.maybeOf( + props['pa'][0], + ), + 'FocusTraversalGroup': (props) => FocusTraversalGroup( + key: props['key'], + policy: props['policy'], + descendantsAreFocusable: props['descendantsAreFocusable'] ?? true, + child: props['child'], + ), + 'FocusTraversalGroup.of': (props) => FocusTraversalGroup.of( + props['pa'][0], + ), + 'FocusTraversalGroup.maybeOf': (props) => FocusTraversalGroup.maybeOf( + props['pa'][0], + ), + 'TraversalDirection': { + 'values': TraversalDirection.values, + 'up': TraversalDirection.up, + 'right': TraversalDirection.right, + 'down': TraversalDirection.down, + 'left': TraversalDirection.left, + }, + 'KeyEventResult': { + 'values': KeyEventResult.values, + 'handled': KeyEventResult.handled, + 'ignored': KeyEventResult.ignored, + 'skipRemainingHandlers': KeyEventResult.skipRemainingHandlers, + }, + 'UnfocusDisposition': { + 'values': UnfocusDisposition.values, + 'scope': UnfocusDisposition.scope, + 'previouslyFocusedChild': UnfocusDisposition.previouslyFocusedChild, + }, + 'FocusHighlightMode': { + 'values': FocusHighlightMode.values, + 'touch': FocusHighlightMode.touch, + 'traditional': FocusHighlightMode.traditional, + }, + 'FocusHighlightStrategy': { + 'values': FocusHighlightStrategy.values, + 'automatic': FocusHighlightStrategy.automatic, + 'alwaysTouch': FocusHighlightStrategy.alwaysTouch, + 'alwaysTraditional': FocusHighlightStrategy.alwaysTraditional, + }, + 'OrientationBuilder': (props) => OrientationBuilder( + key: props['key'], + builder: props['builder'], + ), + 'OrientationBuilder#builder': (props) => ( + BuildContext context, + Orientation orientation, + ) { + return (props['block']) as Widget; + }, + 'Scrollable': (props) => Scrollable( + key: props['key'], + axisDirection: props['axisDirection'] ?? AxisDirection.down, + controller: props['controller'], + physics: props['physics'], + viewportBuilder: props['viewportBuilder'], + incrementCalculator: props['incrementCalculator'], + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + semanticChildCount: props['semanticChildCount'], + dragStartBehavior: + props['dragStartBehavior'] ?? DragStartBehavior.start, + restorationId: props['restorationId'], + scrollBehavior: props['scrollBehavior'], + ), + 'Scrollable#viewportBuilder': (props) => ( + BuildContext context, + dynamic position, + ) { + return (props['block']) as Widget; + }, + 'Scrollable#incrementCalculator': (props) => ( + ScrollIncrementDetails details, + ) { + return (props['block']) as double; + }, + 'Scrollable.of': (props) => Scrollable.of( + props['pa'][0], + axis: props['axis'] + ), + 'Scrollable.recommendDeferredLoadingForContext': (props) => + Scrollable.recommendDeferredLoadingForContext( + props['pa'][0], + ), + 'Scrollable.ensureVisible': (props) => Scrollable.ensureVisible( + props['pa'][0], + alignment: props['alignment']?.toDouble() ?? 0.0, + duration: props['duration'] ?? Duration.zero, + curve: props['curve'] ?? Curves.ease, + alignmentPolicy: props['alignmentPolicy'] ?? + ScrollPositionAlignmentPolicy.explicit, + ), + 'ScrollIncrementType': { + 'values': ScrollIncrementType.values, + 'line': ScrollIncrementType.line, + 'page': ScrollIncrementType.page, + }, + 'ImageIcon': (props) => ImageIcon( + props['pa'][0], + key: props['key'], + size: props['size']?.toDouble(), + color: props['color'], + semanticLabel: props['semanticLabel'], + ), + 'ScrollPositionAlignmentPolicy': { + 'values': ScrollPositionAlignmentPolicy.values, + 'explicit': ScrollPositionAlignmentPolicy.explicit, + 'keepVisibleAtEnd': ScrollPositionAlignmentPolicy.keepVisibleAtEnd, + 'keepVisibleAtStart': ScrollPositionAlignmentPolicy.keepVisibleAtStart, + }, + 'LayoutBuilder': (props) => LayoutBuilder( + key: props['key'], + builder: props['builder'], + ), + 'LayoutBuilder#builder': (props) => ( + BuildContext context, + dynamic constraints, + ) { + return (props['block']) as Widget; + }, + 'PrimaryScrollController': (props) => PrimaryScrollController( + key: props['key'], + controller: props['controller'], + child: props['child'], + ), + 'PrimaryScrollController.none': (props) => PrimaryScrollController.none( + key: props['key'], + child: props['child'], + ), + 'PrimaryScrollController.of': (props) => PrimaryScrollController.of( + props['pa'][0], + ), + 'DualTransitionBuilder': (props) => DualTransitionBuilder( + key: props['key'], + animation: props['animation'], + forwardBuilder: props['forwardBuilder'], + reverseBuilder: props['reverseBuilder'], + child: props['child'], + ), + 'DualTransitionBuilder#forwardBuilder': (props) => ( + BuildContext context, + dynamic animation, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'DualTransitionBuilder#reverseBuilder': (props) => ( + BuildContext context, + dynamic animation, + Widget child, + ) { + return (props['block']) as Widget; + }, + 'InkWell': (props) => InkWell( + key: props['key'], + child: props['child'], + onTap: props['onTap'], + onDoubleTap: props['onDoubleTap'], + onLongPress: props['onLongPress'], + onTapDown: props['onTapDown'], + onTapCancel: props['onTapCancel'], + onHighlightChanged: props['onHighlightChanged'], + onHover: props['onHover'], + focusColor: props['focusColor'], + hoverColor: props['hoverColor'], + highlightColor: props['highlightColor'], + splashColor: props['splashColor'], + splashFactory: props['splashFactory'], + radius: props['radius']?.toDouble(), + borderRadius: props['borderRadius'], + customBorder: props['customBorder'], + enableFeedback: props['enableFeedback'] ?? true, + excludeFromSemantics: props['excludeFromSemantics'] ?? false, + focusNode: props['focusNode'], + canRequestFocus: props['canRequestFocus'] ?? true, + onFocusChange: props['onFocusChange'], + autofocus: props['autofocus'] ?? false, + ), + }; diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/all.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/all.dart new file mode 100644 index 00000000..0df029fb --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/all.dart @@ -0,0 +1,19 @@ + // This file is generated by Fair, do not edit manually! + // Updated on 2022-04-20 20:07:28.059102 + + import '\$\$c.dart' as $0; +import '\$\$w.dart' as $1; +import '\$\$p.dart' as $2; +import '\$\$m.dart' as $3; +import '\$\$r.dart' as $4; +import '\$\$a.dart' as $5; + mixin $BindingImpl { + final provider = [ + +$0.p, +$1.p, +$2.p, +$3.p, +$4.p, +$5.p, +];} diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/module.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/module.dart new file mode 100644 index 00000000..9057119a --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/module.dart @@ -0,0 +1,11 @@ +/* + * Copyright (C) 2005-present, 58.com. All rights reserved. + * Use of this source code is governed by a BSD type license that can be + * found in the LICENSE file. + */ + +abstract class GeneratedModule { + Map components(); + + Map mapping(); +} diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/utils.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/utils.dart new file mode 100644 index 00000000..82e3ae70 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/utils.dart @@ -0,0 +1,16 @@ +/* + * Copyright (C) 2005-present, 58.com. All rights reserved. + * Use of this source code is governed by a BSD type license that can be + * found in the LICENSE file. + */ + +List? as(List? children) { + if (children == null) { + return null; + } + + if (children.isEmpty) { + return []; + } + return children.map((e) => e as T).toList(); +} diff --git a/flutter_version/flutter_3_13_0/lib/src/widgets/version.dart b/flutter_version/flutter_3_13_0/lib/src/widgets/version.dart new file mode 100644 index 00000000..dea30a14 --- /dev/null +++ b/flutter_version/flutter_3_13_0/lib/src/widgets/version.dart @@ -0,0 +1,581 @@ +// This file is generated by Fair, do not edit manually! +// Updated on 2021-10-27 19:21:56.207621 + +const fairVersion = '3.10.0'; +const flutterVersion = '3.10.6'; +const dartVersion = '3.0.6'; +const widgetCount = 358; +const apiCount = 212; +const widgetNames = { + 'InkWell': true, + 'SingleChildScrollView': true, + 'AnimatedContainer': true, + 'AnimatedPadding': true, + 'AnimatedAlign': true, + 'AnimatedPositioned': true, + 'AnimatedPositionedDirectional': true, + 'AnimatedScale': true, + 'AnimatedRotation': true, + 'AnimatedSlide': true, + 'AnimatedOpacity': true, + 'SliverAnimatedOpacity': true, + 'AnimatedDefaultTextStyle': true, + 'AnimatedPhysicalModel': true, + 'AnimatedCrossFade': true, + 'CrossFadeState': false, + 'GridPaper': true, + 'TweenAnimationBuilder': true, + 'DefaultTextEditingShortcuts': true, + 'SlideTransition': true, + 'ScaleTransition': true, + 'RotationTransition': true, + 'SizeTransition': true, + 'FadeTransition': true, + 'SliverFadeTransition': true, + 'PositionedTransition': true, + 'RelativePositionedTransition': true, + 'DecoratedBoxTransition': true, + 'AlignTransition': true, + 'DefaultTextStyleTransition': true, + 'AnimatedBuilder': true, + 'SliverPersistentHeader': true, + 'PageStorage': true, + 'Router': true, + 'BackButtonListener': true, + 'FocusTrap': true, + 'FocusTrapArea': true, + 'Directionality': true, + 'Opacity': true, + 'ShaderMask': true, + 'BackdropFilter': true, + 'CustomPaint': true, + 'ClipRect': true, + 'ClipRRect': true, + 'ClipOval': true, + 'ClipPath': true, + 'PhysicalModel': true, + 'PhysicalShape': true, + 'Transform': true, + 'CompositedTransformTarget': true, + 'CompositedTransformFollower': true, + 'FittedBox': true, + 'FractionalTranslation': true, + 'RotatedBox': true, + 'Padding': true, + 'Align': true, + 'Center': true, + 'CustomSingleChildLayout': true, + 'LayoutId': true, + 'CustomMultiChildLayout': true, + 'SizedBox': true, + 'ConstrainedBox': true, + 'ConstraintsTransformBox': true, + 'UnconstrainedBox': true, + 'FractionallySizedBox': true, + 'LimitedBox': true, + 'OverflowBox': true, + 'SizedOverflowBox': true, + 'Offstage': true, + 'AspectRatio': true, + 'IntrinsicWidth': true, + 'IntrinsicHeight': true, + 'Baseline': true, + 'SliverToBoxAdapter': true, + 'SliverPadding': true, + 'ListBody': true, + 'Stack': true, + 'IndexedStack': true, + 'Positioned': true, + 'PositionedDirectional': true, + 'Flex': true, + 'Row': true, + 'Column': true, + 'Flexible': true, + 'Expanded': true, + 'Wrap': true, + 'Flow': true, + 'RichText': true, + 'RawImage': true, + 'DefaultAssetBundle': true, + 'WidgetToRenderBoxAdapter': true, + 'Listener': true, + 'MouseRegion': true, + 'RepaintBoundary': true, + 'IgnorePointer': true, + 'AbsorbPointer': true, + 'MetaData': true, + 'Semantics': true, + 'MergeSemantics': true, + 'BlockSemantics': true, + 'ExcludeSemantics': true, + 'IndexedSemantics': true, + 'KeyedSubtree': true, + 'Builder': true, + 'StatefulBuilder': true, + 'ColoredBox': true, + 'GestureDetector': true, + 'RawGestureDetector': true, + 'StreamBuilder': true, + 'FutureBuilder': true, + 'ConnectionState': false, + 'DefaultTextStyle': true, + 'DefaultTextHeightBehavior': true, + 'Text': true, + 'ActionListener': true, + 'Actions': true, + 'FocusableActionDetector': true, + 'Form': true, + 'FormField': true, + 'AutovalidateMode': false, + 'Image': true, + 'IconThemeData': false, + 'Texture': true, + 'NestedScrollView': true, + 'SliverOverlapAbsorber': true, + 'SliverOverlapInjector': true, + 'NestedScrollViewViewport': true, + 'NavigationToolbar': true, + 'DefaultTextEditingActions': true, + 'ReorderableList': true, + 'SliverReorderableList': true, + 'ReorderableDragStartListener': true, + 'ReorderableDelayedDragStartListener': true, + 'SliverLayoutBuilder': true, + 'HeroControllerScope': true, + 'Navigator': true, + 'RoutePopDisposition': false, + 'PreferredSize': true, + 'ValueListenableBuilder': true, + 'MediaQuery': true, + 'Orientation': false, + 'NavigationMode': false, + 'DraggableScrollableSheet': true, + 'DraggableScrollableActuator': true, + 'DecoratedBox': true, + 'Container': true, + 'EditableText': true, + 'Placeholder': true, + 'Icon': true, + 'LayoutBuilder': true, + 'PrimaryScrollController': true, + 'ScrollPositionAlignmentPolicy': false, + 'ImageIcon': true, + 'Scrollable': true, + 'ScrollIncrementType': false, + 'OrientationBuilder': true, + 'KeyEventResult': false, + 'UnfocusDisposition': false, + 'FocusHighlightMode': false, + 'FocusHighlightStrategy': false, + 'FocusTraversalOrder': true, + 'FocusTraversalGroup': true, + 'TraversalDirection': false, + 'ColorFiltered': true, + 'Title': true, + 'AnimatedSwitcher': true, + 'SliverPrototypeExtentList': true, + 'Table': true, + 'TableCell': true, + 'DualTransitionBuilder': true, + 'Visibility': true, + 'SliverVisibility': true, + 'AnnotatedRegion': true, + 'Banner': true, + 'CheckedModeBanner': true, + 'BannerLocation': false, + 'NotificationListener': true, + 'PageView': true, + 'Shortcuts': true, + 'CallbackShortcuts': true, + 'KeyboardListener': true, + 'ImageFiltered': true, + 'ScrollNotificationObserver': true, + 'Draggable': true, + 'LongPressDraggable': true, + 'DragTarget': true, + 'GlowingOverscrollIndicator': true, + 'Hero': true, + 'HeroMode': true, + 'HeroFlightDirection': false, + 'SizeChangedLayoutNotifier': true, + 'Viewport': true, + 'ShrinkWrappingViewport': true, + 'AutomaticKeepAlive': true, + 'ErrorWidget': true, + 'ScrollConfiguration': true, + 'IconTheme': true, + 'SemanticsDebugger': true, + 'TextSelectionOverlay': false, + 'TextSelectionGestureDetector': true, + 'TextSelectionHandleType': false, + 'ClipboardStatus': false, + 'TickerMode': true, + 'RestorationScope': true, + 'UnmanagedRestorationScope': true, + 'RootRestorationScope': true, + 'AnimatedList': true, + 'SliverAnimatedList': true, + 'OverflowBar': true, + 'OverflowBarAlignment': false, + 'FadeInImage': true, + 'Focus': true, + 'FocusScope': true, + 'ExcludeFocus': true, + 'ModalBarrier': true, + 'AnimatedModalBarrier': true, + 'InteractiveViewer': true, + 'AutofillGroup': true, + 'AutofillContextAction': false, + 'ScrollDragController': false, + 'ListWheelScrollView': true, + 'ListWheelViewport': true, + 'SliverList': true, + 'SliverFixedExtentList': true, + 'SliverGrid': true, + 'SliverOpacity': true, + 'SliverIgnorePointer': true, + 'SliverOffstage': true, + 'KeepAlive': true, + 'Dismissible': true, + 'DismissDirection': false, + 'WillPopScope': true, + 'SafeArea': true, + 'SliverSafeArea': true, + 'RawScrollbar': true, + 'ScrollbarOrientation': false, + 'AndroidView': true, + 'UiKitView': true, + 'HtmlElementView': true, + 'PlatformViewLink': true, + 'PlatformViewSurface': true, + 'AndroidViewSurface': true, + 'WidgetsApp': true, + 'RawAutocomplete': true, + 'AutocompleteHighlightedOption': true, + 'Overlay': true, + 'BouncingScrollSimulation': false, + 'RawKeyboardListener': true, + 'Spacer': true, + 'CustomScrollView': true, + 'ListView': true, + 'GridView': true, + 'ScrollViewKeyboardDismissBehavior': false, + 'DefaultWidgetsLocalizations': false, + 'Localizations': true, + 'SliverFillViewport': true, + 'SliverFillRemaining': true, + 'AnimatedSize': true, + 'RenderObjectToWidgetAdapter': true, + 'WidgetsFlutterBinding': false, + 'BorderSide': false, + 'BorderStyle': false, + 'Border': true, + 'BorderDirectional': false, + 'BoxShape': false, + 'ImageConfiguration': false, + 'ResizeImage': false, + 'BoxShadow': true, + 'NetworkImage': false, + 'BorderRadius': false, + 'BorderRadiusDirectional': false, + 'HSVColor': false, + 'HSLColor': false, + 'TextStyle': false, + 'LinearGradient': false, + 'RadialGradient': false, + 'SweepGradient': false, + 'Alignment': false, + 'AlignmentDirectional': false, + 'TextAlignVertical': false, + 'FlutterLogoDecoration': false, + 'FlutterLogoStyle': false, + 'RenderComparison': false, + 'Axis': false, + 'VerticalDirection': false, + 'AxisDirection': false, + 'BoxDecoration': true, + 'InlineSpanSemanticsInformation': false, + 'FractionalOffset': false, + 'BoxFit': false, + 'MatrixUtils': false, + 'PlaceholderDimensions': false, + 'TextOverflow': false, + 'TextWidthBasis': false, + 'ShapeDecoration': false, + 'EdgeInsets': false, + 'EdgeInsetsDirectional': false, + 'DecorationImage': true, + 'ImageRepeat': false, + 'StrutStyle': false, + 'TextButtonThemeData': false, + 'TextButtonTheme': false, + 'DrawerHeader': true, + 'ProgressIndicatorThemeData': false, + 'ProgressIndicatorTheme': false, + 'MaterialButton': true, + 'GridTile': true, + 'Material': true, + 'MaterialType': false, + 'TextTheme': false, + 'InkRipple': false, + 'ElevatedButtonThemeData': false, + 'ElevatedButtonTheme': false, + 'MaterialBannerThemeData': false, + 'MaterialBannerTheme': false, + 'ScaffoldMessenger': true, + 'Scaffold': true, + 'Feedback': false, + 'SwitchThemeData': false, + 'SwitchTheme': false, + 'ToggleButtonsThemeData': false, + 'ToggleButtonsTheme': false, + 'BackButtonIcon': true, + 'BackButton': true, + 'CloseButton': true, + 'TextSelectionToolbarTextButton': true, + 'TextField': true, + 'NavigationRailThemeData': false, + 'NavigationRailTheme': false, + 'AboutListTile': true, + 'AboutDialog': true, + 'LicensePage': true, + 'TimePickerThemeData': false, + 'TimePickerTheme': false, + 'TextSelectionToolbar': true, + 'TextSelectionThemeData': false, + 'TextSelectionTheme': false, + 'RadioListTile': true, + 'RefreshIndicator': true, + 'RefreshIndicatorTriggerMode': false, + 'InputDatePickerFormField': true, + 'BottomAppBarTheme': false, + 'TabBarTheme': false, + 'OutlinedButtonThemeData': false, + 'OutlinedButtonTheme': false, + 'GridTileBar': true, + 'ElevationOverlay': false, + 'SelectableText': true, + 'CircleAvatar': true, + 'Ink': true, + 'ButtonBar': true, + 'AppBarTheme': false, + 'Colors': false, + 'SnackBarAction': true, + 'SnackBar': true, + 'SnackBarClosedReason': false, + 'InputDecorator': true, + 'FloatingLabelBehavior': false, + 'ReorderableListView': true, + 'ColorScheme': false, + 'TimeOfDay': false, + 'DayPeriod': false, + 'TimeOfDayFormat': false, + 'HourFormat': false, + 'Card': true, + 'RawMaterialButton': true, + 'PopupMenuThemeData': false, + 'PopupMenuTheme': false, + 'DataCell': false, + 'DataTable': true, + 'DefaultTabController': true, + 'NavigationRail': true, + 'NavigationRailLabelType': false, + 'TooltipThemeData': false, + 'TooltipTheme': false, + 'TooltipTriggerMode': false, + 'TextButton': true, + 'Dialog': true, + 'AlertDialog': true, + 'SimpleDialogOption': true, + 'SimpleDialog': true, + 'InkResponse': true, + 'Checkbox': true, + 'TimePickerDialog': true, + 'TimePickerEntryMode': false, + 'Radio': true, + 'Stepper': true, + 'StepState': false, + 'StepperType': false, + 'CheckboxListTile': true, + 'RadioThemeData': false, + 'RadioTheme': false, + 'Tab': true, + 'TabBar': true, + 'TabBarView': true, + 'TabPageSelectorIndicator': true, + 'TabPageSelector': true, + 'TabBarIndicatorSize': false, + 'DatePickerDialog': true, + 'DateRangePickerDialog': true, + 'BottomNavigationBarThemeData': false, + 'BottomNavigationBarTheme': false, + 'FloatingActionButton': true, + 'CheckboxThemeData': false, + 'CheckboxTheme': false, + 'RangeSlider': true, + 'ScrollbarThemeData': false, + 'ScrollbarTheme': false, + 'PopupMenuButton': true, + 'ExpandIcon': true, + 'AppBar': true, + 'SliverAppBar': true, + 'BottomAppBar': true, + 'UserAccountsDrawerHeader': true, + 'MaterialBanner': true, + 'MaterialBannerClosedReason': false, + 'CalendarDatePicker': true, + 'YearPicker': true, + 'Chip': true, + 'InputChip': true, + 'ChoiceChip': true, + 'FilterChip': true, + 'ActionChip': true, + 'RawChip': true, + 'DialogTheme': false, + 'PaginatedDataTable': true, + 'MaterialState': false, + 'FloatingActionButtonThemeData': false, + 'FlutterLogo': true, + 'CardTheme': false, + 'BottomSheetThemeData': false, + 'Tooltip': true, + 'ElevatedButton': true, + 'SwitchListTile': true, + 'DropdownButtonHideUnderline': false, + 'DropdownButton': true, + 'Slider': true, + 'NoSplash': false, + 'ButtonTheme': false, + 'ButtonTextTheme': false, + 'ButtonBarLayoutBehavior': false, + 'ListTileTheme': false, + 'ListTile': true, + 'ListTileStyle': false, + 'ListTileControlAffinity': false, + 'ExpansionTile': true, + 'BottomSheet': true, + 'DividerThemeData': false, + 'DividerTheme': false, + 'DataTableThemeData': false, + 'DataTableTheme': false, + 'DefaultMaterialLocalizations': false, + 'Typography': false, + 'ScriptCategory': false, + 'OutlinedButton': false, + 'Divider': true, + 'VerticalDivider': true, + 'SliderTheme': false, + 'SliderThemeData': false, + 'ShowValueIndicator': false, + 'Thumb': false, + 'ChipTheme': false, + 'ChipThemeData': false, + 'MergeableMaterial': true, + 'Drawer': true, + 'DrawerController': true, + 'DrawerAlignment': false, + 'DateUtils': false, + 'DatePickerEntryMode': false, + 'DatePickerMode': false, + 'SnackBarThemeData': false, + 'SnackBarBehavior': false, + 'AnimatedIcon': true, + 'ThemeData': false, + 'VisualDensity': false, + 'MaterialTapTargetSize': false, + 'FlexibleSpaceBar': true, + 'CollapseMode': false, + 'StretchMode': false, + 'Switch': true, + 'Scrollbar': true, + 'ButtonStyle': false, + 'BottomNavigationBar': true, + 'BottomNavigationBarType': false, + 'BottomNavigationBarLandscapeLayout': false, + 'MaterialApp': true, + 'ThemeMode': false, + 'Icons': false, + 'Autocomplete': true, + 'InkSplash': false, + 'ExpansionPanelList': true, + 'ButtonBarThemeData': false, + 'ButtonBarTheme': false, + 'Theme': true, + 'IconButton': true, + 'ToggleButtons': true, + 'CupertinoTabView': true, + 'CupertinoTextField': true, + 'OverlayVisibilityMode': false, + 'CupertinoFormRow': true, + 'CupertinoTextSelectionToolbar': true, + 'CupertinoTextSelectionToolbarButton': true, + 'CupertinoSegmentedControl': true, + 'CupertinoColors': false, + 'CupertinoDynamicColor': false, + 'CupertinoSlidingSegmentedControl': true, + 'CupertinoSearchTextField': true, + 'CupertinoButton': true, + 'CupertinoTabScaffold': true, + 'CupertinoAlertDialog': true, + 'CupertinoPopupSurface': true, + 'CupertinoActionSheet': true, + 'CupertinoActionSheetAction': true, + 'CupertinoDialogAction': true, + 'CupertinoTabBar': true, + 'CupertinoDatePicker': true, + 'CupertinoTimerPicker': true, + 'CupertinoDatePickerMode': false, + 'CupertinoTimerPickerMode': false, + 'CupertinoSliverRefreshControl': true, + 'RefreshIndicatorMode': false, + 'CupertinoPicker': true, + 'CupertinoPickerDefaultSelectionOverlay': true, + 'CupertinoContextMenu': true, + 'CupertinoPageTransition': true, + 'CupertinoFullscreenDialogTransition': true, + 'CupertinoThumbPainter': false, + 'CupertinoActivityIndicator': true, + 'CupertinoSlider': true, + 'CupertinoPageScaffold': true, + 'CupertinoUserInterfaceLevel': true, + 'CupertinoUserInterfaceLevelData': false, + 'CupertinoFormSection': true, + 'CupertinoContextMenuAction': true, + 'CupertinoSwitch': true, + 'CupertinoScrollbar': false, + 'CupertinoApp': true, + 'CupertinoIcons': false, + 'CupertinoNavigationBar': true, + 'CupertinoSliverNavigationBar': true, + 'CupertinoNavigationBarBackButton': true, + 'CupertinoTheme': true, + 'DefaultCupertinoLocalizations': false, + 'DatePickerDateTimeOrder': false, + 'DatePickerDateOrder': false, + 'WrapAlignment': false, + 'WrapCrossAlignment': false, + 'TableBorder': false, + 'HitTestBehavior': false, + 'DecorationPosition': false, + 'ScrollDirection': false, + 'PaintingContext': false, + 'FlexFit': false, + 'MainAxisSize': false, + 'MainAxisAlignment': false, + 'CrossAxisAlignment': false, + 'TableCellVerticalAlignment': false, + 'ChildLayoutHelper': false, + 'RenderViewport': false, + 'CacheExtentStyle': false, + 'SliverGeometry': false, + 'GrowthDirection': false, + 'RelativeRect': false, + 'RenderStack': false, + 'StackFit': false, + 'PlatformViewHitTestBehavior': false, + 'BoxConstraints': false, + 'AnimationBehavior': false, + 'AnimationStatus': false, + 'CatmullRomCurve': false, + 'Curves': false, +}; diff --git a/flutter_version/flutter_3_13_0/pubspec.yaml b/flutter_version/flutter_3_13_0/pubspec.yaml new file mode 100644 index 00000000..e8336eda --- /dev/null +++ b/flutter_version/flutter_3_13_0/pubspec.yaml @@ -0,0 +1,55 @@ +name: fair_version +description: Fair binding for Flutter v3.13.0 +version: 3.13.0 +homepage: https://fair.58.com/ + +environment: + sdk: ">=2.12.0 <3.0.0" + + +dependencies: + flutter: + sdk: flutter + ffi: ^1.1.2 + +dev_dependencies: + flutter_test: + sdk: flutter + pedantic: ^1.11.1 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + +# To add assets to your package, add an assets section, like this: +# assets: +# - images/a_dot_burr.jpeg +# - images/a_dot_ham.jpeg +# +# For details regarding assets in packages, see +# https://flutter.dev/assets-and-images/#from-packages +# +# An image asset can refer to one or more resolution-specific "variants", see +# https://flutter.dev/assets-and-images/#resolution-aware. + +# To add custom fonts to your package, add a fonts section here, +# in this "flutter" section. Each entry in this list should have a +# "family" key with the font family name, and a "fonts" key with a +# list giving the asset and other descriptors for the font. For +# example: +# fonts: +# - family: Schyler +# fonts: +# - asset: fonts/Schyler-Regular.ttf +# - asset: fonts/Schyler-Italic.ttf +# style: italic +# - family: Trajan Pro +# fonts: +# - asset: fonts/TrajanPro.ttf +# - asset: fonts/TrajanPro_Bold.ttf +# weight: 700 +# +# For details regarding fonts in packages, see +# https://flutter.dev/custom-fonts/#from-packages diff --git a/flutter_version/flutter_3_3_0/pubspec.yaml b/flutter_version/flutter_3_3_0/pubspec.yaml index 1514602e..52526847 100644 --- a/flutter_version/flutter_3_3_0/pubspec.yaml +++ b/flutter_version/flutter_3_3_0/pubspec.yaml @@ -1,5 +1,5 @@ name: fair_version -description: Fair binding for Flutter v3.0.0 +description: Fair binding for Flutter v3.3.0 version: 3.3.0 homepage: https://fair.58.com/ diff --git a/flutter_version/flutter_3_7_0/pubspec.yaml b/flutter_version/flutter_3_7_0/pubspec.yaml index 070ec95a..0b68f151 100644 --- a/flutter_version/flutter_3_7_0/pubspec.yaml +++ b/flutter_version/flutter_3_7_0/pubspec.yaml @@ -1,5 +1,5 @@ name: fair_version -description: Fair binding for Flutter v3.0.0 +description: Fair binding for Flutter v3.7.0 version: 3.7.0 homepage: https://fair.58.com/ diff --git a/resources/wechat-group-02.png b/resources/wechat-group-02.png index 44ed40d0..0524dbad 100644 Binary files a/resources/wechat-group-02.png and b/resources/wechat-group-02.png differ diff --git a/test_case/adobe_xd/android/app/build.gradle b/test_case/adobe_xd/android/app/build.gradle index f8fc3969..1004d88c 100644 --- a/test_case/adobe_xd/android/app/build.gradle +++ b/test_case/adobe_xd/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 31 + compileSdkVersion 33 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -39,8 +39,8 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.example" - minSdkVersion 19 - targetSdkVersion 28 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } @@ -59,5 +59,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } diff --git a/test_case/adobe_xd/android/app/src/main/AndroidManifest.xml b/test_case/adobe_xd/android/app/src/main/AndroidManifest.xml index 75b137a3..7cc742f1 100644 --- a/test_case/adobe_xd/android/app/src/main/AndroidManifest.xml +++ b/test_case/adobe_xd/android/app/src/main/AndroidManifest.xml @@ -14,7 +14,8 @@ android:theme="@style/LaunchTheme" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" - android:windowSoftInputMode="adjustResize"> + android:windowSoftInputMode="adjustResize" + android:exported="true"> 0?arguments[0].__args__||arguments:[];inner.apply(this,args);_MyHomePageState.prototype.ctor.apply(this,args);return this;}}_MyHomePageState.__inner__=function inner(){};_MyHomePageState.prototype={onTagClick:function onTagClick(){const __thiz__=this;with(__thiz__){print('11111');}},};_MyHomePageState.prototype.ctor=function(){};;return _MyHomePageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/flutter_slidable/assets/bundle/lib_home_page.fair.json b/test_case/flutter_slidable/assets/bundle/lib_home_page.fair.json index d52c6062..1f092fa2 100644 --- a/test_case/flutter_slidable/assets/bundle/lib_home_page.fair.json +++ b/test_case/flutter_slidable/assets/bundle/lib_home_page.fair.json @@ -16,77 +16,89 @@ "className": "Center", "na": { "child": { - "className": "Column", + "className": "Sugar.listBuilder", "na": { - "mainAxisAlignment": "#(MainAxisAlignment.center)", - "children": [ - { - "className": "Slidable", - "na": { - "actionPane": { - "className": "SlidableScrollActionPane" - }, - "actionExtentRatio": 0.25, - "child": { - "className": "Container", - "na": { - "height": 60, - "decoration": { - "className": "BoxDecoration", - "na": { - "color": "#(Colors.green)" - } - }, - "width": "#(double.infinity)" - } - }, - "actions": [ - { - "className": "IconSlideAction", + "itemCount": 1, + "shrinkWrap": true, + "itemBuilder": { + "className": "Slidable", + "na": { + "actionPane": { + "className": "SlidableScrollActionPane" + }, + "actionExtentRatio": 0.25, + "child": { + "className": "Container", + "na": { + "height": 60, + "decoration": { + "className": "BoxDecoration", "na": { - "caption": "title", - "color": "#(Colors.blue)", - "icon": "#(Icons.archive)", - "onTap": "#(onTagClick)" + "color": "#(Colors.green)" } }, - { - "className": "IconSlideAction", - "na": { - "caption": "Share", - "color": "#(Colors.indigo)", - "icon": "#(Icons.share)", - "onTap": "#(onTagClick)" - } + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] } - ], - "secondaryActions": [ - { - "className": "IconSlideAction", - "na": { - "caption": "More", - "color": "#(Colors.black45)", - "icon": "#(Icons.more_horiz)", - "onTap": "#(onTagClick)" - } - }, - { - "className": "IconSlideAction", - "na": { - "caption": "Delete", - "color": "#(Colors.red)", - "icon": "#(Icons.delete)", - "closeOnTap": false, - "onTap": "#(onTagClick)" - } + } + }, + "actions": [ + { + "className": "IconSlideAction", + "na": { + "caption": "title", + "color": "#(Colors.blue)", + "icon": "#(Icons.archive)", + "onTap": "#(onTagClick)" + } + }, + { + "className": "IconSlideAction", + "na": { + "caption": "Share", + "color": "#(Colors.indigo)", + "icon": "#(Icons.share)", + "onTap": "#(onTagClick)" + } + } + ], + "secondaryActions": [ + { + "className": "IconSlideAction", + "na": { + "caption": "More", + "color": "#(Colors.black45)", + "icon": "#(Icons.more_horiz)", + "onTap": "#(onTagClick)" + } + }, + { + "className": "IconSlideAction", + "na": { + "caption": "Delete", + "color": "#(Colors.red)", + "icon": "#(Icons.delete)", + "closeOnTap": false, + "onTap": "#(onTagClick)" } - ] - } + } + ] + }, + "functionParameters": { + "pa": [ + "context", + "index" + ] } - ] + } } } } } - } + }, + "methodMap": {}, + "digest": "aa463484cabe4ec526f1dcb95fdde7ea" } \ No newline at end of file diff --git a/test_case/flutter_slidable/build_runner.sh b/test_case/flutter_slidable/build_runner.sh new file mode 100644 index 00000000..93af922f --- /dev/null +++ b/test_case/flutter_slidable/build_runner.sh @@ -0,0 +1,11 @@ +fvm flutter clean + +echo "----- flutter clean finish -----" + +fvm flutter pub get + +echo "----- flutter pub get finish -----" + +fvm flutter pub run build_runner build --delete-conflicting-outputs + +echo "----- flutter pub run build_runner build finish -----" diff --git a/test_case/flutter_slidable/lib/home_page.dart b/test_case/flutter_slidable/lib/home_page.dart index ecb13d21..4e52c32e 100644 --- a/test_case/flutter_slidable/lib/home_page.dart +++ b/test_case/flutter_slidable/lib/home_page.dart @@ -9,7 +9,7 @@ import 'package:flutter_slidable/flutter_slidable.dart'; @FairPatch() class MyHomePage extends StatefulWidget { - MyHomePage({Key key, this.title}) : super(key: key); + MyHomePage({Key? key, required this.title}) : super(key: key); final String title; @@ -25,55 +25,55 @@ class _MyHomePageState extends State { title: Text(widget.title), ), body: Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Slidable( - actionPane: SlidableScrollActionPane(), - //滑出选项的面板 动画 - actionExtentRatio: 0.25, - child: Container( - height: 60, - decoration: new BoxDecoration( - color: Colors.green, + //must wrap with scrollable widget + child: Sugar.listBuilder( + itemCount: 1, + shrinkWrap: true, + itemBuilder: (context, index) { + return Slidable( + actionPane: SlidableScrollActionPane(), + //滑出选项的面板 动画 + actionExtentRatio: 0.25, + child: Container( + height: 60, + decoration: new BoxDecoration( + color: Colors.green, + ), + width: Sugar.width(context), ), - width: double.infinity, - ), - actions: [ - //左侧按钮列表 - IconSlideAction( - caption: "title", - color: Colors.blue, - icon: Icons.archive, - onTap: onTagClick, - ), - IconSlideAction( - caption: 'Share', - color: Colors.indigo, - icon: Icons.share, - onTap: onTagClick, - ), - ], - secondaryActions: [ - //右侧按钮列表 - IconSlideAction( - caption: 'More', - color: Colors.black45, - icon: Icons.more_horiz, - onTap: onTagClick, - ), - IconSlideAction( - caption: 'Delete', - color: Colors.red, - icon: Icons.delete, - closeOnTap: false, - onTap: onTagClick, - ), - ], - ) - //AnimateWidget(), - ], - ), + actions: [ + //左侧按钮列表 + IconSlideAction( + caption: "title", + color: Colors.blue, + icon: Icons.archive, + onTap: onTagClick, + ), + IconSlideAction( + caption: 'Share', + color: Colors.indigo, + icon: Icons.share, + onTap: onTagClick, + ), + ], + secondaryActions: [ + //右侧按钮列表 + IconSlideAction( + caption: 'More', + color: Colors.black45, + icon: Icons.more_horiz, + onTap: onTagClick, + ), + IconSlideAction( + caption: 'Delete', + color: Colors.red, + icon: Icons.delete, + closeOnTap: false, + onTap: onTagClick, + ), + ], + ); + }) ), ); } diff --git a/test_case/flutter_slidable/lib/main.dart b/test_case/flutter_slidable/lib/main.dart index 175f4d38..187cce02 100644 --- a/test_case/flutter_slidable/lib/main.dart +++ b/test_case/flutter_slidable/lib/main.dart @@ -3,14 +3,12 @@ import 'package:flutter/material.dart'; import 'package:flutter_slidables/src/generated.fair.dart'; import 'delegate.dart'; -import 'home_page.dart'; -import 'module.dart'; @FairBinding(packages: [ 'package:flutter_slidable/flutter_slidable.dart',]) void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(FairApp( + FairApp.runApplication(FairApp( child: MyApp(), // modules: { // SlidableModule.tagName:() => SlidableModule(), diff --git a/test_case/flutter_slidable/lib/module.dart b/test_case/flutter_slidable/lib/module.dart index 4a10a5b0..984d790d 100644 --- a/test_case/flutter_slidable/lib/module.dart +++ b/test_case/flutter_slidable/lib/module.dart @@ -10,7 +10,7 @@ class SlidableModule extends FairModule{ SlidableModule() : super(tagName); @override - SlidableScrollActionPane onCreateComponent(BuildContext ctx, Map props) { + SlidableScrollActionPane onCreateComponent(BuildContext ctx, Map? props) { return SlidableScrollActionPane(); } diff --git a/test_case/flutter_slidable/lib/src/generated.fair.dart b/test_case/flutter_slidable/lib/src/generated.fair.dart index 6e4b1ef4..b8c4e3ff 100644 --- a/test_case/flutter_slidable/lib/src/generated.fair.dart +++ b/test_case/flutter_slidable/lib/src/generated.fair.dart @@ -1,44 +1,83 @@ -// Generated by Fair on 2021-06-24 15:41:36.773641. +// GENERATED CODE - DO NOT MODIFY MANUALLY +// ************************************************************************** +// But you can define a new GeneratedModule as following: +// class MyAppGeneratedModule extends AppGeneratedModule { +// @override +// Map components() { +// return { +// ...super.components(), +// // add your cases here. +// }; +// } +// +// /// true means it's a widget. +// @override +// Map mapping() { +// return { +// ...super.mapping(), +// // remember add your cases here too. +// }; +// } +// } +// ************************************************************************** +// Auto generated by https://github.com/wuba/Fair +// ************************************************************************** +// +// ignore_for_file: implementation_imports, unused_import, depend_on_referenced_packages, unused_shown_name, duplicate_import, always_specify_types, unnecessary_import + import 'package:flutter_slidable/flutter_slidable.dart'; import 'package:flutter_slidable/src/widgets/slidable.dart'; import 'package:flutter_slidable/src/widgets/slide_action.dart'; import 'package:flutter_slidable/src/widgets/slidable_action_pane.dart'; import 'package:flutter_slidable/src/widgets/slidable_dismissal.dart'; import 'package:flutter_slidable/src/widgets/fractionnally_aligned_sized_box.dart'; +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/widgets.dart'; import 'package:flutter/material.dart'; import 'package:fair/fair.dart'; import 'package:fair_version/fair_version.dart'; +const Duration _kResizeDuration = Duration(milliseconds: 300); +const bool _kCloseOnTap = true; +const double _kActionsExtentRatio = 0.25; +const Duration _kMovementDuration = Duration(milliseconds: 200); + class AppGeneratedModule extends GeneratedModule { @override Map components() { return { - 'IconSlideAction': (props) => IconSlideAction( + 'FractionallyAlignedSizedBox': (props) => FractionallyAlignedSizedBox( key: props['key'], - icon: props['icon'], - iconWidget: props['iconWidget'], - caption: props['caption'], - color: props['color'], - foregroundColor: props['foregroundColor'], - onTap: props['onTap'], - closeOnTap: props['closeOnTap'] ?? true, + child: props['child'], + leftFactor: props['leftFactor']?.toDouble(), + topFactor: props['topFactor']?.toDouble(), + rightFactor: props['rightFactor']?.toDouble(), + bottomFactor: props['bottomFactor']?.toDouble(), + widthFactor: props['widthFactor']?.toDouble(), + heightFactor: props['heightFactor']?.toDouble(), ), - 'SlideAction': (props) => SlideAction( + 'SlidableStrechActionPane': (props) => SlidableStrechActionPane( + key: props['key'], + ), + 'SlidableBehindActionPane': (props) => SlidableBehindActionPane( + key: props['key'], + ), + 'SlidableScrollActionPane': (props) => SlidableScrollActionPane( + key: props['key'], + ), + 'SlidableDrawerActionPane': (props) => SlidableDrawerActionPane( key: props['key'], - child: props['child'], - onTap: props['onTap'], - color: props['color'], - decoration: props['decoration'], - closeOnTap: props['closeOnTap'] ?? true, ), 'SlidableDismissal': (props) => SlidableDismissal( + key: props['key'], child: props['child'], dismissThresholds: props['dismissThresholds'] ?? const {}, onResize: props['onResize'], onDismissed: props['onDismissed'], - resizeDuration: props['resizeDuration'] ?? const Duration(milliseconds: 200), + resizeDuration: props['resizeDuration'] ?? _kResizeDuration, crossAxisEndOffset: props['crossAxisEndOffset']?.toDouble() ?? 0.0, onWillDismiss: props['onWillDismiss'], closeOnCanceled: props['closeOnCanceled'] ?? false, @@ -47,15 +86,42 @@ class AppGeneratedModule extends GeneratedModule { 'SlidableDrawerDismissal': (props) => SlidableDrawerDismissal( key: props['key'], ), - 'FractionallyAlignedSizedBox': (props) => FractionallyAlignedSizedBox( + 'SlideAction': (props) => SlideAction( key: props['key'], child: props['child'], - leftFactor: props['leftFactor']?.toDouble(), - topFactor: props['topFactor']?.toDouble(), - rightFactor: props['rightFactor']?.toDouble(), - bottomFactor: props['bottomFactor']?.toDouble(), - widthFactor: props['widthFactor']?.toDouble(), - heightFactor: props['heightFactor']?.toDouble(), + onTap: props['onTap'], + color: props['color'], + decoration: props['decoration'], + closeOnTap: props['closeOnTap'] ?? _kCloseOnTap, + ), + 'IconSlideAction': (props) => IconSlideAction( + key: props['key'], + icon: props['icon'], + iconWidget: props['iconWidget'], + caption: props['caption'], + color: props['color'], + foregroundColor: props['foregroundColor'], + onTap: props['onTap'], + closeOnTap: props['closeOnTap'] ?? _kCloseOnTap, + ), + 'SlidableData': (props) => SlidableData( + key: props['key'], + actionType: props['actionType'], + renderingMode: props['renderingMode'], + totalActionsExtent: props['totalActionsExtent']?.toDouble() ?? 0, + dismissThreshold: props['dismissThreshold']?.toDouble() ?? 0, + dismissible: props['dismissible'], + actionDelegate: props['actionDelegate'], + overallMoveAnimation: props['overallMoveAnimation'], + actionsMoveAnimation: props['actionsMoveAnimation'], + dismissAnimation: props['dismissAnimation'], + slidable: props['slidable'], + actionExtentRatio: props['actionExtentRatio']?.toDouble() ?? 0, + direction: props['direction'], + child: props['child'], + ), + 'SlidableData.of': (props) => SlidableData.of( + props['pa'][0], ), 'Slidable': (props) => Slidable( key: props['key'], @@ -66,8 +132,8 @@ class AppGeneratedModule extends GeneratedModule { showAllActionsThreshold: props['showAllActionsThreshold']?.toDouble() ?? 0.5, actionExtentRatio: - props['actionExtentRatio']?.toDouble() ?? 0.25, - movementDuration: props['movementDuration'] ?? const Duration(milliseconds: 200), + props['actionExtentRatio']?.toDouble() ?? _kActionsExtentRatio, + movementDuration: props['movementDuration'] ?? _kMovementDuration, direction: props['direction'] ?? Axis.horizontal, closeOnScroll: props['closeOnScroll'] ?? true, enabled: props['enabled'] ?? true, @@ -84,8 +150,8 @@ class AppGeneratedModule extends GeneratedModule { showAllActionsThreshold: props['showAllActionsThreshold']?.toDouble() ?? 0.5, actionExtentRatio: - props['actionExtentRatio']?.toDouble() ?? 0.25, - movementDuration: props['movementDuration'] ?? const Duration(milliseconds: 200), + props['actionExtentRatio']?.toDouble() ?? _kActionsExtentRatio, + movementDuration: props['movementDuration'] ?? _kMovementDuration, direction: props['direction'] ?? Axis.horizontal, closeOnScroll: props['closeOnScroll'] ?? true, enabled: props['enabled'] ?? true, @@ -93,46 +159,21 @@ class AppGeneratedModule extends GeneratedModule { controller: props['controller'], fastThreshold: props['fastThreshold']?.toDouble(), ), - 'SlidableData': (props) => SlidableData( - key: props['key'], - actionType: props['actionType'], - renderingMode: props['renderingMode'], - totalActionsExtent: props['totalActionsExtent']?.toDouble(), - dismissThreshold: props['dismissThreshold']?.toDouble(), - dismissible: props['dismissible'], - actionDelegate: props['actionDelegate'], - overallMoveAnimation: props['overallMoveAnimation'], - actionsMoveAnimation: props['actionsMoveAnimation'], - dismissAnimation: props['dismissAnimation'], - slidable: props['slidable'], - actionExtentRatio: props['actionExtentRatio']?.toDouble(), - direction: props['direction'], - child: props['child'], + 'Slidable.of': (props) => Slidable.of( + props['pa'][0], ), 'SlidableRenderingMode': { - 'values': SlidableRenderingMode.values, 'none': SlidableRenderingMode.none, 'slide': SlidableRenderingMode.slide, 'dismiss': SlidableRenderingMode.dismiss, 'resize': SlidableRenderingMode.resize, + 'values': SlidableRenderingMode.values, }, 'SlideActionType': { - 'values': SlideActionType.values, 'primary': SlideActionType.primary, 'secondary': SlideActionType.secondary, + 'values': SlideActionType.values, }, - 'SlidableBehindActionPane': (props) => SlidableBehindActionPane( - key: props['key'], - ), - 'SlidableDrawerActionPane': (props) => SlidableDrawerActionPane( - key: props['key'], - ), - 'SlidableScrollActionPane': (props) => SlidableScrollActionPane( - key: props['key'], - ), - 'SlidableStrechActionPane': (props) => SlidableStrechActionPane( - key: props['key'], - ), }; } @@ -140,17 +181,17 @@ class AppGeneratedModule extends GeneratedModule { Map mapping() { return const { 'FractionallyAlignedSizedBox': true, - 'IconSlideAction': true, - 'Slidable': true, + 'SlidableStrechActionPane': true, 'SlidableBehindActionPane': true, - 'SlidableData': true, - 'SlidableDismissal': true, + 'SlidableScrollActionPane': true, 'SlidableDrawerActionPane': true, + 'SlidableDismissal': true, 'SlidableDrawerDismissal': true, - 'SlidableRenderingMode': false, - 'SlidableScrollActionPane': true, - 'SlidableStrechActionPane': true, 'SlideAction': true, + 'IconSlideAction': true, + 'SlidableData': true, + 'Slidable': true, + 'SlidableRenderingMode': false, 'SlideActionType': false, }; } diff --git a/test_case/flutter_slidable/lib/theme.dart b/test_case/flutter_slidable/lib/theme.dart index 6eae7b91..611c10c6 100644 --- a/test_case/flutter_slidable/lib/theme.dart +++ b/test_case/flutter_slidable/lib/theme.dart @@ -10,6 +10,6 @@ import 'package:flutter/painting.dart'; import 'package:flutter/widgets.dart'; class ThemeStyle { - static TextStyle headline4(BuildContext context) => + static TextStyle? headline4(BuildContext context) => Theme.of(context).textTheme.headline4; } diff --git a/test_case/flutter_slidable/pubspec.yaml b/test_case/flutter_slidable/pubspec.yaml index cdd0e88a..d72eb891 100644 --- a/test_case/flutter_slidable/pubspec.yaml +++ b/test_case/flutter_slidable/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.7.0 <3.0.0" + sdk: ">=2.12.0 <3.0.0" dependencies: flutter: @@ -41,8 +41,12 @@ dev_dependencies: # Switch to another stable flutter version dependency_overrides: + analyzer: 5.6.0 + dart_style: 2.2.5 + collection: 1.17.0 + watcher: 1.1.0 fair_version: - path: ../../flutter_version/flutter_3_0_0 + path: ../../flutter_version/flutter_3_13_0 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/test_case/list_card_demo/android/app/build.gradle b/test_case/list_card_demo/android/app/build.gradle index 472e102c..445d3e38 100644 --- a/test_case/list_card_demo/android/app/build.gradle +++ b/test_case/list_card_demo/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 31 + compileSdkVersion 33 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -39,8 +39,8 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.fairwith.fairbloc" - minSdkVersion 19 - targetSdkVersion 29 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } @@ -59,5 +59,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } diff --git a/test_case/list_card_demo/android/app/src/main/AndroidManifest.xml b/test_case/list_card_demo/android/app/src/main/AndroidManifest.xml index 2b1c4828..e7027fed 100644 --- a/test_case/list_card_demo/android/app/src/main/AndroidManifest.xml +++ b/test_case/list_card_demo/android/app/src/main/AndroidManifest.xml @@ -10,6 +10,7 @@ android:icon="@mipmap/ic_launcher"> 0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListCardItemState.prototype.ctor.apply(this,args);return this;}}_ListCardItemState.__inner__=function inner(){};_ListCardItemState.prototype={};_ListCardItemState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _ListCardItemState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ListCardItemState(){const inner=_ListCardItemState.__inner__;if(this==__global__){return new _ListCardItemState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListCardItemState.prototype.ctor.apply(this,args);return this;}}_ListCardItemState.__inner__=function inner(){};_ListCardItemState.prototype={};_ListCardItemState.prototype.ctor=function(){};;return _ListCardItemState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/list_card_demo/assets/bundle/lib_view_list_card_item.fair.json b/test_case/list_card_demo/assets/bundle/lib_view_list_card_item.fair.json index 796e7fc9..ee131c7e 100644 --- a/test_case/list_card_demo/assets/bundle/lib_view_list_card_item.fair.json +++ b/test_case/list_card_demo/assets/bundle/lib_view_list_card_item.fair.json @@ -33,7 +33,7 @@ "na": { "radius": 30, "backgroundImage": { - "className": "Sugar.netWorkImage", + "className": "NetworkImage", "pa": [ "http://c-ssl.duitang.com/uploads/item/202003/26/20200326223552_nayyt.jpeg" ] @@ -134,7 +134,7 @@ "className": "Image", "na": { "image": { - "className": "Sugar.netWorkImage", + "className": "NetworkImage", "pa": [ "https://img2.baidu.com/it/u=4114138728,2649938841&fm=253&fmt=auto&app=138&f=JPEG" ] @@ -273,5 +273,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "032fd34d6a9d44cfd69824a29e29bdfa" } \ No newline at end of file diff --git a/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.js b/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.js index 23436393..a5f74744 100644 --- a/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.js +++ b/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _MomentsListState(){const inner=_MomentsListState.__inner__;if(this==__global__){return new _MomentsListState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_MomentsListState.prototype.ctor.apply(this,args);return this;}}_MomentsListState.__inner__=function inner(){};_MomentsListState.prototype={};_MomentsListState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _MomentsListState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _MomentsListState(){const inner=_MomentsListState.__inner__;if(this==__global__){return new _MomentsListState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_MomentsListState.prototype.ctor.apply(this,args);return this;}}_MomentsListState.__inner__=function inner(){};_MomentsListState.prototype={};_MomentsListState.prototype.ctor=function(){};;return _MomentsListState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.json b/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.json index b3bd3098..458476a0 100644 --- a/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.json +++ b/test_case/list_card_demo/assets/bundle/lib_view_moments_list.fair.json @@ -112,6 +112,12 @@ "data": { "": "" } + }, + "functionParameters": { + "pa": [ + "context", + "index" + ] } } } @@ -121,5 +127,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "b92d883946d0398a70892457032b1b4e" } \ No newline at end of file diff --git a/test_case/list_card_demo/build_runner.sh b/test_case/list_card_demo/build_runner.sh new file mode 100644 index 00000000..93af922f --- /dev/null +++ b/test_case/list_card_demo/build_runner.sh @@ -0,0 +1,11 @@ +fvm flutter clean + +echo "----- flutter clean finish -----" + +fvm flutter pub get + +echo "----- flutter pub get finish -----" + +fvm flutter pub run build_runner build --delete-conflicting-outputs + +echo "----- flutter pub run build_runner build finish -----" diff --git a/test_case/list_card_demo/lib/view/list_card_item.dart b/test_case/list_card_demo/lib/view/list_card_item.dart index f1472acb..7d602383 100644 --- a/test_case/list_card_demo/lib/view/list_card_item.dart +++ b/test_case/list_card_demo/lib/view/list_card_item.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; @FairPatch() class ListCardItem extends StatefulWidget { - const ListCardItem({Key key}) : super(key: key); + const ListCardItem({Key? key}) : super(key: key); @override State createState() => _ListCardItemState(); @@ -25,8 +25,7 @@ class _ListCardItemState extends State { CircleAvatar( radius: 30, backgroundImage: NetworkImage( - "http://c-ssl.duitang.com/uploads/item/202003/26/20200326223552_nayyt.jpeg", - ), + "http://c-ssl.duitang.com/uploads/item/202003/26/20200326223552_nayyt.jpeg"), ), SizedBox( width: 20, @@ -65,8 +64,10 @@ class _ListCardItemState extends State { ), ), Card( - child: Image.network( - "https://img2.baidu.com/it/u=4114138728,2649938841&fm=253&fmt=auto&app=138&f=JPEG"), + child: Image( + image: NetworkImage( + "https://img2.baidu.com/it/u=4114138728,2649938841&fm=253&fmt=auto&app=138&f=JPEG"), + ), ), Padding( padding: EdgeInsets.fromLTRB(10, 10, 10, 10), diff --git a/test_case/list_card_demo/lib/view/moments_list.dart b/test_case/list_card_demo/lib/view/moments_list.dart index c7cc37e7..60557dae 100644 --- a/test_case/list_card_demo/lib/view/moments_list.dart +++ b/test_case/list_card_demo/lib/view/moments_list.dart @@ -1,10 +1,9 @@ import 'package:fair/fair.dart'; -import 'package:fairbloc/view/list_card_item.dart'; import 'package:flutter/material.dart'; @FairPatch() class MomentsList extends StatefulWidget { - const MomentsList({Key key}) : super(key: key); + const MomentsList({Key? key}) : super(key: key); @override State createState() => _MomentsListState(); diff --git a/test_case/list_card_demo/pubspec.lock b/test_case/list_card_demo/pubspec.lock index 2441005b..387d3b2c 100644 --- a/test_case/list_card_demo/pubspec.lock +++ b/test_case/list_card_demo/pubspec.lock @@ -5,196 +5,207 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - url: "https://pub.dartlang.org" + sha256: e440ac42679dfc04bbbefb58ed225c994bc7e07fccc8a68ec7d3631a127e5da9 + url: "https://pub.flutter-io.cn" source: hosted - version: "31.0.0" + version: "54.0.0" analyzer: - dependency: transitive + dependency: "direct overridden" description: name: analyzer - url: "https://pub.dartlang.org" + sha256: "2c2e3721ee9fb36de92faa060f3480c81b23e904352b087e5c64224b1a044427" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.0" + version: "5.6.0" archive: dependency: transitive description: name: archive - url: "https://pub.dartlang.org" + sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.3.0" + version: "3.4.6" args: dependency: transitive description: name: args - url: "https://pub.dartlang.org" + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.0" + version: "2.4.2" async: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.9.0" + version: "2.11.0" bloc: dependency: "direct main" description: name: bloc - url: "https://pub.dartlang.org" + sha256: "6f1b87b6eca9041d5672b6e29273cd1594db48ebb66fd2471066e9f3c3a516bd" + url: "https://pub.flutter-io.cn" source: hosted - version: "6.1.3" + version: "7.2.1" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build - url: "https://pub.dartlang.org" + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.4.1" build_config: dependency: transitive description: name: build_config - url: "https://pub.dartlang.org" + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.0" + version: "1.1.1" build_daemon: dependency: transitive description: name: build_daemon - url: "https://pub.dartlang.org" + sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.0" + version: "4.0.0" build_resolvers: dependency: transitive description: name: build_resolvers - url: "https://pub.dartlang.org" + sha256: "64e12b0521812d1684b1917bc80945625391cb9bdd4312536b1d69dcb6133ed8" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.4" + version: "2.4.1" build_runner: dependency: "direct dev" description: name: build_runner - url: "https://pub.dartlang.org" + sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.4.6" build_runner_core: dependency: transitive description: name: build_runner_core - url: "https://pub.dartlang.org" + sha256: c9e32d21dd6626b5c163d48b037ce906bbe428bc23ab77bcd77bb21e593b6185 + url: "https://pub.flutter-io.cn" source: hosted - version: "7.1.0" + version: "7.2.11" built_collection: dependency: transitive description: name: built_collection - url: "https://pub.dartlang.org" + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" built_value: dependency: transitive description: name: built_value - url: "https://pub.dartlang.org" + sha256: "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e" + url: "https://pub.flutter-io.cn" source: hosted - version: "8.2.0" + version: "8.7.0" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.1" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml - url: "https://pub.dartlang.org" + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" - cli_util: - dependency: transitive - description: - name: cli_util - url: "https://pub.dartlang.org" - source: hosted - version: "0.3.5" + version: "2.0.3" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" code_builder: dependency: transitive description: name: code_builder - url: "https://pub.dartlang.org" + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" + url: "https://pub.flutter-io.cn" source: hosted - version: "4.1.0" + version: "4.7.0" collection: - dependency: transitive + dependency: "direct overridden" description: name: collection - url: "https://pub.dartlang.org" + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.17.0" convert: dependency: transitive description: name: convert - url: "https://pub.dartlang.org" + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.1" + version: "3.1.1" crypto: dependency: transitive description: name: crypto - url: "https://pub.dartlang.org" + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.1" + version: "3.0.3" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - url: "https://pub.dartlang.org" + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.4" + version: "1.0.6" dart_style: - dependency: transitive + dependency: "direct overridden" description: name: dart_style - url: "https://pub.dartlang.org" + sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.1" + version: "2.2.5" fair: dependency: "direct main" description: path: "../../fair" relative: true source: path - version: "2.8.1" + version: "3.3.0" fair_annotation: dependency: transitive description: name: fair_annotation - url: "https://pub.dartlang.org" + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" + url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" fair_compiler: @@ -203,61 +214,68 @@ packages: path: "../../compiler" relative: true source: path - version: "1.4.1-dev.1" + version: "1.8.0" fair_dart2dsl: dependency: transitive description: name: fair_dart2dsl - url: "https://pub.dartlang.org" + sha256: a4e859678c0dcad711d688c0e82998fde5e75d2f5f5620d9b2c6d7426d22acbd + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.4.0" fair_dart2js: dependency: transitive description: name: fair_dart2js - url: "https://pub.dartlang.org" + sha256: f9b14f1fc887866238fb0c446667611bcd8896f889cd18950ce4b3cd7a3cfad2 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.4.0" fair_version: dependency: "direct overridden" description: - path: "../../flutter_version/flutter_3_3_0" + path: "../../flutter_version/flutter_3_13_0" relative: true source: path - version: "3.0.0" + version: "3.13.0" fake_async: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.1" ffi: dependency: transitive description: name: ffi - url: "https://pub.dartlang.org" + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.2" + version: "1.2.1" file: dependency: transitive description: name: file - url: "https://pub.dartlang.org" + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + url: "https://pub.flutter-io.cn" source: hosted - version: "6.1.2" + version: "6.1.4" fixnum: dependency: transitive description: name: fixnum - url: "https://pub.dartlang.org" + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.0" + version: "1.1.0" flat_buffers: dependency: transitive description: name: flat_buffers - url: "https://pub.dartlang.org" + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.5" flutter: @@ -269,16 +287,18 @@ packages: dependency: "direct main" description: name: flutter_bloc - url: "https://pub.dartlang.org" + sha256: cdd1351ced09eeb46cfa7946e095b7679344af927415ca9cd972928fa6d5b23f + url: "https://pub.flutter-io.cn" source: hosted - version: "6.1.3" + version: "7.3.3" flutter_redux: dependency: "direct main" description: name: flutter_redux - url: "https://pub.dartlang.org" + sha256: "8985fd9a4f4016be6acc058818b7bc4cd43f65d134e6507a6e017ac5b499cd82" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.6.0" + version: "0.8.2" flutter_test: dependency: "direct dev" description: flutter @@ -293,205 +313,242 @@ packages: dependency: transitive description: name: frontend_server_client - url: "https://pub.dartlang.org" + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "3.2.0" glob: dependency: transitive description: name: glob - url: "https://pub.dartlang.org" + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" + version: "2.1.2" graphs: dependency: transitive description: name: graphs - url: "https://pub.dartlang.org" + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.3.1" http: dependency: transitive description: name: http - url: "https://pub.dartlang.org" + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.13.3" + version: "0.13.6" http_multi_server: dependency: transitive description: name: http_multi_server - url: "https://pub.dartlang.org" + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.2.0" + version: "3.2.1" http_parser: dependency: transitive description: name: http_parser - url: "https://pub.dartlang.org" + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.flutter-io.cn" source: hosted - version: "4.0.0" + version: "4.0.2" intl: dependency: transitive description: name: intl - url: "https://pub.dartlang.org" + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" + url: "https://pub.flutter-io.cn" source: hosted version: "0.17.0" io: dependency: transitive description: name: io - url: "https://pub.dartlang.org" + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.3" + version: "1.0.4" js: dependency: transitive description: name: js - url: "https://pub.dartlang.org" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.flutter-io.cn" source: hosted - version: "0.6.4" + version: "0.6.7" json_annotation: dependency: transitive description: name: json_annotation - url: "https://pub.dartlang.org" + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + url: "https://pub.flutter-io.cn" source: hosted - version: "4.0.1" + version: "4.8.1" logging: dependency: transitive description: name: logging - url: "https://pub.dartlang.org" + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.2.0" matcher: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.12" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities - url: "https://pub.dartlang.org" + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.5" + version: "0.5.0" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.0" + version: "1.9.1" mime: dependency: transitive description: name: mime - url: "https://pub.dartlang.org" + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.1" + version: "1.0.4" nested: dependency: transitive description: name: nested - url: "https://pub.dartlang.org" + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.0" package_config: dependency: transitive description: name: package_config - url: "https://pub.dartlang.org" + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.2" + version: "2.1.0" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.8.3" pedantic: dependency: transitive description: name: pedantic - url: "https://pub.dartlang.org" + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" + url: "https://pub.flutter-io.cn" source: hosted version: "1.11.1" platform: dependency: transitive description: name: platform - url: "https://pub.dartlang.org" + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.0" + version: "3.1.3" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface - url: "https://pub.dartlang.org" + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.6" + pointycastle: + dependency: transitive + description: + name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.7.3" pool: dependency: transitive description: name: pool - url: "https://pub.dartlang.org" + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.5.0" + version: "1.5.1" process: dependency: transitive description: name: process - url: "https://pub.dartlang.org" + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" + url: "https://pub.flutter-io.cn" source: hosted - version: "4.2.3" + version: "4.2.4" provider: dependency: transitive description: name: provider - url: "https://pub.dartlang.org" + sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f + url: "https://pub.flutter-io.cn" source: hosted - version: "4.3.3" + version: "6.0.5" pub_semver: dependency: transitive description: name: pub_semver - url: "https://pub.dartlang.org" + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.1" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse - url: "https://pub.dartlang.org" + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.0" + version: "1.2.3" redux: dependency: transitive description: name: redux - url: "https://pub.dartlang.org" + sha256: "1e86ed5b1a9a717922d0a0ca41f9bf49c1a587d50050e9426fc65b14e85ec4d7" + url: "https://pub.flutter-io.cn" source: hosted - version: "4.0.0+3" + version: "5.0.0" shelf: dependency: transitive description: name: shelf - url: "https://pub.dartlang.org" + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" + version: "1.4.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - url: "https://pub.dartlang.org" + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.1" + version: "1.0.4" sky_engine: dependency: transitive description: flutter @@ -501,142 +558,186 @@ packages: dependency: transitive description: name: source_gen - url: "https://pub.dartlang.org" + sha256: fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.2" + version: "1.4.0" source_span: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.9.0" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" stream_transform: dependency: transitive description: name: stream_transform - url: "https://pub.dartlang.org" + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.0" + version: "2.1.0" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.1" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.12" + version: "0.6.0" timing: dependency: transitive description: name: timing - url: "https://pub.dartlang.org" + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.0" + version: "1.0.1" typed_data: dependency: transitive description: name: typed_data - url: "https://pub.dartlang.org" + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.3.2" url_launcher: dependency: transitive description: name: url_launcher - url: "https://pub.dartlang.org" + sha256: b1c9e98774adf8820c96fbc7ae3601231d324a7d5ebd8babe27b6dfac91357ba + url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.10" + version: "6.2.1" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def" + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.2.0" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a" + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.2.0" url_launcher_linux: dependency: transitive description: name: url_launcher_linux - url: "https://pub.dartlang.org" + sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.3" + version: "3.1.0" url_launcher_macos: dependency: transitive description: name: url_launcher_macos - url: "https://pub.dartlang.org" + sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.3" + version: "3.1.0" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface - url: "https://pub.dartlang.org" + sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.5" + version: "2.2.0" url_launcher_web: dependency: transitive description: name: url_launcher_web - url: "https://pub.dartlang.org" + sha256: "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.7" + version: "2.2.0" url_launcher_windows: dependency: transitive description: name: url_launcher_windows - url: "https://pub.dartlang.org" + sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.2" + version: "3.1.0" vector_math: dependency: transitive description: name: vector_math - url: "https://pub.dartlang.org" + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.4" watcher: - dependency: transitive + dependency: "direct overridden" description: name: watcher - url: "https://pub.dartlang.org" + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.0" + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel - url: "https://pub.dartlang.org" + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.4.0" yaml: dependency: transitive description: name: yaml - url: "https://pub.dartlang.org" + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.0" + version: "3.1.2" sdks: - dart: ">=2.17.0-0 <3.0.0" - flutter: ">=2.0.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/test_case/list_card_demo/pubspec.yaml b/test_case/list_card_demo/pubspec.yaml index a57c1468..afd2e547 100644 --- a/test_case/list_card_demo/pubspec.yaml +++ b/test_case/list_card_demo/pubspec.yaml @@ -6,20 +6,20 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.7.0 <3.0.0" + sdk: ">=2.12.0 <3.0.0" dependencies: flutter: sdk: flutter cupertino_icons: ^1.0.0 - bloc: ^6.1.3 - flutter_bloc: ^6.1.3 + bloc: ^7.0.0 + flutter_bloc: ^7.0.0 fair: path: ../../fair - flutter_redux: ^0.6.0 + flutter_redux: ^0.8.1 dev_dependencies: flutter_test: @@ -31,8 +31,12 @@ dev_dependencies: path: ../../compiler dependency_overrides: + analyzer: 5.6.0 + dart_style: 2.2.5 + collection: 1.17.0 + watcher: 1.1.0 fair_version: - path: ../../flutter_version/flutter_3_3_0 + path: ../../flutter_version/flutter_3_13_0 flutter: diff --git a/test_case/list_demo/android/app/build.gradle b/test_case/list_demo/android/app/build.gradle index 5271e690..6079087a 100644 --- a/test_case/list_demo/android/app/build.gradle +++ b/test_case/list_demo/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion flutter.compileSdkVersion + compileSdkVersion 33 ndkVersion flutter.ndkVersion compileOptions { @@ -47,8 +47,8 @@ android { applicationId "com.example.list_demo" // 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 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } @@ -67,5 +67,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } diff --git a/test_case/list_demo/android/build.gradle b/test_case/list_demo/android/build.gradle index 83ae2200..fb8d72f6 100644 --- a/test_case/list_demo/android/build.gradle +++ b/test_case/list_demo/android/build.gradle @@ -1,8 +1,12 @@ buildscript { - ext.kotlin_version = '1.6.10' + ext.kotlin_version = '1.8.0' repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } google() - mavenCentral() + jcenter() } dependencies { @@ -13,8 +17,20 @@ buildscript { allprojects { repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/google' + } + maven { + allowInsecureProtocol = true + url 'http://maven.aliyun.com/nexus/content/groups/public/' + } google() - mavenCentral() + jcenter() } } @@ -26,6 +42,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/test_case/list_demo/android/gradle/wrapper/gradle-wrapper.properties b/test_case/list_demo/android/gradle/wrapper/gradle-wrapper.properties index cb24abda..0e9a6105 100644 --- a/test_case/list_demo/android/gradle/wrapper/gradle-wrapper.properties +++ b/test_case/list_demo/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ 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 +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip diff --git a/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.js b/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.js index 6b345e2b..38ab0bec 100644 --- a/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.js +++ b/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ListDemoPageState(){const inner=_ListDemoPageState.__inner__;if(this==__global__){return new _ListDemoPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListDemoPageState.prototype.ctor.apply(this,args);return this;}}_ListDemoPageState.__inner__=function inner(){};_ListDemoPageState.prototype={};_ListDemoPageState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _ListDemoPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ListDemoPageState(){const inner=_ListDemoPageState.__inner__;if(this==__global__){return new _ListDemoPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListDemoPageState.prototype.ctor.apply(this,args);return this;}}_ListDemoPageState.__inner__=function inner(){};_ListDemoPageState.prototype={_incrementCounter:function _incrementCounter(){const __thiz__=this;with(__thiz__){}},};_ListDemoPageState.prototype.ctor=function(){};;return _ListDemoPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.json b/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.json index e3198fb5..760fd8c5 100644 --- a/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.json +++ b/test_case/list_demo/assets/bundle/lib_list_demo_page.fair.json @@ -1,6 +1,18 @@ { "className": "Scaffold", "na": { + "floatingActionButton": { + "className": "ElevatedButton", + "na": { + "onPressed": "@(_incrementCounter)", + "child": { + "className": "Text", + "pa": [ + "Map View" + ] + } + } + }, "appBar": { "className": "AppBar", "na": { @@ -19,7 +31,7 @@ "^(context)" ] }, - 8 + 10 ] }, "child": { @@ -159,6 +171,12 @@ "data": { "": "" } + }, + "functionParameters": { + "pa": [ + "context", + "index" + ] } } } @@ -166,5 +184,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "705003bb62cfb22930abb9ab6df6bddb" } \ No newline at end of file diff --git a/test_case/list_demo/assets/bundle/lib_list_item.fair.js b/test_case/list_demo/assets/bundle/lib_list_item.fair.js index fd2a821d..7d0e6acc 100644 --- a/test_case/list_demo/assets/bundle/lib_list_item.fair.js +++ b/test_case/list_demo/assets/bundle/lib_list_item.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ListItemState(){const inner=_ListItemState.__inner__;if(this==__global__){return new _ListItemState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListItemState.prototype.ctor.apply(this,args);return this;}}_ListItemState.__inner__=function inner(){};_ListItemState.prototype={};_ListItemState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _ListItemState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _ListItemState(){const inner=_ListItemState.__inner__;if(this==__global__){return new _ListItemState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_ListItemState.prototype.ctor.apply(this,args);return this;}}_ListItemState.__inner__=function inner(){};_ListItemState.prototype={};_ListItemState.prototype.ctor=function(){};;return _ListItemState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/list_demo/assets/bundle/lib_list_item.fair.json b/test_case/list_demo/assets/bundle/lib_list_item.fair.json index bceab4e7..4156a67a 100644 --- a/test_case/list_demo/assets/bundle/lib_list_item.fair.json +++ b/test_case/list_demo/assets/bundle/lib_list_item.fair.json @@ -45,7 +45,7 @@ "na": { "fit": "#(BoxFit.fitHeight)", "image": { - "className": "Sugar.netWorkImage", + "className": "NetworkImage", "pa": [ "https://img.iplaysoft.com/wp-content/uploads/2019/free-images/free_stock_photo.jpg!0x0.webp" ] @@ -192,5 +192,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "73d80752f64aff517d52c27f0208a9ff" } \ No newline at end of file diff --git a/test_case/list_demo/build_runner.sh b/test_case/list_demo/build_runner.sh new file mode 100644 index 00000000..93af922f --- /dev/null +++ b/test_case/list_demo/build_runner.sh @@ -0,0 +1,11 @@ +fvm flutter clean + +echo "----- flutter clean finish -----" + +fvm flutter pub get + +echo "----- flutter pub get finish -----" + +fvm flutter pub run build_runner build --delete-conflicting-outputs + +echo "----- flutter pub run build_runner build finish -----" diff --git a/test_case/list_demo/lib/list_demo_page.dart b/test_case/list_demo/lib/list_demo_page.dart index 47816270..0481f3e2 100644 --- a/test_case/list_demo/lib/list_demo_page.dart +++ b/test_case/list_demo/lib/list_demo_page.dart @@ -1,6 +1,5 @@ import 'package:fair/fair.dart'; import 'package:flutter/material.dart'; -import 'package:list_demo/list_item.dart'; @FairPatch() class ListDemoPage extends StatefulWidget { @@ -17,7 +16,6 @@ class _ListDemoPageState extends State { return Scaffold( floatingActionButton: ElevatedButton( onPressed: _incrementCounter, - style: Sugar.isButtonStyle(backgroundColor: Colors.deepPurple), child: const Text("Map View"), ), appBar: AppBar( @@ -25,7 +23,7 @@ class _ListDemoPageState extends State { backgroundColor: Colors.white, shadowColor: Colors.white, bottom: PreferredSize( - preferredSize: Size(Sugar.width(context), 8), + preferredSize: Size(Sugar.width(context), 10), child: const Material( color: Colors.white, child: Padding( diff --git a/test_case/list_demo/pubspec.lock b/test_case/list_demo/pubspec.lock index ba49a936..6f85b0cb 100644 --- a/test_case/list_demo/pubspec.lock +++ b/test_case/list_demo/pubspec.lock @@ -5,55 +5,63 @@ packages: dependency: transitive description: name: _fe_analyzer_shared + sha256: e440ac42679dfc04bbbefb58ed225c994bc7e07fccc8a68ec7d3631a127e5da9 url: "https://pub.flutter-io.cn" source: hosted - version: "53.0.0" + version: "54.0.0" analyzer: dependency: "direct overridden" description: name: analyzer + sha256: "2c2e3721ee9fb36de92faa060f3480c81b23e904352b087e5c64224b1a044427" url: "https://pub.flutter-io.cn" source: hosted - version: "5.5.0" + version: "5.6.0" archive: dependency: transitive description: name: archive + sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" url: "https://pub.flutter-io.cn" source: hosted - version: "3.3.6" + version: "3.4.6" args: dependency: transitive description: name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.1" + version: "2.4.2" async: dependency: transitive description: name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.2" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.1" + version: "2.4.1" build_config: dependency: transitive description: name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" @@ -61,34 +69,39 @@ packages: dependency: transitive description: name: build_daemon + sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.1" + version: "4.0.0" build_resolvers: dependency: "direct overridden" description: name: build_resolvers + sha256: "64e12b0521812d1684b1917bc80945625391cb9bdd4312536b1d69dcb6133ed8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.0" + version: "2.4.1" build_runner: dependency: "direct dev" description: name: build_runner + sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b" url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.3" + version: "2.4.6" build_runner_core: dependency: transitive description: name: build_runner_core + sha256: c9e32d21dd6626b5c163d48b037ce906bbe428bc23ab77bcd77bb21e593b6185 url: "https://pub.flutter-io.cn" source: hosted - version: "7.2.7" + version: "7.2.11" built_collection: dependency: transitive description: name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" @@ -96,34 +109,31 @@ packages: dependency: transitive description: name: built_value + sha256: "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e" url: "https://pub.flutter-io.cn" source: hosted - version: "8.4.4" + version: "8.7.0" characters: dependency: transitive description: name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" + version: "2.0.3" clock: dependency: transitive description: name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf url: "https://pub.flutter-io.cn" source: hosted version: "1.1.0" @@ -131,13 +141,15 @@ packages: dependency: transitive description: name: code_builder + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" url: "https://pub.flutter-io.cn" source: hosted - version: "4.4.0" + version: "4.7.0" collection: dependency: "direct overridden" description: name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 url: "https://pub.flutter-io.cn" source: hosted version: "1.17.0" @@ -145,6 +157,7 @@ packages: dependency: transitive description: name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -152,20 +165,23 @@ packages: dependency: transitive description: name: crypto + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.2" + version: "3.0.3" cupertino_icons: dependency: "direct main" description: name: cupertino_icons + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.5" + version: "1.0.6" dart_style: - dependency: transitive + dependency: "direct overridden" description: name: dart_style + sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" url: "https://pub.flutter-io.cn" source: hosted version: "2.2.5" @@ -175,11 +191,12 @@ packages: path: "../../fair" relative: true source: path - version: "3.1.0" + version: "3.3.0" fair_annotation: dependency: transitive description: name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" @@ -189,32 +206,35 @@ packages: path: "../../compiler" relative: true source: path - version: "1.6.0" + version: "1.8.0" fair_dart2dsl: dependency: "direct overridden" description: - path: "../../dart2dsl" - relative: true - source: path - version: "1.2.0" + name: fair_dart2dsl + sha256: a4e859678c0dcad711d688c0e82998fde5e75d2f5f5620d9b2c6d7426d22acbd + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.4.0" fair_dart2js: dependency: "direct overridden" description: - path: "../../dart2js" - relative: true - source: path + name: fair_dart2js + sha256: f9b14f1fc887866238fb0c446667611bcd8896f889cd18950ce4b3cd7a3cfad2 + url: "https://pub.flutter-io.cn" + source: hosted version: "1.4.0" fair_version: dependency: "direct overridden" description: - path: "../../flutter_version/flutter_3_3_0" + path: "../../flutter_version/flutter_3_13_0" relative: true source: path - version: "3.0.0" + version: "3.13.0" fake_async: dependency: transitive description: name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" url: "https://pub.flutter-io.cn" source: hosted version: "1.3.0" @@ -222,6 +242,7 @@ packages: dependency: transitive description: name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -229,6 +250,7 @@ packages: dependency: transitive description: name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.4" @@ -236,13 +258,15 @@ packages: dependency: transitive description: name: fixnum + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.1" + version: "1.1.0" flat_buffers: dependency: transitive description: name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.5" @@ -255,9 +279,10 @@ packages: dependency: "direct dev" description: name: flutter_lints + sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" + version: "2.0.3" flutter_test: dependency: "direct dev" description: flutter @@ -272,6 +297,7 @@ packages: dependency: transitive description: name: frontend_server_client + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.0" @@ -279,27 +305,31 @@ packages: dependency: transitive description: name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.1" + version: "2.1.2" graphs: dependency: transitive description: name: graphs + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.0" + version: "2.3.1" http: dependency: transitive description: name: http + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" url: "https://pub.flutter-io.cn" source: hosted - version: "0.13.5" + version: "0.13.6" http_multi_server: dependency: transitive description: name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.1" @@ -307,6 +337,7 @@ packages: dependency: transitive description: name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" url: "https://pub.flutter-io.cn" source: hosted version: "4.0.2" @@ -314,6 +345,7 @@ packages: dependency: "direct dev" description: name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" url: "https://pub.flutter-io.cn" source: hosted version: "0.17.0" @@ -321,6 +353,7 @@ packages: dependency: transitive description: name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.4" @@ -328,62 +361,71 @@ packages: dependency: transitive description: name: js + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.flutter-io.cn" source: hosted - version: "0.6.4" + version: "0.6.7" json_annotation: dependency: transitive description: name: json_annotation + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 url: "https://pub.flutter-io.cn" source: hosted - version: "4.7.0" + version: "4.8.1" lints: dependency: transitive description: name: lints + sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452" url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" + version: "2.1.1" logging: dependency: transitive description: name: logging + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" matcher: dependency: transitive description: name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.11" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.4" + version: "0.5.0" meta: dependency: transitive description: name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.flutter-io.cn" source: hosted - version: "1.7.0" + version: "1.9.1" mime: dependency: transitive description: name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.3" + version: "1.0.4" package_config: dependency: transitive description: name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -391,13 +433,15 @@ packages: dependency: transitive description: name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.8.3" pedantic: dependency: transitive description: name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" url: "https://pub.flutter-io.cn" source: hosted version: "1.11.1" @@ -405,27 +449,31 @@ packages: dependency: transitive description: name: platform + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.0" + version: "3.1.3" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.4" + version: "2.1.6" pointycastle: dependency: transitive description: name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" url: "https://pub.flutter-io.cn" source: hosted - version: "3.7.2" + version: "3.7.3" pool: dependency: transitive description: name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" url: "https://pub.flutter-io.cn" source: hosted version: "1.5.1" @@ -433,6 +481,7 @@ packages: dependency: transitive description: name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" url: "https://pub.flutter-io.cn" source: hosted version: "4.2.4" @@ -440,30 +489,34 @@ packages: dependency: transitive description: name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.3" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.1" + version: "1.2.3" shelf: dependency: transitive description: name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 url: "https://pub.flutter-io.cn" source: hosted - version: "1.4.0" + version: "1.4.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.3" + version: "1.0.4" sky_engine: dependency: transitive description: flutter @@ -473,34 +526,39 @@ packages: dependency: "direct overridden" description: name: source_gen + sha256: fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.7" + version: "1.4.0" source_span: dependency: transitive description: name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" stream_transform: dependency: transitive description: name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -508,13 +566,15 @@ packages: dependency: transitive description: name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 url: "https://pub.flutter-io.cn" source: hosted version: "1.2.0" @@ -522,13 +582,15 @@ packages: dependency: transitive description: name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.9" + version: "0.6.0" timing: dependency: transitive description: name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" @@ -536,93 +598,114 @@ packages: dependency: transitive description: name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.1" + version: "1.3.2" url_launcher: dependency: transitive description: name: url_launcher + sha256: b1c9e98774adf8820c96fbc7ae3601231d324a7d5ebd8babe27b6dfac91357ba url: "https://pub.flutter-io.cn" source: hosted - version: "6.1.10" + version: "6.2.1" url_launcher_android: dependency: transitive description: name: url_launcher_android + sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def" url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.26" + version: "6.2.0" url_launcher_ios: dependency: transitive description: name: url_launcher_ios + sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a" url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.18" + version: "6.2.0" url_launcher_linux: dependency: transitive description: name: url_launcher_linux + sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.4" + version: "3.1.0" url_launcher_macos: dependency: transitive description: name: url_launcher_macos + sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.4" + version: "3.1.0" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface + sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.2.0" url_launcher_web: dependency: transitive description: name: url_launcher_web + sha256: "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2" url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.16" + version: "2.2.0" url_launcher_windows: dependency: transitive description: name: url_launcher_windows + sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.5" + version: "3.1.0" vector_math: dependency: transitive description: name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.4" watcher: - dependency: transitive + dependency: "direct overridden" description: name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.0" + version: "2.4.0" yaml: dependency: transitive description: name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.1" + version: "3.1.2" sdks: - dart: ">=2.17.0 <3.0.0" - flutter: ">=3.0.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/test_case/list_demo/pubspec.yaml b/test_case/list_demo/pubspec.yaml index 6a43fd4e..05c31f79 100644 --- a/test_case/list_demo/pubspec.yaml +++ b/test_case/list_demo/pubspec.yaml @@ -41,21 +41,12 @@ dev_dependencies: flutter_lints: ^2.0.0 dependency_overrides: - build_runner: 2.3.3 - build_resolvers: 2.2.0 - source_gen: 1.2.7 - analyzer: 5.5.0 + analyzer: 5.6.0 + dart_style: 2.2.5 collection: 1.17.0 + watcher: 1.1.0 fair_version: - path: ../../flutter_version/flutter_3_3_0 - fair: - path: ../../fair - fair_compiler: - path: ../../compiler - fair_dart2dsl: - path: ../../dart2dsl - fair_dart2js: - path: ../../dart2js + path: ../../flutter_version/flutter_3_13_0 flutter: uses-material-design: true diff --git a/test_case/login_template/android/app/build.gradle b/test_case/login_template/android/app/build.gradle index 5722b837..1caf3192 100644 --- a/test_case/login_template/android/app/build.gradle +++ b/test_case/login_template/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion flutter.compileSdkVersion + compileSdkVersion 33 ndkVersion flutter.ndkVersion compileOptions { @@ -48,7 +48,7 @@ android { // 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 21 - targetSdkVersion flutter.targetSdkVersion + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } @@ -67,5 +67,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } diff --git a/test_case/login_template/android/build.gradle b/test_case/login_template/android/build.gradle index 83ae2200..fb8d72f6 100644 --- a/test_case/login_template/android/build.gradle +++ b/test_case/login_template/android/build.gradle @@ -1,8 +1,12 @@ buildscript { - ext.kotlin_version = '1.6.10' + ext.kotlin_version = '1.8.0' repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } google() - mavenCentral() + jcenter() } dependencies { @@ -13,8 +17,20 @@ buildscript { allprojects { repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/google' + } + maven { + allowInsecureProtocol = true + url 'http://maven.aliyun.com/nexus/content/groups/public/' + } google() - mavenCentral() + jcenter() } } @@ -26,6 +42,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/test_case/login_template/android/gradle/wrapper/gradle-wrapper.properties b/test_case/login_template/android/gradle/wrapper/gradle-wrapper.properties index cc5527d7..bfd98901 100644 --- a/test_case/login_template/android/gradle/wrapper/gradle-wrapper.properties +++ b/test_case/login_template/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ 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 +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip diff --git a/test_case/login_template/assets/fair/lib_login_login_page.fair.bin b/test_case/login_template/assets/fair/lib_login_login_page.fair.bin deleted file mode 100644 index e9050fea..00000000 Binary files a/test_case/login_template/assets/fair/lib_login_login_page.fair.bin and /dev/null differ diff --git a/test_case/login_template/assets/fair/lib_login_login_page.fair.js b/test_case/login_template/assets/fair/lib_login_login_page.fair.js index 42e558bf..e5ea086e 100644 --- a/test_case/login_template/assets/fair/lib_login_login_page.fair.js +++ b/test_case/login_template/assets/fair/lib_login_login_page.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _LoginPageState(){const inner=_LoginPageState.__inner__;if(this==__global__){return new _LoginPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_LoginPageState.prototype.ctor.apply(this,args);return this;}}_LoginPageState.__inner__=function inner(){};_LoginPageState.prototype={};_LoginPageState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _LoginPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _LoginPageState(){const inner=_LoginPageState.__inner__;if(this==__global__){return new _LoginPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_LoginPageState.prototype.ctor.apply(this,args);return this;}}_LoginPageState.__inner__=function inner(){};_LoginPageState.prototype={};_LoginPageState.prototype.ctor=function(){};;return _LoginPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file diff --git a/test_case/login_template/assets/fair/lib_login_login_page.fair.json b/test_case/login_template/assets/fair/lib_login_login_page.fair.json index 05f7c9ab..88a20d16 100644 --- a/test_case/login_template/assets/fair/lib_login_login_page.fair.json +++ b/test_case/login_template/assets/fair/lib_login_login_page.fair.json @@ -361,5 +361,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "68bb715b4cbef80dd730063fd75ed975" } \ No newline at end of file diff --git a/test_case/login_template/build_runner.sh b/test_case/login_template/build_runner.sh new file mode 100644 index 00000000..93af922f --- /dev/null +++ b/test_case/login_template/build_runner.sh @@ -0,0 +1,11 @@ +fvm flutter clean + +echo "----- flutter clean finish -----" + +fvm flutter pub get + +echo "----- flutter pub get finish -----" + +fvm flutter pub run build_runner build --delete-conflicting-outputs + +echo "----- flutter pub run build_runner build finish -----" diff --git a/test_case/login_template/pubspec.lock b/test_case/login_template/pubspec.lock index 121e9729..0425fa14 100644 --- a/test_case/login_template/pubspec.lock +++ b/test_case/login_template/pubspec.lock @@ -5,20 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared + sha256: e440ac42679dfc04bbbefb58ed225c994bc7e07fccc8a68ec7d3631a127e5da9 url: "https://pub.flutter-io.cn" source: hosted - version: "31.0.0" + version: "54.0.0" analyzer: - dependency: transitive + dependency: "direct overridden" description: name: analyzer + sha256: "2c2e3721ee9fb36de92faa060f3480c81b23e904352b087e5c64224b1a044427" url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.0" + version: "5.6.0" archive: dependency: transitive description: name: archive + sha256: "80e5141fafcb3361653ce308776cfd7d45e6e9fbb429e14eec571382c0c5fecb" url: "https://pub.flutter-io.cn" source: hosted version: "3.3.2" @@ -26,6 +29,7 @@ packages: dependency: transitive description: name: args + sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515 url: "https://pub.flutter-io.cn" source: hosted version: "2.3.1" @@ -33,27 +37,31 @@ packages: dependency: transitive description: name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.2" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build + sha256: "79752d67750874fe7eb6d509a7514237b66eabdb8f6c44295d50083a19d1008e" url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.1" + version: "2.1.1" build_config: dependency: transitive description: name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" @@ -61,27 +69,31 @@ packages: dependency: transitive description: name: build_daemon + sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.0" + version: "4.0.0" build_resolvers: - dependency: transitive + dependency: "direct overridden" description: name: build_resolvers + sha256: "6c4dd11d05d056e76320b828a1db0fc01ccd376922526f8e9d6c796a5adbac20" url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.6" + version: "2.2.1" build_runner: dependency: "direct dev" description: name: build_runner + sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b" url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.0" + version: "2.4.6" build_runner_core: dependency: transitive description: name: build_runner_core + sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292" url: "https://pub.flutter-io.cn" source: hosted version: "7.2.7" @@ -89,6 +101,7 @@ packages: dependency: transitive description: name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" @@ -96,6 +109,7 @@ packages: dependency: transitive description: name: built_value + sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b" url: "https://pub.flutter-io.cn" source: hosted version: "8.4.2" @@ -103,55 +117,47 @@ packages: dependency: transitive description: name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml + sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659 url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" - cli_util: - dependency: transitive - description: - name: cli_util - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.3.5" clock: dependency: transitive description: name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.1.1" code_builder: dependency: transitive description: name: code_builder + sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5" url: "https://pub.flutter-io.cn" source: hosted version: "4.3.0" collection: - dependency: transitive + dependency: "direct overridden" description: name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.17.0" convert: dependency: transitive description: name: convert + sha256: "1be13198012c1d5bc042dc40ad1d7f16cbd522350984c0c1abf471d6d7e305c6" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -159,6 +165,7 @@ packages: dependency: transitive description: name: crypto + sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.2" @@ -166,69 +173,76 @@ packages: dependency: "direct main" description: name: cupertino_icons + sha256: e35129dc44c9118cee2a5603506d823bab99c68393879edb440e0090d07586be url: "https://pub.flutter-io.cn" source: hosted version: "1.0.5" dart_style: - dependency: transitive + dependency: "direct overridden" description: name: dart_style + sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.1" + version: "2.2.5" fair: dependency: "direct main" description: path: "../../fair" relative: true source: path - version: "3.1.0" + version: "3.3.0" fair_annotation: dependency: transitive description: name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" fair_compiler: dependency: "direct dev" description: - name: fair_compiler - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.0" + path: "../../compiler" + relative: true + source: path + version: "1.8.0" fair_dart2dsl: dependency: transitive description: name: fair_dart2dsl + sha256: a4e859678c0dcad711d688c0e82998fde5e75d2f5f5620d9b2c6d7426d22acbd url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.4.0" fair_dart2js: dependency: transitive description: name: fair_dart2js + sha256: f9b14f1fc887866238fb0c446667611bcd8896f889cd18950ce4b3cd7a3cfad2 url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.4.0" fair_version: dependency: "direct overridden" description: - path: "../../flutter_version/flutter_3_0_0" + path: "../../flutter_version/flutter_3_13_0" relative: true source: path - version: "3.0.0+2" + version: "3.13.0" fake_async: dependency: transitive description: name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.3.1" ffi: dependency: transitive description: name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -236,6 +250,7 @@ packages: dependency: transitive description: name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.4" @@ -243,6 +258,7 @@ packages: dependency: transitive description: name: fixnum + sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" @@ -250,6 +266,7 @@ packages: dependency: transitive description: name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.5" @@ -262,6 +279,7 @@ packages: dependency: "direct dev" description: name: flutter_lints + sha256: aeb0b80a8b3709709c9cc496cdc027c5b3216796bc0af0ce1007eaf24464fd4c url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" @@ -279,13 +297,15 @@ packages: dependency: transitive description: name: frontend_server_client + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.3" + version: "3.2.0" glob: dependency: transitive description: name: glob + sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729 url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -293,6 +313,7 @@ packages: dependency: transitive description: name: graphs + sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2 url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" @@ -300,6 +321,7 @@ packages: dependency: transitive description: name: http + sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482" url: "https://pub.flutter-io.cn" source: hosted version: "0.13.5" @@ -307,6 +329,7 @@ packages: dependency: transitive description: name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.1" @@ -314,6 +337,7 @@ packages: dependency: transitive description: name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" url: "https://pub.flutter-io.cn" source: hosted version: "4.0.2" @@ -321,6 +345,7 @@ packages: dependency: transitive description: name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" url: "https://pub.flutter-io.cn" source: hosted version: "0.17.0" @@ -328,6 +353,7 @@ packages: dependency: transitive description: name: io + sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.3" @@ -335,6 +361,7 @@ packages: dependency: transitive description: name: js + sha256: a5e201311cb08bf3912ebbe9a2be096e182d703f881136ec1e81a2338a9e120d url: "https://pub.flutter-io.cn" source: hosted version: "0.6.4" @@ -342,6 +369,7 @@ packages: dependency: transitive description: name: json_annotation + sha256: "3520fa844009431b5d4491a5a778603520cdc399ab3406332dcc50f93547258c" url: "https://pub.flutter-io.cn" source: hosted version: "4.7.0" @@ -349,6 +377,7 @@ packages: dependency: transitive description: name: lints + sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" @@ -356,6 +385,7 @@ packages: dependency: transitive description: name: logging + sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.0" @@ -363,27 +393,31 @@ packages: dependency: transitive description: name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.11" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.4" + version: "0.5.0" meta: dependency: transitive description: name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.flutter-io.cn" source: hosted - version: "1.7.0" + version: "1.9.1" mime: dependency: transitive description: name: mime + sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a url: "https://pub.flutter-io.cn" source: hosted version: "1.0.2" @@ -391,6 +425,7 @@ packages: dependency: transitive description: name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -398,13 +433,15 @@ packages: dependency: transitive description: name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.8.3" pedantic: dependency: transitive description: name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" url: "https://pub.flutter-io.cn" source: hosted version: "1.11.1" @@ -412,6 +449,7 @@ packages: dependency: transitive description: name: platform + sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -419,6 +457,7 @@ packages: dependency: transitive description: name: plugin_platform_interface + sha256: dbf0f707c78beedc9200146ad3cb0ab4d5da13c246336987be6940f026500d3a url: "https://pub.flutter-io.cn" source: hosted version: "2.1.3" @@ -426,6 +465,7 @@ packages: dependency: transitive description: name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" url: "https://pub.flutter-io.cn" source: hosted version: "1.5.1" @@ -433,6 +473,7 @@ packages: dependency: transitive description: name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" url: "https://pub.flutter-io.cn" source: hosted version: "4.2.4" @@ -440,6 +481,7 @@ packages: dependency: transitive description: name: pub_semver + sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe url: "https://pub.flutter-io.cn" source: hosted version: "2.1.2" @@ -447,6 +489,7 @@ packages: dependency: transitive description: name: pubspec_parse + sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -454,6 +497,7 @@ packages: dependency: transitive description: name: shelf + sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" @@ -461,6 +505,7 @@ packages: dependency: transitive description: name: shelf_web_socket + sha256: "6db16374bc3497d21aa0eebe674d3db9fdf82082aac0f04dc7b44e4af5b08afc" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.2" @@ -470,37 +515,42 @@ packages: source: sdk version: "0.0.99" source_gen: - dependency: transitive + dependency: "direct overridden" description: name: source_gen + sha256: "373f96cf5a8744bc9816c1ff41cf5391bbdbe3d7a96fe98c622b6738a8a7bd33" url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.2" + version: "1.3.2" source_span: dependency: transitive description: name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" stream_transform: dependency: transitive description: name: stream_transform + sha256: f1d172e22a5432c042b5adfa9aff621372e4292231d9d73ad00f486ad01c2395 url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" @@ -508,27 +558,31 @@ packages: dependency: transitive description: name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.9" + version: "0.6.0" timing: dependency: transitive description: name: timing + sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad url: "https://pub.flutter-io.cn" source: hosted version: "1.0.0" @@ -536,6 +590,7 @@ packages: dependency: transitive description: name: typed_data + sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" url: "https://pub.flutter-io.cn" source: hosted version: "1.3.1" @@ -543,6 +598,7 @@ packages: dependency: transitive description: name: url_launcher + sha256: "568176fc8ab5ac1d88ff0db8ff28659d103851670dda55e83b485664c2309299" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.6" @@ -550,6 +606,7 @@ packages: dependency: transitive description: name: url_launcher_android + sha256: "2514dc16ac169adf55159268d7bf70317d9f2fc9ef5bb02020bb7ad710c0aeb4" url: "https://pub.flutter-io.cn" source: hosted version: "6.0.21" @@ -557,6 +614,7 @@ packages: dependency: transitive description: name: url_launcher_ios + sha256: "6ba7dddee26c9fae27c9203c424631109d73c8fa26cfa7bc3e35e751cb87f62e" url: "https://pub.flutter-io.cn" source: hosted version: "6.0.17" @@ -564,6 +622,7 @@ packages: dependency: transitive description: name: url_launcher_linux + sha256: "360fa359ab06bcb4f7c5cd3123a2a9a4d3364d4575d27c4b33468bd4497dd094" url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -571,6 +630,7 @@ packages: dependency: transitive description: name: url_launcher_macos + sha256: a9b3ea9043eabfaadfa3fb89de67a11210d85569086d22b3854484beab8b3978 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -578,6 +638,7 @@ packages: dependency: transitive description: name: url_launcher_platform_interface + sha256: "4eae912628763eb48fc214522e58e942fd16ce195407dbf45638239523c759a6" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" @@ -585,6 +646,7 @@ packages: dependency: transitive description: name: url_launcher_web + sha256: "5669882643b96bb6d5786637cac727c6e918a790053b09245fd4513b8a07df2a" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.13" @@ -592,6 +654,7 @@ packages: dependency: transitive description: name: url_launcher_windows + sha256: e3c3b16d3104260c10eea3b0e34272aaa57921f83148b0619f74c2eced9b7ef1 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -599,20 +662,31 @@ packages: dependency: transitive description: name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.4" watcher: - dependency: transitive + dependency: "direct overridden" description: name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel + sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd" url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" @@ -620,9 +694,10 @@ packages: dependency: transitive description: name: yaml + sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.1" sdks: - dart: ">=2.17.0 <3.0.0" - flutter: ">=2.10.0" + dart: ">=3.1.0-185.0.dev <4.0.0" + flutter: ">=3.0.0" diff --git a/test_case/login_template/pubspec.yaml b/test_case/login_template/pubspec.yaml index 2856fede..248a3792 100644 --- a/test_case/login_template/pubspec.yaml +++ b/test_case/login_template/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.17.0 <3.0.0" + sdk: ">=2.12.0 <3.0.0" # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -48,12 +48,20 @@ dev_dependencies: # rules and activating additional ones. flutter_lints: ^2.0.0 build_runner: ^2.1.2 - fair_compiler: ^1.4.0 + fair_compiler: + path: ../../compiler dependency_overrides: + analyzer: 5.6.0 + dart_style: 2.2.5 + collection: 1.17.0 + watcher: 1.1.0 fair_version: - path: ../../flutter_version/flutter_3_0_0 + path: ../../flutter_version/flutter_3_13_0 + build_runner: 2.4.6 + build_resolvers: 2.2.1 + source_gen: 1.3.2 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/test_case/my_app/.metadata b/test_case/my_app/.metadata deleted file mode 100644 index 6bfb0fde..00000000 --- a/test_case/my_app/.metadata +++ /dev/null @@ -1,10 +0,0 @@ -# This file tracks properties of this Flutter project. -# Used by Flutter tool to assess capabilities and perform upgrades etc. -# -# This file should be version controlled and should not be manually edited. - -version: - revision: 78910062997c3a836feee883712c241a5fd22983 - channel: unknown - -project_type: app diff --git a/test_case/my_app/android/.gradle/7.4.2/checksums/checksums.lock b/test_case/my_app/android/.gradle/7.4.2/checksums/checksums.lock new file mode 100644 index 00000000..7b7487d4 Binary files /dev/null and b/test_case/my_app/android/.gradle/7.4.2/checksums/checksums.lock differ diff --git a/test_case/my_app/android/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock b/test_case/my_app/android/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 00000000..79ad2064 Binary files /dev/null and b/test_case/my_app/android/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock differ diff --git a/test_case/my_app/android/.gradle/7.4.2/dependencies-accessors/gc.properties b/test_case/my_app/android/.gradle/7.4.2/dependencies-accessors/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/test_case/my_app/android/.gradle/7.4.2/executionHistory/executionHistory.lock b/test_case/my_app/android/.gradle/7.4.2/executionHistory/executionHistory.lock new file mode 100644 index 00000000..41459407 Binary files /dev/null and b/test_case/my_app/android/.gradle/7.4.2/executionHistory/executionHistory.lock differ diff --git a/test_case/my_app/android/.gradle/7.4.2/fileChanges/last-build.bin b/test_case/my_app/android/.gradle/7.4.2/fileChanges/last-build.bin new file mode 100644 index 00000000..f76dd238 Binary files /dev/null and b/test_case/my_app/android/.gradle/7.4.2/fileChanges/last-build.bin differ diff --git a/test_case/my_app/android/.gradle/7.4.2/fileHashes/fileHashes.lock b/test_case/my_app/android/.gradle/7.4.2/fileHashes/fileHashes.lock new file mode 100644 index 00000000..e6acfb9f Binary files /dev/null and b/test_case/my_app/android/.gradle/7.4.2/fileHashes/fileHashes.lock differ diff --git a/test_case/my_app/android/.gradle/7.4.2/gc.properties b/test_case/my_app/android/.gradle/7.4.2/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/test_case/my_app/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/test_case/my_app/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 00000000..0724aca3 Binary files /dev/null and b/test_case/my_app/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/test_case/my_app/android/.gradle/buildOutputCleanup/cache.properties b/test_case/my_app/android/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 00000000..ce5ef26d --- /dev/null +++ b/test_case/my_app/android/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Tue Mar 14 16:30:32 CST 2023 +gradle.version=7.4.2 diff --git a/test_case/my_app/android/.gradle/vcs-1/gc.properties b/test_case/my_app/android/.gradle/vcs-1/gc.properties new file mode 100644 index 00000000..e69de29b diff --git a/test_case/my_app/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java b/test_case/my_app/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java new file mode 100644 index 00000000..b925e2b2 --- /dev/null +++ b/test_case/my_app/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java @@ -0,0 +1,29 @@ +package io.flutter.plugins; + +import androidx.annotation.Keep; +import androidx.annotation.NonNull; +import io.flutter.Log; + +import io.flutter.embedding.engine.FlutterEngine; + +/** + * Generated file. Do not edit. + * This file is generated by the Flutter tool based on the + * plugins that support the Android platform. + */ +@Keep +public final class GeneratedPluginRegistrant { + private static final String TAG = "GeneratedPluginRegistrant"; + public static void registerWith(@NonNull FlutterEngine flutterEngine) { + try { + flutterEngine.getPlugins().add(new com.wuba.fair.FairPlugin()); + } catch(Exception e) { + Log.e(TAG, "Error registering plugin fair, com.wuba.fair.FairPlugin", e); + } + try { + flutterEngine.getPlugins().add(new io.flutter.plugins.urllauncher.UrlLauncherPlugin()); + } catch(Exception e) { + Log.e(TAG, "Error registering plugin url_launcher_android, io.flutter.plugins.urllauncher.UrlLauncherPlugin", e); + } + } +} diff --git a/test_case/my_app/android/local.properties b/test_case/my_app/android/local.properties new file mode 100644 index 00000000..4a5ccf17 --- /dev/null +++ b/test_case/my_app/android/local.properties @@ -0,0 +1,2 @@ +sdk.dir=/Users/zmt/Library/Android/sdk +flutter.sdk=/Users/zmt/Documents/flutter/3.0.0 \ No newline at end of file diff --git a/test_case/my_app/assets/bundle/lib_home_page.fair.js b/test_case/my_app/assets/bundle/lib_home_page.fair.js deleted file mode 100644 index 00b0ef61..00000000 --- a/test_case/my_app/assets/bundle/lib_home_page.fair.js +++ /dev/null @@ -1 +0,0 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;function _MyHomePageState(){const inner=_MyHomePageState.__inner__;if(this==__global__){return new _MyHomePageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_MyHomePageState.prototype.ctor.apply(this,args);return this;}}_MyHomePageState.__inner__=function inner(){this._counter=0;};_MyHomePageState.prototype={_incrementCounter:function _incrementCounter(){const __thiz__=this;with(__thiz__){_counter=_counter+1;setState('#FairKey#',function dummy(){});}},};_MyHomePageState.prototype.ctor=function(){Object.prototype.ctor.call(this);};;return _MyHomePageState();})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); diff --git a/test_case/my_app/assets/bundle/lib_home_page.fair.json b/test_case/my_app/assets/bundle/lib_home_page.fair.json deleted file mode 100644 index ef5e8260..00000000 --- a/test_case/my_app/assets/bundle/lib_home_page.fair.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "className": "Scaffold", - "na": { - "appBar": { - "className": "AppBar", - "na": { - "title": { - "className": "Text", - "pa": [ - "#(widget.title)" - ] - } - } - }, - "body": { - "className": "Center", - "na": { - "child": { - "className": "Column", - "na": { - "mainAxisAlignment": "#(MainAxisAlignment.center)", - "children": [ - { - "className": "Text", - "pa": [ - "You have pushed the button this many times:" - ], - "na": { - "style": { - "className": "TextStyle", - "na": { - "fontSize": 16, - "color": "#(Colors.black)" - } - } - } - }, - { - "className": "Text", - "pa": [ - "#($_counter)" - ], - "na": { - "style": { - "className": "ThemeStyle.headline4", - "pa": [ - "^(context)" - ] - } - } - }, - { - "className": "RotateAnimatedTextKit", - "na": { - "text": [ - "AWESOME", - "OPTIMISTIC", - "DIFFERENT" - ], - "textStyle": { - "className": "TextStyle", - "na": { - "fontSize": 40.0, - "fontFamily": "Horizon" - } - }, - "textAlign": "#(TextAlign.start)", - "isRepeatingAnimation": true, - "alignment": "#(Alignment.centerRight)" - } - } - ] - } - } - } - }, - "floatingActionButton": { - "className": "FloatingActionButton", - "na": { - "onPressed": "@(_incrementCounter)", - "tooltip": "Increment", - "child": { - "className": "Icon", - "pa": [ - "#(Icons.add)" - ] - } - } - } - }, - "methodMap": {} -} \ No newline at end of file diff --git a/test_case/my_app/ios/Flutter/Debug.xcconfig b/test_case/my_app/ios/Flutter/Debug.xcconfig deleted file mode 100644 index e8efba11..00000000 --- a/test_case/my_app/ios/Flutter/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "Generated.xcconfig" diff --git a/test_case/my_app/ios/Flutter/Release.xcconfig b/test_case/my_app/ios/Flutter/Release.xcconfig deleted file mode 100644 index 399e9340..00000000 --- a/test_case/my_app/ios/Flutter/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "Generated.xcconfig" diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png deleted file mode 100644 index 28c6bf03..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png deleted file mode 100644 index 2ccbfd96..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100644 index f091b6b0..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png deleted file mode 100644 index 4cde1211..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100644 index d0ef06e7..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png deleted file mode 100644 index dcdc2306..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png deleted file mode 100644 index 2ccbfd96..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100644 index c8f9ed8f..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100644 index a6d6b860..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100644 index a6d6b860..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100644 index 75b2d164..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100644 index c4df70d3..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png deleted file mode 100644 index 6a84f41e..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png deleted file mode 100644 index d0e1f585..00000000 Binary files a/test_case/my_app/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png and /dev/null differ diff --git a/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.h b/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.h new file mode 100644 index 00000000..7a890927 --- /dev/null +++ b/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.h @@ -0,0 +1,19 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#ifndef GeneratedPluginRegistrant_h +#define GeneratedPluginRegistrant_h + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface GeneratedPluginRegistrant : NSObject ++ (void)registerWithRegistry:(NSObject*)registry; +@end + +NS_ASSUME_NONNULL_END +#endif /* GeneratedPluginRegistrant_h */ diff --git a/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.m b/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.m new file mode 100644 index 00000000..72ab87f2 --- /dev/null +++ b/test_case/my_app/ios/Runner/GeneratedPluginRegistrant.m @@ -0,0 +1,28 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#import "GeneratedPluginRegistrant.h" + +#if __has_include() +#import +#else +@import fair; +#endif + +#if __has_include() +#import +#else +@import url_launcher_ios; +#endif + +@implementation GeneratedPluginRegistrant + ++ (void)registerWithRegistry:(NSObject*)registry { + [FairPlugin registerWithRegistrar:[registry registrarForPlugin:@"FairPlugin"]]; + [FLTURLLauncherPlugin registerWithRegistrar:[registry registrarForPlugin:@"FLTURLLauncherPlugin"]]; +} + +@end diff --git a/test_case/my_app/lib/custom.dart b/test_case/my_app/lib/custom.dart deleted file mode 100644 index 9204aadb..00000000 --- a/test_case/my_app/lib/custom.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'package:flutter/cupertino.dart'; - -class CustomWidget extends StatelessWidget{ - @override - Widget build(BuildContext context) { - return Container( - - ); - } - -} \ No newline at end of file diff --git a/test_case/my_app/lib/delegate.dart b/test_case/my_app/lib/delegate.dart deleted file mode 100644 index f3736f9e..00000000 --- a/test_case/my_app/lib/delegate.dart +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (C) 2005-present, 58.com. All rights reserved. - * Use of this source code is governed by a BSD type license that can be - * found in the LICENSE file. - */ - -import 'dart:ui'; - -import 'package:fair/fair.dart'; - -import 'theme.dart'; - -class MyHomePageDelegate extends FairDelegate { - int _counter = 0; - bool _check = false; - - void _incrementCounter() { - setState(() { - _counter++; - }); - } - - - @override - Map bindValue() { - var value = super.bindValue(); - value['_counter'] = () => _counter; - value['_color'] = () => const Color(0xffff0000); - value['_check']= () => _check; - return value; - } - - @override - Map bindFunction() { - var fun = super.bindFunction(); - fun['_incrementCounter'] = _incrementCounter; - fun['ThemeStyle.headline4'] = (props) => ThemeStyle.headline4(context); - //fun['AJKColors.ajkPrimaryColor'] = () => AJKColors.ajkPrimaryColor; - return fun; - } -} diff --git a/test_case/my_app/lib/generated_plugin_registrant.dart b/test_case/my_app/lib/generated_plugin_registrant.dart new file mode 100644 index 00000000..40a0d005 --- /dev/null +++ b/test_case/my_app/lib/generated_plugin_registrant.dart @@ -0,0 +1,17 @@ +// +// Generated file. Do not edit. +// + +// ignore_for_file: directives_ordering +// ignore_for_file: lines_longer_than_80_chars +// ignore_for_file: depend_on_referenced_packages + +import 'package:url_launcher_web/url_launcher_web.dart'; + +import 'package:flutter_web_plugins/flutter_web_plugins.dart'; + +// ignore: public_member_api_docs +void registerPlugins(Registrar registrar) { + UrlLauncherPlugin.registerWith(registrar); + registrar.registerMessageHandler(); +} diff --git a/test_case/my_app/lib/home_page.dart b/test_case/my_app/lib/home_page.dart deleted file mode 100644 index cb74bb03..00000000 --- a/test_case/my_app/lib/home_page.dart +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (C) 2005-present, 58.com. All rights reserved. - * Use of this source code is governed by a BSD type license that can be - * found in the LICENSE file. - */ -import 'package:fair/fair.dart'; -import 'package:flutter/material.dart'; -import 'package:animated_text_kit/src/rotate.dart'; - -import 'theme.dart'; -@FairPatch() -class MyHomePage extends StatefulWidget { - MyHomePage({Key key, this.title}) : super(key: key); - final String title; - - @override - _MyHomePageState createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - int _counter = 0; - - void _incrementCounter() { - _counter= _counter+1; - setState(() { - - }); - - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: Text(widget.title), - ), - body: Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'You have pushed the button this many times:', - style: TextStyle(fontSize: 16, color: Colors.black), - - ), - Text( - '$_counter', - style: ThemeStyle.headline4(context), - - ), - RotateAnimatedTextKit( - text: ["AWESOME", "OPTIMISTIC", "DIFFERENT"], - textStyle: TextStyle(fontSize: 40.0, fontFamily: "Horizon"), - textAlign: TextAlign.start, - isRepeatingAnimation: true, - alignment: Alignment.centerRight - // or Alignment.topLeft ) - ) - ], - ), - ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: Icon(Icons.add), - ), - ); - } - - -} diff --git a/test_case/my_app/lib/main.dart b/test_case/my_app/lib/main.dart deleted file mode 100644 index 53f1a72c..00000000 --- a/test_case/my_app/lib/main.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'package:fair/fair.dart'; -import 'package:flutter/material.dart'; -import 'package:my_app/src/generated.fair.dart'; - -import 'delegate.dart'; - -@FairBinding(packages: ['package:animated_text_kit/src/rotate.dart']) -void main() { - WidgetsFlutterBinding.ensureInitialized(); - FairApp.runApplication( - _getApp(), - plugins: { - - }); -} - -dynamic _getApp() => FairApp( - child: MyApp(), - delegate: { - 'home_page': (_, data) => MyHomePageDelegate(), - }, - generated: AppGeneratedModule(), - ); - -class MyApp extends StatelessWidget { - @override - Widget build(BuildContext context) { - return MaterialApp( - title: 'Flutter Demo', - theme: ThemeData( - primarySwatch: Colors.blue, - visualDensity: VisualDensity.adaptivePlatformDensity, - ), - home: FairWidget( - name: 'home_page', - path: 'assets/bundle/lib_home_page.fair.json', - data: { - 'title': 'Flutter Demo Home Page', - }, - ) /*MyHomePage(title: 'Flutter Demo Home Page')*/, - ); - } -} diff --git a/test_case/my_app/lib/src/generated.fair.dart b/test_case/my_app/lib/src/generated.fair.dart deleted file mode 100644 index 526a3e32..00000000 --- a/test_case/my_app/lib/src/generated.fair.dart +++ /dev/null @@ -1,59 +0,0 @@ -// Generated by Fair on 2021-08-05 17:26:53.525113. -import 'package:animated_text_kit/src/rotate.dart'; - -import 'package:flutter/material.dart'; -import 'package:fair/fair.dart'; -import 'package:fair_version/fair_version.dart'; - -class AppGeneratedModule extends GeneratedModule { - @override - Map components() { - return { - 'RotateAnimatedTextKit': (props) => RotateAnimatedTextKit( - key: props['key'], - text: List.from(props['text']), - textAlign: props['textAlign'] ?? TextAlign.start, - textStyle: props['textStyle'], - transitionHeight: props['transitionHeight']?.toDouble(), - alignment: props['alignment'] ?? Alignment.center, - textDirection: props['textDirection'] ?? TextDirection.ltr, - duration: props['duration'] ?? const Duration(milliseconds: 2000), - pause: props['pause'] ?? const Duration(milliseconds: 500), - onTap: props['onTap'], - onNext: props['onNext'], - onNextBeforePause: props['onNextBeforePause'], - onFinished: props['onFinished'], - isRepeatingAnimation: props['isRepeatingAnimation'] ?? true, - totalRepeatCount: props['totalRepeatCount'] ?? 3, - repeatForever: props['repeatForever'] ?? false, - displayFullTextOnTap: props['displayFullTextOnTap'] ?? false, - stopPauseOnTap: props['stopPauseOnTap'] ?? false, - ), - 'RotateAnimatedTextKit#onTap': (props) => () { - return (props['block']); - }, - 'RotateAnimatedTextKit#onNext': (props) => ( - int, - bool, - ) { - return (props['block']) as dynamic; - }, - 'RotateAnimatedTextKit#onNextBeforePause': (props) => ( - int, - bool, - ) { - return (props['block']); - }, - 'RotateAnimatedTextKit#onFinished': (props) => () { - return (props['block']); - }, - }; - } - - @override - Map mapping() { - return const { - 'RotateAnimatedTextKit': true, - }; - } -} diff --git a/test_case/my_app/lib/theme.dart b/test_case/my_app/lib/theme.dart deleted file mode 100644 index 6eae7b91..00000000 --- a/test_case/my_app/lib/theme.dart +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright (C) 2005-present, 58.com. All rights reserved. - * Use of this source code is governed by a BSD type license that can be - * found in the LICENSE file. - */ - -import 'package:fair/fair.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/painting.dart'; -import 'package:flutter/widgets.dart'; - -class ThemeStyle { - static TextStyle headline4(BuildContext context) => - Theme.of(context).textTheme.headline4; -} diff --git a/test_case/my_app/pubspec.lock b/test_case/my_app/pubspec.lock new file mode 100644 index 00000000..eb728de0 --- /dev/null +++ b/test_case/my_app/pubspec.lock @@ -0,0 +1,628 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + url: "https://pub.flutter-io.cn" + source: hosted + version: "31.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.8.0" + animated_text_kit: + dependency: "direct dev" + description: + name: animated_text_kit + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.0.1" + archive: + dependency: transitive + description: + name: archive + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.3.6" + args: + dependency: transitive + description: + name: args + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.3.1" + async: + dependency: transitive + description: + name: async + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.8.2" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.0" + build: + dependency: transitive + description: + name: build + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.3.1" + build_config: + dependency: transitive + description: + name: build_config + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.1.1" + build_resolvers: + dependency: transitive + description: + name: build_resolvers + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.0.6" + build_runner: + dependency: "direct dev" + description: + name: build_runner + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.2.0" + build_runner_core: + dependency: transitive + description: + name: build_runner_core + url: "https://pub.flutter-io.cn" + source: hosted + version: "7.2.7" + built_collection: + dependency: transitive + description: + name: built_collection + url: "https://pub.flutter-io.cn" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + url: "https://pub.flutter-io.cn" + source: hosted + version: "8.4.4" + characters: + dependency: transitive + description: + name: characters + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.0" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.1" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.0.1" + cli_util: + dependency: transitive + description: + name: cli_util + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.3.5" + clock: + dependency: transitive + description: + name: clock + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.0" + code_builder: + dependency: transitive + description: + name: code_builder + url: "https://pub.flutter-io.cn" + source: hosted + version: "4.4.0" + collection: + dependency: transitive + description: + name: collection + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.16.0" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.1.0" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.0.2" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.5" + dart_style: + dependency: transitive + description: + name: dart_style + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.2.1" + fair: + dependency: "direct main" + description: + path: "../../fair" + relative: true + source: path + version: "3.0.0" + fair_annotation: + dependency: transitive + description: + name: fair_annotation + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.3.0" + fair_compiler: + dependency: "direct dev" + description: + path: "../../compiler" + relative: true + source: path + version: "1.5.1" + fair_dart2dsl: + dependency: transitive + description: + name: fair_dart2dsl + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.0" + fair_dart2js: + dependency: transitive + description: + name: fair_dart2js + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.2" + fair_version: + dependency: "direct overridden" + description: + path: "../../flutter_version/flutter_3_0_0" + relative: true + source: path + version: "3.0.0+2" + fake_async: + dependency: transitive + description: + name: fake_async + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.0" + ffi: + dependency: transitive + description: + name: ffi + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.1" + file: + dependency: transitive + description: + name: file + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.1.4" + fixnum: + dependency: transitive + description: + name: fixnum + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.1" + flat_buffers: + dependency: transitive + description: + name: flat_buffers + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.0.5" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.3" + glob: + dependency: transitive + description: + name: glob + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.1" + graphs: + dependency: transitive + description: + name: graphs + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.2.0" + http: + dependency: transitive + description: + name: http + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.13.5" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.flutter-io.cn" + source: hosted + version: "4.0.2" + intl: + dependency: transitive + description: + name: intl + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.17.0" + io: + dependency: transitive + description: + name: io + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.4" + js: + dependency: transitive + description: + name: js + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.6.4" + json_annotation: + dependency: transitive + description: + name: json_annotation + url: "https://pub.flutter-io.cn" + source: hosted + version: "4.7.0" + logging: + dependency: transitive + description: + name: logging + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.0" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.12.11" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.4" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.7.0" + mime: + dependency: transitive + description: + name: mime + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.3" + package_config: + dependency: transitive + description: + name: package_config + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.0" + path: + dependency: transitive + description: + name: path + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.8.1" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.11.1" + platform: + dependency: transitive + description: + name: platform + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.1.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.4" + pointycastle: + dependency: transitive + description: + name: pointycastle + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.6.2" + pool: + dependency: transitive + description: + name: pool + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.5.1" + process: + dependency: transitive + description: + name: process + url: "https://pub.flutter-io.cn" + source: hosted + version: "4.2.4" + pub_semver: + dependency: transitive + description: + name: pub_semver + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.3" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.1" + shelf: + dependency: transitive + description: + name: shelf + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.4.0" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_gen: + dependency: transitive + description: + name: source_gen + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.2" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.8.2" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.10.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.0" + stream_transform: + dependency: transitive + description: + name: stream_transform + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.4.9" + timing: + dependency: transitive + description: + name: timing + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.1" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.1" + url_launcher: + dependency: transitive + description: + name: url_launcher + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.1.10" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.0.25" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.0.18" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.0.4" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.0.4" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.2" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.0.16" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.0.5" + vector_math: + dependency: transitive + description: + name: vector_math + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.1.2" + watcher: + dependency: transitive + description: + name: watcher + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.2" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + url: "https://pub.flutter-io.cn" + source: hosted + version: "2.3.0" + yaml: + dependency: transitive + description: + name: yaml + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.1.1" +sdks: + dart: ">=2.17.0 <3.0.0" + flutter: ">=3.0.0" diff --git a/test_case/my_app/pubspec.yaml b/test_case/my_app/pubspec.yaml deleted file mode 100644 index 90e6eddc..00000000 --- a/test_case/my_app/pubspec.yaml +++ /dev/null @@ -1,88 +0,0 @@ -name: my_app -description: A new Flutter project. - -# The following line prevents the package from being accidentally published to -# pub.dev using `pub publish`. This is preferred for private packages. -publish_to: 'none' # Remove this line if you wish to publish to pub.dev - -# The following defines the version and build number for your application. -# A version number is three numbers separated by dots, like 1.2.43 -# followed by an optional build number separated by a +. -# Both the version and the builder number may be overridden in flutter -# build by specifying --build-name and --build-number, respectively. -# In Android, build-name is used as versionName while build-number used as versionCode. -# Read more about Android versioning at https://developer.android.com/studio/publish/versioning -# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. -# Read more about iOS versioning at -# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -version: 1.0.0+1 - -environment: - sdk: ">=2.7.0 <3.0.0" - -dependencies: - flutter: - sdk: flutter - - fair: - path: ../../fair - - # The following adds the Cupertino Icons font to your application. - # Use with the CupertinoIcons class for iOS style icons. - cupertino_icons: ^1.0.0 - -dev_dependencies: - flutter_test: - sdk: flutter - build_runner: ^2.0.0 - animated_text_kit: 3.0.1 - fair_compiler: - path: ../../compiler - -# Switch to another stable flutter version -dependency_overrides: - fair_version: - path: ../../flutter_version/flutter_3_0_0 -# For information on the generic Dart part of this file, see the -# following page: https://dart.dev/tools/pub/pubspec - -# The following section is specific to Flutter. -flutter: - - # The following line ensures that the Material Icons font is - # included with your application, so that you can use the icons in - # the material Icons class. - uses-material-design: true - - # To add assets to your application, add an assets section, like this: - assets: - - assets/bundle/ - - assets/ - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg - - # An image asset can refer to one or more resolution-specific "variants", see - # https://flutter.dev/assets-and-images/#resolution-aware. - - # For details regarding adding assets from package dependencies, see - # https://flutter.dev/assets-and-images/#from-packages - - # To add custom fonts to your application, add a fonts section here, - # in this "flutter" section. Each entry in this list should have a - # "family" key with the font family name, and a "fonts" key with a - # list giving the asset and other descriptors for the font. For - # example: - # fonts: - # - family: Schyler - # fonts: - # - asset: fonts/Schyler-Regular.ttf - # - asset: fonts/Schyler-Italic.ttf - # style: italic - # - family: Trajan Pro - # fonts: - # - asset: fonts/TrajanPro.ttf - # - asset: fonts/TrajanPro_Bold.ttf - # weight: 700 - # - # For details regarding fonts from package dependencies, - # see https://flutter.dev/custom-fonts/#from-packages diff --git a/test_case/my_app/web/favicon.png b/test_case/my_app/web/favicon.png deleted file mode 100644 index 8aaa46ac..00000000 Binary files a/test_case/my_app/web/favicon.png and /dev/null differ diff --git a/test_case/my_app/web/icons/Icon-192.png b/test_case/my_app/web/icons/Icon-192.png deleted file mode 100644 index b749bfef..00000000 Binary files a/test_case/my_app/web/icons/Icon-192.png and /dev/null differ diff --git a/test_case/my_app/web/icons/Icon-512.png b/test_case/my_app/web/icons/Icon-512.png deleted file mode 100644 index 88cfd48d..00000000 Binary files a/test_case/my_app/web/icons/Icon-512.png and /dev/null differ diff --git a/test_case/my_app/web/index.html b/test_case/my_app/web/index.html deleted file mode 100644 index d6c0e241..00000000 --- a/test_case/my_app/web/index.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - my_app - - - - - - - - diff --git a/test_case/my_app/web/manifest.json b/test_case/my_app/web/manifest.json deleted file mode 100644 index ba3a24cb..00000000 --- a/test_case/my_app/web/manifest.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "my_app", - "short_name": "my_app", - "start_url": ".", - "display": "standalone", - "background_color": "#0175C2", - "theme_color": "#0175C2", - "description": "A new Flutter project.", - "orientation": "portrait-primary", - "prefer_related_applications": false, - "icons": [ - { - "src": "icons/Icon-192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "icons/Icon-512.png", - "sizes": "512x512", - "type": "image/png" - } - ] -} diff --git a/test_case/sugar_demo/android/app/build.gradle b/test_case/sugar_demo/android/app/build.gradle index c48c2447..9b3d931d 100644 --- a/test_case/sugar_demo/android/app/build.gradle +++ b/test_case/sugar_demo/android/app/build.gradle @@ -27,7 +27,6 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { compileSdkVersion 33 - ndkVersion flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 @@ -45,10 +44,8 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.sugar_demo" - // 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 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/test_case/sugar_demo/android/build.gradle b/test_case/sugar_demo/android/build.gradle index 83ae2200..fb8d72f6 100644 --- a/test_case/sugar_demo/android/build.gradle +++ b/test_case/sugar_demo/android/build.gradle @@ -1,8 +1,12 @@ buildscript { - ext.kotlin_version = '1.6.10' + ext.kotlin_version = '1.8.0' repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } google() - mavenCentral() + jcenter() } dependencies { @@ -13,8 +17,20 @@ buildscript { allprojects { repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/google' + } + maven { + allowInsecureProtocol = true + url 'http://maven.aliyun.com/nexus/content/groups/public/' + } google() - mavenCentral() + jcenter() } } @@ -26,6 +42,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/test_case/sugar_demo/android/gradle/wrapper/gradle-wrapper.properties b/test_case/sugar_demo/android/gradle/wrapper/gradle-wrapper.properties index cb24abda..0e9a6105 100644 --- a/test_case/sugar_demo/android/gradle/wrapper/gradle-wrapper.properties +++ b/test_case/sugar_demo/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ 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 +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip diff --git a/test_case/sugar_demo/assets/bundle/lib_sugar_elseif_test_page.fair.json b/test_case/sugar_demo/assets/bundle/lib_sugar_elseif_test_page.fair.json new file mode 100644 index 00000000..0e2a70b9 --- /dev/null +++ b/test_case/sugar_demo/assets/bundle/lib_sugar_elseif_test_page.fair.json @@ -0,0 +1,461 @@ +{ + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "title": { + "className": "Text", + "pa": [ + "SugarDemo" + ] + } + } + }, + "body": { + "className": "Column", + "na": { + "children": [ + { + "className": "Column", + "na": { + "children": { + "className": "Sugar.mapEach", + "pa": [ + [ + { + "className": "Person", + "na": { + "name": "kk", + "age": 18, + "wei": 99 + } + }, + { + "className": "Person", + "na": { + "name": "mm", + "age": 14, + "wei": 88 + } + } + ], + { + "className": "Container", + "na": { + "height": 50, + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "child": { + "className": "Center", + "na": { + "child": { + "className": "Row", + "na": { + "children": [ + { + "className": "Text", + "pa": [ + "%(getValueOrEmpty($(item.name),))" + ] + }, + { + "className": "Text", + "pa": [ + "%(getValueOrEmpty($(item.age),18))" + ] + } + ] + } + } + } + } + }, + "functionParameters": { + "pa": [ + "index", + "item" + ] + } + } + ] + } + } + }, + { + "className": "Container", + "na": { + "height": 50, + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "margin": { + "className": "EdgeInsets.only", + "na": { + "top": 5 + } + }, + "child": { + "className": "Center", + "na": { + "child": { + "className": "Sugar.switchCase", + "pa": [ + "^(_value)", + [ + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": { + "className": "Text", + "pa": [ + "2-ValueTitle" + ] + }, + "sugarCase": 2 + } + }, + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": { + "className": "Text", + "pa": [ + "3-ValueTitle" + ] + }, + "sugarCase": 3 + } + }, + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": { + "className": "Text", + "pa": [ + "4-ValueTitle" + ] + }, + "sugarCase": 4 + } + } + ], + { + "className": "Text", + "pa": [ + "default-ValueTitle" + ] + } + ] + } + } + } + } + }, + { + "className": "SizedBox", + "na": { + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "height": { + "className": "Sugar.height", + "pa": [ + "^(context)" + ] + }, + "child": { + "className": "Sugar.listBuilder", + "na": { + "itemCount": "%(_getItemCount)", + "itemBuilder": { + "className": "Center", + "na": { + "child": { + "className": "Container", + "na": { + "height": 20, + "child": { + "className": "Text", + "pa": [ + "#($item)" + ] + } + } + } + }, + "functionParameters": { + "pa": [ + "context", + "item" + ] + } + } + } + } + } + }, + { + "className": "FloatingActionButton", + "na": { + "child": { + "className": "Text", + "pa": [ + { + "className": "Sugar.switchCase", + "pa": [ + "^(_value)", + [ + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": "2", + "sugarCase": 2 + } + }, + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": "3", + "sugarCase": 3 + } + }, + { + "className": "SugarSwitchCaseObj", + "na": { + "reValue": "4", + "sugarCase": 4 + } + } + ], + "defaultValue" + ] + } + ] + }, + "onPressed": "@(logAction)" + } + }, + { + "className": "SizedBox", + "na": { + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "height": 50, + "child": { + "className": "Sugar.listBuilder", + "na": { + "scrollDirection": "#(Axis.horizontal)", + "reverse": true, + "itemCount": 15, + "itemBuilder": { + "className": "Center", + "na": { + "child": { + "className": "Container", + "na": { + "height": 50, + "width": 60, + "child": { + "className": "Container", + "na": { + "color": "#(Colors.amber)", + "margin": { + "className": "EdgeInsets.only", + "na": { + "left": 10 + } + }, + "child": { + "className": "Center", + "na": { + "child": { + "className": "Text", + "pa": [ + "#($item)" + ] + } + } + } + } + } + } + } + }, + "functionParameters": { + "pa": [ + "context", + "item" + ] + } + } + } + } + } + }, + { + "className": "SizedBox", + "na": { + "height": 40, + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "child": { + "className": "Container", + "na": { + "margin": { + "className": "EdgeInsets.only", + "na": { + "left": 0, + "right": 1, + "top": 10 + } + }, + "color": "#(Colors.green)", + "child": { + "className": "Center", + "na": { + "child": { + "className": "Text", + "pa": [ + "CustomScrollView-Sugar" + ] + } + } + } + } + } + } + }, + { + "className": "SizedBox", + "na": { + "width": { + "className": "Sugar.width", + "pa": [ + "^(context)" + ] + }, + "height": 400, + "child": { + "className": "CustomScrollView", + "na": { + "slivers": [ + { + "className": "SliverList", + "na": { + "delegate": { + "className": "Sugar.sliverChildBuilderDelegate", + "na": { + "builder": { + "className": "Container", + "na": { + "margin": { + "className": "EdgeInsets.only", + "na": { + "top": 10 + } + }, + "height": 85, + "alignment": "#(Alignment.center)", + "color": "#(Colors.blue)", + "child": { + "className": "Text", + "pa": [ + "#($index)" + ], + "na": { + "style": { + "className": "TextStyle", + "na": { + "color": "#(Colors.white)", + "fontSize": 20 + } + } + } + } + }, + "functionParameters": { + "pa": [ + "content", + "index" + ] + } + }, + "childCount": 3 + } + } + } + }, + { + "className": "SliverGrid", + "na": { + "gridDelegate": { + "className": "Sugar.sliverGridDelegateWithFixedCrossAxisCount", + "na": { + "crossAxisCount": 2, + "mainAxisSpacing": 10.0, + "crossAxisSpacing": 10.0, + "childAspectRatio": 4.0 + } + }, + "delegate": { + "className": "Sugar.sliverChildBuilderDelegate", + "na": { + "builder": { + "className": "Container", + "na": { + "alignment": "#(Alignment.center)", + "color": "#(Colors.deepOrange)", + "child": { + "className": "Text", + "pa": [ + "#(是 grid item $index 啊~~)" + ] + } + }, + "functionParameters": { + "pa": [ + "context", + "index" + ] + } + }, + "childCount": 20 + } + } + } + } + ] + } + } + } + } + ] + } + } + }, + "methodMap": { + "getValueOrEmpty": { + "className": "val.toString" + } + }, + "digest": "c80a906c739b353dde7f3a46b1fba24e" +} \ No newline at end of file diff --git a/test_case/sugar_demo/assets/bundle/lib_sugar_menu.fair.json b/test_case/sugar_demo/assets/bundle/lib_sugar_menu.fair.json new file mode 100644 index 00000000..6ad57dba --- /dev/null +++ b/test_case/sugar_demo/assets/bundle/lib_sugar_menu.fair.json @@ -0,0 +1,81 @@ +{ + "className": "Scaffold", + "na": { + "appBar": { + "className": "AppBar", + "na": { + "actions": [ + { + "className": "Sugar.popMenuButton", + "na": { + "onSelected": "@(_onSelected)", + "itemBuilder": [ + { + "className": "PopupMenuItem", + "na": { + "value": "Item 1", + "child": { + "className": "Text", + "pa": [ + "Item 1" + ] + } + } + }, + { + "className": "PopupMenuItem", + "na": { + "value": "Item 2", + "child": { + "className": "Text", + "pa": [ + "Item 2" + ] + } + } + }, + { + "className": "PopupMenuItem", + "na": { + "value": "Item 3", + "child": { + "className": "Text", + "pa": [ + "Item 3" + ] + } + } + }, + { + "className": "PopupMenuItem", + "na": { + "value": "Item 4", + "child": { + "className": "Text", + "pa": [ + "Item 4" + ] + } + } + } + ] + } + } + ] + } + }, + "body": { + "className": "Center", + "na": { + "child": { + "className": "Text", + "pa": [ + "#(_selectedMenu:$_selectedMenu)" + ] + } + } + } + }, + "methodMap": {}, + "digest": "7d4f16e4302e0b7332c75a367ac9be28" +} \ No newline at end of file diff --git a/test_case/sugar_demo/assets/fair/lib_sugar_elseif_test_page.fair.js b/test_case/sugar_demo/assets/fair/lib_sugar_elseif_test_page.fair.js index 4ca843e6..b4912eee 100644 --- a/test_case/sugar_demo/assets/fair/lib_sugar_elseif_test_page.fair.js +++ b/test_case/sugar_demo/assets/fair/lib_sugar_elseif_test_page.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _SugarElseIfPageState(){const inner=_SugarElseIfPageState.__inner__;if(this==__global__){return new _SugarElseIfPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_SugarElseIfPageState.prototype.ctor.apply(this,args);return this;}}_SugarElseIfPageState.__inner__=function inner(){this.fairProps=__initProps__;this._value=2;};_SugarElseIfPageState.prototype={logAction:function logAction(){const __thiz__=this;with(__thiz__){print('Click......');}},_getItemCount:function _getItemCount(){const __thiz__=this;with(__thiz__){return _value;}},};_SugarElseIfPageState.prototype.ctor=function(){};;return _SugarElseIfPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function _SugarElseIfPageState(){const inner=_SugarElseIfPageState.__inner__;if(this==__global__){return new _SugarElseIfPageState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);_SugarElseIfPageState.prototype.ctor.apply(this,args);return this;}}_SugarElseIfPageState.__inner__=function inner(){this.fairProps=__initProps__;this._value=2;};_SugarElseIfPageState.prototype={logAction:function logAction(){const __thiz__=this;with(__thiz__){print('Click......');}},_getItemCount:function _getItemCount(){const __thiz__=this;with(__thiz__){return _value;}},getValueOrEmpty:function getValueOrEmpty(val,defaultVal){const __thiz__=this;const __arg_ctx__={val,defaultVal,};with(__thiz__){with(__arg_ctx__){if(val==null){return defaultVal;}return val.toString();}}},};_SugarElseIfPageState.prototype.ctor=function(){};;return _SugarElseIfPageState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); diff --git a/test_case/sugar_demo/assets/fair/lib_sugar_menu.fair.js b/test_case/sugar_demo/assets/fair/lib_sugar_menu.fair.js index b692dd62..0f4c4ab9 100644 --- a/test_case/sugar_demo/assets/fair/lib_sugar_menu.fair.js +++ b/test_case/sugar_demo/assets/fair/lib_sugar_menu.fair.js @@ -1 +1 @@ -GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function PopupMenuState(){const inner=PopupMenuState.__inner__;if(this==__global__){return new PopupMenuState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);PopupMenuState.prototype.ctor.apply(this,args);return this;}}PopupMenuState.__inner__=function inner(){this._selectedMenu='';};PopupMenuState.prototype={_onSelected:function _onSelected(item){const __thiz__=this;const __arg_ctx__={item,};with(__thiz__){with(__arg_ctx__){setState('#FairKey#',()=>_selectedMenu=item.toString());}}},};PopupMenuState.prototype.ctor=function(){};;return PopupMenuState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); \ No newline at end of file +GLOBAL['#FairKey#']=(function(__initProps__){const __global__=this;return runCallback(function(__mod__){with(__mod__.imports){function PopupMenuState(){const inner=PopupMenuState.__inner__;if(this==__global__){return new PopupMenuState({__args__:arguments});}else{const args=arguments.length>0?arguments[0].__args__||arguments:[];inner.apply(this,args);PopupMenuState.prototype.ctor.apply(this,args);return this;}}PopupMenuState.__inner__=function inner(){this._selectedMenu='';};PopupMenuState.prototype={_onSelected:function _onSelected(item){const __thiz__=this;const __arg_ctx__={item,};with(__thiz__){with(__arg_ctx__){setState('#FairKey#',()=>_selectedMenu=item);}}},};PopupMenuState.prototype.ctor=function(){};;return PopupMenuState();}},[]);})(convertObjectLiteralToSetOrMap(JSON.parse('#FairProps#'))); diff --git a/test_case/sugar_demo/assets/fair/lib_warp_demo.fair.json b/test_case/sugar_demo/assets/fair/lib_warp_demo.fair.json index 7348aec8..017484b4 100644 --- a/test_case/sugar_demo/assets/fair/lib_warp_demo.fair.json +++ b/test_case/sugar_demo/assets/fair/lib_warp_demo.fair.json @@ -124,5 +124,6 @@ } } }, - "methodMap": {} + "methodMap": {}, + "digest": "f2f8e4ab3ade30f11345c173b964f84a" } \ No newline at end of file diff --git a/test_case/sugar_demo/build_runner.sh b/test_case/sugar_demo/build_runner.sh new file mode 100644 index 00000000..93af922f --- /dev/null +++ b/test_case/sugar_demo/build_runner.sh @@ -0,0 +1,11 @@ +fvm flutter clean + +echo "----- flutter clean finish -----" + +fvm flutter pub get + +echo "----- flutter pub get finish -----" + +fvm flutter pub run build_runner build --delete-conflicting-outputs + +echo "----- flutter pub run build_runner build finish -----" diff --git a/test_case/sugar_demo/lib/main.dart b/test_case/sugar_demo/lib/main.dart index 1b917a6c..6024376f 100644 --- a/test_case/sugar_demo/lib/main.dart +++ b/test_case/sugar_demo/lib/main.dart @@ -2,8 +2,6 @@ import 'dart:convert'; import 'package:fair/fair.dart'; import 'package:flutter/material.dart'; -import 'package:sugar_demo/assets.dart'; -import 'package:sugar_demo/sugar_elseif_test_page.dart'; import 'person.dart'; void main() { @@ -11,40 +9,31 @@ void main() { FairApp.runApplication( getApp(), ); - } -class TestGeneratedModule implements GeneratedModule{ +class TestGeneratedModule implements GeneratedModule { @override Map components() { - return { - 'Person': Person.from - }; + return {'Person': Person.from}; } @override Map mapping() { - return const { - 'Person':false - }; + return const {'Person': false}; } - } FairApp getApp() => FairApp( - modules: const { - }, - delegate: const { - }, - generated: TestGeneratedModule(), - child: MaterialApp( - color: Colors.blue, - home: - // SugarElseIfPage(fairProps: json.encode({'value':1}),) - FairWidget( - name: 'DynamicWidget', - path: Assets.assets_fair_lib_sugar_menu_fair_json, - data: {"fairProps": json.encode({'value':1})}), - ), -); - + modules: const {}, + delegate: const {}, + generated: TestGeneratedModule(), + child: MaterialApp( + color: Colors.blue, + home: FairWidget( + name: 'DynamicWidget', + path: Assets.assets_fair_lib_sugar_menu_fair_json, + data: { + "fairProps": json.encode({'value': 1}) + }), + ), + ); diff --git a/test_case/sugar_demo/lib/sugar_elseif_test_page.dart b/test_case/sugar_demo/lib/sugar_elseif_test_page.dart index c0823994..28f12146 100644 --- a/test_case/sugar_demo/lib/sugar_elseif_test_page.dart +++ b/test_case/sugar_demo/lib/sugar_elseif_test_page.dart @@ -29,133 +29,151 @@ class _SugarElseIfPageState extends State { // List li = ['kk','ddd','dddd']; + String getValueOrEmpty(dynamic val, String defaultVal) { + if (val == null) { + return defaultVal; + } + return val.toString(); + } + @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("SugarDemo")), - body: SingleChildScrollView( - child: Column( - children: [ - Column( - children: Sugar.mapEach([ - Person(name: "kk", age: 18, wei: 99), - Person(name: "mm", age: 14, wei: 88) - ], (index, Person item) { - return Container( - height: 50, - width: Sugar.width(context), - child: Center( - child: Row( - children: [ - Text(item.name), - Text("${item.age}"), - ], - ))); - }), + body: Column( + children: [ + Column( + children: Sugar.mapEach([ + Person(name: "kk", age: 18, wei: 99), + Person(name: "mm", age: 14, wei: 88) + ], (index, Person item) { + return Container( + height: 50, + width: Sugar.width(context), + child: Center( + child: Row( + children: [ + Text(getValueOrEmpty(item.name, '')), + Text(getValueOrEmpty(item.age, '18')), + ], + ))); + }), + ), + Container( + height: 50, + width: Sugar.width(context), + + // height: Sugar.height(context), + child: ListView.builder( + shrinkWrap: true, + itemBuilder: + Sugar.indexedWidgetBuilder((context, index) => Center( + child: Container( + height: 20, + child: Text("$index"), + ), + )), + itemCount: _getItemCount(), ), - Container( - height: 50, - width: Sugar.width(context), - margin: EdgeInsets.only(top: 5), - child: Center( - child: Sugar.switchCase( - _value, - [ - SugarSwitchCaseObj( - reValue: () => Text("2-ValueTitle"), - sugarCase: () => 2), - SugarSwitchCaseObj( - reValue: () => Text("3-ValueTitle"), - sugarCase: () => 3), - SugarSwitchCaseObj( - reValue: () => Text("4-ValueTitle"), - sugarCase: () => 4) - ], - () => Text("default-ValueTitle")), - )), - SizedBox( + ), + FloatingActionButton( + child: Text( + Sugar.switchCase( + _value, + [ + SugarSwitchCaseObj( + reValue: () => Text("2-ValueTitle"), + sugarCase: () => 2), + SugarSwitchCaseObj( + reValue: () => Text("3-ValueTitle"), + sugarCase: () => 3), + SugarSwitchCaseObj( + reValue: () => Text("4-ValueTitle"), sugarCase: () => 4) + ], + () => Text("default-ValueTitle")), + )), + SizedBox( width: Sugar.width(context), - - // height: Sugar.height(context), - child: ListView.builder( - shrinkWrap: true, - itemBuilder: - Sugar.indexedWidgetBuilder((context, index) => Center( - child: Container( - height: 20, - child: Text("$index"), - ), - )), - itemCount: _getItemCount(), - ), + height: Sugar.height(context), + child: Sugar.listBuilder( + itemCount: _getItemCount(), + itemBuilder: (BuildContext context, int item) { + return Center( + child: Container( + height: 20, + child: Text("$item"), + ), + ); + })), + FloatingActionButton( + child: Text( + Sugar.switchCase( + _value, + [ + SugarSwitchCaseObj( + reValue: () => "2", sugarCase: () => 2), + SugarSwitchCaseObj( + reValue: () => "3", sugarCase: () => 3), + SugarSwitchCaseObj(reValue: () => "4", sugarCase: () => 4) + ], + () => "defaultValue"), + // style: TextStyle(fontWeight: FontWeight.w100), ), - FloatingActionButton( - child: Text( - Sugar.switchCase( - _value, - [ - SugarSwitchCaseObj( - reValue: () => "2", sugarCase: () => 2), - SugarSwitchCaseObj( - reValue: () => "3", sugarCase: () => 3), - SugarSwitchCaseObj(reValue: () => "4", sugarCase: () => 4) - ], - () => "defaultValue"), - // style: TextStyle(fontWeight: FontWeight.w100), - ), - onPressed: logAction, + onPressed: logAction, + ), + SizedBox( + width: Sugar.width(context), + height: 50, + child: Sugar.listBuilder( + scrollDirection: Axis.horizontal, + reverse: true, + itemCount: 15, + itemBuilder: (BuildContext context, int item) { + return Center( + child: Container( + height: 50, + width: 60, + child: Container( + color: Colors.amber, + margin: EdgeInsets.only(left: 10), + child: Center( + child: Text("$item"), + ), + ), + ), + ); + }), + ), + SizedBox( + height: 40, + width: Sugar.width(context), + child: Container( + margin: EdgeInsets.only(left: 0, right: 1, top: 10), + color: Colors.green, + child: Center(child: Text("CustomScrollView-Sugar")), ), - SizedBox( - width: Sugar.width(context), - height: 50, - child: ListView.builder( - itemBuilder: - Sugar.indexedWidgetBuilder((context, index) => Center( - child: Container( - height: 50, - width: 60, - child: Container( - color: Colors.amber, - margin: EdgeInsets.only(left: 10), - child: Center( - child: Text("$index"), - ), - ), - ), - )), - scrollDirection: Axis.horizontal, - reverse: true, - itemCount: 15, - )), - SizedBox( - height: 40, + ), + SizedBox( width: Sugar.width(context), - child: Container( - margin: EdgeInsets.only(left: 0, right: 1, top: 10), - color: Colors.green, - child: Center(child: Text("CustomScrollView-Sugar")), - ), - ), - SizedBox( - width: Sugar.width(context), - height: 400, - child: CustomScrollView( - slivers: [ - SliverList( - delegate: SliverChildBuilderDelegate( - Sugar.nullableIndexedWidgetBuilder( - (context, index) => Container( - margin: EdgeInsets.only(top: 10), - height: 85, - alignment: Alignment.center, - color: Colors.blue, - child: Text( - '$index', - style: const TextStyle( - color: Colors.white, fontSize: 20), - ), - )), - childCount: 3), + height: 400, + child: CustomScrollView( + slivers: [ + SliverList( + delegate: Sugar.sliverChildBuilderDelegate( + builder: (content, index) { + return Container( + margin: EdgeInsets.only(top: 10), + height: 85, + alignment: Alignment.center, + color: Colors.blue, + child: Text( + '$index', + style: const TextStyle( + color: Colors.white, fontSize: 20), + ), + ); + }, + childCount: 3, //findChildIndexCallback ), SliverGrid( //Grid @@ -175,10 +193,21 @@ class _SugarElseIfPageState extends State { )), childCount: 20), ), - ], - )) - ], - ), + delegate: Sugar.sliverChildBuilderDelegate( + builder: (context, index) { + //创建子widget + return Container( + alignment: Alignment.center, + color: Colors.deepOrange, + child: Text('是 grid item $index 啊~~'), + ); + }, + childCount: 20, + ), + ), + ], + )) + ], )); } } diff --git a/test_case/sugar_demo/pubspec.lock b/test_case/sugar_demo/pubspec.lock index 1a2f203a..81e1ba69 100644 --- a/test_case/sugar_demo/pubspec.lock +++ b/test_case/sugar_demo/pubspec.lock @@ -5,13 +5,15 @@ packages: dependency: transitive description: name: _fe_analyzer_shared + sha256: e440ac42679dfc04bbbefb58ed225c994bc7e07fccc8a68ec7d3631a127e5da9 url: "https://pub.flutter-io.cn" source: hosted version: "54.0.0" analyzer: - dependency: transitive + dependency: "direct overridden" description: name: analyzer + sha256: "2c2e3721ee9fb36de92faa060f3480c81b23e904352b087e5c64224b1a044427" url: "https://pub.flutter-io.cn" source: hosted version: "5.6.0" @@ -19,41 +21,47 @@ packages: dependency: transitive description: name: archive + sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" url: "https://pub.flutter-io.cn" source: hosted - version: "3.3.6" + version: "3.4.6" args: dependency: transitive description: name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.1" + version: "2.4.2" async: dependency: transitive description: name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.9.0" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.1" + version: "2.4.1" build_config: dependency: transitive description: name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" @@ -61,34 +69,39 @@ packages: dependency: transitive description: name: build_daemon + sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.1" + version: "4.0.0" build_resolvers: dependency: transitive description: name: build_resolvers + sha256: "64e12b0521812d1684b1917bc80945625391cb9bdd4312536b1d69dcb6133ed8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.10" + version: "2.4.1" build_runner: dependency: "direct dev" description: name: build_runner + sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b" url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.3" + version: "2.4.6" build_runner_core: dependency: transitive description: name: build_runner_core + sha256: c9e32d21dd6626b5c163d48b037ce906bbe428bc23ab77bcd77bb21e593b6185 url: "https://pub.flutter-io.cn" source: hosted - version: "7.2.7" + version: "7.2.11" built_collection: dependency: transitive description: name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" @@ -96,27 +109,31 @@ packages: dependency: transitive description: name: built_value + sha256: "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e" url: "https://pub.flutter-io.cn" source: hosted - version: "8.4.4" + version: "8.7.0" characters: dependency: transitive description: name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.1" + version: "2.0.3" clock: dependency: transitive description: name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" @@ -124,13 +141,15 @@ packages: dependency: transitive description: name: code_builder + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" url: "https://pub.flutter-io.cn" source: hosted - version: "4.4.0" + version: "4.7.0" collection: dependency: "direct overridden" description: name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 url: "https://pub.flutter-io.cn" source: hosted version: "1.17.0" @@ -138,6 +157,7 @@ packages: dependency: transitive description: name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -145,20 +165,23 @@ packages: dependency: transitive description: name: crypto + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.2" + version: "3.0.3" cupertino_icons: dependency: "direct main" description: name: cupertino_icons + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.5" + version: "1.0.6" dart_style: - dependency: transitive + dependency: "direct overridden" description: name: dart_style + sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" url: "https://pub.flutter-io.cn" source: hosted version: "2.2.5" @@ -168,11 +191,12 @@ packages: path: "../../fair" relative: true source: path - version: "3.1.0" + version: "3.3.0" fair_annotation: dependency: transitive description: name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" @@ -182,32 +206,35 @@ packages: path: "../../compiler" relative: true source: path - version: "1.6.0" + version: "1.8.0" fair_dart2dsl: dependency: "direct overridden" description: - path: "../../dart2dsl" - relative: true - source: path - version: "1.2.0" + name: fair_dart2dsl + sha256: a4e859678c0dcad711d688c0e82998fde5e75d2f5f5620d9b2c6d7426d22acbd + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.4.0" fair_dart2js: dependency: "direct overridden" description: - path: "../../dart2js" - relative: true - source: path + name: fair_dart2js + sha256: f9b14f1fc887866238fb0c446667611bcd8896f889cd18950ce4b3cd7a3cfad2 + url: "https://pub.flutter-io.cn" + source: hosted version: "1.4.0" fair_version: dependency: "direct overridden" description: - path: "../../flutter_version/flutter_3_3_0" + path: "../../flutter_version/flutter_3_13_0" relative: true source: path - version: "3.0.0" + version: "3.13.0" fake_async: dependency: transitive description: name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" url: "https://pub.flutter-io.cn" source: hosted version: "1.3.1" @@ -215,6 +242,7 @@ packages: dependency: transitive description: name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -222,6 +250,7 @@ packages: dependency: transitive description: name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.4" @@ -229,13 +258,15 @@ packages: dependency: transitive description: name: fixnum + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.1" + version: "1.1.0" flat_buffers: dependency: transitive description: name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.5" @@ -258,6 +289,7 @@ packages: dependency: transitive description: name: frontend_server_client + sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.0" @@ -265,27 +297,31 @@ packages: dependency: transitive description: name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.1" + version: "2.1.2" graphs: dependency: transitive description: name: graphs + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.0" + version: "2.3.1" http: dependency: transitive description: name: http + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" url: "https://pub.flutter-io.cn" source: hosted - version: "0.13.5" + version: "0.13.6" http_multi_server: dependency: transitive description: name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.1" @@ -293,6 +329,7 @@ packages: dependency: transitive description: name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" url: "https://pub.flutter-io.cn" source: hosted version: "4.0.2" @@ -300,6 +337,7 @@ packages: dependency: "direct dev" description: name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" url: "https://pub.flutter-io.cn" source: hosted version: "0.17.0" @@ -307,6 +345,7 @@ packages: dependency: transitive description: name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.4" @@ -314,55 +353,63 @@ packages: dependency: transitive description: name: js + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.flutter-io.cn" source: hosted - version: "0.6.4" + version: "0.6.7" json_annotation: dependency: transitive description: name: json_annotation + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 url: "https://pub.flutter-io.cn" source: hosted - version: "4.7.0" + version: "4.8.1" logging: dependency: transitive description: name: logging + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" matcher: dependency: transitive description: name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.12" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.5" + version: "0.5.0" meta: dependency: transitive description: name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.0" + version: "1.9.1" mime: dependency: transitive description: name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.3" + version: "1.0.4" package_config: dependency: transitive description: name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -370,13 +417,15 @@ packages: dependency: transitive description: name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.8.3" pedantic: dependency: transitive description: name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" url: "https://pub.flutter-io.cn" source: hosted version: "1.11.1" @@ -384,27 +433,31 @@ packages: dependency: transitive description: name: platform + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.0" + version: "3.1.3" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.4" + version: "2.1.6" pointycastle: dependency: transitive description: name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" url: "https://pub.flutter-io.cn" source: hosted - version: "3.7.2" + version: "3.7.3" pool: dependency: transitive description: name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" url: "https://pub.flutter-io.cn" source: hosted version: "1.5.1" @@ -412,6 +465,7 @@ packages: dependency: transitive description: name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" url: "https://pub.flutter-io.cn" source: hosted version: "4.2.4" @@ -419,30 +473,34 @@ packages: dependency: transitive description: name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.3" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.1" + version: "1.2.3" shelf: dependency: transitive description: name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 url: "https://pub.flutter-io.cn" source: hosted - version: "1.4.0" + version: "1.4.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.3" + version: "1.0.4" sky_engine: dependency: transitive description: flutter @@ -452,34 +510,39 @@ packages: dependency: transitive description: name: source_gen + sha256: fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.6" + version: "1.4.0" source_span: dependency: transitive description: name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.flutter-io.cn" source: hosted - version: "1.9.0" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" stream_transform: dependency: transitive description: name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -487,13 +550,15 @@ packages: dependency: transitive description: name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.1" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -501,13 +566,15 @@ packages: dependency: transitive description: name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.12" + version: "0.6.0" timing: dependency: transitive description: name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" @@ -515,93 +582,114 @@ packages: dependency: transitive description: name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.1" + version: "1.3.2" url_launcher: dependency: transitive description: name: url_launcher + sha256: b1c9e98774adf8820c96fbc7ae3601231d324a7d5ebd8babe27b6dfac91357ba url: "https://pub.flutter-io.cn" source: hosted - version: "6.1.10" + version: "6.2.1" url_launcher_android: dependency: transitive description: name: url_launcher_android + sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def" url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.26" + version: "6.2.0" url_launcher_ios: dependency: transitive description: name: url_launcher_ios + sha256: "4ac97281cf60e2e8c5cc703b2b28528f9b50c8f7cebc71df6bdf0845f647268a" url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.18" + version: "6.2.0" url_launcher_linux: dependency: transitive description: name: url_launcher_linux + sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.4" + version: "3.1.0" url_launcher_macos: dependency: transitive description: name: url_launcher_macos + sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.4" + version: "3.1.0" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface + sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.2.0" url_launcher_web: dependency: transitive description: name: url_launcher_web + sha256: "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2" url: "https://pub.flutter-io.cn" source: hosted - version: "2.0.16" + version: "2.2.0" url_launcher_windows: dependency: transitive description: name: url_launcher_windows + sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.5" + version: "3.1.0" vector_math: dependency: transitive description: name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.4" watcher: - dependency: transitive + dependency: "direct overridden" description: name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.0" + version: "2.4.0" yaml: dependency: transitive description: name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" url: "https://pub.flutter-io.cn" source: hosted - version: "3.1.1" + version: "3.1.2" sdks: - dart: ">=2.17.0 <3.0.0" - flutter: ">=3.0.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/test_case/sugar_demo/pubspec.yaml b/test_case/sugar_demo/pubspec.yaml index 6bdc2502..b49e1615 100644 --- a/test_case/sugar_demo/pubspec.yaml +++ b/test_case/sugar_demo/pubspec.yaml @@ -57,17 +57,12 @@ dev_dependencies: # The following section is specific to Flutter. dependency_overrides: - fair_version: - path: ../../flutter_version/flutter_3_3_0 - fair: - path: ../../fair - fair_compiler: - path: ../../compiler - fair_dart2dsl: - path: ../../dart2dsl - fair_dart2js: - path: ../../dart2js + analyzer: 5.6.0 + dart_style: 2.2.5 collection: 1.17.0 + watcher: 1.1.0 + fair_version: + path: ../../flutter_version/flutter_3_13_0 flutter: # The following line ensures that the Material Icons font is diff --git a/test_case/sugar_demo_tabbar/android/app/build.gradle b/test_case/sugar_demo_tabbar/android/app/build.gradle index 67942298..55bac098 100644 --- a/test_case/sugar_demo_tabbar/android/app/build.gradle +++ b/test_case/sugar_demo_tabbar/android/app/build.gradle @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion flutter.compileSdkVersion + compileSdkVersion 33 ndkVersion flutter.ndkVersion compileOptions { @@ -47,8 +47,8 @@ android { applicationId "com.example.sugar_demo_tabbar" // 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 + minSdkVersion 20 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } diff --git a/test_case/sugar_demo_tabbar/android/build.gradle b/test_case/sugar_demo_tabbar/android/build.gradle index 83ae2200..fb8d72f6 100644 --- a/test_case/sugar_demo_tabbar/android/build.gradle +++ b/test_case/sugar_demo_tabbar/android/build.gradle @@ -1,8 +1,12 @@ buildscript { - ext.kotlin_version = '1.6.10' + ext.kotlin_version = '1.8.0' repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } google() - mavenCentral() + jcenter() } dependencies { @@ -13,8 +17,20 @@ buildscript { allprojects { repositories { + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/jcenter' + } + maven { + allowInsecureProtocol = true + url 'https://maven.aliyun.com/repository/google' + } + maven { + allowInsecureProtocol = true + url 'http://maven.aliyun.com/nexus/content/groups/public/' + } google() - mavenCentral() + jcenter() } } @@ -26,6 +42,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/test_case/sugar_demo_tabbar/android/gradle/wrapper/gradle-wrapper.properties b/test_case/sugar_demo_tabbar/android/gradle/wrapper/gradle-wrapper.properties index cc5527d7..bfd98901 100644 --- a/test_case/sugar_demo_tabbar/android/gradle/wrapper/gradle-wrapper.properties +++ b/test_case/sugar_demo_tabbar/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ 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 +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip diff --git a/test_case/sugar_demo_tabbar/pubspec.lock b/test_case/sugar_demo_tabbar/pubspec.lock index d322a0c5..dbae44fd 100644 --- a/test_case/sugar_demo_tabbar/pubspec.lock +++ b/test_case/sugar_demo_tabbar/pubspec.lock @@ -5,20 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared + sha256: e440ac42679dfc04bbbefb58ed225c994bc7e07fccc8a68ec7d3631a127e5da9 url: "https://pub.flutter-io.cn" source: hosted - version: "31.0.0" + version: "54.0.0" analyzer: - dependency: transitive + dependency: "direct overridden" description: name: analyzer + sha256: "2c2e3721ee9fb36de92faa060f3480c81b23e904352b087e5c64224b1a044427" url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.0" + version: "5.6.0" archive: dependency: transitive description: name: archive + sha256: "80e5141fafcb3361653ce308776cfd7d45e6e9fbb429e14eec571382c0c5fecb" url: "https://pub.flutter-io.cn" source: hosted version: "3.3.2" @@ -26,6 +29,7 @@ packages: dependency: transitive description: name: args + sha256: b003c3098049a51720352d219b0bb5f219b60fbfb68e7a4748139a06a5676515 url: "https://pub.flutter-io.cn" source: hosted version: "2.3.1" @@ -33,20 +37,23 @@ packages: dependency: transitive description: name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.2" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build + sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777" url: "https://pub.flutter-io.cn" source: hosted version: "2.3.1" @@ -54,6 +61,7 @@ packages: dependency: transitive description: name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" @@ -61,6 +69,7 @@ packages: dependency: transitive description: name: build_daemon + sha256: "6bc5544ea6ce4428266e7ea680e945c68806c4aae2da0eb5e9ccf38df8d6acbf" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -68,6 +77,7 @@ packages: dependency: transitive description: name: build_resolvers + sha256: "4666aef1d045c5ca15ebba63e400bd4e4fbd9f0dd06e791b51ab210da78a27f7" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.6" @@ -75,6 +85,7 @@ packages: dependency: "direct dev" description: name: build_runner + sha256: "56942f8114731d1e79942cd981cfef29501937ff1bccf4dbdce0273f31f13640" url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" @@ -82,6 +93,7 @@ packages: dependency: transitive description: name: build_runner_core + sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292" url: "https://pub.flutter-io.cn" source: hosted version: "7.2.7" @@ -89,6 +101,7 @@ packages: dependency: transitive description: name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" @@ -96,6 +109,7 @@ packages: dependency: transitive description: name: built_value + sha256: "59e08b0079bb75f7e27392498e26339387c1089c6bd58525a14eb8508637277b" url: "https://pub.flutter-io.cn" source: hosted version: "8.4.2" @@ -103,55 +117,47 @@ packages: dependency: transitive description: name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml + sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659 url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" - cli_util: - dependency: transitive - description: - name: cli_util - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.3.5" clock: dependency: transitive description: name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.1.1" code_builder: dependency: transitive description: name: code_builder + sha256: "02ce3596b459c666530f045ad6f96209474e8fee6e4855940a3cee65fb872ec5" url: "https://pub.flutter-io.cn" source: hosted version: "4.3.0" collection: - dependency: transitive + dependency: "direct overridden" description: name: collection + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.17.0" convert: dependency: transitive description: name: convert + sha256: "1be13198012c1d5bc042dc40ad1d7f16cbd522350984c0c1abf471d6d7e305c6" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -159,6 +165,7 @@ packages: dependency: transitive description: name: crypto + sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.2" @@ -166,27 +173,30 @@ packages: dependency: "direct main" description: name: cupertino_icons + sha256: e35129dc44c9118cee2a5603506d823bab99c68393879edb440e0090d07586be url: "https://pub.flutter-io.cn" source: hosted version: "1.0.5" dart_style: - dependency: transitive + dependency: "direct overridden" description: name: dart_style + sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" url: "https://pub.flutter-io.cn" source: hosted - version: "2.2.1" + version: "2.2.5" fair: dependency: "direct main" description: path: "../../fair" relative: true source: path - version: "2.8.1" + version: "3.3.0" fair_annotation: dependency: transitive description: name: fair_annotation + sha256: "921581dd3979e64a8e246ac4af728aaa1edb65867370f44f8276b0bed20e3cc3" url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" @@ -196,39 +206,43 @@ packages: path: "../../compiler" relative: true source: path - version: "1.4.1-dev.1" + version: "1.8.0" fair_dart2dsl: dependency: transitive description: name: fair_dart2dsl + sha256: a4e859678c0dcad711d688c0e82998fde5e75d2f5f5620d9b2c6d7426d22acbd url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.4.0" fair_dart2js: dependency: transitive description: name: fair_dart2js + sha256: f9b14f1fc887866238fb0c446667611bcd8896f889cd18950ce4b3cd7a3cfad2 url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.4.0" fair_version: dependency: "direct overridden" description: - path: "../../flutter_version/flutter_3_0_0" + path: "../../flutter_version/flutter_3_13_0" relative: true source: path - version: "3.0.0+1" + version: "3.13.0" fake_async: dependency: transitive description: name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" + version: "1.3.1" ffi: dependency: transitive description: name: ffi + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -236,6 +250,7 @@ packages: dependency: transitive description: name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.4" @@ -243,6 +258,7 @@ packages: dependency: transitive description: name: fixnum + sha256: "04be3e934c52e082558cc9ee21f42f5c1cd7a1262f4c63cd0357c08d5bba81ec" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" @@ -250,6 +266,7 @@ packages: dependency: transitive description: name: flat_buffers + sha256: "23e2ced0d8e8ecdffbd9f267f49a668c74438393b9acaeac1c724123e3764263" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.5" @@ -272,6 +289,7 @@ packages: dependency: transitive description: name: frontend_server_client + sha256: "4f4a162323c86ffc1245765cfe138872b8f069deb42f7dbb36115fa27f31469b" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.3" @@ -279,6 +297,7 @@ packages: dependency: transitive description: name: glob + sha256: c51b4fdfee4d281f49b8c957f1add91b815473597f76bcf07377987f66a55729 url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -286,6 +305,7 @@ packages: dependency: transitive description: name: graphs + sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2 url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" @@ -293,6 +313,7 @@ packages: dependency: transitive description: name: http + sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482" url: "https://pub.flutter-io.cn" source: hosted version: "0.13.5" @@ -300,6 +321,7 @@ packages: dependency: transitive description: name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" url: "https://pub.flutter-io.cn" source: hosted version: "3.2.1" @@ -307,6 +329,7 @@ packages: dependency: transitive description: name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" url: "https://pub.flutter-io.cn" source: hosted version: "4.0.2" @@ -314,6 +337,7 @@ packages: dependency: "direct dev" description: name: intl + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" url: "https://pub.flutter-io.cn" source: hosted version: "0.17.0" @@ -321,6 +345,7 @@ packages: dependency: transitive description: name: io + sha256: "0d4c73c3653ab85bf696d51a9657604c900a370549196a91f33e4c39af760852" url: "https://pub.flutter-io.cn" source: hosted version: "1.0.3" @@ -328,6 +353,7 @@ packages: dependency: transitive description: name: js + sha256: a5e201311cb08bf3912ebbe9a2be096e182d703f881136ec1e81a2338a9e120d url: "https://pub.flutter-io.cn" source: hosted version: "0.6.4" @@ -335,6 +361,7 @@ packages: dependency: transitive description: name: json_annotation + sha256: "3520fa844009431b5d4491a5a778603520cdc399ab3406332dcc50f93547258c" url: "https://pub.flutter-io.cn" source: hosted version: "4.7.0" @@ -342,6 +369,7 @@ packages: dependency: transitive description: name: logging + sha256: c0bbfe94d46aedf9b8b3e695cf3bd48c8e14b35e3b2c639e0aa7755d589ba946 url: "https://pub.flutter-io.cn" source: hosted version: "1.1.0" @@ -349,27 +377,31 @@ packages: dependency: transitive description: name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.11" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.4" + version: "0.5.0" meta: dependency: transitive description: name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.flutter-io.cn" source: hosted - version: "1.7.0" + version: "1.9.1" mime: dependency: transitive description: name: mime + sha256: dab22e92b41aa1255ea90ddc4bc2feaf35544fd0728e209638cad041a6e3928a url: "https://pub.flutter-io.cn" source: hosted version: "1.0.2" @@ -377,6 +409,7 @@ packages: dependency: transitive description: name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -384,13 +417,15 @@ packages: dependency: transitive description: name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.8.3" pedantic: dependency: transitive description: name: pedantic + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" url: "https://pub.flutter-io.cn" source: hosted version: "1.11.1" @@ -398,6 +433,7 @@ packages: dependency: transitive description: name: platform + sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.0" @@ -405,6 +441,7 @@ packages: dependency: transitive description: name: plugin_platform_interface + sha256: dbf0f707c78beedc9200146ad3cb0ab4d5da13c246336987be6940f026500d3a url: "https://pub.flutter-io.cn" source: hosted version: "2.1.3" @@ -412,6 +449,7 @@ packages: dependency: transitive description: name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" url: "https://pub.flutter-io.cn" source: hosted version: "1.5.1" @@ -419,6 +457,7 @@ packages: dependency: transitive description: name: process + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" url: "https://pub.flutter-io.cn" source: hosted version: "4.2.4" @@ -426,6 +465,7 @@ packages: dependency: transitive description: name: pub_semver + sha256: b959af0a045c3484c4a8f4997731f5bfe4cac60d732fd8ce35b351f2d6a459fe url: "https://pub.flutter-io.cn" source: hosted version: "2.1.2" @@ -433,6 +473,7 @@ packages: dependency: transitive description: name: pubspec_parse + sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" @@ -440,6 +481,7 @@ packages: dependency: transitive description: name: shelf + sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" @@ -447,6 +489,7 @@ packages: dependency: transitive description: name: shelf_web_socket + sha256: a988c0e8d8ffbdb8a28aa7ec8e449c260f3deb808781fe1284d22c5bba7156e8 url: "https://pub.flutter-io.cn" source: hosted version: "1.0.3" @@ -459,6 +502,7 @@ packages: dependency: transitive description: name: source_gen + sha256: "00f8b6b586f724a8c769c96f1d517511a41661c0aede644544d8d86a1ab11142" url: "https://pub.flutter-io.cn" source: hosted version: "1.2.2" @@ -466,27 +510,31 @@ packages: dependency: transitive description: name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.2" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" stream_transform: dependency: transitive description: name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" @@ -494,27 +542,31 @@ packages: dependency: transitive description: name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.9" + version: "0.6.0" timing: dependency: transitive description: name: timing + sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad url: "https://pub.flutter-io.cn" source: hosted version: "1.0.0" @@ -522,6 +574,7 @@ packages: dependency: transitive description: name: typed_data + sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" url: "https://pub.flutter-io.cn" source: hosted version: "1.3.1" @@ -529,6 +582,7 @@ packages: dependency: transitive description: name: url_launcher + sha256: "568176fc8ab5ac1d88ff0db8ff28659d103851670dda55e83b485664c2309299" url: "https://pub.flutter-io.cn" source: hosted version: "6.1.6" @@ -536,6 +590,7 @@ packages: dependency: transitive description: name: url_launcher_android + sha256: "2514dc16ac169adf55159268d7bf70317d9f2fc9ef5bb02020bb7ad710c0aeb4" url: "https://pub.flutter-io.cn" source: hosted version: "6.0.21" @@ -543,6 +598,7 @@ packages: dependency: transitive description: name: url_launcher_ios + sha256: "6ba7dddee26c9fae27c9203c424631109d73c8fa26cfa7bc3e35e751cb87f62e" url: "https://pub.flutter-io.cn" source: hosted version: "6.0.17" @@ -550,6 +606,7 @@ packages: dependency: transitive description: name: url_launcher_linux + sha256: "360fa359ab06bcb4f7c5cd3123a2a9a4d3364d4575d27c4b33468bd4497dd094" url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -557,6 +614,7 @@ packages: dependency: transitive description: name: url_launcher_macos + sha256: a9b3ea9043eabfaadfa3fb89de67a11210d85569086d22b3854484beab8b3978 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -564,6 +622,7 @@ packages: dependency: transitive description: name: url_launcher_platform_interface + sha256: "4eae912628763eb48fc214522e58e942fd16ce195407dbf45638239523c759a6" url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" @@ -571,6 +630,7 @@ packages: dependency: transitive description: name: url_launcher_web + sha256: "5669882643b96bb6d5786637cac727c6e918a790053b09245fd4513b8a07df2a" url: "https://pub.flutter-io.cn" source: hosted version: "2.0.13" @@ -578,6 +638,7 @@ packages: dependency: transitive description: name: url_launcher_windows + sha256: e3c3b16d3104260c10eea3b0e34272aaa57921f83148b0619f74c2eced9b7ef1 url: "https://pub.flutter-io.cn" source: hosted version: "3.0.1" @@ -585,20 +646,31 @@ packages: dependency: transitive description: name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.4" watcher: - dependency: transitive + dependency: "direct overridden" description: name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" url: "https://pub.flutter-io.cn" source: hosted - version: "1.0.2" + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel + sha256: "3a969ddcc204a3e34e863d204b29c0752716f78b6f9cc8235083208d268a4ccd" url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" @@ -606,9 +678,10 @@ packages: dependency: transitive description: name: yaml + sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370" url: "https://pub.flutter-io.cn" source: hosted version: "3.1.1" sdks: - dart: ">=2.17.0 <3.0.0" - flutter: ">=2.10.0" + dart: ">=3.1.0-185.0.dev <4.0.0" + flutter: ">=3.0.0" diff --git a/test_case/sugar_demo_tabbar/pubspec.yaml b/test_case/sugar_demo_tabbar/pubspec.yaml index 755b35ea..8c8ef045 100644 --- a/test_case/sugar_demo_tabbar/pubspec.yaml +++ b/test_case/sugar_demo_tabbar/pubspec.yaml @@ -57,8 +57,12 @@ dev_dependencies: # The following section is specific to Flutter. dependency_overrides: + analyzer: 5.6.0 + dart_style: 2.2.5 + collection: 1.17.0 + watcher: 1.1.0 fair_version: - path: ../../flutter_version/flutter_3_0_0 + path: ../../flutter_version/flutter_3_13_0 flutter: # The following line ensures that the Material Icons font is