All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- #273 - Adjusted
propTypesforwidthandheightproperties ofScrollAreacomponent to also accept strings. Adjusted its handle sizes and their positions and improved UX with small areas and large content as well as with two scrollbars.
- #275 - Added
WebvizDialogcomponent. New dialog component which handles multiple instances simultaneously, where the currently active dialog is placed on top and highlighted with box shadow.
- #270 - Fixed bug in
Selectcomponent not allowing value to be0. - #271 - Invalid states for active plugin and view are now replaced with the first plugin of the current page and its first view.
- #220 -
Overlaywas hiding menu due to conflicting z-index properties. AddedzIndexprop toOverlaycomponent and adjusted consumers. - #233 - Settings drawer not collapsing (not collapsable) if no settings group given.
- #234 - Adjusted message window width in Webviz tour component according to remaining view width.
- #236 - Removed usage of
withStylesinDialogComponentin order to avoid class name conflicts withwebviz-subsurface-componentscaused byMaterialUI/jss.
- #207 - Added
storybookand stories for each component. Added publishment ofstorybookto GitHub workflow. Addedstorybooklink to README. - #219 - Implemented components required by the new Webviz Layout Framework (WLF)
- #227 - Added
EdsIconcomponent in order to use icons from the Equinor Design System (EDS) directly in Python. - #240 - States of menu, active view, settings drawer and settings groups are getting stored now. If no URL path is given, the one of the first page is opened now.
- #248 - Added missing
idinWebvizSettingsGroupandkeyinWebvizViewList(for view groups).
- #219 - Pinned
dashversion to2.4.x, added more info output to GitHub workflow, switched to React version16.14.0in order to comply with non-maintainedreact-colorscalesrequirements, implemented adjustments toOverlayandScrollArea - #240 - Settings groups remain open when others are toggled (independent toggle state).
- #252 - Refactored
Menucomponent in order to make it work seamlessly withdcc.Locationanddcc.Link. - #257 - Added debounce time for
Selectcomponent to prevent firing selected values immediately. The selected values will be updated after configured amount of milliseconds after last interaction. Reduces number of callback triggers in Dash. - #265 - Refactored
ScrollAreacomponent in order to improve scrolling experience.
- #212 - Changed
tabbehaviour inSmartNodeSelector. When pressingtabon the last tag orshift+tabon the first one, the default behaviour is no longer prevented.
- #202 - Adjusted
z-indexof suggestions ofSmartNodeSelectorto a hard-coded value of1500. - #201 - Implemented wrapper around
MaterialUI'sdraggable dialog. Makes a newDialogcomponent available inDash. - #210 - Added
backdropproperty toDialog. This allows to disable the backdrop behind a dialog and makes all other elements remain clickable.
- #197 - Updated
@equinor/eds-icons(and associated@equinor/eds-core-reactdependencies) in order to use new icons upstream in the application menu.
- #178 - Bug fixes in
SmartNodeSelector: Placeholder not applied, text width not calculated correctly initially, jump to next node when pressingEnter, bug fixes and improvements when navigating with arrows. Node names containing-were breaking the code. - #191 - Removed
pointercursor fromwebviz-selectorsclass.
- #178 - Implemented case-insensitive and description search in
SmartNodeSelector. Also added export of data types and implementedORoperator in nodes as beta feature. Implemented better visual feedback, tab and end/home navigation. Implemented visual feedback and possibility to show all suggestions.
- #181 -
SmartNodeSelectorsuggestions window is now attached at top level of DOM tree. This improves usability when used in a scroll area.
- #177 - Bug fix: Menu missing if using non-existent icon.
- #182 - Added option to wrap
SelectWithLabelin aDetailscollapsible widget. - #174 - Implemented
initiallyCollapsedsetting for menu.
- #157 - Added utf8 encoding to Python's
open()calls. - #158 - Fixed error messages when contact person details not provided to
WebvizPluginPlaceholder. - #159 - Call
revokeObjectURLafter usingcreateObjectURLinWebvizPluginPlaceholder. - #160 - Bug fix:
Selectpropertyvaluedoes not return correct type. - #172 - Bug fix: No margin between plugins.
- #154 - Implemented new menu component.
- #140 - Improved styling of the
Selectcomponent. - #145 - Added wrapper components for typically used Dash components (Dropdown, Slider, etc) with additional styling.
- #148 - Changed default value of
numSecondsUntilSuggestionsAreShownto 0.5 inSmartNodeSelectorcomponent - #150 - Changed color of single remove button in
SmartNodeSelectorto the same as for the remove all button. - #151 -
SmartNodeSelector: Changes todataanddelimiterprops are considered now and cause the component to update.
- #148 - Added
lineBreakAfterTagproperty toSmartNodeSelectorwhich defaults to false. If set to true, tags are separated by a line break.
- #134 - When prereleases are done in GitHub, they will now be published to
npmusing thenexttag. E.g.npm install @webviz/core-componentswill install the latest official release, whilenpm install @webviz/core-components@nextwill install the latest prerelease. - #125 - Moved
Reactcode andNode.jsconfiguration into./react/directory. Adjustedpackage.json,.gitignore,.vscode/launch.jsand GitHub workflow file accordingly. - #125 - Tightened
tsconfigoptions in order to have a more strict code validation. - #125 - Synchronized ECMA Script version in
tsconfigandeslint. - #125 - Added automatic removal of unused autogenerated files (
.Rbuildignore). - #125 - Removed
plotly-cartesian.jsandpackage.json(top level) fromMANIFEST.in. - #125 - Adjusted components according to new
tsconfigoptions. - #125 - Moved
flexbox.cssinto new component folder. - #125 - Introduced
DefaultPropsHelper.tsin order to account for coexistence of TypeScript restrictions andReact'sdefaultProps. - #125 -
setup.pyis now reading package data frompackage.jsonfile insidewebviz_core_components. - #121 - Changed rendering of
SmartNodeSelectorcomponent when only one node can be selected. - #136 - Changes to selected tags in
SmartNodeSelectorare now always sent.
- #125 - Added
Storybookfor demo of components. - #125 - Added
declarations.d.tsfile for ambient declarations for npm modules without type declarations. - #130 - Added feedback button to
WebvizPluginPlaceholder. Addedhrefandtargetproperties toWebvizToolbarButton.
- #136 - Several bug fixes in
SmartNodeSelector(exception on entering invalid node name when no metadata given, exception on using several wildcards, new tag when pressing enter with single node selection and invalid data, node selected several times when its name is partly contained in other nodes, exception on holding backspace pressed). - #125 - Removed
selectedNodesattribute fromSmartNodeSelectorarguments inusage.py. - #124 -
SmartNodeSelectornow returns all selected tags (also invalid and duplicate ones) to parent. - #123 - Removed unused variables and added types to
SmartNodeSelectorand its tests.
- #122 - Fixed bug in
WebvizPluginPlaceholderpreventing download button from working. Added tests forWebvizPluginPlaceholder. - #120 - Multiple bug fixes (deletion of currently selected tag not possible; state not dynamically updated; empty or invalid node names no longer allowed; auto resizing not working when initializing tag component) and new tests for these bugs. Also removed unnecessary properties.
- #114 - Added deprecation warning to
WebvizPluginPlaceholder.
- #114 - Better alignment of tooltips with icons and pointer cursor when hovering buttons in
WebvizPluginPlaceholder. - #118 - Remove
toImagefrom defaultmodeBarButtonsToRemoveinwcc.Graph.
- #114 - Fixed bug in
WebvizPluginPlaceholderpreventing tooltips from being shown.
- #115 - Removed postinstall script in order to not having npm trying to copy package.json when installing as npm package.
- #113 - Fixed LGTM warnings caused by SmartNodeSelector component's defaultProps definitions.
- #107 - Fixed bug in argument modifier method (when input argument is given as positional).
- #107 - Prevent false positives through LGTM/GitHub CodeQL.
- #105 - Fixed bug when updating Select values from a Dash callback.
- #99 - Fixed bug which prevented using the download button in
WebvizPluginPlaceholderand started to download when component was mounting.
- #96 - Added publishing of npm package to Github Workflow
- #100 - Adjusted build environment in order to be able to write components in TypeScript and to publish to npm. Also changed all components to TypeScript.
- #86 - Refactored and converted code to TypeScript (main component files to JSX), adjusted build environment accordingly and added validation of JS/TS to GitHub workflow