[SYNC]
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
// ignore_for_file: always_specify_types
|
// ignore_for_file: always_specify_types
|
||||||
//s1 Imports
|
//s1 Imports
|
||||||
//s2 Core Package Imports
|
//s2 Core Package Imports
|
||||||
|
import 'dart:developer';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/scheduler.dart';
|
import 'package:flutter/scheduler.dart';
|
||||||
//s2 1st-party Package Imports
|
//s2 1st-party Package Imports
|
||||||
@@ -163,7 +165,11 @@ class _AstromicFuturePresenterState<T> extends State<AstromicFuturePresenter<T>>
|
|||||||
if (returnedState == AstromicPresenterState.loaded || returnedState == AstromicPresenterState.empty || returnedState == AstromicPresenterState.error) {
|
if (returnedState == AstromicPresenterState.loaded || returnedState == AstromicPresenterState.empty || returnedState == AstromicPresenterState.error) {
|
||||||
_setPrevious(returnedModel?.data, currentBatchId, returnedModel?.error);
|
_setPrevious(returnedModel?.data, currentBatchId, returnedModel?.error);
|
||||||
}
|
}
|
||||||
|
//
|
||||||
|
if (returnedState == AstromicPresenterState.error && returnedModel?.error != null) {
|
||||||
|
log('Got this error in the future presenter `${widget.id}`: ${returnedModel?.error}');
|
||||||
|
}
|
||||||
|
//
|
||||||
return widget.stateBuilder.containsKey(returnedState) ? widget.stateBuilder[returnedState]?.call(returnedModel) ?? defaultBuilder : defaultBuilder;
|
return widget.stateBuilder.containsKey(returnedState) ? widget.stateBuilder[returnedState]?.call(returnedModel) ?? defaultBuilder : defaultBuilder;
|
||||||
});
|
});
|
||||||
//!SECTION
|
//!SECTION
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
//s1 Imports
|
//s1 Imports
|
||||||
//s2 Core Package Imports
|
//s2 Core Package Imports
|
||||||
|
import 'dart:developer';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/scheduler.dart';
|
import 'package:flutter/scheduler.dart';
|
||||||
//s2 1st-party Package Imports
|
//s2 1st-party Package Imports
|
||||||
@@ -19,7 +21,7 @@ class AstromicStreamPresenter<T> extends StatefulWidget {
|
|||||||
//SECTION - Widget Arguments
|
//SECTION - Widget Arguments
|
||||||
final AstromicPresenterController controller;
|
final AstromicPresenterController controller;
|
||||||
final String id;
|
final String id;
|
||||||
final Map<String,dynamic>? neededArguments;
|
final Map<String, dynamic>? neededArguments;
|
||||||
//
|
//
|
||||||
final Map<AstromicPresenterState, Widget Function(PresenterReturnModel<T?>? r)> stateBuilder;
|
final Map<AstromicPresenterState, Widget Function(PresenterReturnModel<T?>? r)> stateBuilder;
|
||||||
final AstromicPresenterConfiguration? configuration;
|
final AstromicPresenterConfiguration? configuration;
|
||||||
@@ -124,7 +126,7 @@ class _AstromicStreamPresenterState<T> extends State<AstromicStreamPresenter<T>>
|
|||||||
|
|
||||||
//S1 -- Method to reinitialize or update `_future` with a new instance
|
//S1 -- Method to reinitialize or update `_future` with a new instance
|
||||||
void _initializeStream() {
|
void _initializeStream() {
|
||||||
widget.controller.setProvidedArguments(widget.neededArguments ?? <String,dynamic>{});
|
widget.controller.setProvidedArguments(widget.neededArguments ?? <String, dynamic>{});
|
||||||
_stream = widget.controller.getStream(widget.id)?.asyncMap((dynamic result) => result as T?);
|
_stream = widget.controller.getStream(widget.id)?.asyncMap((dynamic result) => result as T?);
|
||||||
}
|
}
|
||||||
//!SECTION
|
//!SECTION
|
||||||
@@ -161,6 +163,10 @@ class _AstromicStreamPresenterState<T> extends State<AstromicStreamPresenter<T>>
|
|||||||
_setPrevious(returnedModel?.data, currentBatchId, returnedModel?.error);
|
_setPrevious(returnedModel?.data, currentBatchId, returnedModel?.error);
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
|
if (returnedState == AstromicPresenterState.error && returnedModel?.error != null) {
|
||||||
|
log('Got this error in the stream presenter `${widget.id}`: ${returnedModel?.error}');
|
||||||
|
}
|
||||||
|
//
|
||||||
return widget.stateBuilder.containsKey(returnedState) ? widget.stateBuilder[returnedState]?.call(returnedModel) ?? defaultBuilder : defaultBuilder;
|
return widget.stateBuilder.containsKey(returnedState) ? widget.stateBuilder[returnedState]?.call(returnedModel) ?? defaultBuilder : defaultBuilder;
|
||||||
//
|
//
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user