🐛 Fix svg site icon cause invalid image data
This commit is contained in:
		| @@ -1,6 +1,7 @@ | |||||||
| import 'package:cached_network_image/cached_network_image.dart'; | import 'package:cached_network_image/cached_network_image.dart'; | ||||||
| import 'package:flutter/material.dart'; | import 'package:flutter/material.dart'; | ||||||
| import 'package:flutter_markdown/flutter_markdown.dart'; | import 'package:flutter_markdown/flutter_markdown.dart'; | ||||||
|  | import 'package:flutter_svg/svg.dart'; | ||||||
| import 'package:get/get.dart'; | import 'package:get/get.dart'; | ||||||
| import 'package:solian/platform.dart'; | import 'package:solian/platform.dart'; | ||||||
| import 'package:solian/providers/link_expander.dart'; | import 'package:solian/providers/link_expander.dart'; | ||||||
| @@ -12,6 +13,9 @@ class LinkExpansion extends StatelessWidget { | |||||||
|   const LinkExpansion({super.key, required this.content}); |   const LinkExpansion({super.key, required this.content}); | ||||||
|  |  | ||||||
|   Widget _buildImage(String url, {double? width, double? height}) { |   Widget _buildImage(String url, {double? width, double? height}) { | ||||||
|  |     if (url.endsWith('svg')) { | ||||||
|  |       return SvgPicture.network(url, width: width, height: height); | ||||||
|  |     } | ||||||
|     return PlatformInfo.canCacheImage |     return PlatformInfo.canCacheImage | ||||||
|         ? CachedNetworkImage(imageUrl: url, width: width, height: height) |         ? CachedNetworkImage(imageUrl: url, width: width, height: height) | ||||||
|         : Image.network(url, width: width, height: height); |         : Image.network(url, width: width, height: height); | ||||||
| @@ -46,7 +50,7 @@ class LinkExpansion extends StatelessWidget { | |||||||
|               } |               } | ||||||
|  |  | ||||||
|               final isRichDescription = [ |               final isRichDescription = [ | ||||||
|                 "solsynth.dev", |                 'solsynth.dev', | ||||||
|               ].contains(Uri.parse(snapshot.data!.url).host); |               ].contains(Uri.parse(snapshot.data!.url).host); | ||||||
|  |  | ||||||
|               return GestureDetector( |               return GestureDetector( | ||||||
|   | |||||||
| @@ -163,6 +163,12 @@ PODS: | |||||||
|     - WebRTC-SDK (= 125.6422.04) |     - WebRTC-SDK (= 125.6422.04) | ||||||
|   - macos_window_utils (1.0.0): |   - macos_window_utils (1.0.0): | ||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|  |   - media_kit_libs_macos_video (1.0.4): | ||||||
|  |     - FlutterMacOS | ||||||
|  |   - media_kit_native_event_loop (1.0.0): | ||||||
|  |     - FlutterMacOS | ||||||
|  |   - media_kit_video (0.0.1): | ||||||
|  |     - FlutterMacOS | ||||||
|   - nanopb (2.30910.0): |   - nanopb (2.30910.0): | ||||||
|     - nanopb/decode (= 2.30910.0) |     - nanopb/decode (= 2.30910.0) | ||||||
|     - nanopb/encode (= 2.30910.0) |     - nanopb/encode (= 2.30910.0) | ||||||
| @@ -180,6 +186,8 @@ PODS: | |||||||
|     - PromisesObjC (= 2.4.0) |     - PromisesObjC (= 2.4.0) | ||||||
|   - protocol_handler_macos (0.0.1): |   - protocol_handler_macos (0.0.1): | ||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|  |   - screen_brightness_macos (0.1.0): | ||||||
|  |     - FlutterMacOS | ||||||
|   - share_plus (0.0.1): |   - share_plus (0.0.1): | ||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|   - shared_preferences_foundation (0.0.1): |   - shared_preferences_foundation (0.0.1): | ||||||
| @@ -190,9 +198,6 @@ PODS: | |||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|   - url_launcher_macos (0.0.1): |   - url_launcher_macos (0.0.1): | ||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|   - video_player_avfoundation (0.0.1): |  | ||||||
|     - Flutter |  | ||||||
|     - FlutterMacOS |  | ||||||
|   - wakelock_plus (0.0.1): |   - wakelock_plus (0.0.1): | ||||||
|     - FlutterMacOS |     - FlutterMacOS | ||||||
|   - WebRTC-SDK (125.6422.04) |   - WebRTC-SDK (125.6422.04) | ||||||
| @@ -212,15 +217,18 @@ DEPENDENCIES: | |||||||
|   - gal (from `Flutter/ephemeral/.symlinks/plugins/gal/darwin`) |   - gal (from `Flutter/ephemeral/.symlinks/plugins/gal/darwin`) | ||||||
|   - livekit_client (from `Flutter/ephemeral/.symlinks/plugins/livekit_client/macos`) |   - livekit_client (from `Flutter/ephemeral/.symlinks/plugins/livekit_client/macos`) | ||||||
|   - macos_window_utils (from `Flutter/ephemeral/.symlinks/plugins/macos_window_utils/macos`) |   - macos_window_utils (from `Flutter/ephemeral/.symlinks/plugins/macos_window_utils/macos`) | ||||||
|  |   - media_kit_libs_macos_video (from `Flutter/ephemeral/.symlinks/plugins/media_kit_libs_macos_video/macos`) | ||||||
|  |   - media_kit_native_event_loop (from `Flutter/ephemeral/.symlinks/plugins/media_kit_native_event_loop/macos`) | ||||||
|  |   - media_kit_video (from `Flutter/ephemeral/.symlinks/plugins/media_kit_video/macos`) | ||||||
|   - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) |   - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) | ||||||
|   - pasteboard (from `Flutter/ephemeral/.symlinks/plugins/pasteboard/macos`) |   - pasteboard (from `Flutter/ephemeral/.symlinks/plugins/pasteboard/macos`) | ||||||
|   - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) |   - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) | ||||||
|   - protocol_handler_macos (from `Flutter/ephemeral/.symlinks/plugins/protocol_handler_macos/macos`) |   - protocol_handler_macos (from `Flutter/ephemeral/.symlinks/plugins/protocol_handler_macos/macos`) | ||||||
|  |   - screen_brightness_macos (from `Flutter/ephemeral/.symlinks/plugins/screen_brightness_macos/macos`) | ||||||
|   - share_plus (from `Flutter/ephemeral/.symlinks/plugins/share_plus/macos`) |   - share_plus (from `Flutter/ephemeral/.symlinks/plugins/share_plus/macos`) | ||||||
|   - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) |   - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) | ||||||
|   - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/darwin`) |   - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/darwin`) | ||||||
|   - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) |   - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) | ||||||
|   - video_player_avfoundation (from `Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin`) |  | ||||||
|   - wakelock_plus (from `Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos`) |   - wakelock_plus (from `Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos`) | ||||||
|  |  | ||||||
| SPEC REPOS: | SPEC REPOS: | ||||||
| @@ -272,6 +280,12 @@ EXTERNAL SOURCES: | |||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/livekit_client/macos |     :path: Flutter/ephemeral/.symlinks/plugins/livekit_client/macos | ||||||
|   macos_window_utils: |   macos_window_utils: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/macos_window_utils/macos |     :path: Flutter/ephemeral/.symlinks/plugins/macos_window_utils/macos | ||||||
|  |   media_kit_libs_macos_video: | ||||||
|  |     :path: Flutter/ephemeral/.symlinks/plugins/media_kit_libs_macos_video/macos | ||||||
|  |   media_kit_native_event_loop: | ||||||
|  |     :path: Flutter/ephemeral/.symlinks/plugins/media_kit_native_event_loop/macos | ||||||
|  |   media_kit_video: | ||||||
|  |     :path: Flutter/ephemeral/.symlinks/plugins/media_kit_video/macos | ||||||
|   package_info_plus: |   package_info_plus: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos |     :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos | ||||||
|   pasteboard: |   pasteboard: | ||||||
| @@ -280,6 +294,8 @@ EXTERNAL SOURCES: | |||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin |     :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin | ||||||
|   protocol_handler_macos: |   protocol_handler_macos: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/protocol_handler_macos/macos |     :path: Flutter/ephemeral/.symlinks/plugins/protocol_handler_macos/macos | ||||||
|  |   screen_brightness_macos: | ||||||
|  |     :path: Flutter/ephemeral/.symlinks/plugins/screen_brightness_macos/macos | ||||||
|   share_plus: |   share_plus: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos |     :path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos | ||||||
|   shared_preferences_foundation: |   shared_preferences_foundation: | ||||||
| @@ -288,8 +304,6 @@ EXTERNAL SOURCES: | |||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/sqflite/darwin |     :path: Flutter/ephemeral/.symlinks/plugins/sqflite/darwin | ||||||
|   url_launcher_macos: |   url_launcher_macos: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos |     :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos | ||||||
|   video_player_avfoundation: |  | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin |  | ||||||
|   wakelock_plus: |   wakelock_plus: | ||||||
|     :path: Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos |     :path: Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos | ||||||
|  |  | ||||||
| @@ -321,6 +335,9 @@ SPEC CHECKSUMS: | |||||||
|   GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15 |   GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15 | ||||||
|   livekit_client: 95f3b71e6545845aa658a6df0a3a62dcc3471d7c |   livekit_client: 95f3b71e6545845aa658a6df0a3a62dcc3471d7c | ||||||
|   macos_window_utils: 933f91f64805e2eb91a5bd057cf97cd097276663 |   macos_window_utils: 933f91f64805e2eb91a5bd057cf97cd097276663 | ||||||
|  |   media_kit_libs_macos_video: b3e2bbec2eef97c285f2b1baa7963c67c753fb82 | ||||||
|  |   media_kit_native_event_loop: 81fd5b45192b72f8b5b69eaf5b540f45777eb8d5 | ||||||
|  |   media_kit_video: c75b07f14d59706c775778e4dd47dd027de8d1e5 | ||||||
|   nanopb: 438bc412db1928dac798aa6fd75726007be04262 |   nanopb: 438bc412db1928dac798aa6fd75726007be04262 | ||||||
|   package_info_plus: fa739dd842b393193c5ca93c26798dff6e3d0e0c |   package_info_plus: fa739dd842b393193c5ca93c26798dff6e3d0e0c | ||||||
|   pasteboard: 9b69dba6fedbb04866be632205d532fe2f6b1d99 |   pasteboard: 9b69dba6fedbb04866be632205d532fe2f6b1d99 | ||||||
| @@ -328,11 +345,11 @@ SPEC CHECKSUMS: | |||||||
|   PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 |   PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 | ||||||
|   PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 |   PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 | ||||||
|   protocol_handler_macos: d10a6c01d6373389ffd2278013ab4c47ed6d6daa |   protocol_handler_macos: d10a6c01d6373389ffd2278013ab4c47ed6d6daa | ||||||
|  |   screen_brightness_macos: 2d6d3af2165592d9a55ffcd95b7550970e41ebda | ||||||
|   share_plus: 36537c04ce0c3e3f5bd297ce4318b6d5ee5fd6cf |   share_plus: 36537c04ce0c3e3f5bd297ce4318b6d5ee5fd6cf | ||||||
|   shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78 |   shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78 | ||||||
|   sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec |   sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec | ||||||
|   url_launcher_macos: 5f437abeda8c85500ceb03f5c1938a8c5a705399 |   url_launcher_macos: 5f437abeda8c85500ceb03f5c1938a8c5a705399 | ||||||
|   video_player_avfoundation: 7c6c11d8470e1675df7397027218274b6d2360b3 |  | ||||||
|   wakelock_plus: 4783562c9a43d209c458cb9b30692134af456269 |   wakelock_plus: 4783562c9a43d209c458cb9b30692134af456269 | ||||||
|   WebRTC-SDK: c3d69a87e7185fad3568f6f3cff7c9ac5890acf3 |   WebRTC-SDK: c3d69a87e7185fad3568f6f3cff7c9ac5890acf3 | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										40
									
								
								pubspec.lock
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								pubspec.lock
									
									
									
									
									
								
							| @@ -787,6 +787,14 @@ packages: | |||||||
