diff --git a/android/app/build.gradle b/android/app/build.gradle index 538f91f..1475f0c 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -75,6 +75,9 @@ android { disable 'InvalidPackage' checkReleaseBuilds false } + buildFeatures { + viewBinding true + } } flutter { @@ -84,4 +87,7 @@ flutter { dependencies { implementation platform('com.google.firebase:firebase-bom:29.1.0') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation 'com.google.code.gson:gson:2.10.1' +// implementation 'com.github.bumptech.glide:glide:4.16.0' + implementation 'com.squareup.picasso:picasso:2.8' } diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 47515db..4450b50 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,67 +1,94 @@ + - - - - + + + + + + + - + + + + + + + + + + + + + + - android:requestLegacyExternalStorage="true"> - - + to determine the Window background behind the Flutter UI. + --> + android:name="flutterEmbedding" + android:value="2" /> + - + Flutter's first frame. + --> - - + + + + + + android:theme="@style/Theme.AppCompat.Light.NoActionBar" /> - - - - - - - - + + + + + - + + \ No newline at end of file diff --git a/android/app/src/main/java/com/didvan/didvanapp/FavWidget.kt b/android/app/src/main/java/com/didvan/didvanapp/FavWidget.kt new file mode 100644 index 0000000..3211050 --- /dev/null +++ b/android/app/src/main/java/com/didvan/didvanapp/FavWidget.kt @@ -0,0 +1,113 @@ +package com.didvan.didvanapp + +import android.annotation.SuppressLint +import android.appwidget.AppWidgetManager +import android.content.Context +import android.content.SharedPreferences +import android.net.Uri +import android.widget.RemoteViews +import com.squareup.picasso.Picasso +import com.squareup.picasso.Transformation +import es.antonborri.home_widget.HomeWidgetBackgroundIntent +import es.antonborri.home_widget.HomeWidgetLaunchIntent +import es.antonborri.home_widget.HomeWidgetProvider + + +/** + * Implementation of App Widget functionality. + */ +class FavWidget : HomeWidgetProvider() { + + @SuppressLint("RemoteViewLayout") + override fun onUpdate( + context: Context, + appWidgetManager: AppWidgetManager, + appWidgetIds: IntArray, + widgetData: SharedPreferences + ) { + appWidgetIds.forEach { widgetId -> + val views = RemoteViews(context.packageName, R.layout.favourite_widget).apply { + + // Open App on Widget Click + val pendingIntent = HomeWidgetLaunchIntent.getActivity( + context, + MainActivity::class.java + ) + setOnClickPendingIntent(R.id.logo_btn, pendingIntent) + + val responses: ArrayList = ArrayList(); + val token = widgetData.getString("token", "").toString() + + for (i in 0..2) { + responses.add( + WidgetResponse( + id = widgetData.getString("id${i + 1}", "")?.toInt() ?: 0, + title = widgetData.getString("title${i + 1}", "").toString(), + createdAt = widgetData.getString("createdAt${i + 1}", "").toString(), + type = widgetData.getString("type${i + 1}", "").toString(), + link = widgetData.getString("link${i + 1}", "").toString(), + category = widgetData.getString("category${i + 1}", "").toString(), + image = widgetData.getString("image${i + 1}", "").toString(), + ) + ) + } + + setTextViewText(R.id.first_title, responses[0].title.toString()) + setTextViewText(R.id.middle_title, responses[1].title.toString()) + setTextViewText(R.id.last_title, responses[2].title.toString()) +// + setTextViewText(R.id.first_tag, responses[0].category) + setTextViewText(R.id.middle_tag, responses[1].category) + setTextViewText(R.id.last_tag, responses[2].category) + + setTextViewText(R.id.first_duration, responses[0].createdAt) + setTextViewText(R.id.middle_duration, responses[1].createdAt) + setTextViewText(R.id.last_duration, responses[2].createdAt) + + Picasso.get() + .load("https://api.didvan.app${responses[0].image}?accessToken=${token}") + .transform(RoundedTransformation(50, 0)) + .into(this, R.id.first_image, appWidgetIds); + Picasso.get() + .load("https://api.didvan.app${responses[1].image}?accessToken=${token}") + .transform(RoundedTransformation(50, 0)) + .into(this, R.id.middle_image, appWidgetIds); + Picasso.get() + .load("https://api.didvan.app${responses[2].image}?accessToken=${token}") + .transform(RoundedTransformation(50, 0)) + .into(this, R.id.last_image, appWidgetIds); + + + // Pending intent to update counter on button click + val settingIntent = HomeWidgetBackgroundIntent.getBroadcast( + context, + Uri.parse("myAppWidget://setting"), + + ) + setOnClickPendingIntent(R.id.setting_btn, settingIntent) + + val rowFirst = HomeWidgetBackgroundIntent.getBroadcast( + context, + Uri.parse("myAppWidget://rowFirst"), + + ) + setOnClickPendingIntent(R.id.first_row, settingIntent) + val rowMiddle = HomeWidgetBackgroundIntent.getBroadcast( + context, + Uri.parse("myAppWidget://rowMiddle"), + + ) + setOnClickPendingIntent(R.id.middle_row, settingIntent) + val rowLast = HomeWidgetBackgroundIntent.getBroadcast( + context, + Uri.parse("myAppWidget://rowLast"), + + ) + setOnClickPendingIntent(R.id.last_row, settingIntent) + + } + appWidgetManager.updateAppWidget(widgetId, views) + } + } + +} \ No newline at end of file diff --git a/android/app/src/main/java/com/didvan/didvanapp/RoundedTransformation.kt b/android/app/src/main/java/com/didvan/didvanapp/RoundedTransformation.kt new file mode 100644 index 0000000..78b6c77 --- /dev/null +++ b/android/app/src/main/java/com/didvan/didvanapp/RoundedTransformation.kt @@ -0,0 +1,43 @@ +package com.didvan.didvanapp + +import android.graphics.Bitmap +import android.graphics.BitmapShader +import android.graphics.Canvas +import android.graphics.Paint +import android.graphics.RectF +import android.graphics.Shader +import com.squareup.picasso.Transformation + + +class RoundedTransformation(private val radius: Int, private val margin: Int) : Transformation { + override fun transform(source: Bitmap): Bitmap { + val paint = Paint() + paint.isAntiAlias = true + paint.setShader( + BitmapShader( + source, Shader.TileMode.CLAMP, + Shader.TileMode.CLAMP + ) + ) + val output = Bitmap.createBitmap( + source.getWidth(), source.getHeight(), + Bitmap.Config.ARGB_8888 + ) + val canvas = Canvas(output) + canvas.drawRoundRect( + RectF( + margin.toFloat(), margin.toFloat(), (source.getWidth() - margin).toFloat(), + ( + source.getHeight() - margin).toFloat() + ), radius.toFloat(), radius.toFloat(), paint + ) + if (source != output) { + source.recycle() + } + return output + } + + override fun key(): String { + return "rounded(r=$radius, m=$margin)" + } +} \ No newline at end of file diff --git a/android/app/src/main/java/com/didvan/didvanapp/WidgetResponse.kt b/android/app/src/main/java/com/didvan/didvanapp/WidgetResponse.kt new file mode 100644 index 0000000..ac20408 --- /dev/null +++ b/android/app/src/main/java/com/didvan/didvanapp/WidgetResponse.kt @@ -0,0 +1,21 @@ +package com.didvan.didvanapp + +import com.google.gson.annotations.SerializedName + +data class WidgetResponse( + @SerializedName("id") + var id: Int = 0, + @SerializedName("title") + var title: String = "", + @SerializedName("createdAt") + var createdAt: String = "", + @SerializedName("type") + var type: String = "", + @SerializedName("link") + var link: String = "", + @SerializedName("category") + var category: String = "", + @SerializedName("image") + var image: String = "", + + ) diff --git a/android/app/src/main/res/drawable-nodpi/example_appwidget_preview.png b/android/app/src/main/res/drawable-nodpi/example_appwidget_preview.png new file mode 100644 index 0000000..894b069 Binary files /dev/null and b/android/app/src/main/res/drawable-nodpi/example_appwidget_preview.png differ diff --git a/android/app/src/main/res/drawable-v21/app_widget_background.xml b/android/app/src/main/res/drawable-v21/app_widget_background.xml new file mode 100644 index 0000000..785445c --- /dev/null +++ b/android/app/src/main/res/drawable-v21/app_widget_background.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/drawable-v21/app_widget_inner_view_background.xml b/android/app/src/main/res/drawable-v21/app_widget_inner_view_background.xml new file mode 100644 index 0000000..007e287 --- /dev/null +++ b/android/app/src/main/res/drawable-v21/app_widget_inner_view_background.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/drawable/favwidg.png b/android/app/src/main/res/drawable/favwidg.png new file mode 100644 index 0000000..9956103 Binary files /dev/null and b/android/app/src/main/res/drawable/favwidg.png differ diff --git a/android/app/src/main/res/drawable/logo.png b/android/app/src/main/res/drawable/logo.png new file mode 100644 index 0000000..29d994f Binary files /dev/null and b/android/app/src/main/res/drawable/logo.png differ diff --git a/android/app/src/main/res/drawable/setting_logo.png b/android/app/src/main/res/drawable/setting_logo.png new file mode 100644 index 0000000..6345163 Binary files /dev/null and b/android/app/src/main/res/drawable/setting_logo.png differ diff --git a/android/app/src/main/res/drawable/test.png b/android/app/src/main/res/drawable/test.png new file mode 100644 index 0000000..a1b31b0 Binary files /dev/null and b/android/app/src/main/res/drawable/test.png differ diff --git a/android/app/src/main/res/font/dana.ttf b/android/app/src/main/res/font/dana.ttf new file mode 100644 index 0000000..93200a1 Binary files /dev/null and b/android/app/src/main/res/font/dana.ttf differ diff --git a/android/app/src/main/res/layout/favourite_widget.xml b/android/app/src/main/res/layout/favourite_widget.xml new file mode 100644 index 0000000..f2117ac --- /dev/null +++ b/android/app/src/main/res/layout/favourite_widget.xml @@ -0,0 +1,300 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/values-v21/styles.xml b/android/app/src/main/res/values-v21/styles.xml new file mode 100644 index 0000000..0b35f7d --- /dev/null +++ b/android/app/src/main/res/values-v21/styles.xml @@ -0,0 +1,14 @@ + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/values/attrs.xml b/android/app/src/main/res/values/attrs.xml new file mode 100644 index 0000000..7781ac8 --- /dev/null +++ b/android/app/src/main/res/values/attrs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/values/colors.xml b/android/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..b2bffa8 --- /dev/null +++ b/android/app/src/main/res/values/colors.xml @@ -0,0 +1,6 @@ + + #FFE1F5FE + #FF81D4FA + #FF039BE5 + #FF01579B + \ No newline at end of file diff --git a/android/app/src/main/res/values/dimens.xml b/android/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..4db8c59 --- /dev/null +++ b/android/app/src/main/res/values/dimens.xml @@ -0,0 +1,10 @@ + + + + + 0dp + + \ No newline at end of file diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..e554823 --- /dev/null +++ b/android/app/src/main/res/values/strings.xml @@ -0,0 +1,6 @@ + + + EXAMPLE + Add widget + This is an app widget description + \ No newline at end of file diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml index d74aa35..08abd17 100644 --- a/android/app/src/main/res/values/styles.xml +++ b/android/app/src/main/res/values/styles.xml @@ -15,4 +15,14 @@ + + + + diff --git a/android/app/src/main/res/values/themes.xml b/android/app/src/main/res/values/themes.xml new file mode 100644 index 0000000..dcd8899 --- /dev/null +++ b/android/app/src/main/res/values/themes.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/xml/favourite_widget_info.xml b/android/app/src/main/res/xml/favourite_widget_info.xml new file mode 100644 index 0000000..d531b29 --- /dev/null +++ b/android/app/src/main/res/xml/favourite_widget_info.xml @@ -0,0 +1,12 @@ + + \ No newline at end of file diff --git a/lib/assets/icons/Dicon.ttf b/lib/assets/icons/Dicon.ttf index 98e3113..23d44b8 100644 Binary files a/lib/assets/icons/Dicon.ttf and b/lib/assets/icons/Dicon.ttf differ diff --git a/lib/constants/app_icons.dart b/lib/constants/app_icons.dart index d8bac86..e565c6a 100644 --- a/lib/constants/app_icons.dart +++ b/lib/constants/app_icons.dart @@ -1,5 +1,5 @@ -/// Flutter icons DidvanIcons -/// Copyright (C) 2022 by original authors @ fluttericon.com, fontello.com +/// Flutter icons Dicon +/// Copyright (C) 2024 by original authors @ fluttericon.com, fontello.com /// This font was generated by FlutterIcon.com, which is derived from Fontello. /// /// To use this font, place it in your fonts/ directory and include the @@ -7,14 +7,12 @@ /// /// flutter: /// fonts: -/// - family: DidvanIcons +/// - family: Dicon /// fonts: -/// - asset: fonts/DidvanIcons.ttf +/// - asset: fonts/Dicon.ttf /// /// /// -// ignore_for_file: constant_identifier_names - import 'package:flutter/widgets.dart'; class DidvanIcons { @@ -23,524 +21,532 @@ class DidvanIcons { static const _kFontFam = 'Dicon'; static const String? _kFontPkg = null; - static const IconData alert_solid = - IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_double_down_solid = - IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_double_up_solid = - IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_down_solid = - IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_left_solid = - IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_right_solid = - IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_up_solid = - IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData arrow_up_solid = - IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData avatar_solid = - IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData back_solid = - IconData(0xe809, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData bitcoin_solid = - IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_day_solid = - IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData bookmark_solid = - IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_range_solid = - IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData camera_solid = - IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData capital_market_solid = - IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData caret_down_solid = - IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData category_solid = - IconData(0xe811, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chart_solid = - IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_solid = - IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_solid = - IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_circle_solid = - IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_solid = - IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_double_solid = - IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_circle_solid = - IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData commodity_solid = - IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData currency_solid = - IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData description_solid = - IconData(0xe81b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData didvan_solid = - IconData(0xe81c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData dislike_solid = - IconData(0xe81d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData evaluation_solid = - IconData(0xe81e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData download_solid = - IconData(0xe81f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData exclamation_triangle_solid = - IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_close_solid = - IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_solid = - IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_solid = - IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_solid = - IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_solid = - IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_solid = - IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData gallery_file_solid = - IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_solid = - IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData foolad_solid = - IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_solid = - IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData house_solid = - IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_solid = - IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData industry_solid = - IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData infography_solid = - IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_solid = - IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_solid = - IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData location_solid = - IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_solid = - IconData(0xe832, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_solid = - IconData(0xe833, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_solid = - IconData(0xe834, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_solid = - IconData(0xe835, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_solid = - IconData(0xe836, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_solid = - IconData(0xe837, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData metal_solid = - IconData(0xe838, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_solid = - IconData(0xe839, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_solid = - IconData(0xe83a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_solid = - IconData(0xe83b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_solid = - IconData(0xe83c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_solid = - IconData(0xe83d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_solid = - IconData(0xe83e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_solid = - IconData(0xe83f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_solid = - IconData(0xe840, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_solid = - IconData(0xe841, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_solid = - IconData(0xe842, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData puzzle_solid = - IconData(0xe843, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_solid = - IconData(0xe844, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData saha_solid = - IconData(0xe845, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_solid = - IconData(0xe846, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData scanning_solid = - IconData(0xe847, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_solid = - IconData(0xe848, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_solid = - IconData(0xe849, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_solid = - IconData(0xe84a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_solid = - IconData(0xe84b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_solid = - IconData(0xe84c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_solid = - IconData(0xe84d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_solid = - IconData(0xe84e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData star_circle_solid = - IconData(0xe84f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData star_solid = - IconData(0xe850, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData startup_solid = - IconData(0xe851, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stats__solid = - IconData(0xe852, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_solid = - IconData(0xe853, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sub_category_solid = - IconData(0xe854, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_solid = - IconData(0xe855, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_solid = - IconData(0xe856, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_solid = - IconData(0xe857, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData technology_solid = - IconData(0xe858, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_solid = - IconData(0xe859, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_solid = - IconData(0xe85a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_solid = - IconData(0xe85b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_solid = - IconData(0xe85c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData alert_regular = - IconData(0xe85d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_double_up_regular = - IconData(0xe85e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_down_regular = - IconData(0xe85f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_double_down_regular = - IconData(0xe860, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_left_regular = - IconData(0xe861, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_right_regular = - IconData(0xe862, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_up_regular = - IconData(0xe863, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData arrow_up_regular = - IconData(0xe864, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData avatar_regular = - IconData(0xe865, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData back_regular = - IconData(0xe866, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData bookmark_regular = - IconData(0xe867, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_day_regular = - IconData(0xe868, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_range_regular = - IconData(0xe869, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData camera_regular = - IconData(0xe86a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData category_regular = - IconData(0xe86b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData caret_down_regular = - IconData(0xe86c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chart_regular = - IconData(0xe86d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_regular = - IconData(0xe86e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_regular = - IconData(0xe86f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_circle_regular = - IconData(0xe870, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_double_regular = - IconData(0xe871, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_circle_regular = - IconData(0xe872, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_regular = - IconData(0xe873, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData description_regular = - IconData(0xe874, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData didvan_regular = - IconData(0xe875, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData dislike_regular = - IconData(0xe876, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData download_regular = - IconData(0xe877, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData evaluation_regular = - IconData(0xe878, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData exclamation_triangle_regular = - IconData(0xe879, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_regular = - IconData(0xe87a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_regular = - IconData(0xe87b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_regular = - IconData(0xe87c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_regular = - IconData(0xe87d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_regular = - IconData(0xe87e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData foolad_regular = - IconData(0xe87f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData gallery_file_regular = - IconData(0xe880, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_regular = - IconData(0xe881, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_regular = - IconData(0xe882, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData house_regular = - IconData(0xe883, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_regular = - IconData(0xe884, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_regular = - IconData(0xe885, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_regular = - IconData(0xe886, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_regular = - IconData(0xe887, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_regular = - IconData(0xe888, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData location_regular = - IconData(0xe889, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_regular = - IconData(0xe88a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_regular = - IconData(0xe88b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_regular = - IconData(0xe88c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_regular = - IconData(0xe88d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_regular = - IconData(0xe88e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_regular = - IconData(0xe88f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_regular = - IconData(0xe890, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_regular = - IconData(0xe891, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_regular = - IconData(0xe892, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_regular = - IconData(0xe893, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_regular = - IconData(0xe894, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_regular = - IconData(0xe895, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_regular = - IconData(0xe896, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_regular = - IconData(0xe897, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData puzzle_regular = - IconData(0xe898, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_regular = - IconData(0xe899, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_regular = - IconData(0xe89a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData saha_regular = - IconData(0xe89b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData scanning_regular = - IconData(0xe89c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_regular = - IconData(0xe89d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_regular = - IconData(0xe89e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_regular = - IconData(0xe89f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_regular = - IconData(0xe8a0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_regular = - IconData(0xe8a1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_regular = - IconData(0xe8a2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_regular = - IconData(0xe8a3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData star_regular = - IconData(0xe8a4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stats__regular = - IconData(0xe8a5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_regular = - IconData(0xe8a6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sub_category_regular = - IconData(0xe8a7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_regular = - IconData(0xe8a8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_regular = - IconData(0xe8a9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_regular = - IconData(0xe8aa, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_regular = - IconData(0xe8ab, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_regular = - IconData(0xe8ac, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_regular = - IconData(0xe8ad, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_regular = - IconData(0xe8ae, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData alert_light = - IconData(0xe8af, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData alert_regular = + IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData alert_solid = + IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_double_down_light = - IconData(0xe8b0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData angle_down_light = - IconData(0xe8b1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_double_down_regular = + IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_double_down_solid = + IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_double_up_light = - IconData(0xe8b2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_double_up_regular = + IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_double_up_solid = + IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_down_light = + IconData(0xe809, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_down_regular = + IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_down_solid = + IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_left_light = - IconData(0xe8b3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_left_regular = + IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_left_solid = + IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_right_light = - IconData(0xe8b4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_right_regular = + IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_right_solid = + IconData(0xe811, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_up_light = - IconData(0xe8b5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData arrow_up_light = - IconData(0xe8b6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData avatar_light = - IconData(0xe8b7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData back_light = - IconData(0xe8b8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData bookmark_light = - IconData(0xe8b9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_day_light = - IconData(0xe8ba, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_range_light = - IconData(0xe8bb, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData camera_light = - IconData(0xe8bc, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData caret_down_light = - IconData(0xe8bd, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData category_light = - IconData(0xe8be, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chart_light = - IconData(0xe8bf, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_light = - IconData(0xe8c0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_light = - IconData(0xe8c1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_circle_light = - IconData(0xe8c2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData check_double_light = - IconData(0xe8c3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_light = - IconData(0xe8c4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData close_circle_light = - IconData(0xe8c5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData description_light = - IconData(0xe8c6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData didvan_light = - IconData(0xe8c7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData dislike_light = - IconData(0xe8c8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData download_light = - IconData(0xe8c9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData evaluation_light = - IconData(0xe8ca, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData exclamation_triangle_light = - IconData(0xe8cb, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_light = - IconData(0xe8cc, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_light = - IconData(0xe8cd, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_light = - IconData(0xe8ce, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_light = - IconData(0xe8cf, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_light = - IconData(0xe8d0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData foolad_light = - IconData(0xe8d1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData gallery_file_light = - IconData(0xe8d2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_light = - IconData(0xe8d3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_light = - IconData(0xe8d4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData house_light = - IconData(0xe8d5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_light = - IconData(0xe8d6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_light = - IconData(0xe8d7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_light = - IconData(0xe8d8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_light = - IconData(0xe8d9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData location_light = - IconData(0xe8da, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_light = - IconData(0xe8db, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_light = - IconData(0xe8dc, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_light = - IconData(0xe8dd, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_light = - IconData(0xe8de, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_light = - IconData(0xe8df, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_light = - IconData(0xe8e0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_light = - IconData(0xe8e1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_light = - IconData(0xe8e2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_light = - IconData(0xe8e3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_light = - IconData(0xe8e4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_light = - IconData(0xe8e5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_light = - IconData(0xe8e6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_light = - IconData(0xe8e7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_light = - IconData(0xe8e8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_light = - IconData(0xe8e9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData puzzle_light = - IconData(0xe8ea, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_light = - IconData(0xe8eb, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_light = - IconData(0xe8ec, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData saha_light = - IconData(0xe8ed, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData scanning_light = - IconData(0xe8ee, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_light = - IconData(0xe8ef, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_light = - IconData(0xe8f0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_light = - IconData(0xe8f1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_light = - IconData(0xe8f2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_light = - IconData(0xe8f3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_light = - IconData(0xe8f4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_light = - IconData(0xe8f5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData star_light = - IconData(0xe8f6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stats__light = - IconData(0xe8f7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_light = - IconData(0xe8f8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sub_category_light = - IconData(0xe8f9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_light = - IconData(0xe8fa, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_light = - IconData(0xe8fb, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_light = - IconData(0xe8fc, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_light = - IconData(0xe8fd, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_light = - IconData(0xe8fe, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_light = - IconData(0xe8ff, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_light = - IconData(0xe900, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_up_regular = + IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData angle_up_solid = + IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData antenna_light = - IconData(0xe901, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData antenna_solid = - IconData(0xe902, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData arrow_up_light = + IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData arrow_up_regular = + IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData arrow_up_solid = + IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData avatar_light = + IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData avatar_regular = + IconData(0xe81b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData avatar_solid = + IconData(0xe81c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData back_light = + IconData(0xe81d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData back_regular = + IconData(0xe81e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData back_solid = + IconData(0xe81f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData bitcoin_solid = + IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData bookmark_light = + IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData bookmark_regular = + IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData bookmark_solid = + IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_day_light = + IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_day_regular = + IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_day_solid = + IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_range_light = + IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_range_regular = + IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_range_solid = + IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData camera_light = + IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData camera_regular = + IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData camera_solid = + IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData capital_market_solid = + IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData caret_down_regular = + IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData caret_down_solid = + IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData category_light = + IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData category_regular = + IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData caret_down_light = + IconData(0xe832, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData category_solid = + IconData(0xe833, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chart_light = + IconData(0xe834, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chart_regular = + IconData(0xe835, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chart_solid = + IconData(0xe836, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_light = + IconData(0xe837, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_regular = + IconData(0xe838, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_solid = + IconData(0xe839, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_light = + IconData(0xe83a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_regular = + IconData(0xe83b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_solid = + IconData(0xe83c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_light = + IconData(0xe83d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_regular = + IconData(0xe83e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_solid = + IconData(0xe83f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_double_light = + IconData(0xe840, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_double_regular = + IconData(0xe841, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_double_solid = + IconData(0xe842, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_light = + IconData(0xe843, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_regular = + IconData(0xe844, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_solid = + IconData(0xe845, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_circle_light = + IconData(0xe846, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_circle_regular = + IconData(0xe847, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData close_circle_solid = + IconData(0xe848, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData commodity_solid = + IconData(0xe849, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData currency_solid = + IconData(0xe84a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData description_regular = + IconData(0xe84b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData didvan_light = + IconData(0xe84c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData didvan_regular = + IconData(0xe84d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData didvan_solid = + IconData(0xe84e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData dislike_light = + IconData(0xe84f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData dislike_regular = + IconData(0xe850, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData dislike_solid = + IconData(0xe851, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData description_light = + IconData(0xe852, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData download_light = + IconData(0xe853, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData description_solid = + IconData(0xe854, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData download_regular = + IconData(0xe855, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData download_solid = + IconData(0xe856, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData evaluation_light = + IconData(0xe857, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData evaluation_regular = + IconData(0xe858, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData evaluation_solid = + IconData(0xe859, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData exclamation_triangle_light = + IconData(0xe85a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData exclamation_triangle_regular = + IconData(0xe85b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData exclamation_triangle_solid = + IconData(0xe85c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_close_solid = + IconData(0xe85d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_light = + IconData(0xe85e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_regular = + IconData(0xe85f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_solid = + IconData(0xe860, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_slash_light = + IconData(0xe861, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_slash_regular = + IconData(0xe862, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData eye_slash_solid = + IconData(0xe863, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData filter_light = + IconData(0xe864, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData filter_regular = + IconData(0xe865, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData filter_solid = + IconData(0xe866, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData fingerprint_light = + IconData(0xe867, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData fingerprint_regular = + IconData(0xe868, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData fingerprint_solid = + IconData(0xe869, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData font_light = + IconData(0xe86a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData font_regular = + IconData(0xe86b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData font_solid = + IconData(0xe86c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData foolad_light = + IconData(0xe86d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData foolad_regular = + IconData(0xe86e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData foolad_solid = + IconData(0xe86f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData gallery_file_light = + IconData(0xe870, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData gallery_file_regular = + IconData(0xe871, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData gallery_file_solid = + IconData(0xe872, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData google_light = + IconData(0xe873, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData google_regular = + IconData(0xe874, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData google_solid = + IconData(0xe875, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData hashtag_light = + IconData(0xe876, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData hashtag_regular = + IconData(0xe877, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData hashtag_solid = + IconData(0xe878, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData house_light = + IconData(0xe879, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData house_regular = + IconData(0xe87a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData house_solid = + IconData(0xe87b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData industry_solid = + IconData(0xe87c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData info_circle_light = + IconData(0xe87d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData info_circle_regular = + IconData(0xe87e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData info_circle_solid = + IconData(0xe87f, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData infography_regular = + IconData(0xe880, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData infography_solid = + IconData(0xe881, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData lightbulb_exclamation_light = + IconData(0xe882, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData lightbulb_exclamation_regular = + IconData(0xe883, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData lightbulb_exclamation_solid = + IconData(0xe884, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData like_light = + IconData(0xe885, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData like_regular = + IconData(0xe886, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData like_solid = + IconData(0xe887, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData loading_light = + IconData(0xe888, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData loading_regular = + IconData(0xe889, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData loading_solid = + IconData(0xe88a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData location_light = + IconData(0xe88b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData location_regular = + IconData(0xe88c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData location_solid = + IconData(0xe88d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData maximize_light = + IconData(0xe88e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData maximize_regular = + IconData(0xe88f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData maximize_solid = + IconData(0xe890, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_backward_light = + IconData(0xe891, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_backward_regular = + IconData(0xe892, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_backward_solid = + IconData(0xe893, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_forward_light = + IconData(0xe894, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_forward_regular = + IconData(0xe895, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData media_forward_solid = + IconData(0xe896, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData menu_light = + IconData(0xe897, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData menu_regular = + IconData(0xe898, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData menu_solid = + IconData(0xe899, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData message_light = + IconData(0xe89a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData message_regular = + IconData(0xe89b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData message_solid = + IconData(0xe89c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData metal_solid = + IconData(0xe89d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData mic_light = + IconData(0xe89e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData mic_regular = + IconData(0xe89f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData mic_solid = + IconData(0xe8a0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData minimize_light = + IconData(0xe8a1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData minimize_regular = + IconData(0xe8a2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData minimize_solid = + IconData(0xe8a3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData news_light = + IconData(0xe8a4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData news_regular = + IconData(0xe8a5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData news_solid = + IconData(0xe8a6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData non_tick_square_regular = + IconData(0xe8a7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData note_solid = + IconData(0xe8a8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData notification_light = + IconData(0xe8a9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData notification_regular = + IconData(0xe8aa, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData notification_solid = + IconData(0xe8ab, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_light = + IconData(0xe8ac, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_regular = + IconData(0xe8ad, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_solid = + IconData(0xe8ae, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_circle_light = + IconData(0xe8af, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_circle_regular = + IconData(0xe8b0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData pause_circle_solid = + IconData(0xe8b1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData people_solid = + IconData(0xe8b2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_light = + IconData(0xe8b3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_regular = + IconData(0xe8b4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_solid = + IconData(0xe8b5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_circle_light = + IconData(0xe8b6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_circle_regular = + IconData(0xe8b7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData play_circle_solid = + IconData(0xe8b8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData podcast_light = + IconData(0xe8b9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData podcast_regular = + IconData(0xe8ba, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData podcast_solid = + IconData(0xe8bb, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData profile_light = + IconData(0xe8bc, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData profile_regular = + IconData(0xe8bd, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData profile_solid = + IconData(0xe8be, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData puzzle_light = + IconData(0xe8bf, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData puzzle_regular = + IconData(0xe8c0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData puzzle_solid = + IconData(0xe8c1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData radar_light = + IconData(0xe8c2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData radar_regular = + IconData(0xe8c3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData radar_solid = + IconData(0xe8c4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData refresh_light = + IconData(0xe8c5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData refresh_regular = + IconData(0xe8c6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData refresh_solid = + IconData(0xe8c7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData saha_light = + IconData(0xe8c8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData saha_regular = + IconData(0xe8c9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData saha_solid = + IconData(0xe8ca, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData scanning_light = + IconData(0xe8cb, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData scanning_regular = + IconData(0xe8cc, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData scanning_solid = + IconData(0xe8cd, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData search_light = + IconData(0xe8ce, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData search_regular = + IconData(0xe8cf, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData search_solid = + IconData(0xe8d0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData send_light = + IconData(0xe8d1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData send_regular = + IconData(0xe8d2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData send_solid = + IconData(0xe8d3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData setting_light = + IconData(0xe8d4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData setting_regular = + IconData(0xe8d5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData setting_solid = + IconData(0xe8d6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sign_out_light = + IconData(0xe8d7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sign_out_regular = + IconData(0xe8d8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sign_out_solid = + IconData(0xe8d9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_enabled_light = + IconData(0xe8da, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_enabled_regular = + IconData(0xe8db, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_enabled_solid = + IconData(0xe8dc, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_timer_light = + IconData(0xe8dd, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_timer_regular = + IconData(0xe8de, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sleep_timer_solid = + IconData(0xe8df, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sort_light = + IconData(0xe8e0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sort_regular = + IconData(0xe8e1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sort_solid = + IconData(0xe8e2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData star_circle_solid = + IconData(0xe8e3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData star_light = + IconData(0xe8e4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData star_regular = + IconData(0xe8e5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData star_solid = + IconData(0xe8e6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData startup_solid = + IconData(0xe8e7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stats__light = + IconData(0xe8e8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stats__regular = + IconData(0xe8e9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stats__solid = + IconData(0xe8ea, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stop_circle_light = + IconData(0xe8eb, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stop_circle_regular = + IconData(0xe8ec, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData stop_circle_solid = + IconData(0xe8ed, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sub_category_light = + IconData(0xe8ee, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sub_category_regular = + IconData(0xe8ef, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData sub_category_solid = + IconData(0xe8f0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData support_light = + IconData(0xe8f1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData support_regular = + IconData(0xe8f2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData support_solid = + IconData(0xe8f3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData technology_solid = + IconData(0xe8f4, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData theme_light = + IconData(0xe8f5, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData theme_regular = + IconData(0xe8f6, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData theme_solid = + IconData(0xe8f7, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData tick_square_regular = + IconData(0xe8f8, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData timer_light = + IconData(0xe8f9, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData timer_regular = + IconData(0xe8fa, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData timer_solid = + IconData(0xe8fb, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData trash_light = + IconData(0xe8fc, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData trash_regular = + IconData(0xe8fd, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData trash_solid = + IconData(0xe8fe, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_light = + IconData(0xe8ff, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_regular = + IconData(0xe900, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_solid = + IconData(0xe901, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_light = + IconData(0xe902, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_regular = IconData(0xe903, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_solid = + IconData(0xe904, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_light = + IconData(0xe905, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_regular = + IconData(0xe906, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_solid = + IconData(0xe907, fontFamily: _kFontFam, fontPackage: _kFontPkg); } diff --git a/lib/main.dart b/lib/main.dart index 8ccfa8d..0293ac3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,25 +1,25 @@ -import 'dart:developer'; - +import 'package:android_intent_plus/android_intent.dart'; import 'package:bot_toast/bot_toast.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/providers/media.dart'; import 'package:didvan/providers/theme.dart'; import 'package:didvan/providers/user.dart'; import 'package:didvan/routes/route_generator.dart'; -import 'package:didvan/services/app_initalizer.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/notification/awsome/awsome_notification_handler.dart'; import 'package:didvan/services/notification/fcm/firebase_notification_handler.dart'; import 'package:didvan/views/podcasts/podcasts_state.dart'; import 'package:didvan/views/podcasts/studio_details/studio_details_state.dart'; -import 'package:didvan/services/notification/lc/local_notification_service.dart'; -import 'package:didvan/services/notification/lc/show_notification_handler.dart'; import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; +import 'package:home_widget/home_widget.dart'; import 'package:provider/provider.dart'; +final GlobalKey navigatorKey = GlobalKey(); + @pragma('vm:entry-point') Future _firebaseMessagingBackgroundHandler(RemoteMessage message) async { // If you're going to use other Firebase services in the background, such as Firestore, @@ -46,28 +46,98 @@ Future _firebaseMessagingBackgroundHandler(RemoteMessage message) async { // LocalNotificationService.initialize(); // LocalNotificationService.display(message); // LocalNotificationService.showBigPictureNotification(); - AwsomeNotificationHandler().main(); + AwsomeNotificationHandler().alarm(); AwsomeNotificationHandler().show(message); - - print("Handling a background message: ${message.messageId}"); } void main() async { try { WidgetsFlutterBinding.ensureInitialized(); FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler); + HomeWidget.registerBackgroundCallback(backgroundCallback); + // HomeWidget.registerInteractivityCallback(backgroundCallback); + HomeWidget.widgetClicked.listen((Uri? uri) {}); FirebaseNotificationHandler().initial(); } catch (e) { print(e.toString()); } + runApp(const Didvan()); } -final GlobalKey navigatorKey = GlobalKey(); +Future backgroundCallback(Uri? uri) async { + AndroidIntent intent = const AndroidIntent( + action: 'android.intent.action.RUN', + package: 'com.didvan.didvanapp', + componentName: 'com.didvan.didvanapp.MainActivity', + ); -class Didvan extends StatelessWidget { + await intent.launch(); + switch (uri!.host) { + case 'setting': + HomeWidget.saveWidgetData("r", Routes.notificationStatusStep); + + break; + + case 'rowFirst': + HomeWidget.saveWidgetData("r", Routes.generalSettings); + + break; + + case 'rowMiddle': + HomeWidget.saveWidgetData("r", Routes.generalSettings); + + break; + + case 'rowLast': + HomeWidget.saveWidgetData("r", Routes.generalSettings); + + break; + + // Add more cases for other routes as needed + } +} + +String r = ""; + +class Didvan extends StatefulWidget { const Didvan({Key? key}) : super(key: key); + @override + State createState() => _DidvanState(); +} + +class _DidvanState extends State with WidgetsBindingObserver { + @override + void initState() { + super.initState(); + + WidgetsBinding.instance?.addObserver(this); + } + + @override + void dispose() { + WidgetsBinding.instance?.removeObserver(this); + + super.dispose(); + } + + @override + void didChangeAppLifecycleState(AppLifecycleState state) async { + var v = context; + + if (state == AppLifecycleState.resumed) { + await HomeWidget.getWidgetData('r', defaultValue: "") + .then((value) { + if (value!.isNotEmpty) { + navigatorKey.currentState?.pushNamed( + value); + } + }); + HomeWidget.saveWidgetData("r", ""); + } + } + @override Widget build(BuildContext context) { return MultiProvider( @@ -92,37 +162,36 @@ class Didvan extends StatelessWidget { builder: (context, themeProvider, child) => Container( color: Theme.of(context).colorScheme.surface, child: SafeArea( - child: MaterialApp( - navigatorKey: navigatorKey, - debugShowCheckedModeBanner: false, - title: 'Didvan', - theme: LightThemeConfig.themeData.copyWith( - textTheme: LightThemeConfig.themeData.textTheme.apply( - fontFamily: themeProvider.fontFamily, - )), - darkTheme: DarkThemeConfig.themeData.copyWith( - textTheme: DarkThemeConfig.themeData.textTheme.apply( - fontFamily: themeProvider.fontFamily, - )), - color: LightThemeConfig.themeData.primaryColor, - themeMode: themeProvider.themeMode, - onGenerateRoute: (settings) => - RouteGenerator.generateRoute(settings), - builder: BotToastInit(), - //1. call BotToastInit - navigatorObservers: [BotToastNavigatorObserver()], - initialRoute: '/', - localizationsDelegates: const [ - GlobalCupertinoLocalizations.delegate, - GlobalMaterialLocalizations.delegate, - GlobalWidgetsLocalizations.delegate, - ], - supportedLocales: const [ - Locale("fa", "IR"), - ], - locale: const Locale("fa", "IR"), - ), - ), + child: MaterialApp( + navigatorKey: navigatorKey, + debugShowCheckedModeBanner: false, + title: 'Didvan', + theme: LightThemeConfig.themeData.copyWith( + textTheme: LightThemeConfig.themeData.textTheme.apply( + fontFamily: themeProvider.fontFamily, + )), + darkTheme: DarkThemeConfig.themeData.copyWith( + textTheme: DarkThemeConfig.themeData.textTheme.apply( + fontFamily: themeProvider.fontFamily, + )), + color: LightThemeConfig.themeData.primaryColor, + themeMode: themeProvider.themeMode, + onGenerateRoute: (settings) => + RouteGenerator.generateRoute(settings), + builder: BotToastInit(), + //1. call BotToastInit + navigatorObservers: [BotToastNavigatorObserver()], + initialRoute: "/", + localizationsDelegates: const [ + GlobalCupertinoLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ], + supportedLocales: const [ + Locale("fa", "IR"), + ], + locale: const Locale("fa", "IR"), + )), ), ), ); diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 1cf7211..e5b0ff8 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -56,6 +56,26 @@ import '../views/notification_time/notification_time.dart'; class RouteGenerator { static Route generateRoute(RouteSettings settings) { switch (settings.name) { + case Routes.widgetSetting: + _createRoute( + const Splash(), + ); + _createRoute( + const ProfilePage(), + ); + _createRoute( + ChangeNotifierProvider( + create: (context) => GeneralSettingsState(), + child: const GeneralSettings(), + ), + ); + + return _createRoute( + ChangeNotifierProvider( + create: (context) => CustomizeCategoryState(), + child: FavoritesStep()), + ); + case Routes.splash: return _createRoute( const Splash(), @@ -64,7 +84,7 @@ class RouteGenerator { return _createRoute( ChangeNotifierProvider( create: (context) => NotificationTimeState(), - child: NotificationTime( + child: NotificationTime( pageData: settings.arguments as Map, )), ); @@ -73,14 +93,14 @@ class RouteGenerator { return _createRoute( ChangeNotifierProvider( create: (context) => CustomizeCategoryState(), - child: FavoritesStep()), + child: FavoritesStep()), ); case Routes.notificationStatusStep: return _createRoute( ChangeNotifierProvider( create: (context) => CustomizeCategoryState(), - child: NotificationStatusStep()), + child: NotificationStatusStep()), ); case Routes.authenticaion: return _createRoute( diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 6c8db11..d9fbe43 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -28,4 +28,5 @@ class Routes { static const String favouritesStep = '/favourites-step'; static const String notificationStatusStep = '/notification-status-step'; static const String notificationTime = '/notification-time'; + static const String widgetSetting = '/widget-setting'; } diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index ba523e6..287d6b8 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -43,11 +43,11 @@ class RequestService { }) { if (body != null) _requestBody = body; if (requestHeaders != null) _headers.addAll(requestHeaders); - if (useAutherization) _headers.addAll({'Authorization': 'Bearer $token'}); - // _headers.addAll({ - // 'Authorization': - // 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6NCwicm9sZUlkIjo0LCJhcHBJZCI6MCwiaWF0IjoxNzEzOTM1NzkwfQ.i-SO9tLy0M9j-_C2Wh8tdp01vtYGlDZIBFPygglHQF0' - // }); + // if (useAutherization) _headers.addAll({'Authorization': 'Bearer $token'}); + _headers.addAll({ + 'Authorization': + 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6NCwicm9sZUlkIjo0LCJhcHBJZCI6MCwiaWF0IjoxNzEzOTM1NzkwfQ.i-SO9tLy0M9j-_C2Wh8tdp01vtYGlDZIBFPygglHQF0' + }); if (body != null) _requestBody = body; } diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 37a4245..3033e82 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -197,6 +197,7 @@ class RequestHelper { '$baseUrl/$type/$id/comments/add'; static String deleteComment(int id) => '$baseUrl/comment/$id/v2'; static String reportComment(int id) => '$baseUrl/comment/$id/report'; + static String widgetNews() => '$baseUrl/user/widget'; static String _urlConcatGenerator(List> additions) { String result = ''; diff --git a/lib/services/notification/awsome/awsome_notification_handler.dart b/lib/services/notification/awsome/awsome_notification_handler.dart index e1ed2a7..ed27876 100644 --- a/lib/services/notification/awsome/awsome_notification_handler.dart +++ b/lib/services/notification/awsome/awsome_notification_handler.dart @@ -1,13 +1,15 @@ - import 'package:awesome_notifications/awesome_notifications.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; import '../../../models/notification_message.dart'; +import '../../network/request.dart'; +import '../../network/request_helper.dart'; import 'awsome_notification_controller.dart'; class AwsomeNotificationHandler { - main() async { + alarm() async { late ReceivedAction? initialAction; AwesomeNotifications().initialize( @@ -83,6 +85,11 @@ class AwsomeNotificationHandler { case "3": await showNotificationTypeEmoji(notificationMessage); + break; + + case "4": + await showNotificationScheduled(notificationMessage); + break; } } @@ -146,4 +153,49 @@ class AwsomeNotificationHandler { 'largeImage': 'path/to/largeImage.png', // Path to large image })); } + + Future _getTime() async { + final service = RequestService( + RequestHelper.notificationTime(), + ); + await service.httpGet(); + if (service.isSuccess) { + final time = service.data('time'); + DateFormat format = DateFormat("HH:mm"); + DateTime dateTime = format.parse(time); + DateTime result = DateTime.now() + .copyWith(hour: dateTime.hour, minute: dateTime.minute); + return result; + } else { + return DateTime.now(); + } + } + + showNotificationScheduled(NotificationMessage message) async { + DateTime time = await _getTime(); + AwesomeNotifications().createNotification( + content: NotificationContent( + id: DateTime.now().millisecondsSinceEpoch ~/ 1000, + channelKey: 'alerts', + title: 'Emojis are awes' + 'ome too! ${Emojis.animals_lady_beetle}${Emojis.activites_balloon}${Emojis.emotion_red_heart}', + body: + 'Simple body with a bunch of Emojis! ${Emojis.transport_police_car} ${Emojis.animals_dog} ${Emojis.flag_UnitedStates} ${Emojis.person_baby}', + largeIcon: + 'https://cdn.britannica.com/72/232772-050-4E3D86CC/mind-blown-emoji-head-exploding-emoticon.jpg', + notificationLayout: NotificationLayout.BigPicture, + wakeUpScreen: true, + category: NotificationCategory.Alarm, + payload: { + 'title': 'Notification Title', + 'body': 'Notification Body', + 'image': 'path/to/smallImage.png', // Path to small image + 'largeImage': 'path/to/largeImage.png', // Path to large image + }), + schedule: NotificationCalendar( + hour: time.hour, + minute: time.minute, + // timezone: await AwesomeNotifications().getLocalTimeZoneIdentifier() + )); + } } diff --git a/lib/services/notification/fcm/firebase_notification_handler.dart b/lib/services/notification/fcm/firebase_notification_handler.dart index 8462dc9..da9e641 100644 --- a/lib/services/notification/fcm/firebase_notification_handler.dart +++ b/lib/services/notification/fcm/firebase_notification_handler.dart @@ -96,7 +96,7 @@ class FirebaseNotificationHandler { // LocalNotificationService.initialize(); // LocalNotificationService.showBigPictureNotification(); // LocalNotificationService.display(message); - AwsomeNotificationHandler().main(); + AwsomeNotificationHandler().alarm(); AwsomeNotificationHandler().show(message); } }); diff --git a/lib/views/home/home.dart b/lib/views/home/home.dart index 330a153..96f080d 100644 --- a/lib/views/home/home.dart +++ b/lib/views/home/home.dart @@ -2,9 +2,12 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/models/widget_response.dart'; import 'package:didvan/providers/theme.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/views/home/bookmarks/bookmarks.dart'; import 'package:didvan/views/home/categories/categories_page.dart'; @@ -17,6 +20,8 @@ import 'package:didvan/views/widgets/ink_wrapper.dart'; import 'package:didvan/views/widgets/logo_app_bar.dart'; import 'package:didvan/views/widgets/didvan/bnb.dart'; import 'package:flutter/material.dart'; +import 'package:home_widget/home_widget.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; import 'package:provider/provider.dart'; class Home extends StatefulWidget { @@ -26,7 +31,8 @@ class Home extends StatefulWidget { State createState() => _HomeState(); } -class _HomeState extends State with SingleTickerProviderStateMixin { +class _HomeState extends State + with SingleTickerProviderStateMixin, WidgetsBindingObserver { late final TabController _tabController; @override @@ -49,10 +55,47 @@ class _HomeState extends State with SingleTickerProviderStateMixin { super.initState(); } - + + Future _fetchWidget() async { + final service = RequestService( + RequestHelper.widgetNews(), + ); + await service.httpGet(); + List responseList = []; + if (service.isSuccess) { + final favourites = service.data('content'); + HomeWidget.saveWidgetData("token", + "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6NCwicm9sZUlkIjo0LCJhcHBJZCI6MCwiaWF0IjoxNzEzOTM1NzkwfQ.i-SO9tLy0M9j-_C2Wh8tdp01vtYGlDZIBFPygglHQF0"); + for (var i = 0; i < favourites.length; i++) { + HomeWidget.saveWidgetData( + "id${i + 1}", WidgetResponse.fromJson(favourites[i]).id.toString()); + HomeWidget.saveWidgetData("title${i + 1}", + WidgetResponse.fromJson(favourites[i]).title.toString()); + HomeWidget.saveWidgetData( + "createdAt${i + 1}", + DateTime.parse( + WidgetResponse.fromJson(favourites[i]).createdAt.toString()) + .toPersianDateStr()); + HomeWidget.saveWidgetData("type${i + 1}", + WidgetResponse.fromJson(favourites[i]).type.toString()); + HomeWidget.saveWidgetData("link${i + 1}", + WidgetResponse.fromJson(favourites[i]).link.toString()); + HomeWidget.saveWidgetData("category${i + 1}", + WidgetResponse.fromJson(favourites[i]).category.toString()); + HomeWidget.saveWidgetData("image${i + 1}", + WidgetResponse.fromJson(favourites[i]).image.toString()); + } + + HomeWidget.updateWidget( + androidName: "FavWidget", + ); + } + } @override Widget build(BuildContext context) { + _fetchWidget(); + return Scaffold( appBar: const LogoAppBar(), body: Consumer( diff --git a/lib/views/splash/splash.dart b/lib/views/splash/splash.dart index 0fb14c1..f14a573 100644 --- a/lib/views/splash/splash.dart +++ b/lib/views/splash/splash.dart @@ -89,6 +89,7 @@ class _SplashState extends State { Future _initialize() async { try { + var v = navigatorKey.currentContext; ActionSheetUtils.context = navigatorKey.currentContext!; if (kIsWeb) { html.window.onBeforeUnload.listen((event) { diff --git a/pubspec.lock b/pubspec.lock index 2654060..d2f20dc 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -9,6 +9,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.33" + android_intent_plus: + dependency: "direct main" + description: + name: android_intent_plus + sha256: "2bfdbee8d65e7c26f88b66f0a91f2863da4d3596d8a658b4162c8de5cf04b074" + url: "https://pub.dev" + source: hosted + version: "5.0.2" animated_custom_dropdown: dependency: "direct main" description: @@ -510,6 +518,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.23.8" + get: + dependency: "direct main" + description: + name: get + sha256: e4e7335ede17452b391ed3b2ede016545706c01a02292a6c97619705e7d2a85e + url: "https://pub.dev" + source: hosted + version: "4.6.6" graphs: dependency: transitive description: @@ -518,6 +534,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.1" + home_widget: + dependency: "direct main" + description: + name: home_widget + sha256: "29565bfee4b32eaf9e7e8b998d504618b779a74b2b1ac62dd4dac7468e66f1a3" + url: "https://pub.dev" + source: hosted + version: "0.5.0" html: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 15212d6..f488f96 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -81,6 +81,9 @@ dependencies: flutter_local_notifications: ^17.1.2 awesome_notifications_core: ^0.9.0 awesome_notifications: any + home_widget: ^0.5.0 + android_intent_plus: ^5.0.2 + get: ^4.6.6 dev_dependencies: flutter_test: