- Avoid rendering is container width is too small
- Removed condition when axis row was mounted
- auto-resize bug fixed
- Keep selection and zoom state when auto-resize
- If
trackWidth
config is not define, the track length will be defined based on the root container
- audit fix
- Multiple dependencies have been updated
- audit fix
- Multiple dependencies have been updated
- Axis update length bug fixed
- Axis track zoom/move bug fixed
- Track mouseleave tooltip bug fixed
- Track mouseleave tooltip bug fixed
RcsbFvTooltipInterface.showTooltipDescription
optional field- Custom tooltip example added
BoardDataState.rowConfigData
change bug fixed
- Boxicons are imported as svg and transformed to react components
- Types are not anymore exposed from
build/src
- All module classes and types are accessible from
lib/
- Modules format is
ESNext
lib/commonjs
exposes all modules inCommonJS
format
- Modules format is
- The interface
RcsbFvTrackDataElementInterface
has been simplified, and it only includes visualization fields RcsbFvTrackDataElementInterface.value
does not accept string anymore. String values should be encoded intoRcsbFvTrackDataElementInterface.label
- Important! Sequence tracks (
RcsbFvDisplayTypes.SEQUENCE
) should encode the sequence string inRcsbFvTrackDataElementInterface.label
- Important! Sequence tracks (
- All interface attributes
xxxCalBack
renamed toxxxCallback
- Exposed new interface
RcsbFvTooltipInterface
included inRcsbFvBoardConfigInterface
andRcsbFvRowExtendedConfigInterface
to generate tooltips - Event callback setters for
RcsbTrackInterface
andRcsbDisplayInterface
migrated to rxjs subjects RcsbAreaDisplay
hover and leave callbacks are defined asRcsbTrackInterface.trackSubject
subscriptionsRcsbBoard
mouse events callback are defined as subscriptions ofboardSubject
- Composite tracks subscribe all event action of their inner tracks
RcsbFastSequenceDisplay
line visualization react to mousemove and click events
- Removed
RcsbFvRowConfigInterface.innerTrackId
and replaced byRcsbFvRowConfigInterface.trackId
- Sass @import changed to @use
- Styles sheets
scss
refactoring - react-icons replaced by boxicons
- Multiple dependencies have been updated
- audit fix
- Deprecated
JSX.Element
changed toReactNode
- Improved definition of
RcsbFvUI
buttons
- audit fix
IntersectionObserver
callback threshold bug fixed
trackVisibility: false
board-ready state bug fixed
trackVisibility
configuration had no effect on tracks
- Tooltip z-index reduced to 2000
- audit fix
- Removed log output
- Safari sequence misalignment bug fixed
- Auditing vulnerabilities
- Wrong attribute name
innerTrackId
fromTrackVisibilityInterface
renamed totrackId
- Row status is cleared when board data is updated
- Selection/Track Rendering bug fixed
RcsbFvRowConfigInterface
exposes a generic metadata attribute
- Duplicated
trackId
in different panels bug fixed
- Change track visibility bug fixed
- All board config/data update events use
EventType.UPDATE_BOARD_CONFIG
type - Class
RcsbFvStateManager
handles zoom/move and selection events
- New class
BoardDataState
to handle the state of the board tracks data. It encodes the logic of changing or updating the board tracks data
RcsbFvContextManagerType
(replacesRcsbFvContextManagerInterface
) is a refactored type that defines RcsbFvContextManager events unambiguously
- API method
moveTrack
converted to async
- Exposed a new API method
moveTrack
to move tracks
- Auditing vulnerabilities
- Multiple compatible monospace fonts for the fast sequence display
- Exposing external row mark props
- Improved external row title integration
- Row title bug fix
- External row title is rendered in
RcsbFvRowTitle
- Exposed external row title additional properties
- Exposed row title external component
RowTitleComponentType
- Removed console output
- Fast sequence display includes description tooltip
- Multi-area display includes all points that intersect with the current domain
- Path/Line display optimization
- External row mark component property
isGlowing
not exposed
- External row mark component new property
isGlowing
is true when row glow is visible (false otherwise)
- One more external row mark component bug fix
- External row mark component bug fix
- Exposed configuration for the row mark icon (track pointing triangle). External callbacks events (hover and click) or full component definition
- Hover tooltip for area and sequences display bug fixed
- Improved how elements are rendered/updated in
RcsbLineDisplay
andRcsbAreaDisplay
- Removed all D3
transition
calls - Migration from
popper.js
tofloating-ui.js
. It improves rendering of popups - Changed
window
scroll events forIntersectionObserver
. It improves display performance while scrolling pages - New display
RcsbFastSequenceDisplay
renders sequences using a singletext
element
RcsbFv.reset
can be used to resetSelection
andxScale
objects. It clears the current selection and x-domain interval This is useful to avoid preserving selected regions or the domain range when the viewer is update with new configuration
- Area mousemove callback bug fixed
- d3 v7.6.1
- Multiple dependencies have been updated
RcsbFvBoard
resolves the ready-state promise when the component is updated and row configuration is empty
onFvRenderStartsCallback
call was removed fromRcsbFvTable
componentRcsbFvBoard
resolves the ready-state promise when board row configuration is empty
- Multiple dependencies have been updated
RcsbScaleFactory
provides objects (RcsbScaleInterface
) to extend the d3 scale classRcsbFvBoard
component responsibilities have been divided in different componentsRcsbFvTable
component renders the board tracksBoardGlow
component renders the board glow effectBoardProgress
component render the loaded trak statusRowGlow
component render single row glow effect
RcsbFvRowTrackInterface.renderSchedule
controls how the track is renderedsync
orasync
mousemoveCallBack
minor bug fixed
elementEnterCallBack
method is triggerd for area and line display when the mouse moves through the curve
- Auditing vulnerabilities
- Glow div elements are defined before the main board to avoid inconsistent height overflow. This bug was affecting Firefox browser
- Exposed a new method
getDomain
in classRcsbFv
to get the current domain
- typedoc v0.22.11
RcsbFv
exposes a new getter methodgetSelection
to retrieve the current selected region inf the feature viewerselection
andxScale
attributes have been moved fromRcsbFvBoard
class to the rootRcsbFv
and are passed toRcsbFvBoard
as React properties
- Multiple dependencies have been updated
RcsbFvBoardConfigInterface
interface attribute functionselectionChangeCallBack
accepts as inputArray<RcsbFvTrackDataElementInterface>
instead ofArray<SelectionInterface>
- Fixed selection array growing bug when adding custom regions
- Changed
setTimeout
calls to 'rxjs'asyncScheduler
RcsbFvDisplayTypes.MULTI_AREA ("multi-area")
displays multiple "additive" areas () with multiple colors using theRcsbFvDisplayTypes.AREA
display under the hood. This display config requiresdisplayColor
to be defined as aRcsbFvColorGradient
object wherecolors
is an array of hex andthresholds
and empty array (length 0). Track elementsRcsbFvTrackDataElementInterface.values
is a new property that stores multidimensional data (array of numbers). The display configuration requires thatRcsbFvTrackDataElementInterface.values
are comprised between 0 and 1 and sorted in ascending order. Its number of elements must match with the number of defined colors- css important comments to force keeping empty rules
- Expand title for non-fit prefixed rows
- Render callback empty row config bug fixed
- Added configuration callback when rendering starts
- Fixed alpha channel when threshold value is 0
- Added
!important
to UI menubox-sizing
RcsbFvDisplayTypes.BLOCK_AREA ("block-area")
displays track data as block shapes and alpha-gradient colors using theRcsbFvDisplayTypes.AREA
display under the hood. Display alpha-gradient color must define trackdisplayColor
as aRcsbFvColorGradient
object wherecolors
is a single hex andthresholds
an array of sorted (- to +) numbers in (0,1) that define the alpha level bins. Track elementsRcsbFvTrackDataElementInterface.value
are used to select the alpha level of the track position
- Clearing RcsbFvTrack if RcsbFvRowTrack is unmounted
- Mouse hover track element tooltip value tag changed from "val" to "value"
- Min prefixWidth when fitTitleWidth is used
- Minor code refactoring
- Attribute disableMenu hides the UI menu
- Attribute includeTooltip bug fixed
- Removed debugging print
- Large track zoom bug fixed
- Multiple panels bored glowing effect bug fixed
- Line/Area popup bug fixed
- Improved Area visualization
- Callback event methods defined on the element tracks include the event object as a second argument
- Board init and all data update methods return a promise where resolve is called after rendering all tracks
- RcsbFv defines promise-like methods then and catch. Method resolve is called after rendering all tracks
- Relative row position glow bug fixed
- Mouse hover row glow
- RcsbFvBoardConfigInterface.hideRowGlow (default false)
- Bug fix: Unhidden tracks due row title hover mark
- Configurable board borders
- Removed board row borders
- Row hover title marker
- Improved row dimension calculation and propagation
- New method to add selected regions: addSelection
- Track callback method call if defined
- Click callback method added to svg path elements
- Added getter method getElementClickCallBack
- Initial release