dara-core 1.21.20__py3-none-any.whl → 1.21.22__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.
dara/core/definitions.py CHANGED
@@ -509,7 +509,7 @@ class ApiRoute(BaseModel):
509
509
  model_config = ConfigDict(arbitrary_types_allowed=True)
510
510
 
511
511
  def __hash__(self):
512
- return hash((self.handler, self.method, self.url, tuple(self.dependencies)))
512
+ return hash((self.handler, self.method, self.url))
513
513
 
514
514
 
515
515
  class Page(BaseModel):
@@ -98563,6 +98563,10 @@ body,
98563
98563
  const theme2 = React$1.useMemo(() => resolveTheme(mainTheme, baseTheme), [baseTheme, mainTheme]);
98564
98564
  return /* @__PURE__ */ React.createElement(styled.ThemeProvider, { theme: theme2 }, /* @__PURE__ */ React.createElement(StyledDiv, { style: { fontSize: theme2.font.size, ...style }, $rawCss: css2 }, props.children.map((c) => /* @__PURE__ */ React.createElement(DynamicComponent$1, { component: c, key: c.uid }))));
98565
98565
  }
98566
+ function PublicDynamicComponent(props) {
98567
+ const [component] = useVariable(props.component);
98568
+ return /* @__PURE__ */ React.createElement(DynamicComponent$1, { component });
98569
+ }
98566
98570
  exports.ActionImpl = ActionImpl;
98567
98571
  exports.AuthType = AuthType;
98568
98572
  exports.AuthenticatedRoot = AuthenticatedRoot;
@@ -98599,6 +98603,7 @@ body,
98599
98603
  exports.PartialRequestExtrasProvider = PartialRequestExtrasProvider;
98600
98604
  exports.PoweredByCausalens = PoweredByCausalens;
98601
98605
  exports.ProgressTracker = ProgressTracker;
98606
+ exports.PublicDynamicComponent = PublicDynamicComponent;
98602
98607
  exports.ReactRouter = index;
98603
98608
  exports.RequestExtrasCtx = requestExtrasCtx;
98604
98609
  exports.RequestExtrasProvider = RequestExtrasProvider;
@@ -1,6 +1,12 @@
1
1
  from dara.core.definitions import ComponentInstance, JsComponentDef
2
+ from dara.core.interactivity.client_variable import ClientVariable
2
3
 
3
- DynamicComponentDef = JsComponentDef(name='DynamicComponent', js_module='@darajs/core', py_module='dara.core')
4
+ DynamicComponentDef = JsComponentDef(
5
+ name='DynamicComponent',
6
+ js_module='@darajs/core',
7
+ js_component='PublicDynamicComponent',
8
+ py_module='dara.core',
9
+ )
4
10
 
5
11
 
6
12
  class DynamicComponent(ComponentInstance):
@@ -9,7 +15,8 @@ class DynamicComponent(ComponentInstance):
9
15
  to recursively render Dara components on each page. It can be used directly in advanced use cases where a component can be
10
16
  serialized and passed around as a dictionary.
11
17
 
