From 8bd82fa53c296f0b7f1c9f6efac5e9f42554c7f1 Mon Sep 17 00:00:00 2001 From: Anthony Date: Tue, 23 Apr 2024 12:50:15 +0700 Subject: [PATCH] v7.4.0 --- LabelStoreMax/CHANGELOG.md | 6 + .../ios/Runner.xcodeproj/project.pbxproj | 4 + .../ios/Runner/PrivacyInfo.xcprivacy | 41 +++++++ LabelStoreMax/lang/de.json | 4 + LabelStoreMax/lang/en.json | 4 + LabelStoreMax/lang/es.json | 4 + LabelStoreMax/lang/fr.json | 4 + LabelStoreMax/lang/hi.json | 4 + LabelStoreMax/lang/id.json | 4 + LabelStoreMax/lang/it.json | 4 + LabelStoreMax/lang/nl.json | 4 + LabelStoreMax/lang/pt.json | 4 + LabelStoreMax/lang/th.json | 4 + LabelStoreMax/lang/tr.json | 4 + LabelStoreMax/lang/zh.json | 4 + .../lib/app/models/checkout_session.dart | 1 + .../lib/bootstrap/data/order_wc.dart | 4 + .../lib/config/payment_gateways.dart | 2 +- .../pages/checkout_confirmation_page.dart | 2 + .../checkout_customer_note_widget.dart | 110 ++++++++++++++++++ LabelStoreMax/pubspec.lock | 60 +++++----- LabelStoreMax/pubspec.yaml | 16 +-- 22 files changed, 255 insertions(+), 39 deletions(-) create mode 100644 LabelStoreMax/ios/Runner/PrivacyInfo.xcprivacy create mode 100644 LabelStoreMax/lib/resources/widgets/checkout_customer_note_widget.dart diff --git a/LabelStoreMax/CHANGELOG.md b/LabelStoreMax/CHANGELOG.md index 63168d9..782fe31 100644 --- a/LabelStoreMax/CHANGELOG.md +++ b/LabelStoreMax/CHANGELOG.md @@ -1,3 +1,9 @@ +## [7.4.0] - 2024-04-23 + +* Ability to add order notes +* Add new translations +* Pubspec.yaml dependency updates + ## [7.3.2] - 2024-04-12 * Update env file diff --git a/LabelStoreMax/ios/Runner.xcodeproj/project.pbxproj b/LabelStoreMax/ios/Runner.xcodeproj/project.pbxproj index 472d848..9a7df6b 100644 --- a/LabelStoreMax/ios/Runner.xcodeproj/project.pbxproj +++ b/LabelStoreMax/ios/Runner.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 928C71BE2BD7772B00C15E45 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 928C71BD2BD7772B00C15E45 /* PrivacyInfo.xcprivacy */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; @@ -57,6 +58,7 @@ 8362715010B1DC025B396ED3 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; 8DD46F1E543D90202726C03D /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; 925D64452BA7F98500C41197 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; + 928C71BD2BD7772B00C15E45 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -162,6 +164,7 @@ 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + 928C71BD2BD7772B00C15E45 /* PrivacyInfo.xcprivacy */, ); path = Runner; sourceTree = ""; @@ -264,6 +267,7 @@ 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 928C71BE2BD7772B00C15E45 /* PrivacyInfo.xcprivacy in Resources */, 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/LabelStoreMax/ios/Runner/PrivacyInfo.xcprivacy b/LabelStoreMax/ios/Runner/PrivacyInfo.xcprivacy new file mode 100644 index 0000000..8b5aaf5 --- /dev/null +++ b/LabelStoreMax/ios/Runner/PrivacyInfo.xcprivacy @@ -0,0 +1,41 @@ + + + + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategorySystemBootTime + NSPrivacyAccessedAPITypeReasons + + 35F9.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryDiskSpace + NSPrivacyAccessedAPITypeReasons + + 85F4.1 + + + + + diff --git a/LabelStoreMax/lang/de.json b/LabelStoreMax/lang/de.json index 8833b7f..b898ebc 100644 --- a/LabelStoreMax/lang/de.json +++ b/LabelStoreMax/lang/de.json @@ -239,5 +239,9 @@ "Invalid email address": "Ungültige E-Mail-Adresse", "By completing this order, I agree to all": "Mit Abschluss dieser Bestellung stimme ich allem zu", "Change language": "Sprache ändern", + "Order Note": "Bestellhinweis", + "Save Note": "Notiz speichern", + "Enter order note": "Bestellnotiz eingeben", + "Order note must be less than 100 characters": "Die Bestellnotiz muss weniger als 100 Zeichen lang sein", "Select your language": "Wähle deine Sprache" } \ No newline at end of file diff --git a/LabelStoreMax/lang/en.json b/LabelStoreMax/lang/en.json index 3944b5f..c729a83 100644 --- a/LabelStoreMax/lang/en.json +++ b/LabelStoreMax/lang/en.json @@ -239,5 +239,9 @@ "Invalid email address": "Invalid email address", "By completing this order, I agree to all": "By completing this order, I agree to all", "Change language": "Change language", + "Order Note": "Order Note", + "Save Note": "Save Note", + "Enter order note": "Enter order note", + "Order note must be less than 100 characters": "Order note must be less than 100 characters", "Select your language": "Select your language" } \ No newline at end of file diff --git a/LabelStoreMax/lang/es.json b/LabelStoreMax/lang/es.json index c77d2ed..34a625f 100644 --- a/LabelStoreMax/lang/es.json +++ b/LabelStoreMax/lang/es.json @@ -239,5 +239,9 @@ "Invalid email address": "Dirección de correo electrónico no válida", "By completing this order, I agree to all": "Al completar este pedido, acepto todos", "Change language": "Cambiar idioma", + "Order Note": "Nota de pedido", + "Save Note": "Guardar nota", + "Enter order note": "Introducir nota de pedido", + "Order note must be less than 100 characters": "La nota del pedido debe tener menos de 100 caracteres.", "Select your language": "elige tu idioma" } \ No newline at end of file diff --git a/LabelStoreMax/lang/fr.json b/LabelStoreMax/lang/fr.json index ebe0bf4..1f5d1a0 100644 --- a/LabelStoreMax/lang/fr.json +++ b/LabelStoreMax/lang/fr.json @@ -239,5 +239,9 @@ "Invalid email address": "Adresse e-mail invalide", "By completing this order, I agree to all": "En remplissant cette commande, j'accepte toutes", "Change language": "Changer de langue", + "Order Note": "Remarque sur la commande", + "Save Note": "Enregistrer la note", + "Enter order note": "Saisir le bon de commande", + "Order note must be less than 100 characters": "Le bon de commande doit comporter moins de 100 caractères", "Select your language": "choisissez votre langue" } \ No newline at end of file diff --git a/LabelStoreMax/lang/hi.json b/LabelStoreMax/lang/hi.json index 0b44b3f..d42a0a5 100644 --- a/LabelStoreMax/lang/hi.json +++ b/LabelStoreMax/lang/hi.json @@ -239,5 +239,9 @@ "Invalid email address": "amaany eemel pata", "By completing this order, I agree to all": "is aadesh ko poora karake, main sabhee ke lie sahamat hoon", "Change language": "bhaasha badalen", + "Order Note": "aadesh not", + "Save Note": "not sahejen", + "Enter order note": "ordar not darj karen", + "Order note must be less than 100 characters": "ordar not 100 aksharon se kam hona chaahie", "Select your language": "apanee bhaasha ka chayan karen" } \ No newline at end of file diff --git a/LabelStoreMax/lang/id.json b/LabelStoreMax/lang/id.json index 9e3f0c3..a3cc051 100644 --- a/LabelStoreMax/lang/id.json +++ b/LabelStoreMax/lang/id.json @@ -239,5 +239,9 @@ "Invalid email address": "alamat email salah", "By completing this order, I agree to all": "Dengan menyelesaikan pesanan ini, saya menyetujui semuanya", "Change language": "Ganti BAHASA", + "Order Note": "Catatan Pesanan", + "Save Note": "Simpan Catatan", + "Enter order note": "Masukkan catatan pesanan", + "Order note must be less than 100 characters": "Catatan pesanan harus kurang dari 100 karakter", "Select your language": "Pilih bahasamu" } \ No newline at end of file diff --git a/LabelStoreMax/lang/it.json b/LabelStoreMax/lang/it.json index e46ec8a..e4fc629 100644 --- a/LabelStoreMax/lang/it.json +++ b/LabelStoreMax/lang/it.json @@ -239,5 +239,9 @@ "Invalid email address": "indirizzo email non valido", "By completing this order, I agree to all": "Completando questo ordine, accetto tutto", "Change language": "Cambia lingua", + "Order Note": "Nota sull'ordine", + "Save Note": "Salva nota", + "Enter order note": "Inserisci la nota dell'ordine", + "Order note must be less than 100 characters": "La nota dell'ordine deve contenere meno di 100 caratteri", "Select your language": "seleziona la tua lingua" } \ No newline at end of file diff --git a/LabelStoreMax/lang/nl.json b/LabelStoreMax/lang/nl.json index ef6c486..02f629b 100644 --- a/LabelStoreMax/lang/nl.json +++ b/LabelStoreMax/lang/nl.json @@ -239,5 +239,9 @@ "Invalid email address": "Ongeldig e-mailadres", "By completing this order, I agree to all": "Door deze bestelling te voltooien, ga ik akkoord met alles", "Change language": "Taal wijzigen", + "Order Note": "Bestelnotitie", + "Save Note": "Bewaar notitie", + "Enter order note": "Bestelnotitie invoeren", + "Order note must be less than 100 characters": "Bestelnotitie moet minder dan 100 tekens lang zijn", "Select your language": "Selecteer je taal" } \ No newline at end of file diff --git a/LabelStoreMax/lang/pt.json b/LabelStoreMax/lang/pt.json index 4b243ca..25250bb 100644 --- a/LabelStoreMax/lang/pt.json +++ b/LabelStoreMax/lang/pt.json @@ -239,5 +239,9 @@ "Invalid email address": "Endereço de email invalido", "By completing this order, I agree to all": "Ao concluir este pedido, concordo com todos", "Change language": "Mudar idioma", + "Order Note": "Nota de pedido", + "Save Note": "Salvar nota", + "Enter order note": "Insira a nota do pedido", + "Order note must be less than 100 characters": "A nota do pedido deve ter menos de 100 caracteres", "Select your language": "selecione sua lingua" } \ No newline at end of file diff --git a/LabelStoreMax/lang/th.json b/LabelStoreMax/lang/th.json index 2e26562..31fba1c 100644 --- a/LabelStoreMax/lang/th.json +++ b/LabelStoreMax/lang/th.json @@ -239,5 +239,9 @@ "Invalid email address": "ที่อยู่อีเมลที่ไม่ถูกต้อง", "By completing this order, I agree to all": "เมื่อดำเนินการตามคำสั่งซื้อนี้เสร็จสิ้น ฉันยอมรับทุกประการ", "Change language": "เปลี่ยนภาษา", + "Order Note": "หมายเหตุการสั่งซื้อ", + "Save Note": "บันทึกหมายเหตุ", + "Enter order note": "ป้อนบันทึกการสั่งซื้อ", + "Order note must be less than 100 characters": "หมายเหตุการสั่งซื้อต้องมีอักขระน้อยกว่า 100 ตัว", "Select your language": "เลือกภาษาของคุณ" } \ No newline at end of file diff --git a/LabelStoreMax/lang/tr.json b/LabelStoreMax/lang/tr.json index bbcdfd1..f7af9d9 100644 --- a/LabelStoreMax/lang/tr.json +++ b/LabelStoreMax/lang/tr.json @@ -239,5 +239,9 @@ "Invalid email address": "Geçersiz e-posta adresi", "By completing this order, I agree to all": "Bu siparişi tamamlayarak, tümünü kabul ediyorum", "Change language": "Dili değiştir", + "Order Note": "Sipariş Notu", + "Save Note": "Notu Kaydet", + "Enter order note": "Sipariş notunu girin", + "Order note must be less than 100 characters": "Sipariş notu 100 karakterden az olmalıdır", "Select your language": "Dilinizi seçiniz" } \ No newline at end of file diff --git a/LabelStoreMax/lang/zh.json b/LabelStoreMax/lang/zh.json index c93caba..1c8cf4f 100644 --- a/LabelStoreMax/lang/zh.json +++ b/LabelStoreMax/lang/zh.json @@ -239,5 +239,9 @@ "Invalid email address": "无效的邮件地址", "By completing this order, I agree to all": "通过完成此订单,我同意所有", "Change language": "改变语言", + "Order Note": "订单备注", + "Save Note": "保存备注", + "Enter order note": "输入订单备注", + "Order note must be less than 100 characters": "订单备注必须少于 100 个字符", "Select your language": "选择你的语言" } \ No newline at end of file diff --git a/LabelStoreMax/lib/app/models/checkout_session.dart b/LabelStoreMax/lib/app/models/checkout_session.dart index cca1ae3..b264694 100644 --- a/LabelStoreMax/lib/app/models/checkout_session.dart +++ b/LabelStoreMax/lib/app/models/checkout_session.dart @@ -31,6 +31,7 @@ class CheckoutSession { ShippingType? shippingType; PaymentType? paymentType; Coupon? coupon; + String? customerNote; void initSession() { billingDetails = BillingDetails(); diff --git a/LabelStoreMax/lib/bootstrap/data/order_wc.dart b/LabelStoreMax/lib/bootstrap/data/order_wc.dart index e7721c7..2d1a85e 100644 --- a/LabelStoreMax/lib/bootstrap/data/order_wc.dart +++ b/LabelStoreMax/lib/bootstrap/data/order_wc.dart @@ -126,5 +126,9 @@ Future buildOrderWC({TaxRate? taxRate, bool markPaid = true}) async { orderWC.couponLines!.add(couponLine); } + if (checkoutSession.customerNote != null && checkoutSession.customerNote!.isNotEmpty) { + orderWC.customerNote = checkoutSession.customerNote; + } + return orderWC; } diff --git a/LabelStoreMax/lib/config/payment_gateways.dart b/LabelStoreMax/lib/config/payment_gateways.dart index cfa73d1..f60144e 100644 --- a/LabelStoreMax/lib/config/payment_gateways.dart +++ b/LabelStoreMax/lib/config/payment_gateways.dart @@ -12,7 +12,7 @@ import 'package:nylo_framework/nylo_framework.dart'; | Docs here: https://woosignal.com/docs/app/label-storemax |-------------------------------------------------------------------------- */ -const appPaymentGateways = []; +const appPaymentGateways = ["CashOnDelivery"]; // Available: "Stripe", "CashOnDelivery", "PayPal", "RazorPay" // e.g. appPaymentGateways = ["Stripe", "CashOnDelivery"]; will only use Stripe and Cash on Delivery. diff --git a/LabelStoreMax/lib/resources/pages/checkout_confirmation_page.dart b/LabelStoreMax/lib/resources/pages/checkout_confirmation_page.dart index 09acfe3..c6b22b2 100644 --- a/LabelStoreMax/lib/resources/pages/checkout_confirmation_page.dart +++ b/LabelStoreMax/lib/resources/pages/checkout_confirmation_page.dart @@ -11,6 +11,7 @@ import 'package:collection/collection.dart' show IterableExtension; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; +import '/resources/widgets/checkout_customer_note_widget.dart'; import '/app/models/cart.dart'; import '/app/models/checkout_session.dart'; import '/app/models/customer_country.dart'; @@ -231,6 +232,7 @@ class CheckoutConfirmationPageState extends NyState { context: context, checkoutSession: checkoutSession, ), + CheckoutCustomerNote(checkoutSession: checkoutSession), Container( decoration: BoxDecoration( boxShadow: wsBoxShadow(), diff --git a/LabelStoreMax/lib/resources/widgets/checkout_customer_note_widget.dart b/LabelStoreMax/lib/resources/widgets/checkout_customer_note_widget.dart new file mode 100644 index 0000000..77ee58a --- /dev/null +++ b/LabelStoreMax/lib/resources/widgets/checkout_customer_note_widget.dart @@ -0,0 +1,110 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_app/app/models/checkout_session.dart'; +import 'package:flutter_app/resources/pages/checkout_confirmation_page.dart'; +import 'package:flutter_app/resources/widgets/buttons.dart'; +import 'package:nylo_framework/nylo_framework.dart'; + +class CheckoutCustomerNote extends StatelessWidget { + CheckoutCustomerNote({super.key, required this.checkoutSession}) { + textEditingController.text = checkoutSession.customerNote ?? ""; + } + + final CheckoutSession checkoutSession; + final TextEditingController textEditingController = TextEditingController(); + + @override + Widget build(BuildContext context) { + bool hasCustomerNote = checkoutSession.customerNote != null; + return Container( + height: 50, + width: double.infinity, + padding: EdgeInsets.symmetric(vertical: 5), + child: InkWell( + onTap: () => _actionCustomerNote(context), + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: Text( + hasCustomerNote + ? "${'Order Note'.tr()}: ${checkoutSession.customerNote ?? ""}" + : 'Order Note'.tr(), + style: Theme.of(context).textTheme.titleSmall, + overflow: TextOverflow.ellipsis, + maxLines: 2, + ), + ), + if (hasCustomerNote == true) + IconButton( + padding: EdgeInsets.symmetric(vertical: 3), + onPressed: _removeCustomerNote, + icon: Icon( + Icons.close, + size: 19, + )), + ], + ).paddingSymmetric(horizontal: 16), + ), + ); + } + + _actionCustomerNote(BuildContext context) { + // open modal to add customer note + showModalBottomSheet( + isScrollControlled: true, + context: context, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.only( + topLeft: Radius.circular(30.0), + topRight: Radius.circular(30.0), + ), + ), + builder: (BuildContext context) { + return SafeArea( + minimum: EdgeInsets.symmetric(horizontal: 16, vertical: 16), + child: Padding( + padding: MediaQuery.of(context).viewInsets, + child: Container( + child: Wrap( + spacing: 20, + children: [ + TextFormField( + autofocus: true, + maxLines: 3, + controller: textEditingController, + decoration: InputDecoration( + labelText: "Order Note".tr(), + hintText: "Enter order note".tr(), + ), + onChanged: (value) { + CheckoutSession.getInstance.customerNote = value; + }, + ), + Padding(padding: EdgeInsets.only(top: 16)), + PrimaryButton(title: "Save Note".tr(), action: () { + if (CheckoutSession.getInstance.customerNote == "") { + CheckoutSession.getInstance.customerNote = null; + } + bool isSuccessful = NyValidator.isSuccessful(rules: { + "Order Note".tr(): [CheckoutSession.getInstance.customerNote ?? "", "max:100"] + }); + if (isSuccessful == false) { + showToastNotification(context, title: "Error".tr(), description: "Order note must be less than 100 characters".tr(), style: ToastNotificationStyleType.DANGER, icon: Icons.error); + return; + } + StateAction.refreshPage(CheckoutConfirmationPage.path, setState: () {}); + Navigator.pop(context); + }), + ], + ),),), + ); + }, + ); + } + + _removeCustomerNote() { + CheckoutSession.getInstance.customerNote = null; + StateAction.refreshPage(CheckoutConfirmationPage.path, setState: () {}); + } +} diff --git a/LabelStoreMax/pubspec.lock b/LabelStoreMax/pubspec.lock index a91b271..bca172a 100644 --- a/LabelStoreMax/pubspec.lock +++ b/LabelStoreMax/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: transitive description: name: _flutterfire_internals - sha256: "0cb43f83f36ba8cb20502dee0c205e3f3aafb751732d724aeac3f2e044212cc2" + sha256: "99b5dec989287c1aca71bf27339e0022b4dc3679225f442fb75790ef44535bf8" url: "https://pub.dev" source: hosted - version: "1.3.29" + version: "1.3.30" analyzer: dependency: "direct main" description: @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.5.0" asn1lib: dependency: transitive description: @@ -189,10 +189,10 @@ packages: dependency: "direct main" description: name: cupertino_icons - sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 url: "https://pub.dev" source: hosted - version: "1.0.6" + version: "1.0.8" dart_console: dependency: transitive description: @@ -221,18 +221,18 @@ packages: dependency: transitive description: name: device_meta - sha256: "74ca44ae368cfcd52ace996b2d4941c0fe3249df630a59c8521a4f00d84d573b" + sha256: ca1a26f37e2e23f94586c6bd7838cb4090ea5a1233ebde3182ae2a332d49203d url: "https://pub.dev" source: hosted - version: "1.1.20" + version: "1.1.21" dio: dependency: transitive description: name: dio - sha256: "0978e9a3e45305a80a7210dbeaf79d6ee8bee33f70c8e542dc654c952070217f" + sha256: "11e40df547d418cc0c4900a9318b26304e665da6fa4755399a9ff9efd09034b5" url: "https://pub.dev" source: hosted - version: "5.4.2+1" + version: "5.4.3+1" encrypt: dependency: transitive description: @@ -285,10 +285,10 @@ packages: dependency: "direct main" description: name: firebase_core - sha256: a864d1b6afd25497a3b57b016886d1763df52baaa69758a46723164de8d187fe + sha256: "6b1152a5af3b1cfe7e45309e96fc1aa14873f410f7aadb3878aa7812acfa7531" url: "https://pub.dev" source: hosted - version: "2.29.0" + version: "2.30.0" firebase_core_platform_interface: dependency: transitive description: @@ -309,26 +309,26 @@ packages: dependency: "direct main" description: name: firebase_messaging - sha256: "87e3eda0ecdfeadb5fd1cf0dc5153aea5307a0cfca751c4b1ac97bfdd805660e" + sha256: d01e454837b1ce221791682051fd584e4827bdff5fdad3595708a917db01ad0a url: "https://pub.dev" source: hosted - version: "14.8.1" + version: "14.8.2" firebase_messaging_platform_interface: dependency: transitive description: name: firebase_messaging_platform_interface - sha256: "80b4ccf20066b0579ebc88d4678230a5f53ab282fe040e31671af745db1588f9" + sha256: e459eb4eb0aef67833843f474e8697e091086d71aa186253b93eb141eec3ee2f url: "https://pub.dev" source: hosted - version: "4.5.31" + version: "4.5.32" firebase_messaging_web: dependency: transitive description: name: firebase_messaging_web - sha256: "9224aa4db1ce6f08d96a82978453d37e9980204a20e410a11d9b774b24c6841c" + sha256: f0600d25c1c710338d568d200164fa791ce8d390d141d04408908615834a0db6 url: "https://pub.dev" source: hosted - version: "3.8.1" + version: "3.8.2" fixnum: dependency: transitive description: @@ -673,10 +673,10 @@ packages: dependency: "direct main" description: name: math_expressions - sha256: "3576593617c3870d75728a751f6ec6e606706d44e363f088ac394b5a28a98064" + sha256: db0b72d867491c4e53a1c773e2708d5d6e94bbe06be07080fc9f896766b9cd3d url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.5.0" meta: dependency: transitive description: @@ -697,18 +697,18 @@ packages: dependency: "direct main" description: name: nylo_framework - sha256: "730fa6d118e5af9837d261bab6282f2eb9d2d1b799a32530a73dd97e44449449" + sha256: c1fd3c9bf0be78e92ea30bd7e430d6e39b6f3c5f2f1c25860e2538ac885f434e url: "https://pub.dev" source: hosted - version: "5.25.1" + version: "5.25.5" nylo_support: dependency: transitive description: name: nylo_support - sha256: "9662d056297433385d570146b92f208e941d1fca795d5abc4f36dcacaf57bdd1" + sha256: "3a3083085eb8bd3c713d01ee5af8e7ba7c203c2b6907734e58ca2f8575ba437a" url: "https://pub.dev" source: hosted - version: "5.63.0" + version: "5.65.1" octo_image: dependency: transitive description: @@ -1166,10 +1166,10 @@ packages: dependency: transitive description: name: uuid - sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8 + sha256: "814e9e88f21a176ae1359149021870e87f7cddaf633ab678a5d2b0bff7fd1ba8" url: "https://pub.dev" source: hosted - version: "4.3.3" + version: "4.4.0" validated: dependency: "direct main" description: @@ -1230,18 +1230,18 @@ packages: dependency: "direct main" description: name: woosignal - sha256: "98a3e309a3cc2c3e1d6df0582ea3b942796167f4ec9d69fe1b9e50770353a4b8" + sha256: c84404e4fdd926aaa8d50bd70790ae2b5f0ca5dcb7eaacf12c3d96c9516a0c9a url: "https://pub.dev" source: hosted - version: "3.14.1" + version: "3.14.2" wp_json_api: dependency: "direct main" description: name: wp_json_api - sha256: "98cac815340395f052be85505f0a459538df87066d097e711c98537531c309c9" + sha256: "7aec1584fb59289f82442e2bf18dfb6b3aaf2c01e61965a48e30ce4ea9efcdf7" url: "https://pub.dev" source: hosted - version: "3.5.4" + version: "3.5.5" xdg_directories: dependency: transitive description: diff --git a/LabelStoreMax/pubspec.yaml b/LabelStoreMax/pubspec.yaml index 1b101bf..c066b2d 100644 --- a/LabelStoreMax/pubspec.yaml +++ b/LabelStoreMax/pubspec.yaml @@ -1,7 +1,7 @@ # Official WooSignal App Template for WooCommerce # Label StoreMax -# Version: 7.3.2 +# Version: 7.4.0 # Author: Anthony Gordon # Homepage: https://woosignal.com # Documentation: https://woosignal.com/docs/app/label-storemax @@ -29,9 +29,9 @@ dependencies: google_fonts: ^6.2.0 analyzer: ^5.12.0 intl: ^0.18.0 - nylo_framework: ^5.25.1 - woosignal: ^3.14.1 - wp_json_api: ^3.5.4 + nylo_framework: ^5.25.5 + woosignal: ^3.14.2 + wp_json_api: ^3.5.5 cached_network_image: ^3.3.1 package_info_plus: ^4.2.0 money_formatter: ^0.0.5 @@ -41,7 +41,7 @@ dependencies: url_launcher: ^6.2.6 bubble_tab_indicator: ^0.1.5 status_alert: ^1.0.1 - math_expressions: ^2.4.0 + math_expressions: ^2.5.0 validated: ^2.0.0 flutter_spinkit: ^5.2.1 auto_size_text: ^3.0.0 @@ -50,14 +50,14 @@ dependencies: flutter_rating_bar: ^4.0.1 flutter_staggered_grid_view: ^0.7.0 flutter_swiper_view: ^1.1.8 - firebase_messaging: ^14.8.1 - firebase_core: ^2.29.0 + firebase_messaging: ^14.8.2 + firebase_core: ^2.30.0 flutter: sdk: flutter flutter_localizations: sdk: flutter - cupertino_icons: ^1.0.6 + cupertino_icons: ^1.0.8 collection: ^1.17.1 flutter_stripe: ^10.1.1 razorpay_flutter: ^1.3.6