flet 0.70.0.dev6444__py3-none-any.whl → 0.70.0.dev6475__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 might be problematic. Click here for more details.

@@ -147,10 +147,9 @@ class Observable:
147
147
  object.__setattr__(self, name, value)
148
148
  return
149
149
  value = self._wrap_if_collection(name, value)
150
- had = hasattr(self, name)
151
- old = object.__getattribute__(self, name) if had else None
150
+ old = object.__getattribute__(self, name) if hasattr(self, name) else None
151
+ object.__setattr__(self, name, value)
152
152
  if not value_equal(old, value):
153
- object.__setattr__(self, name, value)
154
153
  self._notify(name)
155
154
 
156
155
  def __delattr__(self, name: str):
flet/controls/colors.py CHANGED
@@ -55,13 +55,15 @@ import random
55
55
  from enum import Enum
56
56
  from typing import TYPE_CHECKING, Optional, Union
57
57
 
58
+ from flet.utils.deprecated_enum import DeprecatedEnumMeta
59
+
58
60
  if TYPE_CHECKING:
59
61
  from flet.controls.types import ColorValue
60
62
 
61
63
  __all__ = ["Colors"]
62
64
 
63
65
 
64
- class Colors(str, Enum):
66
+ class Colors(str, Enum, metaclass=DeprecatedEnumMeta):
65
67
  def __eq__(self, other):
66
68
  if isinstance(other, str):
67
69
  return self.value.lower() == other.lower()
@@ -198,12 +200,12 @@ class Colors(str, Enum):
198
200
  AMBER_ACCENT_400 = "amberaccent400"
199
201
  AMBER_ACCENT_700 = "amberaccent700"
200
202
  BLACK = "black"
201
- BLACK12 = "black12"
202
- BLACK26 = "black26"
203
- BLACK38 = "black38"
204
- BLACK45 = "black45"
205
- BLACK54 = "black54"
206
- BLACK87 = "black87"
203
+ BLACK_12 = "black12"
204
+ BLACK_26 = "black26"
205
+ BLACK_38 = "black38"
206
+ BLACK_45 = "black45"
207
+ BLACK_54 = "black54"
208
+ BLACK_87 = "black87"
207
209
  BLUE = "blue"
208
210
  BLUE_100 = "blue100"
209
211
  BLUE_200 = "blue200"
@@ -463,14 +465,14 @@ class Colors(str, Enum):
463
465
  TEAL_ACCENT_700 = "tealaccent700"
464
466
  TRANSPARENT = "transparent"
465
467
  WHITE = "white"
466
- WHITE10 = "white10"
467
- WHITE12 = "white12"
468
- WHITE24 = "white24"
469
- WHITE30 = "white30"
470
- WHITE38 = "white38"
471
- WHITE54 = "white54"
472
- WHITE60 = "white60"
473
- WHITE70 = "white70"
468
+ WHITE_10 = "white10"
469
+ WHITE_12 = "white12"
470
+ WHITE_24 = "white24"
471
+ WHITE_30 = "white30"
472
+ WHITE_38 = "white38"
473
+ WHITE_54 = "white54"
474
+ WHITE_60 = "white60"
475
+ WHITE_70 = "white70"
474
476
  YELLOW = "yellow"
475
477
  YELLOW_100 = "yellow100"
476
478
  YELLOW_200 = "yellow200"
@@ -487,3 +489,27 @@ class Colors(str, Enum):
487
489
  YELLOW_ACCENT_200 = "yellowaccent200"
488
490
  YELLOW_ACCENT_400 = "yellowaccent400"
489
491
  YELLOW_ACCENT_700 = "yellowaccent700"
