Changelog
2.3.0
cosmograph
- Configurable cluster labels limit; fixes
- Cache sanitized labels for better performance
- Cache images in IndexedDB
- Preserve aspect ratio ot loaded images
- Keep image size aligned with point size
- Load images concurrently
- Tweak shapes and links handling utils
- Tweak initial point spread based on their count
- Change
pointSamplingDistanceto100 - Support for point shapes and images
fix
- Prefetch images from cache before applying point shapes To fix the issue when loading a project always showed point shapes behind images even when disabled
- Donât call cosmos render after
setImageDatato avoid hover point reset - Use input point sizes for images on the first graph build
general
- Experimental AI docs
- Better error reporting
- Fix for
hidePointShapesForLoadedImageswhile images are loading - Better formatting for date labels
- Fix label colors update after point color change
- Tweak
pointGreyoutOpacity - Properly reset image loading on graph destroy or update
- Cache images; loading optimizations; Refactor
- Abort image loading then column gets unselected
2.2.1
general
- Restore support for config options and a callback removed in cosmos.gl 3.0
Restores support for config options and a callback removed in cosmosgl/graph#207 (cosmos.gl/graph 3.0) so existing Cosmograph users can keep using the old names until they migrate.
Changes
- Deprecated config props (accepted, then normalized):
pointColorâpointDefaultColor,pointSizeâpointDefaultSize,linkColorâlinkDefaultColor,linkWidthâlinkDefaultWidth,linkArrowsâlinkDefaultArrows. Declared inBasicConfigwith@deprecatedJSDoc. - Deprecated callback:
onSimulationRestart(replacement:onSimulationUnpause). Declared inSimulationEventConfig; invoked fromonSimulationUnpausein the event manager so both callbacks run on unpause. - Normalization: In
setConfig, after merging with defaults, any deprecated prop is copied to its replacement only when the replacement is not set. No changes to_createCosmosConfig; Cosmos receives the same config as before (extra keys are ignored). All compat code is commented as cosmos.gl/graph 3.0 compat and tagged withTODO: remove in Cosmograph v3. Not changed - Cosmograph already exposes only the new Cosmos API:
getPointsInRect,selectPointsInRect/unselectPointsInRect, andunpause(). The deprecated methodsgetPointsInRange,selectPointsInRange, andrestart()are not used or exposed; no compat layer added for them.
- Deprecated config props (accepted, then normalized):
2.2.0
cosmograph
- Add
getSampledLinksandgetSampledLinkPositionsMapmethods - Fix incorrect method call in
screenToSpacePosition - Reduce default space size to 4096 for better iOS support
- Add
setZoomTransformByPointPositionsmethod to set zoom based on point positions - Enhance
onRectSelectedcallback to include point indices - Update
getPointIndicesByExactValuesto handle null values- Updated the
getPointIndicesByExactValuesfunction to support querying for null values alongside other specified values, improving data retrieval accuracy.
- Updated the
- Update @interacta/css-labels to version 0.3.0
- Fix
resetSelectionOnEmptyCanvasClick- Changed the behavior of
resetSelectionOnEmptyCanvasClickto callunselectAllPoints()instead of resetting only_pointSelectionClientselection
- Changed the behavior of
- Fix table name references in link retrieval methods
- Updated
getLinksByPointIdsandgetLinksByPointIndicesmethods to uselinksTableNameinstead ofpointsTableNamefor accurate data retrieval.
- Updated
- Enhance
captureScreenshotmethod to support scaling- Updated
captureScreenshotmethod to accept an optionalscaleparameter, allowing for higher resolution screenshots.
- Updated
cosmograph > bars
- Multi-selection support, animation and sorting controls
- Added Shift+click multi-selection for bars.
- Updated
onClick(item, event)to carry mouseeventinformation. - Added togglable animation for bars during sorting.
- ui > Bars: Added new Bars config props for sorting/animation behavior:
moveFilteredToTopâ whentrue, filtered bars are grouped at the top during active filtering.animateSortâ enables/disables smooth transition when bar order changes.sortAnimationDurationMsâ controls sort transition duration in milliseconds.
- Applied sort updates immediately on relevant config changes so behavior/animation toggles take effect instantly.
- Improved
applyInFilterhandling for list/array accessors to make multi-select filtering consistent with exact-match behavior.
cosmograph > labels
- Fix weight resolution logic for points with
pointLabelWeightBy - Update @interacta/css-labels to 0.4.0 and sanitize label content with DOMPurify to prevent XSS
- Updated label handling for focused points
- Improved focused label handling by ensuring focused labels are prioritized and correctly tracked, including fallback mechanisms for position tracking.
cosmograph > search
- Update select all button text and adjust background colors
- Fix disabled state handling for accessor button
- Fix âall fieldsâ result selection didinât apply zoom and point selection
- Updated the
accessorgetter to return the index accessor when all fields are selected.
- Updated the
- Added zoom/focus on select configuration props
- Added new
zoomToPointOnSelectScale,zoomToPointOnSelectDuration,focusPointOnSelect, configuration options for tuning zoom and controlling focus ring on selected point in the search dropdown.
- Added new
general
- Update â@cosmos.gl/graphâ to â3.0.0-beta.6â This version removes all previously deprecated APIs. Cosmograph already uses the new names, so no functional changes are needed. Removed configs: pointColor, pointSize, linkColor, linkWidth, linkArrows, useClassicQuadtree, simulationRepulsionQuadtreeLevels Removed callback: onSimulationRestart Removed methods: getPointsInRange(), selectPointsInRange(), restart()
- Update â@cosmos.gl/graphâ to â3.0.0-beta.5â and â@interacta/css-labelsâ to â0.6.0â
- Use
cosmos.readyinstead ofdeviceInitPromisewhen initializing the graph
- Use
- Update â@cosmos.gl/graphâ to â3.0.0-beta.4â
- In new Cosmos
deviceInitPromiseis public readonly. Await it before marking Cosmograph initialized so the device is ready.
- In new Cosmos
- Update â@cosmos.gl/graphâ to â3.0.0-beta.2â
- BREAKING: Removed
simulationRepulsionQuadtreeLevelsconfiguration prop
- BREAKING: Removed
2.1.0
cosmograph
- Remove deprecated methods
- BREAKING: Removed
onSimulationRestart()andrestart(). UseonSimulationUnpause()andunpause()instead
- BREAKING: Removed
- Always update links on graph rebuild if they exist, not just when they changed
- Fixed a bug where links wouldnât render after a points-only change, as links need to be reset after Cosmos reinitialization
cosmograph > cosmographselectioncomponent
- Set active state before reset to prevent queries with invalid accessor
- Moved the setting of the active state to occur before resetting the filter to prevent invalid accessor queries during component updates.
cosmograph > bars+timeline+histogram
- Add
initialSelectionproperty- Introduced
initialSelectionproperty inCosmographBarsConfigInterface,CosmographHistogramConfigInterface, andCosmographTimelineConfigInterfaceto allow for restoring saved filter states after data loads.
- Introduced
cosmograph > data kit
- Allow including all columns using
['*'] forpointIncludeColumnsandlinkIncludeColumns`
cosmograph > labels
- Add
showSelectedLabelsoption to control visibility of selected point labels during filtering- Introduced
showSelectedLabelsconfiguration to manage the display of labels for selected points when filtering is active. - Updated relevant interfaces and documentation to reflect the new option.
- Introduced
- Added event listener for
pointSizeScaleUpdatedto trigger label rendering based on point size scale updates - Improve rendering performance and new props for better label customization
- Introduced
showUnselectedPointLabelsoption to control visibility of labels for unselected points during filtering. - Added
showDynamicLabelsLimitandselectedPointLabelsLimitoptions to control the maximum number of dynamic labels and selected point labels displayed. - Fixed rendering priority (weight) for dynamic, top and selected labels.
- Improved label management during filtering and selection.
- Introduced
- Update labels visibility logic in some conditions
- Introduced
showFocusedPointLabelconfiguration option to control the visibility of labels for the focused point. - Cluster labels now remain active if filtering is active but point labels (
showDynamicLabels,showTopLabels,showFocusedPointLabel) are not configured/not visible.showLabelsForwill be still visible with cluster labels if specified - Fixed
customLabelsvisibility during simulaiton - Updated relevant documentation to reflect new features
- Introduced
cosmograph > layout
- Fix
randomSeedprop
cosmograph > search
- Add
selectConnectedPointsoption to configuration- Introduced a new configuration option
selectConnectedPointsto allow users to select all points connected to a selected point from the dropdown.
- Introduced a new configuration option
- Update accessor handling and improve search field logic
- Changed default accessor to
undefinedin search configuration (search by all fields). - Improved logic for managing selected search fields and rendering suggestions based on current input.
- CSS adjustments to ensure consistent styling and prevent text overflow.
- Changed default accessor to
- Fix css variables for footer
cosmograph > timeline
- Fixed default formatter that caused incorrect parsing for some dates
- ui: Added
defaultDateFormathelper function to export
- ui: Added
general
- Update â@cosmos.gl/graphâ to â2.6.4â
ui + cosmograph > search
- Sync styles for search input and suggestions
- Changed background color of search input and suggestions to use var(âcosmograph-search-background) for consistency.
- Updated text color for search suggestions to use var(âcosmograph-search-text-color).
ui > timeline
- Add support for symlog scale in timeline configuration
- Introduced
useSymlogScaleoption inTimelineConfigInterfaceto enable symlog scaling for the Y axis. - Updated default timeline configuration to set
useSymlogScaleto false.
- Introduced
2.0.1
cosmograph
- Improved error handling
- Improved error reporting mechanism that now includes DuckDB error tracking
- Fixed
processedFullythat will betrueonly if processed rows count is lower than actual rows count (even if data is incorrect) - Fixed
statusIndicatorModeconfig prop that ignoredfalsestate
cosmograph > cosmographsizelegend
- Fixed legend for
LinkWidthStrategy.Countwhen no accessor provided
cosmograph > data kit
- New
createMissingPointsprop for preparing links configuration- Modified
CosmographDataPrepPointsConfiginterface to includecreateMissingPointsproperty for controlling auto-creation of missing points from link source and target columns. - Updated
insertLinksfunction to check for and create missing IDs from both source and target columns ifcreateMissingPointsis enabled.
- Modified
cosmograph > histogram & timeline
- Fix
setSelectionmethod - Add
useQuantilesoption for quantized extent limitation
cosmograph > histogram + timeline
- Include outliers into the edge selections when
useQuantilesistrue
cosmograph > search
- Remove
multifieldSearchoption and implement âall fieldsâ option- Removed the
multifieldSearchconfiguration option fromCosmographSearch. - Introduced functionality to select âall fieldsâ for search queries.
- Updated search methods to accommodate the new all fields selection logic.
- Removed the
cosmograph > search & filtering
- Support array (VARCHAR[]) data handling
- Modified
FilteringClientto support filtering on array columns. - Updated
CosmographSearchto detect and handle array columns, allowing for more flexible search queries.
- Modified
cosmograph > timeline
- Fix
fetchDatamethod
general
- Update README.md