|       url: "https://pub.dev" |       url: "https://pub.dev" | ||||||
|     source: hosted |     source: hosted | ||||||
|     version: "0.7.0" |     version: "0.7.0" | ||||||
|  |   flutter_svg: | ||||||
|  |     dependency: "direct main" | ||||||
|  |     description: | ||||||
|  |       name: flutter_svg | ||||||
|  |       sha256: "7b4ca6cf3304575fe9c8ec64813c8d02ee41d2afe60bcfe0678bcb5375d596a2" | ||||||
|  |       url: "https://pub.dev" | ||||||
|  |     source: hosted | ||||||
|  |     version: "2.0.10+1" | ||||||
|   flutter_test: |   flutter_test: | ||||||
|     dependency: "direct dev" |     dependency: "direct dev" | ||||||
|     description: flutter |     description: flutter | ||||||
| @@ -1293,6 +1301,14 @@ packages: | |||||||
|       url: "https://pub.dev" |       url: "https://pub.dev" | ||||||
|     source: hosted |     source: hosted | ||||||
|     version: "1.9.0" |     version: "1.9.0" | ||||||
|  |   path_parsing: | ||||||
|  |     dependency: transitive | ||||||
|  |     description: | ||||||
|  |       name: path_parsing | ||||||
|  |       sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf | ||||||
|  |       url: "https://pub.dev" | ||||||
|  |     source: hosted | ||||||
|  |     version: "1.0.1" | ||||||
|   path_provider: |   path_provider: | ||||||
|     dependency: transitive |     dependency: transitive | ||||||
|     description: |     description: | ||||||
| @@ -1978,6 +1994,30 @@ packages: | |||||||
|       url: "https://pub.dev" |       url: "https://pub.dev" | ||||||
|     source: hosted |     source: hosted | ||||||
|     version: "4.4.2" |     version: "4.4.2" | ||||||
|  |   vector_graphics: | ||||||
|  |     dependency: transitive | ||||||
|  |     description: | ||||||
|  |       name: vector_graphics | ||||||
|  |       sha256: "32c3c684e02f9bc0afb0ae0aa653337a2fe022e8ab064bcd7ffda27a74e288e3" | ||||||
|  |       url: "https://pub.dev" | ||||||
|  |     source: hosted | ||||||
|  |     version: "1.1.11+1" | ||||||
|  |   vector_graphics_codec: | ||||||
|  |     dependency: transitive | ||||||
|  |     description: | ||||||
|  |       name: vector_graphics_codec | ||||||
|  |       sha256: c86987475f162fadff579e7320c7ddda04cd2fdeffbe1129227a85d9ac9e03da | ||||||
|  |       url: "https://pub.dev" | ||||||
|  |     source: hosted | ||||||
|  |     version: "1.1.11+1" | ||||||
|  |   vector_graphics_compiler: | ||||||
|  |     dependency: transitive | ||||||
|  |     description: | ||||||
|  |       name: vector_graphics_compiler | ||||||
|  |       sha256: "12faff3f73b1741a36ca7e31b292ddeb629af819ca9efe9953b70bd63fc8cd81" | ||||||
|  |       url: "https://pub.dev" | ||||||
|  |     source: hosted | ||||||
|  |     version: "1.1.11+1" | ||||||
|   vector_math: |   vector_math: | ||||||
|     dependency: transitive |     dependency: transitive | ||||||
|     description: |     description: | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ name: solian | |||||||
| description: "The Solar Network App" | description: "The Solar Network App" | ||||||
| publish_to: "none" | publish_to: "none" | ||||||
|  |  | ||||||
| version: 1.2.1+19 | version: 1.2.1+20 | ||||||
|  |  | ||||||
| environment: | environment: | ||||||
|   sdk: ">=3.3.4 <4.0.0" |   sdk: ">=3.3.4 <4.0.0" | ||||||
| @@ -71,6 +71,7 @@ dependencies: | |||||||
|   media_kit: ^1.1.10+1 |   media_kit: ^1.1.10+1 | ||||||
|   media_kit_video: ^1.2.4 |   media_kit_video: ^1.2.4 | ||||||
|   media_kit_libs_video: ^1.0.4 |   media_kit_libs_video: ^1.0.4 | ||||||
|  |   flutter_svg: ^2.0.10+1 | ||||||
|  |  | ||||||
| dev_dependencies: | dev_dependencies: | ||||||
|   flutter_test: |   flutter_test: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user