492
+
493
+
494
+ # TODO - remove in Flet 1.0
495
+ _DEPRECATED_COLOR_ALIASES = {
496
+ "BLACK12": ("BLACK_12", "Use Colors.BLACK_12 instead."),
497
+ "BLACK26": ("BLACK_26", "Use Colors.BLACK_26 instead."),
498
+ "BLACK38": ("BLACK_38", "Use Colors.BLACK_38 instead."),
499
+ "BLACK45": ("BLACK_45", "Use Colors.BLACK_45 instead."),
500
+ "BLACK54": ("BLACK_54", "Use Colors.BLACK_54 instead."),
501
+ "BLACK87": ("BLACK_87", "Use Colors.BLACK_87 instead."),
502
+ "WHITE10": ("WHITE_10", "Use Colors.WHITE_10 instead."),
503
+ "WHITE12": ("WHITE_12", "Use Colors.WHITE_12 instead."),
504
+ "WHITE24": ("WHITE_24", "Use Colors.WHITE_24 instead."),
505
+ "WHITE30": ("WHITE_30", "Use Colors.WHITE_30 instead."),
506
+ "WHITE38": ("WHITE_38", "Use Colors.WHITE_38 instead."),
507
+ "WHITE54": ("WHITE_54", "Use Colors.WHITE_54 instead."),
508
+ "WHITE60": ("WHITE_60", "Use Colors.WHITE_60 instead."),
509
+ "WHITE70": ("WHITE_70", "Use Colors.WHITE_70 instead."),
510
+ }
511
+
512
+ Colors._deprecated_members_ = _DEPRECATED_COLOR_ALIASES
513
+
514
+ for alias_name, (target_name, _) in _DEPRECATED_COLOR_ALIASES.items():
515
+ Colors._member_map_[alias_name] = getattr(Colors, target_name)
flet/utils/__init__.py CHANGED
@@ -1,6 +1,7 @@
1
1
  from flet.utils.browser import open_in_browser
2
2
  from flet.utils.classproperty import classproperty
3
3
  from flet.utils.deprecated import deprecated, deprecated_class, deprecated_warning
