instaui 0.2.0__py2.py3-none-any.whl → 0.2.2__py2.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.
Files changed (39) hide show
  1. instaui/arco/component_types.py +389 -182
  2. instaui/arco/components/input.py +1 -1
  3. instaui/arco/components/typography.py +1 -1
  4. instaui/boot_info.py +2 -2
  5. instaui/components/component.py +5 -2
  6. instaui/components/container.py +32 -0
  7. instaui/components/element.py +11 -8
  8. instaui/components/heading.py +46 -0
  9. instaui/components/html/range.py +2 -2
  10. instaui/components/html/ul.py +2 -2
  11. instaui/components/match.py +2 -2
  12. instaui/components/mixins.py +8 -4
  13. instaui/components/vfor.py +8 -6
  14. instaui/event/web_event.py +7 -1
  15. instaui/fastapi_server/_utils.py +5 -21
  16. instaui/fastapi_server/dependency_router.py +5 -1
  17. instaui/fastapi_server/event_router.py +5 -5
  18. instaui/fastapi_server/request_context.py +5 -4
  19. instaui/fastapi_server/watch_router.py +2 -2
  20. instaui/patch_update.py +54 -0
  21. instaui/response.py +64 -0
  22. instaui/spa_router/_file_base_utils.py +1 -1
  23. instaui/static/insta-ui.css +1 -1
  24. instaui/static/insta-ui.esm-browser.prod.js +877 -825
  25. instaui/static/insta-ui.js.map +1 -1
  26. instaui/ui/__init__.py +33 -6
  27. instaui/ui/__init__.pyi +6 -0
  28. instaui/ui_functions/ui_types.py +6 -2
  29. instaui/ui_system_var_type.py +6 -0
  30. instaui/vars/mixin_types/element_binding.py +5 -1
  31. instaui/vars/mixin_types/observable.py +1 -1
  32. instaui/vars/mixin_types/py_binding.py +7 -0
  33. instaui/vars/vue_computed.py +5 -2
  34. instaui/watch/web_watch.py +10 -2
  35. instaui/webview/api.py +2 -23
  36. {instaui-0.2.0.dist-info → instaui-0.2.2.dist-info}/METADATA +1 -1
  37. {instaui-0.2.0.dist-info → instaui-0.2.2.dist-info}/RECORD +39 -34
  38. {instaui-0.2.0.dist-info → instaui-0.2.2.dist-info}/WHEEL +0 -0
  39. {instaui-0.2.0.dist-info → instaui-0.2.2.dist-info}/licenses/LICENSE +0 -0
