policy validation bug fix
This commit is contained in:
parent
e59d163a2e
commit
97759378de
File diff suppressed because one or more lines are too long
@ -5,8 +5,8 @@ class Env {
|
||||
);
|
||||
static const String apiUrl = String.fromEnvironment(
|
||||
'API_URL',
|
||||
// defaultValue: 'https://partner.nhanceindia.in/partner_api/api/', /* Live build (enable index.html line 18) */
|
||||
defaultValue: 'https://venbait.in/nhance/partner/dev/api/', /* Test build (enable index.html line 19) */
|
||||
defaultValue: 'https://partner.nhanceindia.in/partner_api/api/', /* Live build (enable index.html line 18) */
|
||||
// defaultValue: 'https://venbait.in/nhance/partner/dev/api/', /* Test build (enable index.html line 19) */
|
||||
// defaultValue: 'http://localhost/nhance_partner_be/', /* localhost build (enable index.html line 19) */
|
||||
);
|
||||
// static const String baseUrl = String.fromEnvironment(
|
||||
|
||||
@ -737,6 +737,26 @@ class ApiService {
|
||||
return response;
|
||||
}
|
||||
|
||||
// ----------------------------------- Staff Level Count -------------------------------------------------
|
||||
Future<Map<String, dynamic>> fetchStaffLevelCount(id, userId) async {
|
||||
// print(_token);
|
||||
if (_token == null) {
|
||||
await _initializeToken();
|
||||
}
|
||||
|
||||
final url;
|
||||
|
||||
url = Uri.parse('${Env.apiUrl}dashboard/managerDashboard?manager_id=$id&staff_id=$userId');
|
||||
|
||||
final headers = {
|
||||
'Authorization': 'Bearer $_token' ?? '',
|
||||
'app-signature': Env.App_Signature,
|
||||
};
|
||||
|
||||
final response = await _makeGetRequest(url, headers);
|
||||
return response;
|
||||
}
|
||||
|
||||
// ----------------------------------- Dashboard -------------------------------------------------
|
||||
Future<Map<String, dynamic>> fetchDashboard(int id, role, userId) async {
|
||||
// print(_token);
|
||||
@ -1372,6 +1392,7 @@ class ApiService {
|
||||
String? fromDate,
|
||||
String? toDate,
|
||||
String? selectedStaffId,
|
||||
String ? selectedStatus
|
||||
}) async {
|
||||
print(
|
||||
"fetchPolicyDataOnlyListAPI - mangerID- $managerId - id - $id - role -$role ",
|
||||
@ -1387,9 +1408,10 @@ class ApiService {
|
||||
if (role == 'manager') {
|
||||
query = 'manager_id=$managerId';
|
||||
} else if (role == 'Accounts') {
|
||||
query = 'manager_id=$managerId';
|
||||
} else if (role == 'Accounts') {
|
||||
query = 'manager_id=$managerId';
|
||||
// query = 'manager_id=$managerId';
|
||||
query = selectedStatus != null
|
||||
? 'manager_id=$managerId&show_policy_report=${Uri.encodeComponent(selectedStatus)}'
|
||||
: 'manager_id=$managerId';
|
||||
} else if (role == 'staff') {
|
||||
query = 'staff_id=$id';
|
||||
} else if (role == 'handler') {
|
||||
@ -1573,7 +1595,7 @@ class ApiService {
|
||||
|
||||
// --------------------------------- MASTER DATA DROPDOWN----------------------------------------------
|
||||
|
||||
Future<Map<String, dynamic>> fetchMasterDropDown(String val) async {
|
||||
Future<Map<String, dynamic>> fetchMasterDropDown(String val ,[String? type]) async {
|
||||
// print(_token);
|
||||
if (_token == null) {
|
||||
await _initializeToken();
|
||||
@ -1586,7 +1608,16 @@ class ApiService {
|
||||
if (val == 'staffRole') {
|
||||
url = Uri.parse('${Env.apiUrl}master/getRoleMaster');
|
||||
} else if (val == 'vehicleType') {
|
||||
url = Uri.parse('${Env.apiUrl}master/getVehicleTypeMaster');
|
||||
// url = Uri.parse('${Env.apiUrl}master/getVehicleTypeMaster');
|
||||
if(type == 'dropdown'){
|
||||
url = Uri.parse('${Env.apiUrl}master/getVehicleTypeMaster?value_for=dropdown');
|
||||
}else{
|
||||
url = Uri.parse('${Env.apiUrl}master/getVehicleTypeMaster');
|
||||
}
|
||||
// url = Uri.parse('${Env.apiUrl}master/getVehicleTypeMaster')
|
||||
// .replace(queryParameters: {
|
||||
// if (type != null) 'value_for': type,
|
||||
//});
|
||||
} else if (val == 'InsuranceType') {
|
||||
url = Uri.parse('${Env.apiUrl}master/getInsurancePlanTypeMaster');
|
||||
} else if (val == 'Insurers') {
|
||||
@ -2083,9 +2114,9 @@ class ApiService {
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> generatePolicyExcel(managerId, fromDate, toDate, searchValue) async {
|
||||
Future<void> generatePolicyExcel(managerId, fromDate, toDate, searchValue,flag) async {
|
||||
final url = Uri.parse(
|
||||
'${Env.apiUrl}reports/policy-excel?manager_id=$managerId&from_date=${fromDate ?? ''}&to_date=${toDate ?? ''}&search=${searchValue ?? ''}',
|
||||
'${Env.apiUrl}reports/policy-excel?manager_id=$managerId&from_date=${fromDate ?? ''}&to_date=${toDate ?? ''}&search=${searchValue ?? ''}&show_policy_report=${flag ?? ''}',
|
||||
);
|
||||
print('getPdfDownload policy-excel - $url');
|
||||
await _initializeToken();
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
@ -32,6 +34,17 @@ class _AppHeaderState extends ConsumerState<AppHeader> {
|
||||
OverlayEntry? _overlayEntry;
|
||||
String? _activeMenu;
|
||||
|
||||
Timer? _queueTimer;
|
||||
int totalAssigned = 0;
|
||||
int totalPending = 0;
|
||||
int todayAssigned = 0;
|
||||
int todayPending = 0;
|
||||
int todayInProgress = 0;
|
||||
int todayCompleted = 0;
|
||||
|
||||
int queueCount = 0; // badge count
|
||||
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
@ -42,6 +55,7 @@ class _AppHeaderState extends ConsumerState<AppHeader> {
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_queueTimer?.cancel();
|
||||
_hidePopup();
|
||||
super.dispose();
|
||||
}
|
||||
@ -91,8 +105,71 @@ class _AppHeaderState extends ConsumerState<AppHeader> {
|
||||
role = prefs.getString('userRole') ?? "Guest";
|
||||
});
|
||||
print('AppHeader Role - $role');
|
||||
// Initial fetch + auto refresh
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
print('111');
|
||||
if (role == 'staff') {
|
||||
print('staff 111');
|
||||
getStaffLevelCount(profileData?['manager_id'], profileData?['id']);
|
||||
|
||||
_queueTimer = Timer.periodic(
|
||||
const Duration(seconds: 30),
|
||||
(_) => getStaffLevelCount(
|
||||
profileData?['manager_id'],
|
||||
profileData?['id'],
|
||||
),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Future<void> getStaffLevelCount(managerId, userId) async {
|
||||
print('staff 222');
|
||||
print('$managerId ,$userId');
|
||||
print('staff 333');
|
||||
try {
|
||||
final response = await apiService.fetchStaffLevelCount(managerId, userId);
|
||||
|
||||
if (response['status'] == 'success') {
|
||||
final List summary =
|
||||
response['data']['staff_level_pending_summary'] ?? [];
|
||||
|
||||
int _totalAssigned = 0;
|
||||
int _totalPending = 0;
|
||||
int _todayAssigned = 0;
|
||||
int _todayPending = 0;
|
||||
int _todayInProgress = 0;
|
||||
int _todayCompleted = 0;
|
||||
|
||||
for (final item in summary) {
|
||||
_totalAssigned += int.parse(item['total_assigned'] ?? '0');
|
||||
_totalPending += int.parse(item['total_pending'] ?? '0');
|
||||
_todayAssigned += int.parse(item['today_assigned'] ?? '0');
|
||||
_todayPending += int.parse(item['today_pending'] ?? '0');
|
||||
_todayInProgress += int.parse(item['today_in_progress'] ?? '0');
|
||||
_todayCompleted += int.parse(item['today_completed'] ?? '0');
|
||||
}
|
||||
|
||||
if (!mounted) return;
|
||||
|
||||
setState(() {
|
||||
totalAssigned = _totalAssigned;
|
||||
totalPending = _totalPending;
|
||||
todayAssigned = _todayAssigned;
|
||||
todayPending = _todayPending;
|
||||
todayInProgress = _todayInProgress;
|
||||
todayCompleted = _todayCompleted;
|
||||
|
||||
queueCount = totalPending + todayPending + todayInProgress;
|
||||
});
|
||||
}
|
||||
} catch (e) {
|
||||
debugPrint('Queue API Exception: $e');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Clear dashboard filters
|
||||
Future<void> _clearDashboardFilters() async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
@ -408,6 +485,12 @@ class _AppHeaderState extends ConsumerState<AppHeader> {
|
||||
),
|
||||
const SizedBox(width: 16),
|
||||
],
|
||||
|
||||
if (role == 'staff') ...[
|
||||
_buildQueueIcon(),
|
||||
const SizedBox(width: 12),
|
||||
],
|
||||
|
||||
// if (role != 'Accounts') ...[
|
||||
if (!['Accounts', 'agent'].contains(role)) ...[
|
||||
// Proposal button
|
||||
@ -564,6 +647,123 @@ class _AppHeaderState extends ConsumerState<AppHeader> {
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildQueueIcon() {
|
||||
return Builder(
|
||||
builder: (iconContext) {
|
||||
return MouseRegion(
|
||||
onEnter: (_) {
|
||||
final box = iconContext.findRenderObject() as RenderBox;
|
||||
_showQueuePopup(
|
||||
context,
|
||||
box.localToGlobal(Offset.zero),
|
||||
box.size,
|
||||
);
|
||||
},
|
||||
onExit: (_) => _hidePopup(),
|
||||
child: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: [
|
||||
Container(
|
||||
width: 36,
|
||||
height: 36,
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(8),
|
||||
border: Border.all(color: Colors.grey.shade200),
|
||||
),
|
||||
child: const Icon(Icons.priority_high, size: 20),
|
||||
),
|
||||
|
||||
// 🔴 Badge
|
||||
// if (queueCount > 0)
|
||||
Positioned(
|
||||
right: -6,
|
||||
top: -6,
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(4),
|
||||
decoration: const BoxDecoration(
|
||||
color: Colors.red,
|
||||
shape: BoxShape.circle,
|
||||
),
|
||||
constraints:
|
||||
const BoxConstraints(minWidth: 18, minHeight: 18),
|
||||
child: Text(
|
||||
queueCount.toString(),
|
||||
textAlign: TextAlign.center,
|
||||
style: const TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 10,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
void _showQueuePopup(BuildContext context, Offset offset, Size size) {
|
||||
_hidePopup();
|
||||
|
||||
_overlayEntry = OverlayEntry(
|
||||
builder: (_) => Positioned(
|
||||
left: offset.dx,
|
||||
top: offset.dy + size.height + 4,
|
||||
child: MouseRegion(
|
||||
onExit: (_) => _hidePopup(),
|
||||
child: Material(
|
||||
elevation: 10,
|
||||
borderRadius: BorderRadius.circular(8),
|
||||
child: Container(
|
||||
width: 180,
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(8),
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
_queueRow('Total Assigned', totalAssigned),
|
||||
_queueRow('Total Pending', totalPending),
|
||||
const Divider(),
|
||||
_queueRow('Today Assigned', todayAssigned),
|
||||
_queueRow('Today Pending', todayPending),
|
||||
_queueRow('Today In Progress', todayInProgress),
|
||||
_queueRow('Today Completed', todayCompleted),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
Overlay.of(context, rootOverlay: true).insert(_overlayEntry!);
|
||||
}
|
||||
|
||||
Widget _queueRow(String label, int value) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 4),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(label,
|
||||
style:
|
||||
GoogleFonts.inter(fontSize: 12, color: Colors.grey.shade700)),
|
||||
Text(value.toString(),
|
||||
style: GoogleFonts.inter(
|
||||
fontSize: 12, fontWeight: FontWeight.w600)),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Simple menu item widget
|
||||
Widget _buildMenuItem({
|
||||
required IconData icon,
|
||||
|
||||
@ -178,7 +178,7 @@ class EnquiryTabState extends ConsumerState<EnquiryTab> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -842,7 +842,7 @@ class AgentState extends ConsumerState<Agent> {
|
||||
contentPadding: EdgeInsets.all(3),
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
hintText: "Search Executive...",
|
||||
hintText: "Select Executive...",
|
||||
hintStyle: GoogleFonts.inter(
|
||||
fontSize: 12,
|
||||
color: Colors.black,
|
||||
|
||||
@ -713,7 +713,7 @@ class StaffState extends ConsumerState<Staff> {
|
||||
contentPadding: EdgeInsets.all(3),
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
hintText: "Search Role...",
|
||||
hintText: "Select Role...",
|
||||
hintStyle: GoogleFonts.inter(
|
||||
fontSize: 12,
|
||||
color: Colors.black,
|
||||
|
||||
@ -1082,7 +1082,7 @@ class EnquiryHandlerState extends ConsumerState<EnquiryListHandler> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -1322,7 +1322,7 @@ class EnquiryStaffState extends ConsumerState<EnquiryListStaffInline> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -646,13 +646,13 @@ class EnquiryStaffState extends ConsumerState<EnquiryListStaffInline> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
// print('EIL 2getVT-Data - ${response['data']}');
|
||||
print('EIL 2getVT-Data - ${response['data']}');
|
||||
setState(() {
|
||||
// getVehicleTypeData = List<Map<String, dynamic>>.from(response['data']);
|
||||
getVehicleTypeData = List<Map<String, dynamic>>.from(response['data']).where((item) => item['is_active']?.toString() == '1').toList();
|
||||
getVehicleTypeData = List<Map<String, dynamic>>.from(response['data']);
|
||||
// getVehicleTypeData = List<Map<String, dynamic>>.from(response['data']).where((item) => item['is_active']?.toString() == '1').toList();
|
||||
|
||||
// print('EIL 3getVT-B4filterData : $getVehicleTypeData');
|
||||
filteredVehicleData = List.from(getVehicleTypeData);
|
||||
|
||||
@ -1557,7 +1557,7 @@ class EnquiryStaffState extends ConsumerState<EnquiryListStaffInline> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -1132,7 +1132,7 @@ class EnquiryStaffState extends ConsumerState<EnquiryListStaffInline> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -226,7 +226,7 @@ class RaiseEnqFormState extends ConsumerState<RaiseEnqForm> {
|
||||
});
|
||||
|
||||
try {
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType');
|
||||
final response = await apiService.fetchMasterDropDown('vehicleType','dropdown');
|
||||
|
||||
if (response['status'] == 200) {
|
||||
print('getVehicleTypeData - ${response['data']}');
|
||||
|
||||
@ -54,7 +54,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
|
||||
SelectedStatus = 'All';
|
||||
apiService = ApiService();
|
||||
|
||||
for (String field in tabHeader) {
|
||||
@ -68,7 +68,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
|
||||
print("D49 => r : $roleId | mId: $managerId | uId: $userId ");
|
||||
if (userId != null) {
|
||||
getStaffList(managerId!, userId, roleId);
|
||||
getStaffList(managerId!, userId, roleId , selectedStatus : SelectedStatus ?? 'All');
|
||||
}
|
||||
|
||||
refreshSub = ref.listenManual<bool>(policyDataAcurancyRefreshProvider, (
|
||||
@ -79,7 +79,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
print('refresh triggered Quick Creation');
|
||||
|
||||
// callRefresh();
|
||||
getStaffList(managerId!, userId, roleId);
|
||||
getStaffList(managerId!, userId, roleId,selectedStatus : SelectedStatus ?? 'All');
|
||||
ref.read(policyDataAcurancyRefreshProvider.notifier).state = false;
|
||||
}
|
||||
});
|
||||
@ -93,7 +93,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
|
||||
// print("D61 => r : $roleId | mId: $id | uId: $userId");
|
||||
if (userId != null) {
|
||||
getStaffList(managerId, userId, roleId);
|
||||
getStaffList(managerId, userId, roleId,selectedStatus : SelectedStatus ?? 'All');
|
||||
}
|
||||
}
|
||||
|
||||
@ -103,6 +103,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
role, {
|
||||
String fromDate = '',
|
||||
String toDate = '',
|
||||
String selectedStatus = 'All',
|
||||
}) async {
|
||||
print('D68 => Fns called => $managerId | $role');
|
||||
setState(() {
|
||||
@ -137,6 +138,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
fromDate: fromDt,
|
||||
toDate: toDt,
|
||||
selectedStaffId: SelectedStaffId ?? '',
|
||||
selectedStatus:selectedStatus
|
||||
);
|
||||
|
||||
if (response['status'] == 'success') {
|
||||
@ -226,7 +228,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
print('filterDateRange 1s');
|
||||
print('manager - $managerId - userID -$userId - roledId -$roleId');
|
||||
|
||||
getStaffList(managerId!, userId, roleId);
|
||||
getStaffList(managerId!, userId, roleId, selectedStatus : SelectedStatus ?? 'All');
|
||||
}
|
||||
print('filterDateRange 1');
|
||||
}
|
||||
@ -236,13 +238,13 @@ class policylistState extends ConsumerState<policylist> {
|
||||
SelectedStaffId = null;
|
||||
controllers['startDate']!.clear();
|
||||
controllers['endDate']!.clear();
|
||||
|
||||
SelectedStatus ='All';
|
||||
controllers['startDate']?.text = '';
|
||||
controllers['endDate']?.text = '';
|
||||
// Reset the FormField validation
|
||||
_formKey.currentState?.reset();
|
||||
});
|
||||
getStaffList(managerId, userId, roleId);
|
||||
getStaffList(managerId, userId, roleId, selectedStatus : SelectedStatus ?? 'All');
|
||||
}
|
||||
|
||||
void filterData(String query) {
|
||||
@ -304,6 +306,7 @@ class policylistState extends ConsumerState<policylist> {
|
||||
fromDate,
|
||||
toDate,
|
||||
searchValue,
|
||||
SelectedStatus ?? 'All'
|
||||
);
|
||||
// Map your controllers and IDs to the API parameters
|
||||
// final String fromDate = controllers['startDate']!.text; // "11-01-2025"
|
||||
@ -429,8 +432,11 @@ class policylistState extends ConsumerState<policylist> {
|
||||
selectedStaffId: SelectedStaffId,
|
||||
startController: controllers['startDate']!,
|
||||
endController: controllers['endDate']!,
|
||||
selectedStatusVal: SelectedStatus,
|
||||
onStatusChanged: (val) {
|
||||
SelectedStatus = val; // update parent
|
||||
setState(() {
|
||||
SelectedStatus = val; // update parent
|
||||
});
|
||||
},
|
||||
formKey: _formKey,
|
||||
isMobile: ResponsiveLayout.isMobile(context),
|
||||
@ -465,8 +471,11 @@ class policylistState extends ConsumerState<policylist> {
|
||||
selectedStaffId: SelectedStaffId,
|
||||
startController: controllers['startDate']!,
|
||||
endController: controllers['endDate']!,
|
||||
selectedStatusVal: SelectedStatus,
|
||||
onStatusChanged: (val) {
|
||||
SelectedStatus = val; // update parent
|
||||
setState(() {
|
||||
SelectedStatus = val; // update parent
|
||||
});
|
||||
},
|
||||
formKey: _formKey,
|
||||
isMobile: ResponsiveLayout.isMobile(context),
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -187,6 +187,11 @@ class _DateFilterRowState extends ConsumerState<DateFilterRow> {
|
||||
buildSelectStaffMem(context),
|
||||
SizedBox(width: spacing),
|
||||
],
|
||||
if (widget.role == 'Accounts' && widget.dataFrom == 'Policy') ...[
|
||||
buildPolicyReportFlagSearch(context),
|
||||
SizedBox(width: spacing),
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
final buttons = [
|
||||
@ -480,6 +485,142 @@ class _DateFilterRowState extends ConsumerState<DateFilterRow> {
|
||||
);
|
||||
}
|
||||
|
||||
Widget buildPolicyReportFlagSearch(BuildContext context) {
|
||||
|
||||
final List<Map<String, dynamic>> policyReportStatusOptions;
|
||||
|
||||
policyReportStatusOptions = [
|
||||
{'id': 'All', 'status': 'All'},
|
||||
{'id': 'Verified', 'status': 'Verified'},
|
||||
{'id': 'Not Verified', 'status': 'Not Verified'},
|
||||
];
|
||||
|
||||
Map<String, dynamic>? selectedPolicyReportStatusMap = policyReportStatusOptions
|
||||
.where((element) => element['status'] == widget.selectedStatusVal)
|
||||
.cast<Map<String, dynamic>>()
|
||||
.toList()
|
||||
.firstOrNull;
|
||||
|
||||
Map<String, dynamic>? selectedItem = policyReportStatusOptions
|
||||
.cast<Map<String, dynamic>>()
|
||||
.firstWhere(
|
||||
(e) => e['status'] == widget.selectedStatusVal,
|
||||
orElse: () => {}, // return empty map
|
||||
);
|
||||
|
||||
if (selectedItem.isEmpty) selectedItem = null;
|
||||
// Map<String, dynamic>? selectedStatus; // ✅ Default: no selection
|
||||
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
// Text('Status', style: _textStyle),
|
||||
// SizedBox(height: 5),
|
||||
SizedBox(
|
||||
height: 35,
|
||||
child: Container(
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(5.0),
|
||||
border: Border.all(color: Color(0xFFE2E8F0)),
|
||||
// color: Colors.black,
|
||||
),
|
||||
width: ResponsiveLayout.isMobile(context)
|
||||
? null
|
||||
: MediaQuery.of(context).size.width * 0.14,
|
||||
child: DropdownSearch<Map<String, dynamic>>(
|
||||
// selectedItem: selectedStatus,
|
||||
selectedItem: selectedPolicyReportStatusMap,
|
||||
// selectedItem: policyReportStatusOptions.firstWhere(
|
||||
// (element) => element['status'] == selectedStatusVal,
|
||||
// orElse: () => null, // ✅ return null if not found
|
||||
// ),
|
||||
items: (filter, infiniteScrollProps) => policyReportStatusOptions,
|
||||
|
||||
itemAsString: (val) => val['status'].toString(),
|
||||
compareFn: (item, selectedItem) =>
|
||||
item['status'] == selectedItem['status'],
|
||||
|
||||
dropdownBuilder: (context, selectedItem) => Align(
|
||||
alignment: Alignment.centerLeft,
|
||||
|
||||
child: Text(
|
||||
selectedItem != null ? selectedItem['status'].toString() : "",
|
||||
style: GoogleFonts.poppins(fontSize: 11, color: Colors.black),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
maxLines: 1,
|
||||
softWrap: false,
|
||||
),
|
||||
),
|
||||
|
||||
// validator: (val) {
|
||||
// if (val == null) {
|
||||
// return "Please select a status";
|
||||
// }
|
||||
// return null;
|
||||
// },
|
||||
decoratorProps: DropDownDecoratorProps(
|
||||
decoration:
|
||||
AppInputDecorations.dropdownDecoration(
|
||||
label: "Select Policy Status",
|
||||
).copyWith(
|
||||
filled: true,
|
||||
fillColor: Colors.white,
|
||||
isDense: true, // 👈 reduces built-in vertical padding
|
||||
|
||||
contentPadding: const EdgeInsets.symmetric(
|
||||
horizontal: 6,
|
||||
vertical: 1, // 👈 adjust this to make the field shorter
|
||||
),
|
||||
),
|
||||
),
|
||||
// popupProps: PopupProps.menu(
|
||||
// fit: FlexFit.loose,
|
||||
// constraints: BoxConstraints(maxHeight: 200),
|
||||
// menuProps: MenuProps(backgroundColor: Colors.white),
|
||||
// showSearchBox: false, // 👈 no search box since it's static
|
||||
//
|
||||
// ),
|
||||
popupProps: PopupProps.menu(
|
||||
fit: FlexFit.loose,
|
||||
constraints: const BoxConstraints(maxHeight: 200),
|
||||
menuProps: const MenuProps(backgroundColor: Colors.white),
|
||||
showSearchBox: false,
|
||||
|
||||
itemBuilder: (context, item, isDisabled, isSelected) {
|
||||
// ✅ 4 parameters
|
||||
return Container(
|
||||
// color: isSelected ? Colors.blue.withOpacity(0.1) : null,
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 12,
|
||||
vertical: 6,
|
||||
),
|
||||
child: Text(
|
||||
item['status'].toString(),
|
||||
style: GoogleFonts.inter(
|
||||
fontSize: 13,
|
||||
color: Colors.black,
|
||||
),
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
|
||||
onChanged: (val) {
|
||||
if (val != null) {
|
||||
print("Selected Status: ${val['status']}");
|
||||
if (widget.onStatusChanged != null)
|
||||
widget.onStatusChanged!(val['status']);
|
||||
|
||||
Future.microtask(() => widget.onFilter());
|
||||
}
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Widget buildSelectStaffMem(BuildContext context) {
|
||||
// Map<String, dynamic>? selectedVehicle = filteredStaffData.firstWhere(
|
||||
// (item) => item['id'].toString() == selectedStaff,
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
platform :osx, '10.14'
|
||||
platform :osx, '10.15'
|
||||
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||
|
||||
@ -1,42 +1,261 @@
|
||||
PODS:
|
||||
- AppAuth (2.0.0):
|
||||
- AppAuth/Core (= 2.0.0)
|
||||
- AppAuth/ExternalUserAgent (= 2.0.0)
|
||||
- AppAuth/Core (2.0.0)
|
||||
- AppAuth/ExternalUserAgent (2.0.0):
|
||||
- AppAuth/Core
|
||||
- AppCheckCore (11.2.0):
|
||||
- GoogleUtilities/Environment (~> 8.0)
|
||||
- GoogleUtilities/UserDefaults (~> 8.0)
|
||||
- PromisesObjC (~> 2.4)
|
||||
- connectivity_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
- device_info_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
- file_picker (0.0.1):
|
||||
- FlutterMacOS
|
||||
- Firebase/Auth (12.4.0):
|
||||
- Firebase/CoreOnly
|
||||
- FirebaseAuth (~> 12.4.0)
|
||||
- Firebase/CoreOnly (12.4.0):
|
||||
- FirebaseCore (~> 12.4.0)
|
||||
- Firebase/Messaging (12.4.0):
|
||||
- Firebase/CoreOnly
|
||||
- FirebaseMessaging (~> 12.4.0)
|
||||
- firebase_auth (6.1.2):
|
||||
- Firebase/Auth (~> 12.4.0)
|
||||
- Firebase/CoreOnly (~> 12.4.0)
|
||||
- firebase_core
|
||||
- FlutterMacOS
|
||||
- firebase_core (4.2.1):
|
||||
- Firebase/CoreOnly (~> 12.4.0)
|
||||
- FlutterMacOS
|
||||
- firebase_messaging (16.0.4):
|
||||
- Firebase/CoreOnly (~> 12.4.0)
|
||||
- Firebase/Messaging (~> 12.4.0)
|
||||
- firebase_core
|
||||
- FlutterMacOS
|
||||
- FirebaseAppCheckInterop (12.4.0)
|
||||
- FirebaseAuth (12.4.0):
|
||||
- FirebaseAppCheckInterop (~> 12.4.0)
|
||||
- FirebaseAuthInterop (~> 12.4.0)
|
||||
- FirebaseCore (~> 12.4.0)
|
||||
- FirebaseCoreExtension (~> 12.4.0)
|
||||
- GoogleUtilities/AppDelegateSwizzler (~> 8.1)
|
||||
- GoogleUtilities/Environment (~> 8.1)
|
||||
- GTMSessionFetcher/Core (< 6.0, >= 3.4)
|
||||
- RecaptchaInterop (~> 101.0)
|
||||
- FirebaseAuthInterop (12.4.0)
|
||||
- FirebaseCore (12.4.0):
|
||||
- FirebaseCoreInternal (~> 12.4.0)
|
||||
- GoogleUtilities/Environment (~> 8.1)
|
||||
- GoogleUtilities/Logger (~> 8.1)
|
||||
- FirebaseCoreExtension (12.4.0):
|
||||
- FirebaseCore (~> 12.4.0)
|
||||
- FirebaseCoreInternal (12.4.0):
|
||||
- "GoogleUtilities/NSData+zlib (~> 8.1)"
|
||||
- FirebaseInstallations (12.4.0):
|
||||
- FirebaseCore (~> 12.4.0)
|
||||
- GoogleUtilities/Environment (~> 8.1)
|
||||
- GoogleUtilities/UserDefaults (~> 8.1)
|
||||
- PromisesObjC (~> 2.4)
|
||||
- FirebaseMessaging (12.4.0):
|
||||
- FirebaseCore (~> 12.4.0)
|
||||
- FirebaseInstallations (~> 12.4.0)
|
||||
- GoogleDataTransport (~> 10.1)
|
||||
- GoogleUtilities/AppDelegateSwizzler (~> 8.1)
|
||||
- GoogleUtilities/Environment (~> 8.1)
|
||||
- GoogleUtilities/Reachability (~> 8.1)
|
||||
- GoogleUtilities/UserDefaults (~> 8.1)
|
||||
- nanopb (~> 3.30910.0)
|
||||
- flutter_secure_storage_macos (6.1.3):
|
||||
- FlutterMacOS
|
||||
- FlutterMacOS (1.0.0)
|
||||
- google_sign_in_ios (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- GoogleSignIn (~> 9.0)
|
||||
- GTMSessionFetcher (>= 3.4.0)
|
||||
- GoogleDataTransport (10.1.0):
|
||||
- nanopb (~> 3.30910.0)
|
||||
- PromisesObjC (~> 2.4)
|
||||
- GoogleSignIn (9.0.0):
|
||||
- AppAuth (~> 2.0)
|
||||
- AppCheckCore (~> 11.0)
|
||||
- GTMAppAuth (~> 5.0)
|
||||
- GTMSessionFetcher/Core (~> 3.3)
|
||||
- GoogleUtilities/AppDelegateSwizzler (8.1.0):
|
||||
- GoogleUtilities/Environment
|
||||
- GoogleUtilities/Logger
|
||||
- GoogleUtilities/Network
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/Environment (8.1.0):
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/Logger (8.1.0):
|
||||
- GoogleUtilities/Environment
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/Network (8.1.0):
|
||||
- GoogleUtilities/Logger
|
||||
- "GoogleUtilities/NSData+zlib"
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/Reachability
|
||||
- "GoogleUtilities/NSData+zlib (8.1.0)":
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/Privacy (8.1.0)
|
||||
- GoogleUtilities/Reachability (8.1.0):
|
||||
- GoogleUtilities/Logger
|
||||
- GoogleUtilities/Privacy
|
||||
- GoogleUtilities/UserDefaults (8.1.0):
|
||||
- GoogleUtilities/Logger
|
||||
- GoogleUtilities/Privacy
|
||||
- GTMAppAuth (5.0.0):
|
||||
- AppAuth/Core (~> 2.0)
|
||||
- GTMSessionFetcher/Core (< 4.0, >= 3.3)
|
||||
- GTMSessionFetcher (3.5.0):
|
||||
- GTMSessionFetcher/Full (= 3.5.0)
|
||||
- GTMSessionFetcher/Core (3.5.0)
|
||||
- GTMSessionFetcher/Full (3.5.0):
|
||||
- GTMSessionFetcher/Core
|
||||
- local_auth_darwin (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- nanopb (3.30910.0):
|
||||
- nanopb/decode (= 3.30910.0)
|
||||
- nanopb/encode (= 3.30910.0)
|
||||
- nanopb/decode (3.30910.0)
|
||||
- nanopb/encode (3.30910.0)
|
||||
- open_file_mac (0.0.1):
|
||||
- FlutterMacOS
|
||||
- package_info_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
- path_provider_foundation (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- pdf_render (0.0.1):
|
||||
- FlutterMacOS
|
||||
- PromisesObjC (2.4.0)
|
||||
- shared_preferences_foundation (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- syncfusion_pdfviewer_macos (0.0.1):
|
||||
- FlutterMacOS
|
||||
- url_launcher_macos (0.0.1):
|
||||
- FlutterMacOS
|
||||
|
||||
DEPENDENCIES:
|
||||
- connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos`)
|
||||
- device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`)
|
||||
- file_picker (from `Flutter/ephemeral/.symlinks/plugins/file_picker/macos`)
|
||||
- firebase_auth (from `Flutter/ephemeral/.symlinks/plugins/firebase_auth/macos`)
|
||||
- firebase_core (from `Flutter/ephemeral/.symlinks/plugins/firebase_core/macos`)
|
||||
- firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`)
|
||||
- flutter_secure_storage_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos`)
|
||||
- FlutterMacOS (from `Flutter/ephemeral`)
|
||||
- google_sign_in_ios (from `Flutter/ephemeral/.symlinks/plugins/google_sign_in_ios/darwin`)
|
||||
- local_auth_darwin (from `Flutter/ephemeral/.symlinks/plugins/local_auth_darwin/darwin`)
|
||||
- open_file_mac (from `Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos`)
|
||||
- package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`)
|
||||
- path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`)
|
||||
- pdf_render (from `Flutter/ephemeral/.symlinks/plugins/pdf_render/macos`)
|
||||
- shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`)
|
||||
- syncfusion_pdfviewer_macos (from `Flutter/ephemeral/.symlinks/plugins/syncfusion_pdfviewer_macos/macos`)
|
||||
- url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`)
|
||||
|
||||
SPEC REPOS:
|
||||
trunk:
|
||||
- AppAuth
|
||||
- AppCheckCore
|
||||
- Firebase
|
||||
- FirebaseAppCheckInterop
|
||||
- FirebaseAuth
|
||||
- FirebaseAuthInterop
|
||||
- FirebaseCore
|
||||
- FirebaseCoreExtension
|
||||
- FirebaseCoreInternal
|
||||
- FirebaseInstallations
|
||||
- FirebaseMessaging
|
||||
- GoogleDataTransport
|
||||
- GoogleSignIn
|
||||
- GoogleUtilities
|
||||
- GTMAppAuth
|
||||
- GTMSessionFetcher
|
||||
- nanopb
|
||||
- PromisesObjC
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
connectivity_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos
|
||||
device_info_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos
|
||||
file_picker:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/file_picker/macos
|
||||
firebase_auth:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/firebase_auth/macos
|
||||
firebase_core:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/firebase_core/macos
|
||||
firebase_messaging:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos
|
||||
flutter_secure_storage_macos:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos
|
||||
FlutterMacOS:
|
||||
:path: Flutter/ephemeral
|
||||
google_sign_in_ios:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/google_sign_in_ios/darwin
|
||||
local_auth_darwin:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/local_auth_darwin/darwin
|
||||
open_file_mac:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos
|
||||
package_info_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos
|
||||
path_provider_foundation:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin
|
||||
pdf_render:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/pdf_render/macos
|
||||
shared_preferences_foundation:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin
|
||||
syncfusion_pdfviewer_macos:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/syncfusion_pdfviewer_macos/macos
|
||||
url_launcher_macos:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
AppAuth: 1c1a8afa7e12f2ec3a294d9882dfa5ab7d3cb063
|
||||
AppCheckCore: cc8fd0a3a230ddd401f326489c99990b013f0c4f
|
||||
connectivity_plus: 4adf20a405e25b42b9c9f87feff8f4b6fde18a4e
|
||||
device_info_plus: 4fb280989f669696856f8b129e4a5e3cd6c48f76
|
||||
file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a
|
||||
Firebase: f07b15ae5a6ec0f93713e30b923d9970d144af3e
|
||||
firebase_auth: 87ea88759d0282ccf1e2afe96f88ff3c07547938
|
||||
firebase_core: e054894ab56033ef9bcbe2d9eac9395e5306e2fc
|
||||
firebase_messaging: 373ac3a56e5aa37bb9aff4127f700aa5973c1168
|
||||
FirebaseAppCheckInterop: f734c802f21fe1da0837708f0f9a27218c8a4ed0
|
||||
FirebaseAuth: 4a2aed737c84114a9d9b33d11ae1b147d6b94889
|
||||
FirebaseAuthInterop: 858e6b754966e70740a4370dd1503dfffe6dbb49
|
||||
FirebaseCore: bb595f3114953664e3c1dc032f008a244147cfd3
|
||||
FirebaseCoreExtension: 7e1f7118ee970e001a8013719fb90950ee5e0018
|
||||
FirebaseCoreInternal: d7f5a043c2cd01a08103ab586587c1468047bca6
|
||||
FirebaseInstallations: ae9f4902cb5bf1d0c5eaa31ec1f4e5495a0714e2
|
||||
FirebaseMessaging: d33971b7bb252745ea6cd31ab190d1a1df4b8ed5
|
||||
flutter_secure_storage_macos: 7f45e30f838cf2659862a4e4e3ee1c347c2b3b54
|
||||
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
|
||||
FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1
|
||||
google_sign_in_ios: 205742c688aea0e64db9da03c33121694a365109
|
||||
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
|
||||
GoogleSignIn: c7f09cfbc85a1abf69187be091997c317cc33b77
|
||||
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
|
||||
GTMAppAuth: 217a876b249c3c585a54fd6f73e6b58c4f5c4238
|
||||
GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
|
||||
local_auth_darwin: d2e8c53ef0c4f43c646462e3415432c4dab3ae19
|
||||
nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
|
||||
open_file_mac: 01874b6d6a2c1485ac9b126d7105b99102dea2cf
|
||||
package_info_plus: f0052d280d17aa382b932f399edf32507174e870
|
||||
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
|
||||
pdf_render: 97e703cf7cd7122ab240825e8c99dc0616c5123c
|
||||
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
|
||||
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
|
||||
syncfusion_pdfviewer_macos: b3b110c68039178ca4105dd03ef38761eca3b36b
|
||||
url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673
|
||||
|
||||
PODFILE CHECKSUM: 7eb978b976557c8c1cd717d8185ec483fd090a82
|
||||
PODFILE CHECKSUM: 54d867c82ac51cbd61b565781b9fada492027009
|
||||
|
||||
COCOAPODS: 1.16.2
|
||||
|
||||
@ -241,6 +241,7 @@
|
||||
33CC110E2044A8840003C045 /* Bundle Framework */,
|
||||
3399D490228B24CF009A79C7 /* ShellScript */,
|
||||
67721E8F298A2F647E244CBA /* [CP] Embed Pods Frameworks */,
|
||||
82AA3A8A3181F6A9D1E2499E /* [CP] Copy Pods Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@ -378,6 +379,23 @@
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
82AA3A8A3181F6A9D1E2499E /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
E94A1CE8DCEF40365836C7DF /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -557,7 +575,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.15;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = macosx;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
@ -639,7 +657,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.15;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
@ -689,7 +707,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.15;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = macosx;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
|
||||
20
pubspec.lock
20
pubspec.lock
@ -700,26 +700,26 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker
|
||||
sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0"
|
||||
sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "10.0.9"
|
||||
version: "11.0.2"
|
||||
leak_tracker_flutter_testing:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker_flutter_testing
|
||||
sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573
|
||||
sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.9"
|
||||
version: "3.0.10"
|
||||
leak_tracker_testing:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker_testing
|
||||
sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3"
|
||||
sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.1"
|
||||
version: "3.0.2"
|
||||
lints:
|
||||
dependency: transitive
|
||||
description:
|
||||
@ -1297,10 +1297,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: test_api
|
||||
sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd
|
||||
sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.7.4"
|
||||
version: "0.7.6"
|
||||
toastification:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@ -1417,10 +1417,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: vector_math
|
||||
sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
|
||||
sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.4"
|
||||
version: "2.2.0"
|
||||
vm_service:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@ -15,8 +15,8 @@
|
||||
the `--base-href` argument provided to `flutter build`.
|
||||
-->
|
||||
<!-- <base href="$FLUTTER_BASE_HREF">-->
|
||||
<!--<base href="/partner/"> <!– Live build: also check env.dart (line 8)–>-->
|
||||
<base href="/nhance/partner/app/"> <!-- Testing build: also check env.dart (line 9) -->
|
||||
<base href="/partner/"> <!-- Live build: also check env.dart (line 8) -->
|
||||
<!--<base href="/nhance/partner/app/"> Testing build: also check env.dart (line 9) -->
|
||||
|
||||
|
||||
<meta charset="UTF-8">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user