Compare commits
72 Commits
6bbc75fa94
...
develop
| Author | SHA1 | Date | |
|---|---|---|---|
| a52817231e | |||
| f6933b6529 | |||
| e4243e53ac | |||
| 0aead45191 | |||
| dacefd321b | |||
| 92a9a7358e | |||
| 174e6ac0b7 | |||
| c9eaed782a | |||
| 567184bcf9 | |||
| 541d6ef164 | |||
| 3469d02033 | |||
| 699aec8ab5 | |||
| 7a3a022ecd | |||
| 9d8a99df7c | |||
| a47e52e8e7 | |||
| a1fd21de04 | |||
| b3d8586c04 | |||
| 0409c5463f | |||
| 7a3b69fade | |||
| df275c0108 | |||
| 0525453d48 | |||
| 4e8b2f34f9 | |||
| bc6a069c90 | |||
| bfa0b0f5c0 | |||
| 274b77f705 | |||
|
|
c7ea80bea9 | ||
| 1c787fdc4d | |||
| a689cf4fef | |||
| 8f92ab06d9 | |||
| b68bec9ebd | |||
| 81f65750b7 | |||
| 7b7ab2e82e | |||
| a460d2b296 | |||
| 33dd6c4c69 | |||
| 06c27d6b50 | |||
| 7dea44d1e8 | |||
| 5f27956035 | |||
| 32799f648c | |||
| 859b85ab2c | |||
| bd1101c348 | |||
| f29c84d05c | |||
| 7dbd6038f3 | |||
| 877633f4de | |||
| 22d3d18a17 | |||
| d65e61c297 | |||
| 467b0e0dd8 | |||
| 25a6ef37fa | |||
| 34763ace4a | |||
| 590a70c623 | |||
| 9b58412ca7 | |||
| a6c16e41c2 | |||
| 117434a5e3 | |||
| e4582eaac5 | |||
| 430d5b8dc7 | |||
| 9177c30d6e | |||
| 344f8f6d2c | |||
| 46971a8d46 | |||
| f330ef3f56 | |||
| 85f9988453 | |||
| f3de0bc165 | |||
| 421ee9179d | |||
| 0a66858d93 | |||
| 49428680de | |||
| 0c676dc3d6 | |||
| c702b610c5 | |||
| 5938c6b3c3 | |||
| 8000475c1f | |||
| da772f17cc | |||
| c44b0464a4 | |||
| 9d0cf8e313 | |||
| f0009dad88 | |||
| 905206f242 |
@@ -28,13 +28,13 @@ android {
|
|||||||
ndkVersion "27.0.12077973"
|
ndkVersion "27.0.12077973"
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
coreLibraryDesugaringEnabled true
|
coreLibraryDesugaringEnabled true
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
|
||||||
}
|
}
|
||||||
|
|
||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
jvmTarget = '1.8'
|
jvmTarget = '17'
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceSets {
|
sourceSets {
|
||||||
@@ -57,9 +57,6 @@ android {
|
|||||||
signingConfig signingConfigs.debug
|
signingConfig signingConfigs.debug
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
buildFeatures {
|
|
||||||
viewBinding true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
flutter {
|
flutter {
|
||||||
@@ -68,5 +65,5 @@ flutter {
|
|||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'com.android.support:multidex:2.0.1'
|
implementation 'com.android.support:multidex:2.0.1'
|
||||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
|
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.4'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,73 +1,45 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<manifest
|
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Required to query activities that can process text, see:
|
|
||||||
https://developer.android.com/training/package-visibility?hl=en and
|
|
||||||
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
|
||||||
|
|
||||||
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin.
|
|
||||||
-->
|
|
||||||
<queries>
|
|
||||||
<intent>
|
|
||||||
<action android:name="android.intent.action.PROCESS_TEXT" />
|
|
||||||
|
|
||||||
<data android:mimeType="text/plain" />
|
|
||||||
</intent>
|
|
||||||
</queries>
|
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
|
||||||
|
|
||||||
<application
|
<application
|
||||||
tools:replace="android:label"
|
android:label="Marianum Fulda"
|
||||||
android:name="${applicationName}"
|
android:name="${applicationName}"
|
||||||
android:icon="@mipmap/ic_launcher"
|
android:icon="@mipmap/ic_launcher">
|
||||||
android:label="Marianum Fulda">
|
|
||||||
<receiver
|
|
||||||
android:name=".TimetableWidget"
|
|
||||||
android:exported="false">
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
|
|
||||||
</intent-filter>
|
|
||||||
|
|
||||||
<meta-data
|
|
||||||
android:name="android.appwidget.provider"
|
|
||||||
android:resource="@xml/timetable_widget_info" />
|
|
||||||
</receiver>
|
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:hardwareAccelerated="true"
|
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:theme="@style/LaunchTheme"
|
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">
|
||||||
|
<!-- Specifies an Android theme to apply to this Activity as soon as
|
||||||
<!--
|
|
||||||
Specifies an Android theme to apply to this Activity as soon as
|
|
||||||
the Android process has started. This theme is visible to the user
|
the Android process has started. This theme is visible to the user
|
||||||
while the Flutter UI initializes. After that, this theme continues
|
while the Flutter UI initializes. After that, this theme continues
|
||||||
to determine the Window background behind the Flutter UI.
|
to determine the Window background behind the Flutter UI. -->
|
||||||
-->
|
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="io.flutter.embedding.android.NormalTheme"
|
android:name="io.flutter.embedding.android.NormalTheme"
|
||||||
android:resource="@style/NormalTheme" />
|
android:resource="@style/NormalTheme"
|
||||||
|
/>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN"/>
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER"/>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
<!--
|
<!-- Don't delete the meta-data below.
|
||||||
Don't delete the meta-data below.
|
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
|
||||||
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java
|
|
||||||
-->
|
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="flutterEmbedding"
|
android:name="flutterEmbedding"
|
||||||
android:value="2" />
|
android:value="2" />
|
||||||
</application>
|
</application>
|
||||||
</manifest>
|
<!-- Required to query activities that can process text, see:
|
||||||
|
https://developer.android.com/training/package-visibility?hl=en and
|
||||||
|
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
||||||
|
|
||||||
|
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
|
||||||
|
<queries>
|
||||||
|
<intent>
|
||||||
|
<action android:name="android.intent.action.PROCESS_TEXT"/>
|
||||||
|
<data android:mimeType="text/plain"/>
|
||||||
|
</intent>
|
||||||
|
</queries>
|
||||||
|
<uses-permission android:name="android.permission.INTERNET"/>
|
||||||
|
</manifest>
|
||||||
|
|||||||
@@ -1,39 +0,0 @@
|
|||||||
package eu.mhsl.marianum.mobile.client
|
|
||||||
|
|
||||||
import android.app.PendingIntent
|
|
||||||
import android.appwidget.AppWidgetManager
|
|
||||||
import android.appwidget.AppWidgetProvider
|
|
||||||
import android.content.Context
|
|
||||||
import android.graphics.Bitmap
|
|
||||||
import android.graphics.BitmapFactory
|
|
||||||
import android.widget.RemoteViews
|
|
||||||
|
|
||||||
import es.antonborri.home_widget.HomeWidgetPlugin
|
|
||||||
import android.util.Base64
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implementation of App Widget functionality.
|
|
||||||
*/
|
|
||||||
class TimetableWidget : AppWidgetProvider() {
|
|
||||||
override fun onUpdate(
|
|
||||||
context: Context,
|
|
||||||
appWidgetManager: AppWidgetManager,
|
|
||||||
appWidgetIds: IntArray,
|
|
||||||
) {
|
|
||||||
for (appWidgetId in appWidgetIds) {
|
|
||||||
val widgetData = HomeWidgetPlugin.getData(context)
|
|
||||||
val views = RemoteViews(context.packageName, R.layout.timetable_widget).apply {
|
|
||||||
val imageBase64 = widgetData.getString("screen", null) ?: return@apply
|
|
||||||
val imageBytes = Base64.decode(imageBase64, Base64.DEFAULT);
|
|
||||||
val imageBitmap: Bitmap = BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.size)
|
|
||||||
setImageViewBitmap(R.id.widget_image, imageBitmap)
|
|
||||||
}
|
|
||||||
|
|
||||||
val launchIntent = context.packageManager.getLaunchIntentForPackage(context.packageName)
|
|
||||||
val pendingIntent = PendingIntent.getActivity(context, 0, launchIntent, PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE)
|
|
||||||
views.setOnClickPendingIntent(R.id.background, pendingIntent)
|
|
||||||
|
|
||||||
appWidgetManager.updateAppWidget(appWidgetId, views)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 98 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 48 KiB |
@@ -1,10 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?><!--
|
|
||||||
Background for widgets to make the rounded corners based on the
|
|
||||||
appWidgetRadius attribute value
|
|
||||||
-->
|
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:shape="rectangle">
|
|
||||||
|
|
||||||
<corners android:radius="?attr/appWidgetRadius" />
|
|
||||||
<solid android:color="?android:attr/colorBackground" />
|
|
||||||
</shape>
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?><!--
|
|
||||||
Background for views inside widgets to make the rounded corners based on the
|
|
||||||
appWidgetInnerRadius attribute value
|
|
||||||
-->
|
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:shape="rectangle">
|
|
||||||
|
|
||||||
<corners android:radius="?attr/appWidgetInnerRadius" />
|
|
||||||
<solid android:color="?android:attr/colorAccent" />
|
|
||||||
</shape>
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:id="@+id/background"
|
|
||||||
style="@style/Widget.Android.AppWidget.Container"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@android:color/transparent"
|
|
||||||
android:padding="0dp"
|
|
||||||
android:theme="@style/Theme.Android.AppWidgetContainer">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/widget_image"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:layout_alignParentLeft="true"
|
|
||||||
android:layout_marginLeft="0dp"
|
|
||||||
android:layout_marginTop="0dp"
|
|
||||||
android:layout_marginBottom="0dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:adjustViewBounds="false"
|
|
||||||
android:background="@android:color/transparent"
|
|
||||||
android:scaleType="fitCenter"
|
|
||||||
android:src="@drawable/timetable_widget_default"
|
|
||||||
android:visibility="visible"
|
|
||||||
tools:visibility="visible" />
|
|
||||||
</RelativeLayout>
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<!--
|
|
||||||
Having themes.xml for night-v31 because of the priority order of the resource qualifiers.
|
|
||||||
-->
|
|
||||||
<style name="Theme.Android.AppWidgetContainerParent" parent="@android:style/Theme.DeviceDefault.DayNight">
|
|
||||||
<item name="appWidgetRadius">@android:dimen/system_app_widget_background_radius</item>
|
|
||||||
<item name="appWidgetInnerRadius">@android:dimen/system_app_widget_inner_radius</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
<resources>
|
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.Container" parent="android:Widget">
|
|
||||||
<item name="android:id">@android:id/background</item>
|
|
||||||
<item name="android:padding">?attr/appWidgetPadding</item>
|
|
||||||
<item name="android:background">@drawable/app_widget_background</item>
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.InnerView" parent="android:Widget">
|
|
||||||
<item name="android:padding">?attr/appWidgetPadding</item>
|
|
||||||
<item name="android:background">@drawable/app_widget_inner_view_background</item>
|
|
||||||
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
@@ -18,18 +18,4 @@
|
|||||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||||
<item name="android:windowBackground">?android:colorBackground</item>
|
<item name="android:windowBackground">?android:colorBackground</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.Container" parent="android:Widget">
|
|
||||||
<item name="android:id">@android:id/background</item>
|
|
||||||
<item name="android:padding">?attr/appWidgetPadding</item>
|
|
||||||
<item name="android:background">@drawable/app_widget_background</item>
|
|
||||||
<item name="android:clipToOutline">true</item>
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.InnerView" parent="android:Widget">
|
|
||||||
<item name="android:padding">?attr/appWidgetPadding</item>
|
|
||||||
<item name="android:background">@drawable/app_widget_inner_view_background</item>
|
|
||||||
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
|
||||||
<item name="android:clipToOutline">true</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<!--
|
|
||||||
Having themes.xml for v31 variant because @android:dimen/system_app_widget_background_radius
|
|
||||||
and @android:dimen/system_app_widget_internal_padding requires API level 31
|
|
||||||
-->
|
|
||||||
<style name="Theme.Android.AppWidgetContainerParent" parent="@android:style/Theme.DeviceDefault.DayNight">
|
|
||||||
<item name="appWidgetRadius">@android:dimen/system_app_widget_background_radius</item>
|
|
||||||
<item name="appWidgetInnerRadius">@android:dimen/system_app_widget_inner_radius</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
<resources>
|
|
||||||
<declare-styleable name="AppWidgetAttrs">
|
|
||||||
<attr name="appWidgetPadding" format="dimension" />
|
|
||||||
<attr name="appWidgetInnerRadius" format="dimension" />
|
|
||||||
<attr name="appWidgetRadius" format="dimension" />
|
|
||||||
</declare-styleable>
|
|
||||||
</resources>
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
<resources>
|
|
||||||
<color name="light_blue_50">#FFE1F5FE</color>
|
|
||||||
<color name="light_blue_200">#FF81D4FA</color>
|
|
||||||
<color name="light_blue_600">#FF039BE5</color>
|
|
||||||
<color name="light_blue_900">#FF01579B</color>
|
|
||||||
</resources>
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Refer to App Widget Documentation for margin information
|
|
||||||
http://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout
|
|
||||||
-->
|
|
||||||
<dimen name="widget_margin">0dp</dimen>
|
|
||||||
|
|
||||||
</resources>
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<string name="appwidget_text">Marianum Vertretungsplan</string>
|
|
||||||
<string name="add_widget">Hinzufügen</string>
|
|
||||||
<string name="app_widget_description">Übersicht zum Vertretungsplan</string>
|
|
||||||
</resources>
|
|
||||||
@@ -19,14 +19,4 @@
|
|||||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||||
<item name="android:windowBackground">?android:colorBackground</item>
|
<item name="android:windowBackground">?android:colorBackground</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.Container" parent="android:Widget">
|
|
||||||
<item name="android:id">@android:id/background</item>
|
|
||||||
<item name="android:background">?android:attr/colorBackground</item>
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<style name="Widget.Android.AppWidget.InnerView" parent="android:Widget">
|
|
||||||
<item name="android:background">?android:attr/colorBackground</item>
|
|
||||||
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
<resources>
|
|
||||||
|
|
||||||
<style name="Theme.Android.AppWidgetContainerParent" parent="@android:style/Theme.DeviceDefault">
|
|
||||||
<!-- Radius of the outer bound of widgets to make the rounded corners -->
|
|
||||||
<item name="appWidgetRadius">16dp</item>
|
|
||||||
<!--
|
|
||||||
Radius of the inner view's bound of widgets to make the rounded corners.
|
|
||||||
It needs to be 8dp or less than the value of appWidgetRadius
|
|
||||||
-->
|
|
||||||
<item name="appWidgetInnerRadius">8dp</item>
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<style name="Theme.Android.AppWidgetContainer" parent="Theme.Android.AppWidgetContainerParent">
|
|
||||||
<!-- Apply padding to avoid the content of the widget colliding with the rounded corners -->
|
|
||||||
<item name="appWidgetPadding">16dp</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:description="@string/app_widget_description"
|
|
||||||
android:initialKeyguardLayout="@layout/timetable_widget"
|
|
||||||
android:initialLayout="@layout/timetable_widget"
|
|
||||||
android:minWidth="220dp"
|
|
||||||
android:minHeight="294dp"
|
|
||||||
android:minResizeWidth="110dp"
|
|
||||||
android:minResizeHeight="147dp"
|
|
||||||
android:previewImage="@drawable/timetable_widget_preview"
|
|
||||||
android:previewLayout="@layout/timetable_widget"
|
|
||||||
android:resizeMode="horizontal|vertical"
|
|
||||||
android:targetCellWidth="3"
|
|
||||||
android:targetCellHeight="4"
|
|
||||||
android:updatePeriodMillis="86400000"
|
|
||||||
android:widgetCategory="home_screen" />
|
|
||||||
@@ -2,21 +2,6 @@ allprojects {
|
|||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
|
||||||
// [required] background_fetch
|
|
||||||
maven {
|
|
||||||
url "${project(':background_fetch').projectDir}/libs"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
buildscript {
|
|
||||||
repositories {
|
|
||||||
google()
|
|
||||||
mavenCentral()
|
|
||||||
}
|
|
||||||
dependencies {
|
|
||||||
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.10'
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip
|
||||||
networkTimeout=10000
|
networkTimeout=10000
|
||||||
validateDistributionUrl=true
|
validateDistributionUrl=true
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
|
|||||||
@@ -19,8 +19,9 @@ pluginManagement {
|
|||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||||
id "com.android.application" version '8.7.3' apply false
|
id "com.android.application" version "8.9.1" apply false
|
||||||
id "org.jetbrains.kotlin.android" version "1.8.10" apply false
|
id "com.android.library" version "8.9.1" apply false
|
||||||
|
id "org.jetbrains.kotlin.android" version "2.1.10" apply false
|
||||||
}
|
}
|
||||||
|
|
||||||
include ":app"
|
include ":app"
|
||||||
|
|||||||
29
assets/ca/lets-encrypt-r13.pem
Normal file
29
assets/ca/lets-encrypt-r13.pem
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIFBTCCAu2gAwIBAgIQWgDyEtjUtIDzkkFX6imDBTANBgkqhkiG9w0BAQsFADBP
|
||||||
|
MQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFy
|
||||||
|
Y2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMTAeFw0yNDAzMTMwMDAwMDBa
|
||||||
|
Fw0yNzAzMTIyMzU5NTlaMDMxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBF
|
||||||
|
bmNyeXB0MQwwCgYDVQQDEwNSMTMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
|
||||||
|
AoIBAQClZ3CN0FaBZBUXYc25BtStGZCMJlA3mBZjklTb2cyEBZPs0+wIG6BgUUNI
|
||||||
|
fSvHSJaetC3ancgnO1ehn6vw1g7UDjDKb5ux0daknTI+WE41b0VYaHEX/D7YXYKg
|
||||||
|
L7JRbLAaXbhZzjVlyIuhrxA3/+OcXcJJFzT/jCuLjfC8cSyTDB0FxLrHzarJXnzR
|
||||||
|
yQH3nAP2/Apd9Np75tt2QnDr9E0i2gB3b9bJXxf92nUupVcM9upctuBzpWjPoXTi
|
||||||
|
dYJ+EJ/B9aLrAek4sQpEzNPCifVJNYIKNLMc6YjCR06CDgo28EdPivEpBHXazeGa
|
||||||
|
XP9enZiVuppD0EqiFwUBBDDTMrOPAgMBAAGjgfgwgfUwDgYDVR0PAQH/BAQDAgGG
|
||||||
|
MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATASBgNVHRMBAf8ECDAGAQH/
|
||||||
|
AgEAMB0GA1UdDgQWBBTnq58PLDOgU9NeT3jIsoQOO9aSMzAfBgNVHSMEGDAWgBR5
|
||||||
|
tFnme7bl5AFzgAiIyBpY9umbbjAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAKG
|
||||||
|
Fmh0dHA6Ly94MS5pLmxlbmNyLm9yZy8wEwYDVR0gBAwwCjAIBgZngQwBAgEwJwYD
|
||||||
|
VR0fBCAwHjAcoBqgGIYWaHR0cDovL3gxLmMubGVuY3Iub3JnLzANBgkqhkiG9w0B
|
||||||
|
AQsFAAOCAgEAUTdYUqEimzW7TbrOypLqCfL7VOwYf/Q79OH5cHLCZeggfQhDconl
|
||||||
|
k7Kgh8b0vi+/XuWu7CN8n/UPeg1vo3G+taXirrytthQinAHGwc/UdbOygJa9zuBc
|
||||||
|
VyqoH3CXTXDInT+8a+c3aEVMJ2St+pSn4ed+WkDp8ijsijvEyFwE47hulW0Ltzjg
|
||||||
|
9fOV5Pmrg/zxWbRuL+k0DBDHEJennCsAen7c35Pmx7jpmJ/HtgRhcnz0yjSBvyIw
|
||||||
|
6L1QIupkCv2SBODT/xDD3gfQQyKv6roV4G2EhfEyAsWpmojxjCUCGiyg97FvDtm/
|
||||||
|
NK2LSc9lybKxB73I2+P2G3CaWpvvpAiHCVu30jW8GCxKdfhsXtnIy2imskQqVZ2m
|
||||||
|
0Pmxobb28Tucr7xBK7CtwvPrb79os7u2XP3O5f9b/H66GNyRrglRXlrYjI1oGYL/
|
||||||
|
f4I1n/Sgusda6WvA6C190kxjU15Y12mHU4+BxyR9cx2hhGS9fAjMZKJss28qxvz6
|
||||||
|
Axu4CaDmRNZpK/pQrXF17yXCXkmEWgvSOEZy6Z9pcbLIVEGckV/iVeq0AOo2pkg9
|
||||||
|
p4QRIy0tK2diRENLSF2KysFwbY6B26BFeFs3v1sYVRhFW9nLkOrQVporCS0KyZmf
|
||||||
|
wVD89qSTlnctLcZnIavjKsKUu1nA1iU0yYMdYepKR7lWbnwhdx3ewok=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
@@ -1 +1,4 @@
|
|||||||
extensions:
|
extensions:
|
||||||
|
- hive_ce: true
|
||||||
|
- shared_preferences: true
|
||||||
|
- provider: true
|
||||||
9
flutter_launcher_icons.yaml
Normal file
9
flutter_launcher_icons.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
flutter_launcher_icons:
|
||||||
|
android: true
|
||||||
|
ios: true
|
||||||
|
remove_alpha_ios: true
|
||||||
|
image_path_android: "assets/logo/icon/ic_launcher.png"
|
||||||
|
image_path_ios: "assets/logo/icon/1024.png"
|
||||||
|
adaptive_icon_background: "assets/logo/icon/ic_launcher_adaptive_back.png" # only available for Android 8.0 devices and above
|
||||||
|
adaptive_icon_foreground: "assets/logo/icon/ic_launcher_adaptive_fore.png" # only available for Android 8.0 devices and above
|
||||||
|
min_sdk_android: 16 # android min sdk min:16, default 21
|
||||||
BIN
ios/.DS_Store
vendored
BIN
ios/.DS_Store
vendored
Binary file not shown.
@@ -21,6 +21,6 @@
|
|||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>1.0</string>
|
<string>1.0</string>
|
||||||
<key>MinimumOSVersion</key>
|
<key>MinimumOSVersion</key>
|
||||||
<string>11.0</string>
|
<string>13.0</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Uncomment this line to define a global platform for your project
|
# Uncomment this line to define a global platform for your project
|
||||||
platform :ios, '11.0'
|
platform :ios, '15.0'
|
||||||
|
|
||||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||||
@@ -31,6 +31,8 @@ target 'Runner' do
|
|||||||
use_frameworks!
|
use_frameworks!
|
||||||
use_modular_headers!
|
use_modular_headers!
|
||||||
|
|
||||||
|
pod 'PhoneNumberKit', '~> 3.7.6'
|
||||||
|
|
||||||
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
|
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
|
||||||
# target 'RunnerTests' do
|
# target 'RunnerTests' do
|
||||||
# inherit! :search_paths
|
# inherit! :search_paths
|
||||||
|
|||||||
318
ios/Podfile.lock
318
ios/Podfile.lock
@@ -1,185 +1,190 @@
|
|||||||
PODS:
|
PODS:
|
||||||
- better_open_file (0.0.1):
|
- connectivity_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- device_info_plus (0.0.1):
|
- device_info_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- DKImagePickerController/Core (4.3.4):
|
- DKImagePickerController/Core (4.3.9):
|
||||||
- DKImagePickerController/ImageDataManager
|
- DKImagePickerController/ImageDataManager
|
||||||
- DKImagePickerController/Resource
|
- DKImagePickerController/Resource
|
||||||
- DKImagePickerController/ImageDataManager (4.3.4)
|
- DKImagePickerController/ImageDataManager (4.3.9)
|
||||||
- DKImagePickerController/PhotoGallery (4.3.4):
|
- DKImagePickerController/PhotoGallery (4.3.9):
|
||||||
- DKImagePickerController/Core
|
- DKImagePickerController/Core
|
||||||
- DKPhotoGallery
|
- DKPhotoGallery
|
||||||
- DKImagePickerController/Resource (4.3.4)
|
- DKImagePickerController/Resource (4.3.9)
|
||||||
- DKPhotoGallery (0.0.17):
|
- DKPhotoGallery (0.0.19):
|
||||||
- DKPhotoGallery/Core (= 0.0.17)
|
- DKPhotoGallery/Core (= 0.0.19)
|
||||||
- DKPhotoGallery/Model (= 0.0.17)
|
- DKPhotoGallery/Model (= 0.0.19)
|
||||||
- DKPhotoGallery/Preview (= 0.0.17)
|
- DKPhotoGallery/Preview (= 0.0.19)
|
||||||
- DKPhotoGallery/Resource (= 0.0.17)
|
- DKPhotoGallery/Resource (= 0.0.19)
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Core (0.0.17):
|
- DKPhotoGallery/Core (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Preview
|
- DKPhotoGallery/Preview
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Model (0.0.17):
|
- DKPhotoGallery/Model (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Preview (0.0.17):
|
- DKPhotoGallery/Preview (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Resource
|
- DKPhotoGallery/Resource
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Resource (0.0.17):
|
- DKPhotoGallery/Resource (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- fast_rsa (0.6.0):
|
- emoji_picker_flutter (0.0.1):
|
||||||
|
- Flutter
|
||||||
|
- fast_rsa (0.7.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- file_picker (0.0.1):
|
- file_picker (0.0.1):
|
||||||
- DKImagePickerController/PhotoGallery
|
- DKImagePickerController/PhotoGallery
|
||||||
- Flutter
|
- Flutter
|
||||||
- Firebase/CoreOnly (10.12.0):
|
- Firebase/CoreOnly (12.4.0):
|
||||||
- FirebaseCore (= 10.12.0)
|
- FirebaseCore (~> 12.4.0)
|
||||||
- Firebase/InAppMessaging (10.12.0):
|
- Firebase/InAppMessaging (12.4.0):
|
||||||
- Firebase/CoreOnly
|
- Firebase/CoreOnly
|
||||||
- FirebaseInAppMessaging (~> 10.12.0-beta)
|
- FirebaseInAppMessaging (~> 12.4.0-beta)
|
||||||
- Firebase/Messaging (10.12.0):
|
- Firebase/Messaging (12.4.0):
|
||||||
- Firebase/CoreOnly
|
- Firebase/CoreOnly
|
||||||
- FirebaseMessaging (~> 10.12.0)
|
- FirebaseMessaging (~> 12.4.0)
|
||||||
- firebase_core (2.15.1):
|
- firebase_core (4.2.1):
|
||||||
- Firebase/CoreOnly (= 10.12.0)
|
- Firebase/CoreOnly (= 12.4.0)
|
||||||
- Flutter
|
- Flutter
|
||||||
- firebase_in_app_messaging (0.7.3-5):
|
- firebase_in_app_messaging (0.9.0-4):
|
||||||
- Firebase/InAppMessaging (= 10.12.0)
|
- Firebase/InAppMessaging (= 12.4.0)
|
||||||
- firebase_core
|
- firebase_core
|
||||||
- Flutter
|
- Flutter
|
||||||
- firebase_messaging (14.6.6):
|
- firebase_messaging (16.0.4):
|
||||||
- Firebase/Messaging (= 10.12.0)
|
- Firebase/Messaging (= 12.4.0)
|
||||||
- firebase_core
|
- firebase_core
|
||||||
- Flutter
|
- Flutter
|
||||||
- FirebaseABTesting (10.13.0):
|
- FirebaseABTesting (12.4.0):
|
||||||
- FirebaseCore (~> 10.0)
|
- FirebaseCore (~> 12.4.0)
|
||||||
- FirebaseCore (10.12.0):
|
- FirebaseCore (12.4.0):
|
||||||
- FirebaseCoreInternal (~> 10.0)
|
- FirebaseCoreInternal (~> 12.4.0)
|
||||||
- GoogleUtilities/Environment (~> 7.8)
|
- GoogleUtilities/Environment (~> 8.1)
|
||||||
- GoogleUtilities/Logger (~> 7.8)
|
- GoogleUtilities/Logger (~> 8.1)
|
||||||
- FirebaseCoreInternal (10.13.0):
|
- FirebaseCoreInternal (12.4.0):
|
||||||
- "GoogleUtilities/NSData+zlib (~> 7.8)"
|
- "GoogleUtilities/NSData+zlib (~> 8.1)"
|
||||||
- FirebaseInAppMessaging (10.12.0-beta):
|
- FirebaseInAppMessaging (12.4.0-beta):
|
||||||
- FirebaseABTesting (~> 10.0)
|
- FirebaseABTesting (~> 12.4.0)
|
||||||
- FirebaseCore (~> 10.0)
|
- FirebaseCore (~> 12.4.0)
|
||||||
- FirebaseInstallations (~> 10.0)
|
- FirebaseInstallations (~> 12.4.0)
|
||||||
- GoogleUtilities/Environment (~> 7.8)
|
- GoogleUtilities/Environment (~> 8.1)
|
||||||
- nanopb (< 2.30910.0, >= 2.30908.0)
|
- GoogleUtilities/UserDefaults (~> 8.1)
|
||||||
- FirebaseInstallations (10.13.0):
|
- nanopb (~> 3.30910.0)
|
||||||
- FirebaseCore (~> 10.0)
|
- FirebaseInstallations (12.4.0):
|
||||||
- GoogleUtilities/Environment (~> 7.8)
|
- FirebaseCore (~> 12.4.0)
|
||||||
- GoogleUtilities/UserDefaults (~> 7.8)
|
- GoogleUtilities/Environment (~> 8.1)
|
||||||
- PromisesObjC (~> 2.1)
|
- GoogleUtilities/UserDefaults (~> 8.1)
|
||||||
- FirebaseMessaging (10.12.0):
|
- PromisesObjC (~> 2.4)
|
||||||
- FirebaseCore (~> 10.0)
|
- FirebaseMessaging (12.4.0):
|
||||||
- FirebaseInstallations (~> 10.0)
|
- FirebaseCore (~> 12.4.0)
|
||||||
- GoogleDataTransport (~> 9.2)
|
- FirebaseInstallations (~> 12.4.0)
|
||||||
- GoogleUtilities/AppDelegateSwizzler (~> 7.8)
|
- GoogleDataTransport (~> 10.1)
|
||||||
- GoogleUtilities/Environment (~> 7.8)
|
- GoogleUtilities/AppDelegateSwizzler (~> 8.1)
|
||||||
- GoogleUtilities/Reachability (~> 7.8)
|
- GoogleUtilities/Environment (~> 8.1)
|
||||||
- GoogleUtilities/UserDefaults (~> 7.8)
|
- GoogleUtilities/Reachability (~> 8.1)
|
||||||
- nanopb (< 2.30910.0, >= 2.30908.0)
|
- GoogleUtilities/UserDefaults (~> 8.1)
|
||||||
|
- nanopb (~> 3.30910.0)
|
||||||
- Flutter (1.0.0)
|
- Flutter (1.0.0)
|
||||||
- flutter_app_badger (1.3.0):
|
- flutter_app_badge (2.0.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- flutter_local_notifications (0.0.1):
|
- flutter_local_notifications (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- flutter_native_splash (0.0.1):
|
- flutter_native_splash (2.4.3):
|
||||||
- Flutter
|
- Flutter
|
||||||
- fluttertoast (0.0.2):
|
- GoogleDataTransport (10.1.0):
|
||||||
- Flutter
|
- nanopb (~> 3.30910.0)
|
||||||
- Toast
|
- PromisesObjC (~> 2.4)
|
||||||
- FMDB (2.7.5):
|
- GoogleUtilities/AppDelegateSwizzler (8.1.0):
|
||||||
- FMDB/standard (= 2.7.5)
|
|
||||||
- FMDB/standard (2.7.5)
|
|
||||||
- GoogleDataTransport (9.2.5):
|
|
||||||
- GoogleUtilities/Environment (~> 7.7)
|
|
||||||
- nanopb (< 2.30910.0, >= 2.30908.0)
|
|
||||||
- PromisesObjC (< 3.0, >= 1.2)
|
|
||||||
- GoogleUtilities/AppDelegateSwizzler (7.11.5):
|
|
||||||
- GoogleUtilities/Environment
|
- GoogleUtilities/Environment
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/Network
|
- GoogleUtilities/Network
|
||||||
- GoogleUtilities/Environment (7.11.5):
|
- GoogleUtilities/Privacy
|
||||||
- PromisesObjC (< 3.0, >= 1.2)
|
- GoogleUtilities/Environment (8.1.0):
|
||||||
- GoogleUtilities/Logger (7.11.5):
|
- GoogleUtilities/Privacy
|
||||||
|
- GoogleUtilities/Logger (8.1.0):
|
||||||
- GoogleUtilities/Environment
|
- GoogleUtilities/Environment
|
||||||
- GoogleUtilities/Network (7.11.5):
|
- GoogleUtilities/Privacy
|
||||||
|
- GoogleUtilities/Network (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- "GoogleUtilities/NSData+zlib"
|
- "GoogleUtilities/NSData+zlib"
|
||||||
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Reachability
|
- GoogleUtilities/Reachability
|
||||||
- "GoogleUtilities/NSData+zlib (7.11.5)"
|
- "GoogleUtilities/NSData+zlib (8.1.0)":
|
||||||
- GoogleUtilities/Reachability (7.11.5):
|
- GoogleUtilities/Privacy
|
||||||
|
- GoogleUtilities/Privacy (8.1.0)
|
||||||
|
- GoogleUtilities/Reachability (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/UserDefaults (7.11.5):
|
- GoogleUtilities/Privacy
|
||||||
|
- GoogleUtilities/UserDefaults (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
|
- GoogleUtilities/Privacy
|
||||||
- image_picker_ios (0.0.1):
|
- image_picker_ios (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- libphonenumber_plugin (0.0.1):
|
- in_app_review (2.0.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- PhoneNumberKit
|
- nanopb (3.30910.0):
|
||||||
- nanopb (2.30909.0):
|
- nanopb/decode (= 3.30910.0)
|
||||||
- nanopb/decode (= 2.30909.0)
|
- nanopb/encode (= 3.30910.0)
|
||||||
- nanopb/encode (= 2.30909.0)
|
- nanopb/decode (3.30910.0)
|
||||||
- nanopb/decode (2.30909.0)
|
- nanopb/encode (3.30910.0)
|
||||||
- nanopb/encode (2.30909.0)
|
- open_filex (0.0.2):
|
||||||
- package_info (0.0.1):
|
- Flutter
|
||||||
|
- package_info_plus (0.4.5):
|
||||||
- Flutter
|
- Flutter
|
||||||
- path_provider_foundation (0.0.1):
|
- path_provider_foundation (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- PhoneNumberKit (3.6.7):
|
- PhoneNumberKit (3.7.11):
|
||||||
- PhoneNumberKit/PhoneNumberKitCore (= 3.6.7)
|
- PhoneNumberKit/PhoneNumberKitCore (= 3.7.11)
|
||||||
- PhoneNumberKit/UIKit (= 3.6.7)
|
- PhoneNumberKit/UIKit (= 3.7.11)
|
||||||
- PhoneNumberKit/PhoneNumberKitCore (3.6.7)
|
- PhoneNumberKit/PhoneNumberKitCore (3.7.11)
|
||||||
- PhoneNumberKit/UIKit (3.6.7):
|
- PhoneNumberKit/UIKit (3.7.11):
|
||||||
- PhoneNumberKit/PhoneNumberKitCore
|
- PhoneNumberKit/PhoneNumberKitCore
|
||||||
- PromisesObjC (2.3.1)
|
- PromisesObjC (2.4.0)
|
||||||
- SDWebImage (5.17.0):
|
- SDWebImage (5.21.2):
|
||||||
- SDWebImage/Core (= 5.17.0)
|
- SDWebImage/Core (= 5.21.2)
|
||||||
- SDWebImage/Core (5.17.0)
|
- SDWebImage/Core (5.21.2)
|
||||||
- share_plus (0.0.1):
|
- share_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- shared_preferences_foundation (0.0.1):
|
- shared_preferences_foundation (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- sqflite (0.0.3):
|
- sqflite_darwin (0.0.4):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FMDB (>= 2.7.5)
|
- FlutterMacOS
|
||||||
- SwiftyGif (5.4.4)
|
- SwiftyGif (5.4.5)
|
||||||
- syncfusion_flutter_pdfviewer (0.0.1):
|
- syncfusion_flutter_pdfviewer (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- Toast (4.0.0)
|
|
||||||
- url_launcher_ios (0.0.1):
|
- url_launcher_ios (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- better_open_file (from `.symlinks/plugins/better_open_file/ios`)
|
- connectivity_plus (from `.symlinks/plugins/connectivity_plus/ios`)
|
||||||
- device_info_plus (from `.symlinks/plugins/device_info_plus/ios`)
|
- device_info_plus (from `.symlinks/plugins/device_info_plus/ios`)
|
||||||
|
- emoji_picker_flutter (from `.symlinks/plugins/emoji_picker_flutter/ios`)
|
||||||
- fast_rsa (from `.symlinks/plugins/fast_rsa/ios`)
|
- fast_rsa (from `.symlinks/plugins/fast_rsa/ios`)
|
||||||
- file_picker (from `.symlinks/plugins/file_picker/ios`)
|
- file_picker (from `.symlinks/plugins/file_picker/ios`)
|
||||||
- firebase_core (from `.symlinks/plugins/firebase_core/ios`)
|
- firebase_core (from `.symlinks/plugins/firebase_core/ios`)
|
||||||
- firebase_in_app_messaging (from `.symlinks/plugins/firebase_in_app_messaging/ios`)
|
- firebase_in_app_messaging (from `.symlinks/plugins/firebase_in_app_messaging/ios`)
|
||||||
- firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`)
|
- firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`)
|
||||||
- Flutter (from `Flutter`)
|
- Flutter (from `Flutter`)
|
||||||
- flutter_app_badger (from `.symlinks/plugins/flutter_app_badger/ios`)
|
- flutter_app_badge (from `.symlinks/plugins/flutter_app_badge/ios`)
|
||||||
- flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`)
|
- flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`)
|
||||||
- flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
|
- flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
|
||||||
- fluttertoast (from `.symlinks/plugins/fluttertoast/ios`)
|
|
||||||
- image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
|
- image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
|
||||||
- libphonenumber_plugin (from `.symlinks/plugins/libphonenumber_plugin/ios`)
|
- in_app_review (from `.symlinks/plugins/in_app_review/ios`)
|
||||||
- package_info (from `.symlinks/plugins/package_info/ios`)
|
- open_filex (from `.symlinks/plugins/open_filex/ios`)
|
||||||
|
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
||||||
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
|
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
|
||||||
|
- PhoneNumberKit (~> 3.7.6)
|
||||||
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
||||||
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
|
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
|
||||||
- sqflite (from `.symlinks/plugins/sqflite/ios`)
|
- sqflite_darwin (from `.symlinks/plugins/sqflite_darwin/darwin`)
|
||||||
- syncfusion_flutter_pdfviewer (from `.symlinks/plugins/syncfusion_flutter_pdfviewer/ios`)
|
- syncfusion_flutter_pdfviewer (from `.symlinks/plugins/syncfusion_flutter_pdfviewer/ios`)
|
||||||
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
||||||
|
|
||||||
@@ -194,7 +199,6 @@ SPEC REPOS:
|
|||||||
- FirebaseInAppMessaging
|
- FirebaseInAppMessaging
|
||||||
- FirebaseInstallations
|
- FirebaseInstallations
|
||||||
- FirebaseMessaging
|
- FirebaseMessaging
|
||||||
- FMDB
|
|
||||||
- GoogleDataTransport
|
- GoogleDataTransport
|
||||||
- GoogleUtilities
|
- GoogleUtilities
|
||||||
- nanopb
|
- nanopb
|
||||||
@@ -202,13 +206,14 @@ SPEC REPOS:
|
|||||||
- PromisesObjC
|
- PromisesObjC
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- Toast
|
|
||||||
|
|
||||||
EXTERNAL SOURCES:
|
EXTERNAL SOURCES:
|
||||||
better_open_file:
|
connectivity_plus:
|
||||||
:path: ".symlinks/plugins/better_open_file/ios"
|
:path: ".symlinks/plugins/connectivity_plus/ios"
|
||||||
device_info_plus:
|
device_info_plus:
|
||||||
:path: ".symlinks/plugins/device_info_plus/ios"
|
:path: ".symlinks/plugins/device_info_plus/ios"
|
||||||
|
emoji_picker_flutter:
|
||||||
|
:path: ".symlinks/plugins/emoji_picker_flutter/ios"
|
||||||
fast_rsa:
|
fast_rsa:
|
||||||
:path: ".symlinks/plugins/fast_rsa/ios"
|
:path: ".symlinks/plugins/fast_rsa/ios"
|
||||||
file_picker:
|
file_picker:
|
||||||
@@ -221,74 +226,73 @@ EXTERNAL SOURCES:
|
|||||||
:path: ".symlinks/plugins/firebase_messaging/ios"
|
:path: ".symlinks/plugins/firebase_messaging/ios"
|
||||||
Flutter:
|
Flutter:
|
||||||
:path: Flutter
|
:path: Flutter
|
||||||
flutter_app_badger:
|
flutter_app_badge:
|
||||||
:path: ".symlinks/plugins/flutter_app_badger/ios"
|
:path: ".symlinks/plugins/flutter_app_badge/ios"
|
||||||
flutter_local_notifications:
|
flutter_local_notifications:
|
||||||
:path: ".symlinks/plugins/flutter_local_notifications/ios"
|
:path: ".symlinks/plugins/flutter_local_notifications/ios"
|
||||||
flutter_native_splash:
|
flutter_native_splash:
|
||||||
:path: ".symlinks/plugins/flutter_native_splash/ios"
|
:path: ".symlinks/plugins/flutter_native_splash/ios"
|
||||||
fluttertoast:
|
|
||||||
:path: ".symlinks/plugins/fluttertoast/ios"
|
|
||||||
image_picker_ios:
|
image_picker_ios:
|
||||||
:path: ".symlinks/plugins/image_picker_ios/ios"
|
:path: ".symlinks/plugins/image_picker_ios/ios"
|
||||||
libphonenumber_plugin:
|
in_app_review:
|
||||||
:path: ".symlinks/plugins/libphonenumber_plugin/ios"
|
:path: ".symlinks/plugins/in_app_review/ios"
|
||||||
package_info:
|
open_filex:
|
||||||
:path: ".symlinks/plugins/package_info/ios"
|
:path: ".symlinks/plugins/open_filex/ios"
|
||||||
|
package_info_plus:
|
||||||
|
:path: ".symlinks/plugins/package_info_plus/ios"
|
||||||
path_provider_foundation:
|
path_provider_foundation:
|
||||||
:path: ".symlinks/plugins/path_provider_foundation/darwin"
|
:path: ".symlinks/plugins/path_provider_foundation/darwin"
|
||||||
share_plus:
|
share_plus:
|
||||||
:path: ".symlinks/plugins/share_plus/ios"
|
:path: ".symlinks/plugins/share_plus/ios"
|
||||||
shared_preferences_foundation:
|
shared_preferences_foundation:
|
||||||
:path: ".symlinks/plugins/shared_preferences_foundation/darwin"
|
:path: ".symlinks/plugins/shared_preferences_foundation/darwin"
|
||||||
sqflite:
|
sqflite_darwin:
|
||||||
:path: ".symlinks/plugins/sqflite/ios"
|
:path: ".symlinks/plugins/sqflite_darwin/darwin"
|
||||||
syncfusion_flutter_pdfviewer:
|
syncfusion_flutter_pdfviewer:
|
||||||
:path: ".symlinks/plugins/syncfusion_flutter_pdfviewer/ios"
|
:path: ".symlinks/plugins/syncfusion_flutter_pdfviewer/ios"
|
||||||
url_launcher_ios:
|
url_launcher_ios:
|
||||||
:path: ".symlinks/plugins/url_launcher_ios/ios"
|
:path: ".symlinks/plugins/url_launcher_ios/ios"
|
||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
better_open_file: 03cf320415d4d3f46b6e00adc4a567d76c1a399d
|
connectivity_plus: cb623214f4e1f6ef8fe7403d580fdad517d2f7dd
|
||||||
device_info_plus: 7545d84d8d1b896cb16a4ff98c19f07ec4b298ea
|
device_info_plus: 21fcca2080fbcd348be798aa36c3e5ed849eefbe
|
||||||
DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac
|
DKImagePickerController: 946cec48c7873164274ecc4624d19e3da4c1ef3c
|
||||||
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
|
DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60
|
||||||
fast_rsa: f696740d492d562e76f17b0a81dfc8ec3e635374
|
emoji_picker_flutter: ece213fc274bdddefb77d502d33080dc54e616cc
|
||||||
file_picker: ce3938a0df3cc1ef404671531facef740d03f920
|
fast_rsa: fb70897d51040b094c780d5f1d7358614738b879
|
||||||
Firebase: 07150e75d142fb9399f6777fa56a187b17f833a0
|
file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be
|
||||||
firebase_core: 4a3246a02f828a01c74a2c26427037786d90f17f
|
Firebase: f07b15ae5a6ec0f93713e30b923d9970d144af3e
|
||||||
firebase_in_app_messaging: aebdbc10109a0ce44a3294f4ea57ed89ebe1d8bd
|
firebase_core: f1aafb21c14f497e5498f7ffc4dc63cbb52b2594
|
||||||
firebase_messaging: 13b378c8449cae7ec96c79570170943dd73d4738
|
firebase_in_app_messaging: 04dfc07ab81578ef83bf0c0229be258ddf287c4f
|
||||||
FirebaseABTesting: 86ac5a4fc749088bb4d55a1cbfb2c4cb42c6d5de
|
firebase_messaging: c17a29984eafce4b2997fe078bb0a9e0b06f5dde
|
||||||
FirebaseCore: f86a1394906b97ac445ae49c92552a9425831bed
|
FirebaseABTesting: c05b5ec9f1d9f21a65909525de301d375032d9a4
|
||||||
FirebaseCoreInternal: b342e37cd4f5b4454ec34308f073420e7920858e
|
FirebaseCore: bb595f3114953664e3c1dc032f008a244147cfd3
|
||||||
FirebaseInAppMessaging: dc24f50aebaf81a377f0b8abf360778f94208931
|
FirebaseCoreInternal: d7f5a043c2cd01a08103ab586587c1468047bca6
|
||||||
FirebaseInstallations: b28af1b9f997f1a799efe818c94695a3728c352f
|
FirebaseInAppMessaging: 606dd4d4d5590a3d8229f363fdebb485235985b2
|
||||||
FirebaseMessaging: bb2c4f6422a753038fe137d90ae7c1af57251316
|
FirebaseInstallations: ae9f4902cb5bf1d0c5eaa31ec1f4e5495a0714e2
|
||||||
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
|
FirebaseMessaging: d33971b7bb252745ea6cd31ab190d1a1df4b8ed5
|
||||||
flutter_app_badger: b87fc231847b03b92ce1412aa351842e7e97932f
|
Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467
|
||||||
flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743
|
flutter_app_badge: ca742dd659a157c1090ef7cd881cb78f48f3bcdf
|
||||||
flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef
|
flutter_local_notifications: a5a732f069baa862e728d839dd2ebb904737effb
|
||||||
fluttertoast: fafc4fa4d01a6a9e4f772ecd190ffa525e9e2d9c
|
flutter_native_splash: c32d145d68aeda5502d5f543ee38c192065986cf
|
||||||
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
|
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
|
||||||
GoogleDataTransport: 54dee9d48d14580407f8f5fbf2f496e92437a2f2
|
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
|
||||||
GoogleUtilities: 13e2c67ede716b8741c7989e26893d151b2b2084
|
image_picker_ios: e0ece4aa2a75771a7de3fa735d26d90817041326
|
||||||
image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5
|
in_app_review: 7dd1ea365263f834b8464673f9df72c80c17c937
|
||||||
libphonenumber_plugin: e8a7d64a6624a7c25f2c4ab0b7ead2a8e341e35e
|
nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
|
||||||
nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
|
open_filex: 432f3cd11432da3e39f47fcc0df2b1603854eff1
|
||||||
package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62
|
package_info_plus: af8e2ca6888548050f16fa2f1938db7b5a5df499
|
||||||
path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
|
path_provider_foundation: bb55f6dbba17d0dccd6737fe6f7f34fbd0376880
|
||||||
PhoneNumberKit: 43b5169526cc417398c8f13f77c97552c1c6ed76
|
PhoneNumberKit: ced55861269312a5e3bc2ef82a58d6255b1c976a
|
||||||
PromisesObjC: c50d2056b5253dadbd6c2bea79b0674bd5a52fa4
|
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
|
||||||
SDWebImage: 750adf017a315a280c60fde706ab1e552a3ae4e9
|
SDWebImage: 9f177d83116802728e122410fb25ad88f5c7608a
|
||||||
share_plus: 599aa54e4ea31d4b4c0e9c911bcc26c55e791028
|
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
|
||||||
shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
|
shared_preferences_foundation: 7036424c3d8ec98dfe75ff1667cb0cd531ec82bb
|
||||||
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
|
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0
|
||||||
SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f
|
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
||||||
syncfusion_flutter_pdfviewer: bb9998884b864cfedf72628df3503bdf57e397c0
|
syncfusion_flutter_pdfviewer: 90dc48305d2e33d4aa20681d1e98ddeda891bc14
|
||||||
Toast: 91b396c56ee72a5790816f40d3a94dd357abc196
|
url_launcher_ios: 7a95fa5b60cc718a708b8f2966718e93db0cef1b
|
||||||
url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
|
|
||||||
|
|
||||||
PODFILE CHECKSUM: 3d89a90682e2cd438911ad748b8ba5992f8b6a0e
|
PODFILE CHECKSUM: e21c9d4c7b9623c73c6784ddc132fd50a603ad93
|
||||||
|
|
||||||
COCOAPODS: 1.12.1
|
COCOAPODS: 1.16.2
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||||
|
33FDB0982EE9ABDC000B2391 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 33FDB0972EE9ABDC000B2391 /* GoogleService-Info.plist */; };
|
||||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||||
6483E4432A911EA00063B51E /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6483E4422A911EA00063B51E /* GoogleService-Info.plist */; };
|
|
||||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
||||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
||||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||||
@@ -33,10 +33,10 @@
|
|||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
||||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||||
|
33FDB0972EE9ABDC000B2391 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
||||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||||
4509EC31CB08BA9BF367AF6C /* 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 = "<group>"; };
|
4509EC31CB08BA9BF367AF6C /* 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 = "<group>"; };
|
||||||
64801C012A9112D500E8B558 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; };
|
64801C012A9112D500E8B558 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; };
|
||||||
6483E4422A911EA00063B51E /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "../../../../Downloads/GoogleService-Info.plist"; sourceTree = "<group>"; };
|
|
||||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||||
@@ -115,12 +115,12 @@
|
|||||||
97C146F01CF9000F007C117D /* Runner */ = {
|
97C146F01CF9000F007C117D /* Runner */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
33FDB0972EE9ABDC000B2391 /* GoogleService-Info.plist */,
|
||||||
64801C012A9112D500E8B558 /* Runner.entitlements */,
|
64801C012A9112D500E8B558 /* Runner.entitlements */,
|
||||||
97C146FA1CF9000F007C117D /* Main.storyboard */,
|
97C146FA1CF9000F007C117D /* Main.storyboard */,
|
||||||
97C146FD1CF9000F007C117D /* Assets.xcassets */,
|
97C146FD1CF9000F007C117D /* Assets.xcassets */,
|
||||||
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,
|
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,
|
||||||
97C147021CF9000F007C117D /* Info.plist */,
|
97C147021CF9000F007C117D /* Info.plist */,
|
||||||
6483E4422A911EA00063B51E /* GoogleService-Info.plist */,
|
|
||||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
|
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
|
||||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
|
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
|
||||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */,
|
74858FAE1ED2DC5600515810 /* AppDelegate.swift */,
|
||||||
@@ -144,6 +144,7 @@
|
|||||||
9705A1C41CF9048500538489 /* Embed Frameworks */,
|
9705A1C41CF9048500538489 /* Embed Frameworks */,
|
||||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
||||||
174B54D80220E5F588BD9737 /* [CP] Embed Pods Frameworks */,
|
174B54D80220E5F588BD9737 /* [CP] Embed Pods Frameworks */,
|
||||||
|
859FAB4E05FAC31B7B1A62D7 /* [CP] Copy Pods Resources */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -161,7 +162,7 @@
|
|||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
BuildIndependentTargetsInParallel = YES;
|
BuildIndependentTargetsInParallel = YES;
|
||||||
LastUpgradeCheck = 1430;
|
LastUpgradeCheck = 1510;
|
||||||
ORGANIZATIONNAME = "";
|
ORGANIZATIONNAME = "";
|
||||||
TargetAttributes = {
|
TargetAttributes = {
|
||||||
97C146ED1CF9000F007C117D = {
|
97C146ED1CF9000F007C117D = {
|
||||||
@@ -195,7 +196,7 @@
|
|||||||
files = (
|
files = (
|
||||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */,
|
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */,
|
||||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
|
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
|
||||||
6483E4432A911EA00063B51E /* GoogleService-Info.plist in Resources */,
|
33FDB0982EE9ABDC000B2391 /* GoogleService-Info.plist in Resources */,
|
||||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
|
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
|
||||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
|
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
|
||||||
);
|
);
|
||||||
@@ -212,10 +213,14 @@
|
|||||||
inputFileListPaths = (
|
inputFileListPaths = (
|
||||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||||
);
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
name = "[CP] Embed Pods Frameworks";
|
name = "[CP] Embed Pods Frameworks";
|
||||||
outputFileListPaths = (
|
outputFileListPaths = (
|
||||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||||
);
|
);
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = /bin/sh;
|
shellPath = /bin/sh;
|
||||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||||
@@ -237,6 +242,27 @@
|
|||||||
shellPath = /bin/sh;
|
shellPath = /bin/sh;
|
||||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||||
};
|
};
|
||||||
|
859FAB4E05FAC31B7B1A62D7 /* [CP] Copy Pods Resources */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputFileListPaths = (
|
||||||
|
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "[CP] Copy Pods Resources";
|
||||||
|
outputFileListPaths = (
|
||||||
|
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||||
|
);
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
alwaysOutOfDate = 1;
|
alwaysOutOfDate = 1;
|
||||||
@@ -349,7 +375,7 @@
|
|||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SUPPORTED_PLATFORMS = iphoneos;
|
SUPPORTED_PLATFORMS = iphoneos;
|
||||||
@@ -434,7 +460,7 @@
|
|||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = YES;
|
MTL_ENABLE_DEBUG_INFO = YES;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
@@ -483,7 +509,7 @@
|
|||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SUPPORTED_PLATFORMS = iphoneos;
|
SUPPORTED_PLATFORMS = iphoneos;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<Scheme
|
<Scheme
|
||||||
LastUpgradeVersion = "1430"
|
LastUpgradeVersion = "1510"
|
||||||
version = "1.3">
|
version = "1.3">
|
||||||
<BuildAction
|
<BuildAction
|
||||||
parallelizeBuildables = "YES"
|
parallelizeBuildables = "YES"
|
||||||
@@ -26,6 +26,7 @@
|
|||||||
buildConfiguration = "Debug"
|
buildConfiguration = "Debug"
|
||||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
|
||||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||||
<MacroExpansion>
|
<MacroExpansion>
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
@@ -43,11 +44,13 @@
|
|||||||
buildConfiguration = "Debug"
|
buildConfiguration = "Debug"
|
||||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
|
||||||
launchStyle = "0"
|
launchStyle = "0"
|
||||||
useCustomWorkingDirectory = "NO"
|
useCustomWorkingDirectory = "NO"
|
||||||
ignoresPersistentStateOnLaunch = "NO"
|
ignoresPersistentStateOnLaunch = "NO"
|
||||||
debugDocumentVersioning = "YES"
|
debugDocumentVersioning = "YES"
|
||||||
debugServiceExtension = "internal"
|
debugServiceExtension = "internal"
|
||||||
|
enableGPUValidationMode = "1"
|
||||||
allowLocationSimulation = "YES">
|
allowLocationSimulation = "YES">
|
||||||
<BuildableProductRunnable
|
<BuildableProductRunnable
|
||||||
runnableDebuggingMode = "0">
|
runnableDebuggingMode = "0">
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import UIKit
|
import UIKit
|
||||||
import Flutter
|
import Flutter
|
||||||
|
|
||||||
@UIApplicationMain
|
@main
|
||||||
@objc class AppDelegate: FlutterAppDelegate {
|
@objc class AppDelegate: FlutterAppDelegate {
|
||||||
override func application(
|
override func application(
|
||||||
_ application: UIApplication,
|
_ application: UIApplication,
|
||||||
|
|||||||
@@ -8,39 +8,42 @@ part of 'getHolidaysResponse.dart';
|
|||||||
|
|
||||||
GetHolidaysResponse _$GetHolidaysResponseFromJson(Map<String, dynamic> json) =>
|
GetHolidaysResponse _$GetHolidaysResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetHolidaysResponse(
|
GetHolidaysResponse(
|
||||||
(json['data'] as List<dynamic>)
|
(json['data'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
GetHolidaysResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) =>
|
||||||
.toList(),
|
GetHolidaysResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toList(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetHolidaysResponseToJson(
|
Map<String, dynamic> _$GetHolidaysResponseToJson(
|
||||||
GetHolidaysResponse instance) =>
|
GetHolidaysResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'data': instance.data.map((e) => e.toJson()).toList(),
|
'data': instance.data.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetHolidaysResponseObject _$GetHolidaysResponseObjectFromJson(
|
GetHolidaysResponseObject _$GetHolidaysResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetHolidaysResponseObject(
|
) => GetHolidaysResponseObject(
|
||||||
start: json['start'] as String,
|
start: json['start'] as String,
|
||||||
end: json['end'] as String,
|
end: json['end'] as String,
|
||||||
year: (json['year'] as num).toInt(),
|
year: (json['year'] as num).toInt(),
|
||||||
stateCode: json['stateCode'] as String,
|
stateCode: json['stateCode'] as String,
|
||||||
name: json['name'] as String,
|
name: json['name'] as String,
|
||||||
slug: json['slug'] as String,
|
slug: json['slug'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetHolidaysResponseObjectToJson(
|
Map<String, dynamic> _$GetHolidaysResponseObjectToJson(
|
||||||
GetHolidaysResponseObject instance) =>
|
GetHolidaysResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'start': instance.start,
|
'start': instance.start,
|
||||||
'end': instance.end,
|
'end': instance.end,
|
||||||
'year': instance.year,
|
'year': instance.year,
|
||||||
'stateCode': instance.stateCode,
|
'stateCode': instance.stateCode,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'slug': instance.slug,
|
'slug': instance.slug,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ class AutocompleteResponseObject {
|
|||||||
String label;
|
String label;
|
||||||
String? icon;
|
String? icon;
|
||||||
String? source;
|
String? source;
|
||||||
List<String>? status;
|
String? status;
|
||||||
String? subline;
|
String? subline;
|
||||||
String? shareWithDisplayNameUniqe;
|
String? shareWithDisplayNameUniqe;
|
||||||
|
|
||||||
|
|||||||
@@ -7,40 +7,39 @@ part of 'autocompleteResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
AutocompleteResponse _$AutocompleteResponseFromJson(
|
AutocompleteResponse _$AutocompleteResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
AutocompleteResponse(
|
) => AutocompleteResponse(
|
||||||
(json['data'] as List<dynamic>)
|
(json['data'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
AutocompleteResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) => AutocompleteResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
.toList(),
|
)
|
||||||
);
|
.toList(),
|
||||||
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AutocompleteResponseToJson(
|
Map<String, dynamic> _$AutocompleteResponseToJson(
|
||||||
AutocompleteResponse instance) =>
|
AutocompleteResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'data': instance.data.map((e) => e.toJson()).toList()};
|
||||||
'data': instance.data.map((e) => e.toJson()).toList(),
|
|
||||||
};
|
|
||||||
|
|
||||||
AutocompleteResponseObject _$AutocompleteResponseObjectFromJson(
|
AutocompleteResponseObject _$AutocompleteResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
AutocompleteResponseObject(
|
) => AutocompleteResponseObject(
|
||||||
json['id'] as String,
|
json['id'] as String,
|
||||||
json['label'] as String,
|
json['label'] as String,
|
||||||
json['icon'] as String?,
|
json['icon'] as String?,
|
||||||
json['source'] as String?,
|
json['source'] as String?,
|
||||||
(json['status'] as List<dynamic>?)?.map((e) => e as String).toList(),
|
json['status'] as String?,
|
||||||
json['subline'] as String?,
|
json['subline'] as String?,
|
||||||
json['shareWithDisplayNameUniqe'] as String?,
|
json['shareWithDisplayNameUniqe'] as String?,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AutocompleteResponseObjectToJson(
|
Map<String, dynamic> _$AutocompleteResponseObjectToJson(
|
||||||
AutocompleteResponseObject instance) =>
|
AutocompleteResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'label': instance.label,
|
'label': instance.label,
|
||||||
'icon': instance.icon,
|
'icon': instance.icon,
|
||||||
'source': instance.source,
|
'source': instance.source,
|
||||||
'status': instance.status,
|
'status': instance.status,
|
||||||
'subline': instance.subline,
|
'subline': instance.subline,
|
||||||
'shareWithDisplayNameUniqe': instance.shareWithDisplayNameUniqe,
|
'shareWithDisplayNameUniqe': instance.shareWithDisplayNameUniqe,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,21 +7,21 @@ part of 'fileSharingApiParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
FileSharingApiParams _$FileSharingApiParamsFromJson(
|
FileSharingApiParams _$FileSharingApiParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
FileSharingApiParams(
|
) => FileSharingApiParams(
|
||||||
shareType: (json['shareType'] as num).toInt(),
|
shareType: (json['shareType'] as num).toInt(),
|
||||||
shareWith: json['shareWith'] as String,
|
shareWith: json['shareWith'] as String,
|
||||||
path: json['path'] as String,
|
path: json['path'] as String,
|
||||||
referenceId: json['referenceId'] as String?,
|
referenceId: json['referenceId'] as String?,
|
||||||
talkMetaData: json['talkMetaData'] as String?,
|
talkMetaData: json['talkMetaData'] as String?,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$FileSharingApiParamsToJson(
|
Map<String, dynamic> _$FileSharingApiParamsToJson(
|
||||||
FileSharingApiParams instance) =>
|
FileSharingApiParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'shareType': instance.shareType,
|
'shareType': instance.shareType,
|
||||||
'shareWith': instance.shareWith,
|
'shareWith': instance.shareWith,
|
||||||
'path': instance.path,
|
'path': instance.path,
|
||||||
'referenceId': instance.referenceId,
|
'referenceId': instance.referenceId,
|
||||||
'talkMetaData': instance.talkMetaData,
|
'talkMetaData': instance.talkMetaData,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,34 +8,35 @@ part of 'getChatParams.dart';
|
|||||||
|
|
||||||
GetChatParams _$GetChatParamsFromJson(Map<String, dynamic> json) =>
|
GetChatParams _$GetChatParamsFromJson(Map<String, dynamic> json) =>
|
||||||
GetChatParams(
|
GetChatParams(
|
||||||
lookIntoFuture:
|
lookIntoFuture: $enumDecode(
|
||||||
$enumDecode(_$GetChatParamsSwitchEnumMap, json['lookIntoFuture']),
|
_$GetChatParamsSwitchEnumMap,
|
||||||
|
json['lookIntoFuture'],
|
||||||
|
),
|
||||||
limit: (json['limit'] as num?)?.toInt(),
|
limit: (json['limit'] as num?)?.toInt(),
|
||||||
lastKnownMessageId: (json['lastKnownMessageId'] as num?)?.toInt(),
|
lastKnownMessageId: (json['lastKnownMessageId'] as num?)?.toInt(),
|
||||||
lastCommonReadId: (json['lastCommonReadId'] as num?)?.toInt(),
|
lastCommonReadId: (json['lastCommonReadId'] as num?)?.toInt(),
|
||||||
timeout: (json['timeout'] as num?)?.toInt(),
|
timeout: (json['timeout'] as num?)?.toInt(),
|
||||||
setReadMarker: $enumDecodeNullable(
|
setReadMarker: $enumDecodeNullable(
|
||||||
_$GetChatParamsSwitchEnumMap, json['setReadMarker']),
|
_$GetChatParamsSwitchEnumMap,
|
||||||
|
json['setReadMarker'],
|
||||||
|
),
|
||||||
includeLastKnown: $enumDecodeNullable(
|
includeLastKnown: $enumDecodeNullable(
|
||||||
_$GetChatParamsSwitchEnumMap, json['includeLastKnown']),
|
_$GetChatParamsSwitchEnumMap,
|
||||||
|
json['includeLastKnown'],
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetChatParamsToJson(GetChatParams instance) =>
|
Map<String, dynamic> _$GetChatParamsToJson(
|
||||||
<String, dynamic>{
|
GetChatParams instance,
|
||||||
'lookIntoFuture': _$GetChatParamsSwitchEnumMap[instance.lookIntoFuture]!,
|
) => <String, dynamic>{
|
||||||
if (instance.limit case final value?) 'limit': value,
|
'lookIntoFuture': _$GetChatParamsSwitchEnumMap[instance.lookIntoFuture]!,
|
||||||
if (instance.lastKnownMessageId case final value?)
|
'limit': ?instance.limit,
|
||||||
'lastKnownMessageId': value,
|
'lastKnownMessageId': ?instance.lastKnownMessageId,
|
||||||
if (instance.lastCommonReadId case final value?)
|
'lastCommonReadId': ?instance.lastCommonReadId,
|
||||||
'lastCommonReadId': value,
|
'timeout': ?instance.timeout,
|
||||||
if (instance.timeout case final value?) 'timeout': value,
|
'setReadMarker': ?_$GetChatParamsSwitchEnumMap[instance.setReadMarker],
|
||||||
if (_$GetChatParamsSwitchEnumMap[instance.setReadMarker]
|
'includeLastKnown': ?_$GetChatParamsSwitchEnumMap[instance.includeLastKnown],
|
||||||
case final value?)
|
};
|
||||||
'setReadMarker': value,
|
|
||||||
if (_$GetChatParamsSwitchEnumMap[instance.includeLastKnown]
|
|
||||||
case final value?)
|
|
||||||
'includeLastKnown': value,
|
|
||||||
};
|
|
||||||
|
|
||||||
const _$GetChatParamsSwitchEnumMap = {
|
const _$GetChatParamsSwitchEnumMap = {
|
||||||
GetChatParamsSwitch.on: 1,
|
GetChatParamsSwitch.on: 1,
|
||||||
|
|||||||
@@ -120,4 +120,5 @@ enum RichObjectStringObjectType {
|
|||||||
@JsonValue('guest') guest,
|
@JsonValue('guest') guest,
|
||||||
@JsonValue('highlight') highlight,
|
@JsonValue('highlight') highlight,
|
||||||
@JsonValue('talk-poll') talkPoll,
|
@JsonValue('talk-poll') talkPoll,
|
||||||
|
@JsonValue('geo-location') geoLocation,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,70 +8,72 @@ part of 'getChatResponse.dart';
|
|||||||
|
|
||||||
GetChatResponse _$GetChatResponseFromJson(Map<String, dynamic> json) =>
|
GetChatResponse _$GetChatResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetChatResponse(
|
GetChatResponse(
|
||||||
(json['data'] as List<dynamic>)
|
(json['data'] as List<dynamic>)
|
||||||
.map((e) => GetChatResponseObject.fromJson(e as Map<String, dynamic>))
|
.map(
|
||||||
.toSet(),
|
(e) => GetChatResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetChatResponseToJson(GetChatResponse instance) =>
|
Map<String, dynamic> _$GetChatResponseToJson(GetChatResponse instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'data': instance.data.map((e) => e.toJson()).toList(),
|
'data': instance.data.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetChatResponseObject _$GetChatResponseObjectFromJson(
|
GetChatResponseObject _$GetChatResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetChatResponseObject(
|
) => GetChatResponseObject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['token'] as String,
|
json['token'] as String,
|
||||||
$enumDecode(
|
$enumDecode(
|
||||||
_$GetRoomResponseObjectMessageActorTypeEnumMap, json['actorType']),
|
_$GetRoomResponseObjectMessageActorTypeEnumMap,
|
||||||
json['actorId'] as String,
|
json['actorType'],
|
||||||
json['actorDisplayName'] as String,
|
),
|
||||||
(json['timestamp'] as num).toInt(),
|
json['actorId'] as String,
|
||||||
json['systemMessage'] as String,
|
json['actorDisplayName'] as String,
|
||||||
$enumDecode(
|
(json['timestamp'] as num).toInt(),
|
||||||
_$GetRoomResponseObjectMessageTypeEnumMap, json['messageType']),
|
json['systemMessage'] as String,
|
||||||
json['isReplyable'] as bool,
|
$enumDecode(_$GetRoomResponseObjectMessageTypeEnumMap, json['messageType']),
|
||||||
json['referenceId'] as String,
|
json['isReplyable'] as bool,
|
||||||
json['message'] as String,
|
json['referenceId'] as String,
|
||||||
_fromJson(json['messageParameters']),
|
json['message'] as String,
|
||||||
(json['reactions'] as Map<String, dynamic>?)?.map(
|
_fromJson(json['messageParameters']),
|
||||||
(k, e) => MapEntry(k, (e as num).toInt()),
|
(json['reactions'] as Map<String, dynamic>?)?.map(
|
||||||
),
|
(k, e) => MapEntry(k, (e as num).toInt()),
|
||||||
(json['reactionsSelf'] as List<dynamic>?)
|
),
|
||||||
?.map((e) => e as String)
|
(json['reactionsSelf'] as List<dynamic>?)?.map((e) => e as String).toList(),
|
||||||
.toList(),
|
json['parent'] == null
|
||||||
json['parent'] == null
|
? null
|
||||||
? null
|
: GetChatResponseObject.fromJson(json['parent'] as Map<String, dynamic>),
|
||||||
: GetChatResponseObject.fromJson(
|
);
|
||||||
json['parent'] as Map<String, dynamic>),
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$GetChatResponseObjectToJson(
|
Map<String, dynamic> _$GetChatResponseObjectToJson(
|
||||||
GetChatResponseObject instance) =>
|
GetChatResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'token': instance.token,
|
'token': instance.token,
|
||||||
'actorType':
|
'actorType':
|
||||||
_$GetRoomResponseObjectMessageActorTypeEnumMap[instance.actorType]!,
|
_$GetRoomResponseObjectMessageActorTypeEnumMap[instance.actorType]!,
|
||||||
'actorId': instance.actorId,
|
'actorId': instance.actorId,
|
||||||
'actorDisplayName': instance.actorDisplayName,
|
'actorDisplayName': instance.actorDisplayName,
|
||||||
'timestamp': instance.timestamp,
|
'timestamp': instance.timestamp,
|
||||||
'systemMessage': instance.systemMessage,
|
'systemMessage': instance.systemMessage,
|
||||||
'messageType':
|
'messageType':
|
||||||
_$GetRoomResponseObjectMessageTypeEnumMap[instance.messageType]!,
|
_$GetRoomResponseObjectMessageTypeEnumMap[instance.messageType]!,
|
||||||
'isReplyable': instance.isReplyable,
|
'isReplyable': instance.isReplyable,
|
||||||
'referenceId': instance.referenceId,
|
'referenceId': instance.referenceId,
|
||||||
'message': instance.message,
|
'message': instance.message,
|
||||||
'reactions': instance.reactions,
|
'reactions': instance.reactions,
|
||||||
'reactionsSelf': instance.reactionsSelf,
|
'reactionsSelf': instance.reactionsSelf,
|
||||||
'messageParameters':
|
'messageParameters': instance.messageParameters?.map(
|
||||||
instance.messageParameters?.map((k, e) => MapEntry(k, e.toJson())),
|
(k, e) => MapEntry(k, e.toJson()),
|
||||||
'parent': instance.parent?.toJson(),
|
),
|
||||||
};
|
'parent': instance.parent?.toJson(),
|
||||||
|
};
|
||||||
|
|
||||||
const _$GetRoomResponseObjectMessageActorTypeEnumMap = {
|
const _$GetRoomResponseObjectMessageActorTypeEnumMap = {
|
||||||
GetRoomResponseObjectMessageActorType.deletedUsers: 'deleted_users',
|
GetRoomResponseObjectMessageActorType.deletedUsers: 'deleted_users',
|
||||||
@@ -83,6 +85,7 @@ const _$GetRoomResponseObjectMessageActorTypeEnumMap = {
|
|||||||
|
|
||||||
const _$GetRoomResponseObjectMessageTypeEnumMap = {
|
const _$GetRoomResponseObjectMessageTypeEnumMap = {
|
||||||
GetRoomResponseObjectMessageType.comment: 'comment',
|
GetRoomResponseObjectMessageType.comment: 'comment',
|
||||||
|
GetRoomResponseObjectMessageType.voiceMessage: 'voice-message',
|
||||||
GetRoomResponseObjectMessageType.deletedComment: 'comment_deleted',
|
GetRoomResponseObjectMessageType.deletedComment: 'comment_deleted',
|
||||||
GetRoomResponseObjectMessageType.system: 'system',
|
GetRoomResponseObjectMessageType.system: 'system',
|
||||||
GetRoomResponseObjectMessageType.command: 'command',
|
GetRoomResponseObjectMessageType.command: 'command',
|
||||||
@@ -113,4 +116,5 @@ const _$RichObjectStringObjectTypeEnumMap = {
|
|||||||
RichObjectStringObjectType.guest: 'guest',
|
RichObjectStringObjectType.guest: 'guest',
|
||||||
RichObjectStringObjectType.highlight: 'highlight',
|
RichObjectStringObjectType.highlight: 'highlight',
|
||||||
RichObjectStringObjectType.talkPoll: 'talk-poll',
|
RichObjectStringObjectType.talkPoll: 'talk-poll',
|
||||||
|
RichObjectStringObjectType.geoLocation: 'geo-location',
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,13 +7,9 @@ part of 'deleteReactMessageParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
DeleteReactMessageParams _$DeleteReactMessageParamsFromJson(
|
DeleteReactMessageParams _$DeleteReactMessageParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
DeleteReactMessageParams(
|
) => DeleteReactMessageParams(json['reaction'] as String);
|
||||||
json['reaction'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$DeleteReactMessageParamsToJson(
|
Map<String, dynamic> _$DeleteReactMessageParamsToJson(
|
||||||
DeleteReactMessageParams instance) =>
|
DeleteReactMessageParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'reaction': instance.reaction};
|
||||||
'reaction': instance.reaction,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -55,12 +55,15 @@ class GetParticipantsResponseObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
enum GetParticipantsResponseObjectParticipantType {
|
enum GetParticipantsResponseObjectParticipantType {
|
||||||
@JsonValue(1) owner,
|
@JsonValue(1) owner('Besitzer'),
|
||||||
@JsonValue(2) moderator,
|
@JsonValue(2) moderator('Moderator'),
|
||||||
@JsonValue(3) user,
|
@JsonValue(3) user('Teilnehmer'),
|
||||||
@JsonValue(4) guest,
|
@JsonValue(4) guest('Gast'),
|
||||||
@JsonValue(5) userFollowingPublicLink,
|
@JsonValue(5) userFollowingPublicLink('Teilnehmer über Link'),
|
||||||
@JsonValue(6) guestWithModeratorPermissions
|
@JsonValue(6) guestWithModeratorPermissions('Gast Moderator');
|
||||||
|
|
||||||
|
const GetParticipantsResponseObjectParticipantType(this.prettyName);
|
||||||
|
final String prettyName;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum GetParticipantsResponseObjectParticipantsInCallFlags {
|
enum GetParticipantsResponseObjectParticipantsInCallFlags {
|
||||||
|
|||||||
@@ -7,66 +7,77 @@ part of 'getParticipantsResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
GetParticipantsResponse _$GetParticipantsResponseFromJson(
|
GetParticipantsResponse _$GetParticipantsResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
GetParticipantsResponse(
|
GetParticipantsResponse(
|
||||||
(json['data'] as List<dynamic>)
|
(json['data'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
GetParticipantsResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) => GetParticipantsResponseObject.fromJson(
|
||||||
.toSet(),
|
e as Map<String, dynamic>,
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
),
|
||||||
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetParticipantsResponseToJson(
|
Map<String, dynamic> _$GetParticipantsResponseToJson(
|
||||||
GetParticipantsResponse instance) =>
|
GetParticipantsResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'data': instance.data.map((e) => e.toJson()).toList(),
|
'data': instance.data.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetParticipantsResponseObject _$GetParticipantsResponseObjectFromJson(
|
GetParticipantsResponseObject _$GetParticipantsResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetParticipantsResponseObject(
|
) => GetParticipantsResponseObject(
|
||||||
(json['attendeeId'] as num).toInt(),
|
(json['attendeeId'] as num).toInt(),
|
||||||
json['actorType'] as String,
|
json['actorType'] as String,
|
||||||
json['actorId'] as String,
|
json['actorId'] as String,
|
||||||
json['displayName'] as String,
|
json['displayName'] as String,
|
||||||
$enumDecode(_$GetParticipantsResponseObjectParticipantTypeEnumMap,
|
$enumDecode(
|
||||||
json['participantType']),
|
_$GetParticipantsResponseObjectParticipantTypeEnumMap,
|
||||||
(json['lastPing'] as num).toInt(),
|
json['participantType'],
|
||||||
$enumDecode(_$GetParticipantsResponseObjectParticipantsInCallFlagsEnumMap,
|
),
|
||||||
json['inCall']),
|
(json['lastPing'] as num).toInt(),
|
||||||
(json['permissions'] as num).toInt(),
|
$enumDecode(
|
||||||
(json['attendeePermissions'] as num).toInt(),
|
_$GetParticipantsResponseObjectParticipantsInCallFlagsEnumMap,
|
||||||
json['sessionId'] as String?,
|
json['inCall'],
|
||||||
(json['sessionIds'] as List<dynamic>).map((e) => e as String).toList(),
|
),
|
||||||
json['status'] as String?,
|
(json['permissions'] as num).toInt(),
|
||||||
json['statusIcon'] as String?,
|
(json['attendeePermissions'] as num).toInt(),
|
||||||
json['statusMessage'] as String?,
|
json['sessionId'] as String?,
|
||||||
json['roomToken'] as String?,
|
(json['sessionIds'] as List<dynamic>).map((e) => e as String).toList(),
|
||||||
);
|
json['status'] as String?,
|
||||||
|
json['statusIcon'] as String?,
|
||||||
|
json['statusMessage'] as String?,
|
||||||
|
json['roomToken'] as String?,
|
||||||
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetParticipantsResponseObjectToJson(
|
Map<String, dynamic> _$GetParticipantsResponseObjectToJson(
|
||||||
GetParticipantsResponseObject instance) =>
|
GetParticipantsResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'attendeeId': instance.attendeeId,
|
'attendeeId': instance.attendeeId,
|
||||||
'actorType': instance.actorType,
|
'actorType': instance.actorType,
|
||||||
'actorId': instance.actorId,
|
'actorId': instance.actorId,
|
||||||
'displayName': instance.displayName,
|
'displayName': instance.displayName,
|
||||||
'participantType': _$GetParticipantsResponseObjectParticipantTypeEnumMap[
|
'participantType':
|
||||||
instance.participantType]!,
|
_$GetParticipantsResponseObjectParticipantTypeEnumMap[instance
|
||||||
'lastPing': instance.lastPing,
|
.participantType]!,
|
||||||
'inCall': _$GetParticipantsResponseObjectParticipantsInCallFlagsEnumMap[
|
'lastPing': instance.lastPing,
|
||||||
instance.inCall]!,
|
'inCall':
|
||||||
'permissions': instance.permissions,
|
_$GetParticipantsResponseObjectParticipantsInCallFlagsEnumMap[instance
|
||||||
'attendeePermissions': instance.attendeePermissions,
|
.inCall]!,
|
||||||
'sessionId': instance.sessionId,
|
'permissions': instance.permissions,
|
||||||
'sessionIds': instance.sessionIds,
|
'attendeePermissions': instance.attendeePermissions,
|
||||||
'status': instance.status,
|
'sessionId': instance.sessionId,
|
||||||
'statusIcon': instance.statusIcon,
|
'sessionIds': instance.sessionIds,
|
||||||
'statusMessage': instance.statusMessage,
|
'status': instance.status,
|
||||||
'roomToken': instance.roomToken,
|
'statusIcon': instance.statusIcon,
|
||||||
};
|
'statusMessage': instance.statusMessage,
|
||||||
|
'roomToken': instance.roomToken,
|
||||||
|
};
|
||||||
|
|
||||||
const _$GetParticipantsResponseObjectParticipantTypeEnumMap = {
|
const _$GetParticipantsResponseObjectParticipantTypeEnumMap = {
|
||||||
GetParticipantsResponseObjectParticipantType.owner: 1,
|
GetParticipantsResponseObjectParticipantType.owner: 1,
|
||||||
|
|||||||
18
lib/api/marianumcloud/talk/getPoll/getPollState.dart
Normal file
18
lib/api/marianumcloud/talk/getPoll/getPollState.dart
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
import 'dart:convert';
|
||||||
|
|
||||||
|
import 'package:http/http.dart' as http;
|
||||||
|
|
||||||
|
import '../talkApi.dart';
|
||||||
|
import 'getPollStateResponse.dart';
|
||||||
|
|
||||||
|
class GetPollState extends TalkApi<GetPollStateResponse> {
|
||||||
|
String token;
|
||||||
|
int pollId;
|
||||||
|
GetPollState({required this.token, required this.pollId}) : super('v1/poll/$token/$pollId', null);
|
||||||
|
|
||||||
|
@override
|
||||||
|
GetPollStateResponse assemble(String raw) => GetPollStateResponse.fromJson(jsonDecode(raw)['ocs']);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<http.Response> request(Uri uri, Object? body, Map<String, String>? headers) => http.get(uri, headers: headers);
|
||||||
|
}
|
||||||
50
lib/api/marianumcloud/talk/getPoll/getPollStateResponse.dart
Normal file
50
lib/api/marianumcloud/talk/getPoll/getPollStateResponse.dart
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
|
|
||||||
|
import '../../../apiResponse.dart';
|
||||||
|
|
||||||
|
part 'getPollStateResponse.g.dart';
|
||||||
|
|
||||||
|
@JsonSerializable(explicitToJson: true)
|
||||||
|
class GetPollStateResponse extends ApiResponse {
|
||||||
|
GetPollStateResponseObject data;
|
||||||
|
|
||||||
|
GetPollStateResponse(this.data);
|
||||||
|
|
||||||
|
factory GetPollStateResponse.fromJson(Map<String, dynamic> json) => _$GetPollStateResponseFromJson(json);
|
||||||
|
Map<String, dynamic> toJson() => _$GetPollStateResponseToJson(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonSerializable(explicitToJson: true)
|
||||||
|
class GetPollStateResponseObject {
|
||||||
|
int id;
|
||||||
|
String question;
|
||||||
|
List<String> options;
|
||||||
|
dynamic votes;
|
||||||
|
String actorType;
|
||||||
|
String actorId;
|
||||||
|
String actorDisplayName;
|
||||||
|
int status;
|
||||||
|
int resultMode;
|
||||||
|
int maxVotes;
|
||||||
|
List<int> votedSelf;
|
||||||
|
int? numVoters;
|
||||||
|
List<dynamic>? details;
|
||||||
|
|
||||||
|
GetPollStateResponseObject(
|
||||||
|
this.id,
|
||||||
|
this.question,
|
||||||
|
this.options,
|
||||||
|
this.votes,
|
||||||
|
this.actorType,
|
||||||
|
this.actorId,
|
||||||
|
this.actorDisplayName,
|
||||||
|
this.status,
|
||||||
|
this.resultMode,
|
||||||
|
this.maxVotes,
|
||||||
|
this.votedSelf,
|
||||||
|
this.numVoters,
|
||||||
|
this.details);
|
||||||
|
|
||||||
|
factory GetPollStateResponseObject.fromJson(Map<String, dynamic> json) => _$GetPollStateResponseObjectFromJson(json);
|
||||||
|
Map<String, dynamic> toJson() => _$GetPollStateResponseObjectToJson(this);
|
||||||
|
}
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
|
||||||
|
part of 'getPollStateResponse.dart';
|
||||||
|
|
||||||
|
// **************************************************************************
|
||||||
|
// JsonSerializableGenerator
|
||||||
|
// **************************************************************************
|
||||||
|
|
||||||
|
GetPollStateResponse _$GetPollStateResponseFromJson(
|
||||||
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
|
GetPollStateResponse(
|
||||||
|
GetPollStateResponseObject.fromJson(
|
||||||
|
json['data'] as Map<String, dynamic>,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
|
(k, e) => MapEntry(k, e as String),
|
||||||
|
);
|
||||||
|
|
||||||
|
Map<String, dynamic> _$GetPollStateResponseToJson(
|
||||||
|
GetPollStateResponse instance,
|
||||||
|
) => <String, dynamic>{
|
||||||
|
'headers': ?instance.headers,
|
||||||
|
'data': instance.data.toJson(),
|
||||||
|
};
|
||||||
|
|
||||||
|
GetPollStateResponseObject _$GetPollStateResponseObjectFromJson(
|
||||||
|
Map<String, dynamic> json,
|
||||||
|
) => GetPollStateResponseObject(
|
||||||
|
(json['id'] as num).toInt(),
|
||||||
|
json['question'] as String,
|
||||||
|
(json['options'] as List<dynamic>).map((e) => e as String).toList(),
|
||||||
|
json['votes'],
|
||||||
|
json['actorType'] as String,
|
||||||
|
json['actorId'] as String,
|
||||||
|
json['actorDisplayName'] as String,
|
||||||
|
(json['status'] as num).toInt(),
|
||||||
|
(json['resultMode'] as num).toInt(),
|
||||||
|
(json['maxVotes'] as num).toInt(),
|
||||||
|
(json['votedSelf'] as List<dynamic>).map((e) => (e as num).toInt()).toList(),
|
||||||
|
(json['numVoters'] as num?)?.toInt(),
|
||||||
|
json['details'] as List<dynamic>?,
|
||||||
|
);
|
||||||
|
|
||||||
|
Map<String, dynamic> _$GetPollStateResponseObjectToJson(
|
||||||
|
GetPollStateResponseObject instance,
|
||||||
|
) => <String, dynamic>{
|
||||||
|
'id': instance.id,
|
||||||
|
'question': instance.question,
|
||||||
|
'options': instance.options,
|
||||||
|
'votes': instance.votes,
|
||||||
|
'actorType': instance.actorType,
|
||||||
|
'actorId': instance.actorId,
|
||||||
|
'actorDisplayName': instance.actorDisplayName,
|
||||||
|
'status': instance.status,
|
||||||
|
'resultMode': instance.resultMode,
|
||||||
|
'maxVotes': instance.maxVotes,
|
||||||
|
'votedSelf': instance.votedSelf,
|
||||||
|
'numVoters': instance.numVoters,
|
||||||
|
'details': instance.details,
|
||||||
|
};
|
||||||
@@ -7,47 +7,53 @@ part of 'getReactionsResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
GetReactionsResponse _$GetReactionsResponseFromJson(
|
GetReactionsResponse _$GetReactionsResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
GetReactionsResponse(
|
GetReactionsResponse(
|
||||||
(json['data'] as Map<String, dynamic>).map(
|
(json['data'] as Map<String, dynamic>).map(
|
||||||
(k, e) => MapEntry(
|
(k, e) => MapEntry(
|
||||||
k,
|
k,
|
||||||
(e as List<dynamic>)
|
(e as List<dynamic>)
|
||||||
.map((e) => GetReactionsResponseObject.fromJson(
|
.map(
|
||||||
e as Map<String, dynamic>))
|
(e) => GetReactionsResponseObject.fromJson(
|
||||||
.toList()),
|
e as Map<String, dynamic>,
|
||||||
),
|
),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toList(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetReactionsResponseToJson(
|
Map<String, dynamic> _$GetReactionsResponseToJson(
|
||||||
GetReactionsResponse instance) =>
|
GetReactionsResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'data': instance.data
|
'data': instance.data.map(
|
||||||
.map((k, e) => MapEntry(k, e.map((e) => e.toJson()).toList())),
|
(k, e) => MapEntry(k, e.map((e) => e.toJson()).toList()),
|
||||||
};
|
),
|
||||||
|
};
|
||||||
|
|
||||||
GetReactionsResponseObject _$GetReactionsResponseObjectFromJson(
|
GetReactionsResponseObject _$GetReactionsResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetReactionsResponseObject(
|
) => GetReactionsResponseObject(
|
||||||
$enumDecode(
|
$enumDecode(_$GetReactionsResponseObjectActorTypeEnumMap, json['actorType']),
|
||||||
_$GetReactionsResponseObjectActorTypeEnumMap, json['actorType']),
|
json['actorId'] as String,
|
||||||
json['actorId'] as String,
|
json['actorDisplayName'] as String,
|
||||||
json['actorDisplayName'] as String,
|
(json['timestamp'] as num).toInt(),
|
||||||
(json['timestamp'] as num).toInt(),
|
);
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$GetReactionsResponseObjectToJson(
|
Map<String, dynamic> _$GetReactionsResponseObjectToJson(
|
||||||
GetReactionsResponseObject instance) =>
|
GetReactionsResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'actorType':
|
'actorType':
|
||||||
_$GetReactionsResponseObjectActorTypeEnumMap[instance.actorType]!,
|
_$GetReactionsResponseObjectActorTypeEnumMap[instance.actorType]!,
|
||||||
'actorId': instance.actorId,
|
'actorId': instance.actorId,
|
||||||
'actorDisplayName': instance.actorDisplayName,
|
'actorDisplayName': instance.actorDisplayName,
|
||||||
'timestamp': instance.timestamp,
|
'timestamp': instance.timestamp,
|
||||||
};
|
};
|
||||||
|
|
||||||
const _$GetReactionsResponseObjectActorTypeEnumMap = {
|
const _$GetReactionsResponseObjectActorTypeEnumMap = {
|
||||||
GetReactionsResponseObjectActorType.guests: 'guests',
|
GetReactionsResponseObjectActorType.guests: 'guests',
|
||||||
|
|||||||
@@ -7,11 +7,7 @@ part of 'reactMessageParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
ReactMessageParams _$ReactMessageParamsFromJson(Map<String, dynamic> json) =>
|
ReactMessageParams _$ReactMessageParamsFromJson(Map<String, dynamic> json) =>
|
||||||
ReactMessageParams(
|
ReactMessageParams(json['reaction'] as String);
|
||||||
json['reaction'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$ReactMessageParamsToJson(ReactMessageParams instance) =>
|
Map<String, dynamic> _$ReactMessageParamsToJson(ReactMessageParams instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{'reaction': instance.reaction};
|
||||||
'reaction': instance.reaction,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -9,18 +9,20 @@ part of 'getRoomParams.dart';
|
|||||||
GetRoomParams _$GetRoomParamsFromJson(Map<String, dynamic> json) =>
|
GetRoomParams _$GetRoomParamsFromJson(Map<String, dynamic> json) =>
|
||||||
GetRoomParams(
|
GetRoomParams(
|
||||||
noStatusUpdate: $enumDecodeNullable(
|
noStatusUpdate: $enumDecodeNullable(
|
||||||
_$GetRoomParamsStatusUpdateEnumMap, json['noStatusUpdate']),
|
_$GetRoomParamsStatusUpdateEnumMap,
|
||||||
|
json['noStatusUpdate'],
|
||||||
|
),
|
||||||
includeStatus: json['includeStatus'] as bool?,
|
includeStatus: json['includeStatus'] as bool?,
|
||||||
modifiedSince: (json['modifiedSince'] as num?)?.toInt(),
|
modifiedSince: (json['modifiedSince'] as num?)?.toInt(),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetRoomParamsToJson(GetRoomParams instance) =>
|
Map<String, dynamic> _$GetRoomParamsToJson(
|
||||||
<String, dynamic>{
|
GetRoomParams instance,
|
||||||
'noStatusUpdate':
|
) => <String, dynamic>{
|
||||||
_$GetRoomParamsStatusUpdateEnumMap[instance.noStatusUpdate],
|
'noStatusUpdate': _$GetRoomParamsStatusUpdateEnumMap[instance.noStatusUpdate],
|
||||||
'includeStatus': GetRoomParams._format(instance.includeStatus),
|
'includeStatus': GetRoomParams._format(instance.includeStatus),
|
||||||
'modifiedSince': instance.modifiedSince,
|
'modifiedSince': instance.modifiedSince,
|
||||||
};
|
};
|
||||||
|
|
||||||
const _$GetRoomParamsStatusUpdateEnumMap = {
|
const _$GetRoomParamsStatusUpdateEnumMap = {
|
||||||
GetRoomParamsStatusUpdate.defaults: 0,
|
GetRoomParamsStatusUpdate.defaults: 0,
|
||||||
|
|||||||
@@ -110,6 +110,7 @@ enum GetRoomResponseObjectConversationType {
|
|||||||
@JsonValue(3) public,
|
@JsonValue(3) public,
|
||||||
@JsonValue(4) changelog,
|
@JsonValue(4) changelog,
|
||||||
@JsonValue(5) deleted,
|
@JsonValue(5) deleted,
|
||||||
|
@JsonValue(6) noteToSelf,
|
||||||
}
|
}
|
||||||
|
|
||||||
enum GetRoomResponseObjectParticipantNotificationLevel {
|
enum GetRoomResponseObjectParticipantNotificationLevel {
|
||||||
@@ -161,6 +162,7 @@ enum GetRoomResponseObjectMessageActorType {
|
|||||||
|
|
||||||
enum GetRoomResponseObjectMessageType {
|
enum GetRoomResponseObjectMessageType {
|
||||||
@JsonValue('comment') comment,
|
@JsonValue('comment') comment,
|
||||||
|
@JsonValue('voice-message') voiceMessage,
|
||||||
@JsonValue('comment_deleted') deletedComment,
|
@JsonValue('comment_deleted') deletedComment,
|
||||||
@JsonValue('system') system,
|
@JsonValue('system') system,
|
||||||
@JsonValue('command') command,
|
@JsonValue('command') command,
|
||||||
|
|||||||
@@ -8,93 +8,97 @@ part of 'getRoomResponse.dart';
|
|||||||
|
|
||||||
GetRoomResponse _$GetRoomResponseFromJson(Map<String, dynamic> json) =>
|
GetRoomResponse _$GetRoomResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetRoomResponse(
|
GetRoomResponse(
|
||||||
(json['data'] as List<dynamic>)
|
(json['data'] as List<dynamic>)
|
||||||
.map((e) => GetRoomResponseObject.fromJson(e as Map<String, dynamic>))
|
.map(
|
||||||
.toSet(),
|
(e) => GetRoomResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetRoomResponseToJson(GetRoomResponse instance) =>
|
Map<String, dynamic> _$GetRoomResponseToJson(GetRoomResponse instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'data': instance.data.map((e) => e.toJson()).toList(),
|
'data': instance.data.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetRoomResponseObject _$GetRoomResponseObjectFromJson(
|
GetRoomResponseObject _$GetRoomResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetRoomResponseObject(
|
) => GetRoomResponseObject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['token'] as String,
|
json['token'] as String,
|
||||||
$enumDecode(_$GetRoomResponseObjectConversationTypeEnumMap, json['type']),
|
$enumDecode(_$GetRoomResponseObjectConversationTypeEnumMap, json['type']),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['displayName'] as String,
|
json['displayName'] as String,
|
||||||
json['description'] as String,
|
json['description'] as String,
|
||||||
(json['participantType'] as num).toInt(),
|
(json['participantType'] as num).toInt(),
|
||||||
(json['participantFlags'] as num).toInt(),
|
(json['participantFlags'] as num).toInt(),
|
||||||
(json['readOnly'] as num).toInt(),
|
(json['readOnly'] as num).toInt(),
|
||||||
(json['listable'] as num).toInt(),
|
(json['listable'] as num).toInt(),
|
||||||
(json['lastPing'] as num).toInt(),
|
(json['lastPing'] as num).toInt(),
|
||||||
json['sessionId'] as String,
|
json['sessionId'] as String,
|
||||||
json['hasPassword'] as bool,
|
json['hasPassword'] as bool,
|
||||||
json['hasCall'] as bool,
|
json['hasCall'] as bool,
|
||||||
(json['callFlag'] as num).toInt(),
|
(json['callFlag'] as num).toInt(),
|
||||||
json['canStartCall'] as bool,
|
json['canStartCall'] as bool,
|
||||||
json['canDeleteConversation'] as bool,
|
json['canDeleteConversation'] as bool,
|
||||||
json['canLeaveConversation'] as bool,
|
json['canLeaveConversation'] as bool,
|
||||||
(json['lastActivity'] as num).toInt(),
|
(json['lastActivity'] as num).toInt(),
|
||||||
json['isFavorite'] as bool,
|
json['isFavorite'] as bool,
|
||||||
$enumDecode(_$GetRoomResponseObjectParticipantNotificationLevelEnumMap,
|
$enumDecode(
|
||||||
json['notificationLevel']),
|
_$GetRoomResponseObjectParticipantNotificationLevelEnumMap,
|
||||||
(json['unreadMessages'] as num).toInt(),
|
json['notificationLevel'],
|
||||||
json['unreadMention'] as bool,
|
),
|
||||||
json['unreadMentionDirect'] as bool,
|
(json['unreadMessages'] as num).toInt(),
|
||||||
(json['lastReadMessage'] as num).toInt(),
|
json['unreadMention'] as bool,
|
||||||
(json['lastCommonReadMessage'] as num).toInt(),
|
json['unreadMentionDirect'] as bool,
|
||||||
GetChatResponseObject.fromJson(
|
(json['lastReadMessage'] as num).toInt(),
|
||||||
json['lastMessage'] as Map<String, dynamic>),
|
(json['lastCommonReadMessage'] as num).toInt(),
|
||||||
json['status'] as String?,
|
GetChatResponseObject.fromJson(json['lastMessage'] as Map<String, dynamic>),
|
||||||
json['statusIcon'] as String?,
|
json['status'] as String?,
|
||||||
json['statusMessage'] as String?,
|
json['statusIcon'] as String?,
|
||||||
)..sort = json['sort'] as String?;
|
json['statusMessage'] as String?,
|
||||||
|
)..sort = json['sort'] as String?;
|
||||||
|
|
||||||
Map<String, dynamic> _$GetRoomResponseObjectToJson(
|
Map<String, dynamic> _$GetRoomResponseObjectToJson(
|
||||||
GetRoomResponseObject instance) =>
|
GetRoomResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'token': instance.token,
|
'token': instance.token,
|
||||||
'type': _$GetRoomResponseObjectConversationTypeEnumMap[instance.type]!,
|
'type': _$GetRoomResponseObjectConversationTypeEnumMap[instance.type]!,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'displayName': instance.displayName,
|
'displayName': instance.displayName,
|
||||||
'description': instance.description,
|
'description': instance.description,
|
||||||
'participantType': instance.participantType,
|
'participantType': instance.participantType,
|
||||||
'participantFlags': instance.participantFlags,
|
'participantFlags': instance.participantFlags,
|
||||||
'readOnly': instance.readOnly,
|
'readOnly': instance.readOnly,
|
||||||
'listable': instance.listable,
|
'listable': instance.listable,
|
||||||
'lastPing': instance.lastPing,
|
'lastPing': instance.lastPing,
|
||||||
'sessionId': instance.sessionId,
|
'sessionId': instance.sessionId,
|
||||||
'hasPassword': instance.hasPassword,
|
'hasPassword': instance.hasPassword,
|
||||||
'hasCall': instance.hasCall,
|
'hasCall': instance.hasCall,
|
||||||
'callFlag': instance.callFlag,
|
'callFlag': instance.callFlag,
|
||||||
'canStartCall': instance.canStartCall,
|
'canStartCall': instance.canStartCall,
|
||||||
'canDeleteConversation': instance.canDeleteConversation,
|
'canDeleteConversation': instance.canDeleteConversation,
|
||||||
'canLeaveConversation': instance.canLeaveConversation,
|
'canLeaveConversation': instance.canLeaveConversation,
|
||||||
'lastActivity': instance.lastActivity,
|
'lastActivity': instance.lastActivity,
|
||||||
'isFavorite': instance.isFavorite,
|
'isFavorite': instance.isFavorite,
|
||||||
'notificationLevel':
|
'notificationLevel':
|
||||||
_$GetRoomResponseObjectParticipantNotificationLevelEnumMap[
|
_$GetRoomResponseObjectParticipantNotificationLevelEnumMap[instance
|
||||||
instance.notificationLevel]!,
|
.notificationLevel]!,
|
||||||
'unreadMessages': instance.unreadMessages,
|
'unreadMessages': instance.unreadMessages,
|
||||||
'unreadMention': instance.unreadMention,
|
'unreadMention': instance.unreadMention,
|
||||||
'unreadMentionDirect': instance.unreadMentionDirect,
|
'unreadMentionDirect': instance.unreadMentionDirect,
|
||||||
'lastReadMessage': instance.lastReadMessage,
|
'lastReadMessage': instance.lastReadMessage,
|
||||||
'lastCommonReadMessage': instance.lastCommonReadMessage,
|
'lastCommonReadMessage': instance.lastCommonReadMessage,
|
||||||
'lastMessage': instance.lastMessage.toJson(),
|
'lastMessage': instance.lastMessage.toJson(),
|
||||||
'status': instance.status,
|
'status': instance.status,
|
||||||
'statusIcon': instance.statusIcon,
|
'statusIcon': instance.statusIcon,
|
||||||
'statusMessage': instance.statusMessage,
|
'statusMessage': instance.statusMessage,
|
||||||
'sort': instance.sort,
|
'sort': instance.sort,
|
||||||
};
|
};
|
||||||
|
|
||||||
const _$GetRoomResponseObjectConversationTypeEnumMap = {
|
const _$GetRoomResponseObjectConversationTypeEnumMap = {
|
||||||
GetRoomResponseObjectConversationType.oneToOne: 1,
|
GetRoomResponseObjectConversationType.oneToOne: 1,
|
||||||
@@ -102,6 +106,7 @@ const _$GetRoomResponseObjectConversationTypeEnumMap = {
|
|||||||
GetRoomResponseObjectConversationType.public: 3,
|
GetRoomResponseObjectConversationType.public: 3,
|
||||||
GetRoomResponseObjectConversationType.changelog: 4,
|
GetRoomResponseObjectConversationType.changelog: 4,
|
||||||
GetRoomResponseObjectConversationType.deleted: 5,
|
GetRoomResponseObjectConversationType.deleted: 5,
|
||||||
|
GetRoomResponseObjectConversationType.noteToSelf: 6,
|
||||||
};
|
};
|
||||||
|
|
||||||
const _$GetRoomResponseObjectParticipantNotificationLevelEnumMap = {
|
const _$GetRoomResponseObjectParticipantNotificationLevelEnumMap = {
|
||||||
|
|||||||
@@ -15,5 +15,5 @@ SendMessageParams _$SendMessageParamsFromJson(Map<String, dynamic> json) =>
|
|||||||
Map<String, dynamic> _$SendMessageParamsToJson(SendMessageParams instance) =>
|
Map<String, dynamic> _$SendMessageParamsToJson(SendMessageParams instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{
|
||||||
'message': instance.message,
|
'message': instance.message,
|
||||||
if (instance.replyTo case final value?) 'replyTo': value,
|
'replyTo': ?instance.replyTo,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -12,7 +12,5 @@ SetReadMarkerParams _$SetReadMarkerParamsFromJson(Map<String, dynamic> json) =>
|
|||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$SetReadMarkerParamsToJson(
|
Map<String, dynamic> _$SetReadMarkerParamsToJson(
|
||||||
SetReadMarkerParams instance) =>
|
SetReadMarkerParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'lastReadMessage': instance.lastReadMessage};
|
||||||
'lastReadMessage': instance.lastReadMessage,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -58,11 +58,9 @@ abstract class TalkApi<T extends ApiResponse?> extends ApiRequest {
|
|||||||
assembled?.headers = data.headers;
|
assembled?.headers = data.headers;
|
||||||
return assembled;
|
return assembled;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
// TODO report error
|
var message = 'Error assembling Talk API ${T.toString()} message: ${e.toString()} response with request body: $body and request headers: ${headers.toString()}';
|
||||||
log('Error assembling Talk API ${T.toString()} message: ${e.toString()} response on ${endpoint.path} with request body: $body and request headers: ${headers.toString()}');
|
log(message);
|
||||||
|
throw Exception(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
throw Exception('Error assembling Talk API response');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
26
lib/api/marianumcloud/talk/votePoll/votePoll.dart
Normal file
26
lib/api/marianumcloud/talk/votePoll/votePoll.dart
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
import 'dart:convert';
|
||||||
|
|
||||||
|
import 'package:http/http.dart' as http;
|
||||||
|
import 'package:http/http.dart';
|
||||||
|
|
||||||
|
import '../getPoll/getPollStateResponse.dart';
|
||||||
|
import '../talkApi.dart';
|
||||||
|
import 'votePollParams.dart';
|
||||||
|
|
||||||
|
@Deprecated('VotePoll is broken')
|
||||||
|
class VotePoll extends TalkApi {
|
||||||
|
String token;
|
||||||
|
int pollId;
|
||||||
|
VotePoll({required this.token, required this.pollId, required VotePollParams params}) : super('v1/poll/$token/$pollId', params);
|
||||||
|
|
||||||
|
@override
|
||||||
|
GetPollStateResponse assemble(String raw) => GetPollStateResponse.fromJson(jsonDecode(raw)['ocs']);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<Response>? request(Uri uri, Object? body, Map<String, String>? headers) {
|
||||||
|
if(body is VotePollParams) {
|
||||||
|
return http.post(uri, headers: headers, body: body.toJson().toString());
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
15
lib/api/marianumcloud/talk/votePoll/votePollParams.dart
Normal file
15
lib/api/marianumcloud/talk/votePoll/votePollParams.dart
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
|
|
||||||
|
import '../../../apiParams.dart';
|
||||||
|
|
||||||
|
part 'votePollParams.g.dart';
|
||||||
|
|
||||||
|
@JsonSerializable()
|
||||||
|
@Deprecated('VotePoll is broken')
|
||||||
|
class VotePollParams extends ApiParams {
|
||||||
|
List<int> optionIds;
|
||||||
|
|
||||||
|
VotePollParams({required this.optionIds});
|
||||||
|
factory VotePollParams.fromJson(Map<String, dynamic> json) => _$VotePollParamsFromJson(json);
|
||||||
|
Map<String, dynamic> toJson() => _$VotePollParamsToJson(this);
|
||||||
|
}
|
||||||
17
lib/api/marianumcloud/talk/votePoll/votePollParams.g.dart
Normal file
17
lib/api/marianumcloud/talk/votePoll/votePollParams.g.dart
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
|
||||||
|
part of 'votePollParams.dart';
|
||||||
|
|
||||||
|
// **************************************************************************
|
||||||
|
// JsonSerializableGenerator
|
||||||
|
// **************************************************************************
|
||||||
|
|
||||||
|
VotePollParams _$VotePollParamsFromJson(Map<String, dynamic> json) =>
|
||||||
|
VotePollParams(
|
||||||
|
optionIds: (json['optionIds'] as List<dynamic>)
|
||||||
|
.map((e) => (e as num).toInt())
|
||||||
|
.toList(),
|
||||||
|
);
|
||||||
|
|
||||||
|
Map<String, dynamic> _$VotePollParamsToJson(VotePollParams instance) =>
|
||||||
|
<String, dynamic>{'optionIds': instance.optionIds};
|
||||||
@@ -7,13 +7,9 @@ part of 'downloadFileResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
DownloadFileResponse _$DownloadFileResponseFromJson(
|
DownloadFileResponse _$DownloadFileResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
DownloadFileResponse(
|
) => DownloadFileResponse(json['path'] as String);
|
||||||
json['path'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$DownloadFileResponseToJson(
|
Map<String, dynamic> _$DownloadFileResponseToJson(
|
||||||
DownloadFileResponse instance) =>
|
DownloadFileResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'path': instance.path};
|
||||||
'path': instance.path,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,11 +7,7 @@ part of 'listFilesParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
ListFilesParams _$ListFilesParamsFromJson(Map<String, dynamic> json) =>
|
ListFilesParams _$ListFilesParamsFromJson(Map<String, dynamic> json) =>
|
||||||
ListFilesParams(
|
ListFilesParams(json['path'] as String);
|
||||||
json['path'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$ListFilesParamsToJson(ListFilesParams instance) =>
|
Map<String, dynamic> _$ListFilesParamsToJson(ListFilesParams instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{'path': instance.path};
|
||||||
'path': instance.path,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -8,15 +8,16 @@ part of 'listFilesResponse.dart';
|
|||||||
|
|
||||||
ListFilesResponse _$ListFilesResponseFromJson(Map<String, dynamic> json) =>
|
ListFilesResponse _$ListFilesResponseFromJson(Map<String, dynamic> json) =>
|
||||||
ListFilesResponse(
|
ListFilesResponse(
|
||||||
(json['files'] as List<dynamic>)
|
(json['files'] as List<dynamic>)
|
||||||
.map((e) => CacheableFile.fromJson(e as Map<String, dynamic>))
|
.map((e) => CacheableFile.fromJson(e as Map<String, dynamic>))
|
||||||
.toSet(),
|
.toSet(),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$ListFilesResponseToJson(ListFilesResponse instance) =>
|
Map<String, dynamic> _$ListFilesResponseToJson(ListFilesResponse instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'files': instance.files.map((e) => e.toJson()).toList(),
|
'files': instance.files.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,38 +8,43 @@ part of 'getBreakersResponse.dart';
|
|||||||
|
|
||||||
GetBreakersResponse _$GetBreakersResponseFromJson(Map<String, dynamic> json) =>
|
GetBreakersResponse _$GetBreakersResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetBreakersResponse(
|
GetBreakersResponse(
|
||||||
GetBreakersReponseObject.fromJson(json['global'] as Map<String, dynamic>),
|
GetBreakersReponseObject.fromJson(
|
||||||
(json['regional'] as Map<String, dynamic>).map(
|
json['global'] as Map<String, dynamic>,
|
||||||
(k, e) => MapEntry(
|
),
|
||||||
k, GetBreakersReponseObject.fromJson(e as Map<String, dynamic>)),
|
(json['regional'] as Map<String, dynamic>).map(
|
||||||
),
|
(k, e) => MapEntry(
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
k,
|
||||||
|
GetBreakersReponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetBreakersResponseToJson(
|
Map<String, dynamic> _$GetBreakersResponseToJson(
|
||||||
GetBreakersResponse instance) =>
|
GetBreakersResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'global': instance.global.toJson(),
|
'global': instance.global.toJson(),
|
||||||
'regional': instance.regional.map((k, e) => MapEntry(k, e.toJson())),
|
'regional': instance.regional.map((k, e) => MapEntry(k, e.toJson())),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetBreakersReponseObject _$GetBreakersReponseObjectFromJson(
|
GetBreakersReponseObject _$GetBreakersReponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetBreakersReponseObject(
|
) => GetBreakersReponseObject(
|
||||||
(json['areas'] as List<dynamic>)
|
(json['areas'] as List<dynamic>)
|
||||||
.map((e) => $enumDecode(_$BreakerAreaEnumMap, e))
|
.map((e) => $enumDecode(_$BreakerAreaEnumMap, e))
|
||||||
.toList(),
|
.toList(),
|
||||||
json['message'] as String,
|
json['message'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetBreakersReponseObjectToJson(
|
Map<String, dynamic> _$GetBreakersReponseObjectToJson(
|
||||||
GetBreakersReponseObject instance) =>
|
GetBreakersReponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'areas': instance.areas.map((e) => _$BreakerAreaEnumMap[e]!).toList(),
|
'areas': instance.areas.map((e) => _$BreakerAreaEnumMap[e]!).toList(),
|
||||||
'message': instance.message,
|
'message': instance.message,
|
||||||
};
|
};
|
||||||
|
|
||||||
const _$BreakerAreaEnumMap = {
|
const _$BreakerAreaEnumMap = {
|
||||||
BreakerArea.global: 'GLOBAL',
|
BreakerArea.global: 'GLOBAL',
|
||||||
|
|||||||
@@ -7,15 +7,12 @@ part of 'addCustomTimetableEventParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
AddCustomTimetableEventParams _$AddCustomTimetableEventParamsFromJson(
|
AddCustomTimetableEventParams _$AddCustomTimetableEventParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
AddCustomTimetableEventParams(
|
) => AddCustomTimetableEventParams(
|
||||||
json['user'] as String,
|
json['user'] as String,
|
||||||
CustomTimetableEvent.fromJson(json['event'] as Map<String, dynamic>),
|
CustomTimetableEvent.fromJson(json['event'] as Map<String, dynamic>),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AddCustomTimetableEventParamsToJson(
|
Map<String, dynamic> _$AddCustomTimetableEventParamsToJson(
|
||||||
AddCustomTimetableEventParams instance) =>
|
AddCustomTimetableEventParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'user': instance.user, 'event': instance.event.toJson()};
|
||||||
'user': instance.user,
|
|
||||||
'event': instance.event.toJson(),
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,29 +7,29 @@ part of 'customTimetableEvent.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
CustomTimetableEvent _$CustomTimetableEventFromJson(
|
CustomTimetableEvent _$CustomTimetableEventFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
CustomTimetableEvent(
|
) => CustomTimetableEvent(
|
||||||
id: json['id'] as String,
|
id: json['id'] as String,
|
||||||
title: json['title'] as String,
|
title: json['title'] as String,
|
||||||
description: json['description'] as String,
|
description: json['description'] as String,
|
||||||
startDate: MhslApi.dateTimeFromJson(json['startDate'] as String),
|
startDate: MhslApi.dateTimeFromJson(json['startDate'] as String),
|
||||||
endDate: MhslApi.dateTimeFromJson(json['endDate'] as String),
|
endDate: MhslApi.dateTimeFromJson(json['endDate'] as String),
|
||||||
color: json['color'] as String?,
|
color: json['color'] as String?,
|
||||||
rrule: json['rrule'] as String,
|
rrule: json['rrule'] as String,
|
||||||
createdAt: MhslApi.dateTimeFromJson(json['createdAt'] as String),
|
createdAt: MhslApi.dateTimeFromJson(json['createdAt'] as String),
|
||||||
updatedAt: MhslApi.dateTimeFromJson(json['updatedAt'] as String),
|
updatedAt: MhslApi.dateTimeFromJson(json['updatedAt'] as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$CustomTimetableEventToJson(
|
Map<String, dynamic> _$CustomTimetableEventToJson(
|
||||||
CustomTimetableEvent instance) =>
|
CustomTimetableEvent instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'title': instance.title,
|
'title': instance.title,
|
||||||
'description': instance.description,
|
'description': instance.description,
|
||||||
'startDate': MhslApi.dateTimeToJson(instance.startDate),
|
'startDate': MhslApi.dateTimeToJson(instance.startDate),
|
||||||
'endDate': MhslApi.dateTimeToJson(instance.endDate),
|
'endDate': MhslApi.dateTimeToJson(instance.endDate),
|
||||||
'color': instance.color,
|
'color': instance.color,
|
||||||
'rrule': instance.rrule,
|
'rrule': instance.rrule,
|
||||||
'createdAt': MhslApi.dateTimeToJson(instance.createdAt),
|
'createdAt': MhslApi.dateTimeToJson(instance.createdAt),
|
||||||
'updatedAt': MhslApi.dateTimeToJson(instance.updatedAt),
|
'updatedAt': MhslApi.dateTimeToJson(instance.updatedAt),
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,13 +7,9 @@ part of 'getCustomTimetableEventParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
GetCustomTimetableEventParams _$GetCustomTimetableEventParamsFromJson(
|
GetCustomTimetableEventParams _$GetCustomTimetableEventParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetCustomTimetableEventParams(
|
) => GetCustomTimetableEventParams(json['user'] as String);
|
||||||
json['user'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$GetCustomTimetableEventParamsToJson(
|
Map<String, dynamic> _$GetCustomTimetableEventParamsToJson(
|
||||||
GetCustomTimetableEventParams instance) =>
|
GetCustomTimetableEventParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'user': instance.user};
|
||||||
'user': instance.user,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,18 +7,19 @@ part of 'getCustomTimetableEventResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
GetCustomTimetableEventResponse _$GetCustomTimetableEventResponseFromJson(
|
GetCustomTimetableEventResponse _$GetCustomTimetableEventResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
GetCustomTimetableEventResponse(
|
GetCustomTimetableEventResponse(
|
||||||
(json['events'] as List<dynamic>)
|
(json['events'] as List<dynamic>)
|
||||||
.map((e) => CustomTimetableEvent.fromJson(e as Map<String, dynamic>))
|
.map(
|
||||||
.toList(),
|
(e) => CustomTimetableEvent.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toList(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetCustomTimetableEventResponseToJson(
|
Map<String, dynamic> _$GetCustomTimetableEventResponseToJson(
|
||||||
GetCustomTimetableEventResponse instance) =>
|
GetCustomTimetableEventResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'headers': ?instance.headers, 'events': instance.events};
|
||||||
if (instance.headers case final value?) 'headers': value,
|
|
||||||
'events': instance.events,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,13 +7,9 @@ part of 'removeCustomTimetableEventParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
RemoveCustomTimetableEventParams _$RemoveCustomTimetableEventParamsFromJson(
|
RemoveCustomTimetableEventParams _$RemoveCustomTimetableEventParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
RemoveCustomTimetableEventParams(
|
) => RemoveCustomTimetableEventParams(json['id'] as String);
|
||||||
json['id'] as String,
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$RemoveCustomTimetableEventParamsToJson(
|
Map<String, dynamic> _$RemoveCustomTimetableEventParamsToJson(
|
||||||
RemoveCustomTimetableEventParams instance) =>
|
RemoveCustomTimetableEventParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'id': instance.id};
|
||||||
'id': instance.id,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,15 +7,12 @@ part of 'updateCustomTimetableEventParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
UpdateCustomTimetableEventParams _$UpdateCustomTimetableEventParamsFromJson(
|
UpdateCustomTimetableEventParams _$UpdateCustomTimetableEventParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
UpdateCustomTimetableEventParams(
|
) => UpdateCustomTimetableEventParams(
|
||||||
json['id'] as String,
|
json['id'] as String,
|
||||||
CustomTimetableEvent.fromJson(json['event'] as Map<String, dynamic>),
|
CustomTimetableEvent.fromJson(json['event'] as Map<String, dynamic>),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$UpdateCustomTimetableEventParamsToJson(
|
Map<String, dynamic> _$UpdateCustomTimetableEventParamsToJson(
|
||||||
UpdateCustomTimetableEventParams instance) =>
|
UpdateCustomTimetableEventParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'id': instance.id, 'event': instance.event.toJson()};
|
||||||
'id': instance.id,
|
|
||||||
'event': instance.event.toJson(),
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,17 +7,17 @@ part of 'notifyRegisterParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
NotifyRegisterParams _$NotifyRegisterParamsFromJson(
|
NotifyRegisterParams _$NotifyRegisterParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
NotifyRegisterParams(
|
) => NotifyRegisterParams(
|
||||||
username: json['username'] as String,
|
username: json['username'] as String,
|
||||||
password: json['password'] as String,
|
password: json['password'] as String,
|
||||||
fcmToken: json['fcmToken'] as String,
|
fcmToken: json['fcmToken'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$NotifyRegisterParamsToJson(
|
Map<String, dynamic> _$NotifyRegisterParamsToJson(
|
||||||
NotifyRegisterParams instance) =>
|
NotifyRegisterParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'username': instance.username,
|
'username': instance.username,
|
||||||
'password': instance.password,
|
'password': instance.password,
|
||||||
'fcmToken': instance.fcmToken,
|
'fcmToken': instance.fcmToken,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,21 +7,21 @@ part of 'updateUserIndexParams.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
UpdateUserIndexParams _$UpdateUserIndexParamsFromJson(
|
UpdateUserIndexParams _$UpdateUserIndexParamsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
UpdateUserIndexParams(
|
) => UpdateUserIndexParams(
|
||||||
user: json['user'] as String,
|
user: json['user'] as String,
|
||||||
username: json['username'] as String,
|
username: json['username'] as String,
|
||||||
device: json['device'] as String,
|
device: json['device'] as String,
|
||||||
appVersion: (json['appVersion'] as num).toInt(),
|
appVersion: (json['appVersion'] as num).toInt(),
|
||||||
deviceInfo: json['deviceInfo'] as String,
|
deviceInfo: json['deviceInfo'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$UpdateUserIndexParamsToJson(
|
Map<String, dynamic> _$UpdateUserIndexParamsToJson(
|
||||||
UpdateUserIndexParams instance) =>
|
UpdateUserIndexParams instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'user': instance.user,
|
'user': instance.user,
|
||||||
'username': instance.username,
|
'username': instance.username,
|
||||||
'device': instance.device,
|
'device': instance.device,
|
||||||
'appVersion': instance.appVersion,
|
'appVersion': instance.appVersion,
|
||||||
'deviceInfo': instance.deviceInfo,
|
'deviceInfo': instance.deviceInfo,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -13,7 +13,4 @@ AuthenticateParams _$AuthenticateParamsFromJson(Map<String, dynamic> json) =>
|
|||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AuthenticateParamsToJson(AuthenticateParams instance) =>
|
Map<String, dynamic> _$AuthenticateParamsToJson(AuthenticateParams instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{'user': instance.user, 'password': instance.password};
|
||||||
'user': instance.user,
|
|
||||||
'password': instance.password,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -7,22 +7,24 @@ part of 'authenticateResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
AuthenticateResponse _$AuthenticateResponseFromJson(
|
AuthenticateResponse _$AuthenticateResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
AuthenticateResponse(
|
AuthenticateResponse(
|
||||||
json['sessionId'] as String,
|
json['sessionId'] as String,
|
||||||
(json['personType'] as num).toInt(),
|
(json['personType'] as num).toInt(),
|
||||||
(json['personId'] as num).toInt(),
|
(json['personId'] as num).toInt(),
|
||||||
(json['klasseId'] as num).toInt(),
|
(json['klasseId'] as num).toInt(),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$AuthenticateResponseToJson(
|
Map<String, dynamic> _$AuthenticateResponseToJson(
|
||||||
AuthenticateResponse instance) =>
|
AuthenticateResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'sessionId': instance.sessionId,
|
'sessionId': instance.sessionId,
|
||||||
'personType': instance.personType,
|
'personType': instance.personType,
|
||||||
'personId': instance.personId,
|
'personId': instance.personId,
|
||||||
'klasseId': instance.klasseId,
|
'klasseId': instance.klasseId,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,37 +8,40 @@ part of 'getHolidaysResponse.dart';
|
|||||||
|
|
||||||
GetHolidaysResponse _$GetHolidaysResponseFromJson(Map<String, dynamic> json) =>
|
GetHolidaysResponse _$GetHolidaysResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetHolidaysResponse(
|
GetHolidaysResponse(
|
||||||
(json['result'] as List<dynamic>)
|
(json['result'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
GetHolidaysResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) =>
|
||||||
.toSet(),
|
GetHolidaysResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetHolidaysResponseToJson(
|
Map<String, dynamic> _$GetHolidaysResponseToJson(
|
||||||
GetHolidaysResponse instance) =>
|
GetHolidaysResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'result': instance.result.map((e) => e.toJson()).toList(),
|
'result': instance.result.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetHolidaysResponseObject _$GetHolidaysResponseObjectFromJson(
|
GetHolidaysResponseObject _$GetHolidaysResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetHolidaysResponseObject(
|
) => GetHolidaysResponseObject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longName'] as String,
|
json['longName'] as String,
|
||||||
(json['startDate'] as num).toInt(),
|
(json['startDate'] as num).toInt(),
|
||||||
(json['endDate'] as num).toInt(),
|
(json['endDate'] as num).toInt(),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetHolidaysResponseObjectToJson(
|
Map<String, dynamic> _$GetHolidaysResponseObjectToJson(
|
||||||
GetHolidaysResponseObject instance) =>
|
GetHolidaysResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longName': instance.longName,
|
'longName': instance.longName,
|
||||||
'startDate': instance.startDate,
|
'startDate': instance.startDate,
|
||||||
'endDate': instance.endDate,
|
'endDate': instance.endDate,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,36 +8,38 @@ part of 'getRoomsResponse.dart';
|
|||||||
|
|
||||||
GetRoomsResponse _$GetRoomsResponseFromJson(Map<String, dynamic> json) =>
|
GetRoomsResponse _$GetRoomsResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetRoomsResponse(
|
GetRoomsResponse(
|
||||||
(json['result'] as List<dynamic>)
|
(json['result'] as List<dynamic>)
|
||||||
.map(
|
.map(
|
||||||
(e) => GetRoomsResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) => GetRoomsResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
.toSet(),
|
)
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetRoomsResponseToJson(GetRoomsResponse instance) =>
|
Map<String, dynamic> _$GetRoomsResponseToJson(GetRoomsResponse instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'result': instance.result.map((e) => e.toJson()).toList(),
|
'result': instance.result.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetRoomsResponseObject _$GetRoomsResponseObjectFromJson(
|
GetRoomsResponseObject _$GetRoomsResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetRoomsResponseObject(
|
) => GetRoomsResponseObject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longName'] as String,
|
json['longName'] as String,
|
||||||
json['active'] as bool,
|
json['active'] as bool,
|
||||||
json['building'] as String,
|
json['building'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetRoomsResponseObjectToJson(
|
Map<String, dynamic> _$GetRoomsResponseObjectToJson(
|
||||||
GetRoomsResponseObject instance) =>
|
GetRoomsResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longName': instance.longName,
|
'longName': instance.longName,
|
||||||
'active': instance.active,
|
'active': instance.active,
|
||||||
'building': instance.building,
|
'building': instance.building,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,37 +8,40 @@ part of 'getSubjectsResponse.dart';
|
|||||||
|
|
||||||
GetSubjectsResponse _$GetSubjectsResponseFromJson(Map<String, dynamic> json) =>
|
GetSubjectsResponse _$GetSubjectsResponseFromJson(Map<String, dynamic> json) =>
|
||||||
GetSubjectsResponse(
|
GetSubjectsResponse(
|
||||||
(json['result'] as List<dynamic>)
|
(json['result'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
GetSubjectsResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) =>
|
||||||
.toSet(),
|
GetSubjectsResponseObject.fromJson(e as Map<String, dynamic>),
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetSubjectsResponseToJson(
|
Map<String, dynamic> _$GetSubjectsResponseToJson(
|
||||||
GetSubjectsResponse instance) =>
|
GetSubjectsResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'result': instance.result.map((e) => e.toJson()).toList(),
|
'result': instance.result.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetSubjectsResponseObject _$GetSubjectsResponseObjectFromJson(
|
GetSubjectsResponseObject _$GetSubjectsResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetSubjectsResponseObject(
|
) => GetSubjectsResponseObject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longName'] as String,
|
json['longName'] as String,
|
||||||
json['alternateName'] as String,
|
json['alternateName'] as String,
|
||||||
json['active'] as bool,
|
json['active'] as bool,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetSubjectsResponseObjectToJson(
|
Map<String, dynamic> _$GetSubjectsResponseObjectToJson(
|
||||||
GetSubjectsResponseObject instance) =>
|
GetSubjectsResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longName': instance.longName,
|
'longName': instance.longName,
|
||||||
'alternateName': instance.alternateName,
|
'alternateName': instance.alternateName,
|
||||||
'active': instance.active,
|
'active': instance.active,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -9,78 +9,68 @@ part of 'getTimetableParams.dart';
|
|||||||
GetTimetableParams _$GetTimetableParamsFromJson(Map<String, dynamic> json) =>
|
GetTimetableParams _$GetTimetableParamsFromJson(Map<String, dynamic> json) =>
|
||||||
GetTimetableParams(
|
GetTimetableParams(
|
||||||
options: GetTimetableParamsOptions.fromJson(
|
options: GetTimetableParamsOptions.fromJson(
|
||||||
json['options'] as Map<String, dynamic>),
|
json['options'] as Map<String, dynamic>,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableParamsToJson(GetTimetableParams instance) =>
|
Map<String, dynamic> _$GetTimetableParamsToJson(GetTimetableParams instance) =>
|
||||||
<String, dynamic>{
|
<String, dynamic>{'options': instance.options.toJson()};
|
||||||
'options': instance.options.toJson(),
|
|
||||||
};
|
|
||||||
|
|
||||||
GetTimetableParamsOptions _$GetTimetableParamsOptionsFromJson(
|
GetTimetableParamsOptions _$GetTimetableParamsOptionsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableParamsOptions(
|
) => GetTimetableParamsOptions(
|
||||||
element: GetTimetableParamsOptionsElement.fromJson(
|
element: GetTimetableParamsOptionsElement.fromJson(
|
||||||
json['element'] as Map<String, dynamic>),
|
json['element'] as Map<String, dynamic>,
|
||||||
startDate: (json['startDate'] as num?)?.toInt(),
|
),
|
||||||
endDate: (json['endDate'] as num?)?.toInt(),
|
startDate: (json['startDate'] as num?)?.toInt(),
|
||||||
onlyBaseTimetable: json['onlyBaseTimetable'] as bool?,
|
endDate: (json['endDate'] as num?)?.toInt(),
|
||||||
showBooking: json['showBooking'] as bool?,
|
onlyBaseTimetable: json['onlyBaseTimetable'] as bool?,
|
||||||
showInfo: json['showInfo'] as bool?,
|
showBooking: json['showBooking'] as bool?,
|
||||||
showSubstText: json['showSubstText'] as bool?,
|
showInfo: json['showInfo'] as bool?,
|
||||||
showLsText: json['showLsText'] as bool?,
|
showSubstText: json['showSubstText'] as bool?,
|
||||||
showLsNumber: json['showLsNumber'] as bool?,
|
showLsText: json['showLsText'] as bool?,
|
||||||
showStudentgroup: json['showStudentgroup'] as bool?,
|
showLsNumber: json['showLsNumber'] as bool?,
|
||||||
klasseFields: (json['klasseFields'] as List<dynamic>?)
|
showStudentgroup: json['showStudentgroup'] as bool?,
|
||||||
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
klasseFields: (json['klasseFields'] as List<dynamic>?)
|
||||||
.toList(),
|
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
||||||
roomFields: (json['roomFields'] as List<dynamic>?)
|
.toList(),
|
||||||
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
roomFields: (json['roomFields'] as List<dynamic>?)
|
||||||
.toList(),
|
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
||||||
subjectFields: (json['subjectFields'] as List<dynamic>?)
|
.toList(),
|
||||||
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
subjectFields: (json['subjectFields'] as List<dynamic>?)
|
||||||
.toList(),
|
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
||||||
teacherFields: (json['teacherFields'] as List<dynamic>?)
|
.toList(),
|
||||||
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
teacherFields: (json['teacherFields'] as List<dynamic>?)
|
||||||
.toList(),
|
?.map((e) => $enumDecode(_$GetTimetableParamsOptionsFieldsEnumMap, e))
|
||||||
);
|
.toList(),
|
||||||
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableParamsOptionsToJson(
|
Map<String, dynamic> _$GetTimetableParamsOptionsToJson(
|
||||||
GetTimetableParamsOptions instance) =>
|
GetTimetableParamsOptions instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'element': instance.element.toJson(),
|
'element': instance.element.toJson(),
|
||||||
if (instance.startDate case final value?) 'startDate': value,
|
'startDate': ?instance.startDate,
|
||||||
if (instance.endDate case final value?) 'endDate': value,
|
'endDate': ?instance.endDate,
|
||||||
if (instance.onlyBaseTimetable case final value?)
|
'onlyBaseTimetable': ?instance.onlyBaseTimetable,
|
||||||
'onlyBaseTimetable': value,
|
'showBooking': ?instance.showBooking,
|
||||||
if (instance.showBooking case final value?) 'showBooking': value,
|
'showInfo': ?instance.showInfo,
|
||||||
if (instance.showInfo case final value?) 'showInfo': value,
|
'showSubstText': ?instance.showSubstText,
|
||||||
if (instance.showSubstText case final value?) 'showSubstText': value,
|
'showLsText': ?instance.showLsText,
|
||||||
if (instance.showLsText case final value?) 'showLsText': value,
|
'showLsNumber': ?instance.showLsNumber,
|
||||||
if (instance.showLsNumber case final value?) 'showLsNumber': value,
|
'showStudentgroup': ?instance.showStudentgroup,
|
||||||
if (instance.showStudentgroup case final value?)
|
'klasseFields': ?instance.klasseFields
|
||||||
'showStudentgroup': value,
|
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
||||||
if (instance.klasseFields
|
.toList(),
|
||||||
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
'roomFields': ?instance.roomFields
|
||||||
.toList()
|
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
||||||
case final value?)
|
.toList(),
|
||||||
'klasseFields': value,
|
'subjectFields': ?instance.subjectFields
|
||||||
if (instance.roomFields
|
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
||||||
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
.toList(),
|
||||||
.toList()
|
'teacherFields': ?instance.teacherFields
|
||||||
case final value?)
|
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
||||||
'roomFields': value,
|
.toList(),
|
||||||
if (instance.subjectFields
|
};
|
||||||
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
|
||||||
.toList()
|
|
||||||
case final value?)
|
|
||||||
'subjectFields': value,
|
|
||||||
if (instance.teacherFields
|
|
||||||
?.map((e) => _$GetTimetableParamsOptionsFieldsEnumMap[e]!)
|
|
||||||
.toList()
|
|
||||||
case final value?)
|
|
||||||
'teacherFields': value,
|
|
||||||
};
|
|
||||||
|
|
||||||
const _$GetTimetableParamsOptionsFieldsEnumMap = {
|
const _$GetTimetableParamsOptionsFieldsEnumMap = {
|
||||||
GetTimetableParamsOptionsFields.id: 'id',
|
GetTimetableParamsOptionsFields.id: 'id',
|
||||||
@@ -90,23 +80,24 @@ const _$GetTimetableParamsOptionsFieldsEnumMap = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableParamsOptionsElement _$GetTimetableParamsOptionsElementFromJson(
|
GetTimetableParamsOptionsElement _$GetTimetableParamsOptionsElementFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableParamsOptionsElement(
|
) => GetTimetableParamsOptionsElement(
|
||||||
id: (json['id'] as num).toInt(),
|
id: (json['id'] as num).toInt(),
|
||||||
type: (json['type'] as num).toInt(),
|
type: (json['type'] as num).toInt(),
|
||||||
keyType: $enumDecodeNullable(
|
keyType: $enumDecodeNullable(
|
||||||
_$GetTimetableParamsOptionsElementKeyTypeEnumMap, json['keyType']),
|
_$GetTimetableParamsOptionsElementKeyTypeEnumMap,
|
||||||
);
|
json['keyType'],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableParamsOptionsElementToJson(
|
Map<String, dynamic> _$GetTimetableParamsOptionsElementToJson(
|
||||||
GetTimetableParamsOptionsElement instance) =>
|
GetTimetableParamsOptionsElement instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'type': instance.type,
|
'type': instance.type,
|
||||||
if (_$GetTimetableParamsOptionsElementKeyTypeEnumMap[instance.keyType]
|
'keyType':
|
||||||
case final value?)
|
?_$GetTimetableParamsOptionsElementKeyTypeEnumMap[instance.keyType],
|
||||||
'keyType': value,
|
};
|
||||||
};
|
|
||||||
|
|
||||||
const _$GetTimetableParamsOptionsElementKeyTypeEnumMap = {
|
const _$GetTimetableParamsOptionsElementKeyTypeEnumMap = {
|
||||||
GetTimetableParamsOptionsElementKeyType.id: 'id',
|
GetTimetableParamsOptionsElementKeyType.id: 'id',
|
||||||
|
|||||||
@@ -7,184 +7,199 @@ part of 'getTimetableResponse.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
GetTimetableResponse _$GetTimetableResponseFromJson(
|
GetTimetableResponse _$GetTimetableResponseFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
|
) =>
|
||||||
GetTimetableResponse(
|
GetTimetableResponse(
|
||||||
(json['result'] as List<dynamic>)
|
(json['result'] as List<dynamic>)
|
||||||
.map((e) =>
|
.map(
|
||||||
GetTimetableResponseObject.fromJson(e as Map<String, dynamic>))
|
(e) => GetTimetableResponseObject.fromJson(
|
||||||
.toSet(),
|
e as Map<String, dynamic>,
|
||||||
)..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
),
|
||||||
|
)
|
||||||
|
.toSet(),
|
||||||
|
)
|
||||||
|
..headers = (json['headers'] as Map<String, dynamic>?)?.map(
|
||||||
(k, e) => MapEntry(k, e as String),
|
(k, e) => MapEntry(k, e as String),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseToJson(
|
Map<String, dynamic> _$GetTimetableResponseToJson(
|
||||||
GetTimetableResponse instance) =>
|
GetTimetableResponse instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
if (instance.headers case final value?) 'headers': value,
|
'headers': ?instance.headers,
|
||||||
'result': instance.result.map((e) => e.toJson()).toList(),
|
'result': instance.result.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObject _$GetTimetableResponseObjectFromJson(
|
GetTimetableResponseObject _$GetTimetableResponseObjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObject(
|
) => GetTimetableResponseObject(
|
||||||
id: (json['id'] as num).toInt(),
|
id: (json['id'] as num).toInt(),
|
||||||
date: (json['date'] as num).toInt(),
|
date: (json['date'] as num).toInt(),
|
||||||
startTime: (json['startTime'] as num).toInt(),
|
startTime: (json['startTime'] as num).toInt(),
|
||||||
endTime: (json['endTime'] as num).toInt(),
|
endTime: (json['endTime'] as num).toInt(),
|
||||||
lstype: json['lstype'] as String?,
|
lstype: json['lstype'] as String?,
|
||||||
code: json['code'] as String?,
|
code: json['code'] as String?,
|
||||||
info: json['info'] as String?,
|
info: json['info'] as String?,
|
||||||
substText: json['substText'] as String?,
|
substText: json['substText'] as String?,
|
||||||
lstext: json['lstext'] as String?,
|
lstext: json['lstext'] as String?,
|
||||||
lsnumber: (json['lsnumber'] as num?)?.toInt(),
|
lsnumber: (json['lsnumber'] as num?)?.toInt(),
|
||||||
statflags: json['statflags'] as String?,
|
statflags: json['statflags'] as String?,
|
||||||
activityType: json['activityType'] as String?,
|
activityType: json['activityType'] as String?,
|
||||||
sg: json['sg'] as String?,
|
sg: json['sg'] as String?,
|
||||||
bkRemark: json['bkRemark'] as String?,
|
bkRemark: json['bkRemark'] as String?,
|
||||||
kl: (json['kl'] as List<dynamic>)
|
kl: (json['kl'] as List<dynamic>)
|
||||||
.map((e) => GetTimetableResponseObjectClass.fromJson(
|
.map(
|
||||||
e as Map<String, dynamic>))
|
(e) =>
|
||||||
.toList(),
|
GetTimetableResponseObjectClass.fromJson(e as Map<String, dynamic>),
|
||||||
te: (json['te'] as List<dynamic>)
|
)
|
||||||
.map((e) => GetTimetableResponseObjectTeacher.fromJson(
|
.toList(),
|
||||||
e as Map<String, dynamic>))
|
te: (json['te'] as List<dynamic>)
|
||||||
.toList(),
|
.map(
|
||||||
su: (json['su'] as List<dynamic>)
|
(e) => GetTimetableResponseObjectTeacher.fromJson(
|
||||||
.map((e) => GetTimetableResponseObjectSubject.fromJson(
|
e as Map<String, dynamic>,
|
||||||
e as Map<String, dynamic>))
|
),
|
||||||
.toList(),
|
)
|
||||||
ro: (json['ro'] as List<dynamic>)
|
.toList(),
|
||||||
.map((e) => GetTimetableResponseObjectRoom.fromJson(
|
su: (json['su'] as List<dynamic>)
|
||||||
e as Map<String, dynamic>))
|
.map(
|
||||||
.toList(),
|
(e) => GetTimetableResponseObjectSubject.fromJson(
|
||||||
)..bkText = json['bkText'] as String?;
|
e as Map<String, dynamic>,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
.toList(),
|
||||||
|
ro: (json['ro'] as List<dynamic>)
|
||||||
|
.map(
|
||||||
|
(e) =>
|
||||||
|
GetTimetableResponseObjectRoom.fromJson(e as Map<String, dynamic>),
|
||||||
|
)
|
||||||
|
.toList(),
|
||||||
|
)..bkText = json['bkText'] as String?;
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectToJson(
|
||||||
GetTimetableResponseObject instance) =>
|
GetTimetableResponseObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'date': instance.date,
|
'date': instance.date,
|
||||||
'startTime': instance.startTime,
|
'startTime': instance.startTime,
|
||||||
'endTime': instance.endTime,
|
'endTime': instance.endTime,
|
||||||
'lstype': instance.lstype,
|
'lstype': instance.lstype,
|
||||||
'code': instance.code,
|
'code': instance.code,
|
||||||
'info': instance.info,
|
'info': instance.info,
|
||||||
'substText': instance.substText,
|
'substText': instance.substText,
|
||||||
'lstext': instance.lstext,
|
'lstext': instance.lstext,
|
||||||
'lsnumber': instance.lsnumber,
|
'lsnumber': instance.lsnumber,
|
||||||
'statflags': instance.statflags,
|
'statflags': instance.statflags,
|
||||||
'activityType': instance.activityType,
|
'activityType': instance.activityType,
|
||||||
'sg': instance.sg,
|
'sg': instance.sg,
|
||||||
'bkRemark': instance.bkRemark,
|
'bkRemark': instance.bkRemark,
|
||||||
'bkText': instance.bkText,
|
'bkText': instance.bkText,
|
||||||
'kl': instance.kl.map((e) => e.toJson()).toList(),
|
'kl': instance.kl.map((e) => e.toJson()).toList(),
|
||||||
'te': instance.te.map((e) => e.toJson()).toList(),
|
'te': instance.te.map((e) => e.toJson()).toList(),
|
||||||
'su': instance.su.map((e) => e.toJson()).toList(),
|
'su': instance.su.map((e) => e.toJson()).toList(),
|
||||||
'ro': instance.ro.map((e) => e.toJson()).toList(),
|
'ro': instance.ro.map((e) => e.toJson()).toList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObjectFields _$GetTimetableResponseObjectFieldsFromJson(
|
GetTimetableResponseObjectFields _$GetTimetableResponseObjectFieldsFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObjectFields(
|
) => GetTimetableResponseObjectFields(
|
||||||
(json['te'] as List<dynamic>?)
|
(json['te'] as List<dynamic>?)
|
||||||
?.map((e) => GetTimetableResponseObjectFieldsObject.fromJson(
|
?.map(
|
||||||
e as Map<String, dynamic>))
|
(e) => GetTimetableResponseObjectFieldsObject.fromJson(
|
||||||
.toList(),
|
e as Map<String, dynamic>,
|
||||||
);
|
),
|
||||||
|
)
|
||||||
|
.toList(),
|
||||||
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectFieldsToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectFieldsToJson(
|
||||||
GetTimetableResponseObjectFields instance) =>
|
GetTimetableResponseObjectFields instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'te': instance.te?.map((e) => e.toJson()).toList()};
|
||||||
'te': instance.te?.map((e) => e.toJson()).toList(),
|
|
||||||
};
|
|
||||||
|
|
||||||
GetTimetableResponseObjectFieldsObject
|
GetTimetableResponseObjectFieldsObject
|
||||||
_$GetTimetableResponseObjectFieldsObjectFromJson(
|
_$GetTimetableResponseObjectFieldsObjectFromJson(Map<String, dynamic> json) =>
|
||||||
Map<String, dynamic> json) =>
|
GetTimetableResponseObjectFieldsObject(
|
||||||
GetTimetableResponseObjectFieldsObject(
|
id: (json['id'] as num?)?.toInt(),
|
||||||
id: (json['id'] as num?)?.toInt(),
|
name: json['name'] as String?,
|
||||||
name: json['name'] as String?,
|
longname: json['longname'] as String?,
|
||||||
longname: json['longname'] as String?,
|
externalkey: json['externalkey'] as String?,
|
||||||
externalkey: json['externalkey'] as String?,
|
);
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectFieldsObjectToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectFieldsObjectToJson(
|
||||||
GetTimetableResponseObjectFieldsObject instance) =>
|
GetTimetableResponseObjectFieldsObject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longname': instance.longname,
|
'longname': instance.longname,
|
||||||
'externalkey': instance.externalkey,
|
'externalkey': instance.externalkey,
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObjectClass _$GetTimetableResponseObjectClassFromJson(
|
GetTimetableResponseObjectClass _$GetTimetableResponseObjectClassFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObjectClass(
|
) => GetTimetableResponseObjectClass(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longname'] as String,
|
json['longname'] as String,
|
||||||
json['externalkey'] as String?,
|
json['externalkey'] as String?,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectClassToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectClassToJson(
|
||||||
GetTimetableResponseObjectClass instance) =>
|
GetTimetableResponseObjectClass instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longname': instance.longname,
|
'longname': instance.longname,
|
||||||
'externalkey': instance.externalkey,
|
'externalkey': instance.externalkey,
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObjectTeacher _$GetTimetableResponseObjectTeacherFromJson(
|
GetTimetableResponseObjectTeacher _$GetTimetableResponseObjectTeacherFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObjectTeacher(
|
) => GetTimetableResponseObjectTeacher(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longname'] as String,
|
json['longname'] as String,
|
||||||
(json['orgid'] as num?)?.toInt(),
|
(json['orgid'] as num?)?.toInt(),
|
||||||
json['orgname'] as String?,
|
json['orgname'] as String?,
|
||||||
json['externalkey'] as String?,
|
json['externalkey'] as String?,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectTeacherToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectTeacherToJson(
|
||||||
GetTimetableResponseObjectTeacher instance) =>
|
GetTimetableResponseObjectTeacher instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longname': instance.longname,
|
'longname': instance.longname,
|
||||||
'orgid': instance.orgid,
|
'orgid': instance.orgid,
|
||||||
'orgname': instance.orgname,
|
'orgname': instance.orgname,
|
||||||
'externalkey': instance.externalkey,
|
'externalkey': instance.externalkey,
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObjectSubject _$GetTimetableResponseObjectSubjectFromJson(
|
GetTimetableResponseObjectSubject _$GetTimetableResponseObjectSubjectFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObjectSubject(
|
) => GetTimetableResponseObjectSubject(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longname'] as String,
|
json['longname'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectSubjectToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectSubjectToJson(
|
||||||
GetTimetableResponseObjectSubject instance) =>
|
GetTimetableResponseObjectSubject instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longname': instance.longname,
|
'longname': instance.longname,
|
||||||
};
|
};
|
||||||
|
|
||||||
GetTimetableResponseObjectRoom _$GetTimetableResponseObjectRoomFromJson(
|
GetTimetableResponseObjectRoom _$GetTimetableResponseObjectRoomFromJson(
|
||||||
Map<String, dynamic> json) =>
|
Map<String, dynamic> json,
|
||||||
GetTimetableResponseObjectRoom(
|
) => GetTimetableResponseObjectRoom(
|
||||||
(json['id'] as num).toInt(),
|
(json['id'] as num).toInt(),
|
||||||
json['name'] as String,
|
json['name'] as String,
|
||||||
json['longname'] as String,
|
json['longname'] as String,
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$GetTimetableResponseObjectRoomToJson(
|
Map<String, dynamic> _$GetTimetableResponseObjectRoomToJson(
|
||||||
GetTimetableResponseObjectRoom instance) =>
|
GetTimetableResponseObjectRoom instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'id': instance.id,
|
'id': instance.id,
|
||||||
'name': instance.name,
|
'name': instance.name,
|
||||||
'longname': instance.longname,
|
'longname': instance.longname,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ abstract class WebuntisApi extends ApiRequest {
|
|||||||
WebuntisApi(this.method, this.genericParam, {this.authenticatedResponse = true});
|
WebuntisApi(this.method, this.genericParam, {this.authenticatedResponse = true});
|
||||||
|
|
||||||
|
|
||||||
Future<String> query(WebuntisApi untis) async {
|
Future<String> query(WebuntisApi untis, {bool retry = false}) async {
|
||||||
var query = '{"id":"ID","method":"$method","params":${untis._body()},"jsonrpc":"2.0"}';
|
var query = '{"id":"ID","method":"$method","params":${untis._body()},"jsonrpc":"2.0"}';
|
||||||
|
|
||||||
var sessionId = '0';
|
var sessionId = '0';
|
||||||
@@ -32,8 +32,9 @@ abstract class WebuntisApi extends ApiRequest {
|
|||||||
dynamic jsonData = jsonDecode(data.body);
|
dynamic jsonData = jsonDecode(data.body);
|
||||||
if(jsonData['error'] != null) {
|
if(jsonData['error'] != null) {
|
||||||
if(jsonData['error']['code'] == -8520) {
|
if(jsonData['error']['code'] == -8520) {
|
||||||
|
if(retry) throw WebuntisError('Authentication was tried (probably session timeout), but was not successful!', 1);
|
||||||
await Authenticate.createSession();
|
await Authenticate.createSession();
|
||||||
this.query(untis);
|
return await this.query(untis, retry: true);
|
||||||
} else {
|
} else {
|
||||||
throw WebuntisError(jsonData['error']['message'], jsonData['error']['code']);
|
throw WebuntisError(jsonData['error']['message'], jsonData['error']['code']);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,6 @@ import 'storage/base/settingsProvider.dart';
|
|||||||
import 'view/pages/overhang.dart';
|
import 'view/pages/overhang.dart';
|
||||||
|
|
||||||
class App extends StatefulWidget {
|
class App extends StatefulWidget {
|
||||||
static GlobalKey appContext = GlobalKey();
|
|
||||||
const App({super.key});
|
const App({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -32,6 +31,7 @@ class App extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _AppState extends State<App> with WidgetsBindingObserver {
|
class _AppState extends State<App> with WidgetsBindingObserver {
|
||||||
|
|
||||||
late Timer refetchChats;
|
late Timer refetchChats;
|
||||||
late Timer updateTimings;
|
late Timer updateTimings;
|
||||||
|
|
||||||
|
|||||||
@@ -1,64 +0,0 @@
|
|||||||
import 'dart:developer';
|
|
||||||
|
|
||||||
import 'package:background_fetch/background_fetch.dart';
|
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
|
||||||
|
|
||||||
import '../app.dart';
|
|
||||||
import '../homescreen_widgets/timetable/timetableHomeWidget.dart';
|
|
||||||
|
|
||||||
class ScheduledTask {
|
|
||||||
static final String fetchApiLastRunTimestampKey = 'fetchApiLastRunTimestamp';
|
|
||||||
|
|
||||||
static Future<void> configure() async {
|
|
||||||
var status = await BackgroundFetch.configure(BackgroundFetchConfig(
|
|
||||||
minimumFetchInterval: 15,
|
|
||||||
stopOnTerminate: false,
|
|
||||||
enableHeadless: true,
|
|
||||||
requiresBatteryNotLow: false,
|
|
||||||
requiresCharging: false,
|
|
||||||
requiresStorageNotLow: false,
|
|
||||||
requiresDeviceIdle: false,
|
|
||||||
requiredNetworkType: NetworkType.ANY,
|
|
||||||
startOnBoot: true,
|
|
||||||
), (String taskId) async {
|
|
||||||
log('Background fetch started with id $taskId');
|
|
||||||
await ScheduledTask.backgroundFetch();
|
|
||||||
BackgroundFetch.finish(taskId);
|
|
||||||
}, (String taskId) async {
|
|
||||||
log('Background fetch stopped because of an timeout with id $taskId');
|
|
||||||
BackgroundFetch.finish(taskId);
|
|
||||||
});
|
|
||||||
|
|
||||||
log('Background Fetch-API status: $status');
|
|
||||||
}
|
|
||||||
|
|
||||||
// called periodically, iOS and Android
|
|
||||||
static Future<void> backgroundFetch() async {
|
|
||||||
var sp = await SharedPreferences.getInstance();
|
|
||||||
var history = sp.getStringList(fetchApiLastRunTimestampKey) ?? List.empty(growable: true);
|
|
||||||
history.add(DateTime.now().toIso8601String());
|
|
||||||
try {
|
|
||||||
TimetableHomeWidget.update(App.appContext.currentContext!);
|
|
||||||
} on Exception catch(e) {
|
|
||||||
history.add('Got Error:');
|
|
||||||
history.add(e.toString());
|
|
||||||
history.add('--- EXCEPTION END ---');
|
|
||||||
}
|
|
||||||
sp.setStringList(fetchApiLastRunTimestampKey, history.take(100).toList());
|
|
||||||
}
|
|
||||||
|
|
||||||
// only Android, starts when app is terminated
|
|
||||||
@pragma('vm:entry-point')
|
|
||||||
static Future<void> headless(HeadlessTask task) async {
|
|
||||||
var taskId = task.taskId;
|
|
||||||
var isTimeout = task.timeout;
|
|
||||||
if (isTimeout) {
|
|
||||||
log('Background fetch headless task timed-out: $taskId');
|
|
||||||
BackgroundFetch.finish(taskId);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
log('Background fetch headless event received.');
|
|
||||||
await backgroundFetch();
|
|
||||||
BackgroundFetch.finish(taskId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,85 +0,0 @@
|
|||||||
import 'dart:async';
|
|
||||||
import 'dart:convert';
|
|
||||||
import 'dart:developer';
|
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
|
||||||
import 'package:home_widget/home_widget.dart';
|
|
||||||
import 'package:screenshot/screenshot.dart';
|
|
||||||
import 'package:syncfusion_flutter_calendar/calendar.dart';
|
|
||||||
|
|
||||||
import '../../model/accountData.dart';
|
|
||||||
import '../../model/timetable/timetableProps.dart';
|
|
||||||
import '../../storage/base/settingsProvider.dart';
|
|
||||||
import '../../theming/darkAppTheme.dart';
|
|
||||||
import '../../theming/lightAppTheme.dart';
|
|
||||||
import '../../view/pages/timetable/calendar.dart';
|
|
||||||
|
|
||||||
class TimetableHomeWidget {
|
|
||||||
static Future<void> update(BuildContext context) async {
|
|
||||||
await AccountData().waitForPopulation();
|
|
||||||
var data = TimetableProps();
|
|
||||||
var settings = SettingsProvider();
|
|
||||||
settings.waitForPopulation();
|
|
||||||
var completer = Completer();
|
|
||||||
|
|
||||||
data.addListener(() async {
|
|
||||||
if(completer.isCompleted) return;
|
|
||||||
if(data.primaryLoading()) return;
|
|
||||||
await _generate(data, settings);
|
|
||||||
completer.complete();
|
|
||||||
});
|
|
||||||
|
|
||||||
data.run();
|
|
||||||
await completer.future;
|
|
||||||
}
|
|
||||||
|
|
||||||
static Future<void> _generate(TimetableProps data, SettingsProvider settings) async {
|
|
||||||
log('Generating widget screen...');
|
|
||||||
var screenshotController = ScreenshotController();
|
|
||||||
var calendarController = CalendarController();
|
|
||||||
calendarController.displayDate = DateTime.now().copyWith(hour: 07, minute: 00);
|
|
||||||
|
|
||||||
var imageData = await screenshotController.captureFromWidget(
|
|
||||||
SizedBox(
|
|
||||||
height: 700,
|
|
||||||
width: 300,
|
|
||||||
child: Directionality(
|
|
||||||
textDirection: TextDirection.ltr,
|
|
||||||
child: MediaQuery(
|
|
||||||
data: MediaQueryData(),
|
|
||||||
child: MaterialApp(
|
|
||||||
localizationsDelegates: const [
|
|
||||||
...GlobalMaterialLocalizations.delegates,
|
|
||||||
GlobalWidgetsLocalizations.delegate,
|
|
||||||
],
|
|
||||||
supportedLocales: const [
|
|
||||||
Locale('de'),
|
|
||||||
Locale('en'),
|
|
||||||
],
|
|
||||||
locale: const Locale('de'),
|
|
||||||
darkTheme: DarkAppTheme.theme,
|
|
||||||
theme: LightAppTheme.theme,
|
|
||||||
themeMode: settings.val().appTheme,
|
|
||||||
home: ClipRRect(
|
|
||||||
borderRadius: BorderRadius.circular(20),
|
|
||||||
child: Scaffold(
|
|
||||||
body: Calendar(
|
|
||||||
controller: calendarController,
|
|
||||||
timetableProps: data,
|
|
||||||
settings: settings,
|
|
||||||
isHomeWidget: true,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
HomeWidget.saveWidgetData<String>('screen', base64.encode(imageData));
|
|
||||||
HomeWidget.updateWidget(name: 'TimetableWidget');
|
|
||||||
log('Widget screen successfully updated! (${imageData.length})');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2,7 +2,6 @@ import 'dart:async';
|
|||||||
import 'dart:developer';
|
import 'dart:developer';
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:background_fetch/background_fetch.dart';
|
|
||||||
import 'package:firebase_core/firebase_core.dart';
|
import 'package:firebase_core/firebase_core.dart';
|
||||||
import 'package:firebase_messaging/firebase_messaging.dart';
|
import 'package:firebase_messaging/firebase_messaging.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
@@ -18,7 +17,6 @@ import 'package:provider/provider.dart';
|
|||||||
|
|
||||||
import 'api/mhsl/breaker/getBreakers/getBreakersResponse.dart';
|
import 'api/mhsl/breaker/getBreakers/getBreakersResponse.dart';
|
||||||
import 'app.dart';
|
import 'app.dart';
|
||||||
import 'background_tasks/scheduledTask.dart';
|
|
||||||
import 'firebase_options.dart';
|
import 'firebase_options.dart';
|
||||||
import 'model/accountData.dart';
|
import 'model/accountData.dart';
|
||||||
import 'model/accountModel.dart';
|
import 'model/accountModel.dart';
|
||||||
@@ -48,6 +46,7 @@ Future<void> main() async {
|
|||||||
|
|
||||||
PlatformAssetBundle().load('assets/ca/lets-encrypt-r3.pem').then(addCertificateAsTrusted),
|
PlatformAssetBundle().load('assets/ca/lets-encrypt-r3.pem').then(addCertificateAsTrusted),
|
||||||
PlatformAssetBundle().load('assets/ca/lets-encrypt-r10.pem').then(addCertificateAsTrusted),
|
PlatformAssetBundle().load('assets/ca/lets-encrypt-r10.pem').then(addCertificateAsTrusted),
|
||||||
|
PlatformAssetBundle().load('assets/ca/lets-encrypt-r13.pem').then(addCertificateAsTrusted),
|
||||||
|
|
||||||
Future(() async {
|
Future(() async {
|
||||||
await HydratedStorage.build(
|
await HydratedStorage.build(
|
||||||
@@ -86,8 +85,6 @@ Future<void> main() async {
|
|||||||
child: const Main(),
|
child: const Main(),
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
BackgroundFetch.registerHeadlessTask(ScheduledTask.headless);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class Main extends StatefulWidget {
|
class Main extends StatefulWidget {
|
||||||
@@ -115,7 +112,6 @@ class _MainState extends State<Main> {
|
|||||||
Provider.of<BreakerProps>(context, listen: false).run();
|
Provider.of<BreakerProps>(context, listen: false).run();
|
||||||
});
|
});
|
||||||
|
|
||||||
ScheduledTask.configure();
|
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -130,6 +126,7 @@ class _MainState extends State<Main> {
|
|||||||
checkerboardOffscreenLayers: devToolsSettings.checkerboardOffscreenLayers,
|
checkerboardOffscreenLayers: devToolsSettings.checkerboardOffscreenLayers,
|
||||||
checkerboardRasterCacheImages: devToolsSettings.checkerboardRasterCacheImages,
|
checkerboardRasterCacheImages: devToolsSettings.checkerboardRasterCacheImages,
|
||||||
|
|
||||||
|
debugShowCheckedModeBanner: false,
|
||||||
localizationsDelegates: const [
|
localizationsDelegates: const [
|
||||||
...GlobalMaterialLocalizations.delegates,
|
...GlobalMaterialLocalizations.delegates,
|
||||||
GlobalWidgetsLocalizations.delegate,
|
GlobalWidgetsLocalizations.delegate,
|
||||||
@@ -151,7 +148,7 @@ class _MainState extends State<Main> {
|
|||||||
child: Consumer<AccountModel>(
|
child: Consumer<AccountModel>(
|
||||||
builder: (context, accountModel, child) {
|
builder: (context, accountModel, child) {
|
||||||
switch(accountModel.state) {
|
switch(accountModel.state) {
|
||||||
case AccountModelState.loggedIn: return App(key: App.appContext);
|
case AccountModelState.loggedIn: return const App();
|
||||||
case AccountModelState.loggedOut: return const Login();
|
case AccountModelState.loggedOut: return const Login();
|
||||||
case AccountModelState.undefined: return const PlaceholderView(icon: Icons.timer, text: 'Daten werden geladen');
|
case AccountModelState.undefined: return const PlaceholderView(icon: Icons.timer, text: 'Daten werden geladen');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:package_info_plus/package_info_plus.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
|
|
||||||
import '../../api/apiResponse.dart';
|
import '../../api/apiResponse.dart';
|
||||||
@@ -12,6 +13,8 @@ class BreakerProps extends DataHolder {
|
|||||||
PackageInfo? packageInfo;
|
PackageInfo? packageInfo;
|
||||||
|
|
||||||
String? isBlocked(BreakerArea? type) {
|
String? isBlocked(BreakerArea? type) {
|
||||||
|
if(kDebugMode) return null;
|
||||||
|
|
||||||
if(packageInfo == null) {
|
if(packageInfo == null) {
|
||||||
PackageInfo.fromPlatform().then((value) => packageInfo = value);
|
PackageInfo.fromPlatform().then((value) => packageInfo = value);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class EndpointData {
|
|||||||
|
|
||||||
Endpoint webuntis() => EndpointOptions(
|
Endpoint webuntis() => EndpointOptions(
|
||||||
live: Endpoint(
|
live: Endpoint(
|
||||||
domain: 'peleus.webuntis.com',
|
domain: 'marianum-fulda.webuntis.com',
|
||||||
),
|
),
|
||||||
staged: Endpoint(
|
staged: Endpoint(
|
||||||
domain: 'mhsl.eu',
|
domain: 'mhsl.eu',
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import 'package:freezed_annotation/freezed_annotation.dart';
|
|||||||
part 'loadable_state_state.freezed.dart';
|
part 'loadable_state_state.freezed.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class LoadableStateState with _$LoadableStateState {
|
abstract class LoadableStateState with _$LoadableStateState {
|
||||||
const factory LoadableStateState({
|
const factory LoadableStateState({
|
||||||
required List<ConnectivityResult>? connections,
|
required List<ConnectivityResult>? connections,
|
||||||
}) = _LoadableStateState;
|
}) = _LoadableStateState;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
|
||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// coverage:ignore-file
|
||||||
// ignore_for_file: type=lint
|
// ignore_for_file: type=lint
|
||||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||||
|
|
||||||
@@ -9,150 +9,271 @@ part of 'loadable_state_state.dart';
|
|||||||
// FreezedGenerator
|
// FreezedGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
|
// dart format off
|
||||||
T _$identity<T>(T value) => value;
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
final _privateConstructorUsedError = UnsupportedError(
|
|
||||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
|
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
mixin _$LoadableStateState {
|
mixin _$LoadableStateState {
|
||||||
List<ConnectivityResult>? get connections =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableStateState
|
List<ConnectivityResult>? get connections;
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// Create a copy of LoadableStateState
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
$LoadableStateStateCopyWith<LoadableStateState> get copyWith =>
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
throw _privateConstructorUsedError;
|
@pragma('vm:prefer-inline')
|
||||||
|
$LoadableStateStateCopyWith<LoadableStateState> get copyWith => _$LoadableStateStateCopyWithImpl<LoadableStateState>(this as LoadableStateState, _$identity);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is LoadableStateState&&const DeepCollectionEquality().equals(other.connections, connections));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,const DeepCollectionEquality().hash(connections));
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadableStateState(connections: $connections)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class $LoadableStateStateCopyWith<$Res> {
|
abstract mixin class $LoadableStateStateCopyWith<$Res> {
|
||||||
factory $LoadableStateStateCopyWith(
|
factory $LoadableStateStateCopyWith(LoadableStateState value, $Res Function(LoadableStateState) _then) = _$LoadableStateStateCopyWithImpl;
|
||||||
LoadableStateState value, $Res Function(LoadableStateState) then) =
|
@useResult
|
||||||
_$LoadableStateStateCopyWithImpl<$Res, LoadableStateState>;
|
$Res call({
|
||||||
@useResult
|
List<ConnectivityResult>? connections
|
||||||
$Res call({List<ConnectivityResult>? connections});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
class _$LoadableStateStateCopyWithImpl<$Res, $Val extends LoadableStateState>
|
class _$LoadableStateStateCopyWithImpl<$Res>
|
||||||
implements $LoadableStateStateCopyWith<$Res> {
|
implements $LoadableStateStateCopyWith<$Res> {
|
||||||
_$LoadableStateStateCopyWithImpl(this._value, this._then);
|
_$LoadableStateStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
// ignore: unused_field
|
final LoadableStateState _self;
|
||||||
final $Val _value;
|
final $Res Function(LoadableStateState) _then;
|
||||||
// ignore: unused_field
|
|
||||||
final $Res Function($Val) _then;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableStateState
|
/// Create a copy of LoadableStateState
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline') @override $Res call({Object? connections = freezed,}) {
|
||||||
@override
|
return _then(_self.copyWith(
|
||||||
$Res call({
|
connections: freezed == connections ? _self.connections : connections // ignore: cast_nullable_to_non_nullable
|
||||||
Object? connections = freezed,
|
as List<ConnectivityResult>?,
|
||||||
}) {
|
));
|
||||||
return _then(_value.copyWith(
|
|
||||||
connections: freezed == connections
|
|
||||||
? _value.connections
|
|
||||||
: connections // ignore: cast_nullable_to_non_nullable
|
|
||||||
as List<ConnectivityResult>?,
|
|
||||||
) as $Val);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
abstract class _$$LoadableStateStateImplCopyWith<$Res>
|
|
||||||
implements $LoadableStateStateCopyWith<$Res> {
|
|
||||||
factory _$$LoadableStateStateImplCopyWith(_$LoadableStateStateImpl value,
|
|
||||||
$Res Function(_$LoadableStateStateImpl) then) =
|
|
||||||
__$$LoadableStateStateImplCopyWithImpl<$Res>;
|
|
||||||
@override
|
|
||||||
@useResult
|
|
||||||
$Res call({List<ConnectivityResult>? connections});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
class __$$LoadableStateStateImplCopyWithImpl<$Res>
|
|
||||||
extends _$LoadableStateStateCopyWithImpl<$Res, _$LoadableStateStateImpl>
|
|
||||||
implements _$$LoadableStateStateImplCopyWith<$Res> {
|
|
||||||
__$$LoadableStateStateImplCopyWithImpl(_$LoadableStateStateImpl _value,
|
|
||||||
$Res Function(_$LoadableStateStateImpl) _then)
|
|
||||||
: super(_value, _then);
|
|
||||||
|
|
||||||
/// Create a copy of LoadableStateState
|
/// Adds pattern-matching-related methods to [LoadableStateState].
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
extension LoadableStateStatePatterns on LoadableStateState {
|
||||||
@pragma('vm:prefer-inline')
|
/// A variant of `map` that fallback to returning `orElse`.
|
||||||
@override
|
///
|
||||||
$Res call({
|
/// It is equivalent to doing:
|
||||||
Object? connections = freezed,
|
/// ```dart
|
||||||
}) {
|
/// switch (sealedClass) {
|
||||||
return _then(_$LoadableStateStateImpl(
|
/// case final Subclass value:
|
||||||
connections: freezed == connections
|
/// return ...;
|
||||||
? _value._connections
|
/// case _:
|
||||||
: connections // ignore: cast_nullable_to_non_nullable
|
/// return orElse();
|
||||||
as List<ConnectivityResult>?,
|
/// }
|
||||||
));
|
/// ```
|
||||||
}
|
|
||||||
|
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _LoadableStateState value)? $default,{required TResult orElse(),}){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// Callbacks receives the raw object, upcasted.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case final Subclass2 value:
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _LoadableStateState value) $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState():
|
||||||
|
return $default(_that);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `map` that fallback to returning `null`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _LoadableStateState value)? $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to an `orElse` callback.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( List<ConnectivityResult>? connections)? $default,{required TResult orElse(),}) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState() when $default != null:
|
||||||
|
return $default(_that.connections);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// As opposed to `map`, this offers destructuring.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case Subclass2(:final field2):
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( List<ConnectivityResult>? connections) $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState():
|
||||||
|
return $default(_that.connections);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to returning `null`
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( List<ConnectivityResult>? connections)? $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableStateState() when $default != null:
|
||||||
|
return $default(_that.connections);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
|
|
||||||
class _$LoadableStateStateImpl implements _LoadableStateState {
|
|
||||||
const _$LoadableStateStateImpl(
|
|
||||||
{required final List<ConnectivityResult>? connections})
|
|
||||||
: _connections = connections;
|
|
||||||
|
|
||||||
final List<ConnectivityResult>? _connections;
|
class _LoadableStateState implements LoadableStateState {
|
||||||
@override
|
const _LoadableStateState({required final List<ConnectivityResult>? connections}): _connections = connections;
|
||||||
List<ConnectivityResult>? get connections {
|
|
||||||
final value = _connections;
|
|
||||||
if (value == null) return null;
|
|
||||||
if (_connections is EqualUnmodifiableListView) return _connections;
|
|
||||||
// ignore: implicit_dynamic_type
|
|
||||||
return EqualUnmodifiableListView(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
final List<ConnectivityResult>? _connections;
|
||||||
String toString() {
|
@override List<ConnectivityResult>? get connections {
|
||||||
return 'LoadableStateState(connections: $connections)';
|
final value = _connections;
|
||||||
}
|
if (value == null) return null;
|
||||||
|
if (_connections is EqualUnmodifiableListView) return _connections;
|
||||||
@override
|
// ignore: implicit_dynamic_type
|
||||||
bool operator ==(Object other) {
|
return EqualUnmodifiableListView(value);
|
||||||
return identical(this, other) ||
|
|
||||||
(other.runtimeType == runtimeType &&
|
|
||||||
other is _$LoadableStateStateImpl &&
|
|
||||||
const DeepCollectionEquality()
|
|
||||||
.equals(other._connections, _connections));
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
int get hashCode => Object.hash(
|
|
||||||
runtimeType, const DeepCollectionEquality().hash(_connections));
|
|
||||||
|
|
||||||
/// Create a copy of LoadableStateState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
@override
|
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
_$$LoadableStateStateImplCopyWith<_$LoadableStateStateImpl> get copyWith =>
|
|
||||||
__$$LoadableStateStateImplCopyWithImpl<_$LoadableStateStateImpl>(
|
|
||||||
this, _$identity);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _LoadableStateState implements LoadableStateState {
|
|
||||||
const factory _LoadableStateState(
|
|
||||||
{required final List<ConnectivityResult>? connections}) =
|
|
||||||
_$LoadableStateStateImpl;
|
|
||||||
|
|
||||||
@override
|
/// Create a copy of LoadableStateState
|
||||||
List<ConnectivityResult>? get connections;
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
_$LoadableStateStateCopyWith<_LoadableStateState> get copyWith => __$LoadableStateStateCopyWithImpl<_LoadableStateState>(this, _$identity);
|
||||||
|
|
||||||
/// Create a copy of LoadableStateState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@override
|
@override
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
bool operator ==(Object other) {
|
||||||
_$$LoadableStateStateImplCopyWith<_$LoadableStateStateImpl> get copyWith =>
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is _LoadableStateState&&const DeepCollectionEquality().equals(other._connections, _connections));
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,const DeepCollectionEquality().hash(_connections));
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadableStateState(connections: $connections)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract mixin class _$LoadableStateStateCopyWith<$Res> implements $LoadableStateStateCopyWith<$Res> {
|
||||||
|
factory _$LoadableStateStateCopyWith(_LoadableStateState value, $Res Function(_LoadableStateState) _then) = __$LoadableStateStateCopyWithImpl;
|
||||||
|
@override @useResult
|
||||||
|
$Res call({
|
||||||
|
List<ConnectivityResult>? connections
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
/// @nodoc
|
||||||
|
class __$LoadableStateStateCopyWithImpl<$Res>
|
||||||
|
implements _$LoadableStateStateCopyWith<$Res> {
|
||||||
|
__$LoadableStateStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
|
final _LoadableStateState _self;
|
||||||
|
final $Res Function(_LoadableStateState) _then;
|
||||||
|
|
||||||
|
/// Create a copy of LoadableStateState
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @pragma('vm:prefer-inline') $Res call({Object? connections = freezed,}) {
|
||||||
|
return _then(_LoadableStateState(
|
||||||
|
connections: freezed == connections ? _self._connections : connections // ignore: cast_nullable_to_non_nullable
|
||||||
|
as List<ConnectivityResult>?,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// dart format on
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'loading_error.dart';
|
|||||||
part 'loadable_state.freezed.dart';
|
part 'loadable_state.freezed.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class LoadableState<TState> with _$LoadableState {
|
abstract class LoadableState<TState> with _$LoadableState<TState> {
|
||||||
const LoadableState._();
|
const LoadableState._();
|
||||||
|
|
||||||
const factory LoadableState({
|
const factory LoadableState({
|
||||||
@@ -14,7 +14,7 @@ class LoadableState<TState> with _$LoadableState {
|
|||||||
required int? lastFetch,
|
required int? lastFetch,
|
||||||
required void Function()? reFetch,
|
required void Function()? reFetch,
|
||||||
required LoadingError? error,
|
required LoadingError? error,
|
||||||
}) = _LoadableState;
|
}) = _LoadableState<TState>;
|
||||||
|
|
||||||
bool _hasError() => error != null;
|
bool _hasError() => error != null;
|
||||||
bool _hasData() => data != null;
|
bool _hasData() => data != null;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
|
||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// coverage:ignore-file
|
||||||
// ignore_for_file: type=lint
|
// ignore_for_file: type=lint
|
||||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||||
|
|
||||||
@@ -9,246 +9,299 @@ part of 'loadable_state.dart';
|
|||||||
// FreezedGenerator
|
// FreezedGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
|
// dart format off
|
||||||
T _$identity<T>(T value) => value;
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
final _privateConstructorUsedError = UnsupportedError(
|
|
||||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
|
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
mixin _$LoadableState<TState> {
|
mixin _$LoadableState<TState> {
|
||||||
bool get isLoading => throw _privateConstructorUsedError;
|
|
||||||
TState? get data => throw _privateConstructorUsedError;
|
|
||||||
int? get lastFetch => throw _privateConstructorUsedError;
|
|
||||||
void Function()? get reFetch => throw _privateConstructorUsedError;
|
|
||||||
LoadingError? get error => throw _privateConstructorUsedError;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
bool get isLoading; TState? get data; int? get lastFetch; void Function()? get reFetch; LoadingError? get error;
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// Create a copy of LoadableState
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
$LoadableStateCopyWith<TState, LoadableState<TState>> get copyWith =>
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
throw _privateConstructorUsedError;
|
@pragma('vm:prefer-inline')
|
||||||
|
$LoadableStateCopyWith<TState, LoadableState<TState>> get copyWith => _$LoadableStateCopyWithImpl<TState, LoadableState<TState>>(this as LoadableState<TState>, _$identity);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is LoadableState<TState>&&(identical(other.isLoading, isLoading) || other.isLoading == isLoading)&&const DeepCollectionEquality().equals(other.data, data)&&(identical(other.lastFetch, lastFetch) || other.lastFetch == lastFetch)&&(identical(other.reFetch, reFetch) || other.reFetch == reFetch)&&(identical(other.error, error) || other.error == error));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,isLoading,const DeepCollectionEquality().hash(data),lastFetch,reFetch,error);
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadableState<$TState>(isLoading: $isLoading, data: $data, lastFetch: $lastFetch, reFetch: $reFetch, error: $error)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class $LoadableStateCopyWith<TState, $Res> {
|
abstract mixin class $LoadableStateCopyWith<TState,$Res> {
|
||||||
factory $LoadableStateCopyWith(LoadableState<TState> value,
|
factory $LoadableStateCopyWith(LoadableState<TState> value, $Res Function(LoadableState<TState>) _then) = _$LoadableStateCopyWithImpl;
|
||||||
$Res Function(LoadableState<TState>) then) =
|
@useResult
|
||||||
_$LoadableStateCopyWithImpl<TState, $Res, LoadableState<TState>>;
|
$Res call({
|
||||||
@useResult
|
bool isLoading, TState? data, int? lastFetch, void Function()? reFetch, LoadingError? error
|
||||||
$Res call(
|
});
|
||||||
{bool isLoading,
|
|
||||||
TState? data,
|
|
||||||
int? lastFetch,
|
$LoadingErrorCopyWith<$Res>? get error;
|
||||||
void Function()? reFetch,
|
|
||||||
LoadingError? error});
|
|
||||||
|
|
||||||
$LoadingErrorCopyWith<$Res>? get error;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
class _$LoadableStateCopyWithImpl<TState, $Res,
|
class _$LoadableStateCopyWithImpl<TState,$Res>
|
||||||
$Val extends LoadableState<TState>>
|
|
||||||
implements $LoadableStateCopyWith<TState, $Res> {
|
implements $LoadableStateCopyWith<TState, $Res> {
|
||||||
_$LoadableStateCopyWithImpl(this._value, this._then);
|
_$LoadableStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
// ignore: unused_field
|
final LoadableState<TState> _self;
|
||||||
final $Val _value;
|
final $Res Function(LoadableState<TState>) _then;
|
||||||
// ignore: unused_field
|
|
||||||
final $Res Function($Val) _then;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
/// Create a copy of LoadableState
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline') @override $Res call({Object? isLoading = null,Object? data = freezed,Object? lastFetch = freezed,Object? reFetch = freezed,Object? error = freezed,}) {
|
||||||
@override
|
return _then(_self.copyWith(
|
||||||
$Res call({
|
isLoading: null == isLoading ? _self.isLoading : isLoading // ignore: cast_nullable_to_non_nullable
|
||||||
Object? isLoading = null,
|
as bool,data: freezed == data ? _self.data : data // ignore: cast_nullable_to_non_nullable
|
||||||
Object? data = freezed,
|
as TState?,lastFetch: freezed == lastFetch ? _self.lastFetch : lastFetch // ignore: cast_nullable_to_non_nullable
|
||||||
Object? lastFetch = freezed,
|
as int?,reFetch: freezed == reFetch ? _self.reFetch : reFetch // ignore: cast_nullable_to_non_nullable
|
||||||
Object? reFetch = freezed,
|
as void Function()?,error: freezed == error ? _self.error : error // ignore: cast_nullable_to_non_nullable
|
||||||
Object? error = freezed,
|
as LoadingError?,
|
||||||
}) {
|
));
|
||||||
return _then(_value.copyWith(
|
}
|
||||||
isLoading: null == isLoading
|
/// Create a copy of LoadableState
|
||||||
? _value.isLoading
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
: isLoading // ignore: cast_nullable_to_non_nullable
|
@override
|
||||||
as bool,
|
@pragma('vm:prefer-inline')
|
||||||
data: freezed == data
|
$LoadingErrorCopyWith<$Res>? get error {
|
||||||
? _value.data
|
if (_self.error == null) {
|
||||||
: data // ignore: cast_nullable_to_non_nullable
|
return null;
|
||||||
as TState?,
|
|
||||||
lastFetch: freezed == lastFetch
|
|
||||||
? _value.lastFetch
|
|
||||||
: lastFetch // ignore: cast_nullable_to_non_nullable
|
|
||||||
as int?,
|
|
||||||
reFetch: freezed == reFetch
|
|
||||||
? _value.reFetch
|
|
||||||
: reFetch // ignore: cast_nullable_to_non_nullable
|
|
||||||
as void Function()?,
|
|
||||||
error: freezed == error
|
|
||||||
? _value.error
|
|
||||||
: error // ignore: cast_nullable_to_non_nullable
|
|
||||||
as LoadingError?,
|
|
||||||
) as $Val);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
return $LoadingErrorCopyWith<$Res>(_self.error!, (value) {
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
return _then(_self.copyWith(error: value));
|
||||||
@override
|
});
|
||||||
@pragma('vm:prefer-inline')
|
}
|
||||||
$LoadingErrorCopyWith<$Res>? get error {
|
|
||||||
if (_value.error == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $LoadingErrorCopyWith<$Res>(_value.error!, (value) {
|
|
||||||
return _then(_value.copyWith(error: value) as $Val);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
abstract class _$$LoadableStateImplCopyWith<TState, $Res>
|
|
||||||
implements $LoadableStateCopyWith<TState, $Res> {
|
|
||||||
factory _$$LoadableStateImplCopyWith(_$LoadableStateImpl<TState> value,
|
|
||||||
$Res Function(_$LoadableStateImpl<TState>) then) =
|
|
||||||
__$$LoadableStateImplCopyWithImpl<TState, $Res>;
|
|
||||||
@override
|
|
||||||
@useResult
|
|
||||||
$Res call(
|
|
||||||
{bool isLoading,
|
|
||||||
TState? data,
|
|
||||||
int? lastFetch,
|
|
||||||
void Function()? reFetch,
|
|
||||||
LoadingError? error});
|
|
||||||
|
|
||||||
@override
|
/// Adds pattern-matching-related methods to [LoadableState].
|
||||||
$LoadingErrorCopyWith<$Res>? get error;
|
extension LoadableStatePatterns<TState> on LoadableState<TState> {
|
||||||
|
/// A variant of `map` that fallback to returning `orElse`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _LoadableState<TState> value)? $default,{required TResult orElse(),}){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// Callbacks receives the raw object, upcasted.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case final Subclass2 value:
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _LoadableState<TState> value) $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState():
|
||||||
|
return $default(_that);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `map` that fallback to returning `null`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _LoadableState<TState> value)? $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to an `orElse` callback.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( bool isLoading, TState? data, int? lastFetch, void Function()? reFetch, LoadingError? error)? $default,{required TResult orElse(),}) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState() when $default != null:
|
||||||
|
return $default(_that.isLoading,_that.data,_that.lastFetch,_that.reFetch,_that.error);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// As opposed to `map`, this offers destructuring.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case Subclass2(:final field2):
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( bool isLoading, TState? data, int? lastFetch, void Function()? reFetch, LoadingError? error) $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState():
|
||||||
|
return $default(_that.isLoading,_that.data,_that.lastFetch,_that.reFetch,_that.error);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to returning `null`
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( bool isLoading, TState? data, int? lastFetch, void Function()? reFetch, LoadingError? error)? $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableState() when $default != null:
|
||||||
|
return $default(_that.isLoading,_that.data,_that.lastFetch,_that.reFetch,_that.error);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
class __$$LoadableStateImplCopyWithImpl<TState, $Res>
|
|
||||||
extends _$LoadableStateCopyWithImpl<TState, $Res,
|
|
||||||
_$LoadableStateImpl<TState>>
|
|
||||||
implements _$$LoadableStateImplCopyWith<TState, $Res> {
|
|
||||||
__$$LoadableStateImplCopyWithImpl(_$LoadableStateImpl<TState> _value,
|
|
||||||
$Res Function(_$LoadableStateImpl<TState>) _then)
|
|
||||||
: super(_value, _then);
|
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
@override
|
|
||||||
$Res call({
|
|
||||||
Object? isLoading = null,
|
|
||||||
Object? data = freezed,
|
|
||||||
Object? lastFetch = freezed,
|
|
||||||
Object? reFetch = freezed,
|
|
||||||
Object? error = freezed,
|
|
||||||
}) {
|
|
||||||
return _then(_$LoadableStateImpl<TState>(
|
|
||||||
isLoading: null == isLoading
|
|
||||||
? _value.isLoading
|
|
||||||
: isLoading // ignore: cast_nullable_to_non_nullable
|
|
||||||
as bool,
|
|
||||||
data: freezed == data
|
|
||||||
? _value.data
|
|
||||||
: data // ignore: cast_nullable_to_non_nullable
|
|
||||||
as TState?,
|
|
||||||
lastFetch: freezed == lastFetch
|
|
||||||
? _value.lastFetch
|
|
||||||
: lastFetch // ignore: cast_nullable_to_non_nullable
|
|
||||||
as int?,
|
|
||||||
reFetch: freezed == reFetch
|
|
||||||
? _value.reFetch
|
|
||||||
: reFetch // ignore: cast_nullable_to_non_nullable
|
|
||||||
as void Function()?,
|
|
||||||
error: freezed == error
|
|
||||||
? _value.error
|
|
||||||
: error // ignore: cast_nullable_to_non_nullable
|
|
||||||
as LoadingError?,
|
|
||||||
));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
|
|
||||||
class _$LoadableStateImpl<TState> extends _LoadableState<TState> {
|
|
||||||
const _$LoadableStateImpl(
|
|
||||||
{required this.isLoading,
|
|
||||||
required this.data,
|
|
||||||
required this.lastFetch,
|
|
||||||
required this.reFetch,
|
|
||||||
required this.error})
|
|
||||||
: super._();
|
|
||||||
|
|
||||||
@override
|
class _LoadableState<TState> extends LoadableState<TState> {
|
||||||
final bool isLoading;
|
const _LoadableState({required this.isLoading, required this.data, required this.lastFetch, required this.reFetch, required this.error}): super._();
|
||||||
@override
|
|
||||||
final TState? data;
|
|
||||||
@override
|
|
||||||
final int? lastFetch;
|
|
||||||
@override
|
|
||||||
final void Function()? reFetch;
|
|
||||||
@override
|
|
||||||
final LoadingError? error;
|
|
||||||
|
|
||||||
@override
|
@override final bool isLoading;
|
||||||
String toString() {
|
@override final TState? data;
|
||||||
return 'LoadableState<$TState>(isLoading: $isLoading, data: $data, lastFetch: $lastFetch, reFetch: $reFetch, error: $error)';
|
@override final int? lastFetch;
|
||||||
}
|
@override final void Function()? reFetch;
|
||||||
|
@override final LoadingError? error;
|
||||||
|
|
||||||
@override
|
/// Create a copy of LoadableState
|
||||||
bool operator ==(Object other) {
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
return identical(this, other) ||
|
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
(other.runtimeType == runtimeType &&
|
@pragma('vm:prefer-inline')
|
||||||
other is _$LoadableStateImpl<TState> &&
|
_$LoadableStateCopyWith<TState, _LoadableState<TState>> get copyWith => __$LoadableStateCopyWithImpl<TState, _LoadableState<TState>>(this, _$identity);
|
||||||
(identical(other.isLoading, isLoading) ||
|
|
||||||
other.isLoading == isLoading) &&
|
|
||||||
const DeepCollectionEquality().equals(other.data, data) &&
|
|
||||||
(identical(other.lastFetch, lastFetch) ||
|
|
||||||
other.lastFetch == lastFetch) &&
|
|
||||||
(identical(other.reFetch, reFetch) || other.reFetch == reFetch) &&
|
|
||||||
(identical(other.error, error) || other.error == error));
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
int get hashCode => Object.hash(runtimeType, isLoading,
|
|
||||||
const DeepCollectionEquality().hash(data), lastFetch, reFetch, error);
|
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
@override
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
bool operator ==(Object other) {
|
||||||
@override
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is _LoadableState<TState>&&(identical(other.isLoading, isLoading) || other.isLoading == isLoading)&&const DeepCollectionEquality().equals(other.data, data)&&(identical(other.lastFetch, lastFetch) || other.lastFetch == lastFetch)&&(identical(other.reFetch, reFetch) || other.reFetch == reFetch)&&(identical(other.error, error) || other.error == error));
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
_$$LoadableStateImplCopyWith<TState, _$LoadableStateImpl<TState>>
|
|
||||||
get copyWith => __$$LoadableStateImplCopyWithImpl<TState,
|
|
||||||
_$LoadableStateImpl<TState>>(this, _$identity);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _LoadableState<TState> extends LoadableState<TState> {
|
|
||||||
const factory _LoadableState(
|
|
||||||
{required final bool isLoading,
|
|
||||||
required final TState? data,
|
|
||||||
required final int? lastFetch,
|
|
||||||
required final void Function()? reFetch,
|
|
||||||
required final LoadingError? error}) = _$LoadableStateImpl<TState>;
|
|
||||||
const _LoadableState._() : super._();
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool get isLoading;
|
int get hashCode => Object.hash(runtimeType,isLoading,const DeepCollectionEquality().hash(data),lastFetch,reFetch,error);
|
||||||
@override
|
|
||||||
TState? get data;
|
|
||||||
@override
|
|
||||||
int? get lastFetch;
|
|
||||||
@override
|
|
||||||
void Function()? get reFetch;
|
|
||||||
@override
|
|
||||||
LoadingError? get error;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableState
|
@override
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
String toString() {
|
||||||
@override
|
return 'LoadableState<$TState>(isLoading: $isLoading, data: $data, lastFetch: $lastFetch, reFetch: $reFetch, error: $error)';
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
_$$LoadableStateImplCopyWith<TState, _$LoadableStateImpl<TState>>
|
|
||||||
get copyWith => throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract mixin class _$LoadableStateCopyWith<TState,$Res> implements $LoadableStateCopyWith<TState, $Res> {
|
||||||
|
factory _$LoadableStateCopyWith(_LoadableState<TState> value, $Res Function(_LoadableState<TState>) _then) = __$LoadableStateCopyWithImpl;
|
||||||
|
@override @useResult
|
||||||
|
$Res call({
|
||||||
|
bool isLoading, TState? data, int? lastFetch, void Function()? reFetch, LoadingError? error
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@override $LoadingErrorCopyWith<$Res>? get error;
|
||||||
|
|
||||||
|
}
|
||||||
|
/// @nodoc
|
||||||
|
class __$LoadableStateCopyWithImpl<TState,$Res>
|
||||||
|
implements _$LoadableStateCopyWith<TState, $Res> {
|
||||||
|
__$LoadableStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
|
final _LoadableState<TState> _self;
|
||||||
|
final $Res Function(_LoadableState<TState>) _then;
|
||||||
|
|
||||||
|
/// Create a copy of LoadableState
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @pragma('vm:prefer-inline') $Res call({Object? isLoading = null,Object? data = freezed,Object? lastFetch = freezed,Object? reFetch = freezed,Object? error = freezed,}) {
|
||||||
|
return _then(_LoadableState<TState>(
|
||||||
|
isLoading: null == isLoading ? _self.isLoading : isLoading // ignore: cast_nullable_to_non_nullable
|
||||||
|
as bool,data: freezed == data ? _self.data : data // ignore: cast_nullable_to_non_nullable
|
||||||
|
as TState?,lastFetch: freezed == lastFetch ? _self.lastFetch : lastFetch // ignore: cast_nullable_to_non_nullable
|
||||||
|
as int?,reFetch: freezed == reFetch ? _self.reFetch : reFetch // ignore: cast_nullable_to_non_nullable
|
||||||
|
as void Function()?,error: freezed == error ? _self.error : error // ignore: cast_nullable_to_non_nullable
|
||||||
|
as LoadingError?,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Create a copy of LoadableState
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
$LoadingErrorCopyWith<$Res>? get error {
|
||||||
|
if (_self.error == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $LoadingErrorCopyWith<$Res>(_self.error!, (value) {
|
||||||
|
return _then(_self.copyWith(error: value));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// dart format on
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'package:freezed_annotation/freezed_annotation.dart';
|
|||||||
part 'loading_error.freezed.dart';
|
part 'loading_error.freezed.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class LoadingError with _$LoadingError {
|
abstract class LoadingError with _$LoadingError {
|
||||||
const factory LoadingError({
|
const factory LoadingError({
|
||||||
required String message,
|
required String message,
|
||||||
@Default(false) bool allowRetry,
|
@Default(false) bool allowRetry,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
|
||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// coverage:ignore-file
|
||||||
// ignore_for_file: type=lint
|
// ignore_for_file: type=lint
|
||||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||||
|
|
||||||
@@ -9,155 +9,266 @@ part of 'loading_error.dart';
|
|||||||
// FreezedGenerator
|
// FreezedGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
|
// dart format off
|
||||||
T _$identity<T>(T value) => value;
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
final _privateConstructorUsedError = UnsupportedError(
|
|
||||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
|
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
mixin _$LoadingError {
|
mixin _$LoadingError {
|
||||||
String get message => throw _privateConstructorUsedError;
|
|
||||||
bool get allowRetry => throw _privateConstructorUsedError;
|
|
||||||
|
|
||||||
/// Create a copy of LoadingError
|
String get message; bool get allowRetry;
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// Create a copy of LoadingError
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
$LoadingErrorCopyWith<LoadingError> get copyWith =>
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
throw _privateConstructorUsedError;
|
@pragma('vm:prefer-inline')
|
||||||
|
$LoadingErrorCopyWith<LoadingError> get copyWith => _$LoadingErrorCopyWithImpl<LoadingError>(this as LoadingError, _$identity);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is LoadingError&&(identical(other.message, message) || other.message == message)&&(identical(other.allowRetry, allowRetry) || other.allowRetry == allowRetry));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,message,allowRetry);
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadingError(message: $message, allowRetry: $allowRetry)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class $LoadingErrorCopyWith<$Res> {
|
abstract mixin class $LoadingErrorCopyWith<$Res> {
|
||||||
factory $LoadingErrorCopyWith(
|
factory $LoadingErrorCopyWith(LoadingError value, $Res Function(LoadingError) _then) = _$LoadingErrorCopyWithImpl;
|
||||||
LoadingError value, $Res Function(LoadingError) then) =
|
@useResult
|
||||||
_$LoadingErrorCopyWithImpl<$Res, LoadingError>;
|
$Res call({
|
||||||
@useResult
|
String message, bool allowRetry
|
||||||
$Res call({String message, bool allowRetry});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
class _$LoadingErrorCopyWithImpl<$Res, $Val extends LoadingError>
|
class _$LoadingErrorCopyWithImpl<$Res>
|
||||||
implements $LoadingErrorCopyWith<$Res> {
|
implements $LoadingErrorCopyWith<$Res> {
|
||||||
_$LoadingErrorCopyWithImpl(this._value, this._then);
|
_$LoadingErrorCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
// ignore: unused_field
|
final LoadingError _self;
|
||||||
final $Val _value;
|
final $Res Function(LoadingError) _then;
|
||||||
// ignore: unused_field
|
|
||||||
final $Res Function($Val) _then;
|
|
||||||
|
|
||||||
/// Create a copy of LoadingError
|
/// Create a copy of LoadingError
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline') @override $Res call({Object? message = null,Object? allowRetry = null,}) {
|
||||||
@override
|
return _then(_self.copyWith(
|
||||||
$Res call({
|
message: null == message ? _self.message : message // ignore: cast_nullable_to_non_nullable
|
||||||
Object? message = null,
|
as String,allowRetry: null == allowRetry ? _self.allowRetry : allowRetry // ignore: cast_nullable_to_non_nullable
|
||||||
Object? allowRetry = null,
|
as bool,
|
||||||
}) {
|
));
|
||||||
return _then(_value.copyWith(
|
|
||||||
message: null == message
|
|
||||||
? _value.message
|
|
||||||
: message // ignore: cast_nullable_to_non_nullable
|
|
||||||
as String,
|
|
||||||
allowRetry: null == allowRetry
|
|
||||||
? _value.allowRetry
|
|
||||||
: allowRetry // ignore: cast_nullable_to_non_nullable
|
|
||||||
as bool,
|
|
||||||
) as $Val);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
abstract class _$$LoadingErrorImplCopyWith<$Res>
|
|
||||||
implements $LoadingErrorCopyWith<$Res> {
|
|
||||||
factory _$$LoadingErrorImplCopyWith(
|
|
||||||
_$LoadingErrorImpl value, $Res Function(_$LoadingErrorImpl) then) =
|
|
||||||
__$$LoadingErrorImplCopyWithImpl<$Res>;
|
|
||||||
@override
|
|
||||||
@useResult
|
|
||||||
$Res call({String message, bool allowRetry});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
class __$$LoadingErrorImplCopyWithImpl<$Res>
|
|
||||||
extends _$LoadingErrorCopyWithImpl<$Res, _$LoadingErrorImpl>
|
|
||||||
implements _$$LoadingErrorImplCopyWith<$Res> {
|
|
||||||
__$$LoadingErrorImplCopyWithImpl(
|
|
||||||
_$LoadingErrorImpl _value, $Res Function(_$LoadingErrorImpl) _then)
|
|
||||||
: super(_value, _then);
|
|
||||||
|
|
||||||
/// Create a copy of LoadingError
|
/// Adds pattern-matching-related methods to [LoadingError].
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
extension LoadingErrorPatterns on LoadingError {
|
||||||
@pragma('vm:prefer-inline')
|
/// A variant of `map` that fallback to returning `orElse`.
|
||||||
@override
|
///
|
||||||
$Res call({
|
/// It is equivalent to doing:
|
||||||
Object? message = null,
|
/// ```dart
|
||||||
Object? allowRetry = null,
|
/// switch (sealedClass) {
|
||||||
}) {
|
/// case final Subclass value:
|
||||||
return _then(_$LoadingErrorImpl(
|
/// return ...;
|
||||||
message: null == message
|
/// case _:
|
||||||
? _value.message
|
/// return orElse();
|
||||||
: message // ignore: cast_nullable_to_non_nullable
|
/// }
|
||||||
as String,
|
/// ```
|
||||||
allowRetry: null == allowRetry
|
|
||||||
? _value.allowRetry
|
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _LoadingError value)? $default,{required TResult orElse(),}){
|
||||||
: allowRetry // ignore: cast_nullable_to_non_nullable
|
final _that = this;
|
||||||
as bool,
|
switch (_that) {
|
||||||
));
|
case _LoadingError() when $default != null:
|
||||||
}
|
return $default(_that);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// Callbacks receives the raw object, upcasted.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case final Subclass2 value:
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _LoadingError value) $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadingError():
|
||||||
|
return $default(_that);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `map` that fallback to returning `null`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _LoadingError value)? $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadingError() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to an `orElse` callback.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String message, bool allowRetry)? $default,{required TResult orElse(),}) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadingError() when $default != null:
|
||||||
|
return $default(_that.message,_that.allowRetry);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// As opposed to `map`, this offers destructuring.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case Subclass2(:final field2):
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String message, bool allowRetry) $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadingError():
|
||||||
|
return $default(_that.message,_that.allowRetry);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to returning `null`
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String message, bool allowRetry)? $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadingError() when $default != null:
|
||||||
|
return $default(_that.message,_that.allowRetry);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
|
|
||||||
class _$LoadingErrorImpl implements _LoadingError {
|
|
||||||
const _$LoadingErrorImpl({required this.message, this.allowRetry = false});
|
|
||||||
|
|
||||||
@override
|
class _LoadingError implements LoadingError {
|
||||||
final String message;
|
const _LoadingError({required this.message, this.allowRetry = false});
|
||||||
@override
|
|
||||||
@JsonKey()
|
|
||||||
final bool allowRetry;
|
|
||||||
|
|
||||||
@override
|
@override final String message;
|
||||||
String toString() {
|
@override@JsonKey() final bool allowRetry;
|
||||||
return 'LoadingError(message: $message, allowRetry: $allowRetry)';
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
/// Create a copy of LoadingError
|
||||||
bool operator ==(Object other) {
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
return identical(this, other) ||
|
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
(other.runtimeType == runtimeType &&
|
@pragma('vm:prefer-inline')
|
||||||
other is _$LoadingErrorImpl &&
|
_$LoadingErrorCopyWith<_LoadingError> get copyWith => __$LoadingErrorCopyWithImpl<_LoadingError>(this, _$identity);
|
||||||
(identical(other.message, message) || other.message == message) &&
|
|
||||||
(identical(other.allowRetry, allowRetry) ||
|
|
||||||
other.allowRetry == allowRetry));
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
int get hashCode => Object.hash(runtimeType, message, allowRetry);
|
|
||||||
|
|
||||||
/// Create a copy of LoadingError
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
@override
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
bool operator ==(Object other) {
|
||||||
@override
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is _LoadingError&&(identical(other.message, message) || other.message == message)&&(identical(other.allowRetry, allowRetry) || other.allowRetry == allowRetry));
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
_$$LoadingErrorImplCopyWith<_$LoadingErrorImpl> get copyWith =>
|
|
||||||
__$$LoadingErrorImplCopyWithImpl<_$LoadingErrorImpl>(this, _$identity);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _LoadingError implements LoadingError {
|
|
||||||
const factory _LoadingError(
|
|
||||||
{required final String message,
|
|
||||||
final bool allowRetry}) = _$LoadingErrorImpl;
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get message;
|
int get hashCode => Object.hash(runtimeType,message,allowRetry);
|
||||||
@override
|
|
||||||
bool get allowRetry;
|
|
||||||
|
|
||||||
/// Create a copy of LoadingError
|
@override
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
String toString() {
|
||||||
@override
|
return 'LoadingError(message: $message, allowRetry: $allowRetry)';
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
_$$LoadingErrorImplCopyWith<_$LoadingErrorImpl> get copyWith =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract mixin class _$LoadingErrorCopyWith<$Res> implements $LoadingErrorCopyWith<$Res> {
|
||||||
|
factory _$LoadingErrorCopyWith(_LoadingError value, $Res Function(_LoadingError) _then) = __$LoadingErrorCopyWithImpl;
|
||||||
|
@override @useResult
|
||||||
|
$Res call({
|
||||||
|
String message, bool allowRetry
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
/// @nodoc
|
||||||
|
class __$LoadingErrorCopyWithImpl<$Res>
|
||||||
|
implements _$LoadingErrorCopyWith<$Res> {
|
||||||
|
__$LoadingErrorCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
|
final _LoadingError _self;
|
||||||
|
final $Res Function(_LoadingError) _then;
|
||||||
|
|
||||||
|
/// Create a copy of LoadingError
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @pragma('vm:prefer-inline') $Res call({Object? message = null,Object? allowRetry = null,}) {
|
||||||
|
return _then(_LoadingError(
|
||||||
|
message: null == message ? _self.message : message // ignore: cast_nullable_to_non_nullable
|
||||||
|
as String,allowRetry: null == allowRetry ? _self.allowRetry : allowRetry // ignore: cast_nullable_to_non_nullable
|
||||||
|
as bool,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// dart format on
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ class LoadableStateConsumer<TController extends Bloc<LoadableHydratedBlocEvent<T
|
|||||||
var loadableState = context.watch<TController>().state;
|
var loadableState = context.watch<TController>().state;
|
||||||
|
|
||||||
if(!loadableState.isLoading && onLoad != null) {
|
if(!loadableState.isLoading && onLoad != null) {
|
||||||
WidgetsBinding.instance.addPostFrameCallback((timeStamp) => onLoad!(loadableState.data));
|
WidgetsBinding.instance.addPostFrameCallback((timeStamp) => onLoad!(loadableState.data!));
|
||||||
}
|
}
|
||||||
|
|
||||||
var childWidget = ConditionalWrapper(
|
var childWidget = ConditionalWrapper(
|
||||||
@@ -48,7 +48,7 @@ class LoadableStateConsumer<TController extends Bloc<LoadableHydratedBlocEvent<T
|
|||||||
child: SizedBox(
|
child: SizedBox(
|
||||||
height: MediaQuery.of(context).size.height,
|
height: MediaQuery.of(context).size.height,
|
||||||
child: loadableState.showContent()
|
child: loadableState.showContent()
|
||||||
? child(loadableState.data, loadableState.isLoading)
|
? child(loadableState.data!, loadableState.isLoading)
|
||||||
: const SizedBox.shrink(),
|
: const SizedBox.shrink(),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ abstract class LoadableHydratedBloc<
|
|||||||
Map<String, dynamic>? toJson(LoadableState<TState> state) {
|
Map<String, dynamic>? toJson(LoadableState<TState> state) {
|
||||||
Map<String, dynamic>? data;
|
Map<String, dynamic>? data;
|
||||||
try {
|
try {
|
||||||
data = state.data == null ? null : toStorage(state.data);
|
data = state.data == null ? null : toStorage(state.data!);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
log('Failed to save state ${TState.toString()}: ${e.toString()}');
|
log('Failed to save state ${TState.toString()}: ${e.toString()}');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ part 'loadable_save_context.freezed.dart';
|
|||||||
part 'loadable_save_context.g.dart';
|
part 'loadable_save_context.g.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class LoadableSaveContext with _$LoadableSaveContext {
|
abstract class LoadableSaveContext with _$LoadableSaveContext {
|
||||||
const LoadableSaveContext._();
|
const LoadableSaveContext._();
|
||||||
const factory LoadableSaveContext({
|
const factory LoadableSaveContext({
|
||||||
required int timestamp,
|
required int timestamp,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
|
||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// coverage:ignore-file
|
||||||
// ignore_for_file: type=lint
|
// ignore_for_file: type=lint
|
||||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||||
|
|
||||||
@@ -9,160 +9,269 @@ part of 'loadable_save_context.dart';
|
|||||||
// FreezedGenerator
|
// FreezedGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
|
// dart format off
|
||||||
T _$identity<T>(T value) => value;
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
final _privateConstructorUsedError = UnsupportedError(
|
|
||||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
|
|
||||||
|
|
||||||
LoadableSaveContext _$LoadableSaveContextFromJson(Map<String, dynamic> json) {
|
|
||||||
return _LoadableSaveContext.fromJson(json);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
mixin _$LoadableSaveContext {
|
mixin _$LoadableSaveContext {
|
||||||
int get timestamp => throw _privateConstructorUsedError;
|
|
||||||
|
int get timestamp;
|
||||||
|
/// Create a copy of LoadableSaveContext
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
$LoadableSaveContextCopyWith<LoadableSaveContext> get copyWith => _$LoadableSaveContextCopyWithImpl<LoadableSaveContext>(this as LoadableSaveContext, _$identity);
|
||||||
|
|
||||||
/// Serializes this LoadableSaveContext to a JSON map.
|
/// Serializes this LoadableSaveContext to a JSON map.
|
||||||
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
|
Map<String, dynamic> toJson();
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is LoadableSaveContext&&(identical(other.timestamp, timestamp) || other.timestamp == timestamp));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,timestamp);
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadableSaveContext(timestamp: $timestamp)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/// Create a copy of LoadableSaveContext
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
$LoadableSaveContextCopyWith<LoadableSaveContext> get copyWith =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class $LoadableSaveContextCopyWith<$Res> {
|
abstract mixin class $LoadableSaveContextCopyWith<$Res> {
|
||||||
factory $LoadableSaveContextCopyWith(
|
factory $LoadableSaveContextCopyWith(LoadableSaveContext value, $Res Function(LoadableSaveContext) _then) = _$LoadableSaveContextCopyWithImpl;
|
||||||
LoadableSaveContext value, $Res Function(LoadableSaveContext) then) =
|
@useResult
|
||||||
_$LoadableSaveContextCopyWithImpl<$Res, LoadableSaveContext>;
|
$Res call({
|
||||||
@useResult
|
int timestamp
|
||||||
$Res call({int timestamp});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
class _$LoadableSaveContextCopyWithImpl<$Res, $Val extends LoadableSaveContext>
|
class _$LoadableSaveContextCopyWithImpl<$Res>
|
||||||
implements $LoadableSaveContextCopyWith<$Res> {
|
implements $LoadableSaveContextCopyWith<$Res> {
|
||||||
_$LoadableSaveContextCopyWithImpl(this._value, this._then);
|
_$LoadableSaveContextCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
// ignore: unused_field
|
final LoadableSaveContext _self;
|
||||||
final $Val _value;
|
final $Res Function(LoadableSaveContext) _then;
|
||||||
// ignore: unused_field
|
|
||||||
final $Res Function($Val) _then;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableSaveContext
|
/// Create a copy of LoadableSaveContext
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline') @override $Res call({Object? timestamp = null,}) {
|
||||||
@override
|
return _then(_self.copyWith(
|
||||||
$Res call({
|
timestamp: null == timestamp ? _self.timestamp : timestamp // ignore: cast_nullable_to_non_nullable
|
||||||
Object? timestamp = null,
|
as int,
|
||||||
}) {
|
));
|
||||||
return _then(_value.copyWith(
|
|
||||||
timestamp: null == timestamp
|
|
||||||
? _value.timestamp
|
|
||||||
: timestamp // ignore: cast_nullable_to_non_nullable
|
|
||||||
as int,
|
|
||||||
) as $Val);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
abstract class _$$LoadableSaveContextImplCopyWith<$Res>
|
|
||||||
implements $LoadableSaveContextCopyWith<$Res> {
|
|
||||||
factory _$$LoadableSaveContextImplCopyWith(_$LoadableSaveContextImpl value,
|
|
||||||
$Res Function(_$LoadableSaveContextImpl) then) =
|
|
||||||
__$$LoadableSaveContextImplCopyWithImpl<$Res>;
|
|
||||||
@override
|
|
||||||
@useResult
|
|
||||||
$Res call({int timestamp});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
class __$$LoadableSaveContextImplCopyWithImpl<$Res>
|
|
||||||
extends _$LoadableSaveContextCopyWithImpl<$Res, _$LoadableSaveContextImpl>
|
|
||||||
implements _$$LoadableSaveContextImplCopyWith<$Res> {
|
|
||||||
__$$LoadableSaveContextImplCopyWithImpl(_$LoadableSaveContextImpl _value,
|
|
||||||
$Res Function(_$LoadableSaveContextImpl) _then)
|
|
||||||
: super(_value, _then);
|
|
||||||
|
|
||||||
/// Create a copy of LoadableSaveContext
|
/// Adds pattern-matching-related methods to [LoadableSaveContext].
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
extension LoadableSaveContextPatterns on LoadableSaveContext {
|
||||||
@pragma('vm:prefer-inline')
|
/// A variant of `map` that fallback to returning `orElse`.
|
||||||
@override
|
///
|
||||||
$Res call({
|
/// It is equivalent to doing:
|
||||||
Object? timestamp = null,
|
/// ```dart
|
||||||
}) {
|
/// switch (sealedClass) {
|
||||||
return _then(_$LoadableSaveContextImpl(
|
/// case final Subclass value:
|
||||||
timestamp: null == timestamp
|
/// return ...;
|
||||||
? _value.timestamp
|
/// case _:
|
||||||
: timestamp // ignore: cast_nullable_to_non_nullable
|
/// return orElse();
|
||||||
as int,
|
/// }
|
||||||
));
|
/// ```
|
||||||
}
|
|
||||||
|
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _LoadableSaveContext value)? $default,{required TResult orElse(),}){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// Callbacks receives the raw object, upcasted.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case final Subclass2 value:
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _LoadableSaveContext value) $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext():
|
||||||
|
return $default(_that);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `map` that fallback to returning `null`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _LoadableSaveContext value)? $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to an `orElse` callback.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( int timestamp)? $default,{required TResult orElse(),}) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext() when $default != null:
|
||||||
|
return $default(_that.timestamp);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// As opposed to `map`, this offers destructuring.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case Subclass2(:final field2):
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( int timestamp) $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext():
|
||||||
|
return $default(_that.timestamp);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to returning `null`
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( int timestamp)? $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _LoadableSaveContext() when $default != null:
|
||||||
|
return $default(_that.timestamp);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
@JsonSerializable()
|
@JsonSerializable()
|
||||||
class _$LoadableSaveContextImpl extends _LoadableSaveContext {
|
|
||||||
const _$LoadableSaveContextImpl({required this.timestamp}) : super._();
|
|
||||||
|
|
||||||
factory _$LoadableSaveContextImpl.fromJson(Map<String, dynamic> json) =>
|
class _LoadableSaveContext extends LoadableSaveContext {
|
||||||
_$$LoadableSaveContextImplFromJson(json);
|
const _LoadableSaveContext({required this.timestamp}): super._();
|
||||||
|
factory _LoadableSaveContext.fromJson(Map<String, dynamic> json) => _$LoadableSaveContextFromJson(json);
|
||||||
|
|
||||||
@override
|
@override final int timestamp;
|
||||||
final int timestamp;
|
|
||||||
|
|
||||||
@override
|
/// Create a copy of LoadableSaveContext
|
||||||
String toString() {
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
return 'LoadableSaveContext(timestamp: $timestamp)';
|
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
}
|
@pragma('vm:prefer-inline')
|
||||||
|
_$LoadableSaveContextCopyWith<_LoadableSaveContext> get copyWith => __$LoadableSaveContextCopyWithImpl<_LoadableSaveContext>(this, _$identity);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) {
|
Map<String, dynamic> toJson() {
|
||||||
return identical(this, other) ||
|
return _$LoadableSaveContextToJson(this, );
|
||||||
(other.runtimeType == runtimeType &&
|
|
||||||
other is _$LoadableSaveContextImpl &&
|
|
||||||
(identical(other.timestamp, timestamp) ||
|
|
||||||
other.timestamp == timestamp));
|
|
||||||
}
|
|
||||||
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
@override
|
|
||||||
int get hashCode => Object.hash(runtimeType, timestamp);
|
|
||||||
|
|
||||||
/// Create a copy of LoadableSaveContext
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
@override
|
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
_$$LoadableSaveContextImplCopyWith<_$LoadableSaveContextImpl> get copyWith =>
|
|
||||||
__$$LoadableSaveContextImplCopyWithImpl<_$LoadableSaveContextImpl>(
|
|
||||||
this, _$identity);
|
|
||||||
|
|
||||||
@override
|
|
||||||
Map<String, dynamic> toJson() {
|
|
||||||
return _$$LoadableSaveContextImplToJson(
|
|
||||||
this,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _LoadableSaveContext extends LoadableSaveContext {
|
@override
|
||||||
const factory _LoadableSaveContext({required final int timestamp}) =
|
bool operator ==(Object other) {
|
||||||
_$LoadableSaveContextImpl;
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is _LoadableSaveContext&&(identical(other.timestamp, timestamp) || other.timestamp == timestamp));
|
||||||
const _LoadableSaveContext._() : super._();
|
|
||||||
|
|
||||||
factory _LoadableSaveContext.fromJson(Map<String, dynamic> json) =
|
|
||||||
_$LoadableSaveContextImpl.fromJson;
|
|
||||||
|
|
||||||
@override
|
|
||||||
int get timestamp;
|
|
||||||
|
|
||||||
/// Create a copy of LoadableSaveContext
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@override
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
_$$LoadableSaveContextImplCopyWith<_$LoadableSaveContextImpl> get copyWith =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,timestamp);
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'LoadableSaveContext(timestamp: $timestamp)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract mixin class _$LoadableSaveContextCopyWith<$Res> implements $LoadableSaveContextCopyWith<$Res> {
|
||||||
|
factory _$LoadableSaveContextCopyWith(_LoadableSaveContext value, $Res Function(_LoadableSaveContext) _then) = __$LoadableSaveContextCopyWithImpl;
|
||||||
|
@override @useResult
|
||||||
|
$Res call({
|
||||||
|
int timestamp
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
/// @nodoc
|
||||||
|
class __$LoadableSaveContextCopyWithImpl<$Res>
|
||||||
|
implements _$LoadableSaveContextCopyWith<$Res> {
|
||||||
|
__$LoadableSaveContextCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
|
final _LoadableSaveContext _self;
|
||||||
|
final $Res Function(_LoadableSaveContext) _then;
|
||||||
|
|
||||||
|
/// Create a copy of LoadableSaveContext
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @pragma('vm:prefer-inline') $Res call({Object? timestamp = null,}) {
|
||||||
|
return _then(_LoadableSaveContext(
|
||||||
|
timestamp: null == timestamp ? _self.timestamp : timestamp // ignore: cast_nullable_to_non_nullable
|
||||||
|
as int,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// dart format on
|
||||||
|
|||||||
@@ -6,14 +6,9 @@ part of 'loadable_save_context.dart';
|
|||||||
// JsonSerializableGenerator
|
// JsonSerializableGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
_$LoadableSaveContextImpl _$$LoadableSaveContextImplFromJson(
|
_LoadableSaveContext _$LoadableSaveContextFromJson(Map<String, dynamic> json) =>
|
||||||
Map<String, dynamic> json) =>
|
_LoadableSaveContext(timestamp: (json['timestamp'] as num).toInt());
|
||||||
_$LoadableSaveContextImpl(
|
|
||||||
timestamp: (json['timestamp'] as num).toInt(),
|
|
||||||
);
|
|
||||||
|
|
||||||
Map<String, dynamic> _$$LoadableSaveContextImplToJson(
|
Map<String, dynamic> _$LoadableSaveContextToJson(
|
||||||
_$LoadableSaveContextImpl instance) =>
|
_LoadableSaveContext instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{'timestamp': instance.timestamp};
|
||||||
'timestamp': instance.timestamp,
|
|
||||||
};
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class AppModule {
|
|||||||
var available = {
|
var available = {
|
||||||
Modules.timetable: AppModule(
|
Modules.timetable: AppModule(
|
||||||
Modules.timetable,
|
Modules.timetable,
|
||||||
name: 'Vertretung',
|
name: 'Stundenplan',
|
||||||
icon: () => Icon(Icons.calendar_month),
|
icon: () => Icon(Icons.calendar_month),
|
||||||
breakerArea: BreakerArea.timetable,
|
breakerArea: BreakerArea.timetable,
|
||||||
create: Timetable.new,
|
create: Timetable.new,
|
||||||
@@ -62,7 +62,7 @@ class AppModule {
|
|||||||
),
|
),
|
||||||
Modules.files: AppModule(
|
Modules.files: AppModule(
|
||||||
Modules.files,
|
Modules.files,
|
||||||
name: 'Files',
|
name: 'Dateien',
|
||||||
icon: () => Icon(Icons.folder),
|
icon: () => Icon(Icons.folder),
|
||||||
breakerArea: BreakerArea.files,
|
breakerArea: BreakerArea.files,
|
||||||
create: Files.new,
|
create: Files.new,
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ part 'grade_averages_state.freezed.dart';
|
|||||||
part 'grade_averages_state.g.dart';
|
part 'grade_averages_state.g.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class GradeAveragesState with _$GradeAveragesState {
|
abstract class GradeAveragesState with _$GradeAveragesState {
|
||||||
const factory GradeAveragesState({
|
const factory GradeAveragesState({
|
||||||
required GradeAveragesGradingSystem gradingSystem,
|
required GradeAveragesGradingSystem gradingSystem,
|
||||||
required List<int> grades,
|
required List<int> grades,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
|
||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
// coverage:ignore-file
|
||||||
// ignore_for_file: type=lint
|
// ignore_for_file: type=lint
|
||||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||||
|
|
||||||
@@ -9,185 +9,278 @@ part of 'grade_averages_state.dart';
|
|||||||
// FreezedGenerator
|
// FreezedGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
|
// dart format off
|
||||||
T _$identity<T>(T value) => value;
|
T _$identity<T>(T value) => value;
|
||||||
|
|
||||||
final _privateConstructorUsedError = UnsupportedError(
|
|
||||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
|
|
||||||
|
|
||||||
GradeAveragesState _$GradeAveragesStateFromJson(Map<String, dynamic> json) {
|
|
||||||
return _GradeAveragesState.fromJson(json);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
mixin _$GradeAveragesState {
|
mixin _$GradeAveragesState {
|
||||||
GradeAveragesGradingSystem get gradingSystem =>
|
|
||||||
throw _privateConstructorUsedError;
|
GradeAveragesGradingSystem get gradingSystem; List<int> get grades;
|
||||||
List<int> get grades => throw _privateConstructorUsedError;
|
/// Create a copy of GradeAveragesState
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
$GradeAveragesStateCopyWith<GradeAveragesState> get copyWith => _$GradeAveragesStateCopyWithImpl<GradeAveragesState>(this as GradeAveragesState, _$identity);
|
||||||
|
|
||||||
/// Serializes this GradeAveragesState to a JSON map.
|
/// Serializes this GradeAveragesState to a JSON map.
|
||||||
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
|
Map<String, dynamic> toJson();
|
||||||
|
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is GradeAveragesState&&(identical(other.gradingSystem, gradingSystem) || other.gradingSystem == gradingSystem)&&const DeepCollectionEquality().equals(other.grades, grades));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,gradingSystem,const DeepCollectionEquality().hash(grades));
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'GradeAveragesState(gradingSystem: $gradingSystem, grades: $grades)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/// Create a copy of GradeAveragesState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
$GradeAveragesStateCopyWith<GradeAveragesState> get copyWith =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class $GradeAveragesStateCopyWith<$Res> {
|
abstract mixin class $GradeAveragesStateCopyWith<$Res> {
|
||||||
factory $GradeAveragesStateCopyWith(
|
factory $GradeAveragesStateCopyWith(GradeAveragesState value, $Res Function(GradeAveragesState) _then) = _$GradeAveragesStateCopyWithImpl;
|
||||||
GradeAveragesState value, $Res Function(GradeAveragesState) then) =
|
@useResult
|
||||||
_$GradeAveragesStateCopyWithImpl<$Res, GradeAveragesState>;
|
$Res call({
|
||||||
@useResult
|
GradeAveragesGradingSystem gradingSystem, List<int> grades
|
||||||
$Res call({GradeAveragesGradingSystem gradingSystem, List<int> grades});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
class _$GradeAveragesStateCopyWithImpl<$Res, $Val extends GradeAveragesState>
|
class _$GradeAveragesStateCopyWithImpl<$Res>
|
||||||
implements $GradeAveragesStateCopyWith<$Res> {
|
implements $GradeAveragesStateCopyWith<$Res> {
|
||||||
_$GradeAveragesStateCopyWithImpl(this._value, this._then);
|
_$GradeAveragesStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
// ignore: unused_field
|
final GradeAveragesState _self;
|
||||||
final $Val _value;
|
final $Res Function(GradeAveragesState) _then;
|
||||||
// ignore: unused_field
|
|
||||||
final $Res Function($Val) _then;
|
|
||||||
|
|
||||||
/// Create a copy of GradeAveragesState
|
/// Create a copy of GradeAveragesState
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline') @override $Res call({Object? gradingSystem = null,Object? grades = null,}) {
|
||||||
@override
|
return _then(_self.copyWith(
|
||||||
$Res call({
|
gradingSystem: null == gradingSystem ? _self.gradingSystem : gradingSystem // ignore: cast_nullable_to_non_nullable
|
||||||
Object? gradingSystem = null,
|
as GradeAveragesGradingSystem,grades: null == grades ? _self.grades : grades // ignore: cast_nullable_to_non_nullable
|
||||||
Object? grades = null,
|
as List<int>,
|
||||||
}) {
|
));
|
||||||
return _then(_value.copyWith(
|
|
||||||
gradingSystem: null == gradingSystem
|
|
||||||
? _value.gradingSystem
|
|
||||||
: gradingSystem // ignore: cast_nullable_to_non_nullable
|
|
||||||
as GradeAveragesGradingSystem,
|
|
||||||
grades: null == grades
|
|
||||||
? _value.grades
|
|
||||||
: grades // ignore: cast_nullable_to_non_nullable
|
|
||||||
as List<int>,
|
|
||||||
) as $Val);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
abstract class _$$GradeAveragesStateImplCopyWith<$Res>
|
|
||||||
implements $GradeAveragesStateCopyWith<$Res> {
|
|
||||||
factory _$$GradeAveragesStateImplCopyWith(_$GradeAveragesStateImpl value,
|
|
||||||
$Res Function(_$GradeAveragesStateImpl) then) =
|
|
||||||
__$$GradeAveragesStateImplCopyWithImpl<$Res>;
|
|
||||||
@override
|
|
||||||
@useResult
|
|
||||||
$Res call({GradeAveragesGradingSystem gradingSystem, List<int> grades});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
|
||||||
class __$$GradeAveragesStateImplCopyWithImpl<$Res>
|
|
||||||
extends _$GradeAveragesStateCopyWithImpl<$Res, _$GradeAveragesStateImpl>
|
|
||||||
implements _$$GradeAveragesStateImplCopyWith<$Res> {
|
|
||||||
__$$GradeAveragesStateImplCopyWithImpl(_$GradeAveragesStateImpl _value,
|
|
||||||
$Res Function(_$GradeAveragesStateImpl) _then)
|
|
||||||
: super(_value, _then);
|
|
||||||
|
|
||||||
/// Create a copy of GradeAveragesState
|
/// Adds pattern-matching-related methods to [GradeAveragesState].
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
extension GradeAveragesStatePatterns on GradeAveragesState {
|
||||||
@pragma('vm:prefer-inline')
|
/// A variant of `map` that fallback to returning `orElse`.
|
||||||
@override
|
///
|
||||||
$Res call({
|
/// It is equivalent to doing:
|
||||||
Object? gradingSystem = null,
|
/// ```dart
|
||||||
Object? grades = null,
|
/// switch (sealedClass) {
|
||||||
}) {
|
/// case final Subclass value:
|
||||||
return _then(_$GradeAveragesStateImpl(
|
/// return ...;
|
||||||
gradingSystem: null == gradingSystem
|
/// case _:
|
||||||
? _value.gradingSystem
|
/// return orElse();
|
||||||
: gradingSystem // ignore: cast_nullable_to_non_nullable
|
/// }
|
||||||
as GradeAveragesGradingSystem,
|
/// ```
|
||||||
grades: null == grades
|
|
||||||
? _value._grades
|
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _GradeAveragesState value)? $default,{required TResult orElse(),}){
|
||||||
: grades // ignore: cast_nullable_to_non_nullable
|
final _that = this;
|
||||||
as List<int>,
|
switch (_that) {
|
||||||
));
|
case _GradeAveragesState() when $default != null:
|
||||||
}
|
return $default(_that);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// Callbacks receives the raw object, upcasted.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case final Subclass2 value:
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _GradeAveragesState value) $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _GradeAveragesState():
|
||||||
|
return $default(_that);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `map` that fallback to returning `null`.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case final Subclass value:
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _GradeAveragesState value)? $default,){
|
||||||
|
final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _GradeAveragesState() when $default != null:
|
||||||
|
return $default(_that);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to an `orElse` callback.
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return orElse();
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( GradeAveragesGradingSystem gradingSystem, List<int> grades)? $default,{required TResult orElse(),}) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _GradeAveragesState() when $default != null:
|
||||||
|
return $default(_that.gradingSystem,_that.grades);case _:
|
||||||
|
return orElse();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A `switch`-like method, using callbacks.
|
||||||
|
///
|
||||||
|
/// As opposed to `map`, this offers destructuring.
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case Subclass2(:final field2):
|
||||||
|
/// return ...;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( GradeAveragesGradingSystem gradingSystem, List<int> grades) $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _GradeAveragesState():
|
||||||
|
return $default(_that.gradingSystem,_that.grades);case _:
|
||||||
|
throw StateError('Unexpected subclass');
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// A variant of `when` that fallback to returning `null`
|
||||||
|
///
|
||||||
|
/// It is equivalent to doing:
|
||||||
|
/// ```dart
|
||||||
|
/// switch (sealedClass) {
|
||||||
|
/// case Subclass(:final field):
|
||||||
|
/// return ...;
|
||||||
|
/// case _:
|
||||||
|
/// return null;
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
|
||||||
|
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( GradeAveragesGradingSystem gradingSystem, List<int> grades)? $default,) {final _that = this;
|
||||||
|
switch (_that) {
|
||||||
|
case _GradeAveragesState() when $default != null:
|
||||||
|
return $default(_that.gradingSystem,_that.grades);case _:
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
@JsonSerializable()
|
@JsonSerializable()
|
||||||
class _$GradeAveragesStateImpl implements _GradeAveragesState {
|
|
||||||
const _$GradeAveragesStateImpl(
|
|
||||||
{required this.gradingSystem, required final List<int> grades})
|
|
||||||
: _grades = grades;
|
|
||||||
|
|
||||||
factory _$GradeAveragesStateImpl.fromJson(Map<String, dynamic> json) =>
|
class _GradeAveragesState implements GradeAveragesState {
|
||||||
_$$GradeAveragesStateImplFromJson(json);
|
const _GradeAveragesState({required this.gradingSystem, required final List<int> grades}): _grades = grades;
|
||||||
|
factory _GradeAveragesState.fromJson(Map<String, dynamic> json) => _$GradeAveragesStateFromJson(json);
|
||||||
|
|
||||||
@override
|
@override final GradeAveragesGradingSystem gradingSystem;
|
||||||
final GradeAveragesGradingSystem gradingSystem;
|
final List<int> _grades;
|
||||||
final List<int> _grades;
|
@override List<int> get grades {
|
||||||
@override
|
if (_grades is EqualUnmodifiableListView) return _grades;
|
||||||
List<int> get grades {
|
// ignore: implicit_dynamic_type
|
||||||
if (_grades is EqualUnmodifiableListView) return _grades;
|
return EqualUnmodifiableListView(_grades);
|
||||||
// ignore: implicit_dynamic_type
|
|
||||||
return EqualUnmodifiableListView(_grades);
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
String toString() {
|
|
||||||
return 'GradeAveragesState(gradingSystem: $gradingSystem, grades: $grades)';
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
bool operator ==(Object other) {
|
|
||||||
return identical(this, other) ||
|
|
||||||
(other.runtimeType == runtimeType &&
|
|
||||||
other is _$GradeAveragesStateImpl &&
|
|
||||||
(identical(other.gradingSystem, gradingSystem) ||
|
|
||||||
other.gradingSystem == gradingSystem) &&
|
|
||||||
const DeepCollectionEquality().equals(other._grades, _grades));
|
|
||||||
}
|
|
||||||
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
@override
|
|
||||||
int get hashCode => Object.hash(
|
|
||||||
runtimeType, gradingSystem, const DeepCollectionEquality().hash(_grades));
|
|
||||||
|
|
||||||
/// Create a copy of GradeAveragesState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
@override
|
|
||||||
@pragma('vm:prefer-inline')
|
|
||||||
_$$GradeAveragesStateImplCopyWith<_$GradeAveragesStateImpl> get copyWith =>
|
|
||||||
__$$GradeAveragesStateImplCopyWithImpl<_$GradeAveragesStateImpl>(
|
|
||||||
this, _$identity);
|
|
||||||
|
|
||||||
@override
|
|
||||||
Map<String, dynamic> toJson() {
|
|
||||||
return _$$GradeAveragesStateImplToJson(
|
|
||||||
this,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _GradeAveragesState implements GradeAveragesState {
|
|
||||||
const factory _GradeAveragesState(
|
|
||||||
{required final GradeAveragesGradingSystem gradingSystem,
|
|
||||||
required final List<int> grades}) = _$GradeAveragesStateImpl;
|
|
||||||
|
|
||||||
factory _GradeAveragesState.fromJson(Map<String, dynamic> json) =
|
/// Create a copy of GradeAveragesState
|
||||||
_$GradeAveragesStateImpl.fromJson;
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
_$GradeAveragesStateCopyWith<_GradeAveragesState> get copyWith => __$GradeAveragesStateCopyWithImpl<_GradeAveragesState>(this, _$identity);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
GradeAveragesGradingSystem get gradingSystem;
|
Map<String, dynamic> toJson() {
|
||||||
@override
|
return _$GradeAveragesStateToJson(this, );
|
||||||
List<int> get grades;
|
|
||||||
|
|
||||||
/// Create a copy of GradeAveragesState
|
|
||||||
/// with the given fields replaced by the non-null parameter values.
|
|
||||||
@override
|
|
||||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
||||||
_$$GradeAveragesStateImplCopyWith<_$GradeAveragesStateImpl> get copyWith =>
|
|
||||||
throw _privateConstructorUsedError;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) || (other.runtimeType == runtimeType&&other is _GradeAveragesState&&(identical(other.gradingSystem, gradingSystem) || other.gradingSystem == gradingSystem)&&const DeepCollectionEquality().equals(other._grades, _grades));
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType,gradingSystem,const DeepCollectionEquality().hash(_grades));
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'GradeAveragesState(gradingSystem: $gradingSystem, grades: $grades)';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract mixin class _$GradeAveragesStateCopyWith<$Res> implements $GradeAveragesStateCopyWith<$Res> {
|
||||||
|
factory _$GradeAveragesStateCopyWith(_GradeAveragesState value, $Res Function(_GradeAveragesState) _then) = __$GradeAveragesStateCopyWithImpl;
|
||||||
|
@override @useResult
|
||||||
|
$Res call({
|
||||||
|
GradeAveragesGradingSystem gradingSystem, List<int> grades
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
/// @nodoc
|
||||||
|
class __$GradeAveragesStateCopyWithImpl<$Res>
|
||||||
|
implements _$GradeAveragesStateCopyWith<$Res> {
|
||||||
|
__$GradeAveragesStateCopyWithImpl(this._self, this._then);
|
||||||
|
|
||||||
|
final _GradeAveragesState _self;
|
||||||
|
final $Res Function(_GradeAveragesState) _then;
|
||||||
|
|
||||||
|
/// Create a copy of GradeAveragesState
|
||||||
|
/// with the given fields replaced by the non-null parameter values.
|
||||||
|
@override @pragma('vm:prefer-inline') $Res call({Object? gradingSystem = null,Object? grades = null,}) {
|
||||||
|
return _then(_GradeAveragesState(
|
||||||
|
gradingSystem: null == gradingSystem ? _self.gradingSystem : gradingSystem // ignore: cast_nullable_to_non_nullable
|
||||||
|
as GradeAveragesGradingSystem,grades: null == grades ? _self._grades : grades // ignore: cast_nullable_to_non_nullable
|
||||||
|
as List<int>,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// dart format on
|
||||||
|
|||||||
@@ -6,23 +6,23 @@ part of 'grade_averages_state.dart';
|
|||||||
// JsonSerializableGenerator
|
// JsonSerializableGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
_$GradeAveragesStateImpl _$$GradeAveragesStateImplFromJson(
|
_GradeAveragesState _$GradeAveragesStateFromJson(Map<String, dynamic> json) =>
|
||||||
Map<String, dynamic> json) =>
|
_GradeAveragesState(
|
||||||
_$GradeAveragesStateImpl(
|
|
||||||
gradingSystem: $enumDecode(
|
gradingSystem: $enumDecode(
|
||||||
_$GradeAveragesGradingSystemEnumMap, json['gradingSystem']),
|
_$GradeAveragesGradingSystemEnumMap,
|
||||||
|
json['gradingSystem'],
|
||||||
|
),
|
||||||
grades: (json['grades'] as List<dynamic>)
|
grades: (json['grades'] as List<dynamic>)
|
||||||
.map((e) => (e as num).toInt())
|
.map((e) => (e as num).toInt())
|
||||||
.toList(),
|
.toList(),
|
||||||
);
|
);
|
||||||
|
|
||||||
Map<String, dynamic> _$$GradeAveragesStateImplToJson(
|
Map<String, dynamic> _$GradeAveragesStateToJson(
|
||||||
_$GradeAveragesStateImpl instance) =>
|
_GradeAveragesState instance,
|
||||||
<String, dynamic>{
|
) => <String, dynamic>{
|
||||||
'gradingSystem':
|
'gradingSystem': _$GradeAveragesGradingSystemEnumMap[instance.gradingSystem]!,
|
||||||
_$GradeAveragesGradingSystemEnumMap[instance.gradingSystem]!,
|
'grades': instance.grades,
|
||||||
'grades': instance.grades,
|
};
|
||||||
};
|
|
||||||
|
|
||||||
const _$GradeAveragesGradingSystemEnumMap = {
|
const _$GradeAveragesGradingSystemEnumMap = {
|
||||||
GradeAveragesGradingSystem.highSchool: 'highSchool',
|
GradeAveragesGradingSystem.highSchool: 'highSchool',
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ class GradeAveragesView extends StatelessWidget {
|
|||||||
color: Theme.of(context).colorScheme.onSurface
|
color: Theme.of(context).colorScheme.onSurface
|
||||||
),
|
),
|
||||||
const SizedBox(width: 15),
|
const SizedBox(width: 15),
|
||||||
Text(isMiddleSchool ? 'Notensystem' : 'Punktesystem'),
|
Text(isMiddleSchool ? 'Realschule' : 'Oberstufe'),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
)).toList(),
|
)).toList(),
|
||||||
@@ -80,11 +80,19 @@ class GradeAveragesView extends StatelessWidget {
|
|||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 30),
|
const SizedBox(height: 30),
|
||||||
Text(bloc.average().toStringAsFixed(2), style: const TextStyle(fontSize: 30, fontWeight: FontWeight.bold)),
|
Row(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
|
children: [
|
||||||
|
Text('Ø', style: TextStyle(fontSize: 30, fontWeight: FontWeight.bold)),
|
||||||
|
SizedBox(width: 5),
|
||||||
|
Text(bloc.average().toStringAsFixed(2), style: const TextStyle(fontSize: 30, fontWeight: FontWeight.bold))
|
||||||
|
],
|
||||||
|
),
|
||||||
const SizedBox(height: 10),
|
const SizedBox(height: 10),
|
||||||
const Divider(),
|
const Divider(),
|
||||||
const SizedBox(height: 10),
|
const SizedBox(height: 10),
|
||||||
Text(bloc.isMiddleSchool() ? 'Wähle unten die Anzahl deiner jeweiligen Noten aus' : 'Wähle unten die Anzahl deiner jeweiligen Punkte aus'),
|
Text(bloc.isMiddleSchool() ? 'Wähle die Anzahl deiner jeweiligen Noten aus' : 'Wähle die Anzahl deiner jeweiligen Punkte aus'),
|
||||||
const SizedBox(height: 10),
|
const SizedBox(height: 10),
|
||||||
const Expanded(
|
const Expanded(
|
||||||
child: GradeAveragesListView()
|
child: GradeAveragesListView()
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ part 'holidays_state.freezed.dart';
|
|||||||
part 'holidays_state.g.dart';
|
part 'holidays_state.g.dart';
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class HolidaysState with _$HolidaysState {
|
abstract class HolidaysState with _$HolidaysState {
|
||||||
const factory HolidaysState({
|
const factory HolidaysState({
|
||||||
required bool showPastHolidays,
|
required bool showPastHolidays,
|
||||||
required bool showDisclaimer,
|
required bool showDisclaimer,
|
||||||
@@ -16,7 +16,7 @@ class HolidaysState with _$HolidaysState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@freezed
|
@freezed
|
||||||
class Holiday with _$Holiday {
|
abstract class Holiday with _$Holiday {
|
||||||
const factory Holiday({
|
const factory Holiday({
|
||||||
required String start,
|
required String start,
|
||||||
required String end,
|
required String end,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user