Compare commits
10 commits
b20bcb17a4
...
d130aef56c
| Author | SHA1 | Date | |
|---|---|---|---|
| d130aef56c | |||
| a2117b926f | |||
| 70c66bf7c1 | |||
| 32fc3f51fe | |||
| cea8af232d | |||
| 64516a7df2 | |||
| d3f708ae5e | |||
| 2ee73a61f4 | |||
| af3194db03 | |||
| 349358de6c |
14 changed files with 198 additions and 106 deletions
2
.fvmrc
2
.fvmrc
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"flutter": "3.29.3",
|
||||
"flutter": "3.32.0",
|
||||
"runPubGetOnSdkChanges": true,
|
||||
"updateVscodeSettings": true,
|
||||
"updateGitIgnore": true
|
||||
|
|
|
|||
20
.vscode/launch.json
vendored
20
.vscode/launch.json
vendored
|
|
@ -4,17 +4,23 @@
|
|||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
// {
|
||||
// "name": "run app",
|
||||
// "request": "launch",
|
||||
// "type": "dart"
|
||||
// },
|
||||
{
|
||||
"name": "run app",
|
||||
"request": "launch",
|
||||
"type": "dart"
|
||||
"type": "node-terminal",
|
||||
"command": "fvm flutter run",
|
||||
},
|
||||
{
|
||||
"name": "run without impeller",
|
||||
"request": "launch",
|
||||
"type": "node-terminal",
|
||||
"command": "fvm flutter run --no-enable-impeller",
|
||||
},
|
||||
// {
|
||||
// "name": "pharmacy_mobile",
|
||||
// "request": "launch",
|
||||
// "type": "node-terminal",
|
||||
// "command": "fvm flutter run --no-enable-impeller",
|
||||
// },
|
||||
{
|
||||
"name": "build apk",
|
||||
"request": "launch",
|
||||
|
|
|
|||
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
|
|
@ -1,3 +1,3 @@
|
|||
{
|
||||
"dart.flutterSdkPath": ".fvm/versions/3.29.3"
|
||||
"dart.flutterSdkPath": ".fvm/versions/3.32.0"
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:gap/gap.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/categorylist/functions/cache_setcategorylist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_categories.dart';
|
||||
import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
|
||||
|
|
@ -23,8 +24,19 @@ class _AddCategoryPageState extends State<AddCategoryPage> {
|
|||
final _formKey = GlobalKey<FormState>();
|
||||
final _categoryController = TextEditingController();
|
||||
final _refCategories = RefCategories();
|
||||
|
||||
bool _isLoading = false;
|
||||
|
||||
Future<void> _getCategoryListCache() async {
|
||||
final categoryList = await _refCategories.getList();
|
||||
|
||||
if (categoryList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetCategoryList(context, categoryList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _saveCategory() async {
|
||||
setState(() => _isLoading = true);
|
||||
|
||||
|
|
@ -40,6 +52,7 @@ class _AddCategoryPageState extends State<AddCategoryPage> {
|
|||
final post = await _refCategories.postCategory(_categoryController.text.toUpperCase());
|
||||
|
||||
if (post && mounted) {
|
||||
_getCategoryListCache();
|
||||
showNotification(context, 'Category saved', true);
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:gap/gap.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/distributorlist/functions/cache_setdistributorlist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_distributors.dart';
|
||||
import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
|
||||
|
|
@ -23,25 +24,36 @@ class _AddDistributorPageState extends State<AddDistributorPage> {
|
|||
final _formKey = GlobalKey<FormState>();
|
||||
final _nameController = TextEditingController();
|
||||
final _addressController = TextEditingController();
|
||||
final _refdistributors = RefDistributors();
|
||||
final _refDistributors = RefDistributors();
|
||||
|
||||
late bool _isLoading = false;
|
||||
|
||||
Future<void> _getDistributorListCache() async {
|
||||
final distributorList = await _refDistributors.getList();
|
||||
|
||||
if (distributorList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetDistributorList(context, distributorList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _saveDistributor() async {
|
||||
setState(() => _isLoading = true);
|
||||
|
||||
try {
|
||||
if (await InternetConnectionChecker.instance.hasConnection) {
|
||||
final existing = await checkExisting(_refdistributors, _nameController);
|
||||
final existing = await checkExisting(_refDistributors, _nameController);
|
||||
|
||||
if (existing && mounted) {
|
||||
showNotification(context, 'Distributor already listed', false);
|
||||
return;
|
||||
}
|
||||
|
||||
final post = await _refdistributors.postDistributor(_nameController.text, _addressController.text);
|
||||
final post = await _refDistributors.postDistributor(_nameController.text, _addressController.text);
|
||||
|
||||
if (post && mounted) {
|
||||
_getDistributorListCache();
|
||||
showNotification(context, 'Distributor added to list', true);
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ import 'package:gap/gap.dart';
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/categorylist/functions/cache_getcategorylist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/genericlist/functions/cache_setgenericlist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_categories.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_generic_names.dart';
|
||||
|
|
@ -36,6 +37,16 @@ class _AddGenericsPageState extends State<AddGenericsPage> {
|
|||
late String _selectedCategory = '';
|
||||
late String _categoryUUID = '';
|
||||
|
||||
Future<void> _getGenericListCache() async {
|
||||
final genericNameList = await _refGenericNames.getList();
|
||||
|
||||
if (genericNameList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetGenericList(context, genericNameList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _getList() async {
|
||||
_categoryList = await _refCategories.getList();
|
||||
|
||||
|
|
@ -94,6 +105,7 @@ class _AddGenericsPageState extends State<AddGenericsPage> {
|
|||
final existing = await checkExisting(_refGenericNames, _nameController);
|
||||
|
||||
if (existing && mounted) {
|
||||
_getGenericListCache();
|
||||
showNotification(context, 'Generic Name already existing', false);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:gap/gap.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/manufacturerlist/functions/cache_setmanufacturerlist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_manufacturers.dart';
|
||||
import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
|
||||
|
|
@ -27,6 +28,16 @@ class _AddManufacturerPageState extends State<AddManufacturerPage> {
|
|||
|
||||
late bool _isLoading = false;
|
||||
|
||||
Future<void> _getManufacturerListCache() async {
|
||||
final manufacturerList = await _refManufacturers.getList();
|
||||
|
||||
if (manufacturerList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetManufacturerList(context, manufacturerList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _saveManufacturer() async {
|
||||
setState(() => _isLoading = true);
|
||||
|
||||
|
|
@ -42,6 +53,7 @@ class _AddManufacturerPageState extends State<AddManufacturerPage> {
|
|||
final post = await _refManufacturers.postManufacturer(_nameController.text, _addressController.text);
|
||||
|
||||
if (post && mounted) {
|
||||
_getManufacturerListCache();
|
||||
showNotification(context, 'Manufacturer added to list', true);
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import 'package:internet_connection_checker/internet_connection_checker.dart';
|
|||
import 'package:pharmacy_mobile/blocs/caches/distributorlist/functions/cache_getdistributorlist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/genericlist/functions/cache_getgenericlist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/manufacturerlist/functions/cache_getmanufacturerlist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/medicinelist/functions/cache_setmedicinelist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/supplierlist/functions/cache_getsupplierlist.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/typelist/functions/cache_gettypelist.dart';
|
||||
import 'package:pharmacy_mobile/functions/barcode_scan_function.dart';
|
||||
|
|
@ -70,6 +71,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
late bool imageUploaded = false;
|
||||
late String imageUrl = '';
|
||||
late bool uploaded = false;
|
||||
late String imageUUID = '';
|
||||
|
||||
Future<void> _getGenerics() async {
|
||||
_genericNameList = await _refGenericNames.getList();
|
||||
|
|
@ -167,6 +169,16 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
}
|
||||
}
|
||||
|
||||
Future<void> _getMedicineListCache() async {
|
||||
final medicineList = await _refMedicines.getList();
|
||||
|
||||
if (medicineList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetMedicineList(context, medicineList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void autoRun() async {
|
||||
final generics = await _getGenericsCache();
|
||||
final types = await _getTypesCache();
|
||||
|
|
@ -174,12 +186,6 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
final distributors = await _getDistributorsCache();
|
||||
final suppliers = await _getSuppliersCache();
|
||||
|
||||
print('generics: $generics');
|
||||
print('types: $types');
|
||||
print('manufacturers: $manufacturers');
|
||||
print('distributors: $distributors');
|
||||
print('suppliers: $suppliers');
|
||||
|
||||
if (!generics || !types || !manufacturers || !distributors || !suppliers) {
|
||||
if (await InternetConnectionChecker.instance.hasConnection) {
|
||||
await _getGenerics();
|
||||
|
|
@ -268,6 +274,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
try {
|
||||
// final String encrpytedBarcode = await encrypt(_barcodeController.text);
|
||||
final String encrpytedBarcode = _barcodeController.text;
|
||||
uuid = Uuid().v4();
|
||||
|
||||
if (await InternetConnectionChecker.instance.hasConnection) {
|
||||
final medName = _nameController.text;
|
||||
|
|
@ -277,10 +284,16 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
final medDistributorUUID = await _refDistributors.getUUID(_selectedDistributor);
|
||||
final medSupplierUUID = await _refSuppliers.getUUID(_selectedSupplier);
|
||||
|
||||
if (imageUUID.isEmpty) {
|
||||
imageUUID = '73105ee3-74bd-40ea-9434-f8176a980b43';
|
||||
}
|
||||
|
||||
final posted = await _refMedicines.postMedicine(uuid, medName, medManufacturerUUID, medGenericUUID, medTypeUUID,
|
||||
encrpytedBarcode, medDistributorUUID, medSupplierUUID);
|
||||
encrpytedBarcode, medDistributorUUID, medSupplierUUID, imageUUID);
|
||||
|
||||
if (posted) {
|
||||
_getMedicineListCache();
|
||||
|
||||
if (mounted) {
|
||||
showNotification(context, 'Medicine Added Successfully', true);
|
||||
setState(() => _isLoading = false);
|
||||
|
|
@ -315,7 +328,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
final imageBytes = await image!.readAsBytes();
|
||||
final webpImage = await _webpConvert(imageBytes);
|
||||
|
||||
uuid = imageName;
|
||||
imageUUID = imageName;
|
||||
|
||||
if (mounted) {
|
||||
uploaded = await _storage.uploadImage(context, storageName, webpImage, '$imageName.webp');
|
||||
|
|
@ -466,7 +479,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
|
|||
// const Center(child: CircularProgressIndicator(color: Colors.white))
|
||||
// else
|
||||
// ButtonWidget(text: 'Save Medicine', onPressed: _saveMedicine)
|
||||
if (uploaded)
|
||||
// if (uploaded)
|
||||
ButtonWithProgressWidget(
|
||||
trigger: _isLoading,
|
||||
progressText: 'Adding Medicine',
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:gap/gap.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/supplierlist/functions/cache_setsupplierlist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_suppliers.dart';
|
||||
import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
|
||||
|
|
@ -22,26 +23,36 @@ class AddSupplierPage extends StatefulWidget {
|
|||
class _AddSupplierPageState extends State<AddSupplierPage> {
|
||||
final _formKey = GlobalKey<FormState>();
|
||||
final _nameController = TextEditingController();
|
||||
final _refsuppliers = RefSuppliers();
|
||||
final _refSuppliers = RefSuppliers();
|
||||
|
||||
late bool _isLoading = false;
|
||||
|
||||
Future<void> _getSupplierListCache() async {
|
||||
final supplierList = await _refSuppliers.getList();
|
||||
|
||||
if (supplierList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetSupplierList(context, supplierList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _saveSupplier() async {
|
||||
setState(() => _isLoading = true);
|
||||
|
||||
try {
|
||||
if (await InternetConnectionChecker.instance.hasConnection) {
|
||||
final existing = await checkExisting(_refsuppliers, _nameController);
|
||||
final existing = await checkExisting(_refSuppliers, _nameController);
|
||||
|
||||
if (existing && mounted) {
|
||||
showNotification(context, 'Supplier already listed', false);
|
||||
return;
|
||||
}
|
||||
|
||||
final post = await _refsuppliers.postSupplier(_nameController.text);
|
||||
print('post: $post');
|
||||
final post = await _refSuppliers.postSupplier(_nameController.text);
|
||||
|
||||
if (post && mounted) {
|
||||
_getSupplierListCache();
|
||||
showNotification(context, 'Supplier added to list', true);
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import 'package:gap/gap.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:internet_connection_checker/internet_connection_checker.dart';
|
||||
import 'package:pharmacy_mobile/blocs/caches/typelist/functions/cache_settypelist.dart';
|
||||
import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
|
||||
import 'package:pharmacy_mobile/tables/ref_types.dart';
|
||||
import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
|
||||
|
|
@ -26,6 +27,16 @@ class _AddTypePageState extends State<AddTypePage> {
|
|||
|
||||
bool _isLoading = false;
|
||||
|
||||
Future<void> _getTypeListCache() async {
|
||||
final typeList = await _refTypes.getList();
|
||||
|
||||
if (typeList.isNotEmpty) {
|
||||
// ignore: use_build_context_synchronously
|
||||
final setCache = await cacheSetTypeList(context, typeList);
|
||||
if (!setCache) {}
|
||||
}
|
||||
}
|
||||
|
||||
void _saveType() async {
|
||||
setState(() => _isLoading = true);
|
||||
try {
|
||||
|
|
@ -40,6 +51,7 @@ class _AddTypePageState extends State<AddTypePage> {
|
|||
final post = await _refTypes.postType(_typeController.text);
|
||||
|
||||
if (post && mounted) {
|
||||
_getTypeListCache();
|
||||
showNotification(context, 'Medicine type saved', true);
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ class RefMedicines {
|
|||
}
|
||||
|
||||
Future<bool> postMedicine(String uuid, String name, String muuid, String guuid, String tuuid, String barcode,
|
||||
String distributor, String supplier) async {
|
||||
String distributor, String supplier, String imageuuid) async {
|
||||
final medicine = {
|
||||
'ref_medicines_uuid': uuid,
|
||||
'medicine_name': name,
|
||||
|
|
@ -96,7 +96,8 @@ class RefMedicines {
|
|||
'ref_types_uuid': tuuid,
|
||||
'barcode': barcode,
|
||||
'ref_distributors_uuid': distributor,
|
||||
'ref_suppliers_uuid': supplier
|
||||
'ref_suppliers_uuid': supplier,
|
||||
'ref_medicines_images': imageuuid
|
||||
};
|
||||
|
||||
try {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ class GlossyContainerWidget extends StatelessWidget {
|
|||
width: MediaQuery.of(context).size.width,
|
||||
borderRadius: const BorderRadius.all(Radius.circular(16)),
|
||||
color: const Color.fromRGBO(20, 13, 22, 1),
|
||||
border: Border.all(width: 0, color: const Color.fromRGBO(216, 176, 219, 1)),
|
||||
border: Border.all(width: 0, color: const Color.fromARGB(69, 0, 0, 0)),
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: const Color.fromRGBO(78, 45, 79, 0.4),
|
||||
|
|
|
|||
|
|
@ -13,9 +13,9 @@ class WarningWidget extends StatelessWidget {
|
|||
children: [
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: const Color.fromARGB(102, 121, 15, 5),
|
||||
color: const Color.fromRGBO(121, 15, 5, 0.4),
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
border: Border.all(width: 2, color: const Color.fromARGB(255, 42, 2, 2))),
|
||||
border: Border.all(width: 2, color: const Color.fromRGBO(42, 2, 2, 1))),
|
||||
// width: 200,
|
||||
// height: 100,
|
||||
padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 16),
|
||||
|
|
|
|||
142
pubspec.lock
142
pubspec.lock
|
|
@ -45,10 +45,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: archive
|
||||
sha256: "7dcbd0f87fe5f61cb28da39a1a8b70dbc106e2fe0516f7836eb7bb2948481a12"
|
||||
sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.5"
|
||||
version: "4.0.7"
|
||||
args:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -61,10 +61,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: async
|
||||
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
|
||||
sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.12.0"
|
||||
version: "2.13.0"
|
||||
bloc:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -93,10 +93,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: checked_yaml
|
||||
sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff
|
||||
sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.3"
|
||||
version: "2.0.4"
|
||||
cli_util:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -125,10 +125,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: connectivity_plus
|
||||
sha256: "04bf81bb0b77de31557b58d052b24b3eee33f09a6e7a8c68a3e247c7df19ec27"
|
||||
sha256: "051849e2bd7c7b3bc5844ea0d096609ddc3a859890ec3a9ac4a65a2620cc1f99"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.1.3"
|
||||
version: "6.1.4"
|
||||
connectivity_plus_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -189,10 +189,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: fake_async
|
||||
sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
|
||||
sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.2"
|
||||
version: "1.3.3"
|
||||
ffi:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -221,10 +221,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: file_selector_macos
|
||||
sha256: "271ab9986df0c135d45c3cdb6bd0faa5db6f4976d3e4b437cf7d0f258d941bfc"
|
||||
sha256: "8c9250b2bd2d8d4268e39c82543bacbaca0fda7d29e0728c3c4bbb7c820fd711"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.9.4+2"
|
||||
version: "0.9.4+3"
|
||||
file_selector_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -258,10 +258,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_bloc
|
||||
sha256: "1046d719fbdf230330d3443187cc33cc11963d15c9089f6cc56faa42a4c5f0cc"
|
||||
sha256: cf51747952201a455a1c840f8171d273be009b932c75093020f9af64f2123e38
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "9.1.0"
|
||||
version: "9.1.1"
|
||||
flutter_dotenv:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -322,10 +322,10 @@ packages:
|
|||
dependency: "direct dev"
|
||||
description:
|
||||
name: flutter_launcher_icons
|
||||
sha256: bfa04787c85d80ecb3f8777bde5fc10c3de809240c48fa061a2c2bf15ea5211c
|
||||
sha256: "10f13781741a2e3972126fae08393d3c4e01fa4cd7473326b94b72cf594195e7"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.14.3"
|
||||
version: "0.14.4"
|
||||
flutter_lints:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
|
@ -338,18 +338,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: flutter_plugin_android_lifecycle
|
||||
sha256: "5a1e6fb2c0561958d7e4c33574674bda7b77caaca7a33b758876956f2902eea3"
|
||||
sha256: f948e346c12f8d5480d2825e03de228d0eb8c3a737e4cdaa122267b89c022b5e
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.27"
|
||||
version: "2.0.28"
|
||||
flutter_svg:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: flutter_svg
|
||||
sha256: c200fd79c918a40c5cd50ea0877fa13f81bdaf6f0a5d3dbcc2a13e3285d6aa1b
|
||||
sha256: cd57f7969b4679317c17af6fd16ee233c1e60a82ed209d8a475c54fd6fd6f845
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.17"
|
||||
version: "2.2.0"
|
||||
flutter_test:
|
||||
dependency: "direct dev"
|
||||
description: flutter
|
||||
|
|
@ -372,10 +372,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: functions_client
|
||||
sha256: a49876ebae32a50eb62483c5c5ac80ed0d8da34f98ccc23986b03a8d28cee07c
|
||||
sha256: "91bd57c5ee843957bfee68fdcd7a2e8b3c1081d448e945d33ff695fb9c2a686c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.1"
|
||||
version: "2.4.3"
|
||||
gap:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -404,10 +404,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: gotrue
|
||||
sha256: d6362dff9a54f8c1c372bb137c858b4024c16407324d34e6473e59623c9b9f50
|
||||
sha256: "941694654ab659990547798569771d8d092f2ade84a72e75bb9bbca249f3d3b1"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.11.1"
|
||||
version: "2.13.0"
|
||||
gtk:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -420,10 +420,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http
|
||||
sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f
|
||||
sha256: "2c11f3f94c687ee9bad77c171151672986360b2b001d109814ee7140b2cf261b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.0"
|
||||
version: "1.4.0"
|
||||
http_parser:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -452,10 +452,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: image_picker_android
|
||||
sha256: "8bd392ba8b0c8957a157ae0dc9fcf48c58e6c20908d5880aea1d79734df090e9"
|
||||
sha256: "317a5d961cec5b34e777b9252393f2afbd23084aa6e60fcf601dcf6341b9ebeb"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.8.12+22"
|
||||
version: "0.8.12+23"
|
||||
image_picker_for_web:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -556,10 +556,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker
|
||||
sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
|
||||
sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "10.0.8"
|
||||
version: "10.0.9"
|
||||
leak_tracker_flutter_testing:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -676,10 +676,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: path_provider_android
|
||||
sha256: "0ca7359dad67fd7063cb2892ab0c0737b2daafd807cf1acecd62374c8fae6c12"
|
||||
sha256: d0d310befe2c8ab9e7f393288ccbb11b60c019c6b5afc21973eeee4dda2b35e9
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.2.16"
|
||||
version: "2.2.17"
|
||||
path_provider_foundation:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -732,10 +732,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: permission_handler_apple
|
||||
sha256: f84a188e79a35c687c132a0a0556c254747a08561e99ab933f12f6ca71ef3c98
|
||||
sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "9.4.6"
|
||||
version: "9.4.7"
|
||||
permission_handler_html:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -788,26 +788,26 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: posix
|
||||
sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a
|
||||
sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.0.1"
|
||||
version: "6.0.3"
|
||||
postgrest:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: postgrest
|
||||
sha256: b74dc0f57b5dca5ce9f57a54b08110bf41d6fc8a0483c0fec10c79e9aa0fb2bb
|
||||
sha256: "10b81a23b1c829ccadf68c626b4d66666453a1474d24c563f313f5ca7851d575"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.1"
|
||||
version: "2.4.2"
|
||||
provider:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: provider
|
||||
sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c
|
||||
sha256: "4abbd070a04e9ddc287673bf5a030c7ca8b685ff70218720abab8b092f53dd84"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.1.2"
|
||||
version: "6.1.5"
|
||||
pull_to_refresh:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -820,10 +820,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: realtime_client
|
||||
sha256: e3089dac2121917cc0c72d42ab056fea0abbaf3c2229048fc50e64bafc731adf
|
||||
sha256: b6a825a4c80f2281ebfbbcf436a8979ae9993d4a30dbcf011b7d2b82ddde9edd
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.2"
|
||||
version: "2.5.1"
|
||||
redacted:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -852,18 +852,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shared_preferences
|
||||
sha256: "846849e3e9b68f3ef4b60c60cf4b3e02e9321bc7f4d8c4692cf87ffa82fc8a3a"
|
||||
sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.5.2"
|
||||
version: "2.5.3"
|
||||
shared_preferences_android:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shared_preferences_android
|
||||
sha256: "3ec7210872c4ba945e3244982918e502fa2bfb5230dff6832459ca0e1879b7ad"
|
||||
sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.8"
|
||||
version: "2.4.10"
|
||||
shared_preferences_foundation:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -945,10 +945,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: storage_client
|
||||
sha256: "9f9ed283943313b23a1b27139bb18986e9b152a6d34530232c702c468d98e91a"
|
||||
sha256: "09bac4d75eea58e8113ca928e6655a09cc8059e6d1b472ee801f01fde815bcfc"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.3.1"
|
||||
version: "2.4.0"
|
||||
stream_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -969,18 +969,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: supabase
|
||||
sha256: c3ebddba69ddcf16d8b78e8c44c4538b0193d1cf944fde3b72eb5b279892a370
|
||||
sha256: "56c3493114caac8ef0dc3cac5fa24a9edefeb8c22d45794814c0fe3d2feb1a98"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.6.3"
|
||||
version: "2.8.0"
|
||||
supabase_flutter:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: supabase_flutter
|
||||
sha256: "3b5b5b492e342f63f301605d0c66f6528add285b5744f53c9fd9abd5ffdbce5b"
|
||||
sha256: "66b8d0a7a31f45955b11ad7b65347abc61b31e10f8bdfa4428501b81f5b30fa5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.8.4"
|
||||
version: "2.9.1"
|
||||
term_glyph:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1017,18 +1017,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: url_launcher_android
|
||||
sha256: "1d0eae19bd7606ef60fe69ef3b312a437a16549476c42321d5dc1506c9ca3bf4"
|
||||
sha256: "8582d7f6fe14d2652b4c45c9b6c14c0b678c2af2d083a11b604caeba51930d79"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.3.15"
|
||||
version: "6.3.16"
|
||||
url_launcher_ios:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: url_launcher_ios
|
||||
sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
|
||||
sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.3.2"
|
||||
version: "6.3.3"
|
||||
url_launcher_linux:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1057,10 +1057,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: url_launcher_web
|
||||
sha256: "3ba963161bd0fe395917ba881d320b9c4f6dd3c4a233da62ab18a5025c85f1e9"
|
||||
sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.0"
|
||||
version: "2.4.1"
|
||||
url_launcher_windows:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1081,10 +1081,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: vector_graphics
|
||||
sha256: "44cc7104ff32563122a929e4620cf3efd584194eec6d1d913eb5ba593dbcf6de"
|
||||
sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.18"
|
||||
version: "1.1.19"
|
||||
vector_graphics_codec:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1097,10 +1097,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: vector_graphics_compiler
|
||||
sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad"
|
||||
sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.16"
|
||||
version: "1.1.17"
|
||||
vector_math:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1113,10 +1113,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: vm_service
|
||||
sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
|
||||
sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "14.3.1"
|
||||
version: "15.0.0"
|
||||
web:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1129,18 +1129,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: web_socket
|
||||
sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83"
|
||||
sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.1.6"
|
||||
version: "1.0.1"
|
||||
web_socket_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: web_socket_channel
|
||||
sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5"
|
||||
sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.2"
|
||||
version: "3.0.3"
|
||||
webview_windows:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1177,10 +1177,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: yet_another_json_isolate
|
||||
sha256: "56155e9e0002cc51ea7112857bbcdc714d4c35e176d43e4d3ee233009ff410c9"
|
||||
sha256: fe45897501fa156ccefbfb9359c9462ce5dec092f05e8a56109db30be864f01e
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.3"
|
||||
version: "2.1.0"
|
||||
sdks:
|
||||
dart: ">=3.7.0 <4.0.0"
|
||||
dart: ">=3.8.0 <4.0.0"
|
||||
flutter: ">=3.27.0"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue