Showing
25 changed files
with
645 additions
and
56 deletions
@@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' | @@ -26,7 +26,7 @@ apply plugin: 'kotlin-android' | ||
26 | apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" | 26 | apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" |
27 | 27 | ||
28 | android { | 28 | android { |
29 | - compileSdkVersion flutter.compileSdkVersion | 29 | + compileSdkVersion 33 |
30 | ndkVersion flutter.ndkVersion | 30 | ndkVersion flutter.ndkVersion |
31 | 31 | ||
32 | compileOptions { | 32 | compileOptions { |
1 | <manifest xmlns:android="http://schemas.android.com/apk/res/android" | 1 | <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
2 | package="com.example.example"> | 2 | package="com.example.example"> |
3 | + <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> | ||
4 | + <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> | ||
5 | + <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" /> | ||
6 | + <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" /> | ||
7 | + <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" /> | ||
3 | <application | 8 | <application |
4 | android:label="example" | 9 | android:label="example" |
5 | android:name="${applicationName}" | 10 | android:name="${applicationName}" |
tex_markdown/example/ios/Podfile
0 → 100644
1 | +# Uncomment this line to define a global platform for your project | ||
2 | +# platform :ios, '11.0' | ||
3 | + | ||
4 | +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. | ||
5 | +ENV['COCOAPODS_DISABLE_STATS'] = 'true' | ||
6 | + | ||
7 | +project 'Runner', { | ||
8 | + 'Debug' => :debug, | ||
9 | + 'Profile' => :release, | ||
10 | + 'Release' => :release, | ||
11 | +} | ||
12 | + | ||
13 | +def flutter_root | ||
14 | + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) | ||
15 | + unless File.exist?(generated_xcode_build_settings_path) | ||
16 | + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" | ||
17 | + end | ||
18 | + | ||
19 | + File.foreach(generated_xcode_build_settings_path) do |line| | ||
20 | + matches = line.match(/FLUTTER_ROOT\=(.*)/) | ||
21 | + return matches[1].strip if matches | ||
22 | + end | ||
23 | + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" | ||
24 | +end | ||
25 | + | ||
26 | +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) | ||
27 | + | ||
28 | +flutter_ios_podfile_setup | ||
29 | + | ||
30 | +target 'Runner' do | ||
31 | + use_frameworks! | ||
32 | + use_modular_headers! | ||
33 | + | ||
34 | + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) | ||
35 | +end | ||
36 | + | ||
37 | +post_install do |installer| | ||
38 | + installer.pods_project.targets.each do |target| | ||
39 | + flutter_additional_ios_build_settings(target) | ||
40 | + end | ||
41 | +end |
1 | import 'dart:developer'; | 1 | import 'dart:developer'; |
2 | +import 'dart:io'; | ||
2 | 3 | ||
4 | +import 'package:file_picker/file_picker.dart'; | ||
3 | import 'package:flutter/material.dart'; | 5 | import 'package:flutter/material.dart'; |
4 | -import 'package:flutter/services.dart'; | 6 | +// import 'package:flutter/services.dart'; |
5 | import 'package:tex_markdown/tex_markdown.dart'; | 7 | import 'package:tex_markdown/tex_markdown.dart'; |
8 | +import 'package:url_launcher/url_launcher_string.dart'; | ||
6 | 9 | ||
7 | void main() { | 10 | void main() { |
8 | runApp(const MyApp()); | 11 | runApp(const MyApp()); |
@@ -100,7 +103,9 @@ $hello$ | @@ -100,7 +103,9 @@ $hello$ | ||
100 | ), | 103 | ), |
101 | ], | 104 | ], |
102 | ), | 105 | ), |
103 | - body: Column( | 106 | + body: Stack( |
107 | + children: [ | ||
108 | + Column( | ||
104 | children: [ | 109 | children: [ |
105 | Expanded( | 110 | Expanded( |
106 | child: ListView( | 111 | child: ListView( |
@@ -109,11 +114,14 @@ $hello$ | @@ -109,11 +114,14 @@ $hello$ | ||
109 | animation: _controller, | 114 | animation: _controller, |
110 | builder: (context, _) { | 115 | builder: (context, _) { |
111 | return Material( | 116 | return Material( |
112 | - color: Theme.of(context).colorScheme.surfaceVariant, | ||
113 | - shape: const RoundedRectangleBorder( | ||
114 | - side: BorderSide(width: 1), | ||
115 | - ), | ||
116 | - child: LayoutBuilder(builder: (context, constraints) { | 117 | + // color: Theme.of(context).colorScheme.surfaceVariant, |
118 | + shape: RoundedRectangleBorder( | ||
119 | + side: BorderSide( | ||
120 | + width: 1, | ||
121 | + color: Theme.of(context).colorScheme.outline), | ||
122 | + ), | ||
123 | + child: | ||
124 | + LayoutBuilder(builder: (context, constraints) { | ||
117 | return SingleChildScrollView( | 125 | return SingleChildScrollView( |
118 | scrollDirection: Axis.horizontal, | 126 | scrollDirection: Axis.horizontal, |
119 | child: TexMarkdown( | 127 | child: TexMarkdown( |
@@ -135,9 +143,7 @@ $hello$ | @@ -135,9 +143,7 @@ $hello$ | ||
135 | ), | 143 | ), |
136 | ConstrainedBox( | 144 | ConstrainedBox( |
137 | constraints: const BoxConstraints(maxHeight: 200), | 145 | constraints: const BoxConstraints(maxHeight: 200), |
138 | - child: Stack( | ||
139 | - children: [ | ||
140 | - Padding( | 146 | + child: Padding( |
141 | padding: const EdgeInsets.all(8.0), | 147 | padding: const EdgeInsets.all(8.0), |
142 | child: TextField( | 148 | child: TextField( |
143 | decoration: const InputDecoration( | 149 | decoration: const InputDecoration( |
@@ -147,26 +153,37 @@ $hello$ | @@ -147,26 +153,37 @@ $hello$ | ||
147 | controller: _controller, | 153 | controller: _controller, |
148 | ), | 154 | ), |
149 | ), | 155 | ), |
150 | - IconButton( | ||
151 | - onPressed: () { | 156 | + ), |
157 | + ], | ||
158 | + ), | ||
159 | + Align( | ||
160 | + alignment: Alignment.topRight, | ||
161 | + child: IconButton( | ||
162 | + onPressed: () async { | ||
152 | String html = '''<!DOCTYPE html> | 163 | String html = '''<!DOCTYPE html> |
153 | -<html lang="en"> | ||
154 | -<head> | ||
155 | -<meta charset="UTF-8"><title>markdown</title><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.css" integrity="sha384-zB1R0rpPzHqg7Kpt0Aljp8JPLqbXI3bhnPWROx27a9N0Ll6ZP/+DiW/UqRcLbRjq" crossorigin="anonymous"> | ||
156 | -<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.js" integrity="sha384-y23I5Q6l+B6vatafAwxRu/0oK/79VlbSz7Q9aiSZUvyWYIYsd+qj+o24G5ZU2zJz" crossorigin="anonymous"></script> | ||
157 | -<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/auto-render.min.js" integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script> | ||
158 | -</head> | ||
159 | -<body> | ||
160 | -${TexMarkdown.toHtml(_controller.text)} | ||
161 | -</body> | ||
162 | -</html> | ||
163 | -'''; | ||
164 | - Clipboard.setData(ClipboardData(text: html)); | 164 | + <html lang="en"> |
165 | + <head> | ||
166 | + <meta charset="UTF-8"><title>markdown</title> | ||
167 | + </head> | ||
168 | + <body> | ||
169 | + ${TexMarkdown.toHtml(_controller.text)} | ||
170 | + </body> | ||
171 | + </html> | ||
172 | + '''; | ||
173 | + String? path = await FilePicker.platform.saveFile(); | ||
174 | + if (path == null) { | ||
175 | + return; | ||
176 | + } | ||
177 | + File(path).writeAsStringSync(html); | ||
178 | + launchUrlString( | ||
179 | + "file:${Uri( | ||
180 | + path: path, | ||
181 | + ).path}", | ||
182 | + mode: LaunchMode.externalApplication, | ||
183 | + ); | ||
165 | }, | 184 | }, |
166 | icon: const Icon(Icons.html), | 185 | icon: const Icon(Icons.html), |
167 | ), | 186 | ), |
168 | - ], | ||
169 | - ), | ||
170 | ), | 187 | ), |
171 | ], | 188 | ], |
172 | ), | 189 | ), |
@@ -6,6 +6,14 @@ | @@ -6,6 +6,14 @@ | ||
6 | 6 | ||
7 | #include "generated_plugin_registrant.h" | 7 | #include "generated_plugin_registrant.h" |
8 | 8 | ||
9 | +#include <printing/printing_plugin.h> | ||
10 | +#include <url_launcher_linux/url_launcher_plugin.h> | ||
9 | 11 | ||
10 | void fl_register_plugins(FlPluginRegistry* registry) { | 12 | void fl_register_plugins(FlPluginRegistry* registry) { |
13 | + g_autoptr(FlPluginRegistrar) printing_registrar = | ||
14 | + fl_plugin_registry_get_registrar_for_plugin(registry, "PrintingPlugin"); | ||
15 | + printing_plugin_register_with_registrar(printing_registrar); | ||
16 | + g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar = | ||
17 | + fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin"); | ||
18 | + url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar); | ||
11 | } | 19 | } |
@@ -5,6 +5,12 @@ | @@ -5,6 +5,12 @@ | ||
5 | import FlutterMacOS | 5 | import FlutterMacOS |
6 | import Foundation | 6 | import Foundation |
7 | 7 | ||
8 | +import path_provider_foundation | ||
9 | +import printing | ||
10 | +import url_launcher_macos | ||
8 | 11 | ||
9 | func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { | 12 | func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { |
13 | + PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) | ||
14 | + PrintingPlugin.register(with: registry.registrar(forPlugin: "PrintingPlugin")) | ||
15 | + UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) | ||
10 | } | 16 | } |
tex_markdown/example/macos/Podfile
0 → 100644
1 | +platform :osx, '10.14' | ||
2 | + | ||
3 | +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. | ||
4 | +ENV['COCOAPODS_DISABLE_STATS'] = 'true' | ||
5 | + | ||
6 | +project 'Runner', { | ||
7 | + 'Debug' => :debug, | ||
8 | + 'Profile' => :release, | ||
9 | + 'Release' => :release, | ||
10 | +} | ||
11 | + | ||
12 | +def flutter_root | ||
13 | + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) | ||
14 | + unless File.exist?(generated_xcode_build_settings_path) | ||
15 | + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" | ||
16 | + end | ||
17 | + | ||
18 | + File.foreach(generated_xcode_build_settings_path) do |line| | ||
19 | + matches = line.match(/FLUTTER_ROOT\=(.*)/) | ||
20 | + return matches[1].strip if matches | ||
21 | + end | ||
22 | + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" | ||
23 | +end | ||
24 | + | ||
25 | +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) | ||
26 | + | ||
27 | +flutter_macos_podfile_setup | ||
28 | + | ||
29 | +target 'Runner' do | ||
30 | + use_frameworks! | ||
31 | + use_modular_headers! | ||
32 | + | ||
33 | + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) | ||
34 | +end | ||
35 | + | ||
36 | +post_install do |installer| | ||
37 | + installer.pods_project.targets.each do |target| | ||
38 | + flutter_additional_macos_build_settings(target) | ||
39 | + end | ||
40 | +end |
tex_markdown/example/macos/Podfile.lock
0 → 100644
1 | +PODS: | ||
2 | + - FlutterMacOS (1.0.0) | ||
3 | + - path_provider_foundation (0.0.1): | ||
4 | + - Flutter | ||
5 | + - FlutterMacOS | ||
6 | + - printing (1.0.0): | ||
7 | + - FlutterMacOS | ||
8 | + - url_launcher_macos (0.0.1): | ||
9 | + - FlutterMacOS | ||
10 | + | ||
11 | +DEPENDENCIES: | ||
12 | + - FlutterMacOS (from `Flutter/ephemeral`) | ||
13 | + - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/macos`) | ||
14 | + - printing (from `Flutter/ephemeral/.symlinks/plugins/printing/macos`) | ||
15 | + - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) | ||
16 | + | ||
17 | +EXTERNAL SOURCES: | ||
18 | + FlutterMacOS: | ||
19 | + :path: Flutter/ephemeral | ||
20 | + path_provider_foundation: | ||
21 | + :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/macos | ||
22 | + printing: | ||
23 | + :path: Flutter/ephemeral/.symlinks/plugins/printing/macos | ||
24 | + url_launcher_macos: | ||
25 | + :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos | ||
26 | + | ||
27 | +SPEC CHECKSUMS: | ||
28 | + FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 | ||
29 | + path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9 | ||
30 | + printing: 1dd6a1fce2209ec240698e2439a4adbb9b427637 | ||
31 | + url_launcher_macos: 5335912b679c073563f29d89d33d10d459f95451 | ||
32 | + | ||
33 | +PODFILE CHECKSUM: 353c8bcc5d5b0994e508d035b5431cfe18c1dea7 | ||
34 | + | ||
35 | +COCOAPODS: 1.12.0 |
@@ -26,6 +26,7 @@ | @@ -26,6 +26,7 @@ | ||
26 | 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; | 26 | 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; |
27 | 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; | 27 | 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; |
28 | 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; | 28 | 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; |
29 | + 3CE72A5CF2F5B5C6FEE41814 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC716F271CF5E3E2D78A3D3E /* Pods_Runner.framework */; }; | ||
29 | /* End PBXBuildFile section */ | 30 | /* End PBXBuildFile section */ |
30 | 31 | ||
31 | /* Begin PBXContainerItemProxy section */ | 32 | /* Begin PBXContainerItemProxy section */ |
@@ -54,7 +55,7 @@ | @@ -54,7 +55,7 @@ | ||
54 | /* Begin PBXFileReference section */ | 55 | /* Begin PBXFileReference section */ |
55 | 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; | 56 | 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; |
56 | 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; | 57 | 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; |
57 | - 33CC10ED2044A3C60003C045 /* example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; | 58 | + 33CC10ED2044A3C60003C045 /* example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = example.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
58 | 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | 59 | 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; |
59 | 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; }; | 60 | 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; }; |
60 | 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; }; | 61 | 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; }; |
@@ -66,8 +67,12 @@ | @@ -66,8 +67,12 @@ | ||
66 | 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; | 67 | 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; |
67 | 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; | 68 | 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; |
68 | 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; | 69 | 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; |
70 | + 44106D5785CEE3B2A33F304C /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
69 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; | 71 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; |
70 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; | 72 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; |
73 | + 9ADBE029EC88784FF4319A73 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | ||
74 | + BC716F271CF5E3E2D78A3D3E /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
75 | + D2DFD7B82907F8D8F17CE275 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
71 | /* End PBXFileReference section */ | 76 | /* End PBXFileReference section */ |
72 | 77 | ||
73 | /* Begin PBXFrameworksBuildPhase section */ | 78 | /* Begin PBXFrameworksBuildPhase section */ |
@@ -75,6 +80,7 @@ | @@ -75,6 +80,7 @@ | ||
75 | isa = PBXFrameworksBuildPhase; | 80 | isa = PBXFrameworksBuildPhase; |
76 | buildActionMask = 2147483647; | 81 | buildActionMask = 2147483647; |
77 | files = ( | 82 | files = ( |
83 | + 3CE72A5CF2F5B5C6FEE41814 /* Pods_Runner.framework in Frameworks */, | ||
78 | ); | 84 | ); |
79 | runOnlyForDeploymentPostprocessing = 0; | 85 | runOnlyForDeploymentPostprocessing = 0; |
80 | }; | 86 | }; |
@@ -99,6 +105,7 @@ | @@ -99,6 +105,7 @@ | ||
99 | 33CEB47122A05771004F2AC0 /* Flutter */, | 105 | 33CEB47122A05771004F2AC0 /* Flutter */, |
100 | 33CC10EE2044A3C60003C045 /* Products */, | 106 | 33CC10EE2044A3C60003C045 /* Products */, |
101 | D73912EC22F37F3D000D13A0 /* Frameworks */, | 107 | D73912EC22F37F3D000D13A0 /* Frameworks */, |
108 | + 6815E320FF73189B6052A178 /* Pods */, | ||
102 | ); | 109 | ); |
103 | sourceTree = "<group>"; | 110 | sourceTree = "<group>"; |
104 | }; | 111 | }; |
@@ -145,9 +152,21 @@ | @@ -145,9 +152,21 @@ | ||
145 | path = Runner; | 152 | path = Runner; |
146 | sourceTree = "<group>"; | 153 | sourceTree = "<group>"; |
147 | }; | 154 | }; |
155 | + 6815E320FF73189B6052A178 /* Pods */ = { | ||
156 | + isa = PBXGroup; | ||
157 | + children = ( | ||
158 | + 44106D5785CEE3B2A33F304C /* Pods-Runner.debug.xcconfig */, | ||
159 | + D2DFD7B82907F8D8F17CE275 /* Pods-Runner.release.xcconfig */, | ||
160 | + 9ADBE029EC88784FF4319A73 /* Pods-Runner.profile.xcconfig */, | ||
161 | + ); | ||
162 | + name = Pods; | ||
163 | + path = Pods; | ||
164 | + sourceTree = "<group>"; | ||
165 | + }; | ||
148 | D73912EC22F37F3D000D13A0 /* Frameworks */ = { | 166 | D73912EC22F37F3D000D13A0 /* Frameworks */ = { |
149 | isa = PBXGroup; | 167 | isa = PBXGroup; |
150 | children = ( | 168 | children = ( |
169 | + BC716F271CF5E3E2D78A3D3E /* Pods_Runner.framework */, | ||
151 | ); | 170 | ); |
152 | name = Frameworks; | 171 | name = Frameworks; |
153 | sourceTree = "<group>"; | 172 | sourceTree = "<group>"; |
@@ -159,11 +178,13 @@ | @@ -159,11 +178,13 @@ | ||
159 | isa = PBXNativeTarget; | 178 | isa = PBXNativeTarget; |
160 | buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; | 179 | buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; |
161 | buildPhases = ( | 180 | buildPhases = ( |
181 | + BBFFFF68DE12258F43860630 /* [CP] Check Pods Manifest.lock */, | ||
162 | 33CC10E92044A3C60003C045 /* Sources */, | 182 | 33CC10E92044A3C60003C045 /* Sources */, |
163 | 33CC10EA2044A3C60003C045 /* Frameworks */, | 183 | 33CC10EA2044A3C60003C045 /* Frameworks */, |
164 | 33CC10EB2044A3C60003C045 /* Resources */, | 184 | 33CC10EB2044A3C60003C045 /* Resources */, |
165 | 33CC110E2044A8840003C045 /* Bundle Framework */, | 185 | 33CC110E2044A8840003C045 /* Bundle Framework */, |
166 | 3399D490228B24CF009A79C7 /* ShellScript */, | 186 | 3399D490228B24CF009A79C7 /* ShellScript */, |
187 | + D5407F664B55A53226075BEA /* [CP] Embed Pods Frameworks */, | ||
167 | ); | 188 | ); |
168 | buildRules = ( | 189 | buildRules = ( |
169 | ); | 190 | ); |
@@ -271,6 +292,45 @@ | @@ -271,6 +292,45 @@ | ||
271 | shellPath = /bin/sh; | 292 | shellPath = /bin/sh; |
272 | shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; | 293 | shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; |
273 | }; | 294 | }; |
295 | + BBFFFF68DE12258F43860630 /* [CP] Check Pods Manifest.lock */ = { | ||
296 | + isa = PBXShellScriptBuildPhase; | ||
297 | + buildActionMask = 2147483647; | ||
298 | + files = ( | ||
299 | + ); | ||
300 | + inputFileListPaths = ( | ||
301 | + ); | ||
302 | + inputPaths = ( | ||
303 | + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", | ||
304 | + "${PODS_ROOT}/Manifest.lock", | ||
305 | + ); | ||
306 | + name = "[CP] Check Pods Manifest.lock"; | ||
307 | + outputFileListPaths = ( | ||
308 | + ); | ||
309 | + outputPaths = ( | ||
310 | + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | ||
311 | + ); | ||
312 | + runOnlyForDeploymentPostprocessing = 0; | ||
313 | + shellPath = /bin/sh; | ||
314 | + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | ||
315 | + showEnvVarsInLog = 0; | ||
316 | + }; | ||
317 | + D5407F664B55A53226075BEA /* [CP] Embed Pods Frameworks */ = { | ||
318 | + isa = PBXShellScriptBuildPhase; | ||
319 | + buildActionMask = 2147483647; | ||
320 | + files = ( | ||
321 | + ); | ||
322 | + inputFileListPaths = ( | ||
323 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", | ||
324 | + ); | ||
325 | + name = "[CP] Embed Pods Frameworks"; | ||
326 | + outputFileListPaths = ( | ||
327 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", | ||
328 | + ); | ||
329 | + runOnlyForDeploymentPostprocessing = 0; | ||
330 | + shellPath = /bin/sh; | ||
331 | + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; | ||
332 | + showEnvVarsInLog = 0; | ||
333 | + }; | ||
274 | /* End PBXShellScriptBuildPhase section */ | 334 | /* End PBXShellScriptBuildPhase section */ |
275 | 335 | ||
276 | /* Begin PBXSourcesBuildPhase section */ | 336 | /* Begin PBXSourcesBuildPhase section */ |
@@ -8,5 +8,13 @@ | @@ -8,5 +8,13 @@ | ||
8 | <true/> | 8 | <true/> |
9 | <key>com.apple.security.network.server</key> | 9 | <key>com.apple.security.network.server</key> |
10 | <true/> | 10 | <true/> |
11 | + <key>com.apple.security.network.client</key> | ||
12 | + <true/> | ||
13 | + <key>com.apple.security.print</key> | ||
14 | + <true/> | ||
15 | + <key>com.apple.security.app-sandbox</key> | ||
16 | + <true/> | ||
17 | + <key>com.apple.security.files.user-selected.read-write</key> | ||
18 | + <true/> | ||
11 | </dict> | 19 | </dict> |
12 | </plist> | 20 | </plist> |
@@ -4,5 +4,9 @@ | @@ -4,5 +4,9 @@ | ||
4 | <dict> | 4 | <dict> |
5 | <key>com.apple.security.app-sandbox</key> | 5 | <key>com.apple.security.app-sandbox</key> |
6 | <true/> | 6 | <true/> |
7 | + <key>com.apple.security.network.client</key> | ||
8 | + <true/> | ||
9 | + <key>com.apple.security.print</key> | ||
10 | + <true/> | ||
7 | </dict> | 11 | </dict> |
8 | </plist> | 12 | </plist> |
1 | # Generated by pub | 1 | # Generated by pub |
2 | # See https://dart.dev/tools/pub/glossary#lockfile | 2 | # See https://dart.dev/tools/pub/glossary#lockfile |
3 | packages: | 3 | packages: |
4 | + archive: | ||
5 | + dependency: transitive | ||
6 | + description: | ||
7 | + name: archive | ||
8 | + sha256: "0c8368c9b3f0abbc193b9d6133649a614204b528982bebc7026372d61677ce3a" | ||
9 | + url: "https://pub.dev" | ||
10 | + source: hosted | ||
11 | + version: "3.3.7" | ||
4 | async: | 12 | async: |
5 | dependency: transitive | 13 | dependency: transitive |
6 | description: | 14 | description: |
@@ -9,6 +17,22 @@ packages: | @@ -9,6 +17,22 @@ packages: | ||
9 | url: "https://pub.dev" | 17 | url: "https://pub.dev" |
10 | source: hosted | 18 | source: hosted |
11 | version: "2.10.0" | 19 | version: "2.10.0" |
20 | + barcode: | ||
21 | + dependency: transitive | ||
22 | + description: | ||
23 | + name: barcode | ||
24 | + sha256: "52570564684bbb0240a9f1fdb6bad12adc5e0540103c1c96d6dd550bd928b1c9" | ||
25 | + url: "https://pub.dev" | ||
26 | + source: hosted | ||
27 | + version: "2.2.3" | ||
28 | + bidi: | ||
29 | + dependency: transitive | ||
30 | + description: | ||
31 | + name: bidi | ||
32 | + sha256: dc00274c7edabae2ab30c676e736ea1eb0b1b7a1b436cb5fe372e431ccb39ab0 | ||
33 | + url: "https://pub.dev" | ||
34 | + source: hosted | ||
35 | + version: "2.0.6" | ||
12 | boolean_selector: | 36 | boolean_selector: |
13 | dependency: transitive | 37 | dependency: transitive |
14 | description: | 38 | description: |
@@ -41,6 +65,22 @@ packages: | @@ -41,6 +65,22 @@ packages: | ||
41 | url: "https://pub.dev" | 65 | url: "https://pub.dev" |
42 | source: hosted | 66 | source: hosted |
43 | version: "1.17.0" | 67 | version: "1.17.0" |
68 | + convert: | ||
69 | + dependency: transitive | ||
70 | + description: | ||
71 | + name: convert | ||
72 | + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" | ||
73 | + url: "https://pub.dev" | ||
74 | + source: hosted | ||
75 | + version: "3.1.1" | ||
76 | + crypto: | ||
77 | + dependency: transitive | ||
78 | + description: | ||
79 | + name: crypto | ||
80 | + sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 | ||
81 | + url: "https://pub.dev" | ||
82 | + source: hosted | ||
83 | + version: "3.0.2" | ||
44 | cupertino_icons: | 84 | cupertino_icons: |
45 | dependency: "direct main" | 85 | dependency: "direct main" |
46 | description: | 86 | description: |
@@ -57,11 +97,43 @@ packages: | @@ -57,11 +97,43 @@ packages: | ||
57 | url: "https://pub.dev" | 97 | url: "https://pub.dev" |
58 | source: hosted | 98 | source: hosted |
59 | version: "1.3.1" | 99 | version: "1.3.1" |
100 | + ffi: | ||
101 | + dependency: transitive | ||
102 | + description: | ||
103 | + name: ffi | ||
104 | + sha256: a38574032c5f1dd06c4aee541789906c12ccaab8ba01446e800d9c5b79c4a978 | ||
105 | + url: "https://pub.dev" | ||
106 | + source: hosted | ||
107 | + version: "2.0.1" | ||
108 | + file: | ||
109 | + dependency: transitive | ||
110 | + description: | ||
111 | + name: file | ||
112 | + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" | ||
113 | + url: "https://pub.dev" | ||
114 | + source: hosted | ||
115 | + version: "6.1.4" | ||
116 | + file_picker: | ||
117 | + dependency: "direct main" | ||
118 | + description: | ||
119 | + name: file_picker | ||
120 | + sha256: b85eb92b175767fdaa0c543bf3b0d1f610fe966412ea72845fe5ba7801e763ff | ||
121 | + url: "https://pub.dev" | ||
122 | + source: hosted | ||
123 | + version: "5.2.10" | ||
60 | flutter: | 124 | flutter: |
61 | dependency: "direct main" | 125 | dependency: "direct main" |
62 | description: flutter | 126 | description: flutter |
63 | source: sdk | 127 | source: sdk |
64 | version: "0.0.0" | 128 | version: "0.0.0" |
129 | + flutter_html_to_pdf: | ||
130 | + dependency: "direct main" | ||
131 | + description: | ||
132 | + name: flutter_html_to_pdf | ||
133 | + sha256: "4bec44685f62a404bac7c9e412da0fbcd389ea5eceb397c268d829ecfa148c34" | ||
134 | + url: "https://pub.dev" | ||
135 | + source: hosted | ||
136 | + version: "0.7.0" | ||
65 | flutter_lints: | 137 | flutter_lints: |
66 | dependency: "direct dev" | 138 | dependency: "direct dev" |
67 | description: | 139 | description: |
@@ -78,6 +150,14 @@ packages: | @@ -78,6 +150,14 @@ packages: | ||
78 | url: "https://pub.dev" | 150 | url: "https://pub.dev" |
79 | source: hosted | 151 | source: hosted |
80 | version: "0.6.3+1" | 152 | version: "0.6.3+1" |
153 | + flutter_plugin_android_lifecycle: | ||
154 | + dependency: transitive | ||
155 | + description: | ||
156 | + name: flutter_plugin_android_lifecycle | ||
157 | + sha256: c224ac897bed083dabf11f238dd11a239809b446740be0c2044608c50029ffdf | ||
158 | + url: "https://pub.dev" | ||
159 | + source: hosted | ||
160 | + version: "2.0.9" | ||
81 | flutter_svg: | 161 | flutter_svg: |
82 | dependency: transitive | 162 | dependency: transitive |
83 | description: | 163 | description: |
@@ -91,6 +171,35 @@ packages: | @@ -91,6 +171,35 @@ packages: | ||
91 | description: flutter | 171 | description: flutter |
92 | source: sdk | 172 | source: sdk |
93 | version: "0.0.0" | 173 | version: "0.0.0" |
174 | + flutter_web_plugins: | ||
175 | + dependency: transitive | ||
176 | + description: flutter | ||
177 | + source: sdk | ||
178 | + version: "0.0.0" | ||
179 | + http: | ||
180 | + dependency: transitive | ||
181 | + description: | ||
182 | + name: http | ||
183 | + sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482" | ||
184 | + url: "https://pub.dev" | ||
185 | + source: hosted | ||
186 | + version: "0.13.5" | ||
187 | + http_parser: | ||
188 | + dependency: transitive | ||
189 | + description: | ||
190 | + name: http_parser | ||
191 | + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" | ||
192 | + url: "https://pub.dev" | ||
193 | + source: hosted | ||
194 | + version: "4.0.2" | ||
195 | + image: | ||
196 | + dependency: transitive | ||
197 | + description: | ||
198 | + name: image | ||
199 | + sha256: "483a389d6ccb292b570c31b3a193779b1b0178e7eb571986d9a49904b6861227" | ||
200 | + url: "https://pub.dev" | ||
201 | + source: hosted | ||
202 | + version: "4.0.15" | ||
94 | js: | 203 | js: |
95 | dependency: transitive | 204 | dependency: transitive |
96 | description: | 205 | description: |
@@ -163,6 +272,102 @@ packages: | @@ -163,6 +272,102 @@ packages: | ||
163 | url: "https://pub.dev" | 272 | url: "https://pub.dev" |
164 | source: hosted | 273 | source: hosted |
165 | version: "1.0.1" | 274 | version: "1.0.1" |
275 | + path_provider: | ||
276 | + dependency: "direct main" | ||
277 | + description: | ||
278 | + name: path_provider | ||
279 | + sha256: c7edf82217d4b2952b2129a61d3ad60f1075b9299e629e149a8d2e39c2e6aad4 | ||
280 | + url: "https://pub.dev" | ||
281 | + source: hosted | ||
282 | + version: "2.0.14" | ||
283 | + path_provider_android: | ||
284 | + dependency: transitive | ||
285 | + description: | ||
286 | + name: path_provider_android | ||
287 | + sha256: da97262be945a72270513700a92b39dd2f4a54dad55d061687e2e37a6390366a | ||
288 | + url: "https://pub.dev" | ||
289 | + source: hosted | ||
290 | + version: "2.0.25" | ||
291 | + path_provider_foundation: | ||
292 | + dependency: transitive | ||
293 | + description: | ||
294 | + name: path_provider_foundation | ||
295 | + sha256: ad4c4d011830462633f03eb34445a45345673dfd4faf1ab0b4735fbd93b19183 | ||
296 | + url: "https://pub.dev" | ||
297 | + source: hosted | ||
298 | + version: "2.2.2" | ||
299 | + path_provider_linux: | ||
300 | + dependency: transitive | ||
301 | + description: | ||
302 | + name: path_provider_linux | ||
303 | + sha256: "2ae08f2216225427e64ad224a24354221c2c7907e448e6e0e8b57b1eb9f10ad1" | ||
304 | + url: "https://pub.dev" | ||
305 | + source: hosted | ||
306 | + version: "2.1.10" | ||
307 | + path_provider_platform_interface: | ||
308 | + dependency: transitive | ||
309 | + description: | ||
310 | + name: path_provider_platform_interface | ||
311 | + sha256: "57585299a729335f1298b43245842678cb9f43a6310351b18fb577d6e33165ec" | ||
312 | + url: "https://pub.dev" | ||
313 | + source: hosted | ||
314 | + version: "2.0.6" | ||
315 | + path_provider_windows: | ||
316 | + dependency: transitive | ||
317 | + description: | ||
318 | + name: path_provider_windows | ||
319 | + sha256: f53720498d5a543f9607db4b0e997c4b5438884de25b0f73098cc2671a51b130 | ||
320 | + url: "https://pub.dev" | ||
321 | + source: hosted | ||
322 | + version: "2.1.5" | ||
323 | + pdf: | ||
324 | + dependency: "direct main" | ||
325 | + description: | ||
326 | + name: pdf | ||
327 | + sha256: "586d3debf5432e5377044754032cfa53ab45e9abf371d4865e9ad5019570e246" | ||
328 | + url: "https://pub.dev" | ||
329 | + source: hosted | ||
330 | + version: "3.10.1" | ||
331 | + permission_handler: | ||
332 | + dependency: "direct main" | ||
333 | + description: | ||
334 | + name: permission_handler | ||
335 | + sha256: "33c6a1253d1f95fd06fa74b65b7ba907ae9811f9d5c1d3150e51417d04b8d6a8" | ||
336 | + url: "https://pub.dev" | ||
337 | + source: hosted | ||
338 | + version: "10.2.0" | ||
339 | + permission_handler_android: | ||
340 | + dependency: transitive | ||
341 | + description: | ||
342 | + name: permission_handler_android | ||
343 | + sha256: "8028362b40c4a45298f1cbfccd227c8dd6caf0e27088a69f2ba2ab15464159e2" | ||
344 | + url: "https://pub.dev" | ||
345 | + source: hosted | ||
346 | + version: "10.2.0" | ||
347 | + permission_handler_apple: | ||
348 | + dependency: transitive | ||
349 | + description: | ||
350 | + name: permission_handler_apple | ||
351 | + sha256: ee96ac32f5a8e6f80756e25b25b9f8e535816c8e6665a96b6d70681f8c4f7e85 | ||
352 | + url: "https://pub.dev" | ||
353 | + source: hosted | ||
354 | + version: "9.0.8" | ||
355 | + permission_handler_platform_interface: | ||
356 | + dependency: transitive | ||
357 | + description: | ||
358 | + name: permission_handler_platform_interface | ||
359 | + sha256: "68abbc472002b5e6dfce47fe9898c6b7d8328d58b5d2524f75e277c07a97eb84" | ||
360 | + url: "https://pub.dev" | ||
361 | + source: hosted | ||
362 | + version: "3.9.0" | ||
363 | + permission_handler_windows: | ||
364 | + dependency: transitive | ||
365 | + description: | ||
366 | + name: permission_handler_windows | ||
367 | + sha256: f67cab14b4328574938ecea2db3475dad7af7ead6afab6338772c5f88963e38b | ||
368 | + url: "https://pub.dev" | ||
369 | + source: hosted | ||
370 | + version: "0.1.2" | ||
166 | petitparser: | 371 | petitparser: |
167 | dependency: transitive | 372 | dependency: transitive |
168 | description: | 373 | description: |
@@ -171,6 +376,46 @@ packages: | @@ -171,6 +376,46 @@ packages: | ||
171 | url: "https://pub.dev" | 376 | url: "https://pub.dev" |
172 | source: hosted | 377 | source: hosted |
173 | version: "5.1.0" | 378 | version: "5.1.0" |
379 | + platform: | ||
380 | + dependency: transitive | ||
381 | + description: | ||
382 | + name: platform | ||
383 | + sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76" | ||
384 | + url: "https://pub.dev" | ||
385 | + source: hosted | ||
386 | + version: "3.1.0" | ||
387 | + plugin_platform_interface: | ||
388 | + dependency: transitive | ||
389 | + description: | ||
390 | + name: plugin_platform_interface | ||
391 | + sha256: "6a2128648c854906c53fa8e33986fc0247a1116122f9534dd20e3ab9e16a32bc" | ||
392 | + url: "https://pub.dev" | ||
393 | + source: hosted | ||
394 | + version: "2.1.4" | ||
395 | + pointycastle: | ||
396 | + dependency: transitive | ||
397 | + description: | ||
398 | + name: pointycastle | ||
399 | + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" | ||
400 | + url: "https://pub.dev" | ||
401 | + source: hosted | ||
402 | + version: "3.7.3" | ||
403 | + printing: | ||
404 | + dependency: "direct main" | ||
405 | + description: | ||
406 | + name: printing | ||
407 | + sha256: c5c19dd852e95aa140141df13fa304f079a20c4a14a66de5275a0f811240aeec | ||
408 | + url: "https://pub.dev" | ||
409 | + source: hosted | ||
410 | + version: "5.10.3" | ||
411 | + process: | ||
412 | + dependency: transitive | ||
413 | + description: | ||
414 | + name: process | ||
415 | + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" | ||
416 | + url: "https://pub.dev" | ||
417 | + source: hosted | ||
418 | + version: "4.2.4" | ||
174 | provider: | 419 | provider: |
175 | dependency: transitive | 420 | dependency: transitive |
176 | description: | 421 | description: |
@@ -179,6 +424,14 @@ packages: | @@ -179,6 +424,14 @@ packages: | ||
179 | url: "https://pub.dev" | 424 | url: "https://pub.dev" |
180 | source: hosted | 425 | source: hosted |
181 | version: "6.0.5" | 426 | version: "6.0.5" |
427 | + qr: | ||
428 | + dependency: transitive | ||
429 | + description: | ||
430 | + name: qr | ||
431 | + sha256: "64957a3930367bf97cc211a5af99551d630f2f4625e38af10edd6b19131b64b3" | ||
432 | + url: "https://pub.dev" | ||
433 | + source: hosted | ||
434 | + version: "3.0.1" | ||
182 | sky_engine: | 435 | sky_engine: |
183 | dependency: transitive | 436 | dependency: transitive |
184 | description: flutter | 437 | description: flutter |
@@ -238,7 +491,7 @@ packages: | @@ -238,7 +491,7 @@ packages: | ||
238 | path: ".." | 491 | path: ".." |
239 | relative: true | 492 | relative: true |
240 | source: path | 493 | source: path |
241 | - version: "0.1.5" | 494 | + version: "0.1.6" |
242 | tex_text: | 495 | tex_text: |
243 | dependency: transitive | 496 | dependency: transitive |
244 | description: | 497 | description: |
@@ -255,6 +508,78 @@ packages: | @@ -255,6 +508,78 @@ packages: | ||
255 | url: "https://pub.dev" | 508 | url: "https://pub.dev" |
256 | source: hosted | 509 | source: hosted |
257 | version: "2.0.1" | 510 | version: "2.0.1" |
511 | + typed_data: | ||
512 | + dependency: transitive | ||
513 | + description: | ||
514 | + name: typed_data | ||
515 | + sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" | ||
516 | + url: "https://pub.dev" | ||
517 | + source: hosted | ||
518 | + version: "1.3.1" | ||
519 | + url_launcher: | ||
520 | + dependency: "direct main" | ||
521 | + description: | ||
522 | + name: url_launcher | ||
523 | + sha256: "75f2846facd11168d007529d6cd8fcb2b750186bea046af9711f10b907e1587e" | ||
524 | + url: "https://pub.dev" | ||
525 | + source: hosted | ||
526 | + version: "6.1.10" | ||
527 | + url_launcher_android: | ||
528 | + dependency: transitive | ||
529 | + description: | ||
530 | + name: url_launcher_android | ||
531 | + sha256: a52628068d282d01a07cd86e6ba99e497aa45ce8c91159015b2416907d78e411 | ||
532 | + url: "https://pub.dev" | ||
533 | + source: hosted | ||
534 | + version: "6.0.27" | ||
535 | + url_launcher_ios: | ||
536 | + dependency: transitive | ||
537 | + description: | ||
538 | + name: url_launcher_ios | ||
539 | + sha256: "9af7ea73259886b92199f9e42c116072f05ff9bea2dcb339ab935dfc957392c2" | ||
540 | + url: "https://pub.dev" | ||
541 | + source: hosted | ||
542 | + version: "6.1.4" | ||
543 | + url_launcher_linux: | ||
544 | + dependency: transitive | ||
545 | + description: | ||
546 | + name: url_launcher_linux | ||
547 | + sha256: "206fb8334a700ef7754d6a9ed119e7349bc830448098f21a69bf1b4ed038cabc" | ||
548 | + url: "https://pub.dev" | ||
549 | + source: hosted | ||
550 | + version: "3.0.4" | ||
551 | + url_launcher_macos: | ||
552 | + dependency: transitive | ||
553 | + description: | ||
554 | + name: url_launcher_macos | ||
555 | + sha256: "91ee3e75ea9dadf38036200c5d3743518f4a5eb77a8d13fda1ee5764373f185e" | ||
556 | + url: "https://pub.dev" | ||
557 | + source: hosted | ||
558 | + version: "3.0.5" | ||
559 | + url_launcher_platform_interface: | ||
560 | + dependency: transitive | ||
561 | + description: | ||
562 | + name: url_launcher_platform_interface | ||
563 | + sha256: "6c9ca697a5ae218ce56cece69d46128169a58aa8653c1b01d26fcd4aad8c4370" | ||
564 | + url: "https://pub.dev" | ||
565 | + source: hosted | ||
566 | + version: "2.1.2" | ||
567 | + url_launcher_web: | ||
568 | + dependency: transitive | ||
569 | + description: | ||
570 | + name: url_launcher_web | ||
571 | + sha256: "81fe91b6c4f84f222d186a9d23c73157dc4c8e1c71489c4d08be1ad3b228f1aa" | ||
572 | + url: "https://pub.dev" | ||
573 | + source: hosted | ||
574 | + version: "2.0.16" | ||
575 | + url_launcher_windows: | ||
576 | + dependency: transitive | ||
577 | + description: | ||
578 | + name: url_launcher_windows | ||
579 | + sha256: a83ba3607a507758669cfafb03f9de09bf6e6280c14d9b9cb18f013e406dcacd | ||
580 | + url: "https://pub.dev" | ||
581 | + source: hosted | ||
582 | + version: "3.0.5" | ||
258 | vector_math: | 583 | vector_math: |
259 | dependency: transitive | 584 | dependency: transitive |
260 | description: | 585 | description: |
@@ -263,6 +588,22 @@ packages: | @@ -263,6 +588,22 @@ packages: | ||
263 | url: "https://pub.dev" | 588 | url: "https://pub.dev" |
264 | source: hosted | 589 | source: hosted |
265 | version: "2.1.4" | 590 | version: "2.1.4" |
591 | + win32: | ||
592 | + dependency: transitive | ||
593 | + description: | ||
594 | + name: win32 | ||
595 | + sha256: a6f0236dbda0f63aa9a25ad1ff9a9d8a4eaaa5012da0dc59d21afdb1dc361ca4 | ||
596 | + url: "https://pub.dev" | ||
597 | + source: hosted | ||
598 | + version: "3.1.4" | ||
599 | + xdg_directories: | ||
600 | + dependency: transitive | ||
601 | + description: | ||
602 | + name: xdg_directories | ||
603 | + sha256: ee1505df1426458f7f60aac270645098d318a8b4766d85fde75f76f2e21807d1 | ||
604 | + url: "https://pub.dev" | ||
605 | + source: hosted | ||
606 | + version: "1.0.0" | ||
266 | xml: | 607 | xml: |
267 | dependency: transitive | 608 | dependency: transitive |
268 | description: | 609 | description: |
@@ -273,4 +614,4 @@ packages: | @@ -273,4 +614,4 @@ packages: | ||
273 | version: "6.1.0" | 614 | version: "6.1.0" |
274 | sdks: | 615 | sdks: |
275 | dart: ">=2.18.6 <3.0.0" | 616 | dart: ">=2.18.6 <3.0.0" |
276 | - flutter: ">=3.0.0" | 617 | + flutter: ">=3.7.0" |
@@ -38,6 +38,13 @@ dependencies: | @@ -38,6 +38,13 @@ dependencies: | ||
38 | cupertino_icons: ^1.0.2 | 38 | cupertino_icons: ^1.0.2 |
39 | tex_markdown: | 39 | tex_markdown: |
40 | path: ../../tex_markdown | 40 | path: ../../tex_markdown |
41 | + printing: ^5.10.3 | ||
42 | + pdf: ^3.10.1 | ||
43 | + flutter_html_to_pdf: ^0.7.0 | ||
44 | + url_launcher: ^6.1.10 | ||
45 | + path_provider: ^2.0.14 | ||
46 | + permission_handler: ^10.2.0 | ||
47 | + file_picker: ^5.2.10 | ||
41 | 48 | ||
42 | dev_dependencies: | 49 | dev_dependencies: |
43 | flutter_test: | 50 | flutter_test: |
@@ -6,6 +6,15 @@ | @@ -6,6 +6,15 @@ | ||
6 | 6 | ||
7 | #include "generated_plugin_registrant.h" | 7 | #include "generated_plugin_registrant.h" |
8 | 8 | ||
9 | +#include <permission_handler_windows/permission_handler_windows_plugin.h> | ||
10 | +#include <printing/printing_plugin.h> | ||
11 | +#include <url_launcher_windows/url_launcher_windows.h> | ||
9 | 12 | ||
10 | void RegisterPlugins(flutter::PluginRegistry* registry) { | 13 | void RegisterPlugins(flutter::PluginRegistry* registry) { |
14 | + PermissionHandlerWindowsPluginRegisterWithRegistrar( | ||
15 | + registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); | ||
16 | + PrintingPluginRegisterWithRegistrar( | ||
17 | + registry->GetRegistrarForPlugin("PrintingPlugin")); | ||
18 | + UrlLauncherWindowsRegisterWithRegistrar( | ||
19 | + registry->GetRegistrarForPlugin("UrlLauncherWindows")); | ||
11 | } | 20 | } |
@@ -71,9 +71,23 @@ abstract class MarkdownComponent { | @@ -71,9 +71,23 @@ abstract class MarkdownComponent { | ||
71 | ); | 71 | ); |
72 | } else { | 72 | } else { |
73 | if (each is BlockMd) { | 73 | if (each is BlockMd) { |
74 | - spans.add( | 74 | + spans.addAll([ |
75 | + const TextSpan( | ||
76 | + text: "\n ", | ||
77 | + style: TextStyle( | ||
78 | + fontSize: 0, | ||
79 | + height: 0, | ||
80 | + ), | ||
81 | + ), | ||
75 | each.span(context, element.trim(), style, onLinkTab), | 82 | each.span(context, element.trim(), style, onLinkTab), |
76 | - ); | 83 | + const TextSpan( |
84 | + text: "\n ", | ||
85 | + style: TextStyle( | ||
86 | + fontSize: 0, | ||
87 | + height: 0, | ||
88 | + ), | ||
89 | + ), | ||
90 | + ]); | ||
77 | } | 91 | } |
78 | } | 92 | } |
79 | return; | 93 | return; |
@@ -81,12 +95,6 @@ abstract class MarkdownComponent { | @@ -81,12 +95,6 @@ abstract class MarkdownComponent { | ||
81 | } | 95 | } |
82 | }, | 96 | }, |
83 | ); | 97 | ); |
84 | - // return Text.rich( | ||
85 | - // TextSpan( | ||
86 | - // children: List.from(spans), | ||
87 | - // ), | ||
88 | - // // textAlign: TextAlign.left, | ||
89 | - // ); | ||
90 | return spans; | 98 | return spans; |
91 | } | 99 | } |
92 | 100 | ||
@@ -127,24 +135,9 @@ abstract class BlockMd extends MarkdownComponent { | @@ -127,24 +135,9 @@ abstract class BlockMd extends MarkdownComponent { | ||
127 | TextStyle? style, | 135 | TextStyle? style, |
128 | final void Function(String url, String title)? onLinkTab, | 136 | final void Function(String url, String title)? onLinkTab, |
129 | ) { | 137 | ) { |
130 | - return TextSpan( | ||
131 | - children: [ | ||
132 | - const TextSpan( | ||
133 | - text: "\n ", | ||
134 | - style: TextStyle( | ||
135 | - fontSize: 0, | ||
136 | - height: 0, | ||
137 | - ), | ||
138 | - ), | ||
139 | - WidgetSpan( | 138 | + return WidgetSpan( |
140 | child: build(context, text, style, onLinkTab), | 139 | child: build(context, text, style, onLinkTab), |
141 | alignment: PlaceholderAlignment.middle, | 140 | alignment: PlaceholderAlignment.middle, |
142 | - ), | ||
143 | - const TextSpan( | ||
144 | - text: "\n ", | ||
145 | - style: TextStyle(fontSize: 0, height: 0), | ||
146 | - ), | ||
147 | - ], | ||
148 | ); | 141 | ); |
149 | } | 142 | } |
150 | 143 |
@@ -92,7 +92,6 @@ $value | @@ -92,7 +92,6 @@ $value | ||
92 | child: Table( | 92 | child: Table( |
93 | defaultColumnWidth: CustomTableColumnWidth(), | 93 | defaultColumnWidth: CustomTableColumnWidth(), |
94 | defaultVerticalAlignment: TableCellVerticalAlignment.middle, | 94 | defaultVerticalAlignment: TableCellVerticalAlignment.middle, |
95 | - // defaultColumnWidth: const FixedColumnWidth(double.infinity), | ||
96 | border: TableBorder.all( | 95 | border: TableBorder.all( |
97 | width: 1, | 96 | width: 1, |
98 | color: Theme.of(context).colorScheme.onSurface, | 97 | color: Theme.of(context).colorScheme.onSurface, |
1 | name: tex_markdown | 1 | name: tex_markdown |
2 | description: This package is used to create flutter widget that can render markdown and latex formulas. It is very simple to use and uses native flutter components. | 2 | description: This package is used to create flutter widget that can render markdown and latex formulas. It is very simple to use and uses native flutter components. |
3 | -version: 0.1.5 | 3 | +version: 0.1.6 |
4 | homepage: https://github.com/saminsohag/flutter_packages/tree/main/tex_markdown | 4 | homepage: https://github.com/saminsohag/flutter_packages/tree/main/tex_markdown |
5 | 5 | ||
6 | environment: | 6 | environment: |
-
Please register or login to post a comment