v6.4.1 updates
This commit is contained in:
parent
a50cad6daa
commit
95c9697830
@ -1,4 +1,11 @@
|
||||
## [6.4.0] - 2023-01-06
|
||||
## [6.4.1] - 2023-02-23
|
||||
|
||||
* Upgrade to Nylo v4.1.3
|
||||
* Small refactor to TextStyle
|
||||
* Fix the ThemeColor.get helper method to support ColorStyles.
|
||||
* Pubspec.yaml dependency updates
|
||||
|
||||
* ## [6.4.0] - 2023-01-06
|
||||
|
||||
* Upgrade to Nylo v4.0.0
|
||||
* Update copyright
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
|
||||
# WooCommerce App: Label StoreMax
|
||||
|
||||
### Label StoreMax - v6.4.0
|
||||
### Label StoreMax - v6.4.1
|
||||
|
||||
|
||||
[Official WooSignal WooCommerce App](https://woosignal.com)
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 51;
|
||||
objectVersion = 54;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
@ -199,6 +199,7 @@
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
alwaysOutOfDate = 1;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
@ -213,6 +214,7 @@
|
||||
};
|
||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
alwaysOutOfDate = 1;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
|
||||
@ -63,5 +63,7 @@
|
||||
<false/>
|
||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||
<true/>
|
||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@ -110,6 +110,7 @@ class AppProvider implements NyProvider {
|
||||
|
||||
nylo.appThemes = appThemes;
|
||||
nylo.appLoader = loader;
|
||||
nylo.appLogo = logo;
|
||||
|
||||
String initialRoute = AppHelper.instance.appConfig!.appStatus != null
|
||||
? '/home'
|
||||
|
||||
@ -56,10 +56,10 @@ class ThemeColor {
|
||||
static ColorStyles get(BuildContext context, {String? themeId}) {
|
||||
|
||||
Nylo nylo = Backpack.instance.read('nylo');
|
||||
List<BaseThemeConfig> appThemes = nylo.appThemes;
|
||||
List<BaseThemeConfig<ColorStyles>> appThemes = nylo.appThemes as List<BaseThemeConfig<ColorStyles>>;
|
||||
|
||||
if (themeId == null) {
|
||||
dynamic themeFound = appThemes
|
||||
BaseThemeConfig<ColorStyles> themeFound = appThemes
|
||||
.firstWhere(
|
||||
(theme) => theme.id == getEnv(Theme.of(context).brightness == Brightness.light ? 'LIGHT_THEME_ID' : 'DARK_THEME_ID'),
|
||||
orElse: () => appThemes.first
|
||||
@ -67,7 +67,7 @@ class ThemeColor {
|
||||
return themeFound.colors;
|
||||
}
|
||||
|
||||
dynamic baseThemeConfig = appThemes.firstWhere((theme) => theme.id == themeId, orElse: () => appThemes.first);
|
||||
BaseThemeConfig<ColorStyles> baseThemeConfig = appThemes.firstWhere((theme) => theme.id == themeId, orElse: () => appThemes.first);
|
||||
return baseThemeConfig.colors;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter_app/resources/widgets/app_loader_widget.dart';
|
||||
import 'package:flutter_app/resources/widgets/woosignal_ui.dart';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
@ -10,4 +11,8 @@ import 'package:flutter_app/resources/widgets/app_loader_widget.dart';
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
Widget logo = StoreLogo();
|
||||
// resources/widgets/woosignal_ui.dart
|
||||
|
||||
Widget loader = AppLoaderWidget();
|
||||
// resources/widgets/app_loader_widget.dart
|
||||
@ -12,7 +12,7 @@ import 'package:nylo_framework/nylo_framework.dart';
|
||||
*/
|
||||
|
||||
// App Themes
|
||||
final List<BaseThemeConfig> appThemes = [
|
||||
final List<BaseThemeConfig<ColorStyles>> appThemes = [
|
||||
ThemeConfig.light(),
|
||||
ThemeConfig.dark(),
|
||||
];
|
||||
@ -38,7 +38,7 @@ ColorStyles darkColors = DarkThemeColors();
|
||||
// Preset Themes
|
||||
class ThemeConfig {
|
||||
// LIGHT
|
||||
static BaseThemeConfig light() => BaseThemeConfig(
|
||||
static BaseThemeConfig<ColorStyles> light() => BaseThemeConfig<ColorStyles>(
|
||||
id: "default_light_theme",
|
||||
description: "Light theme",
|
||||
theme: lightTheme(lightColors),
|
||||
@ -46,7 +46,7 @@ class ThemeConfig {
|
||||
);
|
||||
|
||||
// DARK
|
||||
static BaseThemeConfig dark() => BaseThemeConfig(
|
||||
static BaseThemeConfig<ColorStyles> dark() => BaseThemeConfig<ColorStyles>(
|
||||
id: "default_dark_theme",
|
||||
description: "Dark theme",
|
||||
theme: darkTheme(darkColors),
|
||||
@ -60,10 +60,10 @@ class ThemeConfig {
|
||||
|
||||
// First add the colors which was created into the above section like the following:
|
||||
// Bright Colors
|
||||
/// BaseColorStyles brightColors = BrightThemeColors();
|
||||
/// ColorStyles brightColors = BrightThemeColors();
|
||||
|
||||
// Next, uncomment the below:
|
||||
/// static BaseThemeConfig bright() => BaseThemeConfig(
|
||||
/// static BaseThemeConfig<ColorStyles> bright() => BaseThemeConfig<ColorStyles>(
|
||||
/// id: "default_bright_theme",
|
||||
/// description: "Bright theme",
|
||||
/// theme: brightTheme(brightColors),
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_app/bootstrap/app.dart';
|
||||
import 'package:flutter_app/bootstrap/app_helper.dart';
|
||||
import 'package:flutter_app/bootstrap/boot.dart';
|
||||
import 'package:nylo_framework/nylo_framework.dart';
|
||||
|
||||
|
||||
@ -51,7 +51,7 @@ class _AccountDeletePageState extends NyState<AccountDeletePage> {
|
||||
Icon(Icons.no_accounts_rounded, size: 50),
|
||||
Text(
|
||||
trans("Delete your account"),
|
||||
style: textTheme.headline3,
|
||||
style: textTheme.displaySmall,
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(top: 18),
|
||||
|
||||
@ -64,7 +64,7 @@ class _AccountLandingPageState extends NyState<AccountLandingPage> {
|
||||
child: Text(
|
||||
trans("Login"),
|
||||
textAlign: TextAlign.left,
|
||||
style: Theme.of(context).textTheme.headline4!.copyWith(
|
||||
style: Theme.of(context).textTheme.headlineMedium!.copyWith(
|
||||
fontSize: 24,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
@ -120,7 +120,7 @@ class _AccountLandingPageState extends NyState<AccountLandingPage> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("Create an account"),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
),
|
||||
padding: EdgeInsets.only(left: 8),
|
||||
)
|
||||
|
||||
@ -166,7 +166,7 @@ class _AccountOrderDetailPageState extends NyState<AccountOrderDetailPage> {
|
||||
),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
@ -176,7 +176,7 @@ class _AccountOrderDetailPageState extends NyState<AccountOrderDetailPage> {
|
||||
"x${lineItem.quantity.toString()}",
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1,
|
||||
.bodyLarge,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
],
|
||||
|
||||
@ -62,7 +62,7 @@ class _BrowseCategoryPageState extends NyState<BrowseCategoryPage> {
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Text(trans("Browse"), style: Theme.of(context).textTheme.subtitle1),
|
||||
Text(trans("Browse"), style: Theme.of(context).textTheme.titleMedium),
|
||||
Text(parseHtmlString(productCategory!.name))
|
||||
],
|
||||
),
|
||||
|
||||
@ -55,7 +55,7 @@ class _BrowseSearchState extends NyState<BrowseSearchPage> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Text(trans("Search results for"),
|
||||
style: Theme.of(context).textTheme.subtitle1),
|
||||
style: Theme.of(context).textTheme.titleMedium),
|
||||
Text("\"" + _search! + "\"")
|
||||
],
|
||||
),
|
||||
|
||||
@ -198,7 +198,7 @@ class _CartPageState extends State<CartPage> {
|
||||
child: Padding(
|
||||
child: Text(
|
||||
trans("Clear Cart"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
padding: EdgeInsets.only(right: 8),
|
||||
),
|
||||
@ -229,7 +229,7 @@ class _CartPageState extends State<CartPage> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("Empty Basket"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
padding: EdgeInsets.only(top: 10),
|
||||
)
|
||||
|
||||
@ -165,7 +165,7 @@ class CheckoutConfirmationPageState extends State<CheckoutConfirmationPage> {
|
||||
padding: const EdgeInsets.only(top: 15),
|
||||
child: Text(
|
||||
"${trans("One moment")}...",
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
),
|
||||
)
|
||||
],
|
||||
|
||||
@ -277,7 +277,7 @@ class _CheckoutDetailsPageState extends NyState<CheckoutDetailsPage> {
|
||||
children: <Widget>[
|
||||
Text(
|
||||
trans("Ship to a different address?"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
Checkbox(
|
||||
value: _hasDifferentShippingAddress,
|
||||
@ -292,7 +292,7 @@ class _CheckoutDetailsPageState extends NyState<CheckoutDetailsPage> {
|
||||
children: <Widget>[
|
||||
Text(
|
||||
trans("Remember my details"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
Checkbox(
|
||||
value: valRememberDetails,
|
||||
|
||||
@ -82,7 +82,7 @@ class _CheckoutPaymentTypePageState extends State<CheckoutPaymentTypePage> {
|
||||
child: Text(
|
||||
trans("No payment methods are available"),
|
||||
style:
|
||||
Theme.of(context).textTheme.bodyText1,
|
||||
Theme.of(context).textTheme.bodyLarge,
|
||||
),
|
||||
)
|
||||
: ListView.separated(
|
||||
@ -112,7 +112,7 @@ class _CheckoutPaymentTypePageState extends State<CheckoutPaymentTypePage> {
|
||||
title: Text(paymentType.desc,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1),
|
||||
.titleMedium),
|
||||
selected: true,
|
||||
trailing: (CheckoutSession
|
||||
.getInstance.paymentType ==
|
||||
|
||||
@ -282,7 +282,7 @@ class _CheckoutShippingTypePageState extends State<CheckoutShippingTypePage> {
|
||||
_wsShippingOptions[index]['title'],
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1!
|
||||
.titleMedium!
|
||||
.copyWith(
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
@ -313,7 +313,7 @@ class _CheckoutShippingTypePageState extends State<CheckoutShippingTypePage> {
|
||||
text: '',
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2,
|
||||
.bodyMedium,
|
||||
children: <TextSpan>[
|
||||
(shippingOption[
|
||||
"object"]
|
||||
@ -335,7 +335,7 @@ class _CheckoutShippingTypePageState extends State<CheckoutShippingTypePage> {
|
||||
style: Theme.of(
|
||||
context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(
|
||||
fontSize:
|
||||
14))
|
||||
@ -367,7 +367,7 @@ class _CheckoutShippingTypePageState extends State<CheckoutShippingTypePage> {
|
||||
trans(
|
||||
"Shipping is not supported for your location, sorry"),
|
||||
style:
|
||||
Theme.of(context).textTheme.headline6,
|
||||
Theme.of(context).textTheme.titleLarge,
|
||||
textAlign: TextAlign.center,
|
||||
))),
|
||||
LinkButton(
|
||||
|
||||
@ -62,23 +62,23 @@ class _CheckoutStatusState extends NyState<CheckoutStatusPage> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("Order Status"),
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
),
|
||||
padding: EdgeInsets.only(bottom: 15),
|
||||
),
|
||||
Text(
|
||||
trans("Thank You!"),
|
||||
style: Theme.of(context).textTheme.headline6,
|
||||
style: Theme.of(context).textTheme.titleLarge,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
Text(
|
||||
trans("Your transaction details"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
Text(
|
||||
"${trans("Order Ref")}. #${_order!.id.toString()}",
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
],
|
||||
@ -110,7 +110,7 @@ class _CheckoutStatusState extends NyState<CheckoutStatusPage> {
|
||||
child: Padding(
|
||||
child: Text(
|
||||
trans("Items"),
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
padding: EdgeInsets.all(8),
|
||||
@ -138,7 +138,7 @@ class _CheckoutStatusState extends NyState<CheckoutStatusPage> {
|
||||
Text(
|
||||
lineItem.name!,
|
||||
style:
|
||||
Theme.of(context).textTheme.bodyText1,
|
||||
Theme.of(context).textTheme.bodyLarge,
|
||||
softWrap: false,
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
@ -146,7 +146,7 @@ class _CheckoutStatusState extends NyState<CheckoutStatusPage> {
|
||||
Text(
|
||||
"x${lineItem.quantity.toString()}",
|
||||
style:
|
||||
Theme.of(context).textTheme.bodyText2,
|
||||
Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -155,7 +155,7 @@ class _CheckoutStatusState extends NyState<CheckoutStatusPage> {
|
||||
formatStringCurrency(
|
||||
total: lineItem.total.toString(),
|
||||
),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
)
|
||||
],
|
||||
),
|
||||
|
||||
@ -80,7 +80,7 @@ class _CouponPageState extends State<CouponPage> {
|
||||
Icon(Icons.local_offer_outlined, size: 30),
|
||||
Text(
|
||||
trans('Redeem Coupon'),
|
||||
style: Theme.of(context).textTheme.headline4,
|
||||
style: Theme.of(context).textTheme.headlineMedium,
|
||||
),
|
||||
SizedBox(
|
||||
height: 30,
|
||||
|
||||
@ -152,7 +152,7 @@ class _CustomerCountriesPageState extends State<CustomerCountriesPage> {
|
||||
child: Container(
|
||||
child: Text(
|
||||
state.name!,
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
),
|
||||
padding: EdgeInsets.only(top: 25, bottom: 25),
|
||||
),
|
||||
|
||||
@ -59,7 +59,7 @@ class _HomeSearchPageState extends State<HomeSearchPage> {
|
||||
TextField(
|
||||
decoration: InputDecoration(prefixIcon: Icon(Icons.search)),
|
||||
controller: _txtSearchController,
|
||||
style: Theme.of(context).textTheme.headline3,
|
||||
style: Theme.of(context).textTheme.displaySmall,
|
||||
keyboardType: TextInputType.text,
|
||||
autocorrect: false,
|
||||
autofocus: true,
|
||||
|
||||
@ -72,14 +72,14 @@ class _LeaveReviewPageState extends NyState<LeaveReviewPage> {
|
||||
),
|
||||
Text(
|
||||
trans("How would you rate"),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
),
|
||||
Text(_lineItem!.name!),
|
||||
Flexible(
|
||||
child: Container(
|
||||
child: TextField(
|
||||
controller: _textEditingController,
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
keyboardType: TextInputType.text,
|
||||
autocorrect: false,
|
||||
autofocus: true,
|
||||
|
||||
@ -52,7 +52,7 @@ class _NoConnectionPageState extends State<NoConnectionPage> {
|
||||
padding: const EdgeInsets.all(16.0),
|
||||
child: Text(
|
||||
trans("Oops, something went wrong"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
|
||||
@ -94,7 +94,7 @@ class _ProductDetailState extends NyState<ProductDetailPage> {
|
||||
return ListTile(
|
||||
title: Text(
|
||||
_product!.attributes[attributeIndex].options![index],
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
),
|
||||
trailing: (_tmpAttributeObj.isNotEmpty &&
|
||||
_tmpAttributeObj.containsKey(attributeIndex) &&
|
||||
@ -134,11 +134,11 @@ class _ProductDetailState extends NyState<ProductDetailPage> {
|
||||
itemBuilder: (BuildContext context, int index) {
|
||||
return ListTile(
|
||||
title: Text(_product!.attributes[index].name!,
|
||||
style: Theme.of(context).textTheme.subtitle1),
|
||||
style: Theme.of(context).textTheme.titleMedium),
|
||||
subtitle: (_tmpAttributeObj.isNotEmpty &&
|
||||
_tmpAttributeObj.containsKey(index))
|
||||
? Text(_tmpAttributeObj[index]["value"],
|
||||
style: Theme.of(context).textTheme.bodyText1)
|
||||
style: Theme.of(context).textTheme.bodyLarge)
|
||||
: Text(
|
||||
"${trans("Select a")} ${_product!.attributes[index].name}"),
|
||||
trailing: (_tmpAttributeObj.isNotEmpty &&
|
||||
@ -163,7 +163,7 @@ class _ProductDetailState extends NyState<ProductDetailPage> {
|
||||
productVariation == null)
|
||||
? trans("This variation is unavailable")
|
||||
: trans("Choose your options"))),
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
),
|
||||
Text(
|
||||
(productVariation != null
|
||||
@ -171,7 +171,7 @@ class _ProductDetailState extends NyState<ProductDetailPage> {
|
||||
? trans("Out of stock")
|
||||
: ""
|
||||
: ""),
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
),
|
||||
PrimaryButton(
|
||||
title: trans("Add to cart"),
|
||||
|
||||
@ -80,14 +80,14 @@ class _ProductReviewsPageState extends NyState<ProductReviewsPage> {
|
||||
Container(
|
||||
child: Text(
|
||||
_product!.name!,
|
||||
style: Theme.of(context).textTheme.headline6,
|
||||
style: Theme.of(context).textTheme.titleLarge,
|
||||
),
|
||||
),
|
||||
Container(
|
||||
padding: EdgeInsets.symmetric(vertical: 8),
|
||||
child: Text(
|
||||
_product!.ratingCount.toString() + " Reviews",
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
),
|
||||
Row(
|
||||
@ -96,7 +96,7 @@ class _ProductReviewsPageState extends NyState<ProductReviewsPage> {
|
||||
margin: EdgeInsets.only(right: 8),
|
||||
child: Text(
|
||||
_product!.averageRating! + " Stars",
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
),
|
||||
RatingBarIndicator(
|
||||
|
||||
@ -78,7 +78,7 @@ class _WishListPageWidgetState extends State<WishListPageWidget> {
|
||||
Text(trans("No items found"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.headline6!
|
||||
.titleLarge!
|
||||
.setColor(context,
|
||||
(color) => color!.primaryContent))
|
||||
],
|
||||
|
||||
@ -26,18 +26,16 @@ ThemeData darkTheme(ColorStyles darkColors) {
|
||||
}
|
||||
|
||||
TextTheme darkTheme = getAppTextTheme(
|
||||
appFont, defaultTextTheme.merge(_darkTextTheme(darkColors)));
|
||||
appFont, defaultTextTheme.merge(_textTheme(darkColors)));
|
||||
return ThemeData(
|
||||
primaryColor: darkColors.primaryContent,
|
||||
backgroundColor: darkColors.background,
|
||||
colorScheme: ColorScheme.dark(),
|
||||
primaryColorDark: darkColors.primaryContent,
|
||||
brightness: Brightness.dark,
|
||||
focusColor: darkColors.primaryContent,
|
||||
scaffoldBackgroundColor: darkColors.background,
|
||||
appBarTheme: AppBarTheme(
|
||||
backgroundColor: darkColors.appBarBackground,
|
||||
titleTextStyle: darkTheme.headline6!
|
||||
titleTextStyle: darkTheme.titleLarge!
|
||||
.copyWith(color: darkColors.appBarPrimaryContent),
|
||||
iconTheme: IconThemeData(color: darkColors.appBarPrimaryContent),
|
||||
elevation: 1.0,
|
||||
@ -66,7 +64,7 @@ ThemeData darkTheme(ColorStyles darkColors) {
|
||||
TextStyle(color: darkColors.bottomTabBarLabelSelected),
|
||||
selectedItemColor: darkColors.bottomTabBarLabelSelected,
|
||||
),
|
||||
textTheme: darkTheme,
|
||||
textTheme: darkTheme, colorScheme: ColorScheme.dark().copyWith(background: darkColors.background),
|
||||
);
|
||||
}
|
||||
|
||||
@ -76,47 +74,13 @@ ThemeData darkTheme(ColorStyles darkColors) {
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
TextTheme _darkTextTheme(BaseColorStyles dark) {
|
||||
final Color darkPrimaryContent = dark.primaryContent;
|
||||
return TextTheme(
|
||||
headline6: TextStyle(
|
||||
color: darkPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
headline5: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
headline4: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
headline3: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
headline2: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
headline1: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
subtitle2: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
subtitle1: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
overline: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
button: TextStyle(
|
||||
color: darkPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
bodyText2: TextStyle(
|
||||
color: darkPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
bodyText1: TextStyle(
|
||||
color: darkPrimaryContent,
|
||||
),
|
||||
caption: TextStyle(
|
||||
color: darkPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
TextTheme _textTheme(ColorStyles colors) {
|
||||
Color primaryContent = colors.primaryContent;
|
||||
TextTheme textTheme = TextTheme().apply(displayColor: primaryContent);
|
||||
return textTheme.copyWith(
|
||||
titleLarge: TextStyle(color: primaryContent.withOpacity(0.8)),
|
||||
labelLarge: TextStyle(color: primaryContent.withOpacity(0.8)),
|
||||
bodySmall: TextStyle(color: primaryContent.withOpacity(0.8)),
|
||||
bodyMedium: TextStyle(color: primaryContent.withOpacity(0.8))
|
||||
);
|
||||
}
|
||||
|
||||
@ -26,19 +26,17 @@ ThemeData lightTheme(ColorStyles lightColors) {
|
||||
}
|
||||
|
||||
TextTheme lightTheme = getAppTextTheme(
|
||||
appFont, defaultTextTheme.merge(_lightTextTheme(lightColors)));
|
||||
appFont, defaultTextTheme.merge(_textTheme(lightColors)));
|
||||
|
||||
return ThemeData(
|
||||
primaryColor: lightColors.primaryContent,
|
||||
backgroundColor: lightColors.background,
|
||||
colorScheme: ColorScheme.light(),
|
||||
primaryColorLight: lightColors.primaryAccent,
|
||||
focusColor: lightColors.primaryContent,
|
||||
scaffoldBackgroundColor: lightColors.background,
|
||||
hintColor: lightColors.primaryAccent,
|
||||
appBarTheme: AppBarTheme(
|
||||
backgroundColor: lightColors.appBarBackground,
|
||||
titleTextStyle: lightTheme.headline6!
|
||||
titleTextStyle: lightTheme.titleLarge!
|
||||
.copyWith(color: lightColors.appBarPrimaryContent),
|
||||
iconTheme: IconThemeData(color: lightColors.appBarPrimaryContent),
|
||||
elevation: 1.0,
|
||||
@ -68,7 +66,7 @@ ThemeData lightTheme(ColorStyles lightColors) {
|
||||
TextStyle(color: lightColors.bottomTabBarLabelSelected),
|
||||
selectedItemColor: lightColors.bottomTabBarLabelSelected,
|
||||
),
|
||||
textTheme: lightTheme,
|
||||
textTheme: lightTheme, colorScheme: ColorScheme.light().copyWith(background: lightColors.background),
|
||||
);
|
||||
}
|
||||
|
||||
@ -78,47 +76,11 @@ ThemeData lightTheme(ColorStyles lightColors) {
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
TextTheme _lightTextTheme(BaseColorStyles lightColors) {
|
||||
Color lightPrimaryContent = lightColors.primaryContent;
|
||||
return TextTheme(
|
||||
headline6: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
headline5: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
headline4: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
headline3: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
headline2: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
headline1: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
subtitle2: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
subtitle1: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
overline: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
button: TextStyle(
|
||||
color: lightPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
bodyText2: TextStyle(
|
||||
color: lightPrimaryContent.withOpacity(0.8),
|
||||
),
|
||||
bodyText1: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
caption: TextStyle(
|
||||
color: lightPrimaryContent,
|
||||
),
|
||||
TextTheme _textTheme(ColorStyles colors) {
|
||||
Color primaryContent = colors.primaryContent;
|
||||
TextTheme textTheme = TextTheme().apply(displayColor: primaryContent);
|
||||
return textTheme.copyWith(
|
||||
labelLarge: TextStyle(color: primaryContent.withOpacity(0.8)),
|
||||
bodyMedium: TextStyle(color: primaryContent.withOpacity(0.8)),
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -7,49 +7,49 @@ import 'package:flutter/material.dart';
|
||||
*/
|
||||
|
||||
const TextTheme defaultTextTheme = TextTheme(
|
||||
headline6: TextStyle(
|
||||
titleLarge: TextStyle(
|
||||
fontSize: 18.0,
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
headline5: TextStyle(
|
||||
headlineSmall: TextStyle(
|
||||
fontSize: 22.0,
|
||||
),
|
||||
headline4: TextStyle(
|
||||
headlineMedium: TextStyle(
|
||||
fontSize: 24.0,
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
headline3: TextStyle(
|
||||
displaySmall: TextStyle(
|
||||
fontSize: 26.0,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
headline2: TextStyle(
|
||||
displayMedium: TextStyle(
|
||||
fontSize: 28.0,
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
headline1: TextStyle(
|
||||
displayLarge: TextStyle(
|
||||
fontSize: 36.0,
|
||||
fontWeight: FontWeight.w300,
|
||||
),
|
||||
subtitle2: TextStyle(
|
||||
titleSmall: TextStyle(
|
||||
fontSize: 14.0,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
subtitle1: TextStyle(
|
||||
titleMedium: TextStyle(
|
||||
fontSize: 16.0,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overline: TextStyle(
|
||||
labelSmall: TextStyle(
|
||||
fontSize: 10.0,
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
button: TextStyle(),
|
||||
bodyText2: TextStyle(
|
||||
labelLarge: TextStyle(),
|
||||
bodyMedium: TextStyle(
|
||||
fontSize: 14.0,
|
||||
),
|
||||
bodyText1: TextStyle(
|
||||
bodyLarge: TextStyle(
|
||||
fontSize: 16.0,
|
||||
),
|
||||
caption: TextStyle(
|
||||
bodySmall: TextStyle(
|
||||
fontSize: 16.0,
|
||||
),
|
||||
);
|
||||
);
|
||||
@ -141,7 +141,7 @@ class _AccountDetailOrdersWidgetState extends State<AccountDetailOrdersWidget> {
|
||||
formatStringCurrency(total: order.total),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontWeight: FontWeight.w600),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
@ -151,7 +151,7 @@ class _AccountDetailOrdersWidgetState extends State<AccountDetailOrdersWidget> {
|
||||
trans("items"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(fontWeight: FontWeight.w600),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
@ -168,7 +168,7 @@ class _AccountDetailOrdersWidgetState extends State<AccountDetailOrdersWidget> {
|
||||
formatType: formatForDateTime(FormatType.time),
|
||||
),
|
||||
textAlign: TextAlign.right,
|
||||
style: Theme.of(context).textTheme.bodyText1!.copyWith(
|
||||
style: Theme.of(context).textTheme.bodyLarge!.copyWith(
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
),
|
||||
|
||||
@ -32,7 +32,7 @@ class AppVersionWidget extends StatelessWidget {
|
||||
child: Text("${trans("Version")}: ${snapshot.data!.version}",
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontWeight: FontWeight.w300)),
|
||||
padding: EdgeInsets.only(top: 15, bottom: 15),
|
||||
);
|
||||
|
||||
@ -28,7 +28,7 @@ class PrimaryButton extends StatelessWidget {
|
||||
title: title,
|
||||
action: action,
|
||||
isLoading: isLoading,
|
||||
textStyle: Theme.of(context).textTheme.button!.copyWith(
|
||||
textStyle: Theme.of(context).textTheme.labelLarge!.copyWith(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: ThemeColor.get(context).buttonPrimaryContent),
|
||||
@ -51,7 +51,7 @@ class SecondaryButton extends StatelessWidget {
|
||||
key: key,
|
||||
title: title,
|
||||
action: action,
|
||||
textStyle: Theme.of(context).textTheme.bodyText1!.copyWith(
|
||||
textStyle: Theme.of(context).textTheme.bodyLarge!.copyWith(
|
||||
color: Colors.black87,
|
||||
),
|
||||
bgColor: Color(0xFFF6F6F9),
|
||||
@ -83,7 +83,7 @@ class LinkButton extends StatelessWidget {
|
||||
child: Text(
|
||||
title!,
|
||||
textAlign: TextAlign.center,
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
)),
|
||||
),
|
||||
onTap: action == null ? null : () async => await action!(),
|
||||
@ -120,10 +120,9 @@ class WooSignalButton extends StatelessWidget {
|
||||
style: ElevatedButton.styleFrom(
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(12.0),
|
||||
),
|
||||
), backgroundColor: bgColor,
|
||||
padding: EdgeInsets.all(8),
|
||||
elevation: 0,
|
||||
primary: bgColor,
|
||||
shadowColor: Colors.transparent,
|
||||
),
|
||||
child: isLoading
|
||||
|
||||
@ -55,7 +55,7 @@ class _CartIconWidgetState extends State<CartIconWidget> {
|
||||
}
|
||||
return Text(
|
||||
cartValue,
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
textAlign: TextAlign.center,
|
||||
);
|
||||
}
|
||||
|
||||
@ -47,7 +47,7 @@ class CheckoutSelectCouponWidget extends StatelessWidget {
|
||||
hasCoupon
|
||||
? "Coupon Applied: " + checkoutSession.coupon!.code!
|
||||
: trans('Apply Coupon'),
|
||||
style: Theme.of(context).textTheme.subtitle2,
|
||||
style: Theme.of(context).textTheme.titleSmall,
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
@ -50,7 +50,8 @@ class _CompoHomeWidgetState extends State<CompoHomeWidget> {
|
||||
perPage: 10,
|
||||
category: category.id.toString(),
|
||||
status: "publish",
|
||||
stockStatus: "instock"),
|
||||
stockStatus: "instock",
|
||||
),
|
||||
));
|
||||
if (products.isNotEmpty) {
|
||||
categoryAndProducts.addAll({category: products});
|
||||
@ -140,7 +141,7 @@ class _CompoHomeWidgetState extends State<CompoHomeWidget> {
|
||||
catProds.key.name!,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1!
|
||||
.titleMedium!
|
||||
.copyWith(
|
||||
fontWeight: FontWeight.bold,
|
||||
fontSize: 22),
|
||||
|
||||
@ -32,10 +32,10 @@ class CompoThemeWidget extends StatefulWidget {
|
||||
final GlobalKey globalKey;
|
||||
|
||||
@override
|
||||
CcompoThemeWidgetState createState() => CcompoThemeWidgetState();
|
||||
CompoThemeWidgetState createState() => CompoThemeWidgetState();
|
||||
}
|
||||
|
||||
class CcompoThemeWidgetState extends State<CompoThemeWidget> {
|
||||
class CompoThemeWidgetState extends State<CompoThemeWidget> {
|
||||
Widget? activeWidget;
|
||||
|
||||
int _currentIndex = 0;
|
||||
|
||||
@ -120,7 +120,7 @@ class CustomerAddressInput extends StatelessWidget {
|
||||
height: 23,
|
||||
child: Text(
|
||||
trans("State"),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
width: double.infinity,
|
||||
@ -144,7 +144,7 @@ class CustomerAddressInput extends StatelessWidget {
|
||||
height: 23,
|
||||
child: Text(
|
||||
trans("Country"),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
width: double.infinity,
|
||||
|
||||
@ -65,7 +65,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("Menu"),
|
||||
style: Theme.of(context).textTheme.subtitle2,
|
||||
style: Theme.of(context).textTheme.titleSmall,
|
||||
),
|
||||
padding: EdgeInsets.only(left: 16, top: 8, bottom: 8),
|
||||
),
|
||||
@ -75,7 +75,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
trans("Profile"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16),
|
||||
),
|
||||
leading: Icon(Icons.account_circle),
|
||||
@ -87,7 +87,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
trans("Wishlist"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16),
|
||||
),
|
||||
leading: Icon(Icons.favorite_border),
|
||||
@ -98,7 +98,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
trans("Cart"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16),
|
||||
),
|
||||
leading: Icon(Icons.shopping_cart),
|
||||
@ -111,7 +111,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("About Us"),
|
||||
style: Theme.of(context).textTheme.subtitle2,
|
||||
style: Theme.of(context).textTheme.titleSmall,
|
||||
),
|
||||
padding: EdgeInsets.only(left: 16, top: 8, bottom: 8),
|
||||
),
|
||||
@ -122,7 +122,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
trans("Terms and conditions"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16),
|
||||
),
|
||||
leading: Icon(Icons.menu_book_rounded),
|
||||
@ -136,7 +136,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
trans("Privacy policy"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16),
|
||||
),
|
||||
trailing: Icon(Icons.keyboard_arrow_right_rounded),
|
||||
@ -147,7 +147,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
title: Text(trans((isDark ? "Light Mode" : "Dark Mode")),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16)),
|
||||
leading: Icon(Icons.brightness_4_rounded),
|
||||
onTap: () {
|
||||
@ -163,7 +163,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
Padding(
|
||||
child: Text(
|
||||
trans("Social"),
|
||||
style: Theme.of(context).textTheme.subtitle2,
|
||||
style: Theme.of(context).textTheme.titleSmall,
|
||||
),
|
||||
padding: EdgeInsets.only(left: 16, top: 8, bottom: 8),
|
||||
),
|
||||
@ -173,7 +173,7 @@ class _HomeDrawerWidgetState extends State<HomeDrawerWidget> {
|
||||
title: Text(menuLink.label,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16)),
|
||||
leading: Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 8),
|
||||
|
||||
@ -19,7 +19,7 @@ class NoResultsForProductsWidget extends StatelessWidget {
|
||||
children: <Widget>[
|
||||
Text(
|
||||
trans("No results"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
],
|
||||
);
|
||||
|
||||
@ -102,7 +102,7 @@ class _NoticHomeWidgetState extends State<NoticHomeWidget> {
|
||||
onTap: _modalBottomSheetMenu,
|
||||
child: Text(
|
||||
trans("Categories"),
|
||||
style: Theme.of(context).textTheme.bodyText2,
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
),
|
||||
),
|
||||
),
|
||||
@ -146,7 +146,7 @@ class _NoticHomeWidgetState extends State<NoticHomeWidget> {
|
||||
Flexible(
|
||||
child: Text(
|
||||
trans("Our selection of new items"),
|
||||
style: Theme.of(context).textTheme.headline4,
|
||||
style: Theme.of(context).textTheme.headlineMedium,
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
|
||||
@ -41,7 +41,7 @@ class ProductDetailDescriptionWidget extends StatelessWidget {
|
||||
Text(
|
||||
trans("Description"),
|
||||
style:
|
||||
Theme.of(context).textTheme.caption!.copyWith(fontSize: 18),
|
||||
Theme.of(context).textTheme.bodySmall!.copyWith(fontSize: 18),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
if (product!.shortDescription!.isNotEmpty &&
|
||||
@ -51,7 +51,7 @@ class ProductDetailDescriptionWidget extends StatelessWidget {
|
||||
trans("Full description"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 14),
|
||||
textAlign: TextAlign.right,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
@ -72,7 +72,7 @@ class ProductDetailDescriptionWidget extends StatelessWidget {
|
||||
renderMode: RenderMode.column, onTapUrl: (String url) async {
|
||||
await launchUrl(Uri.parse(url));
|
||||
return true;
|
||||
}, textStyle: Theme.of(context).textTheme.bodyText2),
|
||||
}, textStyle: Theme.of(context).textTheme.bodyMedium),
|
||||
),
|
||||
],
|
||||
);
|
||||
|
||||
@ -64,7 +64,7 @@ class ProductDetailFooterActionsWidget extends StatelessWidget {
|
||||
trans("Quantity"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(color: Colors.grey),
|
||||
),
|
||||
Row(
|
||||
@ -78,7 +78,7 @@ class ProductDetailFooterActionsWidget extends StatelessWidget {
|
||||
),
|
||||
Text(
|
||||
quantity.toString(),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
),
|
||||
IconButton(
|
||||
icon: Icon(
|
||||
@ -101,7 +101,7 @@ class ProductDetailFooterActionsWidget extends StatelessWidget {
|
||||
formatStringCurrency(
|
||||
total:
|
||||
(parseWcPrice(product!.price) * quantity).toString()),
|
||||
style: Theme.of(context).textTheme.headline4,
|
||||
style: Theme.of(context).textTheme.headlineMedium,
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
alignment: Alignment.centerLeft,
|
||||
|
||||
@ -33,7 +33,7 @@ class ProductDetailHeaderWidget extends StatelessWidget {
|
||||
child: Text(
|
||||
product!.name!,
|
||||
style:
|
||||
Theme.of(context).textTheme.bodyText1!.copyWith(fontSize: 20),
|
||||
Theme.of(context).textTheme.bodyLarge!.copyWith(fontSize: 20),
|
||||
textAlign: TextAlign.left,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
maxLines: 2,
|
||||
@ -47,7 +47,7 @@ class ProductDetailHeaderWidget extends StatelessWidget {
|
||||
children: [
|
||||
Text(
|
||||
formatStringCurrency(total: product!.price),
|
||||
style: Theme.of(context).textTheme.headline4!.copyWith(
|
||||
style: Theme.of(context).textTheme.headlineMedium!.copyWith(
|
||||
fontSize: 20,
|
||||
),
|
||||
textAlign: TextAlign.right,
|
||||
|
||||
@ -44,7 +44,7 @@ class ProductDetailRelatedProductsWidget extends StatelessWidget {
|
||||
Text(
|
||||
trans("Related products"),
|
||||
style:
|
||||
Theme.of(context).textTheme.caption!.copyWith(fontSize: 18),
|
||||
Theme.of(context).textTheme.bodySmall!.copyWith(fontSize: 18),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
],
|
||||
|
||||
@ -73,7 +73,7 @@ class _ProductDetailReviewTileWidgetState
|
||||
child: Text(trans("More"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontWeight: FontWeight.bold)),
|
||||
onTap: () => setState(() {
|
||||
_maxLines = null;
|
||||
|
||||
@ -66,7 +66,7 @@ class _ProductDetailUpsellWidgetState extends State<ProductDetailUpsellWidget> {
|
||||
Text(
|
||||
trans("${trans('You may also like')}…"),
|
||||
style:
|
||||
Theme.of(context).textTheme.caption!.copyWith(fontSize: 18),
|
||||
Theme.of(context).textTheme.bodySmall!.copyWith(fontSize: 18),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
],
|
||||
|
||||
@ -41,7 +41,7 @@ class SwitchAddressTab extends StatelessWidget {
|
||||
width: double.infinity,
|
||||
child: Text(
|
||||
title,
|
||||
style: Theme.of(context).textTheme.subtitle1!.copyWith(
|
||||
style: Theme.of(context).textTheme.titleMedium!.copyWith(
|
||||
color: isActive ? Colors.white : Colors.black,
|
||||
),
|
||||
textAlign: TextAlign.center,
|
||||
|
||||
@ -24,7 +24,7 @@ class TextRowWidget extends StatelessWidget {
|
||||
children: <Widget>[
|
||||
Flexible(
|
||||
child: Container(
|
||||
child: Text(title!, style: Theme.of(context).textTheme.headline6),
|
||||
child: Text(title!, style: Theme.of(context).textTheme.titleLarge),
|
||||
),
|
||||
flex: 3,
|
||||
),
|
||||
@ -33,7 +33,7 @@ class TextRowWidget extends StatelessWidget {
|
||||
child: Text(
|
||||
text!,
|
||||
style:
|
||||
Theme.of(context).textTheme.bodyText1!.copyWith(fontSize: 16),
|
||||
Theme.of(context).textTheme.bodyLarge!.copyWith(fontSize: 16),
|
||||
),
|
||||
),
|
||||
flex: 3,
|
||||
|
||||
@ -29,7 +29,7 @@ class TopNavWidget extends StatelessWidget {
|
||||
"${(trans("Shop").capitalize())} / ",
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1!
|
||||
.titleMedium!
|
||||
.copyWith(fontWeight: FontWeight.bold),
|
||||
maxLines: 1,
|
||||
),
|
||||
@ -37,7 +37,7 @@ class TopNavWidget extends StatelessWidget {
|
||||
trans("Newest"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontWeight: FontWeight.bold),
|
||||
maxLines: 1,
|
||||
),
|
||||
@ -49,7 +49,7 @@ class TopNavWidget extends StatelessWidget {
|
||||
height: 60,
|
||||
child: AutoSizeText(
|
||||
trans("Browse categories"),
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
maxLines: 1,
|
||||
textAlign: TextAlign.right,
|
||||
),
|
||||
|
||||
@ -151,7 +151,7 @@ class CheckoutRowLine extends StatelessWidget {
|
||||
heading,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 16, fontWeight: FontWeight.bold),
|
||||
),
|
||||
padding: EdgeInsets.only(bottom: 8),
|
||||
@ -171,7 +171,7 @@ class CheckoutRowLine extends StatelessWidget {
|
||||
child: Container(
|
||||
child: Text(
|
||||
leadTitle!,
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
softWrap: false,
|
||||
@ -233,7 +233,7 @@ class TextEditingRow extends StatelessWidget {
|
||||
heading!,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(color: ThemeColor.get(context).primaryContent),
|
||||
),
|
||||
padding: EdgeInsets.only(bottom: 2),
|
||||
@ -242,7 +242,7 @@ class TextEditingRow extends StatelessWidget {
|
||||
Flexible(
|
||||
child: TextField(
|
||||
controller: controller,
|
||||
style: Theme.of(context).textTheme.subtitle1,
|
||||
style: Theme.of(context).textTheme.titleMedium,
|
||||
keyboardType: keyboardType ?? TextInputType.text,
|
||||
autocorrect: false,
|
||||
autofocus: shouldAutoFocus ?? false,
|
||||
@ -270,14 +270,14 @@ class CheckoutMetaLine extends StatelessWidget {
|
||||
Flexible(
|
||||
child: Container(
|
||||
child: AutoSizeText(title!,
|
||||
style: Theme.of(context).textTheme.bodyText2),
|
||||
style: Theme.of(context).textTheme.bodyMedium),
|
||||
),
|
||||
flex: 3,
|
||||
),
|
||||
Flexible(
|
||||
child: Container(
|
||||
child:
|
||||
Text(amount!, style: Theme.of(context).textTheme.bodyText1),
|
||||
Text(amount!, style: Theme.of(context).textTheme.bodyLarge),
|
||||
),
|
||||
flex: 3,
|
||||
)
|
||||
@ -354,14 +354,14 @@ class ProductItemContainer extends StatelessWidget {
|
||||
textAlign: TextAlign.center,
|
||||
text: TextSpan(
|
||||
text: '',
|
||||
style: Theme.of(context).textTheme.bodyText1,
|
||||
style: Theme.of(context).textTheme.bodyLarge,
|
||||
children: <TextSpan>[
|
||||
TextSpan(
|
||||
text:
|
||||
"${workoutSaleDiscount(salePrice: product!.salePrice, priceBefore: product!.regularPrice)}% ${trans("off")}",
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(
|
||||
color: Colors.black87,
|
||||
fontSize: 11,
|
||||
@ -382,7 +382,7 @@ class ProductItemContainer extends StatelessWidget {
|
||||
product!.name!,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontSize: 15),
|
||||
maxLines: 2,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
@ -398,7 +398,7 @@ class ProductItemContainer extends StatelessWidget {
|
||||
"${formatStringCurrency(total: product!.price)} ",
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText2!
|
||||
.bodyMedium!
|
||||
.copyWith(fontWeight: FontWeight.w600),
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
@ -409,7 +409,7 @@ class ProductItemContainer extends StatelessWidget {
|
||||
text: '${trans("Was")}: ',
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(
|
||||
fontSize: 11,
|
||||
),
|
||||
@ -420,7 +420,7 @@ class ProductItemContainer extends StatelessWidget {
|
||||
),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.bodyText1!
|
||||
.bodyLarge!
|
||||
.copyWith(
|
||||
decoration: TextDecoration.lineThrough,
|
||||
color: Colors.grey,
|
||||
@ -471,7 +471,7 @@ wsModalBottom(BuildContext context,
|
||||
padding: EdgeInsets.symmetric(vertical: 16),
|
||||
child: Text(
|
||||
title!,
|
||||
style: Theme.of(context).textTheme.headline4,
|
||||
style: Theme.of(context).textTheme.headlineMedium,
|
||||
textAlign: TextAlign.left,
|
||||
),
|
||||
),
|
||||
@ -641,14 +641,14 @@ class CartItemContainer extends StatelessWidget {
|
||||
cartLineItem.name!,
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1!
|
||||
.titleMedium!
|
||||
.copyWith(fontWeight: FontWeight.bold),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
maxLines: 3,
|
||||
),
|
||||
(cartLineItem.variationOptions != null
|
||||
? Text(cartLineItem.variationOptions!,
|
||||
style: Theme.of(context).textTheme.bodyText1)
|
||||
style: Theme.of(context).textTheme.bodyLarge)
|
||||
: Container()),
|
||||
Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
@ -659,8 +659,8 @@ class CartItemContainer extends StatelessWidget {
|
||||
? trans("Out of stock")
|
||||
: trans("In Stock")),
|
||||
style: (cartLineItem.stockStatus == "outofstock"
|
||||
? Theme.of(context).textTheme.caption
|
||||
: Theme.of(context).textTheme.bodyText2),
|
||||
? Theme.of(context).textTheme.bodySmall
|
||||
: Theme.of(context).textTheme.bodyMedium),
|
||||
),
|
||||
Text(
|
||||
formatDoubleCurrency(
|
||||
@ -668,7 +668,7 @@ class CartItemContainer extends StatelessWidget {
|
||||
),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.subtitle1!
|
||||
.titleMedium!
|
||||
.copyWith(fontWeight: FontWeight.bold),
|
||||
textAlign: TextAlign.center,
|
||||
)
|
||||
@ -696,7 +696,7 @@ class CartItemContainer extends StatelessWidget {
|
||||
highlightColor: Colors.transparent,
|
||||
),
|
||||
Text(cartLineItem.quantity.toString(),
|
||||
style: Theme.of(context).textTheme.headline6),
|
||||
style: Theme.of(context).textTheme.titleLarge),
|
||||
IconButton(
|
||||
icon: Icon(Icons.add_circle_outline),
|
||||
onPressed: actionIncrementQuantity,
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
# Official WooSignal App Template for WooCommerce
|
||||
|
||||
# Label StoreMax
|
||||
# Version: 6.4.0
|
||||
# Version: 6.4.1
|
||||
# Author: Anthony Gordon
|
||||
# Homepage: https://woosignal.com
|
||||
# Documentation: https://woosignal.com/docs/app/label-storemax
|
||||
@ -22,16 +22,16 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
||||
version: 1.0.0+1
|
||||
|
||||
environment:
|
||||
sdk: '>=2.17.0 <3.0.0'
|
||||
sdk: '>=2.19.0 <3.0.0'
|
||||
|
||||
dependencies:
|
||||
google_fonts: ^3.0.1
|
||||
google_fonts: ^4.0.3
|
||||
analyzer: ^4.2.0
|
||||
intl: ^0.17.0
|
||||
nylo_framework: ^4.0.0
|
||||
woosignal: ^3.2.1
|
||||
flutter_stripe: ^7.0.0
|
||||
wp_json_api: ^3.3.1
|
||||
nylo_framework: ^4.1.3
|
||||
woosignal: ^3.2.3
|
||||
flutter_stripe: ^8.0.0+1
|
||||
wp_json_api: ^3.3.2
|
||||
cached_network_image: ^3.2.3
|
||||
package_info: ^2.0.2
|
||||
money_formatter: ^0.0.3
|
||||
@ -47,12 +47,12 @@ dependencies:
|
||||
flutter_spinkit: ^5.1.0
|
||||
auto_size_text: ^3.0.0
|
||||
html: ^0.15.1
|
||||
flutter_widget_from_html_core: ^0.9.0+2
|
||||
flutter_widget_from_html_core: ^0.10.0
|
||||
flutter_rating_bar: ^4.0.1
|
||||
flutter_staggered_grid_view: ^0.6.2
|
||||
flutter_swiper_view: ^1.1.8
|
||||
firebase_messaging: ^14.2.1
|
||||
firebase_core: ^2.4.1
|
||||
firebase_messaging: ^14.2.5
|
||||
firebase_core: ^2.7.0
|
||||
flutter:
|
||||
sdk: flutter
|
||||
flutter_localizations:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user