THATMobile/alice/lib/ui/widget/alice_base_call_details_widget.dart
2026-02-26 10:39:42 +07:00

43 lines
1.2 KiB
Dart

import 'dart:convert';
import 'package:alice/helper/alice_conversion_helper.dart';
import 'package:alice/utils/alice_parser.dart';
import 'package:flutter/material.dart';
abstract class AliceBaseCallDetailsWidgetState<T extends StatefulWidget>
extends State<T> {
final JsonEncoder encoder = const JsonEncoder.withIndent(' ');
Widget getListRow(String name, String value) {
return Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SelectableText(name,
style: const TextStyle(fontWeight: FontWeight.bold)),
const Padding(
padding: EdgeInsets.only(left: 5),
),
Flexible(
child: SelectableText(
value,
),
),
const Padding(
padding: EdgeInsets.only(bottom: 18),
)
],
);
}
String formatBytes(int bytes) => AliceConversionHelper.formatBytes(bytes);
String formatDuration(int duration) =>
AliceConversionHelper.formatTime(duration);
String formatBody(dynamic body, String? contentType) =>
AliceParser.formatBody(body, contentType);
String? getContentType(Map<String, dynamic>? headers) =>
AliceParser.getContentType(headers);
}