flet-video 0.2.0.dev76__py3-none-any.whl → 0.2.0.dev89__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of flet-video might be problematic. Click here for more details.

flet_video/__init__.py CHANGED
@@ -1,8 +1,17 @@
1
- from .types import (
1
+ from flet_video.types import (
2
2
  PlaylistMode,
3
3
  VideoConfiguration,
4
4
  VideoMedia,
5
5
  VideoSubtitleConfiguration,
6
6
  VideoSubtitleTrack,
7
7
  )
8
- from .video import Video
8
+ from flet_video.video import Video
9
+
10
+ __all__ = [
11
+ "PlaylistMode",
12
+ "Video",
13
+ "VideoConfiguration",
14
+ "VideoMedia",
15
+ "VideoSubtitleConfiguration",
16
+ "VideoSubtitleTrack",
17
+ ]
flet_video/types.py CHANGED
@@ -1,13 +1,13 @@
1
1
  from dataclasses import dataclass, field
2
2
  from enum import Enum
3
- from typing import Dict, Optional
3
+ from typing import Optional
4
4
 
5
5
  import flet as ft
6
6
 
7
7
  __all__ = [
8
8
  "PlaylistMode",
9
- "VideoMedia",
10
9
  "VideoConfiguration",
10
+ "VideoMedia",
11
11
  "VideoSubtitleConfiguration",
12
12
  "VideoSubtitleTrack",
13
13
  ]
@@ -33,10 +33,10 @@ class VideoMedia:
33
33
  resource: str
34
34
  """URI of the media resource."""
35
35
 
36
- http_headers: Optional[Dict[str, str]] = None
36
+ http_headers: Optional[dict[str, str]] = None
37
37
  """HTTP headers to be used for the media resource."""
38
38
 
39
- extras: Optional[Dict[str, str]] = None
39
+ extras: Optional[dict[str, str]] = None
40
40
  """Additional metadata for the media resource."""
41
41
 
42
42
 
@@ -46,8 +46,9 @@ class VideoConfiguration:
46
46
 
47
47
  output_driver: Optional[str] = None
48
48
  """
49
- Sets the [--vo](https://mpv.io/manual/stable/#options-vo) property on native backend.
50
-
49
+ Sets the [--vo](https://mpv.io/manual/stable/#options-vo) property
50
+ on native backend.
51
+
51
52
  The default value is platform dependent:
52
53
  - Windows, GNU/Linux, macOS & iOS : `"libmpv"`
53
54
  - Android: `"gpu"`
@@ -55,8 +56,9 @@ class VideoConfiguration:
55
56
 
56
57
  hardware_decoding_api: Optional[str] = None
57
58
  """
58
- Sets the [--hwdec](https://mpv.io/manual/stable/#options-hwdec) property on native backend.
59
-
59
+ Sets the [--hwdec](https://mpv.io/manual/stable/#options-hwdec)
60
+ property on native backend.
61
+
60
62
  The default value is platform dependent:
61
63
  - Windows, GNU/Linux, macOS & iOS : `"auto"`
62
64
  - Android: `"auto-safe"`
@@ -80,8 +82,8 @@ class VideoConfiguration:
80
82
 
81
83
  scale: ft.Number = 1.0
82
84
  """
83
- The scale for the video output.
84
- Specifying this option will cause `width` & `height` to be ignored.
85
+ The scale for the video output.
86
+ Specifying this option will cause [`width`][..] & [`height`][..] to be ignored.
85
87
  """
86
88
 
87
89
 
@@ -91,8 +93,8 @@ class VideoSubtitleTrack:
91
93
 
92
94
  src: str
93
95
  """
94
- The subtitle source.
95
-
96
+ The subtitle source.
97
+
96
98
  Supported values:
97
99
  - A URL (e.g. "https://example.com/subs.srt" or "www.example.com/sub.vtt")
98
100
  - An absolute local file path (not supported on the web platform)
flet_video/video.py CHANGED
@@ -1,10 +1,9 @@
1
- import asyncio
2
1
  from dataclasses import field
3
2
  from typing import Optional
4
3
 
5
4
  import flet as ft
6
5
 
7
- from .types import (
6
+ from flet_video.types import (
8
7
  PlaylistMode,
9
8
  VideoConfiguration,
10
9
  VideoMedia,
@@ -21,7 +20,8 @@ class Video(ft.ConstrainedControl):
21
20
  A control that displays a video from a playlist.
22
21
 
23
22
  Raises:
24
- AssertionError: If the [`volume`][(c).] is not between `0.0` and `100.0` (inclusive).
23
+ AssertionError: If the [`volume`][(c).] is not between
24
+ `0.0` and `100.0` (inclusive).
25
25
  """
26
26
 
27
27
  playlist: list[VideoMedia] = field(default_factory=list)
@@ -31,7 +31,7 @@ class Video(ft.ConstrainedControl):
31
31
 
32
32
  title: str = "flet-video"
33
33
  """
34
- Defines the name of the underlying window & process for native backend.
34
+ Defines the name of the underlying window & process for native backend.
35
35
  This is visible inside the windows' volume mixer.
36
36
  """
37
37
 
@@ -47,8 +47,9 @@ class Video(ft.ConstrainedControl):
47
47
 
48
48
  wakelock: bool = True
49
49
  """
50
- Whether to acquire wake lock while playing the video.
51
- When `True`, device's display will not go to standby/sleep while the video is playing.
50
+ Whether to acquire wake lock while playing the video.
51
+ When `True`, device's display will not go to standby/sleep while
52
+ the video is playing.
52
53
  """
53
54
 
54
55
  autoplay: bool = False
@@ -79,9 +80,10 @@ class Video(ft.ConstrainedControl):
79
80
  volume: ft.Number = 100.0
80
81
  """
81
82
  Defines the volume of the video player.
82
-
83
+
83
84
  Note:
84
- It's value ranges between `0.0` to `100.0` (inclusive), where `0.0` is muted and `100.0` is the maximum volume.
85
+ It's value ranges between `0.0` to `100.0` (inclusive), where `0.0`
86
+ is muted and `100.0` is the maximum volume.
85
87
  An exception will be raised if the value is outside this range.
86
88
  """
87
89
 
@@ -90,7 +92,7 @@ class Video(ft.ConstrainedControl):
90
92
  Defines the playback rate of the video player.
91
93
  """
92
94
 
93
- alignment: ft.Alignment = field(default_factory=lambda: ft.Alignment.center())
95
+ alignment: ft.Alignment = field(default_factory=lambda: ft.Alignment.CENTER)
94
96
  """
95
97
  Defines the Alignment of the viewport.
96
98
  """
@@ -98,10 +100,12 @@ class Video(ft.ConstrainedControl):
98
100
  filter_quality: ft.FilterQuality = ft.FilterQuality.LOW
99
101
  """
100
102
  Filter quality of the texture used to render the video output.
101
-
102
- Note:
103
- Android was reported to show blurry images when using `ft.FilterQuality.HIGH`.
104
- Prefer the usage of `ft.FilterQuality.MEDIUM` on this platform.
103
+
104
+ Note:
105
+ Android was reported to show blurry images when using
106
+ [`FilterQuality.HIGH`][flet.FilterQuality.HIGH].
107
+ Prefer the usage of [`FilterQuality.MEDIUM`][flet.FilterQuality.MEDIUM]
108
+ on this platform.
105
109
  """
106
110
 
107
111
  pause_upon_entering_background_mode: bool = True
@@ -111,8 +115,9 @@ class Video(ft.ConstrainedControl):
111
115
 
112
116
  resume_upon_entering_foreground_mode: bool = False
113
117
  """
114
- Whether to resume the video when application enters foreground mode.
115
- Has effect only if `pause_upon_entering_background_mode` is also set to `True`.
118
+ Whether to resume the video when application enters foreground mode.
119
+ Has effect only if [`pause_upon_entering_background_mode`][..] is also set to
120
+ `True`.
116
121
  """
117
122
 
118
123
  pitch: ft.Number = 1.0
@@ -139,163 +144,134 @@ class Video(ft.ConstrainedControl):
139
144
  Defines the subtitle track for the video player.
140
145
  """
141
146
 
142
- on_load: ft.OptionalControlEventHandler["Video"] = None
147
+ on_load: Optional[ft.ControlEventHandler["Video"]] = None
143
148
  """Fires when the video player is initialized and ready for playback."""
144
149
 
145
- on_enter_fullscreen: ft.OptionalControlEventHandler["Video"] = None
150
+ on_enter_fullscreen: Optional[ft.ControlEventHandler["Video"]] = None
146
151
  """Fires when the video player enters fullscreen."""
147
152
 
148
- on_exit_fullscreen: ft.OptionalControlEventHandler["Video"] = None
153
+ on_exit_fullscreen: Optional[ft.ControlEventHandler["Video"]] = None
149
154
  """Fires when the video player exits fullscreen"""
150
155
 
151
- on_error: ft.OptionalControlEventHandler["Video"] = None
156
+ on_error: Optional[ft.ControlEventHandler["Video"]] = None
152
157
  """
153
158
  Fires when an error occurs.
154
-
155
- Event handler argument's `data` property contains information about the error.
159
+
160
+ Event handler argument's [`data`][flet.Event.data] property contains
161
+ information about the error.
156
162
  """
157
163
 
158
- on_complete: ft.OptionalControlEventHandler["Video"] = None
164
+ on_complete: Optional[ft.ControlEventHandler["Video"]] = None
159
165
  """Fires when a video player completes."""
160
166
 
161
- on_track_change: ft.OptionalControlEventHandler["Video"] = None
167
+ on_track_change: Optional[ft.ControlEventHandler["Video"]] = None
162
168
  """
163
169
  Fires when a video track changes.
164
-
165
- Event handler argument's `data` property contains the index of the new track.
170
+
171
+ Event handler argument's [`data`][flet.Event.data] property contains
172
+ the index of the new track.
166
173
  """
167
174
 
168
175
  def before_update(self):
169
176
  super().before_update()
170
- assert 0 <= self.volume <= 100, "volume must be between 0 and 100 inclusive"
171
-
172
- def play(self):
173
- """Starts playing the video."""
174
- asyncio.create_task(self.play_async())
177
+ assert 0 <= self.volume <= 100, (
178
+ f"volume must be between 0 and 100 inclusive, got {self.volume}"
179
+ )
175
180
 
176
- def play_async(self):
181
+ async def play(self):
177
182
  """Starts playing the video."""
178
- return self._invoke_method_async("play")
183
+ await self._invoke_method("play")
179
184
 
180
- def pause(self):
185
+ async def pause(self):
181
186
  """Pauses the video player."""
182
- asyncio.create_task(self.pause_async())
183
-
184
- def pause_async(self):
185
- """Pauses the video player."""
186
- return self._invoke_method_async("pause")
187
-
188
- def play_or_pause(self):
189
- """
190
- Cycles between play and pause states of the video player,
191
- i.e., plays if paused and pauses if playing.
192
- """
193
- asyncio.create_task(self.play_or_pause_async())
187
+ await self._invoke_method("pause")
194
188
 
195
- def play_or_pause_async(self):
189
+ async def play_or_pause(self):
196
190
  """
197
191
  Cycles between play and pause states of the video player,
198
192
  i.e., plays if paused and pauses if playing.
199
193
  """
200
- return self._invoke_method_async("play_or_pause")
194
+ await self._invoke_method("play_or_pause")
201
195
 
202
- def stop(self):
196
+ async def stop(self):
203
197
  """Stops the video player."""
204
- asyncio.create_task(self.stop_async())
198
+ await self._invoke_method("stop")
205
199
 
206
- def stop_async(self):
207
- """Stops the video player."""
208
- return self._invoke_method_async("stop")
209
-
210
- def next(self):
211
- """Jumps to the next `VideoMedia` in the `playlist`."""
212
- asyncio.create_task(self.next_async())
213
-
214
- def next_async(self):
215
- """Jumps to the next `VideoMedia` in the `playlist`."""
216
- return self._invoke_method_async("next")
217
-
218
- def previous(self):
219
- """Jumps to the previous `VideoMedia` in the `playlist`."""
220
- asyncio.create_task(self.previous_async())
221
-
222
- def previous_async(self):
223
- """Jumps to the previous `VideoMedia` in the `playlist`."""
224
- return self._invoke_method_async("previous")
225
-
226
- def seek(self, position: ft.DurationValue):
227
- """
228
- Seeks the currently playing `VideoMedia` from the `playlist` at the specified `position`.
229
- """
230
- asyncio.create_task(self.seek_async(position))
200
+ async def next(self):
201
+ """Jumps to the next `VideoMedia` in the [`playlist`][..]."""
202
+ await self._invoke_method("next")
231
203
 
232
- def seek_async(self, position: ft.DurationValue):
233
- """
234
- Seeks the currently playing `VideoMedia` from the `playlist` at the specified `position`.
235
- """
236
- return self._invoke_method_async("seek", {"position": position})
204
+ async def previous(self):
205
+ """Jumps to the previous `VideoMedia` in the [`playlist`][..]."""
206
+ await self._invoke_method("previous")
237
207
 
238
- def jump_to(self, media_index: int):
208
+ async def seek(self, position: ft.DurationValue):
239
209
  """
240
- Jumps to the `VideoMedia` at the specified `media_index` in the `playlist`.
210
+ Seeks the currently playing `VideoMedia` from the
211
+ [`playlist`][..] at the specified `position`.
241
212
  """
242
- asyncio.create_task(self.jump_to_async(media_index))
213
+ await self._invoke_method(
214
+ "seek",
215
+ {"position": position},
216
+ )
243
217
 
244
- async def jump_to_async(self, media_index: int):
218
+ async def jump_to(self, media_index: int):
245
219
  """
246
- Jumps to the `VideoMedia` at the specified `media_index` in the `playlist`.
220
+ Jumps to the `VideoMedia` at the specified `media_index`
221
+ in the [`playlist`][..].
247
222
  """
248
223
  assert self.playlist[media_index], "media_index is out of range"
249
224
  if media_index < 0:
250
225
  # dart doesn't support negative indexes
251
226
  media_index = len(self.playlist) + media_index
252
- await self._invoke_method_async("jump_to", {"media_index": media_index})
227
+ await self._invoke_method(
228
+ method_name="jump_to",
229
+ arguments={"media_index": media_index},
230
+ )
253
231
 
254
- def playlist_add(self, media: VideoMedia):
255
- """Appends/Adds the provided `media` to the `playlist`."""
256
- asyncio.create_task(self.playlist_add_async(media))
257
-
258
- async def playlist_add_async(self, media: VideoMedia):
232
+ async def playlist_add(self, media: VideoMedia):
259
233
  """Appends/Adds the provided `media` to the `playlist`."""
260
234
  assert media.resource, "media has no resource"
261
- await self._invoke_method_async("playlist_add", {"media": media})
235
+ await self._invoke_method(
236
+ method_name="playlist_add",
237
+ arguments={"media": media},
238
+ )
262
239
  self.playlist.append(media)
263
240
 
264
- def playlist_remove(self, media_index: int):
265
- """Removes the provided `media` from the `playlist`."""
266
- asyncio.create_task(self.playlist_remove_async(media_index))
267
-
268
- async def playlist_remove_async(self, media_index: int):
241
+ async def playlist_remove(self, media_index: int):
269
242
  """Removes the provided `media` from the `playlist`."""
270
243
  assert self.playlist[media_index], "index out of range"
271
- await self._invoke_method_async("playlist_remove", {"media_index": media_index})
244
+ await self._invoke_method(
245
+ method_name="playlist_remove",
246
+ arguments={"media_index": media_index},
247
+ )
272
248
  self.playlist.pop(media_index)
273
249
 
274
- async def is_playing_async(self) -> bool:
250
+ async def is_playing(self) -> bool:
275
251
  """
276
252
  Returns:
277
253
  `True` if the video player is currently playing, `False` otherwise.
278
254
  """
279
- return await self._invoke_method_async("is_playing")
255
+ return await self._invoke_method("is_playing")
280
256
 
281
- async def is_completed_async(self) -> bool:
257
+ async def is_completed(self) -> bool:
282
258
  """
283
259
  Returns:
284
260
  `True` if video player has reached the end of
285
- the currently playing media, `False` otherwise.
261
+ the currently playing media, `False` otherwise.
286
262
  """
287
- return await self._invoke_method_async("is_completed")
263
+ return await self._invoke_method("is_completed")
288
264
 
289
- async def get_duration_async(self) -> ft.Duration:
265
+ async def get_duration(self) -> ft.Duration:
290
266
  """
291
267
  Returns:
292
268
  The duration of the currently playing media.
293
269
  """
294
- return await self._invoke_method_async("get_duration")
270
+ return await self._invoke_method("get_duration")
295
271
 
296
- async def get_current_position_async(self) -> ft.Duration:
272
+ async def get_current_position(self) -> ft.Duration:
297
273
  """
298
274
  Returns:
299
275
  The current position of the currently playing media.
300
276
  """
301
- return await self._invoke_method_async("get_current_position")
277
+ return await self._invoke_method("get_current_position")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flet-video
3
- Version: 0.2.0.dev76
3
+ Version: 0.2.0.dev89
4
4
  Summary: A cross-platform video player for Flet apps.
5
5
  Author-email: Flet contributors <hello@flet.dev>
6
6
  License-Expression: Apache-2.0
@@ -41,7 +41,9 @@ This package supports the following platforms:
41
41
  | Android | ✅ |
42
42
  | Web | ✅ |
43
43
 
44
- ## Installation
44
+ ## Usage
45
+
46
+ ### Installation
45
47
 
46
48
  To install the `flet-video` package and add it to your project dependencies:
47
49
 
@@ -61,6 +63,6 @@ To install the `flet-video` package and add it to your project dependencies:
61
63
  poetry add flet-video
62
64
  ```
63
65
 
64
- ## Examples
66
+ ### Examples
65
67
 
66
- For examples, see [this](./examples)
68
+ For examples, see [these](./examples).
@@ -1,20 +1,20 @@
1
- flet_video/__init__.py,sha256=4mj9kdxqfTAgSV_xKmIpN5fFP4W9Jb6HJ8p_ZMHsTUA,162
2
- flet_video/types.py,sha256=tKVg7CsmPZ6WXyuze89JrUYHLTu3HY8VbPAWHwlS9qI,4527
3
- flet_video/video.py,sha256=fESqaFQ2JOmRH0iClnLob56kA5Xj_lz6m-q-iUvjH7s,9431
4
- flet_video-0.2.0.dev76.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
1
+ flet_video/__init__.py,sha256=jaNQsiSt765db8odKBLiMLRrgk-YNuSK8eznMk2_1eA,334
2
+ flet_video/types.py,sha256=QO80nyg2DMSxWNxLxTpT256vB1uZQ5dELCnsc9XEYSg,4527
3
+ flet_video/video.py,sha256=cvwNiI7nbqHmu_zsl3IW5Zm_nU_j2yUy2gH5fJB6Wc0,8099
4
+ flet_video-0.2.0.dev89.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
5
5
  flutter/flet_video/CHANGELOG.md,sha256=FJ0SxmqH1T_rUMLagUr_PqoHRQBloR4octPNKKz4TJ8,54
6
6
  flutter/flet_video/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
7
7
  flutter/flet_video/README.md,sha256=BNJ7_bUq43JAu1VTnjdOnUaV-vDjKDc_QbUvGYbnfbQ,60
8
8
  flutter/flet_video/analysis_options.yaml,sha256=32kjGAc-zF87inWaH5M46yGZWQDTwrwfvNLHeAocfG4,154
9
- flutter/flet_video/pubspec.lock,sha256=OuNTRxpcEhJlhe3OzTyszwcIgZfw_K8vuEB7wAY_Gww,29180
10
- flutter/flet_video/pubspec.yaml,sha256=FnXRnj32TiweIkJa1ZGvVQ9FDXu1w82u43kumCYT4sA,564
9
+ flutter/flet_video/pubspec.lock,sha256=NonFBvRLK7IFcqMKjgOH00qlu4Pea3WlI5-x2IEKBoc,29411
10
+ flutter/flet_video/pubspec.yaml,sha256=EHyKLQbpBFu40CaWcFdEnl10OJ0aZ_cfOeZffP6P-mA,564
11
11
  flutter/flet_video/lib/flet_video.dart,sha256=x-KG1v-Qb_AiSyH9Y2Jt9PIYPxl_mQjXeIg_BDEQ0iQ,65
12
12
  flutter/flet_video/lib/src/extension.dart,sha256=8a6XcgY0KD4HQVkSVx0_6O8WcCqUeVub0_ihq4WW7S4,477
13
13
  flutter/flet_video/lib/src/video.dart,sha256=Wlh61Rldan9hPmSxOcOVNPUoN7b8ii5ouv3QaavXeRk,7770
14
14
  flutter/flet_video/lib/src/utils/file_utils_io.dart,sha256=7AgfFYmc2hWT3Hqra29zyl4H0y43L5ZnqvFoGuMPCpM,276
15
15
  flutter/flet_video/lib/src/utils/file_utils_web.dart,sha256=TeGP-wSeoe39G_EJO2JFhgw6lJXmDXBNW0i-YUgxlaw,138
16
16
  flutter/flet_video/lib/src/utils/video.dart,sha256=ictwd-7_8i7KmwGftHAhFFF_w2Y8vuXeeY4-bkfEhEk,4258
17
- flet_video-0.2.0.dev76.dist-info/METADATA,sha256=7Vj8RyGQoBruo3ynKBWY7722d5NEX6LND3U7ZsG6kxA,1910
18
- flet_video-0.2.0.dev76.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
19
- flet_video-0.2.0.dev76.dist-info/top_level.txt,sha256=7omjcyZHBn3gldah0wrmAlkR9Vc1vmtSlhUVZcPg2o0,19
20
- flet_video-0.2.0.dev76.dist-info/RECORD,,
17
+ flet_video-0.2.0.dev89.dist-info/METADATA,sha256=WLpudtAGMEDTH0EPIxqpzu_orBh5kN726lF5ZSDBuPI,1924
18
+ flet_video-0.2.0.dev89.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
19
+ flet_video-0.2.0.dev89.dist-info/top_level.txt,sha256=7omjcyZHBn3gldah0wrmAlkR9Vc1vmtSlhUVZcPg2o0,19
20
+ flet_video-0.2.0.dev89.dist-info/RECORD,,
@@ -21,10 +21,10 @@ packages:
21
21
  dependency: transitive
22
22
  description:
23
23
  name: async
24
- sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
24
+ sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
25
25
  url: "https://pub.dev"
26
26
  source: hosted
27
- version: "2.12.0"
27
+ version: "2.13.0"
28
28
  boolean_selector:
29
29
  dependency: transitive
30
30
  description:
@@ -109,10 +109,10 @@ packages:
109
109
  dependency: transitive
110
110
  description:
111
111
  name: fake_async
112
- sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
112
+ sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
113
113
  url: "https://pub.dev"
114
114
  source: hosted
115
- version: "1.3.2"
115
+ version: "1.3.3"
116
116
  ffi:
117
117
  dependency: transitive
118
118
  description:
@@ -133,10 +133,10 @@ packages:
133
133
  dependency: transitive
134
134
  description:
135
135
  name: file_picker
136
- sha256: ef9908739bdd9c476353d6adff72e88fd00c625f5b959ae23f7567bd5137db0a
136
+ sha256: ef7d2a085c1b1d69d17b6842d0734aad90156de08df6bd3c12496d0bd6ddf8e2
137
137
  url: "https://pub.dev"
138
138
  source: hosted
139
- version: "10.2.0"
139
+ version: "10.3.1"
140
140
  fixnum:
141
141
  dependency: transitive
142
142
  description:
@@ -150,7 +150,7 @@ packages:
150
150
  description:
151
151
  path: "packages/flet"
152
152
  ref: main
153
- resolved-ref: b996d06ff462b88f5b31d6cceafac34ea6f57968
153
+ resolved-ref: "4ea9558543657d31dba3b11d6017beed2e16d447"
154
154
  url: "https://github.com/flet-dev/flet.git"
155
155
  source: git
156
156
  version: "0.70.0"
@@ -171,10 +171,10 @@ packages:
171
171
  dependency: "direct dev"
172
172
  description:
173
173
  name: flutter_lints
174
- sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04
174
+ sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1"
175
175
  url: "https://pub.dev"
176
176
  source: hosted
177
- version: "2.0.3"
177
+ version: "3.0.2"
178
178
  flutter_localizations:
179
179
  dependency: transitive
180
180
  description: flutter
@@ -192,10 +192,10 @@ packages:
192
192
  dependency: transitive
193
193
  description:
194
194
  name: flutter_plugin_android_lifecycle
195
- sha256: f948e346c12f8d5480d2825e03de228d0eb8c3a737e4cdaa122267b89c022b5e
195
+ sha256: "6382ce712ff69b0f719640ce957559dde459e55ecd433c767e06d139ddf16cab"
196
196
  url: "https://pub.dev"
197
197
  source: hosted
198
- version: "2.0.28"
198
+ version: "2.0.29"
199
199
  flutter_svg:
200
200
  dependency: transitive
201
201
  description:
@@ -250,10 +250,10 @@ packages:
250
250
  dependency: transitive
251
251
  description:
252
252
  name: intl
253
- sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf
253
+ sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5"
254
254
  url: "https://pub.dev"
255
255
  source: hosted
256
- version: "0.19.0"
256
+ version: "0.20.2"
257
257
  json_annotation:
258
258
  dependency: transitive
259
259
  description:
@@ -266,10 +266,10 @@ packages:
266
266
  dependency: transitive
267
267
  description:
268
268
  name: leak_tracker
269
- sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
269
+ sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0"
270
270
  url: "https://pub.dev"
271
271
  source: hosted
272
- version: "10.0.8"
272
+ version: "10.0.9"
273
273
  leak_tracker_flutter_testing:
274
274
  dependency: transitive
275
275
  description:
@@ -290,10 +290,10 @@ packages:
290
290
  dependency: transitive
291
291
  description:
292
292
  name: lints
293
- sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452"
293
+ sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
294
294
  url: "https://pub.dev"
295
295
  source: hosted
296
- version: "2.1.1"
296
+ version: "3.0.0"
297
297
  logging:
298
298
  dependency: transitive
299
299
  description:
@@ -418,18 +418,18 @@ packages:
418
418
  dependency: transitive
419
419
  description:
420
420
  name: package_info_plus
421
- sha256: "7976bfe4c583170d6cdc7077e3237560b364149fcd268b5f53d95a991963b191"
421
+ sha256: "16eee997588c60225bda0488b6dcfac69280a6b7a3cf02c741895dd370a02968"
422
422
  url: "https://pub.dev"
423
423
  source: hosted
424
- version: "8.3.0"
424
+ version: "8.3.1"
425
425
  package_info_plus_platform_interface:
426
426
  dependency: transitive
427
427
  description:
428
428
  name: package_info_plus_platform_interface
429
- sha256: "6c935fb612dff8e3cc9632c2b301720c77450a126114126ffaafe28d2e87956c"
429
+ sha256: "202a487f08836a592a6bd4f901ac69b3a8f146af552bbd14407b6b41e1c3f086"
430
430
  url: "https://pub.dev"
431
431
  source: hosted
432
- version: "3.2.0"
432
+ version: "3.2.1"
433
433
  path:
434
434
  dependency: transitive
435
435
  description:
@@ -466,10 +466,10 @@ packages:
466
466
  dependency: transitive
467
467
  description:
468
468
  name: path_provider_foundation
469
- sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
469
+ sha256: "16eef174aacb07e09c351502740fa6254c165757638eba1e9116b0a781201bbd"
470
470
  url: "https://pub.dev"
471
471
  source: hosted
472
- version: "2.4.1"
472
+ version: "2.4.2"
473
473
  path_provider_linux:
474
474
  dependency: transitive
475
475
  description:
@@ -598,14 +598,22 @@ packages:
598
598
  url: "https://pub.dev"
599
599
  source: hosted
600
600
  version: "0.2.0"
601
+ screenshot:
602
+ dependency: transitive
603
+ description:
604
+ name: screenshot
605
+ sha256: "63817697a7835e6ce82add4228e15d233b74d42975c143ad8cfe07009fab866b"
606
+ url: "https://pub.dev"
607
+ source: hosted
608
+ version: "3.0.0"
601
609
  sensors_plus:
602
610
  dependency: transitive
603
611
  description:
604
612
  name: sensors_plus
605
- sha256: "905282c917c6bb731c242f928665c2ea15445aa491249dea9d98d7c79dc8fd39"
613
+ sha256: "89e2bfc3d883743539ce5774a2b93df61effde40ff958ecad78cd66b1a8b8d52"
606
614
  url: "https://pub.dev"
607
615
  source: hosted
608
- version: "6.1.1"
616
+ version: "6.1.2"
609
617
  sensors_plus_platform_interface:
610
618
  dependency: transitive
611
619
  description:
@@ -626,10 +634,10 @@ packages:
626
634
  dependency: transitive
627
635
  description:
628
636
  name: shared_preferences_android
629
- sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac"
637
+ sha256: "5bcf0772a761b04f8c6bf814721713de6f3e5d9d89caf8d3fe031b02a342379e"
630
638
  url: "https://pub.dev"
631
639
  source: hosted
632
- version: "2.4.10"
640
+ version: "2.4.11"
633
641
  shared_preferences_foundation:
634
642
  dependency: transitive
635
643
  description:
@@ -719,10 +727,10 @@ packages:
719
727
  dependency: transitive
720
728
  description:
721
729
  name: synchronized
722
- sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6"
730
+ sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0
723
731
  url: "https://pub.dev"
724
732
  source: hosted
725
- version: "3.3.1"
733
+ version: "3.4.0"
726
734
  term_glyph:
727
735
  dependency: transitive
728
736
  description:
@@ -775,18 +783,18 @@ packages:
775
783
  dependency: transitive
776
784
  description:
777
785
  name: url_launcher_android
778
- sha256: "8582d7f6fe14d2652b4c45c9b6c14c0b678c2af2d083a11b604caeba51930d79"
786
+ sha256: "0aedad096a85b49df2e4725fa32118f9fa580f3b14af7a2d2221896a02cd5656"
779
787
  url: "https://pub.dev"
780
788
  source: hosted
781
- version: "6.3.16"
789
+ version: "6.3.17"
782
790
  url_launcher_ios:
783
791
  dependency: transitive
784
792
  description:
785
793
  name: url_launcher_ios
786
- sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb"
794
+ sha256: d80b3f567a617cb923546034cc94bfe44eb15f989fe670b37f26abdb9d939cb7
787
795
  url: "https://pub.dev"
788
796
  source: hosted
789
- version: "6.3.3"
797
+ version: "6.3.4"
790
798
  url_launcher_linux:
791
799
  dependency: transitive
792
800
  description:
@@ -799,10 +807,10 @@ packages:
799
807
  dependency: transitive
800
808
  description:
801
809
  name: url_launcher_macos
802
- sha256: "17ba2000b847f334f16626a574c702b196723af2a289e7a93ffcb79acff855c2"
810
+ sha256: c043a77d6600ac9c38300567f33ef12b0ef4f4783a2c1f00231d2b1941fea13f
803
811
  url: "https://pub.dev"
804
812
  source: hosted
805
- version: "3.2.2"
813
+ version: "3.2.3"
806
814
  url_launcher_platform_interface:
807
815
  dependency: transitive
808
816
  description:
@@ -855,10 +863,10 @@ packages:
855
863
  dependency: transitive
856
864
  description:
857
865
  name: vector_graphics_compiler
858
- sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331"
866
+ sha256: ca81fdfaf62a5ab45d7296614aea108d2c7d0efca8393e96174bf4d51e6725b0
859
867
  url: "https://pub.dev"
860
868
  source: hosted
861
- version: "1.1.17"
869
+ version: "1.1.18"
862
870
  vector_math:
863
871
  dependency: transitive
864
872
  description:
@@ -871,10 +879,10 @@ packages:
871
879
  dependency: transitive
872
880
  description:
873
881
  name: vm_service
874
- sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
882
+ sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
875
883
  url: "https://pub.dev"
876
884
  source: hosted
877
- version: "14.3.1"
885
+ version: "15.0.0"
878
886
  volume_controller:
879
887
  dependency: transitive
880
888
  description:
@@ -927,10 +935,10 @@ packages:
927
935
  dependency: transitive
928
936
  description:
929
937
  name: win32
930
- sha256: "329edf97fdd893e0f1e3b9e88d6a0e627128cc17cc316a8d67fda8f1451178ba"
938
+ sha256: "66814138c3562338d05613a6e368ed8cfb237ad6d64a9e9334be3f309acfca03"
931
939
  url: "https://pub.dev"
932
940
  source: hosted
933
- version: "5.13.0"
941
+ version: "5.14.0"
934
942
  win32_registry:
935
943
  dependency: transitive
936
944
  description:
@@ -943,10 +951,10 @@ packages:
943
951
  dependency: transitive
944
952
  description:
945
953
  name: window_manager
946
- sha256: "51d50168ab267d344b975b15390426b1243600d436770d3f13de67e55b05ec16"
954
+ sha256: "7eb6d6c4164ec08e1bf978d6e733f3cebe792e2a23fb07cbca25c2872bfdbdcd"
947
955
  url: "https://pub.dev"
948
956
  source: hosted
949
- version: "0.5.0"
957
+ version: "0.5.1"
950
958
  window_to_front:
951
959
  dependency: transitive
952
960
  description:
@@ -972,5 +980,5 @@ packages:
972
980
  source: hosted
973
981
  version: "6.5.0"
974
982
  sdks:
975
- dart: ">=3.7.0 <4.0.0"
983
+ dart: ">=3.8.0 <4.0.0"
976
984
  flutter: ">=3.29.0"
@@ -22,4 +22,4 @@ dependencies:
22
22
  dev_dependencies:
23
23
  flutter_test:
24
24
  sdk: flutter
25
- flutter_lints: ^2.0.0
25
+ flutter_lints: ^3.0.0