Files
MWClash/lib/fragments/dashboard/widgets/intranet_ip.dart
chen08209 a8c0519ffe Add rule override
Optimize more details
2025-04-06 20:13:53 +08:00

67 lines
2.2 KiB
Dart

import 'package:fl_clash/common/common.dart';
import 'package:fl_clash/providers/app.dart';
import 'package:fl_clash/state.dart';
import 'package:fl_clash/widgets/widgets.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
class IntranetIP extends StatelessWidget {
const IntranetIP({super.key});
@override
Widget build(BuildContext context) {
return SizedBox(
height: getWidgetHeight(1),
child: CommonCard(
info: Info(
label: appLocalizations.intranetIP,
iconData: Icons.devices,
),
onPressed: () {},
child: Container(
padding: baseInfoEdgeInsets.copyWith(
top: 0,
),
child: Column(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end,
children: [
SizedBox(
height: globalState.measure.bodyMediumHeight + 2,
child: Consumer(
builder: (_, ref, __) {
final localIp = ref.watch(localIpProvider);
return FadeThroughBox(
child: localIp != null
? TooltipText(
text: Text(
localIp.isNotEmpty
? localIp
: appLocalizations.noNetwork,
style: context.textTheme.bodyMedium?.toLight
.adjustSize(1),
maxLines: 1,
overflow: TextOverflow.ellipsis,
),
)
: Container(
padding: EdgeInsets.all(2),
child: AspectRatio(
aspectRatio: 1,
child: CircularProgressIndicator(
strokeWidth: 2,
),
),
),
);
},
),
)
],
),
),
),
);
}
}