added cargo files

This commit is contained in:
2026-03-03 10:57:43 -05:00
parent 478a90e01b
commit 169df46bc2
813 changed files with 227273 additions and 9 deletions

View File

@@ -0,0 +1,50 @@
// Copyright 2020 Ben Hills and the project contributors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:flutter/material.dart';
import 'package:flutter_html/flutter_html.dart';
import 'package:flutter_html_svg/flutter_html_svg.dart';
import 'package:flutter_html_table/flutter_html_table.dart';
import 'package:url_launcher/url_launcher.dart';
/// This class is a simple, common wrapper around the flutter_html Html widget.
///
/// This wrapper allows us to remove some of the HTML tags which can cause rendering
/// issues when viewing podcast descriptions on a mobile device.
class PodcastHtml extends StatelessWidget {
final String content;
final FontSize? fontSize;
const PodcastHtml({
super.key,
required this.content,
this.fontSize,
});
@override
Widget build(BuildContext context) {
return Html(
data: content,
extensions: const [
SvgHtmlExtension(),
TableHtmlExtension(),
],
style: {
'html': Style(
fontSize: FontSize(16.25),
lineHeight: LineHeight.percent(110),
),
'p': Style(
margin: Margins.only(
top: 0,
bottom: 12,
),
),
},
onLinkTap: (url, _, __) => canLaunchUrl(Uri.parse(url!)).then((value) => launchUrl(
Uri.parse(url),
mode: LaunchMode.externalApplication,
)),
);
}
}