ex4nicegui 0.6.4__tar.gz → 0.6.5__tar.gz
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.
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/PKG-INFO +1 -1
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/__init__.py +1 -1
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/dataSource.py +5 -5
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/gsap/gsap.py +4 -4
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/gsap/timeline.py +3 -3
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/EChartsComponent/ECharts.py +3 -3
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/vfor.py +2 -2
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/clientScope.py +10 -9
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/PKG-INFO +1 -1
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/requires.txt +1 -1
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/setup.py +1 -1
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/LICENSE +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/README.md +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/dataSourceFacade.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/containers.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/layouts.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/models.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/text.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_aggrid.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_date_picker.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_date_picker.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_echarts.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_radio.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_range.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_select.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_slider.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/elements/ui_table.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/index.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/protocols.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/bi/types.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/experimental_/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/experimental_/gridLayout/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/experimental_/gridLayout/index.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/gsap/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/gsap/timeline.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/gsap/wrapGsap.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/gridFlex/GridFlex.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/gridFlex/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/gridFlex/gridFlex.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/gridFlex/utils.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/rxFlex/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/rxFlex/index.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/layout/rxFlex/types.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-color.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-dispatch.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-drag.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-ease.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-interpolate.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-selection.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-timer.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-transition.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/d3/d3-zoom.ems.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/CSSPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/CSSRulePlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/CustomEase.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/Draggable.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/EasePack.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/EaselPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/Flip.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/MotionPathPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/Observer.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/PixiPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/ScrollToPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/ScrollTrigger.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/TextPlugin.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/all.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/gsap-core.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/utils/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/utils/matrix.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/utils/paths.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/libs/gsap/utils/strings.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/EChartsComponent/ECharts.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/EChartsComponent/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/UseDraggable/UseDraggable.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/UseDraggable/UseDraggable.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/UseDraggable/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/dropZone/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/dropZone/dropZone.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/dropZone/dropZone.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/empty.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/empty.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/fileWatcher.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/local_file_picker.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/mermaid/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/mermaid/mermaid.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/mermaid/mermaid.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/aggrid.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/base.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/button.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/card.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/checkbox.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/circular_progress.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/color_picker.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/column.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/date.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/drawer.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/echarts.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/element.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/expansion.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/grid.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/html.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/html.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/icon.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/image.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/input.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/knob.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/label.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/linear_progress.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/number.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/radio.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/row.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/select.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/slider.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/switch.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/tab.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/tab_panel.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/tab_panels.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/table.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/tabs.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/textarea.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/upload.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/officials/utils.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/q_pagination.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/rxui.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/transitionGroup.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/transitionGroup.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/useMouse/UseMouse.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/useMouse/UseMouse.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/useMouse/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/usePagination.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/utils.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/vfor.js +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/reactive/vmodel.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/tools/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/tools/debug.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/__init__.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/apiEffect.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/asyncComputed.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/common.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/effect.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/scheduler.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui/utils/signals.py +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/SOURCES.txt +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/dependency_links.txt +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/not-zip-safe +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/ex4nicegui.egg-info/top_level.txt +0 -0
- {ex4nicegui-0.6.4 → ex4nicegui-0.6.5}/setup.cfg +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
from typing import Callable, Dict, List, Optional, Set, cast, TYPE_CHECKING
|
|
3
3
|
from ex4nicegui import to_ref, ref_computed, on, batch, effect
|
|
4
|
-
from nicegui import
|
|
4
|
+
from nicegui import Client, ui
|
|
5
5
|
|
|
6
6
|
from dataclasses import dataclass, field
|
|
7
7
|
from . import types
|
|
@@ -149,7 +149,7 @@ class DataSource:
|
|
|
149
149
|
self.__notify_update()
|
|
150
150
|
|
|
151
151
|
def get_component_info_key(self, element_id: types._TElementID):
|
|
152
|
-
client_id =
|
|
152
|
+
client_id = ui.context.client.id
|
|
153
153
|
return ComponentInfoKey(client_id, element_id)
|
|
154
154
|
|
|
155
155
|
def get_filtered_data(self, element: ui.element):
|
|
@@ -175,7 +175,7 @@ class DataSource:
|
|
|
175
175
|
update_callback: Optional[_TComponentUpdateCallback] = None,
|
|
176
176
|
ui_result: Optional[UiResult] = None,
|
|
177
177
|
):
|
|
178
|
-
ng_client =
|
|
178
|
+
ng_client = ui.context.client
|
|
179
179
|
client_id = ng_client.id
|
|
180
180
|
|
|
181
181
|
if not self._component_map.has_client_record(client_id):
|
|
@@ -198,7 +198,7 @@ class DataSource:
|
|
|
198
198
|
filter: Optional[Filter],
|
|
199
199
|
notify_update=True,
|
|
200
200
|
):
|
|
201
|
-
client_id =
|
|
201
|
+
client_id = ui.context.client.id
|
|
202
202
|
key = ComponentInfoKey(client_id, element_id)
|
|
203
203
|
|
|
204
204
|
if not self._component_map.has_record(key):
|
|
@@ -216,7 +216,7 @@ class DataSource:
|
|
|
216
216
|
return self
|
|
217
217
|
|
|
218
218
|
def notify_update(self, exclude: Optional[List[UiResult]] = None):
|
|
219
|
-
client_id =
|
|
219
|
+
client_id = ui.context.client.id
|
|
220
220
|
exclude_infos = [
|
|
221
221
|
self._component_map.get_info(ComponentInfoKey(client_id, ur.id))
|
|
222
222
|
for ur in (exclude or [])
|
|
@@ -2,7 +2,7 @@ import os
|
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
from typing import Dict, Optional, Union
|
|
4
4
|
from nicegui.element import Element
|
|
5
|
-
from nicegui import
|
|
5
|
+
from nicegui import ui
|
|
6
6
|
from weakref import WeakKeyDictionary
|
|
7
7
|
|
|
8
8
|
|
|
@@ -45,7 +45,7 @@ class Gsap(
|
|
|
45
45
|
def fn():
|
|
46
46
|
self.run_method("runScript", script)
|
|
47
47
|
|
|
48
|
-
if
|
|
48
|
+
if ui.context.client.has_socket_connection:
|
|
49
49
|
fn()
|
|
50
50
|
else:
|
|
51
51
|
tasks = self._props["scriptTasks"]
|
|
@@ -55,7 +55,7 @@ class Gsap(
|
|
|
55
55
|
def fn():
|
|
56
56
|
self.run_method(name, targets, vars)
|
|
57
57
|
|
|
58
|
-
if
|
|
58
|
+
if ui.context.client.has_socket_connection:
|
|
59
59
|
fn()
|
|
60
60
|
else:
|
|
61
61
|
tasks = self._props["tasks"]
|
|
@@ -66,7 +66,7 @@ __instance_map = WeakKeyDictionary()
|
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
def _get_instance():
|
|
69
|
-
current_client =
|
|
69
|
+
current_client = ui.context.client
|
|
70
70
|
ins = __instance_map.get(current_client)
|
|
71
71
|
|
|
72
72
|
if not ins:
|
|
@@ -2,7 +2,7 @@ import os
|
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
from typing import Dict, Optional, Union
|
|
4
4
|
from nicegui.element import Element
|
|
5
|
-
from nicegui import
|
|
5
|
+
from nicegui import ui
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
class Timeline(
|
|
@@ -40,7 +40,7 @@ class Timeline(
|
|
|
40
40
|
def fn():
|
|
41
41
|
self.run_method("runScript", script)
|
|
42
42
|
|
|
43
|
-
if
|
|
43
|
+
if ui.context.client.has_socket_connection:
|
|
44
44
|
fn()
|
|
45
45
|
else:
|
|
46
46
|
tasks = self._props["scriptTasks"]
|
|
@@ -52,7 +52,7 @@ class Timeline(
|
|
|
52
52
|
def fn():
|
|
53
53
|
self.run_method(name, targets, vars)
|
|
54
54
|
|
|
55
|
-
if
|
|
55
|
+
if ui.context.client.has_socket_connection:
|
|
56
56
|
fn()
|
|
57
57
|
else:
|
|
58
58
|
tasks = self._props["tasks"]
|
|
@@ -16,7 +16,7 @@ from nicegui.events import (
|
|
|
16
16
|
)
|
|
17
17
|
from nicegui.element import Element
|
|
18
18
|
from nicegui.awaitable_response import AwaitableResponse
|
|
19
|
-
from nicegui import
|
|
19
|
+
from nicegui import ui
|
|
20
20
|
from pathlib import Path
|
|
21
21
|
import nicegui
|
|
22
22
|
import uuid
|
|
@@ -102,7 +102,7 @@ class echarts(Element, component="ECharts.js", libraries=libraries): # type: ig
|
|
|
102
102
|
|
|
103
103
|
client.connect_handlers.remove(on_client_connect) # type: ignore
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
ui.context.client.on_connect(on_client_connect)
|
|
106
106
|
|
|
107
107
|
def echartsOn_handler(e):
|
|
108
108
|
callbackId = e.args["callbackId"]
|
|
@@ -176,7 +176,7 @@ class echarts(Element, component="ECharts.js", libraries=libraries): # type: ig
|
|
|
176
176
|
handler: _T_echats_on_callback,
|
|
177
177
|
query: Optional[Union[str, Dict]] = None,
|
|
178
178
|
):
|
|
179
|
-
if not
|
|
179
|
+
if not ui.context.client.has_socket_connection:
|
|
180
180
|
|
|
181
181
|
def task_func():
|
|
182
182
|
self.echarts_on(event_name, handler, query)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
from nicegui.element import Element
|
|
3
|
-
from nicegui import
|
|
3
|
+
from nicegui import ui
|
|
4
4
|
from ex4nicegui.utils.clientScope import _CLIENT_SCOPE_MANAGER
|
|
5
5
|
from ex4nicegui.utils.signals import (
|
|
6
6
|
TReadonlyRef,
|
|
@@ -158,7 +158,7 @@ class vfor(Generic[_T]):
|
|
|
158
158
|
key, element, store, scope = build_element(idx, value)
|
|
159
159
|
self._store_map[key] = StoreItem(store, element.id, scope)
|
|
160
160
|
|
|
161
|
-
ng_client = context.
|
|
161
|
+
ng_client = ui.context.client
|
|
162
162
|
|
|
163
163
|
@on(self._data, deep=True)
|
|
164
164
|
def _():
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from typing import Dict
|
|
2
2
|
from signe.core.scope import ScopeSuite
|
|
3
|
-
from nicegui import Client,
|
|
3
|
+
from nicegui import Client, ui
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
_TClientID = str
|
|
@@ -24,18 +24,19 @@ class NgClientScopeManager:
|
|
|
24
24
|
# if len(ng_context.get_slot_stack()) <= 0:
|
|
25
25
|
# return
|
|
26
26
|
|
|
27
|
-
client =
|
|
28
|
-
# if client.shared:
|
|
29
|
-
# return
|
|
27
|
+
client = ui.context.client
|
|
30
28
|
|
|
31
29
|
if client.id not in self._client_scope_map:
|
|
32
30
|
self._client_scope_map[client.id] = NgScopeSuite()
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
32
|
+
# shared clients always not dispose their scope
|
|
33
|
+
if not client.shared:
|
|
34
|
+
|
|
35
|
+
@client.on_disconnect
|
|
36
|
+
def _(e: Client):
|
|
37
|
+
if e.id in self._client_scope_map:
|
|
38
|
+
self._client_scope_map[e.id]._top_scope.dispose()
|
|
39
|
+
del self._client_scope_map[e.id]
|
|
39
40
|
|
|
40
41
|
return self._client_scope_map[client.id]
|
|
41
42
|
|
|
@@ -21,7 +21,7 @@ def get_data_files(base):
|
|
|
21
21
|
readme = Path("README.en.md").read_text("utf8")
|
|
22
22
|
|
|
23
23
|
|
|
24
|
-
requirements = ["signe>=0.4.14", "nicegui>=1.4.
|
|
24
|
+
requirements = ["signe>=0.4.14", "nicegui>=1.4.23", "typing_extensions", "executing"]
|
|
25
25
|
|
|
26
26
|
test_requirements = ["pytest>=3", "playwright", "pandas", "executing"]
|
|
27
27
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|