instaui/ui/__init__.py CHANGED
@@ -50,6 +50,8 @@ __all__ = [
50
50
  "context",
51
51
  "row",
52
52
  "grid",
53
+ "container",
54
+ "heading",
53
55
  "js",
54
56
  "watch",
55
57
  "vue_watch",
@@ -62,6 +64,7 @@ __all__ = [
62
64
  "skip_output",
63
65
  "str_format",
64
66
  "pre_setup_action",
67
+ "patch_set",
65
68
  "on_page_request_lifespan",
66
69
  "webview",
67
70
  "code",
@@ -102,6 +105,8 @@ from instaui.components.element import Element as element
102
105
  from instaui.components.row import Row as row
103
106
  from instaui.components.column import Column as column
104
107
  from instaui.components.grid import Grid as grid
108
+ from instaui.components.container import Container as container
109
+ from instaui.components.heading import Heading as heading
105
110
  from instaui.components.directive import Directive as directive
106
111
  from instaui.components.vfor import VFor as vfor
107
112
  from instaui.components.vif import VIf as vif
@@ -134,13 +139,35 @@ from .events import on_page_request_lifespan
134
139
  from instaui.extra_libs._import_error import show_error # noqa: E402, F401
135
140
  from instaui.js.fn import JsFn as js_fn
136
141
  from instaui.pre_setup import PreSetupAction as pre_setup_action
142
+ from instaui.patch_update import patch_set
137
143
 
138
144
  # -- dynamic imports
139
145
  from instaui.systems.module_system import LazyModule as _LazyModule
140
- markdown = _LazyModule('instaui.components.markdown.markdown', 'Markdown')
141
- webview = _LazyModule('instaui.webview', 'WebviewWrapper')
142
- use_shadcn_classless = _LazyModule('instaui.shadcn_classless._index', 'use_shadcn_classless')
146
+
147
+ markdown = _LazyModule("instaui.components.markdown.markdown", "Markdown")
148
+ webview = _LazyModule("instaui.webview", "WebviewWrapper")
149
+ use_shadcn_classless = _LazyModule(
150
+ "instaui.shadcn_classless._index", "use_shadcn_classless"
151
+ )
143
152
  # -- extra libs
144
- mermaid = _LazyModule('instaui.extra_libs._mermaid', 'mermaid', import_error_callback=show_error('Mermaid is not installed. Please run "pip install instaui-mermaid" to install it.'),)
145
- code = _LazyModule('instaui.extra_libs._shiki_code', 'code', import_error_callback=show_error('Shiki is not installed. Please run "pip install instaui-shiki" to install it.'),)
146
- echarts = _LazyModule('instaui.extra_libs._echarts', 'echarts', import_error_callback=show_error('Echarts is not installed. Please run "pip install instaui-echarts" to install it.'),)
153
+ mermaid = _LazyModule(
154
+ "instaui.extra_libs._mermaid",
155
+ "mermaid",
156
+ import_error_callback=show_error(
157
+ 'Mermaid is not installed. Please run "pip install instaui-mermaid" to install it.'
158
+ ),
159
+ )
160
+ code = _LazyModule(
161
+ "instaui.extra_libs._shiki_code",
162
+ "code",
163
+ import_error_callback=show_error(
164
+ 'Shiki is not installed. Please run "pip install instaui-shiki" to install it.'
165
+ ),
166
+ )
167
+ echarts = _LazyModule(
168
+ "instaui.extra_libs._echarts",
169
+ "echarts",
170
+ import_error_callback=show_error(
171
+ 'Echarts is not installed. Please run "pip install instaui-echarts" to install it.'
172
+ ),
173
+ )
instaui/ui/__init__.pyi CHANGED
@@ -50,6 +50,8 @@ __all__ = [
50
50
  "context",
51
51
  "row",
52
52
  "grid",
53
+ "container",
54
+ "heading",
53
55
  "js",
54
56
  "watch",
55
57
  "vue_watch",
@@ -62,6 +64,7 @@ __all__ = [
62
64
  "skip_output",
63
65
  "str_format",
64
66
  "pre_setup_action",
67
+ "patch_set",
65
68
  "on_page_request_lifespan",
66
69
  "webview",
67
70
  "code",
@@ -102,6 +105,8 @@ from instaui.components.element import Element as element
102
105
  from instaui.components.row import Row as row
103
106
  from instaui.components.column import Column as column
104
107
  from instaui.components.grid import Grid as grid
108
+ from instaui.components.container import Container as container
109
+ from instaui.components.heading import Heading as heading
105
110
  from instaui.components.directive import Directive as directive
106
111
  from instaui.components.vfor import VFor as vfor
107
112
  from instaui.components.vif import VIf as vif
@@ -134,6 +139,7 @@ from .events import on_page_request_lifespan
134
139
  from instaui.extra_libs._import_error import show_error # noqa: E402, F401
135
140
  from instaui.js.fn import JsFn as js_fn
136
141
  from instaui.pre_setup import PreSetupAction as pre_setup_action
142
+ from instaui.patch_update import patch_set
137
143
 
138
144
  # -- dynamic imports
139
145
  from instaui.components.markdown.markdown import Markdown as markdown
@@ -7,7 +7,11 @@ _T = TypeVar("_T")
7
7
 
8
8
 
9
9
  def is_bindable(obj: Any):
10
- return isinstance(obj, (CanInputMixin, CanOutputMixin,ObservableMixin, ElementBindingMixin))
10
+ return isinstance(
11
+ obj, (CanInputMixin, CanOutputMixin, ObservableMixin, ElementBindingMixin)
12
+ )
11
13
 
12
14
 
13
- TBindable = Union[CanInputMixin, CanOutputMixin,ObservableMixin, ElementBindingMixin[_T]]
15
+ TBindable = Union[
16
+ CanInputMixin, CanOutputMixin, ObservableMixin, ElementBindingMixin[_T]
17
+ ]
@@ -0,0 +1,6 @@
1
+ from typing import Literal
2
+
3
+
4
+ TSize = Literal["1", "2", "3", "4", "5", "6", "7", "8", "9"]
5
+ TWeight = Literal["light", "regular", "medium", "bold"]
6
+ TAlign = Literal["left", "center", "right"]
@@ -1,4 +1,4 @@
1
- from typing import Dict, Generic, TypeVar
1
+ from typing import Dict, Generic, TypeVar, Protocol
2
2
  from abc import ABC, abstractmethod
3
3
 
4
4
  T = TypeVar("T")
@@ -8,3 +8,7 @@ class ElementBindingMixin(ABC, Generic[T]):
8
8
  @abstractmethod
9
9
  def _to_element_binding_config(self) -> Dict:
10
10
  pass
11
+
12
+
13
+ class ElementBindingProtocol(Protocol):
14
+ def _to_element_binding_config(self) -> Dict: ...
@@ -4,4 +4,4 @@ from abc import ABC, abstractmethod
4
4
  class ObservableMixin(ABC):
5
5
  @abstractmethod
6
6
  def _to_observable_config(self):
7
- pass
7
+ pass
@@ -1,4 +1,5 @@
1
1
  from abc import ABC, abstractmethod
2
+ from typing import Sequence
2
3
 
3
4
 
4
5
  class CanInputMixin(ABC):
@@ -11,3 +12,9 @@ class CanOutputMixin(ABC):
11
12
  @abstractmethod
12
13
  def _to_output_config(self):
13
14
  pass
15
+
16
+
17
+ def _assert_outputs_be_can_output_mixin(outputs: Sequence):
18
+ for output in outputs:
19
+ if not isinstance(output, CanOutputMixin):
20
+ raise TypeError("The outputs parameter must be a `ui.state`")
@@ -6,7 +6,10 @@ from instaui.common.jsonable import Jsonable
6
6
  from instaui.runtime._app import get_current_scope
7
7
  from instaui.vars.path_var import PathVar
8
8
  from instaui.vars.mixin_types.var_type import VarMixin
9
- from instaui.vars.mixin_types.element_binding import ElementBindingMixin
9
+ from instaui.vars.mixin_types.element_binding import (
10
+ ElementBindingMixin,
11
+ ElementBindingProtocol,
12
+ )
10
13
  from instaui.vars.mixin_types.py_binding import CanInputMixin
11
14
  from instaui.vars.mixin_types.pathable import CanPathPropMixin
12
15
  from instaui.vars.mixin_types.str_format_binding import StrFormatBindingMixin
@@ -28,7 +31,7 @@ class VueComputed(
28
31
  def __init__(
29
32
  self,
30
33
  fn_code: str,
31
- bindings: Optional[Mapping[str, Union[ElementBindingMixin, Any]]] = None,
34
+ bindings: Optional[Mapping[str, Union[ElementBindingProtocol, Any]]] = None,
32
35
  ) -> None:
33
36
  self.code = fn_code
34
37
  self._bindings = bindings
@@ -9,7 +9,10 @@ from instaui.common.jsonable import Jsonable
9
9
  from instaui.runtime._app import get_app_slot, get_current_scope
10
10
  from instaui.handlers import watch_handler
11
11
 
12
- from instaui.vars.mixin_types.py_binding import CanOutputMixin
12
+ from instaui.vars.mixin_types.py_binding import (
13
+ CanOutputMixin,
14
+ _assert_outputs_be_can_output_mixin,
15
+ )
13
16
  from instaui.vars.mixin_types.common_type import TObservableInput
14
17
  from instaui._helper import observable_helper
15
18
  from instaui import pre_setup as _pre_setup
@@ -36,6 +39,11 @@ class WebWatch(Jsonable, typing.Generic[P, R]):
36
39
  ) -> None:
37
40
  if pre_setup:
38
41
  _pre_setup._check_args(pre_setup)
42
+
43
+ outputs = [] if outputs is None else outputs
44
+
45
+ _assert_outputs_be_can_output_mixin(outputs)
46
+
39
47
  inputs = observable_helper.auto_made_inputs_to_slient(inputs, outputs)
40
48
 
41
49
  get_current_scope().register_web_watch(self)
@@ -44,7 +52,7 @@ class WebWatch(Jsonable, typing.Generic[P, R]):
44
52
  observable_helper.analyze_observable_inputs(list(inputs or []))
45
53
  )
46
54
 
47
- self._outputs = [output._to_output_config() for output in outputs or []]
55
+ self._outputs = [output._to_output_config() for output in outputs]
48
56
  self._fn = func
49
57
  self._immediate = immediate
50
58
  self._deep = deep
instaui/webview/api.py CHANGED
@@ -1,10 +1,10 @@
1
- from typing import Any, Dict
1
+ from typing import Dict
2
2
 
3
3
 
4
4
  from instaui.runtime._app import get_app_slot
5
5
  from instaui.handlers import watch_handler
6
6
  from instaui.handlers import event_handler
7
- from instaui.skip import is_skip_output
7
+ from instaui.response import response_data
8
8
 
9
9
 
10
10
  class Api:
@@ -28,7 +28,6 @@ class Api:
28
28
 
29
29
  update_app_page_info(data)
30
30
 
31
-
32
31
  args = [bind for bind in data.get("bind", [])]
33
32
 
34
33
  result = handler.fn(*handler.get_handler_args(args))
@@ -50,23 +49,3 @@ def update_app_page_info(data: Dict):
50
49
 
51
50
  def _get_binds_from_data(data: Dict):
52
51
  return data.get("input", [])
53
-
54
-
55
- def response_data(outputs_binding_count: int, result: Any):
56
- data = {}
57
- if outputs_binding_count > 0:
58
- if not isinstance(result, tuple):
59
- result = [result]
60
-
61
- result_infos = [(r, int(is_skip_output(r))) for r in result]
62
-
63
- if len(result_infos) == 1 and result_infos[0][1] == 1:
64
- return data
65
-
66
- data["values"] = [0 if info[1] == 1 else info[0] for info in result_infos]
67
- skips = [info[1] for info in result_infos]
68
-
69
- if sum(skips) > 0:
70
- data["skips"] = skips
71
-
72
- return data
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: instaui
3
- Version: 0.2.0
3
+ Version: 0.2.2
4
4
  Summary: insta-ui is a Python-based UI library for rapidly building user interfaces.
5
5
  Author-email: CrystalWindSnake <568166495@qq.com>
6
6
  License-Expression: MIT
@@ -1,12 +1,15 @@
1
1
  instaui/__init__.py,sha256=AUc9WcEoBimqYCunwNghawZKuhup_qYd1bor5Go1qmA,161
2
- instaui/boot_info.py,sha256=2uIkRaNhuUCG6Jbyl2Gb0_1IbVxtfJ8s2j6X1XXdSk0,905
2
+ instaui/boot_info.py,sha256=wNThKm6cT9685JotP8MH_4oImsQQyDtMr1YjEDsQ2kQ,905
3
3
  instaui/consts.py,sha256=3le1YZTV2PM_jXgvEDWlBeGEJz8QIZ2StvA9MZpem_g,967
4
4
  instaui/html_tools.py,sha256=VJDnOdPPDzXi_u6bMj5_fqdFjGXG3-HgXQsvD0gfauc,2577
5
5
  instaui/inject.py,sha256=NeTcsxoPdo12kZCvGjFU9NNHsVWnsPJfIcNY5_sPGYc,727
6
6
  instaui/launch_collector.py,sha256=_YmF3hsNWe-ZxMp_amqUBHkhB6fOuTPfX16BVwn25xg,1731
7
7
  instaui/page_info.py,sha256=aJtfLp2h05tCuLzxk2pZ6a9ztyxSdI-g3NBRxbqpS6E,269
8
+ instaui/patch_update.py,sha256=btyiuUHdYv-U_7931HRACnFMw-ZBdg_RTVZFWogR6G4,1871
8
9
  instaui/pre_setup.py,sha256=oSwbkOkxkjLS1qP7mU4nY4S7UPXPk0Tdik2tY6WGnZY,1350
10
+ instaui/response.py,sha256=ByRHHY3tDAzOKLWK1ZJbBbGbsGnjnKSawt_ozOrBzso,1704
9
11
  instaui/skip.py,sha256=uqhqusgeChVoivKFMoZd-XePYrlSoLvUzRZDBcUgFmA,149
12
+ instaui/ui_system_var_type.py,sha256=UkSw1I_GPtBsLionaY9iXNGWkQvNUEWT6vACrwmU7Gk,196
10
13
  instaui/version.py,sha256=to8l16EjNe4jmzK316s5ZIotjv554tqF0VfwA1tBhQk,87
11
14
  instaui/_helper/observable_helper.py,sha256=U30PmA8jZ9q48GI_FMNPRYUTKNdl4SsMTAFoq94eRFs,1447
12
15
  instaui/action/__init__.py,sha256=YJQlCwJhQ4py5hAsfsgVUgfa9V2jNnu0pLlMFr5zXY0,219
@@ -14,7 +17,7 @@ instaui/action/cookie.py,sha256=UD4QbgxX3Ty5gXrE4_PmLjrQWV819qEtXO17c7h6Vc8,551
14
17
  instaui/action/url_location.py,sha256=zyTAJpA-3GBBe7WAiP2IDKQxeQhu0LNgBOxwEzcDaDk,823
15
18
  instaui/arco/__init__.py,sha256=_QuzxGbuQKuq9hjem65NKqYwiKDAP_3ZVPHy75Idw_s,6155
16
19
  instaui/arco/_settings.py,sha256=iuWQb-sGNlw4fBxf-Ufj-YGnBXaGVJIDMgPuVg9ZJ38,771
17
- instaui/arco/component_types.py,sha256=wAJvOw4SGbf8bcC3QTdJonsWk5SsRVui-imsKdg-Nzo,39397
20
+ instaui/arco/component_types.py,sha256=Eoz7h0HvwbyemhVFu7LGMXmqTyo1Cg-eJ4cU9Q8sjA0,41182
18
21
  instaui/arco/setup.py,sha256=iKyb7oDXSkpPUmYNF_4H4wzIG-dZMWjOys97wr6EsG4,996
19
22
  instaui/arco/types.py,sha256=3p55fBzYbpw633WmyFS7WdMcosBLme39VT4C1fbtQcg,341
20
23
  instaui/arco/_use_tools/locale.py,sha256=30-3dYbTV0aIoA3cMAH-TWreDZA94bf0LrKbJl5vCzk,1295
@@ -46,7 +49,7 @@ instaui/arco/components/empty.py,sha256=Y3QnWMffnYIUZ3vFFI1RpiAKFdpI3JH4DpZVm98p
46
49
  instaui/arco/components/form.py,sha256=42M2WZPx_2N8KTVE7GyM2j5PboB5etNuKk9TUDtVf9k,1272
47
50
  instaui/arco/components/icon.py,sha256=r3ft8SWRMxCWHB8hXYJ8XWhaQyLDw1WMbTGeNNYpqnY,529
48
51
  instaui/arco/components/image.py,sha256=AtlSE7rzzUAWbviGRQsxg6byEihr0DmSh3fWk2dO3E0,972
49
- instaui/arco/components/input.py,sha256=4cwljuQrAonE_6wGBuJGlnruLjk3tvlazdcTzchehFQ,2441
52
+ instaui/arco/components/input.py,sha256=MolWFMB1y6Ml-iXi15W3neTtFZGgSH3q2CgvsFSV47c,2442
50
53
  instaui/arco/components/input_number.py,sha256=-gO0cgVKEXsVlCo6p7-SFuqNKLEDeWYCGOl4uG4HQZM,2233
51
54
  instaui/arco/components/input_password.py,sha256=FcZbumYLYGh-s6cOMbfBTGcsPoKBXU_gGupudCKG9Fo,1090
52
55
  instaui/arco/components/input_search.py,sha256=oHimoUc3TeJbsfE_YYZqWY92RmKcUj9UDlh9DH2oOYU,965
@@ -93,7 +96,7 @@ instaui/arco/components/transfer.py,sha256=d0YcKEwcMF23Pd3TBJIoB_BeH7HKE4OX-qj8W
93
96
  instaui/arco/components/tree.py,sha256=aa3EVlyM1RHJ_3_d_0mp21y365_FLcwRHOePaDJ8bcQ,2597
94
97
  instaui/arco/components/tree_select.py,sha256=xXSSBFOjS_q0QPux97bP7YivWHTBdoUMiiN7xkN0-IU,2097
95
98
  instaui/arco/components/trigger.py,sha256=YYnxkAKEDGKjWOECEgmO7_AjTKhPEwAMycfgvKBD5Qw,1482
96
- instaui/arco/components/typography.py,sha256=j-Hr9yV9jlpF1X3X0KVuqYg2yTYpYXD2fFRylFPnaV8,3661
99
+ instaui/arco/components/typography.py,sha256=-PMY_AHAyGS5ty_s4Ywqig1oO-gkbHgTrwZJs7GEXeM,3662
97
100
  instaui/arco/components/upload.py,sha256=LOsFbkz4PaUEkSKnNdf6qM5KTs1EekInhy897JqRC1E,1684
98
101
  instaui/arco/components/verification_code.py,sha256=ticp_XwPoSRGLPUd3wwKCH-ZEuwHCk-aI-fIHTOgipA,1432
99
102
  instaui/arco/components/watermark.py,sha256=kCgkmvSqsup7BBTTOfHrqGOVStvZsHtUDenoRgoYQq0,391
@@ -106,19 +109,21 @@ instaui/arco/static/instaui-arco.js,sha256=PktbvZE6yids2NyfSKo81g--fCo-AiNEdOgvv
106
109
  instaui/common/jsonable.py,sha256=efzn_IvfrsaNKjc3B3UzshoMvsqSsB-jnD2Aia8YMYM,902
107
110
  instaui/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
108
111
  instaui/components/column.py,sha256=t_kDAelb-5_aqx4hv19sOm8zcQpRmn-slTMcwZfMOLk,848
109
- instaui/components/component.py,sha256=-wRHA159i6LYC3Lw3wOZRUpaqbKn9WPw0r8wljyaZgI,1250
112
+ instaui/components/component.py,sha256=JRL-v9nGA6RwJhyXZ1G7rKiEovWjNHPxT5EJefHVjaQ,1293
113
+ instaui/components/container.py,sha256=wuzTyhqtbJwArBqiSwX0GKvFvCpPFwjixaGlGwuCueU,1203
110
114
  instaui/components/content.py,sha256=f6dm0GukYJk4RRNJzuvOGqBrStLWkJQbLkV7M5fJ63k,1094
111
115
  instaui/components/directive.py,sha256=bHSOWXNhzWRVNqLXwhc_hY3R3g-JAQ5DWIqpZkI6_wI,1411
112
- instaui/components/element.py,sha256=XS87h5oWYcye1S2omEDw6uPj4i-RREEI7gIJNDgUbOg,17122
116
+ instaui/components/element.py,sha256=HfxRTg4s5K2IzaUaPvUCWMogXUHjfFGG4TDuJxTCKyw,17167
113
117
  instaui/components/grid.py,sha256=h9Lzxqiw4HB-8VG2JGHVz-KGn4bHTtsibtUb8UCgHO4,7529
118
+ instaui/components/heading.py,sha256=TeOUK-ipQDmjtqjqGolj2l2P4-9wMdeHBu5posF3L30,1941
114
119
  instaui/components/label.py,sha256=Fp7malMB2i6MjJjZnxdIl2tg6rb33-1PdgxEhGecoTM,118
115
- instaui/components/match.py,sha256=rQ74OV9V5rJvK8taHfpD-VDPXF0raxvNKjD_5nWnjXM,2778
116
- instaui/components/mixins.py,sha256=4AMZU_9uf9daV0bKS28opZRRM5_Bp89yNLQ_dhpDCTo,350
120
+ instaui/components/match.py,sha256=B8g80ujc8WtZeMChXNkYIFPdz2_JKkLqIyuOPh7vkJ4,2784
121
+ instaui/components/mixins.py,sha256=a_IX0TIYKkWdcuTjb90ENM7KlidxXcBgsTV67TvGLOw,544
117
122
  instaui/components/row.py,sha256=c0dxJwt955EF7PXlrFpqIoQNZ59tJm-UvZlx_zjeuBg,570
118
123
  instaui/components/slot.py,sha256=RT0eU7wH7ffFDkl5ucfrNXB1nbsKDq688Hp920TZaoo,2287
119
124
  instaui/components/transition_group.py,sha256=H9zx9NTlCoQnBArWfmxmh7CMKb5hZn8vKrFe4OFxPrE,201
120
125
  instaui/components/value_element.py,sha256=wRIAaR3_Cq9qLNJw2KPhWt7dJmclj1mrttzlGpb01Y0,1412
121
- instaui/components/vfor.py,sha256=uUaePBf-Z2utV0C0j0KuMe5eebAUA6vG-2q77qOZ_UI,4033
126
+ instaui/components/vfor.py,sha256=wWFghRVS9jfPAisNuyFqG8bPrHFYIXnYkS7NmhtAuL4,4048
122
127
  instaui/components/vif.py,sha256=vn-tZ_ejVm5S5NjR1s9HPVCRXKPbi-tAzUBkz4PTdxs,1237
123
128
  instaui/components/html/__init__.py,sha256=B1BDIbeHexH3dEg1Gwx3HwZgR0JnxWhNcNlVUp5VeE4,1137
124
129
  instaui/components/html/_mixins.py,sha256=5dcSM9h1PswIKL6_eiqUxqW4H2OCuyNeCuRZq3gDGOc,876
@@ -136,12 +141,12 @@ instaui/components/html/link.py,sha256=eNC2f-twFZUhw_rL-Ggff2Lo8NRU33oF8CfWW_9-k
136
141
  instaui/components/html/number.py,sha256=Y2oIzTMHKWMWpufG55tFz0npEoEFvLhTWpZbMJ8J07s,1069
137
142
  instaui/components/html/paragraph.py,sha256=TNMtI9dyQb6hYKE5vGAsSXiOiEqkx7BM6CEoJrg6nz8,914
138
143
  instaui/components/html/radio.py,sha256=yZxwLnzWhDMn8D_z98aVuXpQR-FO6q8zeUa80Ut8wig,1013
139
- instaui/components/html/range.py,sha256=cLGoo3QaARG9YDnh6g3UYtc1yueI5dfMa9-4e-feSn4,1644
144
+ instaui/components/html/range.py,sha256=jjdrfUVRvMPSZcmwYalS1tG1DI94nNr8VPJG-RjcTUk,1650
140
145
  instaui/components/html/select.py,sha256=C6LK6vZZsMgy5GZk2HvqG7XwfdXcycQLn043eUwogA4,2121
141
146
  instaui/components/html/span.py,sha256=RJnccwnYEh8PUZ36VTBCKzBNV74M3SMohAejb0ck0UI,440
142
147
  instaui/components/html/table.py,sha256=1n46pPOMKkFfEsHB0Qwep-ELShm-jeeCSOfznfY1mSc,1492
143
148
  instaui/components/html/textarea.py,sha256=Zx8r9fBz74_73-RGW5lWHXQvWkIjWiNAwXrcZtLs3Vw,972
144
- instaui/components/html/ul.py,sha256=YbP2kH0Utlwr194uvVlCNQk1Xfl-5O24nVsDHSM0dqg,545
149
+ instaui/components/html/ul.py,sha256=wk4o2MKp6lX4KSxdY42FVP_qan8a9SEfSpYdTbrLOsQ,545
145
150
  instaui/components/markdown/markdown.js,sha256=ZlwxvQJ_0Fq1R-j-unfQTWMRswJ8GsYgLvd-wxVISGc,682
146
151
  instaui/components/markdown/markdown.py,sha256=2_ECsZPJ2P5hdP5-Kna0KwoFtHEzk8hgtTZ9rPX5Mds,978
147
152
  instaui/components/markdown/static/github-markdown.css,sha256=_uphCFXVa_Hhwyfs7ps-wcpBuzA7_RhkiX7DuxuLIzI,42536
@@ -165,23 +170,23 @@ instaui/dependencies/plugin_dependency.py,sha256=6u562ihKbiL3DE4hBrGjauS2nzYEC2g
165
170
  instaui/event/event_mixin.py,sha256=cN0Wh95e1wX183mGnGFm8BK_aEHWJ8WNx3Upy75mU_4,286
166
171
  instaui/event/js_event.py,sha256=CGegLXP3QldJp0jN-lNY0XSG8fLuaitFqKkgGEfI7yE,2868
167
172
  instaui/event/vue_event.py,sha256=NRwEcAromivjyPtgMq5SEqHqx8GEc1OJZsRL2Nj43RY,2187
168
- instaui/event/web_event.py,sha256=PyqOqp8DFf5qf6OJ-qPEHiwTvKQ6qDhg4WFSlM_4YGo,4452
173
+ instaui/event/web_event.py,sha256=QEtB_EfMQC0RQahbF8eeg7SSP5sSHcqjUMtW4exnsNk,4566
169
174
  instaui/experimental/__init__.py,sha256=nKvudMaBaDsxflSZQ00ck8Cc4hmrF0f6Xzs4mhIYa08,75
170
175
  instaui/experimental/debug.py,sha256=UGUWgNZ3ShanpuxfuPdx52TgQrkO9hByABYMnPZEIiE,1325
171
176
  instaui/extra_libs/_echarts.py,sha256=HCF4mxmzVyKRtxHuehiqf7kmBq7G14_dc2m9XQEM-fQ,78
172
177
  instaui/extra_libs/_import_error.py,sha256=qwmDoCoGutqjQpVmvtH5iUkrtyuiTTPZXgEMZzYBAG4,294
173
178
  instaui/extra_libs/_mermaid.py,sha256=2b0EymPyHUUBrNadvhK7lRtInh9K-7pzQJFZhj_WkNQ,89
174
179
  instaui/extra_libs/_shiki_code.py,sha256=UTC7gvTF8BEgVerhkL45xwpZKY9tPN2_Ddbe0jxFYjQ,79
175
- instaui/fastapi_server/_utils.py,sha256=MCqbebS4UkBOV8fp3Oy415Tvxnqi2mnMl5Eqe6yJogg,1177
180
+ instaui/fastapi_server/_utils.py,sha256=gSExmZYxpVs8Pxzt06fPObbBG8771PVHL5n5hGfld-w,756
176
181
  instaui/fastapi_server/_uvicorn.py,sha256=n-es5ajWepXb6xF9EP0ft2lrEbsyLGWMUE7uVqpkUAs,1174
177
182
  instaui/fastapi_server/debug_mode_router.py,sha256=EcYtPxI4FMnUqZcn-CZhZiMLgciHVNZpSRfiSIDRChc,1547
178
- instaui/fastapi_server/dependency_router.py,sha256=KZISD-0N1a40uXEsjOYlMTOJbItJ4Nyyb5W1VxXvOBA,898
179
- instaui/fastapi_server/event_router.py,sha256=_b0UNaPiwGwk7ElcF7XQnZfraPyWG2Miv9-wg-RI-PU,1648
183
+ instaui/fastapi_server/dependency_router.py,sha256=_PqNdVc2PSSRUJ3ziU4kBEkCDE4wHl7a6BCtyiYTL90,950
184
+ instaui/fastapi_server/event_router.py,sha256=MAgmEVQ9KkhYd9UNZxmKfFcvHHJVUnb-ZFJS__kRhkY,1658
180
185
  instaui/fastapi_server/middlewares.py,sha256=IXxTG12P58FS5m5m4ocLcUFizDVs1CR61z22nwMH8AI,1096
181
- instaui/fastapi_server/request_context.py,sha256=EV5ZG4zgI_NPlTxinqO4AIREj6rbb1-HcjKCMa2Unfs,521
186
+ instaui/fastapi_server/request_context.py,sha256=SFhV6Nx8hyUJauqHrTc01bNMfqx1OUppe9mDEtlu2SQ,527
182
187
  instaui/fastapi_server/resource.py,sha256=2788yiuRjE3GRLqyukuL-x6qN0TSUNzNCm6S51ulNTk,887
183
188
  instaui/fastapi_server/server.py,sha256=ENBZeSFif4EJAeRK1WXftdW40M6YbIGYy9k3WZs1rm8,10109
184
- instaui/fastapi_server/watch_router.py,sha256=KC8AbGNpH2x11PHQMPgc9N5WOlqW05i6r0PTU5A35rI,1599
189
+ instaui/fastapi_server/watch_router.py,sha256=uWTOdbczLfayjh42y0uk1lq0sdMl1pTNs6JsaGDmGxI,1607
185
190
  instaui/handlers/_utils.py,sha256=uO7WgbNhrykJwDwSEXQxsqsuCR37nx8ehL_urXm-Tks,2830
186
191
  instaui/handlers/event_handler.py,sha256=hjxi_nDh0yjk9EmRgew1USXk-Egd4pR8YnUiOcJbbnc,1761
187
192
  instaui/handlers/watch_handler.py,sha256=Ay4lubEdRnZcWSqWLwxQyS_uWiF0gu-E9PrNGCAHvL0,1600
@@ -201,7 +206,7 @@ instaui/shadcn_classless/_index.py,sha256=8gjLIh4J1ezFsQr3hvqS76gY_nhdgiNpexY-EN
201
206
  instaui/shadcn_classless/static/shadcn-classless.css,sha256=ThJK_nVoBTOoyuz2I-w7dgUgXyZRI_HIupHgaz5Pl0Q,10876
202
207
  instaui/spa_router/__init__.py,sha256=DGSf0YD6wZFj22kmPSyJWUmm_Lx3_YFg32iOa096T7Y,519
203
208
  instaui/spa_router/_components.py,sha256=vPo4JuRtbD_5ll0LkGwU1p8l_pxNfCSdFLDzMXsoEpw,896
204
- instaui/spa_router/_file_base_utils.py,sha256=fdZJxi8h9oEf9olks4m-0rTe9Fqn7lq3uIDyFFt07xU,8805
209
+ instaui/spa_router/_file_base_utils.py,sha256=tBf8AKIapPg5miqEwvElbItGUQq6jB4owyZY4Ig_Bbk,8806
205
210
  instaui/spa_router/_functions.py,sha256=6EDwXLHnmRrB_CUcbRNPblfOUPF8orob9PXrWm2RfSI,3227
206
211
  instaui/spa_router/_install.py,sha256=X9p7wtuGxo6B5F47UTY4ndOSRzENXkoK1XdkNo3F_YA,291
207
212
  instaui/spa_router/_route_model.py,sha256=qtRDoTqWjEWxV5bFDsLGgw6c5mET-o9Ks5oDnU1Czd8,3997
@@ -210,10 +215,10 @@ instaui/spa_router/_router_output.py,sha256=Nc6N8yO_9IrUbaYbPZMkOX_9VlwBKzyXMaha
210
215
  instaui/spa_router/_router_param_var.py,sha256=KCy54xBZxGMqLO3Zlbzr6XV8ts-M6jCOKunL2gz5IUc,1455
211
216
  instaui/spa_router/_types.py,sha256=KuGuv5C6qivwllfdmV5qrvM0S_GWJ6u8OOTkCNmJImU,81
212
217
  instaui/spa_router/templates/page_routes,sha256=8VjM_8f6pjFb01QbU9z5HNqpcNRdCiX3X0OqNHLq8fo,1355
213
- instaui/static/insta-ui.css,sha256=EFA-_5bytZzwbe9w_kaAskE-bpdtwKbBRAyS4iw7NvU,292
214
- instaui/static/insta-ui.esm-browser.prod.js,sha256=h227I7Wp8LdU2N0yQ12AwpCh3baI7UvsJVg_dy6JsQc,110065
218
+ instaui/static/insta-ui.css,sha256=tzRSCerW6bTeXW18g1fA1ndU743yENblDEPzQ3o6uRU,6375
219
+ instaui/static/insta-ui.esm-browser.prod.js,sha256=Wa5KzmnG0CxaPDrdBjL0eGosgsg2PiRxlEh_wdEInjo,111151
215
220
  instaui/static/insta-ui.ico,sha256=08FJg4qWolvOjfodoh8IJLStslrvd8sDyuRcTUDq5ak,1150
216
- instaui/static/insta-ui.js.map,sha256=uA-8ZZFO5zZxLEC4t5HeK40RnI-n-bJ7L2QBbqatZrU,663681
221
+ instaui/static/insta-ui.js.map,sha256=5PMTmzW-d_teWLlFv_G8Ape5I9_f2CbQnx6mNwYT4hw,667612
217
222
  instaui/static/instaui-tools-browser.js,sha256=cLHKNXYaYMZriMxV-yKGAHTrHSdNRUlDVZmv6uc6mMw,14455
218
223
  instaui/static/vue.esm-browser.prod.js,sha256=vwQkXANuVYQuEFc0VgiokJdhNyMmvxMKyb1FmrYrNb4,162662
219
224
  instaui/static/vue.global.prod.js,sha256=YO-UVLcXWjFOKfGU2uRrIMYpliGY2y48OmEjV464Z7M,157933
@@ -238,14 +243,14 @@ instaui/template/env.py,sha256=ZqVsqpfSY1mupbgpBSkvOJytNui8xfNR5kNNC9rv4Ps,150
238
243
  instaui/template/web_template.py,sha256=AAdxFBmJl7_ofVrDGWcRsBLB2cth3SNffL2ZNhr6fdo,1621
239
244
  instaui/template/webview_template.py,sha256=8NhsfWDqtX4EjA92aTilKT-1vMrlgp95sV3svRAHzco,1575
240
245
  instaui/template/zero_template.py,sha256=5WKIJ23RFXPN9rR_L6DLxZ-i2ZBBcJKmjjc1CitiRXM,3532
241
- instaui/ui/__init__.py,sha256=2qBJh8DFwDpklvzVJ-TBBjlfzAH1RECAlTmawN2MP3s,4867
242
- instaui/ui/__init__.pyi,sha256=nrMq_VnVwwRrBhgauvjmDJLZlfldBBXvI5BeHGAQcNc,4947
246
+ instaui/ui/__init__.py,sha256=u5kdFGbz8LCP0V4lWgHg_-dNCaYIZ8oqznRammc1fQA,5201
247
+ instaui/ui/__init__.pyi,sha256=oiTMg7t_OjM91efhlxTj-wN4s3mjFeBJNX3FIBeT2WM,5167
243
248
  instaui/ui/events.py,sha256=lfhiINwn-Kh0MezsSeLJPttWm6G1aWiwyk3TRo0NrlA,809
244
249
  instaui/ui_functions/input_slient_data.py,sha256=0A5DegIt_MqdZgbj1RiVFNmB_RUqgov9FYtkw6VX0DE,511
245
250
  instaui/ui_functions/server.py,sha256=thMkBT2BDOd18FIz4ilfIgO6EJGD19l0sumlOnYbzIM,914
246
251
  instaui/ui_functions/str_format.py,sha256=ECWttA4LlNHlvdT_73wGF_I68soWNEXTP_Hosmxt-m4,1139
247
252
  instaui/ui_functions/ui_page.py,sha256=WVm1qoQ9IxE3kWKKnAU8WVI8drsqxxlLucYKfEZ712s,367
248
- instaui/ui_functions/ui_types.py,sha256=J5tqFFkoZJMuoLeTqU52KNgw3kdB_IfcrhaBmyI6NAA,505
253
+ instaui/ui_functions/ui_types.py,sha256=5LpSSEsyxd6ldeZJ0A3fzDoaylqhV1Or0qBRx-VOuvg,531
249
254
  instaui/vars/_types.py,sha256=wthCk1fcxj1SZ5y6b84W9gFpoi8j2PYnfmaPj4Am72s,308
250
255
  instaui/vars/data.py,sha256=zetw3wloheoh45gyuXQ_FZsy_UE6JIt04sYrM5RkFHs,1799
251
256
  instaui/vars/element_ref.py,sha256=qC-Kb1hBGz_Y6WKjKxRvYR8jdvWW4VeAAGzJ2wSrGgI,1059
@@ -258,30 +263,30 @@ instaui/vars/slot_prop.py,sha256=qBVQ0Ze0T8-Wsy__8qEuqVESIrLX69Bmy21Kuxrg_GQ,119
258
263
  instaui/vars/state.py,sha256=x6qeTliE1J7qoFmAG7huJ-sNQ4VcFgy0IlJoNodqRe0,3190
259
264
  instaui/vars/types.py,sha256=K0QTajlzHaDvFoVMCHAhY_rVvrBm3FsC92BFPOgdBog,511
260
265
  instaui/vars/vfor_item.py,sha256=cVrpErh8OrycYjDLm7PTuE2kIcC2M6ThAQlwvTXG8x0,5490
261
- instaui/vars/vue_computed.py,sha256=XIgwnVuIaC8RZsgH3LYW88cpqcaIcO5V6UWR_sJ2fks,2557
266
+ instaui/vars/vue_computed.py,sha256=U99NQVWv1GS0aRdDtT39LTDhkACnNl7NbfgAwtgsUVg,2600
262
267
  instaui/vars/web_computed.py,sha256=l84nUW_EVzDXmw-vwyz9k_2PSyUvSpNXiP9N6RohH3s,6058
263
268
  instaui/vars/web_view_computed.py,sha256=bFFVE9jRKczNy4HhmegWoC6KOL_Nrej-ag37DAIDzaA,36
264
269
  instaui/vars/mixin_types/common_type.py,sha256=4KduANLCUCeGTA1ClEsbFzEzd8Mgve3693Wxf9H7Gmw,176
265
- instaui/vars/mixin_types/element_binding.py,sha256=4suqqLT3zn5y7LvqVo2QrEgI1uUFS_5sv8vtTUCzkTc,235
266
- instaui/vars/mixin_types/observable.py,sha256=h2cox7BwQtLOWqCTaWnNU0TsgYJKuoNUuuEqwj-KXpU,141
270
+ instaui/vars/mixin_types/element_binding.py,sha256=KUJY7s-Qem6Cwd_g0nC7A3RWwbMqt56EdB70OQpupj8,345
271
+ instaui/vars/mixin_types/observable.py,sha256=jWT4xeL2NMQ4iLGsV141gcC9_ZMbt6nJVm9ztxuw6h4,143
267
272
  instaui/vars/mixin_types/pathable.py,sha256=40H5f1gCDtKs4Qor0C-moB821T7Df8DOgUcntjxgums,302
268
- instaui/vars/mixin_types/py_binding.py,sha256=VIVSrHrjcltsP5ADKHtMSZBpi2qKyameXqoEevdfqk8,237
273
+ instaui/vars/mixin_types/py_binding.py,sha256=8FTSYJfPVianxolYEKBqs0QxVpX3cAHWL6RMPqUn0Ho,486
269
274
  instaui/vars/mixin_types/str_format_binding.py,sha256=i2jXm1RKddPnGrCxEyz0tkDrBU2FfjR0EviQ0RKZsbY,257
270
275
  instaui/vars/mixin_types/var_type.py,sha256=FQj1TEkjT7HopDPztt0-J6eQVGHjem3KBFsjZwvcvYg,57
271
276
  instaui/watch/_types.py,sha256=HJ_eAID0NsEJ_S8PhcYWxpVWhYLjjqKlbNWwqdqS4IU,73
272
277
  instaui/watch/_utils.py,sha256=mTITHG8hp0pyfQXUERQKXMDna5Au02bhuASCV32eXHI,124
273
278
  instaui/watch/js_watch.py,sha256=8lVINBauHBRiDX3-F1V6V5_1CN9j1EMCROjcD9LRCD8,4230
274
279
  instaui/watch/vue_watch.py,sha256=Vd3nsRyf9ufrXLFTjaSvglwnkoWyE32fOV0qOogWPt4,2013
275
- instaui/watch/web_watch.py,sha256=CgiDoHsMmJChrYViRRuhl2zQ9Ij6Avc4ZaVzbXjWJ_c,6578
280
+ instaui/watch/web_watch.py,sha256=XFT7dP1p8Vwjqr_vsWmq8fe3zRffo0GP47iCLtpRg8Q,6739
276
281
  instaui/webview/__init__.py,sha256=_L8B0Ym7i1Q8eonQ81fC54EXn7oZuc6zE1KqeAEPHEg,65
277
282
  instaui/webview/_utils.py,sha256=pqARVv37h-8p7CLOpvqLV8O_az4EV2VD9G-beUVqjD8,172
278
- instaui/webview/api.py,sha256=9xuG3EKpmOOy1dvIrS9C9z9ukQDRnIdZLrGFD5FLyvU,2071
283
+ instaui/webview/api.py,sha256=_d5Sr5oJMvpuefKPPxrVjqY60CVNjDosFvlNgsiovCE,1493
279
284
  instaui/webview/index.py,sha256=lPA1sVd5YzqFW62yvvRqeI0M53oNCoVwweGAakZOu1k,5820
280
285
  instaui/webview/resource.py,sha256=AEYoMQG-k1JX6h2SDLeVuCgyKk03iq27V-S_oO9GxDA,5662
281
286
  instaui/zero/__init__.py,sha256=N0LuRUAcaurxHSspcEDuwZg62W2S3qL4VtrMKxOivBE,49
282
287
  instaui/zero/func.py,sha256=O0tZnlahKhp8pQ9plMicQtjp3itHA6lliZwMmfDbLnc,3668
283
288
  instaui/zero/scope.py,sha256=HGohYOqnpRGVkkoz_gvR6-DgCc48AtJAcDwbOnnGHLM,3753
284
- instaui-0.2.0.dist-info/METADATA,sha256=pV0-u5rup0Xj09eUkEfAD5O6hys0t_yImiF8-Y31c5M,3650
285
- instaui-0.2.0.dist-info/WHEEL,sha256=tkmg4JIqwd9H8mL30xA7crRmoStyCtGp0VWshokd1Jc,105
286
- instaui-0.2.0.dist-info/licenses/LICENSE,sha256=_JjnAWrikJ6qkwT7PazeFNRlcIu8q_RH3mYcHTxEF5c,1094
287
- instaui-0.2.0.dist-info/RECORD,,
289
+ instaui-0.2.2.dist-info/METADATA,sha256=4bCxQEvr3bpXx_VNmLKke7bnJamFB-wxlVdnAA71nZ0,3650
290
+ instaui-0.2.2.dist-info/WHEEL,sha256=tkmg4JIqwd9H8mL30xA7crRmoStyCtGp0VWshokd1Jc,105
291
+ instaui-0.2.2.dist-info/licenses/LICENSE,sha256=_JjnAWrikJ6qkwT7PazeFNRlcIu8q_RH3mYcHTxEF5c,1094
292
+ instaui-0.2.2.dist-info/RECORD,,