4
+ from flet.utils.deprecated_enum import DeprecatedEnumMeta
4
5
  from flet.utils.files import (
5
6
  cleanup_path,
6
7
  copy_tree,
@@ -35,27 +36,23 @@ from flet.utils.strings import random_string
35
36
  from flet.utils.vector import Vector
36
37
 
37
38
  __all__ = [
38
- "open_in_browser",
39
+ "DeprecatedEnumMeta",
40
+ "Once",
41
+ "Vector",
42
+ "calculate_file_hash",
39
43
  "classproperty",
44
+ "cleanup_path",
45
+ "copy_tree",
40
46
  "deprecated",
41
47
  "deprecated_class",
42
48
  "deprecated_warning",
43
- "cleanup_path",
44
- "copy_tree",
45
- "get_current_script_dir",
46
- "is_within_directory",
47
- "safe_tar_extractall",
48
- "which",
49
49
  "from_dict",
50
- "calculate_file_hash",
51
- "sha1",
52
- "to_json",
53
- "get_free_tcp_port",
54
- "get_local_ip",
55
- "Once",
56
- "patch_dataclass",
57
50
  "get_arch",
58
51
  "get_bool_env_var",
52
+ "get_current_script_dir",
53
+ "get_free_tcp_port",
54
+ "get_local_ip",
55
+ "get_param_count",
59
56
  "get_platform",
60
57
  "is_android",
61
58
  "is_asyncio",
@@ -67,8 +64,13 @@ __all__ = [
67
64
  "is_mobile",
68
65
  "is_pyodide",
69
66
  "is_windows",
70
- "slugify",
67
+ "is_within_directory",
68
+ "open_in_browser",
69
+ "patch_dataclass",
71
70
  "random_string",
72
- "Vector",
73
- "get_param_count",
71
+ "safe_tar_extractall",
72
+ "sha1",
73
+ "slugify",
74
+ "to_json",
75
+ "which",
74
76
  ]
@@ -0,0 +1,40 @@
1
+ from __future__ import annotations
2
+
3
+ import warnings
4
+ from enum import EnumMeta
5
+
6
+ __all__ = ["DeprecatedEnumMeta"]
7
+
8
+
9
+ class DeprecatedEnumMeta(EnumMeta):
10
+ """Enum metaclass that supports deprecation aliases.
11
+
12
+ Enums can declare `_deprecated_members_` as a mapping of alias name to a tuple
13
+ containing the canonical member name and a deprecation message. Accessing an alias
14
+ returns the canonical member while emitting a `DeprecationWarning`.
15
+ """
16
+
17
+ def _resolve_deprecated(cls, name: str):
18
+ deprecated = getattr(cls, "_deprecated_members_", {})
19
+ info = deprecated.get(name)
20
+ if not info:
21
+ return None
22
+ target_name, message = info
23
+ warnings.warn(
24
+ f"{cls.__name__}.{name} is deprecated. {message}",
25
+ DeprecationWarning,
26
+ stacklevel=2,
27
+ )
28
+ return getattr(cls, target_name)
29
+
30
+ def __getattr__(cls, name: str):
31
+ member = cls._resolve_deprecated(name)
32
+ if member is not None:
33
+ return member
34
+ return super().__getattr__(name)
35
+
36
+ def __getitem__(cls, name: str):
37
+ member = cls._resolve_deprecated(name)
38
+ if member is not None:
39
+ return member
40
+ return super().__getitem__(name)
flet/version.py CHANGED
@@ -10,7 +10,7 @@ from flet.utils import is_mobile, is_windows, which
10
10
  DEFAULT_VERSION = "0.1.0"
11
11
 
12
12
  # will be replaced by CI
13
- version = "0.70.0.dev6444"
13
+ version = "0.70.0.dev6475"
14
14
 
15
15
 
16
16
  def update_version():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flet
3
- Version: 0.70.0.dev6444
3
+ Version: 0.70.0.dev6475
4
4
  Summary: Flet for Python - easily build interactive multi-platform apps in Python
5
5
  Author-email: "Appveyor Systems Inc." <hello@flet.dev>
6
6
  License-Expression: Apache-2.0
@@ -1,7 +1,7 @@
1
1
  flet/__init__.py,sha256=39Ci10DOyWcl-9adUYDbIX7eR0PHsRELpESPQZnCw9M,26200
2
2
  flet/app.py,sha256=HSws0Zm4ZO0-Hp2P9h7xirCVnRkKCVXhuekyAXT_9Fo,11883
3
3
  flet/cli.py,sha256=IUM25fY_sqMtl0hlQGhlMQaBb1oNyO0VZeeBgRodhuA,204
4
- flet/version.py,sha256=sM4wYEJIRfomeYf0lTdIb_mrCBAXVdVsHorfSSzSI5c,2512
4
+ flet/version.py,sha256=CBIuRgTZvnqG0srXWy_IgQL2X-BX_qqpqdflnxynm_E,2512
5
5
  flet/auth/__init__.py,sha256=eDqmi0Ki8Resd198S7XxgYa2R14wnNqIXnYhBLPl8fQ,289
6
6
  flet/auth/authorization.py,sha256=hP_36RiRPtSwmK_Yp6MMzAjQdDxbBiEcZ2yFNqyNiRs,357
7
7
  flet/auth/authorization_service.py,sha256=6N2LvisSt7KI_VgfyCH0OaJ6jTcmXCkAldN1yYlakzQ,6410
@@ -20,7 +20,7 @@ flet/components/component.py,sha256=-bkB0A3Q9OpiQ0xuxeK15wajYnJl8hjnsc5_zKTFfHE,
20
20
  flet/components/component_decorator.py,sha256=14ocjVSXPVl-SduJUtEQ1JivhpIoWnDDG4ioD0TCn0I,639
21
21
  flet/components/component_owned.py,sha256=eC2NNNFWmZADBivLHjScfrmEj-s7xygHlABo7CiGtFA,563
22
22
  flet/components/memo.py,sha256=tpztAInP4LkGOCFSJLyRuKp2t6EKM2AnX7SQmXiUZH8,620
23
- flet/components/observable.py,sha256=Eo9nVHgEbgOfU6dcMhftmRq8sQDaDL5KBrYrQEhNAqQ,7020
23
+ flet/components/observable.py,sha256=1sWoxjaXKQnhxVTXQdxLiiZ6POWsNsX8FL7db2kNTPc,6998
24
24
  flet/components/public_utils.py,sha256=9orF-ZoxspZtTmjMUp9KmXL4-jpQG6TAOVSrGTEbVyo,180
25
25
  flet/components/utils.py,sha256=6Uzs2cXg2VAWKr82vghSGTL3JglbHzADxkqc_7vns8o,2079
26
26
  flet/components/hooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -41,7 +41,7 @@ flet/controls/border.py,sha256=aBxj8OzEoufGPZb5yibsg2SO2OHeBAFmti63-y_oQtY,8808
41
41
  flet/controls/border_radius.py,sha256=ePfpA_uNhR6bfBSmYxy2cO0mZ3FU1r63qX_5RuHWwDM,6605
42
42
  flet/controls/box.py,sha256=UAz27hMyzXtUGjgm0bTtVupaEkWqUkhAeA1wR1YKoOs,12726
43
43
  flet/controls/buttons.py,sha256=0mLPx4fBjQNGn-ejMuNu1wHb38_0BGU0JOggmqbUs1E,9943
44
- flet/controls/colors.py,sha256=SIdze3v4ZACxVumHqD-zI8VWsS2cUU_W8ILGSYbKxfU,15379
44
+ flet/controls/colors.py,sha256=6qKCCEPPCk-oYdqj2FtjufMADepQXPGuriZv04imaX8,16594
45
45
  flet/controls/context.py,sha256=5daq2ixcHNcs2pyYbH9KCe-tHCq2_ebPjvORMs1TtD4,4250
46
46
  flet/controls/control.py,sha256=12Y_b8g8iSY8FlafeYZpaeJSgZQaKNzBLUof5JW4YlU,4488
47
47
  flet/controls/control_event.py,sha256=lM3H2V388JUQj9uCbPuUD7t2GxdEwX6F2nBluPzvzBc,3182
@@ -229,10 +229,11 @@ flet/testing/__init__.py,sha256=Yb9e6h11b2hV7O3TuqsJ7zwFAgNcbB7tY7Gp2ssxtN4,176
229
229
  flet/testing/finder.py,sha256=Rqv4qwjMcVx4ZYAJgZgGT2GVH5OR4ZgoQeKj5ZsFsRc,346
230
230
  flet/testing/flet_test_app.py,sha256=adDF_CPo9nWXyGxllYVDRt4skq7yfNQoqI2RpFZUTcQ,16580
231
231
  flet/testing/tester.py,sha256=_DSRFQQoGISve5JR2nq3AdSbUf18E6FfG3ytRD5tAfo,4946
232
- flet/utils/__init__.py,sha256=LVgyCBf1VNqGXkdtf1JCP20Rx2oaPITF4nAGw2zquVI,1739
232
+ flet/utils/__init__.py,sha256=fWHBR8S4g9mX1q9cFA8khZLGKDb9kIbiyH5_ny87lg8,1823
233
233
  flet/utils/browser.py,sha256=Z2PomJjClBXRRiPvGP7WRzbguvXQ8W2HQAzd_A5cmvE,157
234
234
  flet/utils/classproperty.py,sha256=9utA2znjTkQO9tQ7T8EuaXmBVQeQ1NAhteAc0PZdHHc,271
235
235
  flet/utils/deprecated.py,sha256=MzGbWwPlO6EZJNqkFFWd6ZHb3dIQd02WAKEru0yyFEI,3259
236
+ flet/utils/deprecated_enum.py,sha256=G_nJMdBkkPcCKjAWZUK3IWA8p0cNG6VtdYtI---04CU,1244
236
237
  flet/utils/files.py,sha256=TQ1FlFQEIzKAj2OmCLbDm_jW4QUlU25t78EihbrJbe4,1841
237
238
  flet/utils/from_dict.py,sha256=16jD0SQd_2mO7LK-2zT5MFDSsQYke2Gt7e_Fz_l6Nxw,3559
238
239
  flet/utils/hashing.py,sha256=bxUIJ-uS8Aap8l350V9hDwAxaAWuFbjOgnXfMXp7NaY,419
@@ -246,8 +247,8 @@ flet/utils/platform_utils.py,sha256=U4cqV3EPi5QNYjbhfZmtk41-KMtI_P7KvVdnZzMOgJA,
246
247
  flet/utils/slugify.py,sha256=e-lsoDc2_dk5jQnySaHCU83AA4O6mguEgCEdk2smW2Y,466
247
248
  flet/utils/strings.py,sha256=R63_i7PdSAStCDPJ-O_WHBt3H02JQ14GSbnjLIpPTUc,178
248
249
  flet/utils/vector.py,sha256=pYZzjldBWCZbSeSkZ8VmujwcZC7VBWk1NLBPA-2th3U,3207
249
- flet-0.70.0.dev6444.dist-info/METADATA,sha256=XuDuQpfhMrhuYnPrNg9hPaPHV1Lp-GqQeUOuAnP3QSU,6109
250
- flet-0.70.0.dev6444.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
251
- flet-0.70.0.dev6444.dist-info/entry_points.txt,sha256=mbBhHNUnLHiDqR36WeJrfLJU0Y0y087-M4wagQmaQ_Y,39
252
- flet-0.70.0.dev6444.dist-info/top_level.txt,sha256=HbLrSnWJX2jZOEZAI14cGzW8Q5BbOGTtE-7knD5FDh0,5
253
- flet-0.70.0.dev6444.dist-info/RECORD,,
250
+ flet-0.70.0.dev6475.dist-info/METADATA,sha256=8yQj97vnuVmquVFkiGj7oZBDB7mbh9mCav8L_qeonx8,6109
251
+ flet-0.70.0.dev6475.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
252
+ flet-0.70.0.dev6475.dist-info/entry_points.txt,sha256=mbBhHNUnLHiDqR36WeJrfLJU0Y0y087-M4wagQmaQ_Y,39
253
+ flet-0.70.0.dev6475.dist-info/top_level.txt,sha256=HbLrSnWJX2jZOEZAI14cGzW8Q5BbOGTtE-7knD5FDh0,5
254
+ flet-0.70.0.dev6475.dist-info/RECORD,,