Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package JS API as a module #1582

Closed
mattrunyon opened this issue Nov 16, 2021 · 3 comments
Closed

Package JS API as a module #1582

mattrunyon opened this issue Nov 16, 2021 · 3 comments
Assignees
Labels
feature request New feature or request

Comments

@mattrunyon
Copy link
Contributor

It would help the reusability of our components if the JS API was a module. Currently, we use a shim in the web client which just expects a global dh to exist in the browser.

Where this causes issues currently is on the docs, specifically plots right now. The constants used by our plotting rely on the JS API, and that means the API needs to be included in the docs manually (via script tag) to make the plot components work. I also have to do some ugly workarounds asynchronously loading the API from a docker endpoint to generate snapshots for the docs.

It would be easier if we had the API exposed as a module instead so it can be imported nicely. Bonus points if we can generate a .d.ts for the API so we can take advantage of the types in TypeScript

@mattrunyon mattrunyon added feature request New feature or request triage labels Nov 16, 2021
@mofojed
Copy link
Member

mofojed commented Nov 16, 2021

This would also be nice to allow for autocomplete in IDE when developing (though perhaps can be accomplished another way), and for tests (we're just using mocks right now, which we could just reduce to a partial mock instead)

@mofojed mofojed self-assigned this Nov 29, 2021
@mofojed mofojed removed the triage label Nov 29, 2021
@mofojed
Copy link
Member

mofojed commented Aug 19, 2022

First PR: #2733

@mofojed
Copy link
Member

mofojed commented Oct 7, 2022

Closing in favour of #2735

@mofojed mofojed closed this as completed Oct 7, 2022
mofojed pushed a commit that referenced this issue Oct 25, 2023
Release notes https://github.com/deephaven/web-client-ui/releases/tag/v0.51.0

# [0.51.0](deephaven/web-client-ui@v0.50.0...v0.51.0) (2023-10-24)


### Bug Fixes

* Adjusted Monaco "white" colors ([#1594](deephaven/web-client-ui#1594)) ([c736708](deephaven/web-client-ui@c736708)), closes [#1592](deephaven/web-client-ui#1592)
* cap width of columns with long names ([#1574](deephaven/web-client-ui#1574)) ([876a6ac](deephaven/web-client-ui@876a6ac)), closes [#1276](deephaven/web-client-ui#1276)
* Enabled pointer capabilities for Firefox in Playwright ([#1589](deephaven/web-client-ui#1589)) ([f440a38](deephaven/web-client-ui@f440a38)), closes [#1588](deephaven/web-client-ui#1588)
* Remove @deephaven/app-utils from @deephaven/dashboard-core-plugins dependency list ([#1596](deephaven/web-client-ui#1596)) ([7b59763](deephaven/web-client-ui@7b59763)), closes [#1593](deephaven/web-client-ui#1593)
* Tab in console input triggers autocomplete instead of indent ([#1591](deephaven/web-client-ui#1591)) ([fbe1e70](deephaven/web-client-ui@fbe1e70))


### Features

* Theming - Spectrum Provider ([#1582](deephaven/web-client-ui#1582)) ([a4013c0](deephaven/web-client-ui@a4013c0)), closes [#1543](deephaven/web-client-ui#1543)
* Theming Iris Grid ([#1568](deephaven/web-client-ui#1568)) ([ed8f4b7](deephaven/web-client-ui@ed8f4b7))
* web-client-ui changes required for deephaven.ui ([#1567](deephaven/web-client-ui#1567)) ([94ab25c](deephaven/web-client-ui@94ab25c))
* Widget plugins ([#1564](deephaven/web-client-ui#1564)) ([94cc82c](deephaven/web-client-ui@94cc82c)), closes [#1455](deephaven/web-client-ui#1455) [#1167](deephaven/web-client-ui#1167)


### BREAKING CHANGES

- `usePlugins` and `PluginsContext` were moved from
`@deephaven/app-utils` to `@deephaven/plugin`.
- `useLoadTablePlugin` was moved from `@deephaven/app-utils` to
`@deephaven/dashboard-core-plugins`.
- `useConnection` and `ConnectionContext` were moved from
`@deephaven/app-utils` to `@deephaven/jsapi-components`.
- `DeephavenPluginModuleMap` was removed from `@deephaven/redux`. Use
`PluginModuleMap` from `@deephaven/plugin` instead.
* Enterprise will need ThemeProvider for the css
variables to be available





Co-authored-by: deephaven-internal <deephaven-internal@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants