Commit Graph
58 Commits
Author SHA1 Message Date
Drew Slobodnjak c1065e6e68 Canvas: Add direction options for connections (#84620)
* Canvas: Add direction options for connections

* Fix radio control to handle default

* Fix broken options from merge

* Remove unused comment

* Change category and capitalize options for arrow

* Consolidate marker start and end for connections

* Fix linter issue
2024-03-21 11:38:17 -07:00
Drew Slobodnjak 3877d976d6 Canvas: Add snapping to vertex edit (#84417)
* Canvas: Add vertex control to connections

* Add function for vertex conversion

* Add vertex interface

* Add future vertex handling

* Only show vertices when connection selected

* Add vertices to save model

* Apply select constraint to first midpoint

* Add some infrastructure for vertex edit

* Render vertex edit and capture events

* Save vertex edit on button release

* Handle adding new vertices

* Limit number of vertices to 10

* Handle zoom for vertex edit and creation

* Rename future to add

* Remove more references to future

* Remove unsued console log

* Clean up styles

* Add some clarity for path generation

* Add clarity to connections event handling

* Canvas: Add snapping to vertex edit

* Remove unused color styling

* Add horizontal and vertical snap for vertex edit

* Add snapping during vertex creation

* Hide vertex before removal
2024-03-20 23:49:28 -07:00
Drew Slobodnjakandnmarrs f273681956 Canvas: Add vertex control to connections (#83653)
* Canvas: Add vertex control to connections

* Add function for vertex conversion

* Add vertex interface

* Add future vertex handling

* Only show vertices when connection selected

* Add vertices to save model

* Apply select constraint to first midpoint

* Add some infrastructure for vertex edit

* Render vertex edit and capture events

* Save vertex edit on button release

* Handle adding new vertices

* Limit number of vertices to 10

* Handle zoom for vertex edit and creation

* Rename future to add

* Remove more references to future

* Remove unsued console log

* Clean up styles

* Add some clarity for path generation

* Add clarity to connections event handling

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2024-03-15 09:35:07 -07:00
Drew Slobodnjakandnmarrs 6fc1a6a54f XYChart: Add data filter to manual mode (#81115)
* XYChart: Add data filter to manual mode

* Add onChange to data filter for manual editor

* Update placeholder for auto editor for consistency

* Filter x y fields based on frame

* Update frame calc for truthy

* Use display name instead for frame filter

* Update placeholders

* Apply frame filter to series prep

* Re run make gen cue

* Remove old TODO

* Force data filter to be selected

* minor cleanup

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2024-01-30 15:09:15 -08:00
Drew Slobodnjakandnmarrs 378c863616 Geomap: Support geojson styling properties (#80272)
* Geomap: Support geojson styling properties

* Add enum for geojson styles

* Move styleStrings outside of style function

* Add styling note to geoJSON docs

* Clean up geomap docs

* Add support for points

* Add simple example

* Add support for all geojson types and update example

* Update colors

* Update docs

* Remove old TODO

* Update geojson name

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2024-01-20 02:55:17 +02:00
Drew Slobodnjak 91e747d8ab XYChart: Fix data filter change bug (#80849)
* XYChart: Fix data filter change bug

* If no xAxis set, populate from dims
2024-01-19 09:43:05 -08:00
Drew Slobodnjakandnmarrs 2502fe4d19 Canvas: Add Pan and Zoom (#76705)
* Canvas: Add Zoom

* Scale selecto components based on zoom state

* Fix pan by reverting to 3.1.0 for zoom-pan

* Update to latest library that fixes pan regression

* Add mini map to canvas pan zoom

* Fix selecto and anchors on hover

* Update naming to be more clear

* Switch back to contentComponent

* Apply transformScale to drag and resize

* Update connection source and target scaling

* Add option to display mini map

* Update yarn lock

* Revert "Update yarn lock"

This reverts commit 3d1dd65d57.

* Set yarn lock to main

* Revert "Set yarn lock to main"

This reverts commit 64bc50557e.

* Update to Yarn 4

* Add react-zoom-pan-pinch

* Update react-zoom-pan checksum

* Revert changes to json files

* Remove last line of api merged

* Remove last lines of all impacted jsons

* Update home json

* Update coordinate calc function to include scale

* Fix types in coordinate calc function

* Fix util calculation for transform

* Fix arrow anchor shift behavior

* Fix scale offset when adding elements during zoom

* Fix drag of selected group during zoom

* Add feature flag for canvas pan zoom

* Revert "Add feature flag for canvas pan zoom"

This reverts commit b026e31d8d.

* Regenerate feature flag after merge

* Apply feature flag to enable pan zoom wrappers

* Add mini map toggle behind feature flag

* Simplify minimap behavior

* Update feature flag registry

* Set minimap to false by default

* fix gen-cue

* Set toggles gen to main

Add blank line to toggle gen csv

* Add canvas pan zoom to csv

* Remove old comment

* Change ref parameter to be more descriptive

* Rename visibleFun to be more descriptive

* Consolidate transformScale transformRef in util

* Remove non-null assertion on connection parentRect

* Consolidate parentRect null coalescing into object

* Remove minimap and change toggle

* Add controls inline help for pan and zoom

* Clean up mouse events

* Pull scale out of ref and isolate transform

* Remove transform ref from scene div

* Fix context menu visible behavior

* Fix connections and update util functions

* Move transform component instance to util

* fix backend test

* minor updates

* Clean up connections / fix minor bug where offset of arrow wasn't being calculated correctly

* missed connection code cleanup

* cleanup scene code a bit more

* actually fix backend test

* move eslint disable line closer to actual issue

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2024-01-02 11:52:21 -08:00
b166bdc3fc Stat: Add Percent Change Option (#78250)
* Stat: Add Percent Change Option

* Ensure div style only applied for percent change

* Add metrics section to gdev

* Apply new style and fix nan truthy

* Handle no text case properly

* Only display percent change with value

* Improve styling

* Remove VizOrientation dep and improve styling

* Display percent change for text mode name

* Add check for undefined percentChange

* Don't show percent change option for all values

* Make metric alignment more robust

* Make percent change column case tighter

Check undefined directly to avoid truthy issues

* Simplify percentChange calculation

* Add documentation for show percent change

* Add tests for percent change

* Refactor big value and pull out percent change

* minor changes

* initial approach at addressing setting % change colors to be conventional (not super happy with handling of contrast)

* Clean up initial color change approach (no need to handle 0 case as is handled as NaN currently

* Update shadow styling and include icon

* Update docs/sources/panels-visualizations/visualizations/stat/index.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* Stat: Add Percent Change Option (refactor and color exploration)  (#79504)

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>

* some missed cleanup :D

* update percent change to show to not be tied to text value; update docs accordingly

* initial start for fixing scaling of % change for no text mode

* Fix styling for case where textmode is none

* Tweak styling a bit for icon and minimum padding

* Apply flex wrap to container styles

* Update gdev for stat panel tests

* attempt at fixing horizontal percent change styling / placement

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-12-15 16:15:31 -08:00
9116043453 Storage: Add maxFiles to list functions (#76414)
* Storage: Add maxFiles to list functions

* Add maxDataPoints argument to listFiles function

* Add maxFiles to ResourceDimensionEditor

* Update pkg/services/store/http.go

* rename First to Limit

---------

Co-authored-by: jennyfana <110450222+jennyfana@users.noreply.github.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2023-11-01 09:42:24 -07:00
Drew Slobodnjakandnmarrs 97be80d1f0 Geomap: Fix route layer crosshair share (#76702)
* Geomap: Fix route layer crosshair share

* Update crosshair styling

* Consolidate horizontal and vertical lines

* Consolidate clear out

* Create const for crosshair color

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-10-24 08:15:31 -07:00
Drew Slobodnjakandnmarrs 4f2bbd490f Canvas: Add PUT to Canvas Button (#76844)
* Add PUT to canvas button

* Update cue file to include PUT

* Re run make gen cue

* fix gen-cue

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-10-23 09:24:34 -07:00
Drew Slobodnjakandnmarrs 7028406b6d Geomap: Fix Share View (#76787)
* Geomap: Fix Share View

* Fix share view for multiple panels and options

* clean up

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-10-20 15:00:40 +02:00
Drew Slobodnjakandnmarrs 046e9b7672 Canvas: Button API - Block Calls to Grafana (#76309)
* Canvas: Button API - Block Calls to Grafana

* Move origin check inside of api logic

* Change grafana url source from href to origin

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-10-11 09:21:02 -07:00
Drew SlobodnjakandLeon Sorokin 5604305271 BarChart: Gradient Mode for Auto Max (#74122)
* BarChart: Gradient Mode for Auto Max

* add gdev panel

* clean

---------

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2023-10-10 11:14:56 -07:00
Drew Slobodnjakandnmarrs 03baf210b3 Geomap: Add Symbol Alignment Options (#74293)
* Geomap: Add Symbol Anchor Options

* Update displacement for svg case

* For square and x, account for 45 degree offset

* Simplify displacement function

* Remove unused todo

* Update test defaults to include anchor

* Add missing anchor default to tests

* Move displacement function into utils and add test

* Simplify anchor position options UX

* Change verbage to alignment and swap direction

* Include missing alignment rename

* Update tests

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-10-05 09:01:56 -07:00
Drew Slobodnjak 92e7829e7a Geomap: Fix fixed edge text for network layer (#72863)
Geomap: Fix fixed edge text
2023-08-04 08:21:13 -07:00
59bed9e156 Geomap: Add network layer (#70192)
* Geomap: Add network layer

* Support text labels for nodes

* Add solid styling for edges

* Remove symbol option for edge style menu

* Add support for edge text labels

* Fix linter issues

* Simplify multiple data frame handling

* Add TODO notes

* Add node and edge style categories for options

* Remove data frame hardcoding

* Hide legend, attempt to hide tooltip by default

* Mark network layer as beta

* refactor updateEdge

* Fix some linter issues

* Remove attempt at disabling tooltip for network layer

* For edge text add a stroke and increase z index

* Restrict field selection based on frame type

* refactor

* add basic bad data handling (prevent entire panel from breaking)

* generate non hard coded graph frames for style editor filtering

* code cleanup; remove hardcoded reference to "edges" frame

* fix select clearing for Data option

* fix styling

* fix lookup

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
2023-07-26 11:58:55 -07:00
1a857552a1 Trend: Support disconnect values and connect nulls options (#70616)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-07-13 19:28:58 -07:00
2b7af7798c StateTimeline: Add disconnect value option (#70610)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2023-07-07 13:24:22 -07:00
b6d4b701b9 TimeSeries: Add option to disconnect values (#70097)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2023-06-21 21:26:15 -05:00
Drew Slobodnjak 0fa991a4b9 Prometheus: Heatmap Format with No Data (#68938)
* Prometheus: Heatmap Format with No Data

* Simplify conditional logic
2023-05-25 09:08:56 -07:00
Drew Slobodnjak 33af88481c Barchart: Update gdev dashboard for tooltips (#68657) 2023-05-17 15:11:27 -07:00
Drew Slobodnjak 160e207e47 Barchart: Apply field visibility to traceID (#68524) 2023-05-16 11:19:40 -07:00
Drew Slobodnjakandnmarrs 516cb30c36 Barchart: Add gdev dashboard for tooltips (#68417)
* Barchart: Add gdev dashboard for tooltips

* Add graph-ng tag for uplot dependency

---------

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-05-15 15:43:08 -07:00
Drew Slobodnjakandnmarrs a5e9a1f140 Barchart: Ensure data field overrides apply (#67872)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-05-11 18:35:57 +03:00
Drew Slobodnjak 1aadafe7d8 Geomap: Fix route layer zoom behavior (#63409)
* Geomap: Fix Zoom Bug

* Add handling for case where no segments created

* Simplify segment checks and pull logic into utils

* Rename pixel variables

* Roll back change to raw data response json
2023-03-03 16:06:14 -08:00
5cb0ee11e1 Geomap: Update documentation for 9.4 (#63281)
* Geomap: Update documentation for 9.4

* Update docs/sources/panels-visualizations/visualizations/geomap/index.md

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

---------

Co-authored-by: Nathan Marrs <nathanielmarrs@gmail.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
2023-02-23 09:39:27 -08:00
Drew Slobodnjakandnmarrs bbb572e73f Canvas: Improve anchor UX (#62409)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-02-03 12:02:37 -05:00
Drew Slobodnjak 43ce077133 Canvas: Update server element design (#62832) 2023-02-03 08:59:29 -08:00
Drew Slobodnjak db953c9a9c Canvas: Support color themes for arrows (#62829) 2023-02-03 08:50:36 -08:00
Drew Slobodnjak cf6952a963 Geomap: Ensure options work while in table view (#62632) 2023-01-31 12:24:13 -08:00
Drew Slobodnjakandnmarrs bf2cf76cad Geomap: Maintain consistent control styling (#62518)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-01-30 13:11:58 -08:00
Drew SlobodnjakandNathan Marrs 07dc994765 Canvas: Anchor highlight persistance (#62364)
* Canvas: Anchor highlight persistance

* Update public/app/plugins/panel/canvas/ConnectionAnchors.tsx

Co-authored-by: Nathan Marrs  <nathanielmarrs@gmail.com>

* Fix CONNECTION_ANCHOR_ALT dependencies

* Simplify anchor type assertion logic

* Ensure that anchor highlight is reset when anchors are hidden

* Add helpful comment on return bool of function

---------

Co-authored-by: Nathan Marrs  <nathanielmarrs@gmail.com>
2023-01-27 11:35:57 -08:00
Drew Slobodnjak f1bb108ae5 Geomap: Update readme to include doc link (#61258) 2023-01-19 12:27:45 -08:00
Drew Slobodnjakandnmarrs 516bdddcb5 Canvas: Add server element (#61104)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-01-19 12:03:17 -08:00
Drew Slobodnjakandnmarrs 5c7f77e402 Geomap: Add color gradients to route layer (#59062)
* Geomap: Add color gradients to route layer

* Add support for all color schemes

* Address PR feedback: remove ! from verified object

* Add arrow support and simplify color functions

* Simplify and clean-up code

* Remove line width slider and drive width by size

* Drive arrow size based on size

* Allow arrows for fixed color

* Add gdev dashboard

* Use square line caps only when arrows are active

* Apply size to width for fixed color and size

* Handle arrows when size and color are fixed

* Add tags to gdev dashboard

* Fix null error in backend test for gdev dashboard

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-12-15 09:54:08 -08:00
Drew SlobodnjakandNathan Marrs 38b74d8bd6 Geomap: Update documentation for 9.3 (#59164)
* Geomap: Update documentation for 9.3

* Update docs/sources/panels-visualizations/visualizations/geomap/index.md

Co-authored-by: Nathan Marrs  <nathanielmarrs@gmail.com>
2022-11-23 11:46:04 -08:00
ee8f292c6a Geomap: Improve location editor (#58017)
* add custom component for location editor

* FC cleanup

* Apply filter to add location fields call

* Create custom editor for location mode

* Apply validation logic and render warning

* Improve alert styling

* Add help url button to location alert

* Add success alert for auto

* Remove completed TODOs

* Only use alert on error, not success

* Change location mode to dropdown

* Change alert severity to less severe, info

* Prevent auto field selection during manual

* Update location testing to be for auto mode

* Run geo transformer editor init once

* Fix breaking test

* Clean up some anys

* Update styling for alert

* Remove auto success styling

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-11-22 11:24:56 -08:00
94d9baa9ff Geomap: Add photo layer (#57307)
* Geomap: Add photo layer

* Remove unrelated changes

* Add todos for follow up

* Geomap: simplify photos layer (#57320)

* photos layer

* Remove unused import

Co-authored-by: drew08t <drew08@gmail.com>

* Add field selector for image source

* Add radius slider

* Fix rendering issue

* Only update vector layer after image load

* Add border color selection

* Update question mark source

* Add gdev dashboard for photo layer

* Add panel title to gdev dashboard

* Add photo validation

* Update geomap gdev dashboard to remove null value for threshold

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-11-02 16:50:59 -07:00
Drew Slobodnjak cf4c0a5db4 Canvas: Minor fixes for canvas gdev dashboard (#57781) 2022-10-27 15:02:40 -07:00
Drew Slobodnjak 15d2653b89 Geomap: Docs for 9.2 (#56493) 2022-10-06 11:32:39 -07:00
Drew Slobodnjakandnmarrs 82d7f80a15 Canvas: Rename textbox to rectangle (#55633)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-09-30 10:44:47 -07:00
Drew Slobodnjak b0cd511ecc Geomap: Fix tooltip display option (#55956) 2022-09-28 15:21:21 -07:00
Drew Slobodnjakandnmarrs 6e85dfa25a Geomap: Add dynamic initial view options (#54419)
* Geomap: Add dynamic initial view options

* Add control options for dynamic initial view

* Add handling for last only scope

* Remove stale todos

* Only reinitialize map view during data if fit

* Add options for data fit

In map init, remove dependency on layers input.

Add a boolean to map view config to handle all layers, with default
set to true. Also, add layer string to handle currently selected layer.

Change some verbage.

In map view editor, add controls for data extent options. Only display
layer selection when all layers is not selected.

Update layer extent function to handle all options permutations. When
all layers is selected, return all data for extent calculation. When
last only is selected, only return last data point in matching layer for
extent calculation. Otherwise, return all data points in matching layer
for extent calculation.

* Change padding tooltip and hide for last only

* Simplify getLayersExtent call

* Add enums for data scope options

* Update GeomapPanel for refactor merge

* Move view init functions back into geomap class

Re-apply data change handling and extent calculation handling.

* Update padding tooltip verbage

* Ensure geomap panel options layers are initialized

* Clean up GeomapPanel file (betterer)

* refactors / clean up

* more cleanup

Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-09-21 13:11:44 -07:00
Drew Slobodnjak 600ea254af Geomap: Fix duplicate layer bug (#54660)
* Geomap: Fix duplicate layer bug

* Remove dependency on name parameter
2022-09-02 10:53:21 -07:00
Drew Slobodnjakandnmarrs e9e5c97807 Geomap: Update language to match documentation and remove beta (#53703)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-12 21:33:30 -04:00
ef24453b9b Geomap: Update Documentation (#53552)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
Co-authored-by: Nathan Marrs  <nathanielmarrs@gmail.com>
2022-08-12 15:37:10 -07:00
Drew Slobodnjakandnmarrs 64721bfa94 Geomap: Do not show markers with empty coordinates (#53330)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-04 21:17:32 -04:00
fe0f193189 Geomap: Add measuring tools (#51608)
* Geomap: add measuring tools

* Add measure type selection

* Add controls and state to measure overlay

* Override tooltip mouse events when menu active

* Move measure tools to top right

* Lay groundwork for units and consolidate measuring

* Create measure vector layer class

* Improve styling to match other overlay controls

* Consolidate styling and use theme2

* Update unit language and add km2

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-08-03 16:19:30 -07:00
Drew Slobodnjakandnmarrs e2044cde13 Canvas: Enable ability to instantly select and drag an element (#52861)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-28 16:55:31 -07:00
Drew Slobodnjak bf8bb26f63 Canvas: Set element cursor to grab (#52503)
* Only display grab cursor when editing enabled

* Apply grabbing cursor while dragging an element
2022-07-21 13:17:25 -07:00
Drew Slobodnjak 3c2ef54e04 Geomap: Fix tooltip offset bug (#52627) 2022-07-21 13:16:05 -07:00
Drew Slobodnjak feb9960f96 Canvas: Add constraint selection icons (#52504) 2022-07-20 09:49:34 -07:00
Drew Slobodnjak 644e82e85c Chore: update latest.json to 9.0.3 (#52298) 2022-07-14 18:56:25 -04:00
Drew Slobodnjak 7e9194e6e2 Geomap: update with template variable change (#52007)
After componentDidUpdate, check for a data change and apply it.

Fixes #51983
2022-07-08 15:46:01 -07:00
Drew Slobodnjakandnmarrs dec3c3a5b1 Canvas: Position inline editor default via panel dimensions and add context menu option (#51471)
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2022-07-07 19:16:22 -04:00
Drew Slobodnjak 6dc119ef56 Slider: Enforce numeric constraints and styling within the text input (#50905)
* Add NumberInput to core slider

* Change opacity interpretation

To be consistent with other layers, and CSS, opacity of 0 is fully
transparent and an opacity of 1 is fully opaque.

* Add state management for slider.

* Ensure number input step matches slider

* Style input width based on expected digits

* Improve styling for number input validation error
2022-07-07 11:57:03 -07:00
Drew Slobodnjak 07aa2bbbba GeomapPanel: Add base types to data layer options (#50053)
* GeomapPanel: Add base types to data layer options

Removed isBaseMap check from data layer filter, which used to remove
base layer types from data layer options. For layer editor, slider to
control opacity is added.

* GeomapPanel: Reorder data layer options

For data layer selection, present user with data layer types first,
before base map layer types. Refactored to consolidate layer options
into a single exported function in registry with a base map boolean.

* GeomapPanel: Add descriptions to base map types

* GeomapPanel: add hideOpacity and apply to markers

* GeomapPanel: update descriptions for map types

Closes #47812
2022-06-13 14:07:20 -07:00