From f7534708f7189abc29d9dc6fe98e3e4f694dccac Mon Sep 17 00:00:00 2001 From: Mike Bender Date: Thu, 5 Oct 2023 13:08:53 -0400 Subject: [PATCH] feat: deephaven.ui plugin prototype initial checkin (#47) - deephaven.ui plugin prototype initial checkin has some extremely basic cases implemented (Fixes #51) - Needs my ui-plugin-prototype branch to work correctly (as that how the JS side is loading components): https://github.com/mofojed/web-client-ui/tree/ui-plugin-prototype - The examples in the `plugins/ui/examples` folder should work - Included DESIGN.md which is the discussion/notes from the google doc discussion - Added some TODO notes about things that require follow up - Install as you would other plugins Implemented so far: - Basic `@ui.component` decorator (Fixes #54) - Creates a `FunctionElement` object when called. `FunctionElement` is then "rendered" (e.g. function is run) when the `FunctionElement` object is exported (see `FunctionElementMessageStream`) (Fixes #52) - Exports a document tree (Fixes #53) - Basic hooks are implemented (Fixes #55), along with tests. See the `hooks` folder for the hooks available (`use_state`, `use_memo`, `use_effect`, etc) - `text_field` and `text` types are implemented - Basic HTML elements (Fixes #56) - Create JS Plugin side (Fixes #57) - DashboardPlugin to open components created by @ui.component (Fixes #58) - HTML JS component handles any raw HTML component (Fixes #60) --- .gitignore | 9 + README.md | 2 +- package-lock.json | 476 +++++- .../src/js/src/AuthPluginKeycloak.tsx | 3 +- plugins/manifest.json | 3 +- plugins/ui/.gitignore | 8 + plugins/ui/DESIGN.md | 1342 +++++++++++++++++ plugins/ui/LICENSE | 202 +++ plugins/ui/README.md | 62 + plugins/ui/examples/README.md | 494 ++++++ plugins/ui/examples/assets/checkbox.png | Bin 0 -> 3785 bytes plugins/ui/examples/assets/counter.png | Bin 0 -> 3716 bytes plugins/ui/examples/assets/docker.png | Bin 0 -> 45727 bytes plugins/ui/examples/assets/double-tft.png | Bin 0 -> 73170 bytes plugins/ui/examples/assets/double_table.png | Bin 0 -> 119187 bytes plugins/ui/examples/assets/stock_rollup.png | Bin 0 -> 171172 bytes .../ui/examples/assets/stock_widget_plot.png | Bin 0 -> 88866 bytes .../assets/stock_widget_table_invalid.png | Bin 0 -> 14277 bytes .../assets/stock_widget_table_valid.png | Bin 0 -> 143523 bytes plugins/ui/examples/assets/text_field.png | Bin 0 -> 3601 bytes .../ui/examples/assets/text_filter_table.png | Bin 0 -> 141445 bytes plugins/ui/examples/assets/wave_input.png | Bin 0 -> 94362 bytes plugins/ui/examples/assets/waves.png | Bin 0 -> 19968 bytes .../ui/examples/assets/waves_with_plot.png | Bin 0 -> 68611 bytes plugins/ui/pyproject.toml | 3 + plugins/ui/setup.cfg | 37 + plugins/ui/src/deephaven/ui/__init__.py | 18 + .../deephaven/ui/_internal/RenderContext.py | 128 ++ .../ui/src/deephaven/ui/_internal/__init__.py | 9 + .../ui/src/deephaven/ui/_internal/shared.py | 28 + .../ui/src/deephaven/ui/_internal/utils.py | 73 + .../src/deephaven/ui/components/__init__.py | 26 + .../ui/src/deephaven/ui/components/html.py | 154 ++ .../ui/src/deephaven/ui/components/icon.py | 8 + .../deephaven/ui/components/make_component.py | 20 + .../ui/components/spectrum/__init__.py | 2 + .../deephaven/ui/components/spectrum/basic.py | 123 ++ .../deephaven/ui/components/spectrum/flex.py | 76 + .../src/deephaven/ui/elements/BaseElement.py | 29 + .../ui/src/deephaven/ui/elements/Element.py | 29 + .../deephaven/ui/elements/FunctionElement.py | 46 + .../ui/src/deephaven/ui/elements/__init__.py | 9 + plugins/ui/src/deephaven/ui/hooks/__init__.py | 13 + .../ui/src/deephaven/ui/hooks/use_callback.py | 25 + .../ui/src/deephaven/ui/hooks/use_effect.py | 28 + plugins/ui/src/deephaven/ui/hooks/use_memo.py | 22 + plugins/ui/src/deephaven/ui/hooks/use_ref.py | 35 + .../ui/src/deephaven/ui/hooks/use_state.py | 34 + .../ui/object_types/ElementMessageStream.py | 119 ++ .../deephaven/ui/object_types/ElementType.py | 22 + .../src/deephaven/ui/object_types/__init__.py | 2 + .../src/deephaven/ui/renderer/NodeEncoder.py | 106 ++ .../src/deephaven/ui/renderer/RenderedNode.py | 32 + .../ui/src/deephaven/ui/renderer/Renderer.py | 62 + .../ui/src/deephaven/ui/renderer/__init__.py | 3 + plugins/ui/src/js/.gitignore | 5 + plugins/ui/src/js/LICENSE | 176 +++ plugins/ui/src/js/package.json | 65 + plugins/ui/src/js/src/DashboardPlugin.tsx | 24 + plugins/ui/src/js/src/ElementPanel.tsx | 187 +++ plugins/ui/src/js/src/ElementUtils.ts | 44 + plugins/ui/src/js/src/ElementView.tsx | 31 + plugins/ui/src/js/src/FigureObject.tsx | 44 + plugins/ui/src/js/src/HTMLElementUtils.ts | 28 + plugins/ui/src/js/src/HTMLElementView.tsx | 22 + plugins/ui/src/js/src/IconElementUtils.ts | 24 + plugins/ui/src/js/src/IconElementView.tsx | 25 + plugins/ui/src/js/src/ObjectView.tsx | 49 + plugins/ui/src/js/src/SpectrumElementUtils.ts | 70 + plugins/ui/src/js/src/SpectrumElementView.tsx | 26 + plugins/ui/src/js/src/TableObject.tsx | 33 + plugins/ui/src/js/src/index.ts | 1 + .../ui/src/js/src/spectrum/ActionButton.tsx | 29 + plugins/ui/src/js/src/spectrum/Slider.tsx | 43 + plugins/ui/src/js/src/spectrum/TextField.tsx | 43 + plugins/ui/src/js/src/spectrum/index.ts | 9 + plugins/ui/src/js/src/styles.scss | 6 + plugins/ui/src/js/vite.config.ts | 33 + plugins/ui/src/ui.schema.json | 95 ++ plugins/ui/test/__init__.py | 0 plugins/ui/test/deephaven/__init__.py | 0 plugins/ui/test/deephaven/ui/BaseTest.py | 34 + plugins/ui/test/deephaven/ui/__init__.py | 0 plugins/ui/test/deephaven/ui/test_encoder.py | 356 +++++ plugins/ui/test/deephaven/ui/test_hooks.py | 138 ++ plugins/ui/test/deephaven/ui/test_render.py | 103 ++ plugins/ui/test/deephaven/ui/test_utils.py | 51 + plugins/ui/tox.ini | 8 + 88 files changed, 5715 insertions(+), 9 deletions(-) create mode 100644 plugins/ui/.gitignore create mode 100644 plugins/ui/DESIGN.md create mode 100644 plugins/ui/LICENSE create mode 100644 plugins/ui/README.md create mode 100644 plugins/ui/examples/README.md create mode 100644 plugins/ui/examples/assets/checkbox.png create mode 100644 plugins/ui/examples/assets/counter.png create mode 100644 plugins/ui/examples/assets/docker.png create mode 100644 plugins/ui/examples/assets/double-tft.png create mode 100644 plugins/ui/examples/assets/double_table.png create mode 100644 plugins/ui/examples/assets/stock_rollup.png create mode 100644 plugins/ui/examples/assets/stock_widget_plot.png create mode 100644 plugins/ui/examples/assets/stock_widget_table_invalid.png create mode 100644 plugins/ui/examples/assets/stock_widget_table_valid.png create mode 100644 plugins/ui/examples/assets/text_field.png create mode 100644 plugins/ui/examples/assets/text_filter_table.png create mode 100644 plugins/ui/examples/assets/wave_input.png create mode 100644 plugins/ui/examples/assets/waves.png create mode 100644 plugins/ui/examples/assets/waves_with_plot.png create mode 100644 plugins/ui/pyproject.toml create mode 100644 plugins/ui/setup.cfg create mode 100644 plugins/ui/src/deephaven/ui/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/_internal/RenderContext.py create mode 100644 plugins/ui/src/deephaven/ui/_internal/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/_internal/shared.py create mode 100644 plugins/ui/src/deephaven/ui/_internal/utils.py create mode 100644 plugins/ui/src/deephaven/ui/components/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/components/html.py create mode 100644 plugins/ui/src/deephaven/ui/components/icon.py create mode 100644 plugins/ui/src/deephaven/ui/components/make_component.py create mode 100644 plugins/ui/src/deephaven/ui/components/spectrum/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/components/spectrum/basic.py create mode 100644 plugins/ui/src/deephaven/ui/components/spectrum/flex.py create mode 100644 plugins/ui/src/deephaven/ui/elements/BaseElement.py create mode 100644 plugins/ui/src/deephaven/ui/elements/Element.py create mode 100644 plugins/ui/src/deephaven/ui/elements/FunctionElement.py create mode 100644 plugins/ui/src/deephaven/ui/elements/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/use_callback.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/use_effect.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/use_memo.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/use_ref.py create mode 100644 plugins/ui/src/deephaven/ui/hooks/use_state.py create mode 100644 plugins/ui/src/deephaven/ui/object_types/ElementMessageStream.py create mode 100644 plugins/ui/src/deephaven/ui/object_types/ElementType.py create mode 100644 plugins/ui/src/deephaven/ui/object_types/__init__.py create mode 100644 plugins/ui/src/deephaven/ui/renderer/NodeEncoder.py create mode 100644 plugins/ui/src/deephaven/ui/renderer/RenderedNode.py create mode 100644 plugins/ui/src/deephaven/ui/renderer/Renderer.py create mode 100644 plugins/ui/src/deephaven/ui/renderer/__init__.py create mode 100644 plugins/ui/src/js/.gitignore create mode 100644 plugins/ui/src/js/LICENSE create mode 100644 plugins/ui/src/js/package.json create mode 100644 plugins/ui/src/js/src/DashboardPlugin.tsx create mode 100644 plugins/ui/src/js/src/ElementPanel.tsx create mode 100644 plugins/ui/src/js/src/ElementUtils.ts create mode 100644 plugins/ui/src/js/src/ElementView.tsx create mode 100644 plugins/ui/src/js/src/FigureObject.tsx create mode 100644 plugins/ui/src/js/src/HTMLElementUtils.ts create mode 100644 plugins/ui/src/js/src/HTMLElementView.tsx create mode 100644 plugins/ui/src/js/src/IconElementUtils.ts create mode 100644 plugins/ui/src/js/src/IconElementView.tsx create mode 100644 plugins/ui/src/js/src/ObjectView.tsx create mode 100644 plugins/ui/src/js/src/SpectrumElementUtils.ts create mode 100644 plugins/ui/src/js/src/SpectrumElementView.tsx create mode 100644 plugins/ui/src/js/src/TableObject.tsx create mode 100644 plugins/ui/src/js/src/index.ts create mode 100644 plugins/ui/src/js/src/spectrum/ActionButton.tsx create mode 100644 plugins/ui/src/js/src/spectrum/Slider.tsx create mode 100644 plugins/ui/src/js/src/spectrum/TextField.tsx create mode 100644 plugins/ui/src/js/src/spectrum/index.ts create mode 100644 plugins/ui/src/js/src/styles.scss create mode 100644 plugins/ui/src/js/vite.config.ts create mode 100644 plugins/ui/src/ui.schema.json create mode 100644 plugins/ui/test/__init__.py create mode 100644 plugins/ui/test/deephaven/__init__.py create mode 100644 plugins/ui/test/deephaven/ui/BaseTest.py create mode 100644 plugins/ui/test/deephaven/ui/__init__.py create mode 100644 plugins/ui/test/deephaven/ui/test_encoder.py create mode 100644 plugins/ui/test/deephaven/ui/test_hooks.py create mode 100644 plugins/ui/test/deephaven/ui/test_render.py create mode 100644 plugins/ui/test/deephaven/ui/test_utils.py create mode 100644 plugins/ui/tox.ini diff --git a/.gitignore b/.gitignore index 97101ec9b..c46ea4386 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,12 @@ node_modules .vscode/ tsconfig.tsbuildinfo + +# Ignore user IntelliJ settings +.idea/ + +# Ignore users local python venvs +.venv/ + +# Ignore any local tox virtualenvs +.tox/ \ No newline at end of file diff --git a/README.md b/README.md index 73b1479ea..2b340e5c9 100644 --- a/README.md +++ b/README.md @@ -138,4 +138,4 @@ Using the path to your local deephaven-js-plugins repo where the manifest.json i START_OPTS="-Ddeephaven.jsPlugins.resourceBase=deephaven-js-plugins/plugins" ./gradlew server-jetty-app:run ``` -The deephaven IDE can then be opened at http://localhost:10000/ide/, with your plugins ready to use. +The Deephaven IDE can then be opened at http://localhost:10000/ide/, with your plugins ready to use. diff --git a/package-lock.json b/package-lock.json index febbe3dfa..a5470d787 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3198,6 +3198,10 @@ "resolved": "plugins/table-example/src/js", "link": true }, + "node_modules/@deephaven/js-plugin-ui": { + "resolved": "plugins/ui/src/js", + "link": true + }, "node_modules/@deephaven/jsapi-bootstrap": { "version": "0.40.1", "resolved": "https://registry.npmjs.org/@deephaven/jsapi-bootstrap/-/jsapi-bootstrap-0.40.1.tgz", @@ -14325,9 +14329,9 @@ } }, "node_modules/intl-messageformat": { - "version": "10.5.2", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.2.tgz", - "integrity": "sha512-X4rlUNbgCc8/RdMhmvUEEZ38yNDn5S4r0u8n8yQH2OOdhsR46SmOuQsCKG35nRXmL5u2nxPsNN6qNhHoMm6FMQ==", + "version": "10.5.3", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.3.tgz", + "integrity": "sha512-TzKn1uhJBMyuKTO4zUX47SU+d66fu1W9tVzIiZrQ6hBqQQeYscBMIzKL/qEXnFbJrH9uU5VV3+T5fWib4SIcKA==", "dependencies": { "@formatjs/ecma402-abstract": "1.17.2", "@formatjs/fast-memoize": "2.2.0", @@ -15062,6 +15066,11 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/json-rpc-2.0": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/json-rpc-2.0/-/json-rpc-2.0-1.6.0.tgz", + "integrity": "sha512-+pKxaoIqnA5VjXmZiAI1+CkFG7mHLg+dhtliOe/mp1P5Gdn8P5kE/Xxp2CUBwnGL7pfw6gC8zWTWekhSnKzHFA==" + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -19123,7 +19132,6 @@ "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", - "peer": true, "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -20185,7 +20193,6 @@ "version": "0.20.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", - "peer": true, "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" @@ -22574,6 +22581,465 @@ "engines": { "node": ">=4.2.0" } + }, + "plugins/ui/src/js": { + "name": "@deephaven/js-plugin-ui", + "version": "0.0.1", + "license": "Apache-2.0", + "dependencies": { + "@adobe/react-spectrum": "^3.29.0", + "@deephaven/chart": "^0.49.0", + "@deephaven/components": "^0.49.0", + "@deephaven/dashboard": "^0.49.0", + "@deephaven/dashboard-core-plugins": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/iris-grid": "^0.49.0", + "@deephaven/jsapi-bootstrap": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "json-rpc-2.0": "^1.6.0", + "shortid": "^2.2.16" + }, + "devDependencies": { + "@deephaven/jsapi-types": "^0.49.0", + "@types/react": "^17.0.2", + "@vitejs/plugin-react-swc": "^3.0.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", + "typescript": "^4.5.4", + "vite": "~4.1.4" + }, + "peerDependencies": { + "react": "^17.0.2", + "react-dom": "^17.0.2" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/chart": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/chart/-/chart-0.49.0.tgz", + "integrity": "sha512-fBs2SIYjubHJwln+hx8cdGdGmulaEhzwqbeeUMvI39YGOz2jKe5ler/3afLKhO4CaoVtvUpWWZmHZbYHE/x2sg==", + "dependencies": { + "@deephaven/icons": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/jsapi-utils": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "deep-equal": "^2.0.5", + "lodash.debounce": "^4.0.8", + "lodash.set": "^4.3.2", + "memoize-one": "^5.1.1", + "memoizee": "^0.4.15", + "plotly.js": "^2.18.2", + "prop-types": "^15.7.2", + "react-plotly.js": "^2.6.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/components": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/components/-/components-0.49.0.tgz", + "integrity": "sha512-+wbHM9GZIDQ8Wpo6vFqMZUzx6qBbEpOITpX/AuvVJFGrSSJV4o6rGsN723UZ+nkojp8OSLWaqFnwpn6O2ugvpg==", + "dependencies": { + "@adobe/react-spectrum": "^3.29.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/fontawesome-svg-core": "^6.2.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-spectrum/theme-default": "^3.5.1", + "bootstrap": "4.6.2", + "classnames": "^2.3.1", + "event-target-shim": "^6.0.2", + "lodash.clamp": "^4.0.3", + "lodash.debounce": "^4.0.8", + "lodash.flatten": "^4.4.0", + "memoizee": "^0.4.15", + "popper.js": "^1.16.1", + "prop-types": "^15.7.2", + "react-beautiful-dnd": "^13.1.0", + "react-transition-group": "^4.4.2", + "react-virtualized-auto-sizer": "1.0.6", + "react-window": "^1.8.6", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^17.x", + "react-dom": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/console": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/console/-/console-0.49.0.tgz", + "integrity": "sha512-kBDgbG5+Q6VBVDoxjxF169fF7RsaQhEPp378DwReX75qyhlU7g0QMpJIh3oq4fBJa9AUHt5aZjWMv+GeBMRQpA==", + "dependencies": { + "@deephaven/chart": "^0.49.0", + "@deephaven/components": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/jsapi-bootstrap": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/storage": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "classnames": "^2.3.1", + "linkifyjs": "^4.1.0", + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "memoize-one": "^5.1.1", + "memoizee": "^0.4.15", + "monaco-editor": "^0.41.0", + "papaparse": "5.3.2", + "popper.js": "^1.16.1", + "prop-types": "^15.7.2", + "shell-quote": "^1.7.2", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x", + "react-dom": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/dashboard": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/dashboard/-/dashboard-0.49.0.tgz", + "integrity": "sha512-DcbpGhvSqC1j1ChiVP+og6y9aZRVaMKvk0svsBzVq87UAB4MSkSsfnrBvSgHeb27Xx3WDek39vgiMbDvdfOFYQ==", + "dependencies": { + "@deephaven/components": "^0.49.0", + "@deephaven/golden-layout": "^0.49.0", + "@deephaven/jsapi-bootstrap": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/redux": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "deep-equal": "^2.0.5", + "lodash.ismatch": "^4.1.1", + "lodash.throttle": "^4.1.1", + "prop-types": "^15.7.2", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.0.0", + "react-dom": "^17.0.0", + "react-redux": "^7.2.4" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/dashboard-core-plugins": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/dashboard-core-plugins/-/dashboard-core-plugins-0.49.0.tgz", + "integrity": "sha512-HBGHndV4myz2/yidcpTykRpuUZtJ2aWilSSo0LYBUD0z4fEWwNi19xdlyh2hjA04EKCnp83o1GLnA5uhy/0uug==", + "dependencies": { + "@deephaven/chart": "^0.49.0", + "@deephaven/components": "^0.49.0", + "@deephaven/console": "^0.49.0", + "@deephaven/dashboard": "^0.49.0", + "@deephaven/file-explorer": "^0.49.0", + "@deephaven/filters": "^0.49.0", + "@deephaven/golden-layout": "^0.49.0", + "@deephaven/grid": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/iris-grid": "^0.49.0", + "@deephaven/jsapi-bootstrap": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/jsapi-utils": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/redux": "^0.49.0", + "@deephaven/storage": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "classnames": "^2.3.1", + "deep-equal": "^2.0.5", + "lodash.clamp": "^4.0.3", + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "memoize-one": "^5.1.1", + "memoizee": "^0.4.15", + "prop-types": "^15.7.2", + "react-markdown": "^6.0.2", + "react-transition-group": "^4.4.2", + "redux": "^4.2.0", + "redux-thunk": "^2.4.1", + "remark-gfm": "1.0.0", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.0.0", + "react-dom": "^17.0.0", + "react-redux": "^7.2.4" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/file-explorer": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/file-explorer/-/file-explorer-0.49.0.tgz", + "integrity": "sha512-eJc3SRzZgUdNL7foijCoTsHMSPKwiTXRGj6aidwEKrrqxHtZ2mCnSSAsmENW5q8WLAbghWXK5Lo/nZe0ZBGhtw==", + "dependencies": { + "@deephaven/components": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/storage": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/fontawesome-svg-core": "^6.2.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "classnames": "^2.3.1", + "lodash.throttle": "^4.1.1", + "prop-types": "^15.7.2" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.0.0" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/filters": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/filters/-/filters-0.49.0.tgz", + "integrity": "sha512-jlvHAMk1ugj3Up+yY4Y4DkDHPVarqz2pJUp8fDwEpzXe9fn6XRjxYct9qU4tGQrQtznBMnJ6O1II8uBTlDkKGw==", + "engines": { + "node": ">=16" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/golden-layout": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/golden-layout/-/golden-layout-0.49.0.tgz", + "integrity": "sha512-sCuFcuORMl1uRwkX9XTZLxCqfO3ck19I1i4xCrD6GjbJOl6hIzKyErvK/dsfOyhaqoDQxVHI+RzAzIF6096O4A==", + "dependencies": { + "@deephaven/components": "^0.49.0", + "jquery": "^3.6.0" + }, + "peerDependencies": { + "react": "^17.x", + "react-dom": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/grid": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/grid/-/grid-0.49.0.tgz", + "integrity": "sha512-D6S5JPfHyf0qGP5Kj0Zhw5J/FUosPtUae6jCFyB5hKTjp5DnjcVvskxzWxRRjscSMDW7RqamXTQD2SroIMEP+A==", + "dependencies": { + "@deephaven/utils": "^0.49.0", + "classnames": "^2.3.1", + "color-convert": "^2.0.1", + "event-target-shim": "^6.0.2", + "linkifyjs": "^4.1.0", + "lodash.clamp": "^4.0.3", + "memoize-one": "^5.1.1", + "memoizee": "^0.4.15", + "prop-types": "^15.7.2" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/icons": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/icons/-/icons-0.49.0.tgz", + "integrity": "sha512-gXb203frGc1OrIgxKSDZ56QnjMxy9AWZFEWZflF25NfxGJZoJh59XgM4dcd/phM6cinyqaLRgqt2CXarbV/mDg==", + "dependencies": { + "@fortawesome/fontawesome-common-types": "^6.1.1" + }, + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "^6.2.1", + "@fortawesome/react-fontawesome": "^0.2.0" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/iris-grid": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/iris-grid/-/iris-grid-0.49.0.tgz", + "integrity": "sha512-IB2pzYgwRYsOr+kpHSOi9BaGorOTD0Z4Mb2cSADEbucOuyKipvCqzs/h+rhTjkK7N+sNn8c+Zrx/ovFoxilS6g==", + "dependencies": { + "@deephaven/components": "^0.49.0", + "@deephaven/console": "^0.49.0", + "@deephaven/filters": "^0.49.0", + "@deephaven/grid": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/jsapi-utils": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/storage": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@dnd-kit/core": "^6.0.5", + "@dnd-kit/sortable": "^7.0.0", + "@dnd-kit/utilities": "^3.2.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "classnames": "^2.3.1", + "deep-equal": "^2.0.5", + "lodash.clamp": "^4.0.3", + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "memoize-one": "^5.1.1", + "memoizee": "^0.4.15", + "monaco-editor": "^0.41.0", + "prop-types": "^15.7.2", + "react-beautiful-dnd": "^13.1.0", + "react-transition-group": "^4.4.2", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^17.x", + "react-dom": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/jsapi-bootstrap": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/jsapi-bootstrap/-/jsapi-bootstrap-0.49.0.tgz", + "integrity": "sha512-n819XSXG6m0l0l4ZSWpAfEcnLH8Om3wubMr/BEFRzExU5pWnL/VvtUTQgzz505m8PBFg5lboALDmTtA12Vt9bw==", + "dependencies": { + "@deephaven/components": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/jsapi-types": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/jsapi-types/-/jsapi-types-0.49.0.tgz", + "integrity": "sha512-Hq8qzG+Fu/sMChphPTQKPGM1Eehb3aRk6GHSqJNFE7CzNYjgr/+5SFelAi+hfyw8oGEHJlsqbZnWFiTJObGYMg==", + "engines": { + "node": ">=16" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/jsapi-utils": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/jsapi-utils/-/jsapi-utils-0.49.0.tgz", + "integrity": "sha512-JgEeM5QlgwTSKxGuL6Go9GElgdHL0Vp9cVEXmUa6n/JgrNfmmApaw57B7gYWp/PGkPpY6vtpl4w5BdEsHu+P0A==", + "dependencies": { + "@deephaven/filters": "^0.49.0", + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "lodash.clamp": "^4.0.3", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=16" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/log": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/log/-/log-0.49.0.tgz", + "integrity": "sha512-nsWUoCB32qUqCku9QCXptdDcHlAEfvfDDyzweIh+JCHEkIKd9o0OwDaUVQcO8/uhby1TzXYiTjbqCexa6ztyVQ==", + "dependencies": { + "event-target-shim": "^6.0.2" + }, + "engines": { + "node": ">=16" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/react-hooks": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/react-hooks/-/react-hooks-0.49.0.tgz", + "integrity": "sha512-7ReehK7D3+tAasdKu7OGyrchlMX02s0RD573X+PQFnKvVhPwGRMXzX9dkvcapTYtoZZQblSDOyBU+nXsNKm3ew==", + "dependencies": { + "@adobe/react-spectrum": "^3.29.0", + "@deephaven/log": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "lodash.debounce": "^4.0.8", + "shortid": "^2.2.16" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/redux": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/redux/-/redux-0.49.0.tgz", + "integrity": "sha512-uAZjz0PqIG0bv4i/nZrqePZUI7cCDQl99GBz53rvDXAqEidcEdJDDlzfhAsyF7czAUKpcnasUXiexZgbW9mXxw==", + "dependencies": { + "@deephaven/jsapi-types": "^0.49.0", + "@deephaven/jsapi-utils": "^0.49.0", + "@deephaven/log": "^0.49.0", + "deep-equal": "^2.0.5", + "redux-thunk": "2.4.1" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "redux": "^4.2.0" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/storage": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/storage/-/storage-0.49.0.tgz", + "integrity": "sha512-CWIRmnTR3BxKL3A16ko5COeXVwf3S3l+hsF2Jo+kaFjHaDWEcpnJgjQpxBMEBPRyf2yh2t47ItY5FqJlk2gK1w==", + "dependencies": { + "@deephaven/filters": "^0.49.0", + "@deephaven/log": "^0.49.0", + "lodash.throttle": "^4.1.1" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": "^17.x" + } + }, + "plugins/ui/src/js/node_modules/@deephaven/utils": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@deephaven/utils/-/utils-0.49.0.tgz", + "integrity": "sha512-mz03TMj4ZZDP86g8a0FAYJhKBjYLMTSXRxn/mO//VYPtf3ZIDDuYkwj0eTRWw9pUOUgL5U1pJbu/0EywtDHRVA==", + "engines": { + "node": ">=16" + } + }, + "plugins/ui/src/js/node_modules/redux-thunk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz", + "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==", + "peerDependencies": { + "redux": "^4" + } + }, + "plugins/ui/src/js/node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } } } } diff --git a/plugins/auth-keycloak/src/js/src/AuthPluginKeycloak.tsx b/plugins/auth-keycloak/src/js/src/AuthPluginKeycloak.tsx index e5ec9c327..e1b4bf6a0 100644 --- a/plugins/auth-keycloak/src/js/src/AuthPluginKeycloak.tsx +++ b/plugins/auth-keycloak/src/js/src/AuthPluginKeycloak.tsx @@ -6,8 +6,7 @@ import { AuthPluginProps, } from '@deephaven/auth-plugins'; import { useBroadcastLoginListener } from '@deephaven/jsapi-components'; -import { LoginOptions } from '@deephaven/jsapi-types'; -import { Log } from '@deephaven/log'; +import Log from '@deephaven/log'; const log = Log.module('@deephaven/js-plugin-auth-keycloak.AuthPluginKeycloak'); diff --git a/plugins/manifest.json b/plugins/manifest.json index 3b6f710bb..9f2b7a927 100644 --- a/plugins/manifest.json +++ b/plugins/manifest.json @@ -2,6 +2,7 @@ "plugins": [ { "name": "matplotlib", "version": "0.1.0", "main": "src/js/dist/index.js" }, { "name": "plotly-express", "version": "0.1.0", "main": "src/js/dist/bundle/index.js" }, - { "name": "auth-keycloak", "version": "0.1.0", "main": "src/js/dist/index.js" } + { "name": "auth-keycloak", "version": "0.1.0", "main": "src/js/dist/index.js" }, + { "name": "ui", "version": "0.1.0", "main": "src/js/dist/index.js" } ] } diff --git a/plugins/ui/.gitignore b/plugins/ui/.gitignore new file mode 100644 index 000000000..3356dc1ce --- /dev/null +++ b/plugins/ui/.gitignore @@ -0,0 +1,8 @@ +build/ +dist/ +.venv/ +/venv +*.egg-info/ +.idea +.DS_store +__pycache__/ \ No newline at end of file diff --git a/plugins/ui/DESIGN.md b/plugins/ui/DESIGN.md new file mode 100644 index 000000000..39effc0d5 --- /dev/null +++ b/plugins/ui/DESIGN.md @@ -0,0 +1,1342 @@ +# deephaven.ui Plugin (alpha) + +Prototype of the deephaven.ui plugin, mocking out some ideas of how to code up programmatic layouts and callbacks. This is currently very much a prototype and should be used for discussion and evaluation purposes only. Name `deephaven.ui` is not set in stone. + +## Development Installation/Setup + +1. Until a fix for a bug found with exporting custom objects, you'll need to build/run deephaven-core from @niloc132's branch: https://github.com/niloc132/deephaven-core/tree/4338-live-pyobject +2. Build/Install the `deephaven-plugin-ui` Python plugin in your deephaven-core set up: https://github.com/mofojed/deephaven-plugin-ui +3. Follow the instructions in the [README.md at the root](../../README.md) of this repository to build/install the JS plugins (including this one). + +## Other Solutions/Examples + +### Parameterized Query + +```groovy +import io.deephaven.query.parameterized.ParameterizedQuery +import io.deephaven.query.parameterized.Parameter + +myQuery = ParameterizedQuery.create() + .with(Parameter.ofLong("low").inRange(0, 20).withDefault(5)) + .with(Parameter.ofLong("high").inRange(0, 20).withDefault(15)) + .willDo({scope -> + def low = scope.getLong("low") + def high = scope.getLong("high") + def tableResult = db.t("LearnDeephaven", "StockTrades") + .where("Date=`2017-08-25`", "Size<=$high", "Size>=$low") + plotResult = plot("Stuff", tableResult, "Timestamp", "Last").show() + scope.setResult("tableResult", tableResult) + scope.setResult("plotResult", plotResult) + }).build() +``` + +##### Pros + +- Already works +- Scope is defined, and re-runs the whole scope when any param changes +- Easy to understand + +##### Cons + +- Lots of boilerplate +- Syntax easy to get incorrect +- Lots of strings +- No python +- No specifying different contexts (shared PPQ among sessions/users for example) +- No composability - cannot re-use PPQs within PPQs, or define a "component" that gets used + +### Callbacks with decorators (plotly, Shiny for python) + +```python +from dash import Dash, html, dcc, Input, Output + +app = Dash(__name__, external_stylesheets=external_stylesheets) +app.layout = html.Div( + [ + dcc.RangeSlider(0, 20, 1, value=[5, 15], id="my-range-slider"), + html.Div(id="output-container-range-slider"), + ] +) + + +@app.callback( + Output("output-container-range-slider", "children"), + [Input("my-range-slider", "value")], +) +def update_output(value): + return 'You have selected "{}"'.format(value) + + +if __name__ == "__main__": + app.run_server() +``` + +Other examples: https://shiny.posit.co/py/docs/overview.html + +##### Pros + +- Decorators are nice "magic" + +##### Cons + +- Lots of strings need to match, easy to make a mistake +- Difficult to visualize +- Not sure how to iterate +- Need to have an object named `app`, so not really "composable" + +### Streamlit (re-runs entire script on any change) + +```python +import streamlit as st + +x = st.slider("x") +st.write(x, "squared is", x * x) + + +@st.cache # tells streamlit to memoize this function though +def expensive_computation(a, b): + time.sleep(2) # This makes the function take 2s to run + return a * b + + +a = 2 +b = 21 +res = expensive_computation(a, b) +st.write("Result:", res) +``` + +##### Pros + +- Can use the values easily anywhere in your script +- Entire script re-runs with any change, easy to understand, easy to iterate + +##### Cons + +- Re-running everything can be costly, need to be conscious with caching/memoization +- Does not achieve composability + +## Proposed Syntaxes + +### Interactive Query + +Early prototype: https://github.com/mofojed/deephaven-plugin-interactive +UI: https://github.com/mofojed/deephaven-js-plugins/tree/interactive + +#### Basic Example + +Creates a table that simply updates with the value of the slider. + +```python +from deephaven.plugin.interactive import make_iq, dh +from deephaven import empty_table + + +def my_func(x, a): + print("x is now " + str(x)) + t = empty_table(1).update_view([f"x={x}"]) + return {"t": t} + + +my_query = make_iq(my_func, x=dh.slider(22, 2, 111)) +``` + +#### Plotting Example + +Create two plots showing a sine function and cosine function with the values set from the slider. + +```python +from deephaven.plugin.interactive import make_iq, dh +from deephaven import empty_table +from deephaven.plot.figure import Figure + + +def sin_func(amplitude, frequency, phase): + # Note: Should use QST to create filters instead of f-strings? + t = empty_table(1000).update_view( + ["x=i", f"y={amplitude}*Math.sin(x*{frequency}+{phase})"] + ) + f = Figure().plot_xy(series_name="Series", t=t, x="x", y="y").show() + return {"t": t, "f": f} + + +def cos_func(amplitude, frequency, phase): + t = empty_table(1000).update_view( + ["x=i", f"y={amplitude}*Math.cos(x*{frequency}+{phase})"] + ) + f = Figure().plot_xy(series_name="Series", t=t, x="x", y="y").show() + return {"t": t, "f": f} + + +inputs = {"amplitude": dh.slider(1), "frequency": dh.slider(1), "phase": dh.slider(1)} + +iqs = make_iq(sin_func, **inputs) +iqc = make_iq(cos_func, **inputs) +``` + +##### Pros + +- No magic strings (though does have dictionary keys for kwargs) +- Scope is defined, and re-runs the whole scope when any param changes +- Easy to understand +- Should be "easy" to implement once bidirection plugins are completed + +##### Cons + +- Not clear how to "chain" inputs (e.g. slider based on a table based on another input control, reacting to a click within a table)... unless nesting functions is allowed + +### React-like syntax + +Use "React hooks" like inspired syntax to write blocks that "re-render" when state changes. **Note**: These examples are just mockups for illustrating the proposed syntax. They may not actually compile. + +#### Components (for composability) + +Using a "React-like" syntax, it is possible to define "components" which can be re-used and compose other components. For example, we may want to make a "filterable table" component, that just provides a text input field above a table that you can use to filter a specific column in the table. + +![Text filter Table](./assets/filter_table.png) + +Read about [React](https://react.dev/learn) and [React Hooks](https://react.dev/reference/react) if you are unfamiliar with them for a primer on the design principles followed. Here is an example of a proposed syntax for that: + +```python +import deephaven.ui as ui + +# @ui.component decorator marks a function as a "component" function +# By adding this decorator, wraps the function such that "hooks" can be used within the function (effectively similar to `React.createElement`). Hooks are functions following the convention `use_*`, can only be used within a `@ui.component` context +@ui.component +def text_filter_table(source: Table, column: str): + # The value of the text filter is entirely separate from the text input field definition + value, set_value = ui.use_state("") + + # TODO: Should be using QST/filters here instead, e.g. https://github.com/deephaven/deephaven-core/issues/3784 + t = source.where(f"{column}=`{value}`") + + # Return a column that has the text input, then the table below it + return ui.flex( + [ + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + t, + ] + ) +``` + +The above component, could then be re-used, to have two tables side-by-side: + +![Double filter table](./assets/double_filter_table.png) + +```python +# Just using one source table, and allowing it to be filtered using two different filter inputs +@ui.component +def double_filter_table(source: Table, column: str): + return ui.flex( + [text_filter_table(source, column), text_filter_table(source, column)], + direction="row", + ) +``` + +#### Re-using Components + +You can re-use a component, but with different parameters. For example, we may want to have a component that shows an input for `Sym` and the resulting table, and re-use that to show different exchanges: + +```python +@ui.component +def stock_table(exchange: str): + sym, set_sym = use_state("AAPL") + table = use_memo( + lambda: db.live_table("LearnDeephaven", "StockTrades").where( + [f"Exchange=`{exchange}`", f"Sym=`{sym}`"] + ), + [exchange, sym], + ) + return [ui.text_input(value=sym, on_value_change=set_sym), table] + + +nasdaq_table = stock_table("NASDAQ") +nyse_table = stock_table("NYSE") +``` + +#### Memoization/Caching + +React has a hook [useMemo](https://react.dev/reference/react/useMemo) which is used to cache operations if no dependencies have changed. Streamlit has [Caching](https://docs.streamlit.io/library/advanced-features/caching#basic-usage) as well using `@st.cache_data` and `@st.cache_resource` decorators. We will definitely need some sort of caching, we will need to determine the paradigm. Consider first the example without any caching: + +```python +import deephaven.ui as ui +from deephaven.parquet import read + + +@ui.component +def my_caching_component(parquet_path="/data/stocks.parquet"): + value, set_value = ui.use_state("") + + # This parquet `read` operation fires _every_ time the component is re-rendered, which happens _every_ time the `value` is changed. This is unnecessary, since we only want to re-run the `.where` part and keep the `source` the same. + source = read(parquet_path) + t = source.where(f"sym=`{value}`") + + return ui.flex( + [ + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + t, + ] + ) +``` + +Now using a `use_memo` hook, similar to React. This re-enforces the `use_*` hook type behaviour. + +```python +import deephaven.ui as ui +from deephaven.parquet import read + + +@ui.component +def text_filter_table(source: Table, column: str): + # The value of the text filter is entirely separate from the text input field definition + value, set_value = ui.use_state("") + + # TODO: Should be using QST/filters here instead, e.g. https://github.com/deephaven/deephaven-core/issues/3784 + t = source.where(f"{column}=`{value}`") + + # Return a column that has the text input, then the table below it + return ui.flex( + [ + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + t, + ] + ) + + +@ui.component +def my_caching_component(parquet_path="/data/stocks.parquet"): + value, set_value = ui.use_state("") + + # The `read` function will only be called whenever `parquet_path` is changed + source = use_memo(lambda: read(parquet_path), [parquet_path]) + t = source.where(f"sym=`{value}`") + + return ui.flex( + [ + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + t, + ] + ) +``` + +Trying to define it as a decorator gets kind of messy within a functional component. You'd probably want to define at a top level, which is kind of weird: + +```python +import deephaven.ui as ui +from deephaven.parquet import read + +# Decorator wraps function and will only re-run the function if it hasn't run before or if it doesn't already have the result from a previous execution with the same parameters +@ui.memo +def parquet_table(path: str): + return read(path) + + +@ui.component +def my_caching_component(parquet_path="/data/stocks.parquet"): + value, set_value = ui.use_state("") + + # Memoization is handled by the `parquet_table` method itself + source = parquet_table(parquet_path) + t = source.where(f"sym=`{value}`") + + return ui.flex( + [ + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + t, + ] + ) +``` + +#### “One Click” plots with Input Filters + +Plots work with one_click operations, e.g. + +```python +from deephaven.parquet import read +from deephaven.plot.selectable_dataset import one_click +import deephaven.plot.express as dx + +source = read("/data/stocks.parquet") +oc = one_click(t=source, by=["Sym"]) + +# Support for SelectableDataSet in deephaven express is still WIP +plot = dx.line(oc, x="Timestamp", y="Price") +``` + +The above still requires adding an Input Filter to the dashboard from the UI. You can also add an Input Filter from code, e.g. + +```python +from deephaven.parquet import read +from deephaven.plot.selectable_dataset import one_click +import deephaven.plot.express as dx +from deephaven import dtypes as dht + +source = read("/data/stocks.parquet") +oc = one_click(t=source, by=["Sym"]) + +# Support for SelectableDataSet in deephaven express is still WIP +plot = dx.line(oc, x="Timestamp", y="Price") + +# Create an Input Filter control that filters on the "Sym" column of type string +sym_filter = ui.input_filter(column="Sym", type=dht.string) +``` + +The above will add the plot and input filter to default locations in the dashboard. You can specify a dashboard layout if you want control of where the components are placed, e.g. + +```python +d = ui.dashboard(ui.column(sym_filter, plot)) +``` + +Along with the standard text Input Filter, you can add other types such as a Dropdown Filter: + +```python +from deephaven.parquet import read +from deephaven.plot.selectable_dataset import one_click +import deephaven.plot.express as dx +from deephaven import dtypes as dht + +source = read("/data/stocks.parquet") +oc = one_click(t=source, by=["Sym"]) + +# Support for SelectableDataSet in deephaven express is still WIP +plot = dx.line(oc, x="Timestamp", y="Price") + +# Create a Dropdown Filter control that filters on the "Sym" column of type string +sym_filter = ui.dropdown_filter(source=source, source_column="Sym") +``` + +You can put these in to a `@ui.component` function as well, if you wanted to have an input for the file path to read from, e.g. + +```python +from deephaven.parquet import read +from deephaven.plot.selectable_dataset import one_click +import deephaven.plot.express as dx +from deephaven import dtypes as dht + + +@ui.component +def my_oc_dash(): + # Store the path in state so it can be changed + path, set_path = use_state("/data/stocks.parquet") + + source = use_memo(lambda: read(path), [path]) + + oc = use_memo(lambda: one_click(t=source, by=["Sym"]), [path]) + + plot = use_memo(lambda: dx.line(oc, x="Timestamp", y="Price"), [oc]) + + sym_filter = ui.dropdown_filter(source=source, source_column="Sym") + + # Dashboard where the top row is a text input for the path and input filter for Sym, then the resulting plot underneath + return ui.dashboard( + ui.column( + ui.row(ui.text_input(value=path, on_change=set_path), sym_filter), plot + ) + ) + + +d = my_oc_dash() +``` + +#### Table Actions/Callbacks + +We want to be able to react to actions on the table as well. This can be achieved by adding a callback to the table, and used to set the state within our component. For example, if we want to filter a plot based on the selection in another table: + +![Alt text](./assets/on_row_clicked.png) + +```python +import deephaven.ui as ui + + +@ui.component +def table_with_plot(source: Table, column: str = "Sym", default_value: str = ""): + value, set_value = ui.use_state(default_value) + + # Wrap the table with an interactive component to listen to selections within the table + selectable_table = ui.use_memo( + lambda: interactive_table( + t=source, + # When data is selected, update the value + on_row_clicked=lambda event: set_value(event["data"][column]), + ), + [source], + ) + + # Create the plot by filtering the source using the currently selected value + p = ui.use_memo( + lambda: plot_xy( + t=source.where(f"{column}=`{value}`"), x="Timestamp", y="Price" + ), + [value], + ) + + return ui.flex([selectable_table, p]) +``` + +OR could we add an attribute to the table instead? And a custom function on table itself to handle adding that attribute? E.g.: + +```python +import deephaven.ui as ui + + +@ui.component +def table_with_plot(source: Table, column: str = "Sym", default_value: str = ""): + value, set_value = ui.use_state(default_value) + + # Add the row clicked attribute + # equivalent to `selectable_table = t.with_attributes({'__on_row_clicked': my_func})` + selectable_table = source.on_row_clicked( + lambda event: set_value(event["data"][column]) + ) + + # Create the plot by filtering the source using the currently selected value + p = ui.use_memo( + lambda: plot_xy( + t=source.where(f"{column}=`{value}`"), x="Timestamp", y="Price" + ), + [value], + ) + + return ui.flex([selectable_table, p]) +``` + +#### Multiple Plots + +We can also use the same concept to have multiple plots, and have them all update based on the same input. For example, if we want to have two plots, one showing the "Last" price, and another showing the "Bid" price: + +![Alt text](./assets/multiple_plots.png) + +```python +import deephaven.ui as ui + + +@ui.component +def two_plots(source: Table, column: str = "Sym", default_value: str = ""): + value, set_value = ui.use_state(default_value) + + # Create the two plots by filtering the source using the currently selected value + p1 = ui.use_memo( + lambda: plot_xy(t=source.where(f"{column}=`{value}`"), x="Timestamp", y="Last"), + [value], + ) + p2 = ui.use_memo( + lambda: plot_xy(t=source.where(f"{column}=`{value}`"), x="Timestamp", y="Bid"), + [value], + ) + + return ui.flex([p1, p2]) +``` + +#### Text Input to Filter a Plot + +We can also use the same concept to have a text input field that filters a plot. For example, if we want to have a text input field that filters a plot based on the "Sym" column: + +![Alt text](./assets/text_input_plot.png) + +```python +import deephaven.ui as ui + + +@ui.component +def text_input_plot(source: Table, column: str = "Sym"): + value, set_value = ui.use_state("") + + # Create the plot by filtering the source using the currently selected value + # TODO: Is this link visible in the UI or just implicit? + p = ui.use_memo( + lambda: plot_xy(t=source.where(f"{column}=`{value}`"), x="Timestamp", y="Last"), + [value], + ) + + return ui.flex( + [ + # Text input will update the value when it is changed + ui.text_input( + value=value, on_change=lambda event: set_value(event["value"]) + ), + # Plot will be filtered/updated based on the above logic + p, + ] + ) +``` + +#### Required Parameters + +Sometimes we want to require the user to enter a value before applying filtering operations. We can do this by adding a `required` label to the `text_input` itself, and then displaying a label instead of the table: + +```python +import deephaven.ui as ui + + +@ui.component +def text_filter_table(source: Table, column: str): + value, set_value = ui.use_state("") + + # Return a column that has the text input, then the table below it + return ui.flex( + [ + ui.text_input( + value=value, + on_change=lambda event: set_value(event["value"]), + required=True, + ), + ( + # Use Python ternary operator to only display the table if there has been a value entered + source.where(f"{column}=`{value}`") + if value + else ui.info("Please input a filter value") + ), + ] + ) +``` + +Alternatively, we could have an overlay displayed on the table if an invalid filter is entered. + +#### Cross-Dependent Parameters (DH-15360) + +You can define parameters which are dependent on another parameter. You could define two range sliders for a low and high, for example: + +```python +import deephaven.ui as ui + + +@ui.component +def two_sliders(min=0, max=10000): + lo, set_lo = use_state(min) + hi, set_hi = use_state(max) + + # Use the `hi` currently set as the `max`. Will update automatically as `hi` is adjusted + s1 = ui.slider(value=lo, min=min, max=hi, on_change=set_lo) + + # Use the `lo` currently set as the `min`. Will update automatically as `lo` is adjusted + s2 = ui.slider(value=hi, min=lo, max=max, on_change=set_hi) + + return [s1, s2] +``` + +Or if you want a drop-down list that is dependent only on a filtered list of results from another table: + +```python +@ui.component +def filtered_accounts(source): + company, set_company = use_state("") + trader, set_trader = use_state("") + + return [ + # Use the distinct "Company" values as the possible options in the dropdown + ui.dropdown(source.select_distinct("Company")), + # Use the distinct "Trader" values after filtering the source by "Company" + ui.dropdown(source.where(f"Company={company}").select_distinct("Trader")), + # Show the table filtered on both "Company" and "Trader" selected + source.where([f"Company={company}", f"Trader={trader}"]), + ] +``` + +#### Multiple Queries (Enterprise only) + +We want to be able to pull in widgets/components from multiple queries. In DHC we have the [URI resolver](https://deephaven.io/core/docs/reference/uris/uri/) for resolving another resource, and should be able to extend that same functionality to resolve another PQ. + +```python +# Persistent Query 'A' +t = empty_table(100).update("a=i") + +# Persistent Query 'B' +t = empty_table(100).update("b=i") + +# Executed in console session or a 3rd query +import deephaven.ui as ui +from deephaven.uri import resolve + + +@ui.component +def multi_query(): + # Since the `resolve` method is only called from within a `@ui.component` wrapped function, it is only called when the component is actually rendered (e.g. opened in the UI) + # Note however this is still resolving the table on the server side, rather than the client fetching the table directly. + t1 = resolve("dh+plain://query-a:10000/scope/t") + t2 = resolve("dh+plain://query-b:10000/scope/t") + return [t1, t2] + + +mq = multi_query() +``` + +We could also have a custom function defined such that an object will tell the UI what table to fetch; the downside of this is you would be unable to chain any table operations afterwards (NOTE: It _may_ be possible to build it such that we could do this, using QST and just having the UI apply an arbitrary set of operations defined by the QST afterwards? But may be tricky to build): + +```python +# Persistent Query 'A' +t = empty_table(100).update("a=i") + +# Persistent Query 'B' +t = empty_table(100).update("b=i") + +# Executed in console session or a 3rd query +import deephaven.ui as ui + + +@ui.component +def multi_query(): + # Object that contains metadata about the table source, then UI client must fetch + t1 = ui.pq_table("Query A", "t") + t2 = ui.pq_table("Query B", "t") + return [t1, t2] + + +mq = multi_query() +``` + +It may be that we want to do something interesting, such as defining the input in one query, and defining the output in another query. + +```python +# Persistent Query 'A' +import deephaven.ui as ui + + +@ui.component +def my_input(value, on_change): + return ui.text_input(value, on_change) + + +# Persistent Query 'B' +import deephaven.ui as ui + + +@ui.component +def my_output(value): + return empty_table(100).update(f"sym=`{value}`") + + +# Executed in console session or a 3rd query +import deephaven.ui as ui + + +@ui.component +def multi_query(): + sym, set_sym = use_state("") + + # TODO: Would this actually work? Resolving to a custom type defined in plugins rather than a simple table object + my_input = resolve("dh+plain://query-a:10000/scope/my_input") + my_output = resolve("dh+plain://query-b:10000/scope/my_output") + + return [my_input(sym, set_sym), my_output(sym)] + + +mq = multi_query() +``` + +#### Putting it all together + +Using the proposed components and selection listeners, you should be able to build pretty powerful components, and subsequently dashboards. For example, we could build a component that has the following: + +- Dual range slider for specifying the "Size" of trades to filter on +- Table showing only the filtered range +- Text input to filter a specific Sym for a plot derived from the table +- Clicking a row within the table selects that Sym and updates the text input to reflect that +- Clicking a data point in the plot will print out that data + +![Putting it all together](./assets/putting_it_all_together.png) + +```python +import deephaven.ui as ui +import deephaven.plot.express as dx + + +@ui.component +def stock_widget(source: Table, column: str = "Sym"): + lo, set_lo = use_state(0) + hi, set_hi = use_state(10000) + sym, set_sym = use_state("") + + # Create the filtered table + filtered_table = ui.use_memo( + lambda: source.where([f"Price >= {lo} && Price <= {hi}"]), [lo, hi] + ) + + p = ui.use_memo( + lambda: dx.line(filtered_table.where(f"Sym=`{sym}`"), x="Timestamp", y="Last"), + [filtered_table], + ) + + def handle_slider_change(event): + set_lo(event.value.lo) + set_hi(event.value.hi) + + return ui.flex( + [ + # Slider will update the lo/hi values on changes + ui.range_slider( + lo=lo, hi=hi, min=0, max=10000, on_change=handle_slider_change + ), + # Wrap the filtered table so you can select a row + ui.interactive_table( + t=filtered_table, + # Update the Sym value when a row is selected + on_row_clicked=lambda event: set_sym(event["data"][column]), + ), + # Text input will update the sym when it is changed, or display the new value when selected from the table + ui.text_input(value=sym, on_change=lambda event: set_sym(event["value"])), + # Wrap the filtered plot so you can select data + ui.interactive_plot( + p=p, on_data_clicked=lambda event: print(f"data selected: {str(event)}") + ), + ] + ) +``` + +#### Layouts/Dashboards + +The above examples focussed solely on defining components, all of which are simply rendered within one panel by default. Part of the ask is also about defining panels and dashboards/layouts. We use [Golden Layout](https://golden-layout.com/examples/), which defines all layouts in terms of placing Panels in [Rows, Columns and Stacks](https://golden-layout.com/tutorials/getting-started.html): + +- **Panel**: A panel with a tab header, containing one or more components. Can be moved around and resized within a dashboard. +- **Row**: A row of panels arranged horizontally. +- **Column**: A column of panels arranged vertically. +- **Stack**: A stack of panels that overlap one another. Click the tab header to switch between them. +- **Dashboard**: A layout of an entire dashboard + +We should be able to map these by using `ui.panel`, `ui.row`, `ui.column`, `ui.stack`, and `ui.dashboard`. + +##### ui.panel + +By default, the top level `@ui.component` will automatically be wrapped in a panel, so no need to define it unless you want custom panel functionality, such as giving the tab a custom name, e.g.: + +```python +import deephaven.ui as ui + +# The only difference between this and `p = my_component()` is that the title of the panel will be set to `My Title` +p = ui.panel(my_component(), title="My Title") +``` + +Note that a panel can only have one root component, and cannot be nested within other components (other than the layout ones `ui.row`, `ui.column`, `ui.stack`, `ui.dashboard`) + +TBD: How do you specify a title and/or tooltip for your panel? How do panels get a title or tooltip by default? + +##### ui.row, ui.column, ui.stack, ui.dashboard + +You can define a dashboard using these functions. By wrapping in a `ui.dashboard`, you are defining a whole dashboard. If you omit the `ui.dashboard`, it will add the layouts you've defined to the existing dashboard: + +- `ui.row` will add a new row of the panels defined at the bottom of the current dashboard +- `ui.column` will add a new column of panels defined at the right of the current dashboard +- `ui.stack` will add a new stack of panels at the next spot in the dashboard + +Defining these without a `ui.dashboard` is likely only going to be applicable to testing/iterating purposes, and in most cases you'll want to define the whole dashboard. For example, to define a dashboard with an input panel in the top left, a table in the top right, and a stack of plots across the bottom, you could define it like so: + +```python +import deephaven.ui as ui + +# ui.dashboard takes only one root element +d = ui.dashboard( + ui.column( + [ + ui.row([my_input_panel(), my_table_panel()]), + ui.stack([my_plot1(), my_plot2()]), + ] + ) +) +``` + +Much like handling other components, you can do a prop/state thing to handle changing inputs/filtering appropriately: + +```python +import deephaven.ui as ui + +# Need to add the `@ui.component` decorator so we can keep track of state +@ui.component +def my_dashboard(): + value, set_value = use_state("") + + return ui.dashboard( + ui.column( + [ + ui.row( + [ + my_input_panel(value=value, on_change=set_value), + my_table_panel(value=value), + ] + ), + ui.stack([my_plot1(value=value), my_plot2(value=value)]), + ] + ) + ) + + +d = my_dashboard() +``` + +##### ui.link + +```python +@ui.component +def my_dashboard(): + t1 = empty_table(100).update("a=i") + t2 = empty_table(100).update("b=i", "c=Math.sin(i)") + + return ui.dashboard( + ui.row([ui.table(t1, _id="t1"), ui.table(t2, _id="t2")]), + links=[ + ui.link( + start=ui.link_point("t1", column="a"), + end=ui.link_point("t2", column="b"), + ) + ], + ) + + +d = my_dashboard() +``` + +#### Context + +By default, the context of a `@ui.component` will be created per client session (same as [Parameterized Query's "parallel universe" today](https://github.com/deephaven-ent/iris/blob/868b868fc9e180ee948137b10b6addbac043605e/ParameterizedQuery/src/main/java/io/deephaven/query/parameterized/impl/ParameterizedQueryServerImpl.java#L140)). However, it would be interesting if it were possible to share a context among all sessions for the current user, and/or share a context with other users even; e.g. if one user selects and applies a filter, it updates immediately for all other users with that dashboard open. So three cases: + +1. Limit to a particular client session (like Paramterized Queries, should likely be the default) +2. Limit to the particular user (so if you have the same PQ open multiple tabs, it updates in all) +3. Share with all users (if one user makes a change, all users see it) + +We can specify this by adding a `context` parameter to the `@ui.component` decorator: + +```python +# Define a client session component, where execution will be scoped to the current client session +# One user making a change will not be reflected to other tabs for that user +# This will be the default and is equivalent to not specifying a context +# @ui.component(context=ui.ContextType.CLIENT) +# def client_component(): +# ... component details here + +# Define a user component, where execution will be scoped to the current user +# One user making a change will be reflected to all tabs for that user +# @ui.component(context=ui.ContextType.USER) +# def user_component(): +# ... component details here + +# Define a shared component, where execution will be scoped to all users +# One user making a change will be reflected to all users +# @ui.component(context=ui.ContextType.SHARED) +# def shared_component(): +# ... component details here +``` + +Note this could get interesting with nested components. It only makes sense to restrict the scope further when nesting, e.g. you can nest a `ui.ContextType.CLIENT` component within a `ui.ContextType.USER` component, but not the other way around. If you try to nest a `ui.ContextType.USER` component within a `ui.ContextType.CLIENT` component, it will throw an error: + +```python +# This component will be scoped to the current client session +@ui.component(context=ui.ContextType.CLIENT) +def stock_table(source: Table): + sym, set_sym = use_state("AAPL") + t = source.where(f"sym=`{sym}`") + return [ui.text_input(value=sym, on_change=set_sym), t] + + +# This component is scoped to the current user, so if they change the path in one tab, it will update in all other tabs +@ui.component(context=ui.ContextType.USER) +def user_path_component(): + path, set_path = use_state("/data/stocks.parquet") + t = use_memo(lambda: read(path), [path]) + # Using the `stock_table` component which is scoped to the current client session allows different filtering in different tabs + return [ui.text_input(value=path, on_change=set_path), stock_table(t)] + + +result = user_path_component() + +# The other way around would throw an error though, e.g. +@ui.component(context=ui.ContextType.CLIENT) +def bad_scoping(): + # Can't use `user_path_component` as that would expand the scope/context + return user_path_component() +``` + +Note: I think this is a stretch goal, and not planned for the initial implementation (but should be considered in the design). Only the default `ui.ContextType.CLIENT` will be supported initially. + +#### Problems + +Listing some problems and areas of concern that need further discussion. + +##### State Latency + +With callbacks, there will be a delay between when the user makes changes in the UI and when the state change is processed on the server. We can mitigate this with debounced input (e.g. when typing in a text input or changing a slider, debounce sending an update until they have stopped typing or sliding for a moment), and displaying some sort of "processing" state in the UI (e.g. a spinner or disabling the input) while the state is being updated. Optimistic updates are not possible, as there is no way for the UI to know what effect a particular state change will have on the output/other components. This is similar to what we do with Parameterized Queries currently, where we display a spinner in the "Submit" button while the query is being executed, and only after it returns do the output tables update. + +##### Language Compatibility + +The above examples are all in Python, and particularly take some advantage of language constructs in python (such as positional arguments and kwargs). We should consider how it would work in Groovy/Java as well, and how we can build one on top of the other. + +#### Architecture + +##### Rendering + +When you call a function decorated by `@ui.component`, it will return a `UiNode` object that has a reference to the function it is decorated; that is to say, the function does _not_ get run immediately. The function is only run when the `UiNode` is rendered by the client, and the result is sent back to the client. This allows the `@ui.component` decorator to execute the function with the appropriate rendering context, and also allows for memoization of the function (e.g. if the function is called multiple times with the same arguments, it will only be executed once - akin to a [memoized component](https://react.dev/reference/react/memo) or PureComponent in React). + +Let's say we execute the following, where a table is filtered based on the value of a text input: + +```python +@ui.component +def text_filter_table(source, column, initial_value=""): + value, set_value = use_state(initial_value) + ti = ui.text_field(value, on_change=set_value) + tt = source.where(f"{column}=`{value}`") + return [ti, tt] + + +@ui.component +def sym_exchange(source): + tft1 = text_filter_table(source, "Sym") + tft2 = text_filter_table(source, "Exchange") + return ui.flex(tft1, tft2, direction="row") + + +import deephaven.plot.express as dx + +t = dx.data.stocks() + +tft = text_filter_table(t, "sym") +``` + +Which should result in a UI like this: + +![Double Text Filter Tables](examples/assets/double-tft.png) + +How does that look when the notebook is executed? When does each code block execute? + +```mermaid +sequenceDiagram + participant U as User + participant W as Web UI + participant UIP as UI Plugin + participant C as Core + participant SP as Server Plugin + + U->>W: Run notebook + W->>C: Execute code + C->>SP: is_type(object) + SP-->>C: Matching plugin + C-->>W: VariableChanges(added=[t, tft]) + + W->>UIP: Open tft + UIP->>C: Export tft + C-->>UIP: tft (UiNode) + + Note over UIP: UI knows about object tft
sym_exchange not executed yet + + UIP->>SP: Render tft + SP->>SP: Run sym_exchange + Note over SP: sym_exchange executes, running text_filter_table twice + SP-->>UIP: Result (flex([tft1, tft2])) + UIP-->>W: Display (flex([tft1, tft2])) + + U->>UIP: Change text input 1 + UIP->>SP: Change state + SP->>SP: Run sym_exchange + Note over SP: sym_exchange executes, text_filter_table only
runs once for the one changed input + SP-->>UIP: Result (flex([tft1', tft2])) + UIP-->>W: Display (flex([tft1', tft2])) +``` + +##### Communication/Callbacks + +When the document is first rendered, it will pass the entire document to the client. When the client makes a callback, it needs to send a message to the server indicating which callback it wants to trigger, and with which parameters. For this, we use [JSON-RPC](https://www.jsonrpc.org/specification). When the client opens the message stream to the server, the communication looks like: + +```mermaid +sequenceDiagram + participant UIP as UI Plugin + participant SP as Server Plugin + + UIP->>SP: obj.getDataAsString() + Note over UIP, SP: Uses json-rpc + SP-->>UIP: documentUpdated(Document) + + loop Callback + UIP->>SP: foo(params) + SP-->>UIP: foo result + SP->>UIP: documentUpdated(Document) + end +``` + +##### Communication Layers + +A component that is created on the server side runs through a few steps before it is rendered on the client side: + +1. Element - The basis for all UI components. Generally a `FunctionElement`, and does not run the function until it is requested by the UI. The result can change depending on the context that it is rendered in (e.g. what "state" is set). +2. RenderedNode - After an element has been rendered using a renderer, it becomes a `RenderedNode`. This is an immutable representation of the document. +3. JSONEncodedNode - The `RenderedNode` is then encoded into JSON using `NodeEncoder`. It pulls out all the objects and maps them to exported objects, and all the callables to be mapped to commands that can be accepted by JSON-RPC. This is the final representation of the document that is sent to the client. +4. ElementPanel - Client side where it's receiving the `documentUpdated` from the server plugin, and then rendering the `JSONEncodedNode` into a `ElementPanel` (e.g. a `GoldenLayout` panel). Decodes the JSON, maps all the exported objects to the actual objects, and all the callables to async methods that will call to the server. +5. ElementView - Renders the decoded panel into the UI. Picks the element based on the name of it. +6. ObjectView - Render an exported object + +#### Other Decisions + +While mocking this up, there are a few decisions regarding the syntax we should be thinking about/address prior to getting too far along with implementation. + +##### Module name + +The above examples use `deephaven.ui` for the module name. Another option would be `deephaven.layout`, but I thought this might get confusing with Golden Layout already existing. + +##### Structuring imports + +In the above example, there is one simple import, `import deephaven.ui as ui`. From there you just call `ui.component`, `ui.use_state`, etc. + +Another option would be importing items directly, e.g. `from deephaven.ui import component, use_state, range_slider`, etc. + +Or we could have some sort of hybrid: + +```python +# Use `ui` import for components/elements +import deephaven.ui as ui + +# Import hooks `use_` directly from `deephaven.ui` +from deephaven.ui import use_state, use_memo + +# ... or even have a separate import for all hooks +# import * from deephaven.ui.hooks +``` + +##### Decorators vs. Render function + +In React, it uses the `renderWithHooks` function internally to build a context. That's triggered by the `React.createElement` method, or more commonly via JSX when rendering the elements. Pushing/popping the context is crucial for maintaining the proper state and enabling hooks to work reliably. + +In Python, we do not have JSX available (or any such equivalent). The above examples use the `@ui.component` decorator for wrapping a function component: + +```python +# Just using one source table, and allowing it to be filtered using two different filter inputs +@ui.component +def double_filter_table(source: Table, column: str): + return ui.flex( + [text_filter_table(source, column), text_filter_table(source, column)], + direction="row", + ) + + +dft = double_filter_table(source, "Sym") +``` + +Another option would be to require calling an explicit render function, e.g.: + +```python +# Just using one source table, and allowing it to be filtered using two different filter inputs +def double_filter_table(source: Table, column: str): + return ui.flex( + [ + ui.render(text_filter_table(source, column)), + ui.render(text_filter_table(source, column)), + ], + direction="row", + ) + + +dft = ui.render(double_filter_table(source, "Sym")) +``` + +I think the decorator syntax is less verbose and more clear about how to use; especially when rendering/building a component composed of many other components. Calling `ui.render` to render all the children component seems problematic. Marking every possible component as just `@ui.component` is pretty straightforward, and should allow for easily embedding widgets. + +Note there was an interesting project for using [React Hooks in Python](https://github.com/amitassaraf/python-hooks). However, it is not recommended for production code and likely has some performance issues. It [inspects the call stack](https://github.com/amitassaraf/python-hooks/blob/main/src/hooks/frame_utils.py#L86) to manage hook state, which is kind of neat in that you don't need to wrap your functions; however that would come at performance costs, and also more difficult to be strict (e.g. requiring functions that use hooks to be wrapped in `@ui.component` - maybe there's other dev related things we want to do in there). + +##### Panel Titles/Tooltips + +- How do we preserve the behaviour of panel/tab tooltips for components? +- How do we have components save their state? + +## Scheduling + +Breaking down the project schedule to be roughly: + +- **Phase 1 "Definition" (August)**: Distribute API syntax for discussion, gather feedback + - Bender gets a document together with examples mocking out the proposed syntax + - Solicit feedback from interested stakeholders on the proposed syntax and get agreement + - Rough Proof of Concept prototype built +- **Phase 2 "Alpha" (September 4 - October 13, 6 weeks)**: Define custom components + - Create building blocks for defining custom components + - Python side (Joe): + - Create `deephaven.ui` module, testing + - Create render context/lifecycle + - Render into virtual object model (e.g. Virtual DOM) + - Create `@ui.component`, `use_state`, `use_memo` hooks, `ui.flex`, `ui.text_input`, `ui.slider` components + - Define/create messaging to send updates to client + - First send entire virtual DOM. + - Send updates for just the elements that are changed/updated (can start with just re-sending the whole document, but will need to break it down into just element updates afterwards). + - JavaScript side (Matt): + - Create `@deephaven/js-plugin-ui` JS plugin, wired up with testing + - Create `DashboardPlugin` to open up components created by `@ui.component` + - Render into one panel for now; multi-panel/dashboard layout comes in the next phase + - `ObjectPlugin` (`WidgetPlugin`? `ElementPlugin`? whatever the name) for plugins to wire up just displaying an object as an element (rather than all the panel wiring) + - `@deephaven/js-plugin-ui` needs to be able to render elements as defined in other `ObjectPlugin`s that are loaded. + - `ObjectPlugin`s that match `ui.flex`, `ui.text_input`, `ui.slider` elements + - Handle updates sent from the server + - Update Linker to allow setting links between components (instead of just panels) + - Handle dehydrating/rehydrating of components + - Release "Alpha" +- **Phase 3 "Beta" (October 16 - November 17, 5 weeks):** Define layouts/dashboards + - Python side (Joe): + - Create `@ui.panel`, `@ui.dashboard` components? + - JavaScript side (Matt): + - Handle opening up `@ui.panel` in a dashboard? + - Gather feedback from actual usage + - Fix any critical bugs + - Incorporate feedback when possible, or record for later implementation in Phase 4 and beyond + - Release "Beta" +- **Phase 4 (November 20 - December 22, 5 weeks):** Polish + - Fix any bugs that are identified + - Lots of testing + - Add any additional components that are requested based on feedback from previous phases + - Release "Production" + +## Using a list and keys + +We can add hooks for retrieving a snapshot or list of data from a table and using it within code. For example, if we wanted to display a list of users: + +```python +@ui.component +def user_list(): + # Get the user table using a hook + user_table = use_table("Company", "Users") + + # Use a snapshot of the table to get a list of users + users = use_snapshot(user_table, ["Name", "Email", "ID"]) + + return ui.flex( + [ + # Use a list of users to render a list of user components + # The `_key` kwarg is used to uniquely identify each component in the list. + # This can save on re-renders when the list is updated, even if items change order. + map( + lambda user: ui.text( + f"{user['Name']}: {user['Email']}", _key=user["ID"] + ), + users, + ) + ] + ) + + +ul = user_list() +``` + +## Converting a Parameterized Query + +Taking the [example Parameterized Query from our docs](https://deephaven.io/enterprise/docs/development/parameterized-queries/): + +```groovy +import io.deephaven.query.parameterized.ParameterizedQuery +import io.deephaven.query.parameterized.Parameter + +myQuery = ParameterizedQuery.create() + .with(Parameter.ofLong("intParam").inRange(0,100)) + .with(Parameter.ofString("stringParam")) + .with(Parameter.ofDouble("doubleParam").inRange(-1.0, 1.0).optional()) + .willDo({scope -> + def intParam = scope.getInteger("intParam") + def stringParam = scope.getString("stringParam") + + // Get the authenticated or effective ('run as') user names of the person or + // process executing this query. + def authenticatedUser = scope.getAuthenticatedUser() + def effectiveUser = scope.getEffectiveUser() + + // Get the groups of the effective user. + def groups = scope.getPermissionFilterProvider().getGroupsForUser(scope.getUserContext()) + + // Using db.i() or db.t() will return results in the context of the query's owner, not the executor. + // You may want to perform this fetch with the owner's elevated permissions, for example, to produce + // summaries that can be more broadly shared. The query writer is responsible for ensuring that they + // are not returning sensitive data to viewers. + def tableResultAsOwner = db.i("SomeNamespace", "SomeTable") + + // Using the fetchTableIntraday() or fetchTableHistorical() from the scope will return results in the + // context of the query's executor, which will apply the permissions for that user. You can then safely + // display the resulting table to that user. + def tableResult = scope.fetchTableIntraday("SomeNamespace", "SomeTable") + + def tableResult = tableResult.where("Date=currentDateNy()", "StringCol=`$stringParam`") + .updateView("OffsetInt = IntCol + $intParam", "Scaled = (double)OffsetInt") + + if (scope.isPresent("doubleParam")) { + def maybeDoubleParam = scope.getDouble("doubleParam") + tableResult = tableResult.updateView("Scaled = OffsetInt * $maybeDoubleParam") + } + + plotResult = plot("Stuff", tableResult, "Timestamp", "Scaled").show() + + scope.setResult("tableResult", tableResult) + scope.setResult("plotResult", plotResult) + }).build() +``` + +Building the same thing using `deephaven.ui`: + +```python +import deephaven.ui as ui +from deephaven.ui.hooks import * +import deephaven.plot.express as dx + + +@ui.component +def my_query_component(): + # Store the state for our parameters + int_param, set_int_param = use_state(0) + string_param, set_string_param = use_state("") + double_param, set_double_param = use_state(0.0) + is_double_used, set_is_double_used = use_state(False) + + # Hooks for getting the authenticated/effective user names and groups + authenticated_user = use_authenticated_user() + effective_user = use_effective_user() + groups = use_groups() + + # Hooks for getting tables. Pass in an optional `as_owner` to fetch as query owner + table_result_as_owner = use_intraday_table( + "SomeNamespace", "SomeTable", as_owner=True + ) + table_result = use_intraday_table("SomeNamespace", "SomeTable") + + # Apply the parameters + table_result = table_result.where( + f"Date=currentDateNy()", f"StringCol=`{string_param}`" + ).update_view(f"OffsetInt = IntCol + {int_param}", "Scaled = (double)OffsetInt") + + # Apply the double_param if it is used + if is_double_used: + table_result = table_result.update_view(f"Scaled = OffsetInt * {double_param}") + + plot_result = dx.line(table=table_result, x="Timestamp", y="Scaled") + + return [ + # One panel for all the inputs + ui.panel( + [ + # For each kind of input, we can specify the control we want to use (e.g. slider, text input, checkbox) + ui.slider(value=my_int, on_change=on_int_change, min=0, max=100), + ui.text_input(value=my_str, on_change=on_str_change), + ui.checkbox( + "Use double?", value=is_double_used, on_change=set_is_double_used + ), + ui.slider( + value=double_param, + on_change=set_double_param, + min=-1.0, + max=1.0, + disabled=not is_double_used, + ), + ] + ), + # One panel for the table + ui.panel(table_result), + # One panel for the plot + ui.panel(plot("Stuff", table_result, "Timestamp", "Scaled").show()), + ] + + +my_query = my_query_component() +``` + +## Glossary + +- **Programmatic Layouts**: The concept of being able to programmatically define how output from a command will appear in the UI. +- **Callbacks**: Programmatically defined functions that will execute when an action is taken in the UI (e.g. inputting text, selecting a row in a table) +- **Widget**: Custom objects defined on the server. Defined by `LiveWidget`, only implemented by our native `Figure` object right now. +- **ObjectType Plugin**: A plugin defined for serializing custom objects between server/client. +- **deephaven.ui**: Proposed name of the module containing the programmatic layout/callback functionality +- **Component**: Denoted by `@ui.component` decorator, a Functional Component programmatically defined with a similar rendering lifecycle as a [React Functional Component](https://react.dev/learn#components). (Note: Might be more proper to name it `Element` and denote with `@ui.element`) diff --git a/plugins/ui/LICENSE b/plugins/ui/LICENSE new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/plugins/ui/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/plugins/ui/README.md b/plugins/ui/README.md new file mode 100644 index 000000000..d83902498 --- /dev/null +++ b/plugins/ui/README.md @@ -0,0 +1,62 @@ +# ⚠️This plugin is a work in progress and is subject to change. Use at your own risk.⚠️ + +# deephaven.ui Plugin + +Plugin prototype for programmatic layouts and callbacks. Currently calling it `deephaven.ui` but that's not set in stone. + +## Build + +To create your build / development environment (skip the first two lines if you already have a venv): + +```sh +python -m venv .venv +source .venv/bin/activate +pip install --upgrade pip setuptools +pip install build deephaven-plugin plotly +``` + +To build: + +```sh +python -m build --wheel +``` + +The wheel is stored in `dist/`. + +To test within [deephaven-core](https://github.com/deephaven/deephaven-core), note where this wheel is stored (using `pwd`, for example). +Then, follow the directions in the top-level README.md to install the wheel into your Deephaven environment. + +To unit test, run the following command from the root of the repo: + +```sh +tox -e py +``` + +## Usage + +Once you have the JS and python plugins installed and the server started, you can use deephaven.ui. See [EXAMPLES.md](EXAMPLES.md) for examples. + +## Logging + +The Python library uses the [logging](https://docs.python.org/3/howto/logging.html) module to log messages. The default log level is `WARNING`. To change the log level for debugging, set the log level to `DEBUG`: + +```python +import logging +import sys + +# Have the root logger output to stdout instead of stderr +logging.basicConfig(stream=sys.stdout, level=logging.WARNING) + +# Set the log level for the deephaven.ui logger to DEBUG +logging.getLogger("deephaven.ui").setLevel(level=logging.DEBUG) +``` + +You can also set the log level for specific modules if you want to see specific modules' debug messages or filter out other ones, e.g. + +```python +# Only log warnings from deephaven.ui.hooks +logging.getLogger("deephaven.ui.hooks").setLevel(level=logging.WARNING) + +# Log all debug messages from the render module specifically +logging.getLogger("deephaven.ui.render").setLevel(level=logging.DEBUG) +``` diff --git a/plugins/ui/examples/README.md b/plugins/ui/examples/README.md new file mode 100644 index 000000000..7fed17914 --- /dev/null +++ b/plugins/ui/examples/README.md @@ -0,0 +1,494 @@ +# ⚠️This plugin is a work in progress and is subject to change. Use at your own risk.⚠️ + +# Introduction + +deephaven.ui is a plugin for Deephaven that allows for programmatic layouts and callbacks. It uses a React-like approach to building components and rendering them in the UI, allowing for creating reactive components that can be re-used and composed together, as well as reacting to user input from the UI. + +Below are some examples to demonstrate some of the functionality you can do so far with deephaven.ui. At this point it is only showcasing the subset of the planned functionality that has been implemented, but should give an idea of what is possible. Most notably, all examples will only appear within one panel in the UI, the `ui.table` functionality (allowing interactivity and customization of displayed tables), and ability to use other plugins (such as deephaven.plot.express) is not yet implemented. + +You can run the example Docker container with the following command: + +``` +docker run --rm --name deephaven-ui -p 10000:10000 ghcr.io/deephaven/server-ui:edge +``` + +You'll need to find the link to open the UI in the Docker logs: +![docker](assets/docker.png) + +# Basic `use_state` Examples + +deephaven.ui uses functional components with "hooks" to create components. The most useful and basic hook is the `use_state` hook, which allows you to create a stateful component. The `use_state` hook returns a tuple of the current value of the state and a function to update the state. The function returned by `use_state` can be called with a new value to update the state, and the component will re-render with the new value. People familiar with React will be familiar with this paradigm. + +The below examples show a simple usage of the `use_state` hook, building some of the basic examples on the [React useState docs](https://react.dev/reference/react/useState#examples-basic). + +## Counter (number) + +A simple example to demonstrate how state can be used using the `use_state` hook. `count` holds the value of the counter, and pressing the button increments the number. + +We define our `counter` component as a function using the `@ui.component` decorator. This decorator allows the component to be rendered in the UI, when we assign the result of it to a value with the `c = counter()` line. The `counter` function returns a `ui.action_button` component, which is a [button that can be pressed](https://react-spectrum.adobe.com/react-spectrum/ActionButton.html). The `on_press` argument is a callback that is called when the button is pressed. In this case, we call the `set_count` function returned by `use_state` to update the value of `count`. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def counter(): + count, set_count = use_state(0) + return ui.action_button( + f"You pressed me {count} times", on_press=lambda: set_count(count + 1) + ) + + +c = counter() +``` + +![Counter](assets/counter.png) + +## Text field (string) + +You can create a [TextField](https://react-spectrum.adobe.com/react-spectrum/TextField.html) that takes input from the user. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def my_input(): + text, set_text = use_state("hello") + + return [ui.text_field(value=text, on_change=set_text), ui.text(f"You typed {text}")] + + +mi = my_input() +``` + +![Text Field](assets/text_field.png) + +## Checkbox (boolean) + +You can use a [checkbox](https://react-spectrum.adobe.com/react-spectrum/Checkbox.html) to get a boolean value from the user. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def checkbox_example(): + liked, set_liked = use_state(True) + return [ + ui.checkbox("I liked this", is_selected=liked, on_change=set_liked), + ui.text("You liked this" if liked else "You didn't like this"), + ] + + +ce = checkbox_example() +``` + +![Checkbox](assets/checkbox.png) + +## Form (two variables) + +You can have state with multiple different variables in one component. In this example, we have a [text field](https://react-spectrum.adobe.com/react-spectrum/TextField.html) and a [slider](https://react-spectrum.adobe.com/react-spectrum/Slider.html), and we display the values of both of them. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def form_example(): + name, set_name = use_state("Homer") + age, set_age = use_state(36) + + return [ + ui.text_field(value=name, on_change=set_name), + ui.slider(value=age, on_change=set_age), + ui.text(f"Hello {name}, you are {age} years old"), + ] + + +fe = form_example() +``` + +# Data Examples + +Many of the examples below use the stocks table provided by `deephaven.plot.express` package: + +```python +import deephaven.plot.express as dx + +stocks = dx.data.stocks() +``` + +## Table with input filter + +You can take input from a user to filter a table using the `where` method. In this example, we have a [text field](https://react-spectrum.adobe.com/react-spectrum/TextField.html) that takes input from the user, and we filter the table based on the input. By simply returning the table `t` from the component, it will be displayed in the UI (as if we had set it to a variable name). + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def text_filter_table(source, column): + value, set_value = use_state("FISH") + t = source.where(f"{column}=`{value}`") + return [ui.text_field(value=value, on_change=set_value), t] + + +pp = text_filter_table(stocks, "sym") +``` + +![Text Filter Table](assets/text_filter_table.png) + +## Table with required filters + +In the previous example, we took a users input. But we didn't display anything if the user didn't enter any text. We can display a different message prompting the user for input if they haven't entered anything. We use a few new components in this example: + +- [IllustratedMessage](https://react-spectrum.adobe.com/react-spectrum/IllustratedMessage.html) (ui.illustrated_message): A component that displays an icon, heading, and content. In this case, we display a warning icon, a heading, and some content. +- [Icon](https://react-spectrum.adobe.com/react-spectrum/Icon.html) (ui.icon): A component that displays an icon. In this case, we display the warning icon, and set the font size to 48px so it appears large in the UI. +- [Flex](https://react-spectrum.adobe.com/react-spectrum/Flex.html) (ui.flex): A component that displays its children in a row. In this case, we display the input text fields beside eachother in a row. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def stock_widget_table(source, default_sym="", default_exchange=""): + sym, set_sym = use_state(default_sym) + exchange, set_exchange = use_state(default_exchange) + + ti1 = ui.text_field( + label="Sym", label_position="side", value=sym, on_change=set_sym + ) + ti2 = ui.text_field( + label="Exchange", label_position="side", value=exchange, on_change=set_exchange + ) + error_message = ui.illustrated_message( + ui.icon("vsWarning", style={"fontSize": "48px"}), + ui.heading("Invalid Input"), + ui.content("Please enter 'Sym' and 'Exchange' above"), + ) + t1 = ( + source.where([f"sym=`{sym.upper()}`", f"exchange=`{exchange.upper()}`"]) + if sym and exchange + else error_message + ) + + return [ui.flex(ti1, ti2), t1] + + +swt = stock_widget_table(stocks, "", "") +``` + +![Stock Widget Table Invalid Input](assets/stock_widget_table_invalid.png) + +![Stock Widget Table Valid Input](assets/stock_widget_table_valid.png) + +## Plot with filters + +You can also do plots as you would expect. + +```python +import deephaven.ui as ui +from deephaven.ui import use_state +from deephaven.plot.figure import Figure + + +@ui.component +def stock_widget_plot(source, default_sym="", default_exchange=""): + sym, set_sym = use_state(default_sym) + exchange, set_exchange = use_state(default_exchange) + + ti1 = ui.text_field( + label="Sym", label_position="side", value=sym, on_change=set_sym + ) + ti2 = ui.text_field( + label="Exchange", label_position="side", value=exchange, on_change=set_exchange + ) + t1 = source.where([f"sym=`{sym.upper()}`", f"exchange=`{exchange}`"]) + p = ( + Figure() + .plot_xy(series_name=f"{sym}-{exchange}", t=t1, x="timestamp", y="price") + .show() + ) + + return [ui.flex(ti1, ti2), t1, p] + + +swp = stock_widget_plot(stocks, "CAT", "TPET") +``` + +![Stock Widget Plot](assets/stock_widget_plot.png) + +# Other Examples + +## Memoization + +We can use the `use_memo` hook to memoize a value. This is useful if you have a value that is expensive to compute, and you only want to compute it when the inputs change. In this example, we create a time table with a new column `y_sin` that is a sine wave. We use `use_memo` to memoize the time table, so that it is only re-computed when the inputs to the `use_memo` function change (in this case, the function is a lambda that takes no arguments, so it will only re-compute when the dependencies change, which is never). We then use the `update` method to update the table with the new column, based on the values inputted on the sliders. + +```python +import deephaven.ui as ui +from deephaven.ui import use_memo, use_state +from deephaven import time_table + + +@ui.component +def waves(): + amplitude, set_amplitude = use_state(1) + frequency, set_frequency = use_state(1) + phase, set_phase = use_state(1) + + tt = use_memo(lambda: time_table("PT1s").update("x=i"), []) + t = tt.update_view([f"y_sin={amplitude}*Math.sin({frequency}*x+{phase})"]) + + return ui.flex( + ui.flex( + ui.slider( + label="Amplitude", + default_value=amplitude, + min_value=-100, + max_value=100, + on_change=set_amplitude, + ), + ui.slider( + label="Frequency", + default_value=frequency, + min_value=-100, + max_value=100, + on_change=set_frequency, + ), + ui.slider( + label="Phase", + default_value=phase, + min_value=-100, + max_value=100, + on_change=set_phase, + ), + direction="column", + ), + t, + flex_grow=1, + ) + + +w = waves() +``` + +![Waves](assets/waves.png) + +## Custom hook + +We can write custom hooks that can be re-used. In this example, we create a custom hook that creates an input panel that controls the amplitude, frequency, and phase for a wave. We then use this custom hook in our `waves` component. + +```python +import deephaven.ui as ui +from deephaven.ui import use_memo, use_state +from deephaven import time_table + + +def use_wave_input(): + """ + Demonstrating a custom hook. + Creates an input panel that controls the amplitude, frequency, and phase for a wave + """ + amplitude, set_amplitude = use_state(1.0) + frequency, set_frequency = use_state(1.0) + phase, set_phase = use_state(1.0) + + input_panel = ui.flex( + ui.slider( + label="Amplitude", + default_value=amplitude, + min_value=-100.0, + max_value=100.0, + on_change=set_amplitude, + step=0.1, + ), + ui.slider( + label="Frequency", + default_value=frequency, + min_value=-100.0, + max_value=100.0, + on_change=set_frequency, + step=0.1, + ), + ui.slider( + label="Phase", + default_value=phase, + min_value=-100.0, + max_value=100.0, + on_change=set_phase, + step=0.1, + ), + direction="column", + ) + + return amplitude, frequency, phase, input_panel + + +@ui.component +def waves(): + amplitude, frequency, phase, wave_input = use_wave_input() + + tt = use_memo(lambda: time_table("PT1s").update("x=i"), []) + t = tt.update([f"y_sin={amplitude}*Math.sin({frequency}*x+{phase})"]) + + return ui.flex(wave_input, t, flex_grow=1) + + +w = waves() +``` + +![Wave Input](assets/wave_input.png) + +We can then re-use that hook to make a component that displays a plot as well: + +```python +import deephaven.ui as ui +from deephaven.ui import use_memo +from deephaven.plot.figure import Figure + + +@ui.component +def waves_with_plot(): + amplitude, frequency, phase, wave_input = use_wave_input() + + tt = use_memo(lambda: time_table("PT1s").update("x=i"), []) + t = use_memo( + lambda: tt.update( + [ + f"y_sin={amplitude}*Math.sin({frequency}*x+{phase})", + ] + ), + [amplitude, frequency, phase], + ) + p = use_memo( + lambda: Figure().plot_xy(series_name="Sine", t=t, x="x", y="y_sin").show(), [t] + ) + + return ui.flex(wave_input, ui.flex(t, max_width=200), p, flex_grow=1) + + +wp = waves_with_plot() +``` + +![Waves with plot](assets/waves_with_plot.png) + +## Re-using components + +In a previous example, we created a text_filter_table component. We can re-use that component, and display two tables with an input filter side-by-side: + +```python +import deephaven.ui as ui +from deephaven.ui import use_state + + +@ui.component +def text_filter_table(source, column, default_value=""): + value, set_value = use_state(default_value) + return ui.flex( + ui.text_field( + label=column, label_position="side", value=value, on_change=set_value + ), + source.where(f"{column}=`{value}`"), + direction="column", + flex_grow=1, + ) + + +@ui.component +def double_table(source): + return ui.flex( + text_filter_table(source, "sym", "FISH"), + text_filter_table(source, "exchange", "PETX"), + flex_grow=1, + ) + + +dt = double_table(stocks) +``` + +![Double Table](assets/double_table.png) + +## Stock rollup + +You can use the `rollup` method to create a rollup table. In this example, we create a rollup table that shows the average price of each stock and/or exchange. You can toggle the rollup by clicking on the [ToggleButton](https://react-spectrum.adobe.com/react-spectrum/ToggleButton.html). You can also highlight a specific stock by entering the symbol in the text field. + +```python +import deephaven.ui as ui +from deephaven.ui import use_memo, use_state +from deephaven import agg +import deephaven.plot.express as dx + +stocks = dx.data.stocks() + + +def get_by_filter(**byargs): + """ + Gets a by filter where the arguments are all args passed in where the value is true. + + Examples: + get_by_filter(sym=True, exchange=False) == ["sym"] + get_by_filter(exchange=False) == [] + get_by_filter(sym=True, exchange=True) == ["sym", "exchange"] + + """ + return [k for k in byargs if byargs[k]] + + +@ui.component +def stock_table(source): + is_sym, set_is_sym = use_state(False) + is_exchange, set_is_exchange = use_state(False) + highlight, set_highlight = use_state("") + aggs, set_aggs = use_state(agg.avg(cols=["size", "price", "dollars"])) + + by = get_by_filter(sym=is_sym, exchange=is_exchange) + + formatted_table = use_memo( + lambda: source.format_row_where(f"sym=`{highlight}`", "LEMONCHIFFON"), + [source, highlight], + ) + rolled_table = use_memo( + lambda: formatted_table + if len(by) == 0 + else formatted_table.rollup(aggs=aggs, by=by), + [formatted_table, aggs, by], + ) + + return ui.flex( + ui.flex( + ui.toggle_button(ui.icon("vsSymbolMisc"), "By Sym", on_change=set_is_sym), + ui.toggle_button( + ui.icon("vsBell"), "By Exchange", on_change=set_is_exchange + ), + ui.text_field( + label="Highlight Sym", + label_position="side", + value=highlight, + on_change=set_highlight, + ), + ui.contextual_help( + ui.heading("Highlight Sym"), + ui.content("Enter a sym you would like highlighted."), + ), + align_items="center", + gap="size-100", + margin="size-100", + margin_bottom="0", + ), + rolled_table, + direction="column", + flex_grow=1, + ) + + +st = stock_table(stocks) +``` + +![Stock Rollup](assets/stock_rollup.png) diff --git a/plugins/ui/examples/assets/checkbox.png b/plugins/ui/examples/assets/checkbox.png new file mode 100644 index 0000000000000000000000000000000000000000..52d71ac6c29ed3346b5a49b625fc322d8cfae4a0 GIT binary patch literal 3785 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/counter.png b/plugins/ui/examples/assets/counter.png new file mode 100644 index 0000000000000000000000000000000000000000..3fad032f01bd391e52aa65cd75b8e837c330460c GIT binary patch literal 3716 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/double-tft.png b/plugins/ui/examples/assets/double-tft.png new file mode 100644 index 0000000000000000000000000000000000000000..a70f8ab4c06dd8f733d887ad45854c5a2e78a2c1 GIT binary patch literal 73170 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ðWCnRIi#yeSWTcgy&)&Y!1(8Iv)Sz`U)o4h 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 W8u(?^M?w$*{*seYmaGvs3Hl$6$$z2% literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/stock_rollup.png b/plugins/ui/examples/assets/stock_rollup.png new file mode 100644 index 0000000000000000000000000000000000000000..a110c5fcaabf56d059d4f70581f40d99e91d061b GIT binary patch literal 171172 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 #HkcI-8@Us3Yg zOvzj)gD5)+u}8`g2l#v*RmsXgxrAR1%&nMFh4EdvPp7WIuP2IedhdCj1bmrNB&!DZ z>rn$)ucl!gI6krf-5!4Fy0^i9*l|8o|le zxS1(tU&NrwQKD(2%3L?x4cqN{r_kmNz#`VoX6C&kd&(j_^+jnB*ZmC%^aQ=|Y9*k} z?;3=#OpS8l6JNkETYO=J(-Pjv?A5{Zh3PUqb%GD3GlOF)m+(JK(vMHqr=Q>hlM~MS z6iSY^#uXchq%5763vKF=8$x!>qzP%V;(!~E!!w+~u5&5kj7Sx@zAr-^fX?_dc>pe3 zchoj1WXX?ba@HcuLtg~%_cw#i*@^zlI5VcdU79GRO=f`@{DdZ=U^ikgt!C@UCB7;% z@fiki3h($no2%Xsh!E0$`6YFrl}d2;BlMCd-C4uk`-r@5-=}GRTncCuR|G!j_a2Iq zm%(#0^F-CHiH+rg16arfvRp7o722d9!P z_V5imoWTpDuPKJiPtox$BMIy`darZmN*_;JszR}wYeOo+ZXzgn)6))#dqiX=jTsrm zE#!&W?I!E&wj@MM)rGx;X;QFnqo<5*I1w%*FW&QVl^Yeuv1`cBI+9zMo#M}T1mbO4 zq2&b{yC^^UX2X0&zfR<6J&7@uzHH$x&)qjMx?93Ro<2{Xxt-IqBB^2Ga=f~@$&=mr zKr?fmBShrz3Olv9g~ZA;4==<7{m|QkPPheXsz20%RA1Vmfh`;HpAIr^KfS9W{?o8= z_rEUDSy^6>8k8Proio&x!*!tG(77_7a6?3%+I`MU7Va;>{ENQg4{Slw0dmVM&yL40 z_>;nObhigo?M0&h<0xIec}UKt{i;n})yR%`vT?OB2NN;_S8O+Ch$<;cI>Hkw6>8UmEm&K4-9ecC+NvKLTbh{hq-hWOz9Y9DCh$-R3g$mR;LZUv_e&!*%O-A-! z{W!x$o6S7=_@fcu6#8~cbBer{`Ih-KGE^x2b|GaeA09w!DG zPB8JvbyiVK&H5{-4V4I~8WO9-_8zM0?MG3oI~0A3%8y*?SwCACfke+^V7{Hh8F9bY zx@$uhrK1q1OY|9pSRLgy{1$^N6V=u+L*i+V6wzkVd1u9g@ndwQ4Lc;_`oPr&{@k}# zzb?|dtqWpjyZasqL{AvN98#H6=LUT1o0QNV= zJevQM!#7jZtZprfJ81;61B|r3rZV*~lkWZ87BoPndZ9NDzF?zvG{sac;D?hs)L)l> z!F~MGo)R9~nnvFk?0CVdH|d4dDUN*B@amtra!ioff(RSILj(o-5_N z8}HSk?%nTkn!9t1+Uq@++#+$lL`#r}N?s8bqtY6DG4&fQ<0x}KNFXRN_0NLvz`zOr zXC;GV1qhCKD!~??bAPFFV+y=d-D0RyRH! z8J#vG>R;X%YnXp|6CbRiUMmAgMsW2zNB5i|@vflT1chh2ELk}r>i>Rhr@H*UO3fM4 zch+aoCO!944J3ZA$dxi&66T_hf9b)P^mE#csoElf&o|>X{*n)er~JIc+Nq++TLt6+ z?D5xLe1k=n;UfAkZNk0`KugCrfrG%P`V&8SkyfWMg}bE??q|)_KbQmX%eFamgG8j) zl~TM#B&GPse9FNN*MtjSg3D|PoEqbcf4{KAh&gvet%B(23-SxZAwYR6>=NoZR$h;GQUlk2NQ9XRNbl@2Mu)7OTIsFh?&@0Il|5q$k?+D1o?2d9Hcmb2V&hYn)uOLF4u$#6m8JthqsAGeQ0`bWv*wb3AG{-|O!X<7iQaA!_nCXVWN@H$idsPdii0=RDuqeS;$O$gDtB?kRj6$(3F;Y zu_%=f!gzM1Rk&3g^Kmt}I6s?uNNor3gg!Vs4)#@EF`)%6NRw4gq=Zk1B*$H|Dfr~a zbdpl&+orO=OnY&(Is{zZey%6N8s}K==GPG96RAqxYSTo{6B_Oh8DCKba}7k`tRIi> zlzl)`vnc`o23bR}m`HNw8_GTQbh9hQrcWQ}#N7@*^D*xy40)$%@R#E)9vri@oIt0_ z;!drmJ>~g2BdBDi+3Ie-m3k348n`Wic7)WUAlHYcGG8D7s(nWl%?BmXuJ<2n-HRLP9p^X$zCamAbEG#k>A)}heuj$Imz}n(ARP-oRU5nFeT@@K! zR4GcR>2Ntu?sI&T3Rl~jJMMNi4DQjqB!!~;^)P5g{_nZ~(ao93_bC)u>|B^WE%v(Y zYSEQ7p;vznz1K6aEqm318~YU+s7+k-kt5Qm_A?FubBoM1REd~%EOm7FB8+71z?7MO#=grL!< zE#rZ0$Rz7RWC(tX1Tj7;PG0|ZgEzT;&C*l!Imv*NLn^u|8dh*FkB^HXu-(U#RSznz zfZ&yVs0Zxar{}xd1(~ddN@U+aj6sz2eX0AZSNEGCpWby6Au?C3%3C*RrcUtTub1vY zwcsgDmS6Q6c!X(-ZG%GdU7&NfQN|@+ye!mh4J>sDL%0&%fOo`~n*wRk+@Z{4yBJFhzzo9jW(^aTO%xQ<`^gBC=T>FAa;A0G;p57*+?QXo! zUzl1@d#@}bw?S1Om1|Z7J1rcxx05nROnY0E8-^4EA=dtth~Fp-|XqC6)`U2-hqpEF8`%$L7> zU8=7Zp*Ko3b<=)xO!wEwBzNDeOi~~>>V5)7g$rmdVH}CgqM4&R195$;zQl`6rNhy6 z1Oy&dr;W!CLw0-(rt9q72~Ti;Uw3npf({xQ|185s*r+2E^t`jdGEZThQdX`FOv`~H zeTv#yJ=F|pP^U=%U(RxYzkm4VWU|FF_z>@6Gg3ds>&>e-bBsbzFd}??b7y%!bDWS< zcEYfsb4v}tx|kiX`H`YuLn`H#Gi62{pqR*f@!nNIP|1Eh=%gYQl9G%Dl8vkGBf_>3 zQABKv0EuDOthG*4rzt>5@Cv$_7tsPy#S4U*Q5D4v6tBO5!Po;Q;HY4x>~vk8aVRs!P)OU*Np>Y3kC zdV5P=rO0rkBUS_h4%30YV8W==95~-L)YG1eP6K5Qijf38UZq~7Xx0r7(_r#othn;Z zomx<6p82&ykqIx z5rTDiyz*Q3D7L>g#ZHUL&-mx1Xh%{-ZbEW)%+pogOZTK-*PcOXeoZWEdRO6*b-d-4t3uC?)wqmSP7% zz*e+^y#lnOrtCP;pqv4vqd|IW{p;7pXpvW1NZ*3TbKlB~V|5DXmq#WCFGoIH;=D&c z-QU_YEjHkzeiv79J&sjfLxQ9;j67L@(H+$bBr7DxL&X;I}==prB^#>=UJQ$GM}V6m&G@@rW9*a=E2t7AEEdtf+yx>uEd<(x;}e6Pk|{gmNIX znDGuBu^fRz4*^vF-lgUmu)Vtwev8TGW=qn^pOyHo@SX` zUUGhUy+apon!cEC^Cy?qG<&laDr;{NNYWGZgytvH;6r!vPE5=(sHIua?NWLCYq2^u z(NYNWC=v<}OL&KFP;SpJLe>WUz;1+HiS=<5{3h6rXKcW%9D?E4^`{8^P}`Z2R61~B z&Kp{-e@KYkc(2bHmi6w%0cb+GaYydB9XLfM3*E6SsiDKaw@_~TU3G{qF&Es{eaIkm zU`O`xel;qpKsE8TQ$q`BytVk=p@psY3G;JvqWRggu;uOcHW~5BLPh^ZaQmUiNg5Na z^fBI|$?@#jf;PzT^q?gp`42?n0iH8FuZ(0Wdc_54=>{BG2~Cl)u3ncWqTnvgELJ7j z30Jtq31m75l_WYE0WD-hc%mS7z=gk)e@_-tRa90TwSvXe0WS(pob40sFUly?EGUL}wT4xiO^V|ttUIiZd_pf`4S zaMTniE`&Yw4JOdLPajeu9rsI+B@G}CSpHn;h)qq*c*bWS?GC%mG4ptuqVTXkA(lQ; zmG${RSx{Tq;qs-yH@-g<;>3c1mC%V7r6xSXA4R)(ou+I4%E4G-4>F4!sLe)ZFPG&FAYeSRVG}s%`poFGr$Z@Xj(EQrGlSRy3+uFBym`l%P;MUI~?`(-+kSyM2oBXJoM- zFr@baqA#c+>JWLZ;0rR(m^EzagKv|EyFtl~-KZqw18Hf)>v-^ruITK3ery{0QbFkh z?6H~ks8GWo+TH055*SvO(zK?q}4$p!#g~@x7Cw7*y|rScAZgnE@1T+S>%{cn?caVp$zSmI@YF1 z2npqbf*LGBMlV$h;lF9rAPBe6kiYrE1IT6ZUGqMSxZaD2`$hlEWp#vq0w;U258_ZL zHl9L}JWHt>U*hQ!bX7jYAAj5R&$X)vUc!)`JQ4Q|$q3bu-dZl5xxJ%hzREv-6GE;@ z`RxTkPvcnfsb>LYs|(gyNkM(S2Zvv;2ShbZ6UhA4MP{Ap06cJ)8FDvyryW>J$z|i( zJN_z)M?>ehQsuOpS32@>*Y@xG>-94_!gg>(rp7p=ikx!;LW~5R;@w+GA2l^GXdlD3 z`hu8f^S||13|Zn+T@$CDWDFN=zKI8sV6j>fA~(HyluJh{!>M+l4=NUMxP%>yg;{o! zofRB+w_Q+5affV=r#!&$(~5BMgtoe3O2{yKF=+iEe9WLM=n&_p7U2?zxpn?#X7xKd z6AoG6NtDHv6?e_Oi3`0N)AbSas1PQCSm65~e@YbNms80~LKq|2MSb0}c4w)76Mp&@ zCcGNJHKi%SFnF;ywSPUKEBX2HBOMhjyk9Juy@&?7`vpMVBxHizZph`Mf^6m>e$nq%L32=_1l;aIMF>FUSvm*ZX;J^U{UTFc!uFFGFZ3T zt*XvWf1AP5ZPJq1aSUBy{?WP#+iSa*gpT?A#?q3&3>__Y=V5bTQd;;*?S7I36*}sZ zh57#eAv=7Glfg5>-=3Mb);iIfsl#4yz4Vn!FHnm?~ZxHY0EiORH82I|~3X%d?w@)qN#M9_#4m$Vg1g}<8jL2v# z!(rIk8<&f-#r^G^A$R;W%v+o_DvLhtwA1%((zBDt$gakC$IsEd!n3$P$(rH*QC)Yt z*yKi1SBdy2$73gfdnNL0QNUOG6Su<8xr#BFz<6llYxl;ir2cuwN&AXQcc359wUxad zz4qZsN`BHSv5i1Zkg7@1o;r!3dwc9G(|-AR-NB{`|M+#GJ*?&P9z}~MdjZLOOFSi7 zeIv-6bDAAM@Py*EN2@n8K3sbT#wR+$XuU*eY>KL36`NoIW^eDh#S}YvKHUgEr{6ky zdDI4ZYSRJ3WxOsGPbtE@u)@Qg`@tdrJKbYUPXZE_= z>bNp%^FZp^8@^e)mJs_aC z%_{asr8-xy1|6?5zT6J7Ugp!Vb`Qq%T?IC8sJWRRr=UvzM26IQ;NME}^L*A2hjN?h zjLDfpxW_@b`EXsq7+P z=)L?|Q1w3P=yfUX?{7{{RTbp_7rSmq*n;M<0ohGzpdtS1d3EXxgk^g&GySou_4sLL-=PHR{xewr-YEf9_H#We3o@{Op^4LTicnp@6UM5ikb^XIQP zxNOx3oN*73x7{X6*1B`3NPDQt`C9IsvM$Wzw3F$pQsixs0h= zI}pel7r;d6BudL3?Pf|F4g;W{U34O=m+c}Iml?aiKFr%?^Ja2)$j+!4ULKQ0=W<-Q z(cJj*fA8IUI7f|OR%NoZT+46T3l4-XnEg$|{nHh*lO;A!!x90P-Jkep+Vosdu(MNS)+7Io9Jzjvv*7ZwqqTOd|5k?fjrlyMiURuO5;- z4;n}Muy6&q<7K4hA?mMO_?AV5MDA3w!M%k89mT2YxM@3sWK*ID_Sqheq*=b| zilYIH#GKCDO9nH2`t{+mUiJ6y2iLH8(#HLQsVXli=Nd9=!%V(~#V-vMvrx3SdOgWR zJP-$%ztS)LbkCYUo=WU2Fm`H&h5ydK+@BpTI=t6M|G=B_WS`8DcpBXke#{sXqN!)( zAndF4AuIH3U2hRcVDn21nQrR-cGa=lDm?SXYk=RUIJGEcri=-oX^Dq_=Z z2wIaD{p}Zq!q6n^03I#ONXGy6PUhBPyfX~J*GDaLhc<5O-oC}=t-=l`S@Ht&C;Ri?SN$Y;jBca;5b;mM*4TJGH&WG#~*hx zyNflvdqNAUCOpgw1Bc4_oGeb9-#;IIMd`Sxebp3Ca&ZJ!Q8XvrO<}oT!DA3~Gsm&y zNS8i|={cQEQkP&>9-cjEueYBknV&V!09C0hE-;0kCiy-m?Q+#^xI8gbo697yCBU{JzI^xqQ2hzR4|0;O1FJZ=|A)1A4w5YT)&;A} zwr$%+mu=g&ZC96VS9RI8ZQHh8uljfIeKRj&X8xKT85w!b-X~XP#6An(S>IY%=I`Zy zl$D=rPba3e#@^E;-F5G$a?^9(V0?o!xtHrR2csNcYd8*xhPuI~$-MiEkjh_-yqppe zf8QGlHS-2OO;;0=*>Y)?sH>~+Om)_twY-1jqv8%vxL3TMW1YNp_0@LdaJ1-i+Ed%i|b*LDb8rZ`{};Nci!2_?>qcp5*1eh`e#cM&460K3C$Q6(17&_N2I&D1Mr_S?f3StI-7xQ%0VZ3Q#!r8{&1W&J1oE zxZ_1h&Xx3140b8mMr?+i7q`iqg4Q%PQDaP1xx#njLHK+oEjk`f= z+#&+Cs@&&7U=OTEY&M7fMnRkR$Tc@iCcLeQ2uFyHTQBBbemgLfsl4n^#v5cX@CJ5i zx8jw7zg9$NQ@a2svKVoqich+;>~t5Ib%Q#QP@QU=A#Nr7gL0%oz|%((ndxAsZe+9Zun5% zfB$W_RjY%SI9(2(E#M=qhhr8qA}w7=a8azx(68pVwxve(g1eo6(KnmBhR&EJWwcQ& z>9xRbss0$aD={+mE1##pzDnHKWI?B{VbZllpsn?hTBGg|Cet4aVWs%^RQY-=a~JJ94t|Yu5AuVC4k? zip|*0Y@Rdz0FIugD{p)GgRP|#uys}_ZkYFP@H%hx&n+Pbw{Z3Gs4+I%pW3I$L+N^Y zD8&cgIQCm#{*!gIb4z+_`xDnnBpS>1I3bYF(Ww=6^W(58$;`DB-CdVC)Te4~&sr$O zfLOmF^r=yK=dX_XjCXBD>@CrWO5#+VaeL+^*q?^a#i6pIclDQH2qBTJ>DbmbP9)Dm z(Jnou@Ap|J??epChpBL|jO;*BrP68N-csKFSts8_jPu7zFNMCrzgiE!FdHasI$TDy zeRq@F3{Cp|bvaN7NG?Z3!!MXKdEqJqmSd|IX@TH=jP3ZmkwC5cH|G||T#UM6<{xkO zzYwh*#dV`33gk4c5eb%JZl!cSqRu~tl0ed-k$B@sYnP|tL7q7)gzKB6VmEeD5t9@W zN(x(Qlt}+j^}x78?E0XHyK@wn;(D%ALgv70DHBMdGWD=79hRR~*rs0ZsZ6*|&Iq*I zLZ2~qoIZsUOZl=CVIZwuOsg(7bV=jH+m*f7&ua!d`mn-4CGp>OQBUeY8}8bT6sM%u zWDuN8)-D`5l%BTN9J&$j@gYoz$?u476#oOyuSRnTo2IR+#OCpjeazzt3cErn`$c+$XAI{4tFq z%YAb{(=__M+UW`ap{17Mhg+V`O*$=QH`%egqr5!_-KCqs8|W#Q_`$|ZYo(~; zymrTRWjJ;z;-k?Xe_QVik0<@^0TaUAgx6W`QomaR5>cmiyK4h^$asKD=AqGa*^aAa z$>D*i*itEqNCR=psL;KnU!zWMr9GVfxukLE;hf&l{mvt%M9j?$Sc$z*FvQ5n4z#H= z{Y+jOIz0d0W8+lh$AF`)0w)677Vb)g;anlU#ONLmI%OK$a;kbPp+kyY z4%g&!&%*JyddBlv;mF!a=3oR&n#{d_-Aej1#1ISA?jxzFVg!`l;j1Hiftu#}q$#0Z zAK)z|rS3?nK54|cZzRNcn<$4d4w$2|38yUoE46jRtkBCAG#IXHvNrRP8hWcQYI*Mb zQTTBT;Q2rMidmr69_>DRZuWB$E$w3MZWk@L$EwOaY?74<7}z7*ox39>R43#(L8X@E z5zB>7-(agBFU}%ltA6WvrRx!Ur8(O$9Bx)~j{*iGtZ0CTAr zp%B+;jHAXj&hg#Y54m+!K{0MpWdc#1X84n51Uy;Ly^$U&m1gR)=Ewew%WjQ zZux*1c4y`SP`X| zTPfdsq|h-|m8JaUwAG52c9*L+9C*D<>h^)n zi;*}u|9M?94b_c^UBti6flVLB{tSY6tut|Ds}h$`o4Tcm#%O5Wc^Eup_;Mo+Bc5S+0DB)Hsdlo!QOhouN{5o zvW+8`1Jfj@uJicPIsQfLG{W!N6X0&k8R`MMvz6hNXtVObV_y5rG3;v+Y3Yn^R&mL* zKt)XHF)UgD3$Uj8he!LfLqhV0mC%a_e#I4FKdX+-Y4EFX1gJsE-3NLzKw!%fn5dvm zjB75PF1W$YYY>aNgFb`>Dqq{xw_(Z!+{|u*Iz{Xji!m-(P-%pOa!C3l@|9mC3re7x zJaA~}7a&bvBiLY(I<@-Rt=oO$+Jx3lo4A%ANK=wO zGx;n>d9EB~uTHdYu<2Aymn^U(Yv34fj>^YwknGv#3rQEyP9ik+wKAW9@6mcji9h=G zOq=>ZAV(yroEzKvog2DD+c)JXpKdO7OT`a+e;#m49kI#lPGG zS;Onj1~zSL=w(LDJJ%bvZMNrjXA{k)f5!%bb7lB*)l!A6ULU@iK#h=q*yk_JM`6u% zj^u_gb#I;x0(?6l!{5($UZ_k-(zZ{Qc2EDT*N^`VODWRT8ezz>ZD%FOov9EVW@iXW;f*Yp$gJN(~|4JWTN5<8x~~ftp32H9;Ke@28_*kRmJT0 z|I`JTSz+hT6>e$DU8yh~TnIh^r7@YWpLI4l3k)T;o8F!D@>l^J(ymxFAklY%i`iRX zm~EI|h;v(U2RgX@!wK7XEpE$(2J0q4WaGpwtl7j)SH)SfKYytp65Z9QFCY(uzRHos za(++0ekb-}#djG>=GK}|{Ii%Zg4J5UG$@}ZLww?D_(cHnB)6!YJ8(eSJ=H&-XI*Rz zwnSDo_&&dquUm4@{a>z&qdBM~uAO!RNo$sUe-W|I(FUNC*Cpzl!CqEMl3Puh&*yoR zhZmHG?Em3RUtaIOQq&)M&ebLT)cMX|j}zXwv(;|K$IHDNh#W93D&SfS zI^9MdLFf47J;-pvwlG%)PDeocTRmyI)f#T4!Bc!yXjJ($`(HbRAPR%p^8v=`R+h0G z4S#lys|F4s@Q{b(Zy;MnWjh4&yY&Z4j>>=bo ze?^ZbXt*DiuV=g17h4}|39wlB6P{hW!89TMZeRB4HRWzUkc1a0i;5cogMlfybpZo> z4p|p2a!Sm3x^Wj)7z#&31nt5|CvS5{X?14ZNmgOyesjgybQUL6WayYq9FIO_pC#$P zOB_{-4eNnAE}^Pe1;;&a!m5dBKha7y9qTu#&)BLDzukYLyQe@CPl<;YPG?rXQ%J1# z72h{T12i&1uct8TV^GU@#l*VO<=ZX&*Rw==KDg~!njI* zT&s`2%Cmog(dy5;pu<4H3^jS84fBnEgi5qZ<;L!w*^OE&)$2W$Rk`l(281&o3FRIn zOSns2_NC8*u%w^XnAmf3t+&z0)_p}Lu*4HCa8Gn~^JAfFtLksQG!Q9a|M;C_JouLy zbx8YD%it!J!;76e5`za6>D3POnL6iu!v-O!;bEi~jOm_?I0~UMWe>~AXZ&Y85 z+RAjWV29bd#!J6q80e_7Wf70zRhr7 z_`4paj`wc1&l;n;;VQb7i4Hj>^SqI7lGzk|MqbzYq?iBHb0mWM2`7A?xnhInMY}RW z-=N8!Scnq%(iOcEiLb&#XKcLvc_En6Tq)Co)_TRNe-WcQ6OX<#)ZJf8KZpz{cHZ$D zT3zSq{I$LI|1dS}T-fMNi#`7C-6LS+4{53n*q1cPhrp8gKtxjfvXy^S+1Q%y?z@kt z3tNURe*e%K`qr%^;;)S0W~JWzefC8Y730*nZ+&%qirlihM&SA>Y^~`T;iyFPaub+c z$n!+@o5=Le{GIG|PrdS(@do}Us^jM6@f=nG92xAo5Z9iad;5W3F|VRCNM54Qzz>gb znw?rN)y1EW^**PLIFNiUjji`)mWW2KG5Oi(&^Dplov~G)hzQzVRpD(i+m3`e(p?z} zhS46r^ik?LJ<}@GV{F=kZTbu3w{wqiGPXoeo$5(qGHO0ysH# ziaF<2*gA=ZDxkxL!#6U=mSQSZB>EF9A6twl-jW;hQX5u4vO<|G;z-Ngw`U0`^mG9-D*HmfKj(TvaxY0On){Q%)O$xHUZJB zkiO3QBae-F`ALFQm%+MB12|<*Cy~W|R zIl2ij!(xATTeNs%TeavtRuW&|Vw}&l00yF*WnTJt9Tln^MXtLIIR^3S%$>?@e%4$h z3dexh#e{^6#K{*~DlxYTqG^(s0{WEt%li3_rtzbRX3nsbY>VkwJA~wXhj`XZg@fzXKAT-D-i82++iq92?7Ih$75MjwJ6M0W1zG)=L)sB0SHSp-0Dvr z{(?NRCxNJG@B42VndP9*xkN%H*V9H>*Wu8(uO z^LIZw!@#j-ll0-rYrPvY{)E$lDN}@JIAe8QJ&0}XXR;7|32Sni-#55(Tma7lm8$JBaN>CBX`@0E{HKl)n_pogvGGz833@q?{tXGt%gIlyP^>SDC=AY(>EyaE%9{qlnD3AcX6n}ZVmq=kw{)8#iASaBW+=Bc#X zJ1u$jXLrz!Y-4>0dS6^Ltln)LlQlacC9nby2StrXTs zEI(2;k87g;{r$-4l7EUwn}tkjd`j^sN8JT^U^Z9GZFclT=QtRE^0kZC)3cpNvgY4S zWqeh7R}*-5OIiAxTB|MY{b|P-kOGGizffjy*uBNoUUarhqZz^Bw9cjhYyK#;p(yoB zxf375nFcG?i1oWOU_R3xEYyK`R~thSHIUXuKvBsx^$=;Up&AU+Rb>sBHdMVM#V|^?d^h?P;S-z ze!o#13{4+@^Z95-&+5eC961D81Clw{SrbYv=XNzwbzmfjBn z8+xP^yh59lGNTR0X$RR^ks~SWX+gRQ0>uiEN;3-{4J?(pEsROLFZ%S;Ydj$y>tBwc zAPd~(%Ed%zSA`G5gHbpf*|q!IB$XTdd-wYo?v@4Tf3G=I(ThR#f>pJTdH7zgK`JdWh#g=SVdt2toD$HJho26Fe$#cxkKQ5uO*=;QEmR+JXO!`e;e(t z;gFu{QQrmLyr44nw+5#fHNG#P@S=YQPVo?8vI;8izL$#@*w4o(Wvsca)qQc3r;TT5 zc2srZSw)+wv+t9o?%sa2^)|p5B$Fini)k7b7#5zQ|DwBzt5hS;wA;&$MQ5cc6- z3^ur1=j9&$)O%bnK*jyoXd+60yQ=m`9-5-2avvVMQH%Kq42upfur0owZ2-EUvK_|5 zvvnN=%-|ollNP8w42oMFk19k{GGIimzcd4h%QBkkDYV6(Z4IvA(g`ohP5twZ^Kgyl z2TgyJ{$ex=k-cJ2#dS}ak{ho%%4q|3VT9f6_dB3ntyd9q4H$)|p6+h?la*R2pRFY_ z%>M@eE0@~%9u_JYl1leX0^$Nm430rgZmMb8$MB=>w}VAwjj91<_HM~AF5&C16;a(@*m*=7px?B)N}N|Pu207 z-JfjxH$bw|)-|CG_(C4wYi&gl-XbKTt=b1}VFjSU@2%?BS{mcPR&`GQ{7W+ zi&b7uF5)k?jBjHIp0S|2-O466dmdEUc{g$W;k%xHa-T;U5nhgnt)1VZ)YFxLTr3C+k-jydPK5*yQK1)jkmahK z#I+XrIA|jux|ejUF@F+o>1vMF@x){_#`Ep9wX91M<;Q*WCJPXz=qQHnbnYy0qvh^* zL>qa*46@ZF=Q0F0qdPS~a6gbXR!ZW&C|VW6*WCOk`dR69NtudLdvtn%cYB|0F}@q( zKYd8svQlbOtq*Lw#eDRz`Vs+PBj9q5);Yjl4{HuB0;-sBFLt9rKRVKBF%6VJu%+wW zt3-`|S}$h`ABkf%)r}inQU}3CsBr#rxStI&jrjkYV4`?xWI<6@2kD^QPD*`DgPz3L zC+xR5Rwbx{dEM0|)P!Qs&}{*%BVhBZ0Vct3Gr*=h=?jTj>T-8D4D5GY5xO`nka-xi zwJFB#*S}1DQ(axcMjs(c?;m^_$&93$a)h!zR+UtEy{oIr*;)n6mGusPovQOE>{0y} z_Ndq95L-9&=EYR*OKqlc2&_T( zll^x43;DWTsdI9X3tNj*PHJ_rtn|N$9u}1eqn&ean1W*6-qpMX#+Y~j+{siB)`k2U}my%8Y%|#zINb8kPGANtxj&PVtpR#d8WLdUz zeRtxB$kvuH50HNhnzf6I>$(T%*E`O-LLC=*4vxH8yi`d{m1L#mfqDsxQDL)aYE{Bg z6CyD3(Lw&c2vmYpaa;r_{eR_xJQ@9eaX}V3JlYT=H^I_6s>&X%m&mzCpG0hB4-cg^ ze*M703WXa?*IYiYho(N_Uu64_T&h28r{A}+r%W^ zk_vOpRz8l%xWmkBSbG43pwgyF4dFniWLm6M%Ef%uN4Hg~Xo_|p#38JZ6(RG>=pW!4 z)M8hcQ@U&${XOtRT)t-61it@6*Fe{!+rJP8I}@uUW)vSs!P=lLy`I zY|4qjlO$_w!Rg19=WO;wLrrL${w-H+hj=8CM?pc{4G$j~EAD^RH0|FBIN;N@Lnc7z zqE~M7j=ge0NG!eew3+IZ=?qt|>P$v0Iqh#)b!V>{?MHJAsD4cBgzbUl>(N2eWJr>j zx+$K5$ip2Z$pyo5DJ8~ba79i=^~zWp5QYmM)SY@%8`tRF7$2e>FqxQT(ZJbKqLk*)&Jwt>n^-;5EHz1A!)hAEee-fzXk?bbE5) z_EU3?uV^63GSu6Ywq)Z?7HW4C7iP{cM|HQFxY+k6K#IunWoycUQ=0P)i@LC-QwZt# z<5$?Xmq~)4JAPWG2SUe#Aa;e;T|3(dXY; zs?;d{#A-ZPC}tLtK0Q4a1k`y zt;*tWO?*6HZURtwb*V{4u~N{)ZjZv$^{`I(BBVkqcnuKmh*z(M{xBh&-mDkNkTO|X zmV9`bCOTfnLU;-EDs}be)G6fi8*`b~qziRetnzyk9HTu+^4cE-AXZD{Y$M6enRP{X z_XL%{KXCGo(|En0l?cLYH*QRkrpafpyA&fgAhnmorn}RcS-_of^6}X#n{z~yMTLFA zn$)ZdT}rn@I)L&r)o3urCq70Nsg|a2M%fNJwm>8i!o!Vt8Y7N=l|2@y?OOLX;H;#b ztE~5aijMc4D16d_PTGMvdc?tTpgRnKG@2zJg}$qIonK$&p9u76IxIIGX);zKkBmo~ z+cF>#Ui+0M3O4xd2vb9!&{-cFL?I9q0aX)qI#m;mw({adJNTnN9X;<$)J>MU%=-*L z4hVaGg~7iEY@Yc!fUydRm96u}Il}uCz$jHCnW`4v_F9;#|H(1mzki0h#XGLThMMI? z5>#3uSgLM^rX+!=9;VN?qtmrD*IQ-yEiENP0G7PO4b`Ulhjh3n1`WVCi3gy)z}?!2 zZYN$mL?jPDwxD|3#i2%zxYoPyBJqh}??GqIW^bR{=5k)`oB7~w{}@uF16x)~ok5+$ zc;(`-3Th*h`QW`d**5~*GndPr0JKY6VCFH2O>jW2>o zSX$*>hcC0So;lDZ?F7z^ugHnuz}*PR*4JZLAEl|`_)cP` zGcyslKZT;We@p0cI36BdhQ;7M_m4Q#6t7Awtmuq8s2ei09r5M0xDB&jA^($yl(ls= zKHlEYk+2+}%J?lgW-ljNS{~>nY5of|u=lmPv}k&Z8SMvb1pSVSLo%&>C@;{l-A)*i zI@rx7dz~&z^6H}UlZS&li~#ZU*F*+OaY0k4fEB`V_*94!3SoLn)0^tb8TFrU#6?Dp zZ^Qo+gC}9A7$1la$?<-!93(Crb_qbZuo+lmgrWeg$CA)kjxKHlpJzZd_zD}arfh8= zpRXiPn}HqAQc@%kgu2uuiivt1zvCNxis25XfERVSge!T>!og({lNm zQt!Bh{HdXZxpsuYT7&%t0#F@i|@vJ{idqm z4OyzW-q!fSU}jFA6|6WxJ=SX>2=s(|GV`PQ?11E$6$~7CKLs3Ydh~|7$v}I6}l90KZ`#q!A(8c?JjVsaYICwGkY{hhW1MBtV6?VLy z%Ja``!u?-=i32$^psK8pCcNH#sh$VVv3Er|eHRgc* zG$0&fJ0H+^Q+L`pyzFTQk7erZWne>&YU0!cQeOOp$N^6{O{ky6V&Yw9R_ha!HRQ;X z#NrScEbz6<-aV+uTyTPZ3ge+Uh6j4ew4-dl-5TYj+qyqYQw}IJ%o~PTy2dRKs~#LL zJ=@}ZKg7hCT(FCIU!t!rf2_5i2ZMPskNwa%xad~KHWo)*a3OF?o_BPVX*0GfJd(0| z{`9eQ#{FK>9E?Jzs7qa6;h1{d4d)j5uJqgZ0Nm0z9xkWb=q28UtaCC|uUT&WO&KX) ze`-tFH|U4H^-74YxMm*GX}M#o$$7H@wVAp$%Bybg-_7TUMUl|s#+@8tDrAr0*nVs4iqJI8xR-}wT$rKykPHjh(qTllBNjeEF_|LgX|8b6hsuz z*Rw8Fs|9&D2NgUQ!hA|%o*|i#%@?1Hnl1;~&`>db|KN_F(&+2?`LxDmS>3q|YT@?C zLqaz#YvfrRRNoeDtD3V%7o6Lo+{@n?UnSg3#<2d z_SJQKn@(XD=n(atDQqr?Ug(+!n@Uu^U6+Ss4^~0~KiErMy-QPJg4@{RhOW6qwQB(rP}ZKw2vqFK0)qLuUk5(Z5>omWUGNV2Y^CiI8m#ZhGuaAwj8R!s()jd?Jh#gjtIwflLybIs z$At79a*P8_4leH-IwrN&tB1fJ4Q4>7JsZb9WWTQ z&#_x4Gaa^iub01~fn{op2k~C#pm&U}hhQdNJ|jOqk)RI2o*Y{|gvOUM!M;MZ9={FB z9`PzDA2feRRo&i4*$_94(G9Zvj;@SI*Yk)zN6@<8U&tliY{5eyX79_~&&xm*K?u*o zd8crE-}oUpKsyIF<(@0qQ0c1$FN<{V9$a_|y4f#;X?qnsR&T}UbOcWsF=E1@>+TQa zFbBvA4!hF5UrhyeIDBbqDP0P>jNjF^4#*|p)p+buz0Mr@K86qxfBskl&X{`~Y+MK6 zg9pqwk}E-D(;aVQ!%k??Xnhm6n1vMKQbe_XwWP0_Cg0gD3D2Kzv2(8Q3eGzTsVd8R zNo>G*2!bz6t$SWmULIRJce?epm!JIfjw-r2ILw+XFKu}tjibV(Km`_n2i|35Kd1Pr zY7d03O5d6xh?d#Se#awq9EqvWvIlYv%j>_ar=31{w$J-bhg_P~{G7cq{VbNRNDcn) zx7h_M5JwwlvgRaBSL&y-^k7M=UGs*dn#2=vo z@IkmzP7xsg`S|Y$OJ)3Uo-(P7YyaQmf4$)AWnEc*V*`)@0AL}A3kfJODEyby|9p9k zP>I_AUfZG{E>rvOGp|2`qR zx8p8}XH!{czq;$-eWc)dTIKym@dM2G+6WU1i#<{ zw!Wl%Go*7JfWnZ+eIJ$#@oB_viEZ`1G4jsmK}(g*f9}=g2aoGbosJ#P_(^YV2IqQT|(knCYD72$uU> zVGwOxE!NmjW@(+++QToUtHJ+E29+jlcwo1d9Fvm0&XT8G#d^PxDQ;pZ2MF0brv5BR zOl8_53umev{rs`8b?X5@#;SP!!26YeY8j_zP9|&3rBkL@pYc3fy1Nuc#p)AG*zk(r zWk0y1VG%GwpIYseQe2m(_g)uxB@LV>RBNwFvN=-u) zr7QhyJrahmD*J8=`MSjhrf0{sR>tEsppV05p2tI+ zjf~#W!%qv$$*{&ptTpf<-fVt{{GfHE!K*`I{8KOVE{W>Ygd)iTV`7FXV%(|BLU02SvZYpV- zb|F{XOQolS{R9XfiqL@dQ5g9W{KI^_-*g%$6fF2@kK|b|LBZ;*T8J~^?B_x|Xo>zD zn_Vcx(fb4%Q3ti!*y*2a6GEH$APN@8nVVdlL!LhYvaE{(Ua37RR=Za$$GGrF?VFcM zL6=63fjK#!;4Nyet(%=)elRm;aOKk*z4OoWwA=XsXV_uo`cG?e=p53nKWt zsP`A$fummJ0R(d-4lcX^Lx13UpBB}xJS&3Go9VkuJeb{73<@Uneg;_B`w(r2NAJc8uw4kGY>x8QC+ur zB8An#!m{46BS}NDe5;kSro61-ns96xO^<*k+;`{>n3Zm((Qx&qD%7bpTGP9|?bCOe zOzE|LrMH_f#aUN;DL93Bf@Fn2j4O&QbNu8Z5YNUTE={oA?0Ny=(cUKKJrV+#f`mUnGVHzjL6p}|epU^$KNX`Am@K_paGn8hhakiScr+-`GB?oYH=PBRj zos6%>wq`>$reBK{iN?DJz=g$e^yf@xvn=MdI z{kAqXg-L~5t}AB@f*>-+2SF;a$uAu7McK{gQh|-|_jW&bm6uuqjvl_|EdQxUMA4f>!TJi@`6)Ch?lLHrRtfjPv!?MxA>a`|-?TM3No#(*Ev_PnGhZN@5 z_?6NIa9Q;fb$P;}GYLfqdR9OL5EqAeot*svmrC_Z;^v-IUQ9y7=J~1@dDQOTep*Zj z-fsr1CQPX0bk0nh+}@BugZ?Feq6}W+P{P18r1>-so;V^bR)@mo=(=q)YUfO?1lgx{ z(lSoYSi-;P>_G8A*b#@jg;BxzwwCrl4CdbU#~2i>{_TBI zK3zgy>5#FrbUc8ey<+Ap?64Rd?zB<<=Do`%pX~wNTDmekWkli_r#l01FxI+w*n$yD z0R-zI{V>rH_k242EDmRqR%+UQqam}{QIz@n`c$HpVLX^rV0HM3k?@deY_gZ?zD}}^_OYLwD ziR$#!d?U%e8tYGvRpp%Uv`#436v?x65`9({0}#Xm66{h{$>Sc=>6r4Oqn!m^q+DFG zEZSN^(m?Gplxd%Gz!>7*seIxxSFBVdKFKG(7y?mZ3UW4zHxK0=O(v(K9^{F@d{|k8 zr0CXJkq+C*=ggc8mdFF60L_t|VA@U}&rb9ZZTJ&Oll^0VGFbvu(4cL|xO|-$JUoyc zMaa{*wf{KCvT&UXU=SP^XCM#!1svXY%{oMc@F0Om$Cm>|Dshq5IenMwOt|ylfM7ry zT4Oc+B7Ym5UBjZNCeT~Wir|v-cD7K@qN{nJ-l7 zVqpDcuXWv{Q9{i4BmsCUmt@~Cw$OOK|EDtCUcZ1&mSQ{=Ge@1gW3hP3zqn@m~) zbSj!?%Qab>g*frX5!WC&N^eWFAnjej_n|A=cCgC=J*Q_S>Zed_jA8D$*jL^YU@ZE> zjo48o=H!Oz!-;o+6hf^8<}`;{7tpwcL+%2FytD9+_wiO!P%)A@n6F$^$nyZM2$-x- zOjZK#t-*;2U=Hw?P1IpPFV~b0`UvrosgTZ4SJH5+OnySE^wC)Y@Svn|1%BZX*5Y#O zyNwEa!7@o`4A53}3$D3-@@e5|72#H*@6x4W5v{u@;!?1t)!(BV=0oF5uj-fYWe1CK z9jdn&%OFVCN4iy_%g){NRVC2wZ`Df03S89DsEiA%kKT786#}@vQ_k(%#@2Lv;*smp z>XgV%&ojFxRfhLCwIeevY~J(DQjzWLoJw_|PTy)_#@~<)&=?j;Q9%T~2UVPtozrRT zEX3(0wkdfnBoWgY>9A3 z((D@ox5Y!9R)}^J%eWUgpOcM{>=5JDaFe%A&q5Q=m5)1?_r0qUu`x0DZQg z_1YHSDl>KSS^U*EG-)`v&1W*G=$fzE@b=XgGdi`!@A3q?)XA8(WoLCkPXYaD-FehkqA*JaZ8~U9z31mBXottyzkH2jIL`F0{;b1th5;mw z0}upEBreU|baBSb>=6)K<+0wacEEFcGL11x2e1K?Nn=6i(gB*J72@H=J?e4ednGC} zH(*!xndJCCRu#IbYtM)HLeA! zLhTZ5IQILNp^1iXB7GRnuttPIzv}tD*CCCKY!c7e!;9l20K1ju;IrF0)5=bv%@B(N zCcIF`V6Rf4|Ca<YZABL)h2>uuTRz+(w8- z95Q1-R`xxarIyV`JTwJy&wn(h^<{l<=7G69^A&@FhyJ^~C_Sa1!0b|4a)PLKSzs&d z!c^yBP<)pc^L>hl{QIH0#QN#S`{JfEzShAQ>6*oo>fk(Fu)*%;dEqUB6TIP>%BVe$C7IHc;G4w+q5H8HdyzWSIf6U0rCxLc3P_eoL!r% zAdp|ue$@#_4?EDO{dFX}soyRkrf_U|IGCfFvV%8fgBV+MHp(IMzT7xvs_j^00_2)9 zZXkJy>2^&zIW7(^wfG`Zkp%U&G}T?U&n_~6Ni^3&8~$hIOygzOM*nem`Eqi|q0CH= z6tP5`d`99b@eon)mL3endp=lz(aGMO+2qisvknKIJEJ=MJLG=^xk&?cM{S#+ZnevA;Zs8l{Q zH0}m4!p7WBp;BtgKJUeKA5Ddb>~L52m2Z#MYQ^)shx&v}Hv@R4@BCqp8cfT|NR7xG zgy3JZ#OIbAFITU-w8L;D7ns~Z5Vp|)j8MkKB4^UDc7gp6K_dWg_<{=j1?3PIoAqDI zGGONn@}hN3>E0nCvF_&u!Rvus-PnP>!C2&Ls{Jo%`a%+{glMq(JK+UJ)wTfEz|EcX zso{%Yt9M1^($Gs@8P_Z4xn{CI<;UTO6v~Qc4+S7O_>S-?jPz^=E}xvNqc>2gSwU*` z_2JDnn%&^slSd1SDOM`Qgmo?Sgl)UBh7a@aV(C(zEFfW9)3^)atXyBFWvOgRLPdfv zKJ>L|30ir!v|cx>%06xDJFC0_N5ayxg**m0nmR2lJsU#{iQV-98D51yn)7Ns`=Az3 z*Kf9`s5brDVf*K_px3}{JoV8NF2Giw1i_Y0JxYOg2~~L&Dj@Z5=j8`38Sc)WkJ;Yi zA=xDUbQs51__XO^Csjq7irWZtF$ejOanlWswLc0$Tq`xRa6oSQZQa3t_Ev z{~DtAX5MRMC4{gXN??H&8tsmi^_u#plN3Y{v{70x*Ns!DI$C6`{BVF}o2py^zQjR( zj(a*bCsUhzH`+|6tA9{eRc*w2ivx_j-O>KNx_XMH-0{$vY(0+Vf&;V`$Uw76wWKm4 z0LCA@XI@GI z!KgP=$Qo9S3Y8q&c0q|kKCH8xvi)T;Ey)1AyFR?sOG6%g3B3uYj@6S9Y}L-q|hz=IEWLa@hgn$TBDlpHN|OJPD;u_oMqx z#yAHFBp7|MCd2xV-E0yHCe4aCs-q2o7AB-1f9J_F5J`(%bz=c;wOjBW4y@57nu{~W z2B6!Ek_%S2M89(wVwhpH@-5|ID${LynPVEXu-Ldc&6thiUM|rCnEiep`bIoHP*u+nOaC>Y0oZ5 z9EMe}|ESw@)+}XZ?#*SA`_F3oy`62;ajNU6o@Go0EN2@|Sp&@k1?S{&BNwGTAHM@&OhDLfedp7Is{iJWcsgX#ChrE^4Lc=!8dkg?wc|^c@ z%*f8=$B&1lV@pe=1M z%|0O^4oIwJjBr(H_La33LNCb17WxQh!sh<9vs;meYTO3v4NPtuO+c|GVy|PkTx3=7k(BW(!>$5?64kyZqUFe7aGUOk+~MAtkl*UXPIZ<7oFJ4IAbA(LGzRPmP|Vu zhb%I;a(mL>C)Q?4X^1S!aNr(8&6<%w{|6KV@GcL6vAemw8#_2j-gkREH``whP%>1QV|^x+&~pzo%Ae1F}-B#Jm;$ z*{qg1Wwn7Xugvt+bPv1{Wy18g_aP1$OC!s+8Kq}S_n$ZujoU7?L?-Fk@~7T%V*;4D zB*t#=Lr5uY@NXVv|9nfQ*Z;LGNhvI!+fN4abf>>Ix!z4JZ4>6F=773q7MQoY$e z^)8y2d|$fK^t!dvDv4!JH>WGVP-j-D_`5!9jiuGk&8o2d z`FWLXA6=Pr4$sPdHg`#c*x%<0({{!_sY^}y`LImwJ5zymanQ!kJ*{AI~)3 z|DWS-mwGYywPvn*dDoVkXJq0|JbUJzD4L&Gd@e-n>`8^+OLIFkw^vzIvIuW(GqPZL zZ}*emUh!(kxo7EKE47Ly7+JSgcB@F8zdC7ts7s^d0q2{)CO^^lOuBZwdBLHk#HAb0 z@?SkI?(?a8yFucPGt$S;F8*;=N4k3Yv*bBK=MO}v+8B3<++V)hOg`;!dZ~cmxfShS zm+<5*`to^k&F{7Oa~$;4iySm2U8|nmX=2e-k*yjp9jyma`%^BeZOq+mg~ijE>FH*@OQUELyYv*f3FR*0$5J5a5m2u7GemQee-YUEYJSs zpFA>zf$ga`C%)NbsoJlW_}avhR;#0a4TiHf%K6)Z`M0M1*r^E_$wP3_86Ufun7+P&r<`SaQRZx{G@B|Ixp zJy^;+CC~QUKJTaMi$Z^wm~XIu%`;g}{#^6s1$O^+?$^DO?&aSQ`!n~q?bh0D?m?4m zV%<}0d}_?QIvI9oMC_X%+dA=%kt)wtkz;F2Iq#j{t@9?Lph@^{!ODvEBH0CV!^L-c z%(U*Q^j2Asy`bc`VcFX+Z;OMzoQaiczjgim%wL^+$M+@IeCqtOYZddtwF_?CxS`fC z`L=)&ofzZb}B2kuOs{RT?znt0aZ@=>hR6bVwsEU36*BJtSDJLzzb@CM+f7xc3`fL5n z$t4Y;+OF+CX6>A_O`pSQy71g2@YGXPyYSK!{rB$_s>F^SD7j?n9{KfBRay6EUC@*k zY}V-^+tV{Yr(7@EWz7YgzIs>sv_C}%K6BL~=Y=u3_4VuYs%_K2b5x+9Q23&kv;^A( z7D%$-un^QOE%W?#bym;&&!4tjYnQciN)@oFSS1J!~CCe;c6OP%!k=vc_gq9kRd zIJ#}Hihxg_mA>EzjE(_Q&uSQ35ZoeYU>7e0D(ZJ}u>E&0E-G%v14o{mN%kB^p3AQc z<9Id(`^!%OD1xBx0%0WiX+@z$V8H)=G7-4IWdZ*!fFkHWC+7G2n+f_Z9r@oC=#jww zX$UplzjS(EfyIH~%2fBv6``^^wft}8-x3z$BhF)c;{V6SV&8xK!$k<0@c+!^e^xZy zoWlH&HX)&yIo_=4-fNyw?!olxlcRrEjzFAl6> zUXy+!a3+X$=5WBXBFbcYTmXRqlKw_hfz*F`!nh&5ShGWbv^p#x!*9Cb?T2&zXS5iXv z7O)^xoM`l?eXy|Gj!$=E_f#18e(;Q#m}u?qUe~8PQS5|quyw#)(LPTNtomG;zTN^V zFweoc^T#J;IR6=vMr#kHz^(XZbL#PAw9(zB0$pT=n42i-u0A1$t?wHr-@-OkEdy%1 zr%PXvI~wLtshCLqkaUs3NZp*|zvBq{-k@suJ@=F|;L5-AD3P+yO=7g$VJU2cH1)eI zGUkvHgAe^KV>Ryv2_a^R$%lp0(*s=plvWR?6We=wQ9?4wY(Vfo0yZ;ah5)9Ku>p(B z89K1teRc}rRi{j@A%~&E9GQFCQH>W4`IZbz`1JhS1cP4prB+$knm2Pmcd+ioo!eY8 z8PT_LV~p@0^$KeCH(76cXm%S@R0c`Cxm=tYh}4&vS@(Y2wBm{RJKmfU`xO2MPmTh}DuWquv zI)jq89UUEIbG|`=d?+&Hv9&omV}dfj{9O|JKoevp1vt1}q_&*egq~`exm}v-@wy&B zKilZYKx)aSxiHYENapc=p|e_|>s)zpPB_I7^F)^xSG2tp2pcRY{lT}peR18inuD70 ziT(t%N$fp@!29MmZ(&_*1!b?PR-q!3%_S}`kJ#aHPju_1B4~Qt82><%9$&bz5&S($ zQeJ-Bc?`?R!0v0TOC6rBf+qZ7t2U1p>-CnKm3ejctKwhWPr{C;v(jc3k#6CMF2Lk-6CwBS3Z!E|gZwKyGXo;1|C}k|aXXZ|6T89#kDwozOnAZRP;yCV^P_7LynPYZceo>JtCjQcE7yWNZh@>KXpg) zqN^aDygJKqf-*A9zC6Cs$xU5s0&hI6dWF<)F#N8|J#EuU-kR(5;|O=Mx6^S6DJfY1 zDbq<+{ObcVUMuR2xUI+8vbT>xGFm*H>Y^9Np1A!W3+(2I8>(ry7Xu~vm;*rc1FDMJh31^i^Bt)uBXu$G>0&F`%!6tqvFA$jd)XHYPq^GTuBy7G9F-teLebS)DFQ%dMQ|E(@oJ^H7hE<>#Kn}x}v;WW#&UYowQpf9nVeu;o?Vjx#OQ5FX_tM zA;L%&T}hZ#XtxJDV%Zn9(T@n|2{n`(E^$MkRb<`mITgD7y10B$_8Ez2XNLQyWlKdm zI(*q+KtO+NqMF_Z)W^gqW8=i$(3e$J%&cEGgCm8Ix*8g`o@iaTB#-x%vnm-KNv*?( z$HV^m3xES2L%7(K1zShkLm9}9n^q*+Ck#fjcj-l#o?B;SaG2g(or6=EYFbAi2dy4O)+2$sn&E2q!YtCE;w-?PfcJ`!}W1{Ny|2CiIU&idK+3pX#Z(T zr5Rb!%*){)j=(6UCJa@{pJAx=*=Wrz2v%EaiGMA9ejWQ)t18Ja-eOim|Ydhv(z% zdqMMUXs9>)tu)mtd?vx67204zFe*7}Y=V18W+v4~LURU}tgaUhki-aQns9VMY$m8U zQI6B#df)NQgCy-uDGtBdhb|#9* zYD84ukM_iOhCNXz0wH8m1UWq^qwzN(9-G-vdEW@5l|2O$z;lG)$SYaaTBy#1y4%Jg z(k^Rb^ssUSj2xPNcemEiKaZB`kl<`~bcNDvAD|q%rW@^=st2slq zA|i+SSF%B{GectyJa;s3TUXQE5WZZ63@2QS9z`Azv@V8FZ*(opn-wmPg;abk$^<`yM1^DOHy zy6LTr!zl16X1oi|evN%h&qmT2B@osPWH?R#?W6lOSG^t&cGp=?t85qPE(n{)L#}P8 zm5Q`(=wr2>Mj@^7dQ*uiBs3`x>3uLOH15H`$v!DoIh26bI3{TaWo60+e2_#>us~w= zcH~KQ3^StvJ2F#3Q#RIsFMNM|diuz2j0gjfCHE)0c7!Din|0-Y2?`{R#dFz@f=~ta zKSFdCb2iD|3Bi`CwwV+*w<&ll<2<2aBHZp_OF{X2<{CRTDS_8g+i(ijd=ol%-b{(3 zj7br7k9C%h(C+eIHcS}F*oOL{%pyUbTX_`a1WIf|OH2&!)7#C`XZvNs66+{-yo=&g zwLAD$|4KOQ$oSSgbbgrEuDJ$>;B^Zu{Fz4RE_Y8PtVOuJ@!P#D^aN3S^P{wmyBCTN zbhlBSfWZ&`zE$^pVsN zTlzsnhZzHRQ{(&NLt<+^$ww%X3Ek*AZF2Br9G6Wqu1w;zB?Rx(r#Y~LPzn^I!)-a6 zdT*8LjHTcUq3BO^`R^@xx^_4d|TJF7bc?$A6~9B^p6-fk+SmBKi?Juf?kx>PF6kF1pX zfFB<&5)by}OYIA1^O4;)Tv;6tdl$XEhC# zKqz0%BkaD8q^>jX_AhP>^H3Zs3HUGc9sK`_zNG>ofQ^lf%^Frh0AG^GQYkAaFF$_Q z$f|dpMq!@+i?83Xn4tb*Z||2o^I<9|`_=p7*-%ANS!O2|8_utJkz17ho!65&*BbZ7 zf*f{}+70yku3SV!1e@yxj!N0v&$MPw^9BtNP*6-3D-7PV7X;y8VYsYNCb|NjP~Z4`X?eFRPOHrB?C%Vb?0JJ!F_s6w5O)nl8=)3z3? zCIQ8goIw?t|2rc8ht>ZMy5~mUy@w#9;)U_gPO&2jtc{~wegwtf%lLKXIXbkpY<)hd z{e(tH~#GbfKst8DDB^Y(YolhS1lnxpnCyYi$Wj z2q|%~$CHuwm&g{?6-62Vqe5%L{di@fMW>rH45_=>_w6C$elKefVn6cJO;UiIdDibN z0CbkL0OC;~2?M7G)JH`_DuS)?!0In?Ht;Qh?k9CA_n$zr6~TZ%4S<}cw8&L0e~S~7 z1*?(Ztj_@lMqR5vuiPh-lb@BBRZn*N(iOD)eAZ^|&|X}rKCd(CP<|2%3&wy=jZJKo zsmC)}v#{PlH*lKDrx1&w_|CN8W4Nqet5W&7W>Q4d zx_kWt)P^V@D)?*qo%Ammf@6hKhX+eMpXDZ0$r)im+ z_W(?KH!4SM;l1}8gTsloxC!UZ$o`_5`ImPxI4BzKPl>y}a6S6HGtL37s ztKpv=L{QC$#HlSAMYFP?VD0?}m!Y*gX=Z@wYrt8G4B)DyACsikWjUdklSTi6A#tOE z+Q{lT(dhkqFFr#q-bWDotZJMI@PI9pVxcg@u&ikKvRLm8IF;0}z%fH++Uy|GUJ;}u znrElZz`;%p0HKMy6IQc5D>i5uRu@FxRs?CslJ64ipf9}K%@bI&uKUUfHbrI3JydUG^HBqbjY8k1H&|?6#hc%e$7w(yblh5 zdCvEg3(2Qqpu1=DayLU3`(wDK$5O6J*W6YpLw1vNGkmgAVAY6~yy_)VYWW6m`U zj(y@m@MnYSrr1tz)LR1w>u~dS=(LUia0K_h8fidIXQa_D|5)?7FppvM4$8z#Nz>E# zrf_ivUFS9I0FY}(hJ<=AmO38B081c5MjfK^999qT>eOKXN7x85iuAm7O^?z<*}T+X zOh&l7D|KNHy%*NGZPHlxnZ_8i()BxKJ{HNe|Gc`9}# z)1o3sT8%zl;KVu6$cbcb4j!{1CCsLpRJ^$UQGlC?%i2f;7;A6#R05qfCXM3(VtP~Z zu&HWX-jj|mfNCvdq$uuuXp{f1^r}RV_DbU2+0ecB_3c}2f~3=g++t}VsEmkwB>-(X zvB|E1OrV1dt~YjX-gigkCJgb544>!YMrzitghy8zJ5VNCDS-fY8|)3mDqe_Lta*Q> zKhJ?c$bt&bGF+R9P#6E zR<;W*;q-n#Yy^9vYZF=o@@TMX>orzd%Im^YlLL)#MAw!OCikb`6z^QlMkU2DKDEh! zDRJiY`6K}H1$oW`xiB_#S~IGDkcyCn@w;G`dk_ysF)T`^H3v>&@QUzVOmRz7JRj@F79!yQwMYBVD{0{z$wDHNLVf zEu;uhi2&$k#Cy`6jddf=;uveg4eVbOc){9}wB39f0EPJ5yC>dj*!PJF<84)vJMJ8! z_AVH*^)L@_j=T`6osXI@X%gCA6B*LARX(*lA_0zrFXcd_?4P12=Cl=ymY}`c$Q6r;G~alRzlyRM&hb)88*zy<97P7&D7DPhN2Am$4OKYUlAO zA*jBsHoIy=>}(Ugdfh5lcaErcMOm4`e(d-Knb{cZlZ5uE|I$|CXhtR>ohTyiL?fENT*@=kyk7#rD8P(2sA$0lwAU88E2(t5#p=- z&w~SCSU4CHvoP9|?eX%r6#>3G9Fve2h4|L+C2GhTHRT)H0XiOkFbf5-B}0)*-Y;*e zM|JwhBy)}FsfJ2_q22=IcRcQNN<{})Fem!D>vd(K6bvX211R7KfvLU4ux}0ohWA>+HLY?vz}|Xwi71BQ6yF%oDrJZy!S74UA|*_EDGUsf5pSnu7?gj| z{sK7C+`W!b{SMR;)8$S{#eKeuc8ekp#6F}FE68W{>PUUIoRNPMr8D;0N-}J6_8o+q z|8nWX)$3NisLT(+M%nT%qz$InS9J=By?Q-Ztx0L*NfyvgGxs4@gV!n-3a+b;G){ z0n49Cqce1;2)d9_$UAD z@!|^H`My^1A8U0<1qC`mQ}~|4D;5=-<#64m@E})v{-Uyaoi`1nc;#A;Xkw<`6u)eV z0ha;myrXHy(;sh{VqK@EaCAzlgSV3iBLl!&4g2>|N5Css{M1 zL2O=K?$o9la+)|JRqi}lDIzmHAo}1()ttlfkk<1O5DhIYR4V8k2HPx5)M75B#l+UA zW+iU^y3pPHRPhLPsQ_ZXWdzKvB@KgJq>-tX?G>^Oa;&tAIy3jxN2tZR=5N|IiX2ke6IYX);1EJ;M7cwtu#sN8ouVoIS8M%IXcNLVp z(hNwP&J^}V-L}1Ir5q5KIIK2;%=3;>hqWPW*2blz z;6bT8U*3-1ZFh5DTz~_l5H`9Ao}|3g!D(c_D%4t5i@In=Ol%w^N)=!wK#GXPhBOT{u!d{f zx-Dd`&|BFZeq97mm`C+1j7TFGFsXv58-u)HB-6c~+bXK>!A;{wbLZU&*HODP&=46V znY_boNEP_AaF*8KXWI3zG#=l>d-J1K#D^3yk-G=%eZlzi*%Z(nSZ?#Wi|+(giTxtftT7E!yZY z$G_#r75mwcB~#5X-tZrW=s+5!vMDNS)~GlaNy>IVg$o6*#Wd-JEWCEk|l7W@8t_8TC^W7Owvi0uyHN)FVp1lXW{yGB(nw%jPlqsR)5h zM+z|6UNo_*D3)EUDSxpkwqinMIiL)4)*@GvbFQ4f{lbin_i|c zL1nt6s3slCB>}X}Gu>Cv@du<{I$yGcs2oAC$~5T*$E`^4 zfVO=glI|qahkxP{=Y)q1wM|#$ zpy5aM7pCUcKms%4EH*!wYN@eGL>ucLV~9P?0uz-F4=99H+?M98KwBk|^CPF>qDH1y z`yKm^{obs{_-Ug?ZGx0sX%PD<)XTfX$EL^r1}(V@AK(h-ZbRm7-an2dnps9mkYGa3 zc_;oe#KuHs|Aih_e{@gpuFx8w(LB3AO~U;k zEk1wAOICi6T5`P9)>n)MgGPCjRq9siTJrW1abvkg*9?-Z1qfbTJFb-4m42%KYkUwr zM3oRVc*TQPf$O&IQ~FjMU`R!G2yV9T71(7ChE{iQ%d7P`}@YO#*<^EDc(C?@kDLZa~lWOdNe zuxufOxx}>`?vbl5nUKKdLYUF(z^`y6?qF?anks9#aofZ#ULJ{Zu=tli38BVj;=@@# zHb@K(OM=F;WMYYfi3pD}Ko`8I(C9L5{cY~xeZw(3Ty7J7!Q|%7z9P}p^L~u`FZevQ zIIQFLrIUjN$&!|KNa%$D-?+rj5pDJ@0%<@p?v4|f&3;I>4(PSPq}vWgN{EcgruN~P z9O+S~vczRBce_^vTg05Qt3UCgi;GzzV{c~vVy6fx9wLNZWe5x+V&u;gOnZhWO1pb9 zcVRHq_i0$2YF)ap&`ig^g1IA|!nR}Bnw8HhOz}B-yByjaky=R>VsLOASxV@|V=PWS zx$(-_w6aeN_VF;6oyFQ>PGF{vbH-M#&LN*ANIR4H(SG9Rd{_ zA>#+X;|_#AP7SMU0U>K{fcf#qmh}z@w|&~t+OupMqn&WB5Ki8ZTh*7wGIzIRHvyoH z72cC7Hp9ahVN1tfsV6Q$s2$7)bWe3G&RGRp*3Qpf3oxNlxjN=e#-xt&YEs;mwT1If z6jG4#0116wc>yhXRx9Te|8V^Ap6wP#)*kIEsj^l!ypq^d`iJOt!x~0eZII%##U%>LG5EbF2~?v3i8cu#{c3JfnVa z0I-?8QL$$u_k5BCo-*E{W4;-ky)9GK`-X?*<^?@xjEG6pbaWJ9CF5GEGfrjLzYijv zCkU*~D5r|t5A8!J5>Syw{mFs(v2{%f4TQmqI2#S#&St4O@7|eo?~p)MNJRx2h{?MA z5K>*=+(H$}D(E)w&Bf-ap-%eb8j~%#*xzq{I6`|hO#6m~epILzA5&5(Ee+tkDpt!f zv-mCJHt*7`cSX=-hT))!-eEV8E9Z}|iakJXyvCJt)V{2Qyj<%BnnzLO`+XrRra0t? zQU~S5&0&I*IX*%J(WnIpp*|+er+G$hDoW09*o5E_?gQP%Br#IXLXQ2HhMhl?-x@R_ z(y^ybLFbPwbtVVr1b?@&^FIyn!;0?V?1x+ZKBqM~pEZV6%!MOqBwfxbAHyr976kuI z+UP<}7|?5-YHeCyIjs9{8gVKQ_}Q2Zx-{7P zym3T=K(J#@U3e!AcpWlXwQWAr7|lerk#aWxL;OHv=+se~PR1@-X{;JOlxwRD;>jysi z;Y)g0*%mr#U+uMxRSr+cbDPcON6BXGy2*G4v|BeegQD1&0{@}p+;3E&CtM;EBPRRB z=%{zxi&BraL263P0ZIYduA91=4f^)M^>$nAjJB4_%Y)kWZ_))mShblZx6h}^BMCqR zSTKS=5O;@=9#Uy>bOs8Ipr?G$tyz0bWruiokqvk_#e5ufz3%z4p%bKh5x*Ww`^CRc zf$e|Y?4Rmb<|4;NEEKIaVB9khV=+0^SL+R~fUFr2O4_(3RA4D+{NA}1+26%zQkdc8 zYMqgPIQJFa@Z??#?|QD1&+2;x5fpk{H`Tf?z02kiZqBev-)ZJ3@L^W|J0 zclKsYIae{GxSw4L0Ue=*fcYn8V!HqTH?rja*$H0f*}*w{`Jccp`xFXtnogTEZ_CF8 zxLDMG7<|3@+}u0}OjEGlXMMi93^|V(vBmxyn(_aQ4GSwZ$Kn9}=b1>s&FqHP-8(4s zJSVHy&2oeYuel`-dB;RNXFIwa^p(SVtjB+d9zfx(AslGE~Lgsj2)Y;iM7 zRpj_ee)Q@2)4}aL;U@r9S9vYtw&?mI(n_^IgZA)Bd%zX;vF&!k|tN*BW&oHUBL zk&X_rRO5XizQGGG(Z%A$IGtuWNotBDbA7kM01kG(0_QU z*k1R!6E$1u*vSlATG)BgSkYSGI!1PmiNPFB58AdhueIOre_pO$8?RjiyoT}cI4|_b z0f;!%*}lz;7NY(n&A;d%fji|f5b5egN4K%xIFV3P4(<!9?`Z$Db7V1EDy&s_4zwC$oQcABuu zT?Npr)iGyjdsdxkN_%o6NM8*uN(zpcGnUYI+3gv1C`)zBxG;WaTJTf#gflkvHT>*~ zj&sR98~rw61MBgM7g>eB+gz}H<6d`iN5psSV&YdB>t2OtdUeWfw6U085{P4k-`Zq! zqNoAik8?P!I-ZJuwH3TE4m9;>x7)Y4eoafWTgu_!v=e+ik;=oo9zg@34u4U{X7fxaIy_E_ZZ)Jx7{p_Rt2Wyz`D%y~Pg zX^pu!8d0Jks{T%&p^qHRct*QSgkEZ;W|yfyJ>*VP38vkpB6Xg3^P%gjKlh2Y`zd89 z(z;yw9J8yjn-VvUJe~IT^$^Lwdk<^Zoc1;+cQBSdeHp$Ggm%cF-)moZ-e|h!Sovgb zQ$1NZFEf0c2ICFpAXi-?{;!FffwDae;Hift|Q>r2P5usWdmEz;Z?z&@31S5((*!-XB}KcBFYWMX1}|#D1n< ze5jdeL(q0qSdPtLN`s6f4SA6h8j`j67Ei>L$^SUv!{x~uyN)l7!s8x-@ zIM1y>Wet&MxLpR<_66s-nBa*HUM+FjyeRStT7%EFj_jMi*iWc+ZmE0|IpN9BNXSg<4H;t9A>%h<>#5hWc-`G_l zoGd2lV%Vxp+kycWjcV^K>D!y)J&9Fx_tLbTIu`>shnd$Ug@V7`mhx%I29yxvikB%& zSiu8v^{9#6eUGJ`hR?3;Z9|^l3VvB&ngViNn;^?ZU3rscJl!Yr`!+s@mJ_#UL;d zx|<@d&`_tXbnVn@2(CDfx_&8Wk@Y-vho*2#6-?Hg;TfmWJYxP-nJxO9V9D8vYwBC2 z_tE^@f_0nxG#_^~B_ivXhCOn>hQzk5i<#!qhq}RA)LHv#T8yMGc~QTC@bogr4^zdP zEq;6u$mXr_q?pKVC->in4w*{hymbBU~^|(vlUgsP$$sp|b z4sAmB*9ump3*ORUI9ws^=6=tXsL?q8{w7(CV%Ab5&7Js4GGEFARKB06JZCPhgK0bg z&!+91)z-*!!g&5tVc8T5HR#OI|7IG(=+MjibYMsGtYXG^M*O=C-*CHmI`UbQ!a6&x zpRQ`9$kUYKaIxbVMFqW$vytekLMKuiv3nT$C4!WO`7FnB-EI>UUPDV;vL>^Ft%-$o$H7*cW0-tWS(U}{v^}DD0k1HST&Iljr>5clK6C?2Wyq*u`Y$MfO2eJEK00Ch&Z*4PT zlBNLJP%jfQ*K8_Tr~O9h_ubFZLQIVz4yB+%%m~opfs`9(#0C@;QBIT}ma;sU@X=tw z?pG3BCPqd}Awudt9Fxe?rfQC*2X9K62Qc7L8JQ#Xm*rc<{L@;0_HLkeeiAR3kS!)2 zu6Vo5n{qqdQH~sr!P*^f0sLsNR@al#XDTH-ElaCft;R~CkJl+^Xvi#>U9Xd9?#?Ui z%r^Ds1Ygv6Zn zb4@RMJo*FnSK8hO^qr+3(eNA;KlWXT^g$>s{8?y)mqm_{ekfVVjQY?9j5v zxmqW=%<-Aiy~lyMHPvlzAhpG1gP-9M-bC^*`83(;{3@^GwDO z=ALhf9NK8CLb7++KV&jK!cYC4W}9LuXSP1?)|gjp=ZpZ&`do^r#jmA>T*3prV>=(; z7V^h^ymJ^TJI}hE$ZC~_?fg@KteE3CcsF9sq9pWUaV(6ILTNa!jg!uQEo^~BQsCsU zdro?$_W6RjLp^?ly%Iu9do+^ip3SYBt^d}9dYqJO*eLL5(PWP}N_%tr*wUZV3WZYh zUY*3sVXhyQHd6JWaUJz*?-1m?Jduq_(36}X)P!u|SK{3Mj|QC+Cl*i|5Y#M%2AugC z_9`hG|L1%~Dao#|k4{fF*9b^o4$laLXjKWp3Lf5u(nSMGit#BO_^XV(c`cy|t!#>i zWmFfid)L9YUGtfWtwTBU34UpF&N+fj=6O}^MrF03JDa38uek%7W~KYNW_ z!7eAgJq22-*W2nhl~LQ4Cf^&&k;gQm=NH7g7$CN+vExjJZ;lc`o?fI+_Epz(*gFw? zm!pDJFAQ|Hyw{qP>nBv;W&5f=E2*-1sNY-<96rKT+?sozBSa%*eC>u#t>Cd4C_4?Q zi-f>&tow4h;iEu|3()hLaVW>DyKq8R^=(~i5S?T!)bUO0#3LLHw#FW3TYlghn$R!Y zAWI%nn7M>c7Q(3$L6mWQh>zdjorR81acCx6o++|YlQTlI+e?Z7mE znSQcdSf6;C67q<8Xus!|#P2gskoV{1T~VF-p`$PZ9aL~s+;g?RN(IQ11J~K{eHls1(~Uv^Z0oa=WS5fvRiXl6sDjQv>c&NO#fEN;lCKCKg9ys-+5d z(Dx$*)sty73mK^U5*j2E$6eoo5|-EKb}>seIv!A`Qjf3{@|g-G>*^^nk)rd7mLYNX z$i9=N*o_C%EzID87K^wLaB&gqRfsdoOd5I8Bp*#)gySvgiBkUM;MNlrKNcqI2qS+? zPi1L?t*b)|1l0pCNDBA}h$xX+9ARK^q(Pb+#ak60#*^hveN4&2(7KvUs{Jt4%xC<} zly#WkesZl2+*M^MT!_uln70(iEaZZOt?*;?O9<#GN#su1s8t&0X_LyI>d3<7`8a>> zB3R0{S;BnEtc%o8_g*O#)V|U7_LetL4Yf|nTOjzlAK#xbNSX4Sj!UZzC+E=#syex^ z9gc?+;Z{=}%(t&Q-OL~C@1pTJ2yx#GFYZ^r`osA_8%A zf!W%S>T|)19#i}TVYoPZpMxTx2@bd-L(91qdN7NbRF1U}gQF{taQs2|YWnc1b!<2_ zINB66VJ+tF@0R_2Y z`~8KiVLFay>GzkNMdi-=mwKx7uvH=Nj!Ef{9fL!G{Ky)19?ysmx*mNogNO*UoEOK_ zfrp<^W@l4N&kSgUmWDUgc=R>z#>hae+v^zF_Q_{2IU!26PM{aYQ$R`Dwpl-46}svx zqE)DInoUh~-+*z>rkpx+_|v_uJ{!wJ=CDFrgQ=o520NCpKJOggoE=A$UGv91VV+t# zqT{mC^P1Ta7sjHw+kRP`{Yb4-qRO6lt4Y8$`+``Tn7oqonDbIzCFak3KY6_W9$hp*ejhEZY=?gZID?ShmKyhm})TWon1IpqIYcUOVbu|mRvH24z&x& z)TiRsr@Kf|pgM-{N2l4676JwE+RFFxIp&Lw+HH66#!7OcT8Wfdp7ZJBF}!$vlths| zkFB}&R+EB(`0XdbU=hD_&G;HhbLHhOZkD>qr+($eQBSe2aGY^_^n`Oi&o%p6v|X;Y z-VRG%s2TW@7~2+j+m4$q>ME$SFFc6+hSP*0dyAn4YVL(!@56PoqQhBxI=!#@>=0xF zciF1p6*y@(#HsRnWWHs>9@KFsRIIJZL@x7bB?JK~-c0~12&J5KvFAIUNv`@-tGPOI z7a4EyBR>SW93pRLc-HCs@+`WWve;hKtOKjI9;vgAqsnsff!cmn!H>n5Vm1N*8LJw% zy+-(hY`Xmpg|W=|skEOV-Od(EA;vLjkDLtzFPFG(0~({**2@6NDgy=vKV{?b2(67L zN6k*?z}rw?L!iMYh>14Q1LTz%9&sMXd}?b6c}A zFgD|U4)MI4Ll5B<>YeS*1Fu)KvHIWzuJ^A}mxTjGS@#gPEHo+^EPpTA1=aON<)*JY z*2{(39W(_x0poTdR7&2e3%Q!7fHlU2VTWWTpyf5X)K2zx2BH&LonD@F4fB1!?ChBumKG<3QQx0;q_`)tC{YEuP-1O3AM zGE!s{mTY_L2Dv`sqW5WgoQx~EuQK&)jFmy--XWNqw90w(f3e3hx});(^?o7)R>A(dD5+ELP3M?Sv#%ItH)EA)wl>1m1+!q#N| zt$4P3>^tc#xqE+TTwlWyI*R?yDXfBmH6dK-I&UR>!^$IG;HrZyHg!7=UsFWp+lw(r zP9uMr!LMm@~~g#@86;fX$s^n5g85zV((OYFMqgZ>z)=iG;T^Vk@iN z?yp(t?_E6p^LMddf1O>c!AajmE#CH$fU`wzp+38Ydiy-f@^n)aetF^@7nhlloRRd% zdqi7N$d$_t_yGllB5a?6pR1*Uh9)eJ0&H7cMs-^1rH!hZtc_wXtP-rfJyz+%-vSL4 zFlXSOoZMJHHB;Dhm%I^Aa(o%{r+}J>k4oXnE4yeCl-+T|{V*$y@siWjBpO0eg&1}5 zMCff^<;jZ`ks2-%hw4QJv@~yLDLjow3oLj-&x~_SdJCY2p({zkY z!RXbtZ$#o-X2B=)LvwO1aVu*|#cNqXadPJGN))o`c`<&!puZ&KN>b!UOJL>4 zgE4T1&s6xoQOAwWX?BjIoRyYrl_5N?mjdJpMdxmJ@(-5{yGZYnf9PcIisH*sqJlSg zy=6yRa|}_ijrH;N!c8f#J69G`($MDC5Fb;4K>~N9GrKCFLTp} zCMC=+)L^kC^4vl+u4 zr*v)6AYnqhnS3{F%%dcrn5VKek9-N#X@eP>ITw-&x`=g^nU^ZYaoLOXlc&M?9F~2G z(!G5(u(+jz$jHX8j?Wg_&%sO|8Y0x;gajhdE#;XVl(oYZ%>v8(+fus7f?}@}>?uPb z1BbA?|qWqO#Vj_Tv%F|C6`${uix8z zPzk!1s0>1p6J}J502T&Vn}i+AVyr3tAV&4Uc6i`)$(a<=bJb@-w#n=3-D{tz0EMwy zF52j-ab0U*@Gl)$6G>+*M(<7k&uoAy<6V#IilGCorecYDZTFv@hGpIxa0DRsgyyX$ z=ac#UfZR9E32s) z>Tc)|4Bm~`SuViKWD-kx8uLH4&xIPh;#@Mo9Eh|5j&5E!X&msaBhxV__Xd>?#!G&% z7EqNDUsLT5z};lbtMlwog)r-APV~hbjXXZ?PyFgrOU;}ZwH&Igvz4{^jO#%<+t<)G z|F!3|yvW#r(`iZ}jpl7QuUuuH-wNG#A=N!++Eq@}zs1j83vYnS`+Kagf~(xa677!& zMO>HLAA!e}NpPPv*^GhEnzk=bHP)d!rJhjNsnLawH;7TyHSfb{-P>^-7?CS0;fj`p zg;6ec!Xq8(y3JvWkDU19>(DdjYG_H092`h1-X3 zK{mw}q7`Sqn3FP^rOxHrdveqtSkIEFSk!6qt2C+C1-a%#%R@*OB|#Nh*|jwx00%?r zCeJ&uf_wZBmsHY6LVw4r!E(uzSoB2t*?xoOhKCKXUyKtE%~5U9!yHa#kb3P%09zy% zt4%`Y>8yi>fBR&p$~9^R4s2vf>@|Vs;qG4qFLE*#-}Te6LS6O#B~_4;yeIHL;iiw6 zLe5VpZ!5-qs#EDF7}xmYPRcL^tJY0JZ`B9<5XmUMFnMLckt3nPMg#&GEmMB4 zF&l5Rv>aPjOxx?-Q3jin&QI}!oBwm2nRflBEBnezE=u8`CuhbzBYw7xd|}6QO8#Gg zE3Zrh*~G}+dm2k=R&>`*kV1wN$>m;4ILwWHsvm==AqVI{7>9GG$*HzyT>V*RU44L{`=PFdjAvor7*2EDkIY$E zS$t{{Qj)=O>*!o}D&Umv7;qff&W243O#;y4Zbvb0BEL z5j?NV*<;>{N({&pMy`JWhezu{u;dK!elUoi1AI)}L}Ko#n48j@e3%UKgFG`5sAP*d znk-J28dpPWmixON7IJXQ^?X5&@RzS=a0@$sifVhHCSxJoW6_>yS{fBMDJWX>OrH(L zYR;<=ROrjIsiaTW6^#ef1VEtd1r}=#^ZX43r5-IW5~3K=fiPlZDAPgG%Ux*UM;bdj z?up0FQ)7_;>B+DIHzZislJ$0gA97KN$32)B7CdxX=xNm8YIsK6;|QoJ_oMIdUBND@ z)tbdOd9bHo#NKzp?AZk}qdIrIBDJyH<2d4;y$l&6om!;~kn~AV^Yj)9Q;;Lz2I4W{ zo=l(K&jCT|Ks&T!a#~-x`hJxbZI4^CdpRLl?ErEEr6s{+oN!9-kIGJ&fPPTm?p}n! zV$jDFzXv@$sY$pFIc?`4)JkT6RS`ralAWo_5yK3Sb(M*`RQrKcT5pbzon)!8yoBl* z#&G-Z4G_N)<1>we3!!Eo7qfAX0-FB*HVQ;u)aO+a@y5jYJDKqFL{=uA0D`Rs+-UET zzF^R>;7pouKo7LvasRekw6b{8v4B8LN6H9YA&2TT5LY&}?OekX2fSh5v#A9t4>FQl zc~#A0{`|)sg&oA+MR~8=Xx7le3hGqtM?}Wia;INPQUA&&W%%0dg51LAx7lO~K490G z`j8D-0Py_3G2Sx0Fe2N`$JMM8uL>W%!Y9{AgA6g7+8vzssd^jxJ zzHt-ojf6ubmMM46#*8WdL^Z!i9wY$^seLtf(k)k{l6^0FQlFXcCC76V2nN+2i~H*p zC?ICRRrmn1<|eB92BNj=1sI}NOU}R8P>wjh9Yf?yCVl6;?am-gNRC!UN0nbonb5PE^k7u<@Mj}pSjyY0Swpg^yz&19&|g)tMIbG zq}U?s?d>URlZ`UIum>mEMte2tnTCS=!}`~2_hpS~v=X^PpNp*icD6&Dx8Xb)IA`a8 z=)Mq#P$|4%EWuDi+g##f@o2~2LAHH*1uPB0?&7SXzcdBT!|o^pDFac#Q*WnM-JWb< z$?rRsL{%Qne){y%{eA4cus?|E>6C0vrI0aDB_)^ zki1Tk-A)n6sJZWnGa%gKD-^tB*};@&R;!;lqR_gN4Qm}rnwqA;BL+WcjPesq3UF!4 zrk)GEYb;XjnUAjyY@|>OCJqOFXUsx|OaG@w&9m`dD^SXxu?I*A($wi&YU-5dudUAy3qT0kigo1-)S*upLqVZkv93+88;Zr74qa+6qz5S2%(dQ+q#p$RtyD& zdI5hktQ#L(!t{rm8|9``ufJ?mQohBtqM0i%yfzl(WnfG&kMdZXL8@#X%R)8jW+F?j z+G<&ELnmESeUtMd72ppLrUA2>`ik_7QPwcGzKMTRV{YO@E>C4(+0%OFwT1l}^?_GG zeQx?zI$(7-k_|kDQc|9El3u&KD7guW8PW?c*1+5Q|fScSN-fk@$e}d{wdNGR;i&ol| z4&5jCs)^Qrs591lf1L@@$d3)d*3{v^6T^U<`ygP#r8$4Gv87Px<;?S!s`pxUAN!JF z))bdpPVxeKe+|%CgD!$r2%*QN(69b#Xt<9`_!U3Z)S;y^X^1VC4B{J){FR3X^PHpi z5D}gcn5tXmA2a{nkd3jv5^suOJw3Pc{Y7;U@_K=ugWsDbt3}?J#ignHt;ip@#1~!j z7TEHA_2E&9OC8I^t=_jFsJw&1lFqb8O>^kM5uR^%ZM!*ITw|YCdDxh6+HxR2R%7q-X!(4*Nn2FoWk21BF1UM@>nE` zuGS&}l8hzM%4-#|VA{Xty>?T2ZW$7SQUGgY_{?G4>lh&+lb-xD8AdyU+~wOUW=F>I zSW^4R@5IHQI44Z49@|bd;-!lf2oIAa_o=XWtP)cy3E%0rb0=yzC@Z2rK9t~|}1sNkD3`z;lbrL;$ zX%0I&6u-I}HRUZkVgB`fWg+p8Okx3UaSdaXq&zD+&Lu1sof!J`18*z|b+>-4P#z{L z%U(GA^B5%EfkhYJ4hv^h-6TdO*Z9dXO}_g8lapVSRY2B2__HC&CLyyPJ8+m!EvUVS z!@GBWgpwsSaF}+s%j_4)`oIDfUlJ6B`MnX=LpoPCvlqQ&faqKRG`ib`2a?YBgLRQ+ zB>}<b+7PcRRhkH%O;4Jt48w!2mw=1bJS~tCx}96#tJ~)U z_l}MPpypi@?}un_E~k*3an0lKy?XqT(=beX6=T!$$pb4a=j$se|P=G8iwPS}lFxG&p2?^`p?hLCSYB^Ybwu-`Fo8VIM2Ky*U&R zTMMOR4yrNyQWz{ljEn}}vt*bfVbl0Nzp}8+GubC(2ZZz?7G2eFDG&;-S%#Znz}`Dz zz^SfCDZf%dG4~Oq0Z)4Rg-c_992;tUGg{HOPX$5^GcVLK8Obu2z@J7LZL(tAPsdWm zrB+DFUzj&^B=c|23)?Y|i(R-+&Xf}3mEB9J|M;ABS_tmVAYqP8G3$rHxqkrA4iXli zFIOI)FKJJXZgVm&?m1x=juT9d7)VMqFEzvvu%}YrGbLMX4mE9B>5bUNZS^#9YjgMr z&zu~|>#lV;xZ2NKPdYWpB6dlP&n2cQK5H-ClVKZSPjrI=Mp3F8Gce}%)nxW6xdua! z33mE^-JzJ~GgV|@AK{Dic8krr@TAe!Dz)rlWQ{*3KN64S&i>7)P57CTZk7$zbgaHz30 z**+H=LATg8nQ`I7CUx0P+%+b~WR?@%<1;a&@*WlILOOI%u;$$={aS_DM4AsavSm=3 zz71y4A0&wfnGaoVCrl{w$;BXK`6!&&d?fs8|AUhwQG@NTO`P4GX~y5ts$mX&n0Y2H zIgp;HexCMY15?1*kGTu_n7k6G#3pmxGDxFrjs*0Ie9z0Rc^O5-&6AE)&myz}p}mi5 z?YR%rtw8AjJ$RZ;{43&8qjcmaK358ul`}<4am^M@p zV$YK^gp=^ABIQcl)$7(D-eIU}sqV@5Eq*0+BBn~wKU{)tY3FQ ztS!3S6j8#wnfzA$N1v_RtRNl;P=#+0blQIcE^(!l(DsNcK+7?RDuuY{Q%!XgkPyiD zi-XrxSk(~r^3}sKQ38vo$*wMRg(g!HHW7`(2p80OJg7s&Sj@v2H!^+2WOoQVaU4pE z8+^GM(s!}}Xs=^G?y@%tH|FwHmCRaLmO+Z^$)iz**DEfoNuF9)G!)Qz^fBVh8F#$- zfZO^|Au-Fw_$Mck#SI!FBBYnNqL!AAxYbAT}R=q5HNS$h-1(gFXXm?w0w-AFB1KS*kA>w1#$BS9i&g`yRPf2Suy* z&LNUDW%A#Od@-rM)!^cG>+c1y6|^@NW4{&&i;CgWv2!eeK?S982!tA@k4`i$UpIWn zd@I`u8{k$VfPlq>c4{ZWo~-Sn%(gZ+oC+3dJO(vatI-&_Y3W#E6Yo~hn#x2xd|Jgt zu|W-sR@k|OJ<2%REgt8Ga~Eq4SU@!0-YN>R)FGG*M$~(_y}CD47v!3=%XqfS=b`5p5U%@6OYZvTM&dHg*)>UYQ&H?xQ`p8iB=n z7==i$ywZt&b={LA6V5Xf_wyVoyAGODi8Eun&;R*pe1ez5NQXAj^0Vp~hVD{p@N<2M z=hhl$T-<&cHB0d3WJad`dwdsL2Dq7OcHGV_sezAxzo9(ceG9j9r@E`&xl2kO>A^Oq zSmagyhXT7Mzj@a;HS*G~cz+x23QR1~H`4jxcdJ_!ZaE2CzY>g^mSvc!H`ql zRilJAekgh(cx=?##=@;V`D#U}G2^6o)v2LDbc*XQwf4uIdhYP{*iWCG&pQxGB%60^ zWo_>`A8(bgiznvUGV~Q|R>IFrmHSVFcs4=MGPn+Db$5vT25fyITTWpUk+vKDTQZqRn|V89g~E zeC_(Ig8X%~I`L=RLyDu)6nGklb;e#))7C`#)UM^ppV8%OL2mU$ujBQfq{R}=j5u9P zsZZJ{=%7q-ojWLPN@L3nqXA*al-EZA_VhoYY8Q$ez8|u%w82`xzarUgkw{DY)816} zAY!ft>`T*Gus7LVkq`jYrQvT59D`>XDP-or=5O(}*fGlla3y#+#aT&?3?xKz4CYe&Lqx*xF<4uL_XQ+{yfj++$ntzp@9qW| z<%j&T$UuDmkb%IQ4e>ql4W~B~tJg`vfsm7b3&Mc-_kAQBO=|6*4F~R3cLs&d*dn)A z5Egjr;@)R_48K5$2pkys|8CZ_G9in%uYHS}@UUSQve=%?YC`{MJ7Plrx$x_9Z@pnY zUf#+kr2hdpXaZ!je?a~R-ss>cp#Vt!yIsQz|L6WzDj`l62Df0d_kq)jktjdg4$NkV zbww)J?s+mHOgPF3INeEGOcEBlWpO%JFJZ#viN-OzJTO=9v^46O@nf4&H#-NiilMu3 z&(MPpXn|!c7%dkh)2frsWqzOQ?H%GKRN38 z!#6yH7|~G5hAVNQZo5N?p9k8N8pySp1q?_mW_Ea~&P@6&KeRMy`#Q_Y=nDiFNko+O zyf&k;A#UJIIj`LSLnl}oYiR$SuxJ#z9hvco!#eap(z`CwGm>HH`UsAM1^RSdw#aX| z-7T{);gLBt=E3Z9ZeA$r60gTKnf97>*u|z*{-+FP^6t0XNISCIK9N9mD%1SW_%CU! z#e%n_b;j^C#e+pfqUT6N7G#a*NNmK5{D@DM$w%7|v)1X&S|oL%$R}lR+%81zhpm5N zV~hlCXe$2D5i=3>AH3m})Uh66u~mu&>;UWmCV;kIL4JH9+p}Rt$CKL}+c0d#Oa$r( z-uLgy^>i^Ef6SS|a^Rs@%_4KPH0Ykol$YI#>%OtPCFJ4ok%5dg8d$#OKKD{oAomeP zkani{7PN;4(A^F%x)j~$KxSqlq!P>S2)YEmK-IDvJM2j~41EXfk@4p7&wenbe3ba0z;(TQNfX5ovv*J!bQx2N0|N1L%pFefh*_(XPXq`kx5bNjrZAWU&?Y~|7VES9fDh(ynS z-rO1VmUZs6I|h3S|618T959f;$-6`*uMhF9$xquQ-ghAFdw_Hx`8_ra8P_icgA;L= zUp_)scEwHS8Pt47DHwTY7}@HV#JK0MD7~M4PB=UZ`#`1S%OPz-!_`8W#iKKwM~v6M zD`^d43jK7wAq`6Y9e6yAr9#B}!6WaOg=M?gd)w}{kuhZAk>ix_o4|YZu=gz9KKw4FCDfT#x^j9aj3I^OvmTX&XaGT zAiw=GDQO=&M>|~Pj1T_e(;U5`FiuF<^E^LT>|P#BUb{FPg8S@-X!#f)%t5CY}?lt8x7K)oZimt#mkDe<^*6}U+KXTb57yEucQED!?6qe!*k0c4J1 z2=8fd%PfpZgyKID{tySg;7u&hh>Nf|2Lcm~Xx?@QNOArq=z&`a%g?MBv~%owtZu&j zz9~DU9=+HDz+LnUu=<9fubCEKobl2gKZ?k^@9o_z2b8>>RtSaPua~|3ijJICuOTlT zeYXDr_xVyBmx(NfT6U3G{(Go#d9!KRY79FHXA-BlVXK~RE6?c8Km(6GV=tgZ;AUX3 zGy)6+!Uc*EMtIF7+-F>xN*KoY4nuym!51Jl^^m=lp~COl=o_rZ9EtPwtKd&9a8S#= zf&pA-JW~B81Ak zD|Z{yB2dfP7odj>HPf={{OdOym`uw&@B5;;5}hW~*XYXnS4JhZ_aGGUF5jibZ%VF7 zx3t{EA}uLja}5==qtXx22D8?*t;WDWadf71+%T&V?5pUub-s}W#eZu7pc>Y4P&4*X z*+xSG+i5>u@*vR}(ixmsc2UkoY`erd-v$FqT7V4Dc#6nZ`CT9?X-m&$s9nz%Rzu77 z((u7hbT7eJnz$zwM~JEj6V~JuZrPtb-JN*TMT@mvLIX#jEGT;rWtyCSO!`5Nc*(?~ZF%?(OG(MW#bI zg_M084L&B9$5JO!EX%J`6$BOaT389zIW}%^nn)?LF1DoFz9p5>qoYzMGQI;Jmuaom zhX^_)nNH7})keQayx-BoY`+ixIVmnH$*(OWN`N#i&#SGCZv6-0q${h-UkoBNwkym1 z3=z+Wj3wd6QI?`9hT0ubvL9;?C8CDz3HbVWxQ8R=@0uk~rIE7=0=eLoQQ<$pJ8JTi z;&qUc(fDw2!E(SE`IF@MXk)YMjP{aUT6LL~TIo_4821u3pEWE|-s_X{Elc`LK@B9! z$Y#ApeFk7I0*Bx+&gqIuVez7q;uiBscsE9vDyFAxaQ4ni2EgQ2z>A0O0Mu2feI*mV zn8IPt`feoNB2V-7?lxq}#$@WR=2tky13Dl^@x*-LV;1~BPHNP~zx4dQDEq=kh-i?G zJ((c5Bp+Ze_NA-*;QEX=DQyGtY>xqNDJGo{D zr{sdic?u98a%+x5A zH#jVRJ3b%R{7dJYqHBnR)3h6lDSOpF`#zblH5eur-MQdXn4%GJU zKsNWZ28Tw9Rl9c&ZVr?M!Kk9op7m!^Hj;v`RG5ZU@AQetcO2$9y6ba0hI`BR5X`(D z|Kf{!w4b(A-jO__uchC%CDcl!%JOoabKzb4-EwK_(CVrEmQNE>@0D;+`KQlEec05_ zHrfh+!5X+yQM>u0IX^_^PPj4_-K+8*0D0o&;lUa%Vx8QnEvL{dZk?M0tT%ir#rTnP z?8^g5IA+td*GYcz$P@=G27g#hs5x>G6n3s1mNc%&dg&5=I$W4+w}L@UdW5#6k5ca+ z&9I6f5cm`OqR8p{=*Si1E4U=7yD$Jb`G-{R=i$lQG4%eRG~Y zGgTJWph>Gn+EL#fo)q{BnUIZn=K_G<6ZzPy^l6SdI64(kjqe>h(*9fY$hhXnxQcf6 zN{g5`WhSFs*x19ft45&#Z_h4e>1;jYuwWvfMh;^^KZ;r)6Sjht_Wem9I7A@7=+3=) z&m2OoR4`1sbOo7aj{aRDAd~n)%(>A@GI4td?m|;-JoxsX?sbsno~iAaT=b|eNCALj zz*!|iVZdRq4m}@bHP(jE=|U9|vZlz&xWI^2mmwIl$@#RE&&9A7L42g-LXesGimk&p zCeQYzw28irp3=6rqsSr|Uk~sj95dRVxKb7>4{=eDv+Pl>?Hyn`Kr0UgE5|1b`9TWy z+nhysUf(-+ez@a*-hRG)qY}z3LouWl%`R~=tkq}s`%U316%DA@wYDf%9arTDtUNu7a)mTCaYNrAfVHsjZ_^~VqfPeL!kRW&<`AuV2Qi@LL$5Gs@96?eRMeW}fw& zG2u_9V$sJqk+8W4EhFwEp{9+xsD?1Kv2=!nClmU$D^|~}ODjr}D;F7i>}k|XZ3%f% z9TM&1to49>PRN-sgnOtrG~A_K1R8OhGn8%`evO^osJ$}_hze}xzV@qXkC)_x!{wTn z?>hWWkyEO_@-oq6^<7Os#o&9gVCRTA*ZAgeo3ZXt$n!BkQ(I;Bgzv&!3dOtC0Bt;EYWc_Mfq`<1&C)$wSn70hywVD$AFqIhANIb-F6e z%Zu%xa2z7i@M6Dcr)EzaTR|Co*J;?)nM>B(yyKwW1txDD-Qia@I@?>wLqnt|Zx`R3 zS!AN`TS(j3)tR<~YptsM@TGDfmD_I4UaNh*@G)iF$x{WUYFI7<2Ax?nmYPZu1BbxW zUZb(J+`+j6fIFjDhqajBj=l!F%DwrmetI-f(DvH@UI@4i;Fvkxr8zy?yNJ>G9K6X(GVU(V= zH85FK`eqWF+Z@ATBZfuGX%=sfeBq;H5p;I*Jp2BRD*XWVy<;N;q4^d z8vT*!xcJ#f$YCC(zR(iwr`aW|QJ;M^nkVv6MuB7 zP!>}bgXfmjw1W6i?l>ZC?JY}fflm~(By;>vBso-pO`LN^Xc^yh6ow=DRMdcuP-Tv$iS|?ZMZ4y;l)y}u;jUQV zNErVw!(Vy0S`GfXKG`@|D6kKvlnu8u(i0PB0(v_oZ7L#gQTa_A(z0YeULC$&VEQ%; zpGWJ%3%|Qh)EXtX!#ASOgA@;hw2fuH4WH7=6iq1rWOC(o;yOwQwKhUY!bDu}^+%G= z>CN7mePB>~?d)xy3RvUwHu=m36|6-Giy_8+!E^+e@^N!U5QQ5;xk0GGcoU2HqA-#; zQ;t}Yjc*o>V!M#8?)2{P@xtZmzp!k5KQdGNeTcNBaXUi8zSuapC~r4AFelcp08-k8 z_H$lAOL~;fEFVP36GC~{Vr00}QR$OegLf8gxGfhk#Ta29ON2OXflQx!>I__AHn67; zJPJ&T0RTaLUCgdz1SuSb>XwLxoDHe~P0gH)Z}!w;#qhL!Xp~!dz*6^;EQC}rfBRdX z6nyCi6kaQe?eRkFpPr1}gehHAGeow5FY6ZM z1zwd@>XoFjMl7NLAaGflN=GRj)XD31Sw=xSdxW_TNCgm>9A-+NiMRMM9jGWO;LDgY z;^I=M(yMbj^A~^%^0g2r)Jao!tiVQ{23q6*rAE@Jz$GOZcY#)eNOdzW_3m;ZWk9^$ z;G@HyL_ZcKA5+H@z|j^wc;`h7f^Z%3Ld)HBDk#++`tl`kEw4qsA&XlgUVG>BghizoKVQS%vysT_o=RTs{j zhfxe_Ma7|C=6zBJLRN0!2CCe1@WRICxbX)#dbr;{LyFCigRQc`acm|zjo#R zzY7mTDov#DwT3Opixc8Nof!Uq(pP`oLs-Alq_4#g)nvr7epp|mcZID@iv)`}>V2T0 z5mqauD@E8#fS~ecpAn15=n_7g8CQRg_34%B=VTy)!~H-9gQYFaztWhBe{p4YwUZZe zm~;9Pc0LQq$w{Q$!X$gqHwBENVf4-&&-o6C{@Hh{rt z!2`RK{BL)30MeD7H8G@qmO^Li;)j7X9d2qo?t(Z@Z# zi|#k=1;DxUf^wOzeq%$Bh%m%cTJ;YJY8`pM@NrsIYqMHN1UO`Et@QwADUQ{_m=q5? z8&NiS#=i+C+1sbczpk8RP^3TC(47+Eyt0z7MJWXNs=BCd-pUm|c%*}CTEpJ6l5f2E zsi8;05YT7bL6YR|>{N_x{EC?ovpIpdEfAA8336a`gnQ!>pBs| z6~>bvY9sKU^$d{Vx5{Xk#x>`wSI&pqTpE-E^|7rDsZFc2IRiPCwm)o&9_$(ZMdMBc zo-SP4@I(d&beA--hiCF;P!(A#;X{Ft!TBd! zLG{VUzNZs9fl#_GgykG{BoKOf2aM*Tyl474B_CGzqWhyI-W|)7x^fVsP7mU#KkAB?x8|{ zHqBK2Uj?PmKX(9Pk4ej;OFm37YdS;QM!4zJvkq5eY`a9#dn8j>rAlziZ37QtJ^xJe zm`|oSZ@Lig`kK^FE|eY*OIol&V4s=%)Oip}v*R!|{DFA1OL6nZ-X`ZH1->12HId#1 zFuUbqa36pAJ`z-~%uFn#$%Ym(P1X#&p4Z=}V-?3UeO7ra-Dq9~?hSjDCCO>iXqHok zHZcC6J5E?xmE?Cj;!k-!k)x(>m$BJg{iN^>%hR#k-#E1~c8 z%vXUEQOflo=VukB-LUH|)&*nC054|scuMJo;d?!7#;>9E?trs*n6oS)+A=&m0FHA` zR=3L3HgO>2iIQg$f=0Vw`&;qV2LcmvBl%+R3=a8!hL;{V&Z6WA{sbbK__Zhz-)K|(Uq z(E^KPo%A2CPHZz?K0xq)U=Vh2drr>wP04?eqkj(8c=;Uv4?EBQ>jn&nH#F35St4H# z$z3JkYpaa>Ga@HM{>c02VN4#rsF{Et@TcUWjf?~6rNu+4Lc;P@i4-~Nj$EZW_C6yT z^R#rN)@Pf^+Y)EYm97w_*rI$E|p?HXJC{}^`4{y&BtrOnFpx;}MoZQWPt<#Jx|(KysIowKOgg!J6= z7Mb^IV9jl>I`;y)lQJ0(Klf00fU#yvK!^H+8uDP!D3dBj?fYLL)py$(rO7)x)dTkL zMD)K2ChuG!6X&X}ok;Lky}oI20RpEAaokRj-3h!z*K^*}hn;0@xX=mzLww@?kw|P( zQlaeY?VVkpdtM!O)qV2%Cezq>4aVm?E{y*kEv!|;@~)4@?cg4%CNP-qkX~NV>MW=I zzqRSK;G+KQA3q;kg0-K`5*T&ivceAa=JeaMGf$L-Vp+)2zx1PArHJBa;$Kh6?<6(W z;@YejCFQ%+@H)|!dphfk>{!J{q=aiS`AW26iUB-lU<#vbHu1{$+MgM8h?>=~pSwA~ zYWwl6YSZTyz6V+Be3W%7%g*k0NaCG^wQmT%yf`8eoXpYr_X0a9gJU0zdH%P@rXHEb zyAFyqj(~sJ^vLl`m&FiCMN=DYbz4W>E)tS36l}j3pD6+@WVNF1TuCcp;*;$0j}GSy z@Fs%ZT2=S7L#D~6t*i;Ju@euK!*9Rew6-=3la3>PV-vvq`HJ$V$+^5=dcLF9hjRp3 z426(pD7TFC{$1HK%eYgmKAY70hmJLViI@>f?1wcTw9>iLes$LJz5u}w$Lz?LgceIT zE%7MGy|^E1U*q+Y1lQngL1U|c3xnm214(?dCt&6Ct$Snc!AebRE8jK#^6w5++RQsu z#uNuGfz+|wKX?bXLN9%=JG=ll(!DUXonMc>ZS_M0Zm!lcI(*m0h{@dy7PGHU-M$PT z8L>g4PVxgDMo4{9&!W2X4rVH{kJybmEkcj@f#t{7CEwKyZT2UGG^8R(~F-> z=90oG6NsR~&2%qd&SQ$nUGCeTAdqBvhbFEkzm4`6V@4u4%fjOI!_}w|c*#tM@VyW? zE;Sp&TVnY*-b)Nt4)$Ck-0|Ch$Z}8K49QFOSWd>sV+|0$kz3)gDf+EUH{ket6VMLc zAGfF(&nrE#1(8E+63)clfX3m#@T&ij^!Ce-qup%lb*5%BT<(Aa!r7Sh6)K*bUrzrM zE5^5f>x}~8(C*fxwg}wC=`1&x(7f#&ctcqjBRaeRPR+^)JV#7y3op7 zbBECEU#|IFs$6tF8g-ui7r(h{(>7i^M^An0cb}x>9n2!awRE{TU$n;WJ8z2Gekk$T zekJtLzgbrX^4=37ahxo@%&Aar@`OPzevO&Z5RkENa%f~=vU40R?fC?l!Z%w`&J0Ua zuVv=2KAh1IJ|MW;b+7SDsY6tCokpvAn0Z*iJ6=)7&53zCshp$ZIRmfHud{Vb{F#c9 zjX6bE>%!$P^Bj#`&~jf}%Ls2DOLK*?^bSGmP8OfwfUJRhNh%Bjr(^+=1-rLgugh27 z;LKkI0;-M^%j;t&{&t$xtx{>8mW-4XG&-fDw@c#Wh`7||q36nkZ*$o6qtBYw^IW6| zUg;j?W)?da-8`z(K&BLX+KW&0M0-Fyy6_yquDW{L>gDXukW|C(|NEMM2XKN_DfN^l=|)9+Y4 z10=N3MEV9XROJQwlkfNE)GS*m8N&J)?;(7$yh9n~+?h{i6x!Q{F&2Y{bslqUMnr!F~#&K&DjaeHMyZ2-j(1Qm_>Flo6y zNU1%{)Zgu4&>Q~Ea?2wpx8n@N{{Vxzh{Ol%9$lE<{L$p>%!?mqvJrz?aaweBcmzRT zMdl;`BUqjKM-n&qufY6EUoLv(YAh3|b=lchDZ>Y)1=aRZ1MG8OHL@FKLK}^)K30H* z6^6=zk_qO%bLVrS?6wrFS~MuGJawMDN;)y)totLYlOg@bO-c-u%didq@n~wz{G^ie^$m_4T4<~SAWpv!OvMU)lQU#Fx zSP*}BCjtSZpm6(HrSd@J$Nj_F2Iu~|@=tv#k4BrVeVUqwFsL|>jg^s?P0R2HJarND%JR zzgBOR`T6F}aUd7#h@t(T-x5OBC;&lnL5KhVfMY;tjEXk2K#ev$m%5l?LDjq>#l1u| zzaZB;yP@~jwK$#Ve&HHKm>&qJ5Sj#lJYjW@9cXwko<4FJBPj#}1RczV<-5Ecza@8= zEbn+&IXtUd*s!>CuuOm~I_tj^rEroI+u??4;0qo8lQ(Vhhq|?U=vM*@L->m<Q846+6FLcJ(7t>X7|c+1*Lo;9HwbgQ>- zz&57zuy^p5ODqOx{<3>cjq?@+f!P-eni^B}hglHk3c~KRpdNBJTZ#G^(rr~}3I^=f zj&ZppMd@<5Sc(UNcwU!e?3^6=!0^#<)y3f-VYsBE^MKXm>x%wi9{p6F{;U$0;GA{! z0cX0<9F2IihW?X|)7_d$JVdYfw_}4l@C*r=SP?VPF-cXP0@b*D?F%1+p}=@ml?f9} zQr3e&)`Q$XGZF9Y!w-@+HV-!?^qXG-<(+Pom*rco)W1M@#`sKT9GXLXXXE|p*t8zo z&q}&BO%f389qXWPVvUOFM!P#44^_m(R(d+hlF97N}qH;teKN7hcv2$ zPK}OK{-8=Ld2w-BmEh8%QQ_5G(BzR04p^5c(Rle)G!i^t zOeW)7jpMTihhOm_@8yQRLQVK`*|*>y2O*5)({6!x`zurL2^^V)VPzFr=4>@ZUf&(+ zV&n-TxF{&D&PRZcOtKICTWQ@%wKKQUUcve5-_cgl-T zY1-oo(Bh$28PPiszJ(VMYj3OX$X?&W)gwsPSovt1I<2Mx@L)?-sR6Z`h*??D?cuAv!Rt#{l?cQ2#EdxA|g7?8(O0o*-q_oQu)d9Kr(e(`m#g z(r*}Zurv84N48Rgg@2*%DMf!t${Cx;l}0E2K}>(IMWg#5UnlsnSMYLVt@1f0)~J+z zN$UO^!d+4HYDq*1z5CeCT!DN)S)tUW0YBsGc}}+IEvxt>ys3%IJx5i5dohMm6oSfI zyY{_qnr5rKh2n3f97TIz8F=@PdKSy$JyRSBi{y63r^XL#_XbZCSa4a(KC!v{eZw%I zk$n;|lO~^?!F2S^(01xpjPdRs7&nz@;g*C*kR>xvL1<)I+q-Ta&rk4}9K35G5><;a zcvjhI)jb~=T`e(Pys^^zTNu`v`N82DGMG^DRL2VNq;_?AVd&kXb*K5v+keOFWTQW8Ps5ztIzxZQXk&o_Y8UE z&Ly~3)6c)}0a3(DX&qvlD<6vO>_ah+S@ebm9mF&Ol3V9Pc{HB&iR1EcEw2$+Zb(2{ z++bJwJls8FdzZwTYfIMY?gIiK_RDLZIXW`E6(O8;;RZr~TkQAJ+XxI%OpO%yHpUWI zd)9b}T)7~gyL;g>&=C@YMaY}+1hG=p{oCO<<6da7T77k1WFVaDy9y63($vfEWGyQe zXBE@c1-z#m%(R--uWc7)5NvesIarF{rp>t{K6zK=+omEcXP`Semd7;tc$4P0^4cqV zXMNWNV!J1~$2&QgcsaA2peanb#U^3F>sXagAGP4!t{9>}AYe-tL?)wCo+nBTBtq*e zVVfpVRWCpX(gd7zxrQ{E7^A zNW%EVS)*EiY50?T1I@4fQKAU`=P|ahc{5P!H62i_pdvCUc-fi{SgF*o$qP){ZUOq-S3z+*Hw{e7j)goOb;q zcc4&DxxrPN++!8UMGl|xXX$*pc^fCWot+k^@9)`^ZtGu>W zbKnd1aHHs97e)RK>jDhJj{rg9?sy~S{tNCgGM-5txgaB?esY%=c~}&58tqu5S=?=K z@X(TCsyd=<;2Ps8C-azu2KgCH+^UkmH?3e9vmhDQP$&kuGhfxb-V0m5JRq7w$k+zC zV!9I$F!NXlC{PhbBw3=Uw>ARARt!V zzkPN$A8i_m0Ass4nG(CSGjm_5Hv+IqW-n8QZn~(r>(U~Nd^%T3PB+_QGVkj%(e9C~4;9&Vvp zQmJh*hZ8kr@l+~JkNCh8|E-aIbYe8~ma_%XLMi+;v8jeBe4Y<~qQLuJSsh*kpr-D~ zea_Inq*asbJ5>wLimwz!mHuUgt37KWeyVgYh{YezCP$?b@{uCBE|Gy8r844Tg8Y4X zpA-7q-Sh?-4-nq(E0!Jfan}7N#SAk-br7;FWuz|0);6l+iW+OdGm>Ehbs)k@pDW|G zn%(v~uo8W6u5?X5rOp$k>+TFdr{M^vuKjz{9y_Cc!b5s-{j_`Ak*1c-q^jTJEM<1V z2v*aqKaB=E%Ugj7zcf&M^xWhsrv*Io7e&TVh3Io~nH>oj&E`c1fxx!8v$WdClOG2l zL-HsogvD28aNYO)eynRq9r!xBzscdcu;biIpzpVU^#;PWg)PjtI1^$_3n!;5Bo!5jv9V~za&5#Ycw2ogo2hgUMoa+Q&))0?lFa~NiPl!AhdBtACQ{7 zX!nFt!7tz?D6oWau_vP0Fw?i$T=aaU@!KZ@CR)X#)JYwei-b-QwYdHy8868ma$@vJ z;-q7N?21OqM%$PS6JvW7$Dl}04?vSZ5b?1mGbf<5fwQc2?N&YO!m&ngJ=|!T`v85* zkv3Un0^X-+CUjtSRECnq5uCGwHr{FDc~lh|JtSc{+>gJR$7Au;n;_63z2ZAT07|qw znamg#l}7GZ0W4p+_m4)5_7B(JQ{wzi;BtGAN||HUl!4`LFpaGN@j@B<_jZW zx9ZbQSMg4J?sge(z#b0$qf+O6x9DgLJ>oZAIKQxG$wC5ME$o#GPN_y518s-}*Tv_O zsqPCRN7f4>xHY7A7YWGW;SWRgi;>(K;;T09^dS|jMxX4jX3j+0Zk|M2nRR1aR5)la zS4JbXc(s_HxL)L3yg$-ffPj9Re$)cFbX(ZzqJ%sok-(5M)IkFAkXjak!!)O_#~lBr zdfvOdYkn1lb~&1=`&0%N@>)Hjp{{}83%LIpg_DRFUU8ebFlA?3VaAFH4<~!Kp!--WVJ5qM#0%ba zbMUfahkSZE?xbc6cxqmblQ$f?xPE9HrnV4tTO%c02nQmfB>?ZVnY? z!^2|4cdgIy-ibM`kxiwE`R!K8o~H6yn`alUdJv+XNXd^9vBU1E+w%l@3{ub$*DWorDcGpD1}6+v z{K}oxhnUMKRpXsSH2j=!q4>DwCX`vF?`aunI1HS{v58RM&ag;RK_z|E(@J!r=2U7Qhz zAja@oQ>V^jKd09gNmIy=!dQVD1h}7dx#p_^#}|uwTc^8ibnObazat@ByBeYe>3yR; z7;8<_mp*d*pPr&kw7*!-{W>>6%PcV8qRg3TNHd-kblZ(pY|BNGbUsra@8<4J-%HJF zC(iW3B}!`W|LAR#0x@pOdU`MuGSc(_4DQv`<+6J02-TA!m+ix&KG9ethP69&$H(Z76NoROoX8VKS0MmSUu zD1Ffqu_fbTJd)E7ith>{+`M4Yi#8WXnFx}u30RFd7RWQBXy{K3?P(Cb{WdvdjB{dK zL)(dcm|b}y*k!z`m|oYm+waLNZF7<4L7W0UnuRM)@IlQqd+&!@`rXdiLm2xy)n9uFn zkFdNW&eNS~`HU6b69i{0Y{!}1y3jm52spESJ6xzgs}ITvG7^?N&7KW@2rc)EGNJ)O z;hw%UJv(`PN{{Kc$3SW`!9v{1@6$Fg8a|`H+P`+qyk@3xsoOu%OX z{&$32MP?k&=8p{1mbVU+{qf^B0+KFdS3SR|1C6#YIXwlV$+0^+r{;Cgg$R)S?AJES z)fr+`KhS@54yh@2qoUrGLo;z}ZjA49BQ`aFDTS$_YoMoXcb};*JvS=K1B@9`2ctEe z7g5?-)_5H1_lBgaw_p_4wSk()!cG~Wo$Qg`_v0yjrrIxJ^{yH)AVH`jD+bv+m19>b zVgJCtL&S}u#UC;EBR}O>E8K?_%am_uj8f2`^d)RbLO9>601O!BUt<|;O;O7s;nCz2du~MQsK-D^0 zn*;d5-hO=5BlEe01&Ga#jxy4Ec>17Luir-^e{Ou;L76?;{aGEReW^I$obB&(w~|Nt z0R5get@U!u&zd>LU%68ax7UM|lYuMZ*-EHJIl=c~#_vI(S7jsxWA*}SSR^T=CJ)c} zQJq>fKia>iX7eJ->_-FUpvu_guBb44S>}AkefiQe`rM|(=beNQG&z+TH|Fk; z+it)tGrjkOjg46-QqkCWkbBVKa{Ncb!fSq5Cwm%p#^Ea{VM9O&{y=@{vpOqo3MeqO znDN2POp`ScZbtUxQQ5a^Oa2X01qU*;&RHIc^HJT9(cWl&d)$L|_&~RL+7njx#(;5q z?DlV#+7Pp0ujmH9A<@kzig}!!;YH?ET`3q*G-3BOK~!jt!NYs$b87=5ta|lMY!L#> zet%WR8TF^`^5E~6$Q`-qgXBrSxFcUQh=$+=MY-NC175vZ! zZ^=m+e*2AmexSi_@p<<)m0fQ_Va;YbxQU~zf9ugxAKzsU!Q(yz6P^zLse( z%xgD4a7BswF)3Ne#Dl)8%N>r1I7TsC#&z5CHEVf+@nhE(Cz?4Ej{`ASH6J$YiqdY` z#0=#ozrC>-m0{SpjzlxzfLNciAewz6eet_QLf}(fEYuOVhpgl*9lrx zrZj$0o4l1SrMji+itE4{-s5LT7?dz#bYdtW3veemG?K=15}53j#=^#iZgHnUqtzQ` zKlJ5_gE9a46et>8yjvwLrEa@6x8rN-#9aN^VfJ7s>miW*zMWGrGl%~0Wr#F{xN`&> zn73#btL-X~s?fE#NnmUij6whweQ5B-@{e+5ufvdk!YZ5Cg_~z6nU>k!41a|aoJ=-@tmzHs_+RNB#E6%6uZ^A zi3v$#EsnwnuTMkC$eG6X8z|**+cdl*O4%aNgZJk;!U78a(oZaz6CLs@e$d3p5I}VI zw=k)WdlPEOz37e?12R^Hj1|Rdqt_0p*P|52qdQj+Nr~&j>6rcfEW|*D>bRdgExW^I zyrk)7m1eslv;p(R?k>JiTHUqeh(f6=*N)77JSXL*;1V%QvvqCBya?RV9Zi_i+va3P zqcUBN?nxJ!TSH2_1m_1jS`hkxJT)CoQ0%sAEev>`i81}|zJT9U67o3V3k#lHF~5Kh z(30=TZB4KUzuwTSe{KvyD3N{EV0ti|z+$}L(Bhatm;a4ZYjEQaBT?$y^Em9R!(=`& z!+3vG^5yML1GmrdcO72K@?wr}e+m!(k|h{uu_6s2GH^GKwTgECHiFx{wzw|QScu)uzo zBJ?~syqSfCN6OEC$j`^epKi^UJNG`vI&ipoH*p}LZlfG!uME%5o-oj1#ywol%Vv(Z zge{=*7z#ds^ntBy;W+zIVRLkSw|YL^d2Maq%<WinsjXyvR8VsrV(6wQR9?VJj4zd%}gZ+2?zgYEkcm0s#uQ0+w(C`kPc zl8IzaM6DY3LVOq$J3c@EeG?WG=wimbgdVOx=c<+K*gCAV`HAjrZrP?M26-UOdUZYs z)Sn|3^QQMM1#?Z2Q0i83=}ta%H4l9ZVV71iE}7bG8^equc~RwftLgLGRq-7{R;>=M~Y9Z3v5 zgR@BpOl8dORNFe(5yqlY{JQ-*VJ2i5)HF{le~_xpRW(sFyOQJa5ID}Q`k2I~T|gA+ z>kkOYH}2FwLWF}iqKjuk+Ui$zAuC}U2SWyTB|SZX4(;i^)gTYEJYCgKumH~Tzzhpf zR`JpcO`v&cUbAeRLWqGP1HBJZE|tEHzolqk9s*yIjIgjWA%Iu5F0!f?hsu#Hsc}(6 z?^lk}?$7lGmdq{cy+I!ov&^U}MqDbEaI)ZCT|o74Z&I%-`2bMHDOh$llMltO{2Yr- zT4YNG6i~MXcZHhX>e77qgJ@V+>uR%v`{$v+ib5eODl0AHf!YqPeqRD8o0=T>5d8*2 zYi7gcV&p5!R}HJY{F;nYo=Pu?it>QdQwW?4zO33EQid_ktb-9H$en`IN}39|Pb_Er zX_a|%5vUk1+VbBr@>&Zs2K(oZFtox9tWM`?LgzD4ZpEz8F=Q2Gfq@957LLBqI$KOi zcCN%f)l_~=1Q2g+`_$>91;s3y*je;21a(#|jw&Iul7M-cahqHB`u@raj1)=?tq_JH zvJ8)GT%Xj$W2g|Q&Ew;UE()(y`5HfRT%TawvcX3y$*(U1jsh*S$=j%+ASwz1l7k8w z?yq+_SXlAb=8fTaA|5{~U1_Mnh?*4No0Wl~Z3?EWcnPrad{{jw*`wR^_xes$PR zT@_2v(O(%E%N=S{fXNyn6x8kAyiwY?@oc{e5QhC43f7fuZ88s zx5NmQm{X`Bd3p}nUjJ4x>U{#0`DuG|p5|%kHQm7IGHE4EP+98Tk}grBRP}J~cfi(G znl-XSaob%Jq{$yjkO;B}ZVjS35Dc3}n=K_|#0czFTxbi{{cA3Q_P_81|fj?@7r!I_E(4lX9OrmO`jL#u^&EEm0Dr902Ns}$+? zJIg}e>+3+Q!d?p}ql*5@zlU@)#@xR<6b)hoEU5t#$ihpM&J@Xj}2tE`FJvCC@62YpX7bzb& z8zV@#Z|+o#eXU-zDfsa;qrw$lZw(G8K%g6|Z)5Rf;zgJ5X2>;+Z{@d*AAPhunXxyK z5~q05KGo66EP~MHO3uF6RmwlU;lZuylAs#k@_b zVvAt;nnT&XT8X_vwL)%oO6W#UHek%%;UM@oJlQXWZtcShCX;QRBa%+!6H z$%!1zfZ^_YquSJ%#i2NGf&bF1_h(d##Rz?WF zj!=|JMV9AjBQ38=SdCfsZOZZs1+jSq0%tbHQt@6ZMPHa<|G4Z9g!&_43a>%YHx!DF zDafFGI4@>R++LPJ1sP){uJqK`Zm39V2SMc9BmJpKdN70V>%bU5!!0{9Zc5DCVJ=TW9wxrw3NTbjPB ziVH^woj-$>Y~V&_0g{c+h}QEYtf5F`7!2q8L;-exqvyb_V7F^m5kItV-s0TDjsXDO z&XIj}y;*UF%)xaS1A*;<`~t=2cy*#bOHRhvgb68iXhyGegm0!%6sR^BOIo@<=}Qe2 z3siavifl(lqOh~+qu9i&)vRy`7kZ>-ze-K~cn0c^vDc*@+wH8Ack>^zOaj3XNm?uB zjT|xU?_o)B#BhX+j<0ta1gv+v>wP=wfuNc^`f-*%(74(pKBKeISjWq*GI>LYHj|ic zCKpIa{qCRg=!755$#NKiuU}=D_5wCV7Fy_90K4qn1^q1^!vxFsqxxvGAM8$!ZtR&; z?4WWs+{BH1TCmoWbe}GAvc20u)X+$-y{;YJ$;ewu1zMh6qFHM_X_T7;O9WwuX= zQ)<&5?#zG4(Y5MI2F^%Li6d7Mmd_WaVSb-(v|rtbt>#?CA^f|7>5p06E9q&>&iL;W zN*S1E+s#3RLgX5WHiOAgayhWXr;|dE5VT@o^fhz6?vWM!c8tAxXPxeJ1A$JEUk0P{ z?oLi=Ji$D$Q1N8FxbYq7=I^a7xsHHOf_Gfoz(5`oV#8!18S|qv$i;SyU5zo89wF(g+{k3zqPPt z|G;>pr2YcKU1ASl4rcDY91dP1wRu(GE#wtyUifjG1c75}v7sinn7u0&BBb^$j|wi< zyw3y^GM7_nzJck*tEuU`oJ){YZI943M~!~#&+}92B6##w(h_7pj-+L;5hFQ$rj331 z(seCpES>c~FxPXBkGPD)?Tyw;cwzu2{|oJDf)Z&sKPM1Sk46= zh7qjrx3NC4g4pas{dD;_qu;n)kidXVk{*uy{gz|ShRaqI9Zk|~taIsCntvJ;`y-9y z5v;ck6T%F#iY56t$c*e31Fc63q=PQlIjxJ~>5QQ}Lw`v5TnMvfOn5X{I1ak2Br8`2 zvl`%z8qZF9&@N#2hcjvoub1!JpQk{UkEF@O#;k!L6OxNYo{-E6pAER@z)~+j zQ%qX4@?vZtj{!)&&6ut!h^E{L-to(7Qj`h~>S;qg!X&&649*^Vl10dbD?iC`IU0)| z#`};5V8f`7iB&>#l<)wBLjLa1#)sK~M>U74iOnM@QPLAh_FVkVvGzYB2rwFig+JKy z5DhoRg_H3tF~I=$Jhl<#lbd=R$qXdRpHVRpx1&4D_D!@?+6%6*NHG6(>ZLLvJBguy z;<*rFWmqm?_BJ}z>w!L zE1H|>x|o*}{l1%75%SO2eJhKkz;PkI%(9~;s!$XiXAmPIlVCPAL?W+rv<42g|tkNnwr zm3xfwhHkwe7R~$$UQ!E#*|bFe5MRZIh0wPYa;c6e^~kw4?S>b(N*6+l+*+iVm?gQfQVx+)0=({Q;5j5o`&tU}Qk4t737s%Eo z6M<9((KJk8i5%qNucYjl&Bl^CycuOQcce6=!9egx$RgdsAWh1 zc_iMBT%jt9$qOL$$g#wREhO|_A}kPmLOIT^ER#&KIgH@1o7+)bZDfw}GX6BCrZ(Iw z2Js*NdxNX#)vOkvaQyl_+_HH*Xye-$(Mjrr04!ke3oyguM`Iv8qC|t0n#s8Dv&*F|QziMW>Morh zF<#J^v{Guixu652);Oz@vdf_AMDh5mr2lQNv3F1d~*_We6)+m$cjI*X`%5!#y|6jmFoxNR^fzI`OX?)c-k?cGhF1KCIfYM}WG8 z{kUZnd!ugt5|C)g2o&{irfjh_0!(TxW^ zLaIs%CsU7aR^y1_EgZ13NL!R(wgp0FcBE<|gcMzP3jRbYDITfSUpCp|HzwAQ!|Lcp zn(-sLSC)$F=gAj5gQ=6QOkmBcIOlkPis7|5=*tV7AdZ4sgSja;2GQw~W}+vc@7XS# z9d-5LJl^M(=-DD*>p7`)BH{b6RXE@jIjzw(akL180x9qjeA4ZixL9dL#p{{2=K{L! zOMyR0#`^=Og~PjVO(bs43&~13hhV5xn5ISFaq|a3Yh{4Xcx-le3$O7HKBrW1V~d;4 zlIn<_t}ilc0VIaX3x3CP-@}Yv=}Al8Aag{sOOpKJoYKwZR^nvC76>CGkhZfRv8R(* zD_6P^%I@|eEYIGn&@)y(_mO{eh-JF%b$NNK0+zsdr^@o*G>oKgj6$e=!RYm>{BF?Z z3iU3KAnDiZY7=x?Qw2}*A2VZARLTX=-UvUb^%F>S^|{8 zWHCV-w&Z*_!k}vOf{PLm0Dr!w*`SWcYp;`y{fpfBgAyMrV|0KgrkeSg$Co_?hu*tm zBS%LHat_Ya?F({r__-@oRQwwqfv3k$zJu8Ef{#+aXpt=u|-~0>>_RCOCC}%h9OGf!WmEf+?GnN4`3P#W5Tse7i<{tUk-N}x-G5u8!gr1R$TAzW$ zdpz~6&SV$#56xd@?2T`(@x+At4=3MVirPCaRIW>oSY#2s2gU`N1L=shCiXA1rq5_O z63vmZA1YIgtJ6LS6*>qfVY|oj_U=~hN0ohFPlbyrb#twel_YOFgVLD9<)&01pLx13 zfTW*FSv(4Wt0(*F-QpUJHO9Tpg96)jBZP|(Q5-U8US1!*JIc4$BnDdjIYcn(v&{!1 zR_fsXIW17ui%>=hzuPOG|BJn&e_{#JaimF)N?5P~G3iJW74^8!b7*3#<(A6AN5J{* zRUg<>e@UgOmeywhfhktg4U)r{oO`o&@Oa*JXqk>UGFVme>U;BL$ zaG9)G<@|D`B_}Uj{D)z}@qGzx#KlT>E$b$Pr6w*{*r1wBv#MT08+g^Bb}Xo!xm^e-7&K z2w{vIUC-!xg;YmR1N+p?C8I1U((%I+uJ<+OA$s~kD^PG#H~F75{L3p}ut)QB3nr?Y~8?8aFk5J`JbyeQ~+@ z%>*0DvMInf-p%!M%X&2?{Ceq3Hw8mVt0ziLMm2w#eMjARQ=mk}lwehIB7b!+cf$3J zPDdS%E^$1ZU-F%~yrrrA(zB+7f|9Ru<%C4+3ZrINhipZ9ru@Sdh7)^B4_?mAyktUEN zxtuLL_D<_2mpf`ZpKGY%1`V{sa-Ym(?-LrqDQ7rDdZnEFisa{R;64u8awQ_AbFwNJ?H63yWwuOu_2m zPO5`>xqq>I7SY}&9hK0HGVk>t-bF+^6wkLIVElwO4EqxwHF zdW+D8N?N?`@h0~!{`zgKDQSH@9f16&Mpndk7rLL|{a!37bf$ut4nC>ezUDvyPQtQq zK-XgD?1;Fd3zLiW7&5_?+~hoYd6(4@&yqp2M%NZFpq@Oj68Ru|fa_DAU?iW4Cw)|K z7C28%;V|c?O1Nc13)f{f5g3!B1EKSJ!}D2|Y(t29$plAhocJKi3uXY?rvoP~0d)_L zClV?P;4Zkc*%Ud^ZlOd1%O@WI=~6eQ zx;UDofj zzQJb}7huFMrXvKjh?xbLq0yVWULbT7((2P<>mU4<8>i0&=we5Rnv4X`9#a!|jIbbt z8rTdtG6AwjDR|>*ba8Y3I(Pri%F=@cjwK&o2;(&-6n>X`WzbY@*26UjGRhf?UK_if zx&2*l@GDiV5g*PdM12k=A7PDB61!yNw@(xp>z*8+*o|9*#Q8-ctYc19@!eF%Q!-3+ zKoCxs`*zZG?r!`2W}L~Jvya$f1GoA zzki+bLjre_O2O0;A4N%ICB_)9Tg{Y8B2)VVj#RUQ6bOWF!fNEJ=?s4)LL3)uF9g$8 z{WQl9FLYMAUPwPX-05aPh{RZ5B2sKNx*|bwkqLzGbc}bUisckj0UpgOEpI zs*U!L2{XdpCX`rKdCJ|0uUkhUM8u(-S0U1eK=v?4q$Xu+NmGoD5-K&zU!gxc^4ND6 zCBC4&nsYS05wa_LPB`MzV!?f_MW55a&i8XyQrnN79D{yb52vT52~@L@DUA#fA%a7j zY~wVq$aHB=&#ZK;j9eXj1jP$MI)`^WYG#H~MBG$-y@P|?EIeE_$i{rQ1%>n~-0%{~ zuVf25)YTk)y_zW0N?K+CrShpJZkWfK?Oyt}G;S8rnS@ywr5K%_QtKjFTRhQIx2$|O zRB>oQqwz*{n8&?77jsqMP8FJ^KGMgW^jZfveD){Up*rVUU@-H2m9|tCJo^qMNmBW!osenI)wM?xDV=n zeMU6}IW>2FE2n_3dd;+eV!&azVwUgMqi4y-zz>I5tC;lnB#1e}SW;^8Z=sDiMe#2h1X zFP-tSA0B{y3NnM?OQ;(Lg*C-~E*UnOF+6=>P*FFMHFdK*Lt6SiA3Yl98%p z@@z(%DiY%H3Al$?vu=*^`$bTJ@~JA{{m2`Db*YT?2?js>2q*cY3VE<+uZY^)x6Qjq z{tdp^eJTE5Q6QV9|D6K)N9h>I$;K#h2X(?6WL>s6y5?@7WHyp#XqEeh@nsHbb!67uqa%hW#T_&MS;>n{;<{3DxiHu?LC8qKdRE(?In z0hL(Ylw><}38X}s2QE)oMy>&8@aNn;HSUJ=DVUdh?ADfg{t)waO6%&?y~@cJKW@V< zP_mg@m@-eTt*%8biqrV#$BZ7*O=UXssL*K6n*3Z5-}-c=jsCyt%rJlJ%!W{6v>sT4 zm@1=KG>J}3kkm&=+i-Amqx43Z1noDBaELnC+9f1r11Oju{BxxeEJM~` z2Bfq~WHaSSlvgHhDIXU{{5w?{YJv3h%&yHSy{j2!!_6Y8cZUVzRhPEh^*L~n{{F}+ z)oTNUxd<33W+}_uiquWp)NT6uEWnw+I-(wVrz;j0CB#?(MUW|F1;WMaO4E?i@5kR) zV%~jl@sjSXi#fRO6=PRgSQ5Jd>KYg}#9}DT!u-Ily70XV#!4w<=SOzj9yz3ZuPttq z#Nv{j|C>F42T^NoQq_qe=L(39?!~f-t9Kb@ro+N!r$C>ti8*Kers>Gha3?D$Q4Fcq zwPPJKL!}JKnb6*e+!rK`jT+t6SxA6Cj!(EbP*wiJUALGwyz9Hw*vl=V&Tck4K8(l>1-}tjKOt5g9o%jP zrXYci6F?R0UzKWZvy55&%$SA9o>oJgdk(0^w*N-<>!Z-!HkR;8P-|q!Q&8DAv1dI_ zQsvo#Iz1Q7@d*gOFOt8H;4Hqtn~A|&t=i(2 z_J;si_||;we+Uu4+SafK?~8g1>&x->^uCP}QRPy5z43+--AfYT_8t)@?>Hm|PjtHsqU8O>cg4wir+j`ig$1|+XDn7aOL;jq{n@b2vkK`zbfKRfu{~R zdcN?{)sg&(#6vfVmDTg>iBHGJypPSwIY}B$q=Mcb&H@-=2t{OmDl9L%7%wvQhJ^M~ z1eaWcK8BWBX03AA1>}vn?uvgiAG&M7NHx~qn4u$YhxP3GJr`{^g{CO|4u3vP?bmEy zP{g;=8i_6u(n;Kp78y?bnINShDS&KxQ7aQW%c{uB6#t^Gwei7 zdypV}dW~>hQBYUbB$WLwxVpV@Bra`;f@96e+4Gk#~4PL_!Q87}>b?mlDZII+ySOP;hA|3xzUCi;%=RXBK*Q zlws)XUrD11(O{G{f)1C$e`Da0ltDrshFE$}a*f^)j!$DaN1gW+B;BEq(5vg$_Zc(k zmV2|wz5F65z4Ifvzc^(5&t(9eH!cZ)h)x8n)~Q)+Zx~;cwAqG^du8?RsTv`NSglMz zJSvac+(z0Q_&6s&{5x8AO~_mgUtnM`cM9C~;n$)q5=Df0e{oVPxuBVF3pdB-UXWPI zpaICmeOtgbwX&!Vus@%I`Y*cUI}p2rlX9!WFNEqm5_cOsYGD^Ne3t-$WL!VNVBGn| z6$MU%D|}&@NE|S?EeB1Xj~8|U{^Cy!|KIv-EesKTuhPgND3~ijTS~H;Xy2S$VFClC zb8%#RT*=WJqE1=W??t_kF=39Ki=v@JSyK_BN_c1V9@}JKDn+C_>4BQcNC6n74J2)O zd~c3c#K~8q+ohpW>dD?0Q<$5-As0L(u&|<-B3dHTq|AKXhV!z%c7~7cBn$ocLe=7i zadCWPaBg@|xKcxZkE5QeIN*W)Xr5hQFTv$O z7v`&7-^(N4oF|W~H}1|&5-I6qVJWKe6PCzFRi|RxYH7m$U_<^{D03c7Iu3rX$1I}9 zoSTjHenjFrT+z$UAiE1ZJz;X95#e7^M3_iZo6B#ZeZpJ0ekL!isheJU)cMWNY-eV< zB8*SuFA0}qk7$Y`reJW+a!tuEYkq)$nSWfJ=*xZXp825x@ns5ynu@+P%B0|mnY`u&42Z7xj(?^lHv)a2%Ug4Ae9ct6_&7u>3Xe- z;2aAvMRH85qox;|iHg1B!H_f5%ZnS6w`=Jq^Faz9yN*Ih6hxEb&zxn{g7hyvmW&dK z<{AbgfR8J6a9oWpV=jn3=^&ilthq*DQePqPN2Ad9=tv}X1LwlHND!mfJT%WfKBQ5ju!*tqO!xA3LROJ;R8%=%pGRf6M-CB4hrT^{-< z$y=UCPuC9aTsN~xvs>KC^jb$>%AI*#P^^?68J*u0a@&3xPquGc-3f^ zz?lAeM|)~8x%d8@=WbTG#Dmh7sJWCZ;GA+jjp3DMMY}ne;JfE_T1`xo9U3Dp%aA=5 z;E|Ch_YW#ym*nQE-MR7E>TY#P;1N)|^CKCASY+fEPfkMz5I8hy9qY~cu# zcNZwYPk;9hdUy8i*hIYzvAQVzauP1Z8>)`#X?R2O`;eM7vp$DE*Kv*XIxM<*7Gol0 zFqk)|SBZlow|NokF9UB$q6k0kUaq&Sou94$F0AwRVs-L$jZ#9t$2v1R1JE66$0?BG_M9*t}MOnErNNN=gSvs!9h zzp%phP8kulL?-0IzB(RT z&<^;|&k$?7I^Wu^;@&))Fe^42>b2L1s!!);SpgO29!BV^??VR;!+8jp3#n`a5s`u*R ztQ84i$ik4(4@8X_OJFcmk}eNQHn2GW(`69IYE!8msy6O_;56W@9XN?#DIlcOzod|C zjY1kKVs?3bpKO~{I!QGm&^9(cF8Yzvv56~}6f&uweDg|R-Y3$UVNS5fLZ%$5X>E8X z2-m?S==Ag7UI4cq2d&rE@jGnbExt#0tfvQM|K5qyCwOm%*E!oNIT(}60U^5!ntme- zlf7;Dj-Pw2Wj53IsjPh=oqXTMSv~MWktXXb6|Q&c$c((jU=Z!i9vTo=)j*IY?DgN$ z(#wZ6*_H?c&js%^_tP{$ir6TtJx%w#}BLthK5tb|%9;&j{Tr^eZQ z?{m==y2Z#J8)#TG_6upby7{|&9a4AWq4QTb&&~Unt0A0it${>7r2VRRsb^hmJWtWc zmz)MF7Rlrziv9fbz3Y`Yn$o|>x>7TBxD5Y zmxPu4-unT6Buq8!wGKAU0l~vgmM}lyoj=!>d#EeX^$|NqUy2 zZXFm;)qb}Ala=*0pWnk>;#%uQynl(bN=pq=q7=;mfXR>99Va{H7fjOZQ_i8xWXlTVav;LEkP`&VLTf_|C|Ce+^2hV66 zzx`tF)qdbQ82@zCC!>9MB43PgJdT}U zjmk2_r-Ku1EJW=2Sq(@oS+CcF^q^$)G2Xeu=bmIVeQ*XSATxw_CoU)(_E(h=B(1do z^Vc};OiQ2K_f8pgpPM+o@GlFv-#A^bXIF9l3JAJuPDjp#NlzY}82J*^=_TI+tATUzoZ zEF01%5`vo1nVDS$Rk?r4JuZf_?$nSC3@y!57u~bOYs>{D1NVBrTqRZI+yR||2c$vj z9UZh@r9B>9EUb$UoB>*N)U_|Oq9;_?*0Q`bZ9+M?v0Q|ddKg+E&!^%CxgG&Xklr{* zH)tq<78dhGpX5%yIL2GCfgw+7pjPd&k8lO>O>dA^JHXp;v4}v@v2ln@e7gL)I%OY+3k@zDoCbIs4 zA^U11oT+%}F0`)n!PiKk&=2aI-nLbnap#TJ=B}+DDvwilzV|p~1J_D#RNB(}7rt!X zKGE!2>TFMsCJWJ6aE**eU~BYv-t3v3znu{51$)ERb^OYYpBxE)A7=o~yf^cL2GMGM z1p_B>BquPs9hH!Vt$2w@jI8KIPsAH?G3HN&jeDo+Z9e`gys_YkPt)k{c(NL)uo^O9 zYJ5qHS*ei$6UwY8(I}5#jO8R%Pk*6V7hanbfbv(`?m2CVN_&Vou-Pj^v*@(lCvXEo zKp<=hln59Sf4!Uw?<9@iS6S?E>xq?O1&83|M?kiM0OxGDfkd9QGX0p6VEb6OPXSdU z$rNPV&3`(bLLfPxOvAy$!p+F`VB%%Uz)P#rD=L05dS4xQ)Mf%er-gHw#2+R^8c6w; zB|FLBsCj~Ry~ou;m0-jS{w+DMhGKPIKHm>lmoq7k#IH>Ru}9S4E=WnOz4*bG%p9B3 zMq(6MsrHp^ZOr$=Ogp+H2Uhlp&cZxl*g!S|9T?Y9I~~j!73OXM{S;eEl``71Y$wA4m-BU%DS(okAJareEI) zHM@($ce-}u?;%L3Da!>om`>Z=n=Oq15CIDO}?RNcs%7chB&ZWow5*J%G2UGEqj3D<3n#x^=e$F}XH<8*AB9ox3;bZlE4yJI^Q+s;?d z`@ZLV=iYnnpZ%xC*n5nsU2Cm9=bCHI64?4JNPmu_pRa9(7mrB*mS|``eEwSTFBC{p zMf9^Dv*eJ%e)db_!ksc}21I%yNI>=kfFQ|+Nw4sI!FVCLeG>PX3e-A!t<5_3WrE-& ze0Pk-rviiK?}jCvr&#Fj&8 zheUkY(mes6F~1foy^|}{UVXUEu_99gE984H?cdDmV{I+5Sz;rEZ{hKvuC!iAnv4VA zl~M3cL+Trv8`i1V136ScT@x;#tA5A8?)IBtk`7xaUep+RftP`$IG<6V?4IcnrFp20 zN5m+h;+;d%K%(N(zK*9x;fmcON*fI@ZV!Wq{6@1)LiC}xGxhr2%IoEkoN9i{16QDq zcC+^biLhHS231NO%2;qmQYBVvept5N+>x zN;T~%byv0}S3$raB@flcQT8&nUKVN2Yk1+n!uV;n}%+7Ca%-~(GQqj{y?tE z0Mf9WBRa}cCLN}n>99`kmZOTMQi4%NBrvug!W+xg5w*U~Jc5C9@Ux!7vq1G-P;1(R zo)4wk<2eVZ>x1c^B3*Z;6>0hM#(L?_UfS)NXs6F^e6fZNU0fEn9u^~X43lb_z1A5u z2cGZI?X43ic5u5y)sAXnOx*Y=2W3^joG)HA74FEWvPFn3av72jQD3fFYbHhuv&90j z(cg|L^Qfb9o)-$bt~9wHTU>pS}*rE;H;o4_RkEmu=8vbBU!?h`p$8`akwP1 zqe`yGD`MN|6yvA-Fc9^i<4qFb^%uIX3-SKg zU_ZR{SjSVx-4*X<;^h$IV1737-Aaolu4g?ce!~dqH2aA*xuMZyRa`QPzBaJ>Le<2t zH=|1;;g4helZa#T}6NCq@@w2Yw;2uikyRa%nC<=Mt}e{Ha4G72rO`fk)F-$CU2 zfv2u;tsi^GC^nslw({P1j}o!o-q}+!jv9AjNEsz4p|S{kyj1GYbF@>#5f|p?7K~+N zwPNxMf9;~v(Smi&|2WSkbWD$s1MX;m_b0|2K1dt(+VoO|{ndrM%0A*=+?q8oPko)- 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/stock_widget_table_invalid.png b/plugins/ui/examples/assets/stock_widget_table_invalid.png new file mode 100644 index 0000000000000000000000000000000000000000..2377707de8c4b89d3b3982709796dc755e527e53 GIT binary patch literal 14277 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/stock_widget_table_valid.png b/plugins/ui/examples/assets/stock_widget_table_valid.png new file mode 100644 index 0000000000000000000000000000000000000000..7fdecb55133f4d89b04e27113cc22356debef1aa GIT binary patch literal 143523 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

a+|{ulc?ie#IN8@q{WP@8|D5L1 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

aCl#3vd4aiAxoN@VyV5nC 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/text_filter_table.png b/plugins/ui/examples/assets/text_filter_table.png new file mode 100644 index 0000000000000000000000000000000000000000..143c1671fa2ea900694344482ff42c9b46429891 GIT binary patch literal 141445 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


#g&t^r>5$olop{ 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/wave_input.png b/plugins/ui/examples/assets/wave_input.png new file mode 100644 index 0000000000000000000000000000000000000000..5ceb20525d73b585ce077690e8a15f6b1f61cb5e GIT binary patch literal 94362 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%0Dv*&T>HM0|A!d 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 literal 0 HcmV?d00001 diff --git a/plugins/ui/examples/assets/waves_with_plot.png b/plugins/ui/examples/assets/waves_with_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..3101cdbbcf688cfb7844a7a41fbe33d719aadcf5 GIT binary patch literal 68611 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.0.0", "wheel"] +build-backend = "setuptools.build_meta" diff --git a/plugins/ui/setup.cfg b/plugins/ui/setup.cfg new file mode 100644 index 000000000..358cd3c6f --- /dev/null +++ b/plugins/ui/setup.cfg @@ -0,0 +1,37 @@ +[metadata] +name = deephaven-plugin-ui +description = deephaven.ui plugin +long_description = file: README.md +long_description_content_type = text/markdown +version = attr:deephaven.ui.__version__ +url = https://github.com/deephaven/deephaven-plugins +project_urls = + Source Code = https://github.com/deephaven/deephaven-plugins + Bug Tracker = https://github.com/deephaven/deephaven-plugins/issues +classifiers = + Programming Language :: Python :: 3 + License :: OSI Approved :: Apache Software License + Operating System :: OS Independent + Environment :: Plugins + Topic :: Scientific/Engineering :: Visualization + Development Status :: 3 - Alpha +keywords = deephaven, plugin, graph +author = Deephaven Data Labs +author_email = support@deephaven.io +platforms = any + +[options] +package_dir= + =src +packages=find_namespace: +install_requires = + deephaven-plugin + json-rpc +include_package_data = True + +[options.packages.find] +where=src + +[options.entry_points] +deephaven.plugin = + registration_cls = deephaven.ui:UIRegistration diff --git a/plugins/ui/src/deephaven/ui/__init__.py b/plugins/ui/src/deephaven/ui/__init__.py new file mode 100644 index 000000000..f4e4b40a2 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/__init__.py @@ -0,0 +1,18 @@ +""" +deephaven.ui is a plugin for Deephaven that provides a Python API for creating UIs. + +The API is designed to be similar to React, but with some differences to make it more Pythonic. +""" + +from deephaven.plugin import Registration, Callback +from .components import * +from .hooks import * +from .object_types import * + +__version__ = "0.0.1.dev1" + + +class UIRegistration(Registration): + @classmethod + def register_into(cls, callback: Callback) -> None: + callback.register(ElementType) diff --git a/plugins/ui/src/deephaven/ui/_internal/RenderContext.py b/plugins/ui/src/deephaven/ui/_internal/RenderContext.py new file mode 100644 index 000000000..496f4ad11 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/_internal/RenderContext.py @@ -0,0 +1,128 @@ +import logging +from typing import Any, Callable +from contextlib import AbstractContextManager + +logger = logging.getLogger(__name__) + +OnChangeCallable = Callable[[], None] +StateKey = int +ContextKey = str + + +class RenderContext(AbstractContextManager): + """ + Context for rendering a component. Keeps track of state and child contexts. + Used by hooks to get and set state. + """ + + _hook_index: int + """ + The index of the current hook for this render. Should only be set while rendering. + """ + + _hook_count: int + """ + Count of hooks used in the render. Should only be set after initial render. + """ + + _state: dict[StateKey, Any] + """ + The state for this context. + """ + + _children_context: dict[ContextKey, "RenderContext"] + """ + The child contexts for this context. + """ + _on_change: OnChangeCallable + """ + The on_change callback to call when the context changes. + """ + + def __init__(self): + self._hook_index = -1 + self._hook_count = -1 + self._state = {} + self._children_context = {} + self._on_change = lambda: None + + def __enter__(self) -> None: + """ + Start rendering this component. + """ + self._hook_index = -1 + + def __exit__(self, type, value, traceback) -> None: + """ + Finish rendering this component. + """ + hook_count = self._hook_index + 1 + if self._hook_count < 0: + self._hook_count = hook_count + elif self._hook_count != hook_count: + raise Exception( + "Expected to use {} hooks, but used {}".format( + self._hook_count, hook_count + ) + ) + + def _notify_change(self) -> None: + """ + Notify the parent context that this context has changed. + Note that we're just re-rendering the whole tree on change. + TODO: We should be able to do better than this, and only re-render the parts that have actually changed. + """ + logger.debug("Notifying parent context that child context has changed") + self._on_change() + + def set_on_change(self, on_change: OnChangeCallable) -> None: + """ + Set the on_change callback. + """ + self._on_change = on_change + + def has_state(self, key: StateKey) -> bool: + """ + Check if the given key is in the state. + """ + return key in self._state + + def get_state(self, key: StateKey, default: Any = None) -> None: + """ + Get the state for the given key. + """ + if key not in self._state: + self._state[key] = default + return self._state[key] + + def set_state(self, key: StateKey, value: Any) -> None: + """ + Set the state for the given key. + """ + # TODO: Should we throw here if it's called when we're in the middle of a render? + should_notify = False + if key in self._state: + # We only want to notify of a change when the value actually changes, not on the initial render + should_notify = True + self._state[key] = value + if should_notify: + self._notify_change() + + def get_child_context(self, key: ContextKey) -> "RenderContext": + """ + Get the child context for the given key. + """ + logger.debug("Getting child context for key %s", key) + if key not in self._children_context: + logger.debug("Creating new child context for key %s", key) + child_context = RenderContext() + child_context.set_on_change(self._notify_change) + self._children_context[key] = child_context + return self._children_context[key] + + def next_hook_index(self) -> int: + """ + Increment the hook index. + """ + self._hook_index += 1 + return self._hook_index diff --git a/plugins/ui/src/deephaven/ui/_internal/__init__.py b/plugins/ui/src/deephaven/ui/_internal/__init__.py new file mode 100644 index 000000000..67a4aba5a --- /dev/null +++ b/plugins/ui/src/deephaven/ui/_internal/__init__.py @@ -0,0 +1,9 @@ +from .RenderContext import RenderContext +from .shared import get_context, set_context +from .utils import ( + get_component_name, + get_component_qualname, + to_camel_case, + dict_to_camel_case, + remove_empty_keys, +) diff --git a/plugins/ui/src/deephaven/ui/_internal/shared.py b/plugins/ui/src/deephaven/ui/_internal/shared.py new file mode 100644 index 000000000..e2fa613e2 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/_internal/shared.py @@ -0,0 +1,28 @@ +from .RenderContext import RenderContext +from typing import Optional + + +class UiSharedInternals: + """ + Shared internal context for the deephaven.ui plugin to use when rendering. + Should be set at the start of a render call, and unset at the end. + + TODO: Need to keep track of context for each given thread, in case we have multiple threads rendering at once. + """ + + _current_context: Optional[RenderContext] = None + + @property + def current_context(self) -> RenderContext: + return self._current_context + + +_deephaven_ui_shared_internals: UiSharedInternals = UiSharedInternals() + + +def get_context() -> RenderContext: + return _deephaven_ui_shared_internals.current_context + + +def set_context(context): + _deephaven_ui_shared_internals._current_context = context diff --git a/plugins/ui/src/deephaven/ui/_internal/utils.py b/plugins/ui/src/deephaven/ui/_internal/utils.py new file mode 100644 index 000000000..e15bbd433 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/_internal/utils.py @@ -0,0 +1,73 @@ +def get_component_name(component): + """ + Get the name of the component + + Args: + component: The component to get the name of. + + Returns: + The name of the component. + """ + try: + return component.__module__ + "." + component.__name__ + except Exception as e: + return component.__class__.__module__ + "." + component.__class__.__name__ + + +def get_component_qualname(component): + """ + Get the name of the component + + Args: + component: The component to get the name of. + + Returns: + The name of the component. + """ + try: + return component.__module__ + "." + component.__qualname__ + except Exception as e: + return component.__class__.__module__ + "." + component.__class__.__qualname__ + + +def to_camel_case(snake_case_text: str): + """ + Convert a snake_case string to camelCase. + + Args: + snake_case_text: The snake_case string to convert. + + Returns: + The camelCase string. + """ + components = snake_case_text.split("_") + return components[0] + "".join(x.title() for x in components[1:]) + + +def dict_to_camel_case(snake_case_dict: dict): + """ + Convert a dict with snake_case keys to a dict with camelCase keys. + + Args: + snake_case_dict: The snake_case dict to convert. + + Returns: + The camelCase dict. + """ + camel_case_dict = {} + for key, value in snake_case_dict.items(): + camel_case_dict[to_camel_case(key)] = value + return camel_case_dict + + +def remove_empty_keys(dict): + """ + Remove keys from a dict that have a value of None. + + Args: + dict: The dict to remove keys from. + + Returns: + The dict with keys removed. + """ + return {k: v for k, v in dict.items() if v is not None} diff --git a/plugins/ui/src/deephaven/ui/components/__init__.py b/plugins/ui/src/deephaven/ui/components/__init__.py new file mode 100644 index 000000000..a38a5a84d --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/__init__.py @@ -0,0 +1,26 @@ +from .icon import icon +from .make_component import make_component as component +from .spectrum import * + + +__all__ = [ + "action_button", + "checkbox", + "component", + "content", + "contextual_help", + "flex", + "grid", + "heading", + "icon", + "icon_wrapper", + "illustrated_message", + "html", + "slider", + "spectrum_element", + "switch", + "text", + "text_field", + "toggle_button", + "view", +] diff --git a/plugins/ui/src/deephaven/ui/components/html.py b/plugins/ui/src/deephaven/ui/components/html.py new file mode 100644 index 000000000..24daf20fb --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/html.py @@ -0,0 +1,154 @@ +""" +Provides a set of functions for creating raw HTML elements. + +The components provided in deephaven.ui should be preferred over this module. +""" +from ..elements import BaseElement + + +def html_element(tag, *children, **attributes): + """ + Create a new HTML element. Render just returns the children that are passed in. + + Args: + tag: The HTML tag for this element. + *children: The children of the element. + **attributes: Attributes to set on the element + """ + return BaseElement(f"deephaven.ui.html.{tag}", *children, **attributes) + + +def div(*children, **attributes): + return html_element("div", *children, **attributes) + + +def span(*children, **attributes): + return html_element("span", *children, **attributes) + + +def h1(*children, **attributes): + return html_element("h1", *children, **attributes) + + +def h2(*children, **attributes): + return html_element("h2", *children, **attributes) + + +def h3(*children, **attributes): + return html_element("h3", *children, **attributes) + + +def h4(*children, **attributes): + return html_element("h4", *children, **attributes) + + +def h5(*children, **attributes): + return html_element("h5", *children, **attributes) + + +def h6(*children, **attributes): + return html_element("h6", *children, **attributes) + + +def p(*children, **attributes): + return html_element("p", *children, **attributes) + + +def a(*children, **attributes): + return html_element("a", *children, **attributes) + + +def ul(*children, **attributes): + return html_element("ul", *children, **attributes) + + +def ol(*children, **attributes): + return html_element("ol", *children, **attributes) + + +def li(*children, **attributes): + return html_element("li", *children, **attributes) + + +def table(*children, **attributes): + return html_element("table", *children, **attributes) + + +def thead(*children, **attributes): + return html_element("thead", *children, **attributes) + + +def tbody(*children, **attributes): + return html_element("tbody", *children, **attributes) + + +def tr(*children, **attributes): + return html_element("tr", *children, **attributes) + + +def th(*children, **attributes): + return html_element("th", *children, **attributes) + + +def td(*children, **attributes): + return html_element("td", *children, **attributes) + + +def b(*children, **attributes): + return html_element("b", *children, **attributes) + + +def i(*children, **attributes): + return html_element("i", *children, **attributes) + + +def br(*children, **attributes): + return html_element("br", *children, **attributes) + + +def hr(*children, **attributes): + return html_element("hr", *children, **attributes) + + +def pre(*children, **attributes): + return html_element("pre", *children, **attributes) + + +def code(*children, **attributes): + return html_element("code", *children, **attributes) + + +def img(*children, **attributes): + return html_element("img", *children, **attributes) + + +def button(*children, **attributes): + return html_element("button", *children, **attributes) + + +def input(*children, **attributes): + return html_element("input", *children, **attributes) + + +def form(*children, **attributes): + return html_element("form", *children, **attributes) + + +def label(*children, **attributes): + return html_element("label", *children, **attributes) + + +def select(*children, **attributes): + return html_element("select", *children, **attributes) + + +def option(*children, **attributes): + return html_element("option", *children, **attributes) + + +def textarea(*children, **attributes): + return html_element("textarea", *children, **attributes) + + +def style(*children, **attributes): + return html_element("style", *children, **attributes) diff --git a/plugins/ui/src/deephaven/ui/components/icon.py b/plugins/ui/src/deephaven/ui/components/icon.py new file mode 100644 index 000000000..babcff348 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/icon.py @@ -0,0 +1,8 @@ +from ..elements import BaseElement + + +def icon(name, *children, **props): + """ + Get a Deephaven icon by name. + """ + return BaseElement(f"deephaven.ui.icons.{name}", *children, **props) diff --git a/plugins/ui/src/deephaven/ui/components/make_component.py b/plugins/ui/src/deephaven/ui/components/make_component.py new file mode 100644 index 000000000..11f8fc8e3 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/make_component.py @@ -0,0 +1,20 @@ +import functools +import logging +from .._internal import get_component_qualname +from ..elements import FunctionElement + +logger = logging.getLogger(__name__) + + +def make_component(func): + """ + Create a ComponentNode from the passed in function. + """ + + @functools.wraps(func) + def make_component_node(*args, **kwargs): + component_type = get_component_qualname(func) + + return FunctionElement(component_type, lambda: func(*args, **kwargs)) + + return make_component_node diff --git a/plugins/ui/src/deephaven/ui/components/spectrum/__init__.py b/plugins/ui/src/deephaven/ui/components/spectrum/__init__.py new file mode 100644 index 000000000..6b22be14b --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/spectrum/__init__.py @@ -0,0 +1,2 @@ +from .basic import * +from .flex import * diff --git a/plugins/ui/src/deephaven/ui/components/spectrum/basic.py b/plugins/ui/src/deephaven/ui/components/spectrum/basic.py new file mode 100644 index 000000000..8ab3ee956 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/spectrum/basic.py @@ -0,0 +1,123 @@ +from ...elements import BaseElement + + +def spectrum_element(name: str, *children, **props): + """ + Base class for UI elements that are part of the Spectrum design system. + All names are automatically prefixed with "deephaven.ui.spectrum.", and all props are automatically camelCased. + """ + return BaseElement(f"deephaven.ui.spectrum.{name}", *children, **props) + + +def action_button(*children, **props): + """ + Python implementation for the Adobe React Spectrum ActionButton component. + https://react-spectrum.adobe.com/react-spectrum/ActionButton.html + """ + return spectrum_element("ActionButton", *children, **props) + + +def checkbox(*children, **props): + """ + Python implementation for the Adobe React Spectrum Checkbox component. + https://react-spectrum.adobe.com/react-spectrum/Checkbox.html + """ + return spectrum_element("Checkbox", *children, **props) + + +def content(*children, **props): + """ + Python implementation for the Adobe React Spectrum Content component. + https://react-spectrum.adobe.com/react-spectrum/Content.html + """ + return spectrum_element("Content", *children, **props) + + +def contextual_help(*children, **props): + """ + Python implementation for the Adobe React Spectrum ContextualHelp component. + https://react-spectrum.adobe.com/react-spectrum/ContextualHelp.html + """ + return spectrum_element("ContextualHelp", *children, **props) + + +def grid(*children, **props): + """ + Python implementation for the Adobe React Spectrum Grid component. + https://react-spectrum.adobe.com/react-spectrum/Grid.html + """ + return spectrum_element("Grid", *children, **props) + + +def heading(*children, **props): + """ + Python implementation for the Adobe React Spectrum Heading component. + https://react-spectrum.adobe.com/react-spectrum/Heading.html + """ + return spectrum_element("Heading", *children, **props) + + +def icon_wrapper(*children, **props): + """ + Python implementation for the Adobe React Spectrum Icon component. + Named icon_wrapper so as not to conflict with the Deephaven icon component. + TODO: This doesn't seem to work correctly. It throws an error saying `Cannot read properties of undefined (reading 'className')`. + https://react-spectrum.adobe.com/react-spectrum/Icon.html + """ + return spectrum_element("Icon", *children, **props) + + +def illustrated_message(*children, **props): + """ + Python implementation for the Adobe React Spectrum IllustratedMessage component. + https://react-spectrum.adobe.com/react-spectrum/IllustratedMessage.html + """ + return spectrum_element("IllustratedMessage", *children, **props) + + +def slider(*children, **props): + """ + Python implementation for the Adobe React Spectrum Slider component. + https://react-spectrum.adobe.com/react-spectrum/Slider.html + """ + return spectrum_element("Slider", *children, **props) + + +def switch(*children, **props): + """ + Python implementation for the Adobe React Spectrum Switch component. + https://react-spectrum.adobe.com/react-spectrum/Switch.html + """ + return spectrum_element("Switch", *children, **props) + + +def text(*children, **props): + """ + Python implementation for the Adobe React Spectrum Text component. + https://react-spectrum.adobe.com/react-spectrum/Text.html + """ + return spectrum_element("Text", *children, **props) + + +def text_field(*children, **props): + """ + Python implementation for the Adobe React Spectrum TextField component. + https://react-spectrum.adobe.com/react-spectrum/TextField.html + """ + return spectrum_element("TextField", *children, **props) + + +def toggle_button(*children, **props): + """ + Python implementation for the Adobe React Spectrum ToggleButton component. + https://react-spectrum.adobe.com/react-spectrum/ToggleButton.html + """ + return spectrum_element("ToggleButton", *children, **props) + + +def view(*children, **props): + """ + Python implementation for the Adobe React Spectrum View component. + https://react-spectrum.adobe.com/react-spectrum/View.html + """ + return spectrum_element("View", *children, **props) diff --git a/plugins/ui/src/deephaven/ui/components/spectrum/flex.py b/plugins/ui/src/deephaven/ui/components/spectrum/flex.py new file mode 100644 index 000000000..ca17a7b23 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/components/spectrum/flex.py @@ -0,0 +1,76 @@ +from __future__ import annotations +from typing import Literal, Optional +from .basic import spectrum_element + + +def flex( + *children, + direction: Literal["row", "column", "row-reverse", "column-reverse"] = None, + wrap: Literal["wrap", "nowrap", "wrap-reverse"] = None, + justify_content: Literal[ + "start", + "end", + "center", + "left", + "right", + "space-between", + "space-around", + "space-evenly", + "stretch", + "baseline", + "first baseline", + "last baseline", + "safe center", + "unsafe center", + ] = None, + align_content: Literal[ + "start", + "end", + "center", + "space-between", + "space-around", + "space-evenly", + "stretch", + "baseline", + "first baseline", + "last baseline", + "safe center", + "unsafe center", + ] = None, + align_items: Optional[ + Literal[ + "start", + "end", + "center", + "stretch", + "self-start", + "self-end", + "baseline", + "first baseline", + "last baseline", + "safe center", + "unsafe center", + ] + ] = None, + gap: Optional[str | int | float] = None, + column_gap: Optional[str | int | float] = None, + row_gap: Optional[str | int | float] = None, + **props, +): + """ + Python implementation for the Adobe React Spectrum Flex component. + https://react-spectrum.adobe.com/react-spectrum/Flex.html + """ + return spectrum_element( + "Flex", + *children, + direction=direction, + wrap=wrap, + justify_content=justify_content, + align_content=align_content, + align_items=align_items, + gap=gap, + column_gap=column_gap, + row_gap=row_gap, + **props, + ) diff --git a/plugins/ui/src/deephaven/ui/elements/BaseElement.py b/plugins/ui/src/deephaven/ui/elements/BaseElement.py new file mode 100644 index 000000000..2857c0a46 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/elements/BaseElement.py @@ -0,0 +1,29 @@ +from .Element import Element +from .._internal import dict_to_camel_case, RenderContext + + +class BaseElement(Element): + """ + Base class for basic UI Elements that don't have any special rendering logic. + Must provide a name for the element. + """ + + def __init__(self, name: str, *children, **props): + self._name = name + if len(children) > 0 and props.get("children") is not None: + raise ValueError("Cannot provide both children and props.children") + + if len(children) > 1: + props["children"] = list(children) + if len(children) == 1: + # If there's only one child, we pass it as a single child, not a list + # There are many React elements that expect only a single child, and will fail if they get a list (even if it only has one element) + props["children"] = children[0] + self._props = dict_to_camel_case(props) + + @property + def name(self) -> str: + return self._name + + def render(self, context: RenderContext): + return self._props diff --git a/plugins/ui/src/deephaven/ui/elements/Element.py b/plugins/ui/src/deephaven/ui/elements/Element.py new file mode 100644 index 000000000..ce766a1dd --- /dev/null +++ b/plugins/ui/src/deephaven/ui/elements/Element.py @@ -0,0 +1,29 @@ +from abc import ABC, abstractmethod +from .._internal import RenderContext + + +class Element(ABC): + """ + Interface for all custom UI elements that have children. + """ + + @property + def name(self) -> str: + """ + Get the name of this element. Custom subclasses that want to be rendered differently on the client should override this a provide their own unique name. + + Returns: + The unique name of this element. + """ + return "deephaven.ui.Element" + + @abstractmethod + def render(self, context: RenderContext) -> dict: + """ + Renders this element, and returns the result as a dictionary of props for the element. + If you just want to render children, pass back a dict with children only, e.g. { "children": ... } + + Returns: + The props of this element. + """ + pass diff --git a/plugins/ui/src/deephaven/ui/elements/FunctionElement.py b/plugins/ui/src/deephaven/ui/elements/FunctionElement.py new file mode 100644 index 000000000..4bf03de48 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/elements/FunctionElement.py @@ -0,0 +1,46 @@ +from __future__ import annotations +import logging +from typing import Callable +from .Element import Element +from .._internal import RenderContext, get_context, set_context + +logger = logging.getLogger(__name__) + + +class FunctionElement(Element): + def __init__(self, name: str, render: Callable[[], list[Element]]): + """ + Create an element that takes a function to render. + + Args: + name: Name of the component. Typically, the module joined with the name of the function. + render: The render function to call when the component needs to be rendered. + """ + self._name = name + self._render = render + + @property + def name(self): + return self._name + + def render(self, context: RenderContext) -> list[Element]: + """ + Render the component. Should only be called when actually rendering the component, e.g. exporting it to the client. + + Args: + context: Context to render the component in + + Returns: + The rendered component. + """ + old_context = get_context() + logger.debug("old context is %s and new context is %s", old_context, context) + + set_context(context) + with context: + children = self._render() + + logger.debug("Resetting to old context %s", old_context) + set_context(old_context) + + return {"children": children} diff --git a/plugins/ui/src/deephaven/ui/elements/__init__.py b/plugins/ui/src/deephaven/ui/elements/__init__.py new file mode 100644 index 000000000..712b68b7e --- /dev/null +++ b/plugins/ui/src/deephaven/ui/elements/__init__.py @@ -0,0 +1,9 @@ +from .Element import Element +from .BaseElement import BaseElement +from .FunctionElement import FunctionElement + +__all__ = [ + "BaseElement", + "Element", + "FunctionElement", +] diff --git a/plugins/ui/src/deephaven/ui/hooks/__init__.py b/plugins/ui/src/deephaven/ui/hooks/__init__.py new file mode 100644 index 000000000..3ed0f15c3 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/__init__.py @@ -0,0 +1,13 @@ +from .use_callback import use_callback +from .use_effect import use_effect +from .use_memo import use_memo +from .use_state import use_state +from .use_ref import use_ref + +__all__ = [ + "use_callback", + "use_effect", + "use_memo", + "use_state", + "use_ref", +] diff --git a/plugins/ui/src/deephaven/ui/hooks/use_callback.py b/plugins/ui/src/deephaven/ui/hooks/use_callback.py new file mode 100644 index 000000000..653a7bc69 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/use_callback.py @@ -0,0 +1,25 @@ +from .use_ref import use_ref + + +def use_callback(func, dependencies): + """ + Create a stable handle for a callback function. The callback will only be recreated if the dependencies change. + + Args: + func: The function to create a stable handle to. + dependencies: The dependencies to check for changes. + + Returns: + The stable handle to the callback function. + """ + deps_ref = use_ref(None) + callback_ref = use_ref(lambda: None) + stable_callback_ref = use_ref( + lambda *args, **kwargs: callback_ref.current(*args, **kwargs) + ) + + if deps_ref.current != dependencies: + callback_ref.current = func + deps_ref.current = dependencies + + return stable_callback_ref.current diff --git a/plugins/ui/src/deephaven/ui/hooks/use_effect.py b/plugins/ui/src/deephaven/ui/hooks/use_effect.py new file mode 100644 index 000000000..5ba27d6b7 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/use_effect.py @@ -0,0 +1,28 @@ +from .use_ref import use_ref + + +def use_effect(func, dependencies): + """ + Call a function when the dependencies change. Optionally return a cleanup function to be called when dependencies change again or component is unmounted. + + Args: + func: The function to call when the dependencies change. + dependencies: The dependencies to check for changes. + + Returns: + None + """ + deps_ref = use_ref(None) + cleanup_ref = use_ref(lambda: None) + + # Check if the dependencies have changed + if deps_ref.current != dependencies: + if cleanup_ref.current is not None: + # Call the cleanup function from the previous effect + cleanup_ref.current() + + # Dependencies have changed, so call the effect function and store the new cleanup that's returned + cleanup_ref.current = func() + + # Update the dependencies + deps_ref.current = dependencies diff --git a/plugins/ui/src/deephaven/ui/hooks/use_memo.py b/plugins/ui/src/deephaven/ui/hooks/use_memo.py new file mode 100644 index 000000000..ab437b60e --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/use_memo.py @@ -0,0 +1,22 @@ +from .use_ref import use_ref + + +def use_memo(func, dependencies): + """ + Memoize the result of a function call. The function will only be called again if the dependencies change. + + Args: + func: The function to memoize. + dependencies: The dependencies to check for changes. + + Returns: + The memoized result of the function call. + """ + deps_ref = use_ref(None) + value_ref = use_ref(None) + + if deps_ref.current != dependencies: + value_ref.current = func() + deps_ref.current = dependencies + + return value_ref.current diff --git a/plugins/ui/src/deephaven/ui/hooks/use_ref.py b/plugins/ui/src/deephaven/ui/hooks/use_ref.py new file mode 100644 index 000000000..cdf9281d9 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/use_ref.py @@ -0,0 +1,35 @@ +from .use_state import use_state +from typing import Generic, overload, TypeVar + +T = TypeVar("T") + + +class Ref(Generic[T]): + """ + A simple object that just stores a reference to a value in `current` + Use it with a `use_ref` hook. + """ + + current: T + + def __init__(self, current: T): + self.current = current + + +@overload +def use_ref(initial_value: T) -> Ref[T]: + ... + + +def use_ref(initial_value: T | None = None) -> Ref[T | None]: + """ + Store a reference to a value that will persist across renders. + + Args: + initial_value: The initial value of the reference. + + Returns: + A Ref object with a current property that you can get/set + """ + ref, _ = use_state(Ref(initial_value)) + return ref diff --git a/plugins/ui/src/deephaven/ui/hooks/use_state.py b/plugins/ui/src/deephaven/ui/hooks/use_state.py new file mode 100644 index 000000000..5b4d3df64 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/hooks/use_state.py @@ -0,0 +1,34 @@ +from __future__ import annotations +import logging +from typing import Callable, TypeVar, overload +from .._internal.shared import get_context + +logger = logging.getLogger(__name__) + +T = TypeVar("T") + + +@overload +def use_state(initial_value: T) -> (T, Callable[[T], None]): + ... + + +def use_state(initial_value: T | None = None) -> (T | None, Callable[[T], None]): + context = get_context() + hook_index = context.next_hook_index() + + value = initial_value + if context.has_state(hook_index): + value = context.get_state(hook_index) + else: + # Initialize the state + if callable(value): + value = value() + context.set_state(hook_index, value) + + def set_value(new_value): + # Set the value in the context state and trigger a re-render + logger.debug("use_state set_value called with %s", new_value) + context.set_state(hook_index, new_value) + + return value, set_value diff --git a/plugins/ui/src/deephaven/ui/object_types/ElementMessageStream.py b/plugins/ui/src/deephaven/ui/object_types/ElementMessageStream.py new file mode 100644 index 000000000..6448f9f43 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/object_types/ElementMessageStream.py @@ -0,0 +1,119 @@ +from __future__ import annotations +import json +import io +from jsonrpc import JSONRPCResponseManager, Dispatcher +import logging +from typing import Any +from deephaven.plugin.object_type import MessageStream +from ..elements import Element +from ..renderer import NodeEncoder, Renderer, RenderedNode +from .._internal import RenderContext +from ..renderer.NodeEncoder import NodeEncoder + +logger = logging.getLogger(__name__) + + +class ElementMessageStream(MessageStream): + def __init__(self, element: Element, connection: MessageStream): + """ + Create a new ElementMessageStream. Renders the element in a render context, and sends the rendered result to the + client. Automatically re-renders the element when the element changes and sends updates to the client as well. + + Args: + element: The element to render + connection: The connection to send the rendered element to + """ + self._element = element + self._connection = connection + self._update_count = 0 + self._message_id = 0 + self._manager = JSONRPCResponseManager() + self._dispatcher = Dispatcher() + + def start(self) -> None: + context = RenderContext() + renderer = Renderer(context) + + def update(): + logger.debug("ElementMessageStream update") + node = renderer.render(self._element) + self._send_document_update(node) + + context.set_on_change(update) + update() + + def on_close(self) -> None: + pass + + def on_data(self, payload: bytes, references: list[Any]) -> None: + decoded_payload = io.BytesIO(payload).read().decode() + logger.debug("Payload received: %s", decoded_payload) + + response = self._manager.handle(decoded_payload, self._dispatcher) + + if response is None: + return + + payload = response.json + logger.debug("Response: %s, %s", type(payload), payload) + self._connection.on_data(payload.encode(), []) + + def _get_next_message_id(self) -> int: + self._message_id += 1 + return self._message_id + + def _make_notification(self, method: str, *params: list[Any]) -> None: + """ + Make a JSON-RPC notification. Can notify the client without expecting a response. + + Args: + method: The method to call + params: The parameters to pass to the method + """ + return { + "jsonrpc": "2.0", + "method": method, + "params": params, + } + + def _make_request(self, method: str, *params: list[Any]) -> None: + """ + Make a JSON-RPC request. Messages the client and expects a response. + + Args: + method: The method to call + params: The parameters to pass to the method + """ + return { + "jsonrpc": "2.0", + "method": method, + "params": params, + "id": self._get_next_message_id(), + } + + def _send_document_update(self, root: RenderedNode) -> None: + """ + Send a document update to the client. Currently just sends the entire document for each update. + + Args: + root: The root node of the document to send + """ + # We use an ID prefix to ensure that the callable ids are unique across each document render/update + # That way we don't have to worry about callables from previous renders being called accidentally + self._update_count += 1 + id_prefix = f"cb_{self._update_count}_" + + # TODO(#67): Send a diff of the document instead of the entire document. + request = self._make_notification("documentUpdated", root) + encoder = NodeEncoder(callable_id_prefix=id_prefix, separators=(",", ":")) + payload = encoder.encode(request) + + logger.debug(f"Sending payload: {payload}") + + dispatcher = Dispatcher() + for i, callable in enumerate(encoder.callables): + key = f"{id_prefix}{i}" + logger.debug("Registering callable %s", key) + dispatcher[key] = callable + self._dispatcher = dispatcher + self._connection.on_data(payload.encode(), encoder.objects) diff --git a/plugins/ui/src/deephaven/ui/object_types/ElementType.py b/plugins/ui/src/deephaven/ui/object_types/ElementType.py new file mode 100644 index 000000000..065b0b0cc --- /dev/null +++ b/plugins/ui/src/deephaven/ui/object_types/ElementType.py @@ -0,0 +1,22 @@ +from deephaven.plugin.object_type import BidirectionalObjectType, MessageStream +from ..elements import Element +from .._internal import get_component_name +from .ElementMessageStream import ElementMessageStream + + +class ElementType(BidirectionalObjectType): + """ + Defines the Element type for the Deephaven plugin system. + """ + + @property + def name(self) -> str: + return "deephaven.ui.Element" + + def is_type(self, obj: any) -> bool: + return isinstance(obj, Element) + + def create_client_connection(self, obj: Element, connection: MessageStream): + client_connection = ElementMessageStream(obj, connection) + client_connection.start() + return client_connection diff --git a/plugins/ui/src/deephaven/ui/object_types/__init__.py b/plugins/ui/src/deephaven/ui/object_types/__init__.py new file mode 100644 index 000000000..accae10cb --- /dev/null +++ b/plugins/ui/src/deephaven/ui/object_types/__init__.py @@ -0,0 +1,2 @@ +from .ElementMessageStream import ElementMessageStream +from .ElementType import ElementType diff --git a/plugins/ui/src/deephaven/ui/renderer/NodeEncoder.py b/plugins/ui/src/deephaven/ui/renderer/NodeEncoder.py new file mode 100644 index 000000000..e6b56946d --- /dev/null +++ b/plugins/ui/src/deephaven/ui/renderer/NodeEncoder.py @@ -0,0 +1,106 @@ +from collections.abc import Iterator +import json +from typing import Any, Callable +from .RenderedNode import RenderedNode + +CALLABLE_KEY = "__dh_cbid" +OBJECT_KEY = "__dh_obid" +ELEMENT_KEY = "__dh_elem" + + +class NodeEncoder(json.JSONEncoder): + """ + Encode the node in JSON. Store any replaced objects and callables in their respective arrays. + - RenderedNodes in the tree are replaced with a dict with property `ELEMENT_KEY` set to the name of the element, and props set to the props key. + - callables in the tree are replaced with an object with property `CALLABLE_KEY` set to the index in the callables array. + - non-serializable objects in the tree are replaced wtih an object with property `OBJECT_KEY` set to the index in the objects array. + """ + + _callable_id_prefix: str + """ + Prefix to use for callable ids. Used to ensure callables used in stream are unique. + """ + + _callables: list[Callable] + """ + List of callables parsed out of the document + """ + + _callable_id_dict: dict[int, int] + """ + Dictionary from a callables id to the index in the callables array. + """ + + _objects: list[Any] + """ + List of objects parsed out of the document + """ + + _object_id_dict: dict[int, int] + """ + Dictionary from an objects id to the index in the objects array. + """ + + def __init__(self, *args, callable_id_prefix: str = "cb", **kwargs): + """ + Create a new NodeEncoder. + + Args: + *args: Arguments to pass to the JSONEncoder constructor + callable_id_prefix: Prefix to use for callable ids. Used to ensure callables used in stream are unique. + **kwargs: Args to pass to the JSONEncoder constructor + """ + super().__init__(*args, **kwargs) + self._callable_id_prefix = callable_id_prefix + self._callables = [] + self._callable_id_dict = {} + self._objects = [] + self._object_id_dict = {} + + def default(self, node: Any): + if isinstance(node, RenderedNode): + return self._convert_rendered_node(node) + elif callable(node): + return self._convert_callable(node) + else: + try: + return super().default(node) + except TypeError: + # This is a non-serializable object. We'll store a reference to the object in the objects array. + return self._convert_object(node) + + @property + def callables(self) -> list[Callable]: + return self._callables + + @property + def objects(self) -> list[Any]: + return self._objects + + def _convert_rendered_node(self, node: RenderedNode): + result = {ELEMENT_KEY: node.name} + if node.props is not None: + result["props"] = node.props + return result + + def _convert_callable(self, cb: callable): + callable_id = id(cb) + callable_index = self._callable_id_dict.get(callable_id, len(self._callables)) + if callable_index == len(self._callables): + self._callables.append(cb) + self._callable_id_dict[callable_id] = callable_index + + return { + CALLABLE_KEY: f"{self._callable_id_prefix}{callable_index}", + } + + def _convert_object(self, obj: Any): + object_id = id(obj) + object_index = self._object_id_dict.get(object_id, len(self._objects)) + if object_index == len(self._objects): + self._objects.append(obj) + self._object_id_dict[object_id] = object_index + + return { + OBJECT_KEY: object_index, + } diff --git a/plugins/ui/src/deephaven/ui/renderer/RenderedNode.py b/plugins/ui/src/deephaven/ui/renderer/RenderedNode.py new file mode 100644 index 000000000..775f5caa9 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/renderer/RenderedNode.py @@ -0,0 +1,32 @@ +class RenderedNode: + """ + Represents the result of rendering a node. + """ + + _name: str + _props: dict | None + + def __init__(self, name: str, props: dict = None): + """ + Stores the result of a rendered node + + Args: + name: The name of the node. + props: The props of the node. + """ + self._name = name + self._props = props + + @property + def name(self) -> str: + """ + Get the name of the node. + """ + return self._name + + @property + def props(self) -> dict | None: + """ + Get the props of the node. + """ + return self._props diff --git a/plugins/ui/src/deephaven/ui/renderer/Renderer.py b/plugins/ui/src/deephaven/ui/renderer/Renderer.py new file mode 100644 index 000000000..c1cb1d750 --- /dev/null +++ b/plugins/ui/src/deephaven/ui/renderer/Renderer.py @@ -0,0 +1,62 @@ +import logging +from typing import Any +from .._internal import RenderContext +from ..elements import Element +from .RenderedNode import RenderedNode + +logger = logging.getLogger(__name__) + + +def _render(context: RenderContext, element: Element): + """ + Render an Element. + + Args: + context: The context to render the component in. + element: The element to render. + + Returns: + The RenderedNode representing the element. + """ + + def render_child(child: Any, child_context: RenderContext): + logger.debug("child_context is %s", child_context) + if isinstance(child, list) or isinstance(child, tuple): + logger.debug("render_child list: %s", child) + return [ + render_child(child, child_context.get_child_context(i)) + for i, child in enumerate(child) + ] + if isinstance(child, dict): + logger.debug("render_child dict: %s", child) + return { + key: render_child(value, child_context.get_child_context(key)) + for key, value in child.items() + } + if isinstance(child, Element): + logger.debug( + "render_child element %s: %s", + type(child), + child, + ) + return _render(child_context, child) + else: + logger.debug("render_child returning child (%s): %s", type(child), child) + return child + + logger.debug("Rendering %s: ", element.name) + + props = element.render(context) + + # We also need to render any elements that are passed in as props + props = render_child(props, context) + + return RenderedNode(element.name, props) + + +class Renderer: + def __init__(self, context: RenderContext = RenderContext()): + self._context = context + + def render(self, element: Element): + return _render(self._context, element) diff --git a/plugins/ui/src/deephaven/ui/renderer/__init__.py b/plugins/ui/src/deephaven/ui/renderer/__init__.py new file mode 100644 index 000000000..08be7f69b --- /dev/null +++ b/plugins/ui/src/deephaven/ui/renderer/__init__.py @@ -0,0 +1,3 @@ +from .NodeEncoder import NodeEncoder +from .Renderer import Renderer +from .RenderedNode import RenderedNode diff --git a/plugins/ui/src/js/.gitignore b/plugins/ui/src/js/.gitignore new file mode 100644 index 000000000..d22612a8d --- /dev/null +++ b/plugins/ui/src/js/.gitignore @@ -0,0 +1,5 @@ +# Ignore npm dependencies +/node_modules + +# Ignore output directory +/dist diff --git a/plugins/ui/src/js/LICENSE b/plugins/ui/src/js/LICENSE new file mode 100644 index 000000000..8318dc07b --- /dev/null +++ b/plugins/ui/src/js/LICENSE @@ -0,0 +1,176 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS diff --git a/plugins/ui/src/js/package.json b/plugins/ui/src/js/package.json new file mode 100644 index 000000000..40644a151 --- /dev/null +++ b/plugins/ui/src/js/package.json @@ -0,0 +1,65 @@ +{ + "name": "@deephaven/js-plugin-ui", + "version": "0.0.1", + "description": "Deephaven UI plugin", + "keywords": [ + "Deephaven", + "plugin", + "deephaven-plugin", + "deephaven-js-plugin", + "ui", + "layout", + "programmatic layouts", + "callbacks" + ], + "author": "Deephaven Data Labs LLC", + "license": "Apache-2.0", + "main": "dist/index.js", + "repository": { + "type": "git", + "url": "git+https://github.com/deephaven/deephaven-plugins" + }, + "bugs": { + "url": "https://github.com/deephaven/deephaven-plugins/issues" + }, + "homepage": "https://github.com/deephaven/deephaven-plugins/tree/main/plugins/ui", + "scripts": { + "start": "vite build --watch", + "build": "vite build" + }, + "devDependencies": { + "@deephaven/jsapi-types": "^0.49.0", + "@types/react": "^17.0.2", + "@vitejs/plugin-react-swc": "^3.0.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", + "typescript": "^4.5.4", + "vite": "~4.1.4" + }, + "peerDependencies": { + "react": "^17.0.2", + "react-dom": "^17.0.2" + }, + "dependencies": { + "@adobe/react-spectrum": "^3.29.0", + "@deephaven/chart": "^0.49.0", + "@deephaven/components": "^0.49.0", + "@deephaven/dashboard": "^0.49.0", + "@deephaven/dashboard-core-plugins": "^0.49.0", + "@deephaven/icons": "^0.49.0", + "@deephaven/iris-grid": "^0.49.0", + "@deephaven/jsapi-bootstrap": "^0.49.0", + "@deephaven/log": "^0.49.0", + "@deephaven/react-hooks": "^0.49.0", + "@deephaven/utils": "^0.49.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "shortid": "^2.2.16", + "json-rpc-2.0": "^1.6.0" + }, + "publishConfig": { + "access": "public" + }, + "files": [ + "dist" + ] +} diff --git a/plugins/ui/src/js/src/DashboardPlugin.tsx b/plugins/ui/src/js/src/DashboardPlugin.tsx new file mode 100644 index 000000000..302c16deb --- /dev/null +++ b/plugins/ui/src/js/src/DashboardPlugin.tsx @@ -0,0 +1,24 @@ +import React from 'react'; +import { + DashboardPluginComponentProps, + useDashboardPanel, +} from '@deephaven/dashboard'; +import ElementPanel from './ElementPanel'; +import styles from './styles.scss?inline'; + +const NAME_ELEMENT = 'deephaven.ui.Element'; + +export function DashboardPlugin( + props: DashboardPluginComponentProps +): JSX.Element | null { + useDashboardPanel({ + dashboardProps: props, + component: ElementPanel, + componentName: ElementPanel.displayName, + supportedTypes: [NAME_ELEMENT], + }); + + return ; +} + +export default DashboardPlugin; diff --git a/plugins/ui/src/js/src/ElementPanel.tsx b/plugins/ui/src/js/src/ElementPanel.tsx new file mode 100644 index 000000000..539e91a8f --- /dev/null +++ b/plugins/ui/src/js/src/ElementPanel.tsx @@ -0,0 +1,187 @@ +import React, { useCallback, useEffect, useMemo, useState } from 'react'; +import { + JSONRPCClient, + JSONRPCServer, + JSONRPCServerAndClient, +} from 'json-rpc-2.0'; +import { type ChartPanelProps } from '@deephaven/dashboard-core-plugins'; +import { useApi } from '@deephaven/jsapi-bootstrap'; +import Log from '@deephaven/log'; +import { + CALLABLE_KEY, + ExportedObject, + OBJECT_KEY, + isCallableNode, + isElementNode, + isObjectNode, +} from './ElementUtils'; +import ElementView from './ElementView'; +import ObjectView from './ObjectView'; + +const log = Log.module('@deephaven/js-plugin-ui/ElementPanel'); + +export interface WidgetMessageDetails { + getDataAsBase64(): string; + getDataAsString(): string; + exportedObjects: ExportedObject[]; +} + +export interface WidgetMessageEvent { + detail: WidgetMessageDetails; +} + +export interface JsWidget extends WidgetMessageDetails { + addEventListener: ( + type: string, + listener: (event: WidgetMessageEvent) => void + ) => () => void; + sendMessage: (message: string, args: unknown[]) => void; +} + +export interface ElementPanelProps extends ChartPanelProps { + fetch(): Promise; +} + +function ElementPanel(props: ElementPanelProps) { + const { fetch } = props; + const dh = useApi(); + + const [widget, setWidget] = useState(); + const [element, setElement] = useState(); + + // Bi-directional communication as defined in https://www.npmjs.com/package/json-rpc-2.0 + const jsonClient = useMemo( + () => + widget != null + ? new JSONRPCServerAndClient( + new JSONRPCServer(), + new JSONRPCClient(request => { + log.debug('Sending request', request); + widget.sendMessage(JSON.stringify(request), []); + }) + ) + : null, + [widget] + ); + + /** + * Parse the data from the server, replacing any callable nodes with functions that call the server. + */ + const parseData = useCallback( + (data: string, exportedObjects: ExportedObject[]) => + JSON.parse(data, (key, value) => { + // Need to re-hydrate any objects that are defined + if (isCallableNode(value)) { + const callableId = value[CALLABLE_KEY]; + log.debug2('Registering callableId', callableId); + return async (...args: unknown[]) => { + log.debug('Callable called', callableId, ...args); + return jsonClient?.request(callableId, args); + }; + } + if (isObjectNode(value)) { + // Replace this node with the exported object + const exportedObject = exportedObjects[value[OBJECT_KEY]]; + + // TODO: Only export the object view if it's being rendered as a child or is the root... + // Should probably just return it as just the object here, then parse the tree after looking for all exported objects rendered as nodes... + // Or get ElementView to handle it instead... + return ; + } + if (isElementNode(value)) { + return ; + } + + return value; + }), + [jsonClient] + ); + + useEffect( + function initMethods() { + if (jsonClient == null) { + return; + } + + log.debug('Adding methods to jsonClient'); + jsonClient.addMethod( + 'documentUpdated', + async (newDocument: React.ReactNode) => { + log.debug('documentUpdated', newDocument); + setElement(newDocument); + } + ); + + return () => { + jsonClient.rejectAllPendingRequests('Widget was changed'); + }; + }, + [jsonClient] + ); + + useEffect(() => { + if (widget == null) { + return; + } + function receiveData(data: string, exportedObjects: ExportedObject[]) { + log.debug('Data received', data, exportedObjects); + const parsedData = parseData(data, exportedObjects); + jsonClient?.receiveAndSend(parsedData); + } + + const cleanup = widget.addEventListener( + dh.Widget.EVENT_MESSAGE, + async (event: WidgetMessageEvent) => { + receiveData( + event.detail.getDataAsString(), + event.detail.exportedObjects + ); + } + ); + + log.info('Receiving initial data'); + // We need to get the initial data and process it. It should be a documentUpdated command. + receiveData(widget.getDataAsString(), widget.exportedObjects); + + return () => { + log.info('Cleaning up listener'); + cleanup(); + }; + }, [dh, jsonClient, parseData, widget]); + + useEffect( + function loadWidget() { + let isCancelled = false; + async function loadWidgetInternal() { + const newWidget = await fetch(); + if (isCancelled) { + return; + } + log.debug('newWidget', newWidget); + setWidget(newWidget); + } + loadWidgetInternal(); + return () => { + isCancelled = true; + }; + }, + [fetch] + ); + + return ( +

+ {element} +
+ ); +} + +ElementPanel.displayName = '@deephaven/js-plugin-ui/ElementPanel'; + +export default ElementPanel; diff --git a/plugins/ui/src/js/src/ElementUtils.ts b/plugins/ui/src/js/src/ElementUtils.ts new file mode 100644 index 000000000..b2aa53693 --- /dev/null +++ b/plugins/ui/src/js/src/ElementUtils.ts @@ -0,0 +1,44 @@ +export const CALLABLE_KEY = '__dh_cbid'; +export const OBJECT_KEY = '__dh_obid'; +export const ELEMENT_KEY = '__dh_elem'; + +export type CallableNode = { + /** The name of the callable to call */ + [CALLABLE_KEY]: string; +}; + +export type ObjectNode = { + /** The index of the object in the exported objects array */ + [OBJECT_KEY]: number; +}; + +export type ElementNode = { + [ELEMENT_KEY]: string; + props?: { [key: string]: unknown }; +}; + +export function isObjectNode(obj: unknown): obj is ObjectNode { + return obj != null && typeof obj === 'object' && OBJECT_KEY in obj; +} + +export function isElementNode(obj: unknown): obj is ElementNode { + return obj != null && typeof obj === 'object' && ELEMENT_KEY in obj; +} + +export function isCallableNode(obj: unknown): obj is CallableNode { + return obj != null && typeof obj === 'object' && CALLABLE_KEY in obj; +} + +export function isExportedObject(obj: unknown): obj is ExportedObject { + return ( + obj != null && + typeof obj === 'object' && + typeof (obj as ExportedObject).fetch === 'function' && + typeof (obj as ExportedObject).type === 'string' + ); +} + +export type ExportedObject = { + fetch(): Promise; + type: string; +}; diff --git a/plugins/ui/src/js/src/ElementView.tsx b/plugins/ui/src/js/src/ElementView.tsx new file mode 100644 index 000000000..d16a4c706 --- /dev/null +++ b/plugins/ui/src/js/src/ElementView.tsx @@ -0,0 +1,31 @@ +import React from 'react'; +import { ElementNode } from './ElementUtils'; +import { isHTMLElementNode } from './HTMLElementUtils'; +import HTMLElementView from './HTMLElementView'; +import { isSpectrumElementNode } from './SpectrumElementUtils'; +import SpectrumElementView from './SpectrumElementView'; +import { isIconElementNode } from './IconElementUtils'; +import IconElementView from './IconElementView'; + +export type ElementViewProps = { + element: ElementNode; +}; + +export function ElementView({ element }: ElementViewProps): JSX.Element | null { + if (isHTMLElementNode(element)) { + return ; + } + if (isSpectrumElementNode(element)) { + return ; + } + if (isIconElementNode(element)) { + return ; + } + + // No special rendering for this node, just render the children + const { props } = element; + // eslint-disable-next-line react/jsx-no-useless-fragment, react/prop-types + return <>{props?.children ?? null}; +} + +export default ElementView; diff --git a/plugins/ui/src/js/src/FigureObject.tsx b/plugins/ui/src/js/src/FigureObject.tsx new file mode 100644 index 000000000..091db5fa0 --- /dev/null +++ b/plugins/ui/src/js/src/FigureObject.tsx @@ -0,0 +1,44 @@ +import React, { useEffect, useState } from 'react'; +import { Chart, ChartModel, ChartModelFactory } from '@deephaven/chart'; +import { useApi } from '@deephaven/jsapi-bootstrap'; +import type { Figure } from '@deephaven/jsapi-types'; +import shortid from 'shortid'; + +export interface FigureObjectProps { + object: Figure; +} + +function FigureObject(props: FigureObjectProps) { + const { object } = props; + const dh = useApi(); + const [model, setModel] = useState(); + const [key, setKey] = useState(shortid()); + + useEffect(() => { + async function loadModel() { + const newModel = await ChartModelFactory.makeModel(dh, undefined, object); + setModel(newModel); + + // TODO: Chart.tsx doesn't handle the case where the model has been updated. Update the key so we get a new chart every time the model updates. + setKey(shortid()); + } + loadModel(); + }, [dh, object]); + + return ( +
+ {model && } +
+ ); +} + +FigureObject.displayName = 'FigureObject'; + +export default FigureObject; diff --git a/plugins/ui/src/js/src/HTMLElementUtils.ts b/plugins/ui/src/js/src/HTMLElementUtils.ts new file mode 100644 index 000000000..14530ea77 --- /dev/null +++ b/plugins/ui/src/js/src/HTMLElementUtils.ts @@ -0,0 +1,28 @@ +import { ELEMENT_KEY, ElementNode, isElementNode } from './ElementUtils'; + +export const HTML_ELEMENT_TYPE_PREFIX = 'deephaven.ui.html.'; + +export type HTMLElementName = + `${typeof HTML_ELEMENT_TYPE_PREFIX}${keyof JSX.IntrinsicElements}`; + +export type HTMLElementNode = ElementNode & { + [ELEMENT_KEY]: HTMLElementName; +}; + +export function isHTMLElementNode(obj: unknown): obj is HTMLElementNode { + return ( + isElementNode(obj) && + (obj as HTMLElementNode)[ELEMENT_KEY].startsWith(HTML_ELEMENT_TYPE_PREFIX) + ); +} + +/** + * Get the HTML tag name for the element + * @param name Name of the element + * @returns The HTML tag name for the element + */ +export function getHTMLTag(name: HTMLElementName): keyof JSX.IntrinsicElements { + return name.substring( + HTML_ELEMENT_TYPE_PREFIX.length + ) as keyof JSX.IntrinsicElements; +} diff --git a/plugins/ui/src/js/src/HTMLElementView.tsx b/plugins/ui/src/js/src/HTMLElementView.tsx new file mode 100644 index 000000000..903e7ddd0 --- /dev/null +++ b/plugins/ui/src/js/src/HTMLElementView.tsx @@ -0,0 +1,22 @@ +import React from 'react'; +import { HTMLElementNode, getHTMLTag } from './HTMLElementUtils'; +import { ELEMENT_KEY } from './ElementUtils'; + +export type HTMLElementViewProps = { + element: HTMLElementNode; +}; + +export function HTMLElementView({ + element, +}: HTMLElementViewProps): JSX.Element | null { + const { [ELEMENT_KEY]: name, props = {} } = element; + const tag = getHTMLTag(name); + if (tag == null) { + throw new Error(`Unknown HTML tag ${name}`); + } + // eslint-disable-next-line react/prop-types + const { children, ...otherProps } = props; + return React.createElement(tag, otherProps, children); +} + +export default HTMLElementView; diff --git a/plugins/ui/src/js/src/IconElementUtils.ts b/plugins/ui/src/js/src/IconElementUtils.ts new file mode 100644 index 000000000..5b9731188 --- /dev/null +++ b/plugins/ui/src/js/src/IconElementUtils.ts @@ -0,0 +1,24 @@ +import * as icons from '@deephaven/icons'; +import { ELEMENT_KEY, ElementNode, isElementNode } from './ElementUtils'; + +export const ICON_ELEMENT_TYPE_PREFIX = 'deephaven.ui.icons.'; + +export type IconElementName = + `${typeof ICON_ELEMENT_TYPE_PREFIX}${keyof typeof icons}`; + +export type IconElementNode = ElementNode & { + [ELEMENT_KEY]: IconElementName; +}; + +export function isIconElementNode(obj: unknown): obj is IconElementNode { + return ( + isElementNode(obj) && + (obj as IconElementNode)[ELEMENT_KEY].startsWith(ICON_ELEMENT_TYPE_PREFIX) + ); +} + +export function getIcon(name: IconElementName): icons.IconDefinition { + return icons[ + name.substring(ICON_ELEMENT_TYPE_PREFIX.length) as keyof typeof icons + ] as icons.IconDefinition; +} diff --git a/plugins/ui/src/js/src/IconElementView.tsx b/plugins/ui/src/js/src/IconElementView.tsx new file mode 100644 index 000000000..10ff657eb --- /dev/null +++ b/plugins/ui/src/js/src/IconElementView.tsx @@ -0,0 +1,25 @@ +import React from 'react'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { getIcon, IconElementNode } from './IconElementUtils'; +import { ELEMENT_KEY } from './ElementUtils'; + +export type IconElementViewProps = { + element: IconElementNode; +}; + +export function IconElementView({ + element, +}: IconElementViewProps): JSX.Element | null { + const { [ELEMENT_KEY]: name, props = {} } = element; + const icon = getIcon(name); + if (icon == null) { + throw new Error(`Unknown icon ${name}`); + } + + return ( + // eslint-disable-next-line react/jsx-props-no-spreading + + ); +} + +export default IconElementView; diff --git a/plugins/ui/src/js/src/ObjectView.tsx b/plugins/ui/src/js/src/ObjectView.tsx new file mode 100644 index 000000000..c6896aa63 --- /dev/null +++ b/plugins/ui/src/js/src/ObjectView.tsx @@ -0,0 +1,49 @@ +import React, { useEffect, useState } from 'react'; +import type { Figure, Table } from '@deephaven/jsapi-types'; +import Log from '@deephaven/log'; +import TableObject from './TableObject'; +import FigureObject from './FigureObject'; +import { ExportedObject } from './ElementUtils'; + +const log = Log.module('@deephaven/js-plugin-ui/ObjectView'); + +export interface ObjectViewProps { + object: ExportedObject; +} + +function ObjectView(props: ObjectViewProps) { + const { object } = props; + const [widget, setWidget] = useState(); + log.info('Object is', object); + + // Just load the object on mount + useEffect(() => { + async function loadWidget() { + const newWidget = await object.fetch(); + setWidget(newWidget); + } + loadWidget(); + }, [object]); + + if (widget == null) { + // Still loading + return null; + } + + switch (object.type) { + case 'Table': + case 'TreeTable': + case 'HierarchicalTable': + return ; + case 'Figure': + return ; + default: + // TODO: Need to handle other types of objects registered by other plugins (e.g. Deephaven Express) + log.warn('Unknown object type', object.type); + return
Unknown object type: {object.type}
; + } +} + +ObjectView.displayName = 'ObjectView'; + +export default ObjectView; diff --git a/plugins/ui/src/js/src/SpectrumElementUtils.ts b/plugins/ui/src/js/src/SpectrumElementUtils.ts new file mode 100644 index 000000000..f9ad09b56 --- /dev/null +++ b/plugins/ui/src/js/src/SpectrumElementUtils.ts @@ -0,0 +1,70 @@ +import { + Checkbox, + Content, + ContextualHelp, + Flex, + Grid, + Heading, + Icon, + IllustratedMessage, + Switch, + Text, + ToggleButton, + View, +} from '@adobe/react-spectrum'; +import { ValueOf } from '@deephaven/utils'; +import { ActionButton, Slider, TextField } from './spectrum'; +import { ELEMENT_KEY, ElementNode, isElementNode } from './ElementUtils'; + +export const SPECTRUM_ELEMENT_TYPE_PREFIX = 'deephaven.ui.spectrum.'; + +export const SpectrumSupportedTypes = { + ActionButton, + Checkbox, + Content, + ContextualHelp, + Flex, + Grid, + Heading, + Icon, + IllustratedMessage, + Slider, + Switch, + Text, + TextField, + ToggleButton, + View, +} as const; + +export type SpectrumElementName = + `${typeof SPECTRUM_ELEMENT_TYPE_PREFIX}${keyof typeof SpectrumSupportedTypes}`; + +export type SpectrumElementNode = ElementNode & { + [ELEMENT_KEY]: SpectrumElementName; +}; + +export function isSpectrumElementNode( + obj: unknown +): obj is SpectrumElementNode { + return ( + isElementNode(obj) && + (obj as SpectrumElementNode)[ELEMENT_KEY].startsWith( + SPECTRUM_ELEMENT_TYPE_PREFIX + ) + ); +} + +/** + * Get the Spectrum Component for the element + * @param name Name of the element + * @returns The Spectrum Component name for the element + */ +export function getSpectrumComponent( + name: SpectrumElementName +): ValueOf { + return SpectrumSupportedTypes[ + name.substring( + SPECTRUM_ELEMENT_TYPE_PREFIX.length + ) as keyof typeof SpectrumSupportedTypes + ]; +} diff --git a/plugins/ui/src/js/src/SpectrumElementView.tsx b/plugins/ui/src/js/src/SpectrumElementView.tsx new file mode 100644 index 000000000..33cbaef16 --- /dev/null +++ b/plugins/ui/src/js/src/SpectrumElementView.tsx @@ -0,0 +1,26 @@ +import React from 'react'; +import { + getSpectrumComponent, + SpectrumElementNode, +} from './SpectrumElementUtils'; +import { ELEMENT_KEY } from './ElementUtils'; + +export type SpectrumElementViewProps = { + element: SpectrumElementNode; +}; + +export function SpectrumElementView({ + element, +}: SpectrumElementViewProps): JSX.Element | null { + const { [ELEMENT_KEY]: name, props = {} } = element; + const Component = getSpectrumComponent(name); + if (Component == null) { + throw new Error(`Unknown Spectrum component ${name}`); + } + // eslint-disable-next-line react/prop-types + const { children, ...otherProps } = props; + // eslint-disable-next-line react/jsx-props-no-spreading, @typescript-eslint/no-explicit-any + return {children as any}; +} + +export default SpectrumElementView; diff --git a/plugins/ui/src/js/src/TableObject.tsx b/plugins/ui/src/js/src/TableObject.tsx new file mode 100644 index 000000000..5f14e2e4b --- /dev/null +++ b/plugins/ui/src/js/src/TableObject.tsx @@ -0,0 +1,33 @@ +import React, { useEffect, useState } from 'react'; +import { + IrisGrid, + IrisGridModel, + IrisGridModelFactory, +} from '@deephaven/iris-grid'; +import { useApi } from '@deephaven/jsapi-bootstrap'; +import type { Table } from '@deephaven/jsapi-types'; + +export interface TableObjectProps { + object: Table; +} + +function TableObject(props: TableObjectProps) { + const { object } = props; + const dh = useApi(); + const [model, setModel] = useState(); + + useEffect(() => { + async function loadModel() { + const newModel = await IrisGridModelFactory.makeModel(dh, object); + setModel(newModel); + } + loadModel(); + }, [dh, object]); + return ( +
{model && }
+ ); +} + +TableObject.displayName = 'TableObject'; + +export default TableObject; diff --git a/plugins/ui/src/js/src/index.ts b/plugins/ui/src/js/src/index.ts new file mode 100644 index 000000000..bd84ac498 --- /dev/null +++ b/plugins/ui/src/js/src/index.ts @@ -0,0 +1 @@ +export * from './DashboardPlugin'; diff --git a/plugins/ui/src/js/src/spectrum/ActionButton.tsx b/plugins/ui/src/js/src/spectrum/ActionButton.tsx new file mode 100644 index 000000000..a4343526a --- /dev/null +++ b/plugins/ui/src/js/src/spectrum/ActionButton.tsx @@ -0,0 +1,29 @@ +import React, { useCallback } from 'react'; +import { + ActionButton as SpectrumActionButton, + SpectrumActionButtonProps, +} from '@adobe/react-spectrum'; + +function ActionButton( + props: SpectrumActionButtonProps & { onPress?: () => void } +) { + const { onPress: propOnPress, ...otherProps } = props; + + const onPress = useCallback( + e => { + // The PressEvent from React Spectrum is not serializable (contains circular references). We're just dropping the event here but we should probably convert it. + // TODO(#76): Need to serialize PressEvent and send with the callback instead of just dropping it. + propOnPress?.(); + }, + [propOnPress] + ); + + return ( + // eslint-disable-next-line react/jsx-props-no-spreading + + ); +} + +ActionButton.displayName = 'ActionButton'; + +export default ActionButton; diff --git a/plugins/ui/src/js/src/spectrum/Slider.tsx b/plugins/ui/src/js/src/spectrum/Slider.tsx new file mode 100644 index 000000000..28de56e84 --- /dev/null +++ b/plugins/ui/src/js/src/spectrum/Slider.tsx @@ -0,0 +1,43 @@ +import React, { useCallback, useState } from 'react'; +import { + Slider as SpectrumSlider, + SpectrumSliderProps, +} from '@adobe/react-spectrum'; +import { useDebouncedCallback } from '@deephaven/react-hooks'; + +const VALUE_CHANGE_DEBOUNCE = 250; + +const EMPTY_FUNCTION = () => undefined; + +function Slider(props: SpectrumSliderProps) { + const { + defaultValue = 0, + value: propValue, + onChange: propOnChange = EMPTY_FUNCTION, + ...otherProps + } = props; + + const [value, setValue] = useState(propValue ?? defaultValue); + + const debouncedOnChange = useDebouncedCallback( + propOnChange, + VALUE_CHANGE_DEBOUNCE + ); + + const onChange = useCallback( + newValue => { + setValue(newValue); + debouncedOnChange(newValue); + }, + [debouncedOnChange] + ); + + return ( + // eslint-disable-next-line react/jsx-props-no-spreading + + ); +} + +Slider.displayName = 'Slider'; + +export default Slider; diff --git a/plugins/ui/src/js/src/spectrum/TextField.tsx b/plugins/ui/src/js/src/spectrum/TextField.tsx new file mode 100644 index 000000000..40726a5ba --- /dev/null +++ b/plugins/ui/src/js/src/spectrum/TextField.tsx @@ -0,0 +1,43 @@ +import React, { useCallback, useState } from 'react'; +import { + SpectrumTextFieldProps, + TextField as SpectrumTextField, +} from '@adobe/react-spectrum'; +import { useDebouncedCallback } from '@deephaven/react-hooks'; + +const VALUE_CHANGE_DEBOUNCE = 250; + +const EMPTY_FUNCTION = () => undefined; + +function TextField(props: SpectrumTextFieldProps) { + const { + defaultValue = '', + value: propValue, + onChange: propOnChange = EMPTY_FUNCTION, + ...otherProps + } = props; + + const [value, setValue] = useState(propValue ?? defaultValue); + + const debouncedOnChange = useDebouncedCallback( + propOnChange, + VALUE_CHANGE_DEBOUNCE + ); + + const onChange = useCallback( + newValue => { + setValue(newValue); + debouncedOnChange(newValue); + }, + [debouncedOnChange] + ); + + return ( + // eslint-disable-next-line react/jsx-props-no-spreading + + ); +} + +TextField.displayName = 'TextField'; + +export default TextField; diff --git a/plugins/ui/src/js/src/spectrum/index.ts b/plugins/ui/src/js/src/spectrum/index.ts new file mode 100644 index 000000000..e56762c45 --- /dev/null +++ b/plugins/ui/src/js/src/spectrum/index.ts @@ -0,0 +1,9 @@ +/** + * Wrappers for Spectrum components. + * Used if we want to mediate some of the props values passed to the Spectrum components. + * For example, we may want to debounce sending the change for a text field, and also keep the value on the client side until the change is sent. + * Or in the case of event handlers, we may want to wrap the event handler to serialize the event correctly. + */ +export { default as ActionButton } from './ActionButton'; +export { default as Slider } from './Slider'; +export { default as TextField } from './TextField'; diff --git a/plugins/ui/src/js/src/styles.scss b/plugins/ui/src/js/src/styles.scss new file mode 100644 index 000000000..7908eb425 --- /dev/null +++ b/plugins/ui/src/js/src/styles.scss @@ -0,0 +1,6 @@ +.ui-table-object { + height: 100%; + width: 100%; + overflow: hidden; + position: relative; +} diff --git a/plugins/ui/src/js/vite.config.ts b/plugins/ui/src/js/vite.config.ts new file mode 100644 index 000000000..883af3f55 --- /dev/null +++ b/plugins/ui/src/js/vite.config.ts @@ -0,0 +1,33 @@ +/* eslint-disable import/no-extraneous-dependencies */ +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react-swc'; + +// https://vitejs.dev/config/ +export default defineConfig(({ mode }) => ({ + build: { + minify: false, + lib: { + entry: './src/index.ts', + fileName: () => 'index.js', + formats: ['cjs'], + }, + rollupOptions: { + external: [ + 'react', + 'react-dom', + 'redux', + 'react-redux', + '@adobe/react-spectrum', + '@deephaven/chart', + '@deephaven/components', + '@deephaven/icons', + '@deephaven/iris-grid', + '@deephaven/jsapi-bootstrap', + '@deephaven/log', + ], + }, + }, + define: + mode === 'production' ? { 'process.env.NODE_ENV': '"production"' } : {}, + plugins: [react()], +})); diff --git a/plugins/ui/src/ui.schema.json b/plugins/ui/src/ui.schema.json new file mode 100644 index 000000000..41faec78b --- /dev/null +++ b/plugins/ui/src/ui.schema.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$defs": { + "child": { + "anyOf": [ + { "$ref": "#/defs/element" }, + { "$ref": "#/defs/exported_object" }, + { "$ref": "#/defs/callable" }, + { "type": "number" }, + { "type": "string" }, + { "type": "boolean" }, + { "type": "null" }, + { "type": "object" }, + { "type": "any" } + ] + }, + "element": { + "type": "object", + "properties": { + "__dh_elem": { "type": "string" }, + "props": { + "type": "object", + "properties": { + "children": { + "anyOf": [ + { + "type": "array", + "items": { "$ref": "#/defs/child" } + }, + { "$ref": "#/defs/child" } + ] + } + } + } + } + }, + "callable": { + "type": "object", + "properties": { + "__dh_cbid": { "type": "string" } + } + }, + "exportedObject": { + "type": "object", + "properties": { + "__dh_obid": { "type": "number" } + } + }, + + "documentUpdatedParams": { + "type": "array", + "prefixItems": [{ "$ref": "#/defs/element" }], + "items": false + } + }, + "type": "object", + "properties": { + "jsonrpc": "2.0", + "method": { + "anyOf": [ + { "enum": ["documentUpdated"] }, + { "pattern": "^cb_(0-9)+_(0-9)+$" } + ] + }, + "allOf": [ + { + "if": { + "properties": { + "method": { "const": "documentUpdated" } + } + }, + "then": { + "properties": { + "params": { "$ref": "#/defs/documentUpdatedParams" } + } + } + }, + { + "if": { + "properties": { + "method": { "pattern": "^cb_(0-9)+_(0-9)+$" } + } + }, + "then": { + "properties": { + "params": { + "type": "array", + "items": { "type": "any" } + } + } + } + } + ] + } +} diff --git a/plugins/ui/test/__init__.py b/plugins/ui/test/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/plugins/ui/test/deephaven/__init__.py b/plugins/ui/test/deephaven/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/plugins/ui/test/deephaven/ui/BaseTest.py b/plugins/ui/test/deephaven/ui/BaseTest.py new file mode 100644 index 000000000..81a9a3bb1 --- /dev/null +++ b/plugins/ui/test/deephaven/ui/BaseTest.py @@ -0,0 +1,34 @@ +import unittest +from unittest.mock import patch + +from deephaven_server import Server + + +class BaseTestCase(unittest.TestCase): + @classmethod + def setUpClass(cls): + try: + # Use port 11000 so it doesn't conflict with another server + cls.s = Server(port=11000, jvm_args=["-Xmx4g"]) + cls.s.start() + except Exception as e: + # server is already running + pass + + # these mocks need to be setup after the deephaven server is + # initialized because they access the deephaven namespace + cls.setup_exporter_mock() + + @classmethod + @patch("deephaven.plugin.object_type.Exporter") + @patch("deephaven.plugin.object_type.Reference") + def setup_exporter_mock(cls, MockExporter, MockReference): + cls.exporter = MockExporter() + cls.reference = MockReference() + + cls.reference.index = 0 + cls.exporter.reference.return_value = MockReference() + + +if __name__ == "__main__": + unittest.main() diff --git a/plugins/ui/test/deephaven/ui/__init__.py b/plugins/ui/test/deephaven/ui/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/plugins/ui/test/deephaven/ui/test_encoder.py b/plugins/ui/test/deephaven/ui/test_encoder.py new file mode 100644 index 000000000..4d798d899 --- /dev/null +++ b/plugins/ui/test/deephaven/ui/test_encoder.py @@ -0,0 +1,356 @@ +import json +import unittest +from .BaseTest import BaseTestCase + + +def make_node(name: str, props: dict = None): + from deephaven.ui.renderer import RenderedNode + + return RenderedNode(name, props) + + +class TestObject: + """ + A test object that can be used to represent an exported object type + """ + + def __init__(self): + pass + + +class EncoderTest(BaseTestCase): + def expect_result( + self, + node, + expected_payload: dict, + expected_callables: list = [], + expected_objects: list = [], + callable_id_prefix="cb", + ): + from deephaven.ui.renderer import NodeEncoder + + encoder = NodeEncoder(callable_id_prefix=callable_id_prefix) + payload = encoder.encode(node) + self.assertDictEqual( + json.loads(payload), expected_payload, "payloads don't match" + ) + self.assertListEqual( + encoder.callables, expected_callables, "callables don't match" + ) + self.assertListEqual(encoder.objects, expected_objects, "objects don't match") + + def test_empty_document(self): + self.expect_result(make_node(""), {"__dh_elem": ""}) + + def test_props(self): + self.expect_result( + make_node("test_node", {"foo": "bar"}), + {"__dh_elem": "test_node", "props": {"foo": "bar"}}, + ) + + def test_child(self): + self.expect_result( + make_node("test0", {"children": make_node("test1")}), + { + "__dh_elem": "test0", + "props": {"children": {"__dh_elem": "test1"}}, + }, + ) + + def test_children(self): + self.expect_result( + make_node( + "test0", + { + "children": [ + make_node( + "test1", + { + "children": [ + make_node( + "test2", {"children": [make_node("test3")]} + ) + ] + }, + ), + make_node( + "test11", + { + "children": [ + make_node( + "test22", {"children": [make_node("test33")]} + ) + ] + }, + ), + ], + "foo": "bar", + }, + ), + { + "__dh_elem": "test0", + "props": { + "children": [ + { + "__dh_elem": "test1", + "props": { + "children": [ + { + "__dh_elem": "test2", + "props": { + "children": [{"__dh_elem": "test3"}], + }, + } + ], + }, + }, + { + "__dh_elem": "test11", + "props": { + "children": [ + { + "__dh_elem": "test22", + "props": { + "children": [{"__dh_elem": "test33"}], + }, + } + ], + }, + }, + ], + "foo": "bar", + }, + }, + ) + + def test_exported_objects(self): + obj1 = TestObject() + + self.expect_result( + make_node("test_exported", {"children": [obj1]}), + {"__dh_elem": "test_exported", "props": {"children": [{"__dh_obid": 0}]}}, + expected_objects=[obj1], + ) + + def exported_null(self): + self.expect_result( + make_node("test_exported", {"children": [None]}), + {"__dh_elem": "test_exported", "props": {"children": [None]}}, + ) + + def test_children_with_exported(self): + obj1 = TestObject() + obj2 = TestObject() + obj3 = TestObject() + + # Should use a depth-first traversal to find all exported objects and their indices + self.expect_result( + make_node( + "test0", + { + "children": [ + make_node("test1", {"children": [obj1]}), + obj2, + make_node("test3", {"children": [obj3]}), + ] + }, + ), + { + "__dh_elem": "test0", + "props": { + "children": [ + { + "__dh_elem": "test1", + "props": {"children": [{"__dh_obid": 0}]}, + }, + {"__dh_obid": 1}, + { + "__dh_elem": "test3", + "props": {"children": [{"__dh_obid": 2}]}, + }, + ], + }, + }, + expected_objects=[obj1, obj2, obj3], + ) + + def test_primitive_children(self): + self.expect_result( + make_node("test0", {"children": ["foo", 1, 2.0]}), + {"__dh_elem": "test0", "props": {"children": ["foo", 1, 2.0]}}, + [], + ) + + def test_primitives_with_exports(self): + obj1 = TestObject() + obj2 = TestObject() + + self.expect_result( + make_node("test0", {"children": ["foo", obj1, obj2, 2.0]}), + { + "__dh_elem": "test0", + "props": {"children": ["foo", {"__dh_obid": 0}, {"__dh_obid": 1}, 2.0]}, + }, + expected_objects=[obj1, obj2], + ) + + def test_same_object(self): + """ + If the same object is exported multiple times, it should only be exported once and referenced by the same ID. + """ + obj1 = TestObject() + + self.expect_result( + make_node("test0", {"children": [obj1, obj1]}), + { + "__dh_elem": "test0", + "props": {"children": [{"__dh_obid": 0}, {"__dh_obid": 0}]}, + }, + expected_objects=[obj1], + ) + + def test_callable(self): + cb1 = lambda: None + + self.expect_result( + make_node("test0", {"foo": cb1}), + {"__dh_elem": "test0", "props": {"foo": {"__dh_cbid": "cb0"}}}, + expected_callables=[cb1], + ) + + def test_children_with_callables(self): + cb1 = lambda: None + cb2 = lambda: None + cb3 = lambda: None + + # Should use a depth-first traversal to find all exported objects and their indices + self.expect_result( + make_node( + "test0", + { + "children": [ + make_node("test1", {"foo": [cb1]}), + cb2, + make_node("test3", {"bar": cb3}), + ] + }, + ), + { + "__dh_elem": "test0", + "props": { + "children": [ + { + "__dh_elem": "test1", + "props": {"foo": [{"__dh_cbid": "cb0"}]}, + }, + {"__dh_cbid": "cb1"}, + { + "__dh_elem": "test3", + "props": {"bar": {"__dh_cbid": "cb2"}}, + }, + ], + }, + }, + expected_callables=[cb1, cb2, cb3], + ) + + def test_callables_and_objects(self): + cb1 = lambda: None + cb2 = lambda: None + cb3 = lambda: None + obj1 = TestObject() + obj2 = TestObject() + + # Should use a depth-first traversal to find all exported objects and their indices + self.expect_result( + make_node( + "test0", + { + "children": [ + make_node("test1", {"foo": [cb1]}), + cb2, + make_node("test3", {"bar": cb3, "children": [obj1, obj2]}), + ] + }, + ), + { + "__dh_elem": "test0", + "props": { + "children": [ + { + "__dh_elem": "test1", + "props": {"foo": [{"__dh_cbid": "cb0"}]}, + }, + {"__dh_cbid": "cb1"}, + { + "__dh_elem": "test3", + "props": { + "bar": {"__dh_cbid": "cb2"}, + "children": [ + {"__dh_obid": 0}, + {"__dh_obid": 1}, + ], + }, + }, + ], + }, + }, + expected_callables=[cb1, cb2, cb3], + expected_objects=[obj1, obj2], + ) + + def test_same_callables(self): + """ + If the same callable is exported multiple times, it should only be exported once and referenced by the same ID. + """ + cb1 = lambda: None + + self.expect_result( + make_node("test0", {"foo": [cb1, cb1]}), + { + "__dh_elem": "test0", + "props": {"foo": [{"__dh_cbid": "cb0"}, {"__dh_cbid": "cb0"}]}, + }, + expected_callables=[cb1], + ) + + def test_callable_id_prefix(self): + cb1 = lambda: None + cb2 = lambda: None + cb3 = lambda: None + + # Should use a depth-first traversal to find all exported objects and their indices + self.expect_result( + make_node( + "test0", + { + "children": [ + make_node("test1", {"foo": [cb1]}), + cb2, + make_node("test3", {"bar": cb3}), + ] + }, + ), + { + "__dh_elem": "test0", + "props": { + "children": [ + { + "__dh_elem": "test1", + "props": {"foo": [{"__dh_cbid": "d2c0"}]}, + }, + {"__dh_cbid": "d2c1"}, + { + "__dh_elem": "test3", + "props": {"bar": {"__dh_cbid": "d2c2"}}, + }, + ], + }, + }, + expected_callables=[cb1, cb2, cb3], + callable_id_prefix="d2c", + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/plugins/ui/test/deephaven/ui/test_hooks.py b/plugins/ui/test/deephaven/ui/test_hooks.py new file mode 100644 index 000000000..f5ef498dd --- /dev/null +++ b/plugins/ui/test/deephaven/ui/test_hooks.py @@ -0,0 +1,138 @@ +import unittest +from operator import itemgetter +from typing import Callable +from unittest.mock import Mock +from .BaseTest import BaseTestCase + + +def render_hook(fn: Callable): + """ + Render a hook function and return the context, result, and a rerender function for updating it + + Args: + fn: Callable: + The function to render. Pass in a function with a hook call within it. + Re-render will call the same function but with the new args passed in. + """ + from deephaven.ui._internal.RenderContext import RenderContext + from deephaven.ui._internal.shared import get_context, set_context + + context = RenderContext() + + return_dict = {"context": context, "result": None, "rerender": None} + + def _rerender(*args, **kwargs): + set_context(context) + with context: + new_result = fn(*args, **kwargs) + return_dict["result"] = new_result + return new_result + + return_dict["rerender"] = _rerender + + _rerender() + + return return_dict + + +class HooksTest(BaseTestCase): + def test_state(self): + from deephaven.ui.hooks import use_state + + def _test_state(value1=1, value2=2): + value1, set_value1 = use_state(value1) + value2, set_value2 = use_state(value2) + return value1, set_value1, value2, set_value2 + + # Initial render + render_result = render_hook(_test_state) + + result, rerender = itemgetter("result", "rerender")(render_result) + val1, set_val1, val2, set_val2 = result + + self.assertEqual(val1, 1) + self.assertEqual(val2, 2) + + # Rerender with new values, but should retain existing state + rerender(value1=3, value2=4) + result = itemgetter("result")(render_result) + val1, set_val1, val2, set_val2 = result + self.assertEqual(val1, 1) + self.assertEqual(val2, 2) + + # Set to a new value + set_val1(3) + rerender() + result = itemgetter("result")(render_result) + val1, set_val1, val2, set_val2 = result + self.assertEqual(val1, 3) + self.assertEqual(val2, 2) + + # Set other state to a new value + set_val2(4) + rerender() + result = itemgetter("result")(render_result) + val1, set_val1, val2, set_val2 = result + self.assertEqual(val1, 3) + self.assertEqual(val2, 4) + + def test_ref(self): + from deephaven.ui.hooks import use_ref + + def _test_ref(value=None): + ref = use_ref(value) + return ref + + # Initial render doesn't set anything + render_result = render_hook(_test_ref) + result, rerender = itemgetter("result", "rerender")(render_result) + self.assertEqual(result.current, None) + + # Doesn't update the value on second call to use_ref + result = rerender(1) + self.assertEqual(result.current, None) + + # Set the current value, and it should be returned + result.current = 2 + result = rerender(3) + self.assertEqual(result.current, 2) + + def test_memo(self): + from deephaven.ui.hooks import use_memo + + def _test_memo(fn=lambda: "foo", a=1, b=2): + return use_memo(fn, [a, b]) + + # Initial render + render_result = render_hook(_test_memo) + result, rerender = itemgetter("result", "rerender")(render_result) + self.assertEqual(result, "foo") + + # Rerender with new function but same deps + # Should not re-run the function + mock = Mock(return_value="bar") + result = rerender(mock) + self.assertEqual(result, "foo") + self.assertEqual(mock.call_count, 0) + + # Rerender with new deps + # Should re-run the function + result = rerender(mock, 3, 4) + self.assertEqual(result, "bar") + self.assertEqual(mock.call_count, 1) + + # Rerender with the same new deps + # Should not re-run the function + result = rerender(mock, 3, 4) + self.assertEqual(result, "bar") + self.assertEqual(mock.call_count, 1) + + # Rerender with new deps and new function + mock = Mock(return_value="biz") + result = rerender(mock, b=4) + self.assertEqual(result, "biz") + self.assertEqual(mock.call_count, 1) + + +if __name__ == "__main__": + unittest.main() diff --git a/plugins/ui/test/deephaven/ui/test_render.py b/plugins/ui/test/deephaven/ui/test_render.py new file mode 100644 index 000000000..032c5c0bd --- /dev/null +++ b/plugins/ui/test/deephaven/ui/test_render.py @@ -0,0 +1,103 @@ +from unittest.mock import Mock +from .BaseTest import BaseTestCase + + +class RenderTestCase(BaseTestCase): + def test_empty_render(self): + from deephaven.ui._internal.RenderContext import RenderContext + + rc = RenderContext() + self.assertEqual(rc._hook_index, -1) + self.assertEqual(rc._state, {}) + self.assertEqual(rc._children_context, {}) + self.assertEqual(rc._on_change(), None) + + def test_hook_index(self): + from deephaven.ui._internal.RenderContext import RenderContext + + rc = RenderContext() + + # Set up the hooks used with initial render (3 hooks) + with rc: + self.assertEqual(rc.next_hook_index(), 0) + self.assertEqual(rc.next_hook_index(), 1) + self.assertEqual(rc.next_hook_index(), 2) + + # Verify it's the same on the next render + with rc: + self.assertEqual(rc.next_hook_index(), 0) + self.assertEqual(rc.next_hook_index(), 1) + self.assertEqual(rc.next_hook_index(), 2) + + # Check that an error is thrown if we don't use enough hooks + with self.assertRaises(Exception): + with rc: + self.assertEqual(rc.next_hook_index(), 0) + self.assertEqual(rc.next_hook_index(), 1) + + # Check that an error is thrown if we use too many hooks + with self.assertRaises(Exception): + with rc: + self.assertEqual(rc.next_hook_index(), 0) + self.assertEqual(rc.next_hook_index(), 1) + self.assertEqual(rc.next_hook_index(), 2) + self.assertEqual(rc.next_hook_index(), 3) + + def test_state(self): + from deephaven.ui._internal.RenderContext import RenderContext + + rc = RenderContext() + + on_change = Mock() + rc.set_on_change(on_change) + + self.assertEqual(rc.has_state(0), False) + self.assertEqual(rc.get_state(0), None) + self.assertEqual(rc.get_state(0, 1), None) + self.assertEqual(rc.get_state(1, 1), 1) + self.assertEqual(on_change.call_count, 0) + + rc.set_state(0, 2) + self.assertEqual(rc.has_state(0), True) + self.assertEqual(rc.get_state(0), 2) + self.assertEqual(rc.get_state(0, 1), 2) + self.assertEqual(rc.get_state(1), 1) + self.assertEqual(rc.get_state(1, 1), 1) + self.assertEqual(on_change.call_count, 1) + + def test_context(self): + from deephaven.ui._internal.RenderContext import RenderContext + + rc = RenderContext() + + on_change = Mock() + rc.set_on_change(on_change) + + child_context0 = rc.get_child_context(0) + child_context1 = rc.get_child_context(1) + + self.assertEqual(on_change.call_count, 0) + + # Check that setting the initial state does not trigger a change event + rc.set_state(0, 0) + self.assertEqual(on_change.call_count, 0) + + # Check that changing state triggers a change event + rc.set_state(0, 1) + self.assertEqual(on_change.call_count, 1) + self.assertEqual(rc.has_state(0), True) + self.assertEqual(rc.get_state(0), 1) + self.assertEqual(on_change.call_count, 1) + self.assertEqual(child_context0.has_state(0), False) + self.assertEqual(child_context0.get_state(0), None) + child_context0.set_state(0, 2) + self.assertEqual(child_context0.has_state(0), True) + self.assertEqual(child_context0.get_state(0), 2) + self.assertEqual(on_change.call_count, 2) + self.assertEqual(child_context1.has_state(0), False) + self.assertEqual(child_context1.get_state(0), None) + child_context1.set_state(0, 3) + self.assertEqual(rc.get_state(0), 1) + self.assertEqual(child_context0.get_state(0), 2) + self.assertEqual(child_context1.get_state(0), 3) + self.assertEqual(on_change.call_count, 3) diff --git a/plugins/ui/test/deephaven/ui/test_utils.py b/plugins/ui/test/deephaven/ui/test_utils.py new file mode 100644 index 000000000..1a301d8c1 --- /dev/null +++ b/plugins/ui/test/deephaven/ui/test_utils.py @@ -0,0 +1,51 @@ +import unittest +from .BaseTest import BaseTestCase + + +def my_test_func(): + raise Exception("should not be called") + + +class UtilsTest(BaseTestCase): + def test_get_component_name(self): + from deephaven.ui._internal.utils import get_component_name + + self.assertEqual( + get_component_name(my_test_func), + "test.deephaven.ui.test_utils.my_test_func", + ) + + def test_to_camel_case(self): + from deephaven.ui._internal.utils import to_camel_case + + self.assertEqual(to_camel_case("test_string"), "testString") + self.assertEqual(to_camel_case("test_string_2"), "testString2") + self.assertEqual(to_camel_case("align_items"), "alignItems") + self.assertEqual(to_camel_case("First_Word"), "FirstWord") + self.assertEqual(to_camel_case("first_word"), "firstWord") + self.assertEqual(to_camel_case("alreadyCamelCase"), "alreadyCamelCase") + self.assertEqual(to_camel_case(""), "") + + def test_dict_to_camel_case(self): + from deephaven.ui._internal.utils import dict_to_camel_case + + self.assertDictEqual( + dict_to_camel_case({"test_string": "foo", "test_string_2": "bar_biz"}), + {"testString": "foo", "testString2": "bar_biz"}, + ) + self.assertDictEqual( + dict_to_camel_case({"alreadyCamelCase": "foo", "align_items": "bar"}), + {"alreadyCamelCase": "foo", "alignItems": "bar"}, + ) + + def test_remove_empty_keys(self): + from deephaven.ui._internal.utils import remove_empty_keys + + self.assertDictEqual( + remove_empty_keys({"foo": "bar", "biz": None, "baz": 0}), + {"foo": "bar", "baz": 0}, + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/plugins/ui/tox.ini b/plugins/ui/tox.ini new file mode 100644 index 000000000..b214f738a --- /dev/null +++ b/plugins/ui/tox.ini @@ -0,0 +1,8 @@ +[tox] +isolated_build = True + +[testenv] +deps = + deephaven-server +commands = + python -m unittest discover \ No newline at end of file