Merge pull request #87 from yaso-meth/NEW--business-calendar
NEW--business-calendar
This commit is contained in:
@@ -3,6 +3,8 @@ import 'dart:convert';
|
|||||||
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/app_user.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/app_user.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
||||||
|
import 'package:Mzansi_Innovation_Hub/mih_objects/arguments.dart';
|
||||||
|
import 'package:Mzansi_Innovation_Hub/mih_objects/business.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
// import '../mih_components/mih_pop_up_messages/mih_error_message.dart';
|
// import '../mih_components/mih_pop_up_messages/mih_error_message.dart';
|
||||||
// import '../mih_components/mih_pop_up_messages/mih_success_message.dart';
|
// import '../mih_components/mih_pop_up_messages/mih_success_message.dart';
|
||||||
@@ -54,7 +56,41 @@ class MihMzansiCalendarApis {
|
|||||||
//print(patientQueue);
|
//print(patientQueue);
|
||||||
return personalAppointments;
|
return personalAppointments;
|
||||||
} else {
|
} else {
|
||||||
throw Exception('failed to fatch loyalty cards');
|
throw Exception('failed to fatch personal appointments');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// This function is used to fetch a list of appointment for a personal user.
|
||||||
|
///
|
||||||
|
/// Patameters:
|
||||||
|
/// app_id,
|
||||||
|
/// date (yyyy-mm-dd),
|
||||||
|
///
|
||||||
|
/// Returns Future<List<Appointment>>.
|
||||||
|
static Future<List<Appointment>> getBusinessAppointments(
|
||||||
|
String business_id,
|
||||||
|
String date,
|
||||||
|
) async {
|
||||||
|
//print("Patien manager page: $endpoint");
|
||||||
|
final response = await http.get(Uri.parse(
|
||||||
|
"${AppEnviroment.baseApiUrl}/appointments/business/$business_id?date=$date"));
|
||||||
|
// print("Here");
|
||||||
|
// print("Body: ${response.body}");
|
||||||
|
// print("Code: ${response.statusCode}");
|
||||||
|
// errorCode = response.statusCode.toString();
|
||||||
|
// errorBody = response.body;
|
||||||
|
|
||||||
|
if (response.statusCode == 200) {
|
||||||
|
//print("Here1");
|
||||||
|
Iterable l = jsonDecode(response.body);
|
||||||
|
//print("Here2");
|
||||||
|
List<Appointment> businessAppointments =
|
||||||
|
List<Appointment>.from(l.map((model) => Appointment.fromJson(model)));
|
||||||
|
//print("Here3");
|
||||||
|
//print(patientQueue);
|
||||||
|
return businessAppointments;
|
||||||
|
} else {
|
||||||
|
throw Exception('failed to fatch business appointments');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -109,7 +145,6 @@ class MihMzansiCalendarApis {
|
|||||||
/// Returns VOID (TRIGGERS SUCCESS pop up)
|
/// Returns VOID (TRIGGERS SUCCESS pop up)
|
||||||
static Future<void> addPersonalAppointment(
|
static Future<void> addPersonalAppointment(
|
||||||
AppUser signedInUser,
|
AppUser signedInUser,
|
||||||
String app_id,
|
|
||||||
String title,
|
String title,
|
||||||
String description,
|
String description,
|
||||||
String date,
|
String date,
|
||||||
@@ -123,7 +158,7 @@ class MihMzansiCalendarApis {
|
|||||||
"Content-Type": "application/json; charset=UTF-8"
|
"Content-Type": "application/json; charset=UTF-8"
|
||||||
},
|
},
|
||||||
body: jsonEncode(<String, dynamic>{
|
body: jsonEncode(<String, dynamic>{
|
||||||
"app_id": app_id,
|
"app_id": signedInUser.app_id,
|
||||||
"business_id": "",
|
"business_id": "",
|
||||||
"title": title,
|
"title": title,
|
||||||
"description": description,
|
"description": description,
|
||||||
@@ -141,7 +176,70 @@ class MihMzansiCalendarApis {
|
|||||||
// Navigator.pop(context);
|
// Navigator.pop(context);
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
'/calendar',
|
'/calendar',
|
||||||
arguments: signedInUser,
|
arguments: CalendarArguments(
|
||||||
|
signedInUser,
|
||||||
|
true,
|
||||||
|
null,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
successPopUp(message, context);
|
||||||
|
} else {
|
||||||
|
Navigator.pop(context);
|
||||||
|
internetConnectionPopUp(context);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// This function is used to add an appointment to users mzansi Calendar.
|
||||||
|
///
|
||||||
|
/// Patameters:-
|
||||||
|
/// AppUser signedInUser,
|
||||||
|
/// String app_id,
|
||||||
|
/// String title,
|
||||||
|
/// String description,
|
||||||
|
/// String date,
|
||||||
|
/// String time,
|
||||||
|
/// BuildContext context,
|
||||||
|
///
|
||||||
|
/// Returns VOID (TRIGGERS SUCCESS pop up)
|
||||||
|
static Future<void> addBusinessAppointment(
|
||||||
|
AppUser signedInUser,
|
||||||
|
Business business,
|
||||||
|
String title,
|
||||||
|
String description,
|
||||||
|
String date,
|
||||||
|
String time,
|
||||||
|
BuildContext context,
|
||||||
|
) async {
|
||||||
|
loadingPopUp(context);
|
||||||
|
var response = await http.post(
|
||||||
|
Uri.parse("${AppEnviroment.baseApiUrl}/appointment/insert/"),
|
||||||
|
headers: <String, String>{
|
||||||
|
"Content-Type": "application/json; charset=UTF-8"
|
||||||
|
},
|
||||||
|
body: jsonEncode(<String, dynamic>{
|
||||||
|
"app_id": "",
|
||||||
|
"business_id": business.business_id,
|
||||||
|
"title": title,
|
||||||
|
"description": description,
|
||||||
|
"date": date,
|
||||||
|
"time": time,
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
if (response.statusCode == 201) {
|
||||||
|
Navigator.pop(context);
|
||||||
|
Navigator.pop(context);
|
||||||
|
Navigator.pop(context);
|
||||||
|
String message =
|
||||||
|
"Your appointment \"$title\" for the $date $title has been deleted.";
|
||||||
|
|
||||||
|
// Navigator.pop(context);
|
||||||
|
Navigator.of(context).pushNamed(
|
||||||
|
'/calendar',
|
||||||
|
arguments: CalendarArguments(
|
||||||
|
signedInUser,
|
||||||
|
false,
|
||||||
|
business,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
successPopUp(message, context);
|
successPopUp(message, context);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -15,13 +15,13 @@ abstract class AppEnviroment {
|
|||||||
case Enviroment.dev:
|
case Enviroment.dev:
|
||||||
{
|
{
|
||||||
//================= Android Dev Urls =================
|
//================= Android Dev Urls =================
|
||||||
baseApiUrl = "http://10.0.2.2:8080";
|
// baseApiUrl = "http://10.0.2.2:8080";
|
||||||
baseFileUrl = "http://10.0.2.2:9000";
|
// baseFileUrl = "http://10.0.2.2:9000";
|
||||||
baseAiUrl = "http://10.0.2.2:11434";
|
// baseAiUrl = "http://10.0.2.2:11434";
|
||||||
//================= Web Dev Urls =================
|
//================= Web Dev Urls =================
|
||||||
// baseApiUrl = "http://localhost:8080";
|
baseApiUrl = "http://localhost:8080";
|
||||||
// baseFileUrl = "http://localhost:9000";
|
baseFileUrl = "http://localhost:9000";
|
||||||
// baseAiUrl = "http://localhost:11434";
|
baseAiUrl = "http://localhost:11434";
|
||||||
whatsappAccessToken =
|
whatsappAccessToken =
|
||||||
"EAAPINXuNFdYBOzBjTcvZA2iPXEHbHRF9uNXyP3ihkPRUcBqKNru5g9NKRRKkFaiaITEzO3BMo6CjdUmlDH4qYTW2mzDrZB4Q21ZCEZBgECZCu27vfaOXJZCYQLNxwoXkrZBRYv8ZAP37f69r3z9JxLQxdxn9gwqA3oNZAlBBRapJQzxOr6pZBTdI3bbjbu17ZBIwRcF4JCqPDCNLEZCI3bmHwEd2i2niNMYZD";
|
"EAAPINXuNFdYBOzBjTcvZA2iPXEHbHRF9uNXyP3ihkPRUcBqKNru5g9NKRRKkFaiaITEzO3BMo6CjdUmlDH4qYTW2mzDrZB4Q21ZCEZBgECZCu27vfaOXJZCYQLNxwoXkrZBRYv8ZAP37f69r3z9JxLQxdxn9gwqA3oNZAlBBRapJQzxOr6pZBTdI3bbjbu17ZBIwRcF4JCqPDCNLEZCI3bmHwEd2i2niNMYZD";
|
||||||
//fingerPrintPluginKey = 'h5X7a5j14iUZCobI1ZeX';
|
//fingerPrintPluginKey = 'h5X7a5j14iUZCobI1ZeX';
|
||||||
|
|||||||
@@ -173,9 +173,11 @@ class AuthArguments {
|
|||||||
class CalendarArguments {
|
class CalendarArguments {
|
||||||
final AppUser signedInUser;
|
final AppUser signedInUser;
|
||||||
final bool personalSelected;
|
final bool personalSelected;
|
||||||
|
final Business? business;
|
||||||
|
|
||||||
CalendarArguments(
|
CalendarArguments(
|
||||||
this.signedInUser,
|
this.signedInUser,
|
||||||
this.personalSelected,
|
this.personalSelected,
|
||||||
|
this.business,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,26 +9,28 @@ import 'package:Mzansi_Innovation_Hub/mih_components/mih_package/mih-app_tool_bo
|
|||||||
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/arguments.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/arguments.dart';
|
||||||
|
import 'package:Mzansi_Innovation_Hub/mih_objects/business.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_packages/calendar/builder/build_appointment_list.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_packages/calendar/builder/build_appointment_list.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import '../../main.dart';
|
import '../../main.dart';
|
||||||
|
|
||||||
import '../../mih_apis/mih_api_calls.dart';
|
|
||||||
import '../../mih_components/mih_calendar.dart';
|
import '../../mih_components/mih_calendar.dart';
|
||||||
import '../../mih_components/mih_layout/mih_action.dart';
|
import '../../mih_components/mih_layout/mih_action.dart';
|
||||||
import '../../mih_components/mih_layout/mih_header.dart';
|
import '../../mih_components/mih_layout/mih_header.dart';
|
||||||
import '../../mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
import '../../mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
||||||
import '../../mih_env/env.dart';
|
import '../../mih_env/env.dart';
|
||||||
import '../../mih_objects/access_request.dart';
|
|
||||||
import '../../mih_objects/app_user.dart';
|
import '../../mih_objects/app_user.dart';
|
||||||
import '../../mih_objects/patient_queue.dart';
|
|
||||||
|
|
||||||
class Appointments extends StatefulWidget {
|
class Appointments extends StatefulWidget {
|
||||||
final AppUser signedInUser;
|
final AppUser signedInUser;
|
||||||
|
final Business? business;
|
||||||
|
final bool personalSelected;
|
||||||
|
|
||||||
const Appointments({
|
const Appointments({
|
||||||
super.key,
|
super.key,
|
||||||
required this.signedInUser,
|
required this.signedInUser,
|
||||||
|
required this.business,
|
||||||
|
required this.personalSelected,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -56,9 +58,9 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
late String selectedDropdown;
|
late String selectedDropdown;
|
||||||
String selectedDay = DateTime.now().toString().split(" ")[0];
|
String selectedDay = DateTime.now().toString().split(" ")[0];
|
||||||
|
|
||||||
late Future<List<AccessRequest>> accessRequestResults;
|
|
||||||
late Future<List<PatientQueue>> personalQueueResults;
|
|
||||||
late Future<List<Appointment>> personalAppointmentResults;
|
late Future<List<Appointment>> personalAppointmentResults;
|
||||||
|
late Future<List<Appointment>> businessAppointmentResults;
|
||||||
|
late Future<List<Appointment>> appointmentResults;
|
||||||
|
|
||||||
Widget displayAppointmentList(List<Appointment> appointmentList) {
|
Widget displayAppointmentList(List<Appointment> appointmentList) {
|
||||||
if (appointmentList.isNotEmpty) {
|
if (appointmentList.isNotEmpty) {
|
||||||
@@ -181,15 +183,26 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
|
|
||||||
void addAppointmentCall() {
|
void addAppointmentCall() {
|
||||||
if (isAppointmentInputValid()) {
|
if (isAppointmentInputValid()) {
|
||||||
MihMzansiCalendarApis.addPersonalAppointment(
|
if (widget.personalSelected == false) {
|
||||||
widget.signedInUser,
|
MihMzansiCalendarApis.addBusinessAppointment(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser,
|
||||||
_appointmentTitleController.text,
|
widget.business!,
|
||||||
_appointmentDescriptionIDController.text,
|
_appointmentTitleController.text,
|
||||||
_appointmentDateController.text,
|
_appointmentDescriptionIDController.text,
|
||||||
_appointmentTimeController.text,
|
_appointmentDateController.text,
|
||||||
context,
|
_appointmentTimeController.text,
|
||||||
);
|
context,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
MihMzansiCalendarApis.addPersonalAppointment(
|
||||||
|
widget.signedInUser,
|
||||||
|
_appointmentTitleController.text,
|
||||||
|
_appointmentDescriptionIDController.text,
|
||||||
|
_appointmentDateController.text,
|
||||||
|
_appointmentTimeController.text,
|
||||||
|
context,
|
||||||
|
);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
@@ -201,17 +214,27 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
checkforchange();
|
checkforchange();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String getTitle() {
|
||||||
|
if (widget.personalSelected == false) {
|
||||||
|
return "Business Appointments";
|
||||||
|
} else {
|
||||||
|
return "Personal Appointments";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void checkforchange() {
|
void checkforchange() {
|
||||||
setState(() {
|
setState(() {
|
||||||
personalAppointmentResults =
|
if (widget.personalSelected == false) {
|
||||||
MihMzansiCalendarApis.getPersonalAppointments(
|
appointmentResults = MihMzansiCalendarApis.getBusinessAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.business!.business_id,
|
||||||
selectedDay,
|
selectedDay,
|
||||||
);
|
);
|
||||||
personalQueueResults = MIHApiCalls.fetchPersonalAppointmentsAPICall(
|
} else {
|
||||||
selectedDay,
|
appointmentResults = MihMzansiCalendarApis.getPersonalAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser.app_id,
|
||||||
);
|
selectedDay,
|
||||||
|
);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -250,13 +273,13 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
children: [
|
children: [
|
||||||
Column(
|
Column(
|
||||||
children: [
|
children: [
|
||||||
// const Text(
|
Text(
|
||||||
// "Appointments",
|
getTitle(),
|
||||||
// style: TextStyle(
|
style: const TextStyle(
|
||||||
// fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.bold,
|
||||||
// fontSize: 25,
|
fontSize: 25,
|
||||||
// ),
|
),
|
||||||
// ),
|
),
|
||||||
MIHCalendar(
|
MIHCalendar(
|
||||||
calendarWidth: 500,
|
calendarWidth: 500,
|
||||||
rowHeight: 35,
|
rowHeight: 35,
|
||||||
@@ -273,7 +296,7 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
FutureBuilder(
|
FutureBuilder(
|
||||||
future: personalAppointmentResults,
|
future: appointmentResults,
|
||||||
builder: (context, snapshot) {
|
builder: (context, snapshot) {
|
||||||
if (snapshot.connectionState == ConnectionState.waiting) {
|
if (snapshot.connectionState == ConnectionState.waiting) {
|
||||||
return const Expanded(
|
return const Expanded(
|
||||||
@@ -338,15 +361,17 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
void initState() {
|
void initState() {
|
||||||
appointmentDateController.addListener(checkforchange);
|
appointmentDateController.addListener(checkforchange);
|
||||||
setState(() {
|
setState(() {
|
||||||
personalAppointmentResults =
|
if (widget.personalSelected == false) {
|
||||||
MihMzansiCalendarApis.getPersonalAppointments(
|
appointmentResults = MihMzansiCalendarApis.getBusinessAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.business!.business_id,
|
||||||
selectedDay,
|
selectedDay,
|
||||||
);
|
);
|
||||||
personalQueueResults = MIHApiCalls.fetchPersonalAppointmentsAPICall(
|
} else {
|
||||||
selectedDay,
|
appointmentResults = MihMzansiCalendarApis.getPersonalAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser.app_id,
|
||||||
);
|
selectedDay,
|
||||||
|
);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,7 +66,11 @@ class _MzansiCalendarState extends State<MzansiCalendar> {
|
|||||||
List<Widget> getToolBody() {
|
List<Widget> getToolBody() {
|
||||||
List<Widget> toolBodies = [
|
List<Widget> toolBodies = [
|
||||||
//appointment here
|
//appointment here
|
||||||
Appointments(signedInUser: widget.arguments.signedInUser),
|
Appointments(
|
||||||
|
signedInUser: widget.arguments.signedInUser,
|
||||||
|
business: widget.arguments.business,
|
||||||
|
personalSelected: widget.arguments.personalSelected,
|
||||||
|
),
|
||||||
];
|
];
|
||||||
return toolBodies;
|
return toolBodies;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -249,7 +249,11 @@ class _MIHHomeState extends State<MIHHome> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
'/calendar',
|
'/calendar',
|
||||||
arguments: CalendarArguments(widget.signedInUser, true),
|
arguments: CalendarArguments(
|
||||||
|
widget.signedInUser,
|
||||||
|
true,
|
||||||
|
widget.business,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
tileName: "Calendar",
|
tileName: "Calendar",
|
||||||
@@ -425,7 +429,11 @@ class _MIHHomeState extends State<MIHHome> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
'/calendar',
|
'/calendar',
|
||||||
arguments: CalendarArguments(widget.signedInUser, false),
|
arguments: CalendarArguments(
|
||||||
|
widget.signedInUser,
|
||||||
|
false,
|
||||||
|
widget.business,
|
||||||
|
),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
tileName: "Calendar",
|
tileName: "Calendar",
|
||||||
|
|||||||
@@ -45,10 +45,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: async
|
name: async
|
||||||
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
|
sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.12.0"
|
version: "2.11.0"
|
||||||
barcode:
|
barcode:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -85,10 +85,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: boolean_selector
|
name: boolean_selector
|
||||||
sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
|
sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.2"
|
version: "2.1.1"
|
||||||
buffer:
|
buffer:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -181,10 +181,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: characters
|
name: characters
|
||||||
sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803
|
sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.4.0"
|
version: "1.3.0"
|
||||||
charcode:
|
charcode:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -213,10 +213,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: clock
|
name: clock
|
||||||
sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
|
sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.1.2"
|
version: "1.1.1"
|
||||||
code_builder:
|
code_builder:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -229,10 +229,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: collection
|
name: collection
|
||||||
sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
|
sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.19.1"
|
version: "1.19.0"
|
||||||
convert:
|
convert:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -333,10 +333,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: fake_async
|
name: fake_async
|
||||||
sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
|
sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.3.2"
|
version: "1.3.1"
|
||||||
fetch_api:
|
fetch_api:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -357,10 +357,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: ffi
|
name: ffi
|
||||||
sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418"
|
sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.4"
|
version: "2.1.3"
|
||||||
file:
|
file:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -676,18 +676,18 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker
|
name: leak_tracker
|
||||||
sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
|
sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "10.0.8"
|
version: "10.0.7"
|
||||||
leak_tracker_flutter_testing:
|
leak_tracker_flutter_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker_flutter_testing
|
name: leak_tracker_flutter_testing
|
||||||
sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573
|
sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.0.9"
|
version: "3.0.8"
|
||||||
leak_tracker_testing:
|
leak_tracker_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -764,10 +764,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: matcher
|
name: matcher
|
||||||
sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2
|
sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.12.17"
|
version: "0.12.16+1"
|
||||||
material_color_utilities:
|
material_color_utilities:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -780,18 +780,18 @@ packages:
|
|||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: math_expressions
|
name: math_expressions
|
||||||
sha256: "218dc65bed4726562bb31c53d8daa3cc824664b26fb72d77bc592757edf74ba0"
|
sha256: e32d803d758ace61cc6c4bdfed1226ff60a6a23646b35685670d28b5616139f8
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.7.0"
|
version: "2.6.0"
|
||||||
meta:
|
meta:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: meta
|
name: meta
|
||||||
sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c
|
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.16.0"
|
version: "1.15.0"
|
||||||
mime:
|
mime:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -852,10 +852,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: path
|
name: path
|
||||||
sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
|
sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.9.1"
|
version: "1.9.0"
|
||||||
path_parsing:
|
path_parsing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -956,10 +956,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: petitparser
|
name: petitparser
|
||||||
sha256: "07c8f0b1913bcde1ff0d26e57ace2f3012ccbf2b204e070290dad3bb22797646"
|
sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "6.1.0"
|
version: "6.0.2"
|
||||||
photo_view:
|
photo_view:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1153,10 +1153,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: source_span
|
name: source_span
|
||||||
sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c"
|
sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.10.1"
|
version: "1.10.0"
|
||||||
sprintf:
|
sprintf:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1169,18 +1169,18 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: stack_trace
|
name: stack_trace
|
||||||
sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1"
|
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.12.1"
|
version: "1.12.0"
|
||||||
stream_channel:
|
stream_channel:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: stream_channel
|
name: stream_channel
|
||||||
sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d"
|
sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.4"
|
version: "2.1.2"
|
||||||
stream_transform:
|
stream_transform:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1193,10 +1193,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: string_scanner
|
name: string_scanner
|
||||||
sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43"
|
sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.4.1"
|
version: "1.3.0"
|
||||||
supertokens_flutter:
|
supertokens_flutter:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
@@ -1281,18 +1281,18 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: term_glyph
|
name: term_glyph
|
||||||
sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e"
|
sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.2.2"
|
version: "1.2.1"
|
||||||
test_api:
|
test_api:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test_api
|
name: test_api
|
||||||
sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd
|
sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.7.4"
|
version: "0.7.3"
|
||||||
timing:
|
timing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1425,10 +1425,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: vm_service
|
name: vm_service
|
||||||
sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
|
sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "14.3.1"
|
version: "14.3.0"
|
||||||
watcher:
|
watcher:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1505,10 +1505,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: win32
|
name: win32
|
||||||
sha256: b89e6e24d1454e149ab20fbb225af58660f0c0bf4475544650700d8e2da54aef
|
sha256: daf97c9d80197ed7b619040e86c8ab9a9dad285e7671ee7390f9180cc828a51e
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "5.11.0"
|
version: "5.10.1"
|
||||||
win32_registry:
|
win32_registry:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -1558,5 +1558,5 @@ packages:
|
|||||||
source: hosted
|
source: hosted
|
||||||
version: "3.1.1"
|
version: "3.1.1"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=3.7.0 <3.9.0"
|
dart: ">=3.6.0 <3.9.0"
|
||||||
flutter: ">=3.27.0"
|
flutter: ">=3.27.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user