phase3: WEB BUILD SUCCEEDS. cross_file override (0.3.4+2, Dart3-safe), parabolic/popup _margin EdgeInsets, remaining nullable fixes. lib 12->6(util_io deferred), web build OK with --no-tree-shake-icons
This commit is contained in:
@@ -406,7 +406,7 @@ class DesktopViewTicketState extends State<DesktopViewTicket> {
|
|||||||
width: mainSpace / 2,
|
width: mainSpace / 2,
|
||||||
margin: EdgeInsets.only(top: 16.0, bottom: 16.0),
|
margin: EdgeInsets.only(top: 16.0, bottom: 16.0),
|
||||||
padding: EdgeInsets.all(10.0),
|
padding: EdgeInsets.all(10.0),
|
||||||
child: (ticket.isClosed) ?
|
child: (ticket.isClosed == true) ?
|
||||||
Column(
|
Column(
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ class AddRemoveButtonState extends State<AddRemoveButton> {
|
|||||||
textColor: Colors.white
|
textColor: Colors.white
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
cartInfo.productList![widget.cartLineItemIndex].quantity += 1.0;
|
cartInfo.productList![widget.cartLineItemIndex].quantity = (cartInfo.productList![widget.cartLineItemIndex].quantity ?? 0) + 1.0;
|
||||||
Utils.addSubproductQty(cartInfo, cartInfo.productList![widget.cartLineItemIndex]);
|
Utils.addSubproductQty(cartInfo, cartInfo.productList![widget.cartLineItemIndex]);
|
||||||
store.dispatch(UpdateCartInfo(
|
store.dispatch(UpdateCartInfo(
|
||||||
Utils.addCartInfoToCartInfoList(store.state.cartInfos, cartInfo)));
|
Utils.addCartInfoToCartInfoList(store.state.cartInfos, cartInfo)));
|
||||||
@@ -384,7 +384,7 @@ class AddRemoveButtonState extends State<AddRemoveButton> {
|
|||||||
cartInfo.productList!.removeAt(widget.cartLineItemIndex);
|
cartInfo.productList!.removeAt(widget.cartLineItemIndex);
|
||||||
Utils.removeSubproduct(cartInfo, uuid);
|
Utils.removeSubproduct(cartInfo, uuid);
|
||||||
} else {
|
} else {
|
||||||
cartInfo.productList![widget.cartLineItemIndex].quantity -= 1;
|
cartInfo.productList![widget.cartLineItemIndex].quantity = (cartInfo.productList![widget.cartLineItemIndex].quantity ?? 0) - 1;
|
||||||
Utils.addSubproductQty(cartInfo, cartInfo.productList![widget.cartLineItemIndex], remove: true);
|
Utils.addSubproductQty(cartInfo, cartInfo.productList![widget.cartLineItemIndex], remove: true);
|
||||||
}
|
}
|
||||||
if (cartInfo.productList!.length <= 0) {
|
if (cartInfo.productList!.length <= 0) {
|
||||||
|
|||||||
@@ -69,13 +69,13 @@ class ParabolicAnimationWidget extends AnimatedWidget {
|
|||||||
RenderBox stackBox = stackKey.currentContext!.findRenderObject()! as RenderBox;
|
RenderBox stackBox = stackKey.currentContext!.findRenderObject()! as RenderBox;
|
||||||
Offset stackBoxOffset = stackBox.globalToLocal(Offset.zero);
|
Offset stackBoxOffset = stackBox.globalToLocal(Offset.zero);
|
||||||
|
|
||||||
EdgeInsets startMargin = _margin(startKey)!;
|
EdgeInsets startMargin = _margin(startKey);
|
||||||
RenderBox startBox = startKey.currentContext!.findRenderObject()! as RenderBox;
|
RenderBox startBox = startKey.currentContext!.findRenderObject()! as RenderBox;
|
||||||
_startOffset = startBox.localToGlobal(Offset(
|
_startOffset = startBox.localToGlobal(Offset(
|
||||||
startMargin.left + startAdjustOffset.dx,
|
startMargin.left + startAdjustOffset.dx,
|
||||||
stackBoxOffset.dy + startMargin.top + startAdjustOffset.dy));
|
stackBoxOffset.dy + startMargin.top + startAdjustOffset.dy));
|
||||||
|
|
||||||
EdgeInsets endMargin = _margin(endKey)!;
|
EdgeInsets endMargin = _margin(endKey);
|
||||||
RenderBox endBox = endKey.currentContext!.findRenderObject()! as RenderBox;
|
RenderBox endBox = endKey.currentContext!.findRenderObject()! as RenderBox;
|
||||||
_endOffset = endBox.localToGlobal(Offset(
|
_endOffset = endBox.localToGlobal(Offset(
|
||||||
endMargin.left + endAdjustOffset.dx,
|
endMargin.left + endAdjustOffset.dx,
|
||||||
@@ -83,9 +83,9 @@ class ParabolicAnimationWidget extends AnimatedWidget {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EdgeInsetsGeometry _margin(GlobalKey key) {
|
EdgeInsets _margin(GlobalKey key) {
|
||||||
final Widget widget = key.currentContext!.widget;
|
final Widget widget = key.currentContext!.widget;
|
||||||
EdgeInsetsGeometry margin = (widget is Container) ? (widget.margin ?? EdgeInsets.zero) : EdgeInsets.zero;
|
final mg = (widget is Container) ? widget.margin : null;
|
||||||
return margin ?? EdgeInsets.zero;
|
return mg is EdgeInsets ? mg : EdgeInsets.zero;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -52,7 +52,7 @@ class PopupAnimationWidget extends AnimatedWidget {
|
|||||||
final RenderBox stackBox = stackKey.currentContext!.findRenderObject()! as RenderBox;
|
final RenderBox stackBox = stackKey.currentContext!.findRenderObject()! as RenderBox;
|
||||||
final Offset stackBoxOffset = stackBox.globalToLocal(Offset.zero);
|
final Offset stackBoxOffset = stackBox.globalToLocal(Offset.zero);
|
||||||
|
|
||||||
final EdgeInsets startMargin = _margin(startKey)!;
|
final EdgeInsets startMargin = _margin(startKey);
|
||||||
final RenderBox startBox = startKey.currentContext!.findRenderObject()! as RenderBox;
|
final RenderBox startBox = startKey.currentContext!.findRenderObject()! as RenderBox;
|
||||||
|
|
||||||
_startOffset = startBox.localToGlobal(Offset(
|
_startOffset = startBox.localToGlobal(Offset(
|
||||||
@@ -61,10 +61,9 @@ class PopupAnimationWidget extends AnimatedWidget {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EdgeInsetsGeometry _margin(GlobalKey key) {
|
EdgeInsets _margin(GlobalKey key) {
|
||||||
final Widget widget = key.currentContext!.widget;
|
final Widget widget = key.currentContext!.widget;
|
||||||
final EdgeInsetsGeometry margin =
|
final mg = (widget is Container) ? widget.margin : null;
|
||||||
(widget is Container) ? widget.margin : EdgeInsets.zero;
|
return mg is EdgeInsets ? mg : EdgeInsets.zero;
|
||||||
return margin ?? EdgeInsets.zero;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -72,7 +72,7 @@ class ReadMoreTextState extends State<ReadMoreText> {
|
|||||||
widget.locale ?? Localizations.localeOf(context);
|
widget.locale ?? Localizations.localeOf(context);
|
||||||
|
|
||||||
final colorClickableText =
|
final colorClickableText =
|
||||||
widget.colorClickableText ?? Theme.of(context).accentColor;
|
widget.colorClickableText ?? Theme.of(context).colorScheme.secondary;
|
||||||
|
|
||||||
TextSpan link = TextSpan(
|
TextSpan link = TextSpan(
|
||||||
text: _readMore ? widget.trimCollapsedText : widget.trimExpandedText,
|
text: _readMore ? widget.trimCollapsedText : widget.trimExpandedText,
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ class MobileCouponsState extends State<MobileCoupons> {
|
|||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Text(
|
Text(
|
||||||
coupon.store != null ? coupon.store!.name : S.of(context).general_coupon,
|
coupon.store != null ? coupon.store!.name! : S.of(context).general_coupon,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 20.0,
|
fontSize: 20.0,
|
||||||
fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.bold,
|
||||||
@@ -146,7 +146,7 @@ class MobileCouponsState extends State<MobileCoupons> {
|
|||||||
crossAxisAlignment: CrossAxisAlignment.center,
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Container(
|
Container(
|
||||||
child: !coupon.isPercentage ?
|
child: coupon.isPercentage != true ?
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
|||||||
@@ -130,13 +130,13 @@ packages:
|
|||||||
source: hosted
|
source: hosted
|
||||||
version: "1.19.1"
|
version: "1.19.1"
|
||||||
cross_file:
|
cross_file:
|
||||||
dependency: transitive
|
dependency: "direct overridden"
|
||||||
description:
|
description:
|
||||||
name: cross_file
|
name: cross_file
|
||||||
sha256: "437b2b8da454fe1e01131f4410274fd607347325e9330f0b469ed5a204991068"
|
sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.3.1+4"
|
version: "0.3.4+2"
|
||||||
crypto:
|
crypto:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|||||||
@@ -73,6 +73,11 @@ dependencies:
|
|||||||
hive_flutter: ^1.1.0
|
hive_flutter: ^1.1.0
|
||||||
catcher: ^0.8.0
|
catcher: ^0.8.0
|
||||||
|
|
||||||
|
# cross_file 0.3.1+4 (transitive via image_picker) references UnmodifiableUint8ListView,
|
||||||
|
# which was removed in Dart 3 — override to a Dart 3-safe release for the web build.
|
||||||
|
dependency_overrides:
|
||||||
|
cross_file: 0.3.4+2 # pinned: 0.3.5+ needs Dart 3.10; 0.3.1+4 uses removed UnmodifiableUint8ListView
|
||||||
|
|
||||||
# Removed in Phase 2 (no null-safe release and/or zero references):
|
# Removed in Phase 2 (no null-safe release and/or zero references):
|
||||||
# splashscreen, flappy_search_bar, searchable_dropdown, share, platform_detect,
|
# splashscreen, flappy_search_bar, searchable_dropdown, share, platform_detect,
|
||||||
# flutter_inappwebview, countdown, gender_selection, flutter_dash,
|
# flutter_inappwebview, countdown, gender_selection, flutter_dash,
|
||||||
|
|||||||
Reference in New Issue
Block a user