12
- :param component: A Dara component instance or a dictionary representing a Dara component.
18
+ :param component: A Dara component instance or a dictionary representing a Dara component,
19
+ or a variable that will be resolved to a component instance.
13
20
  """
14
21
 
15
- component: ComponentInstance | dict
22
+ component: ComponentInstance | dict | ClientVariable
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dara-core
3
- Version: 1.21.20
3
+ Version: 1.21.22
4
4
  Summary: Dara Framework Core
5
5
  Home-page: https://dara.causalens.com/
6
6
  License: Apache-2.0
@@ -21,12 +21,12 @@ Requires-Dist: cachetools (>=5.0.0,<6.0.0)
21
21
  Requires-Dist: certifi (>=2024.7.4)
22
22
  Requires-Dist: click (>=8.1.3,<9.0.0)
23
23
  Requires-Dist: colorama (>=0.4.6,<0.5.0)
24
- Requires-Dist: create-dara-app (==1.21.20)
24
+ Requires-Dist: create-dara-app (==1.21.22)
25
25
  Requires-Dist: croniter (>=6.0.0,<7.0.0)
26
26
  Requires-Dist: cryptography (>=42.0.4)
27
- Requires-Dist: dara-components (==1.21.20) ; extra == "all"
27
+ Requires-Dist: dara-components (==1.21.22) ; extra == "all"
28
28
  Requires-Dist: exceptiongroup (>=1.1.3,<2.0.0)
29
- Requires-Dist: fastapi (>=0.115.0,<0.116.0)
29
+ Requires-Dist: fastapi (>=0.115.0,<0.121.0)
30
30
  Requires-Dist: fastapi_vite_dara (==0.4.0)
31
31
  Requires-Dist: h11 (>=0.16.0)
32
32
  Requires-Dist: httpx (>=0.23.0)
@@ -55,7 +55,7 @@ Description-Content-Type: text/markdown
55
55
 
56
56
  # Dara Application Framework
57
57
 
58
- <img src="https://github.com/causalens/dara/blob/v1.21.20/img/dara_light.svg?raw=true">
58
+ <img src="https://github.com/causalens/dara/blob/v1.21.22/img/dara_light.svg?raw=true">
59
59
 
60
60
  ![Master tests](https://github.com/causalens/dara/actions/workflows/tests.yml/badge.svg?branch=master)
61
61
  [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
@@ -100,7 +100,7 @@ source .venv/bin/activate
100
100
  dara start
101
101
  ```
102
102
 
103
- ![Dara App](https://github.com/causalens/dara/blob/v1.21.20/img/components_gallery.png?raw=true)
103
+ ![Dara App](https://github.com/causalens/dara/blob/v1.21.22/img/components_gallery.png?raw=true)
104
104
 
105
105
  Note: `pip` installation uses [PEP 660](https://peps.python.org/pep-0660/) `pyproject.toml`-based editable installs which require `pip >= 21.3` and `setuptools >= 64.0.0`. You can upgrade both with:
106
106
 
@@ -117,9 +117,9 @@ Explore some of our favorite apps - a great way of getting started and getting t
117
117
 
118
118
  | Dara App | Description |
119
119
  | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
120
- | ![Large Language Model](https://github.com/causalens/dara/blob/v1.21.20/img/llm.png?raw=true) | Demonstrates how to use incorporate a LLM chat box into your decision app to understand model insights |
121
- | ![Plot Interactivity](https://github.com/causalens/dara/blob/v1.21.20/img/plot_interactivity.png?raw=true) | Demonstrates how to enable the user to interact with plots, trigger actions based on clicks, mouse movements and other interactions with `Bokeh` or `Plotly` plots |
122
- | ![Graph Editor](https://github.com/causalens/dara/blob/v1.21.20/img/graph_viewer.png?raw=true) | Demonstrates how to use the `CausalGraphViewer` component to display your graphs or networks, customising the displayed information through colors and tooltips, and updating the page based on user interaction. |
120
+ | ![Large Language Model](https://github.com/causalens/dara/blob/v1.21.22/img/llm.png?raw=true) | Demonstrates how to use incorporate a LLM chat box into your decision app to understand model insights |
121
+ | ![Plot Interactivity](https://github.com/causalens/dara/blob/v1.21.22/img/plot_interactivity.png?raw=true) | Demonstrates how to enable the user to interact with plots, trigger actions based on clicks, mouse movements and other interactions with `Bokeh` or `Plotly` plots |
122
+ | ![Graph Editor](https://github.com/causalens/dara/blob/v1.21.22/img/graph_viewer.png?raw=true) | Demonstrates how to use the `CausalGraphViewer` component to display your graphs or networks, customising the displayed information through colors and tooltips, and updating the page based on user interaction. |
123
123
 
124
124
  Check out our [App Gallery](https://dara.causalens.com/gallery) for more inspiration!
125
125
 
@@ -146,9 +146,9 @@ And the supporting UI packages and tools.
146
146
  - `ui-utils` - miscellaneous utility functions
147
147
  - `ui-widgets` - widget components
148
148
 
149
- More information on the repository structure can be found in the [CONTRIBUTING.md](https://github.com/causalens/dara/blob/v1.21.20/CONTRIBUTING.md) file.
149
+ More information on the repository structure can be found in the [CONTRIBUTING.md](https://github.com/causalens/dara/blob/v1.21.22/CONTRIBUTING.md) file.
150
150
 
151
151
  ## License
152
152
 
153
- Dara is open-source and licensed under the [Apache 2.0 License](https://github.com/causalens/dara/blob/v1.21.20/LICENSE).
153
+ Dara is open-source and licensed under the [Apache 2.0 License](https://github.com/causalens/dara/blob/v1.21.22/LICENSE).
154
154
 
@@ -12,7 +12,7 @@ dara/core/configuration.py,sha256=PAxtnIF86kRh3D7DrdB3lxwl2QkA008aKSykvcLGlCE,23
12
12
  dara/core/css.py,sha256=c1TMGzOcXYIy-qU-TxeirGlq2BNEigP80eDG3ItjRbU,1740
13
13
  dara/core/data_utils.py,sha256=haR-SPCFm90RfOIndPBGOpFtOEmhiJgizmzcqzZOZBg,12455
14
14
  dara/core/defaults.py,sha256=b65eh02Xcsl9kinIch_MYOMEklcs7M7pfJ_oCpWiIs8,4734
15
- dara/core/definitions.py,sha256=S1ZvbsW7atxdESdDwGl-WR4Ezc_ukjVSHzhpOqyak2Y,18036
15
+ dara/core/definitions.py,sha256=uf8dVhEff9LMBLEK4SaZjod_WP5PH2jnuasni__ZeL8,18010
16
16
  dara/core/http.py,sha256=gFkUV3jBY6lx0ZIIzeFw8zEH6WAb8uIKfo_t8heZDEw,4739
17
17
  dara/core/interactivity/__init__.py,sha256=LTH2OOGtJSE4684xVrkjQXpxUMlf7_re8joIOm0EjV8,2728
18
18
  dara/core/interactivity/actions.py,sha256=zK5316fT_bhg2LwXFhrtfqzoHBOi6SSzXw6EeuKgElk,48281
@@ -93,11 +93,11 @@ dara/core/router/compat.py,sha256=B83wq46AwQARTDfZwGrpr0slrnQmi_T7shOUNpqltSM,31
93
93
  dara/core/router/components.py,sha256=Wsf_bBnnN-1EE5jhbjPSOyDv_TVKEsY4royyOQOazM4,6132
94
94
  dara/core/router/dependency_graph.py,sha256=A0xGuZWSOCGs7rwHbeZC5vLvZouUt-2fnEX9VM2Ukp0,2280
95
95
  dara/core/router/router.py,sha256=5Nh7ms7ynnUWEV1FuCus-XvGp4NAe4OB1jdS2x5SS7Q,31249
96
- dara/core/umd/dara.core.umd.cjs,sha256=8pJvabwoDOeVaLvntyUFRDgLWwfpPt3JBqykPs4g1Cs,5146284
96
+ dara/core/umd/dara.core.umd.cjs,sha256=Dr1ETPDiQP02GRMLVzBm8HqwOKGy5rzf092opFSXKww,5146527
97
97
  dara/core/umd/style.css,sha256=yT3PKpi2sKI2-kQIF8xtVbTPQqgpK7-Ua7tfzDPuSsI,4095881
98
98
  dara/core/visual/__init__.py,sha256=QN0wbG9HPQ_vXh8BO8DnBXeYLIENVTNtRmYzZf1lx7c,577
99
99
  dara/core/visual/components/__init__.py,sha256=nmCsnMLXeZAjkhMYz-mIFodpVY-69IO1fvwwXbFlMQ4,2447
100
- dara/core/visual/components/dynamic_component.py,sha256=opa6zp_IGJgjgn7DOS35JmBbX7nHcmUQL44cMzELQc8,660
100
+ dara/core/visual/components/dynamic_component.py,sha256=F_UxogMQ9I5GB6BLqDmGaojRQyOOmwJBB5kaIk1iPpI,867
101
101
  dara/core/visual/components/fallback.py,sha256=-7lJwqPrm47Xbqs3rYEUw2JXuJRJpd_wYMt7no8uWkE,4746
102
102
  dara/core/visual/components/for_cmp.py,sha256=SxUR0KYYHbLYZqPGesfSM-GSzCBL2eXyqYDlYYLkYdQ,6316
103
103
  dara/core/visual/components/invalid_component.py,sha256=Q6O9rAwVUNZXjEmliAKLfWf2lsyYK5JhgQvMM6jVco8,901
@@ -120,8 +120,8 @@ dara/core/visual/themes/__init__.py,sha256=aM4mgoIYo2neBSw5FRzswsht7PUKjLthiHLmF
120
120
  dara/core/visual/themes/dark.py,sha256=UQGDooOc8ric73eHs9E0ltYP4UCrwqQ3QxqN_fb4PwY,1942
121
121
  dara/core/visual/themes/definitions.py,sha256=jywX4ObSPSW5ppm5mki50L_dPEIeAWweYre1C225STk,2697
122
122
  dara/core/visual/themes/light.py,sha256=-Tviq8oEwGbdFULoDOqPuHO0UpAZGsBy8qFi0kAGolQ,1944
123
- dara_core-1.21.20.dist-info/LICENSE,sha256=r9u1w2RvpLMV6YjuXHIKXRBKzia3fx_roPwboGcLqCc,10944
124
- dara_core-1.21.20.dist-info/METADATA,sha256=CYkFj17OhToEkIA42S15TT3Tn5c_vgcDRsXyt6gz1h0,7541
125
- dara_core-1.21.20.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
126
- dara_core-1.21.20.dist-info/entry_points.txt,sha256=H__D5sNIGuPIhVam0DChNL-To5k8Y7nY7TAFz9Mz6cc,139
127
- dara_core-1.21.20.dist-info/RECORD,,
123
+ dara_core-1.21.22.dist-info/LICENSE,sha256=r9u1w2RvpLMV6YjuXHIKXRBKzia3fx_roPwboGcLqCc,10944
124
+ dara_core-1.21.22.dist-info/METADATA,sha256=lOkQxEZJQ1KRZ3hzzWrDpJ5kRroEcwCCUX9mI1Ez-Po,7541
125
+ dara_core-1.21.22.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
126
+ dara_core-1.21.22.dist-info/entry_points.txt,sha256=H__D5sNIGuPIhVam0DChNL-To5k8Y7nY7TAFz9Mz6cc,139
127
+ dara_core-1.21.22.dist-info/RECORD,,