* UI: ConfirmButton component
* UI: add link button variant
* UI: add ConfirmButton story with delete option
* Chore: use ConfirmButton instead of DeleteButton
* UI: remove DeleteButton
* UI: rename confirmButtonVariant to confirmVariant
* UI: use Form.Button in ConfirmButton
* Chore: use sm ConfirmButton size after changing defaults
* Revert "UI: add link button variant"
This reverts commit 4372350daa.
* Chore: add 'link' variant type to the Button
* UI: DeleteButton component on top of ConfirmButton
* Chore: use DeleteButton instead of ConfirmButton
* Chore: DeleteButton, use md size by default
* Chore: update test snapshots
* Logs: Optional logs label column
- reintroduces label column that was removed when log details were
introduced
- added to explore and also as a new option to logs panel
- explore column settings now stored in localstorage
- labels are rendered with font size xs
- labels that start with `_` or are called `level` or `filename` are not
displayed
- removed click handlers and moved remaining `LogLabel` logic into `LogLabels`
* Added prop to satisfy interface
* Review feedback
* removed comment
* Changed label of label column switch
* Add support for primitive values/onchange
* Fix segment clickaway bug
* Fix onchange
* Use primitive in cloudwatch
* Add placeholder
* Use placeholder in cloudwatch editor
* Fix lint error
* Fix lodash import
* Use new component story format
* Add support for autofocus
* Use selectable value for onchange event
* Fix lint error
* UI: ConfirmModal component based on Modal
* UI: refactor ConfirmModal after Modal changes
* UI: use Icon component for Modal
* UI: ConfirmModal tests
* UI: ConfirmModal story
* update fixed
* update fixed
* update fixed
* don't change any tests
* add mising space
* Custom unit formats
* return a string for kbn
* return a string for kbn
* return a string for kbn
* Simplify unit tests
* More units
* fix more tests
* fix more tests
* fix more tests
* format values
* format values
* TimeSeries to string
* more kbn tests
* use the formatted value
* BarGauge: Fixed font size calculations
* support prefix
* add si support
* avoid npe
* BarGauge/BigValue: value formatting
* fix some tests
* fix tests
* remove displayDateFormat
* another unicode char
* Graph: Use react unit picker
* Updated unit picker
* Fixed build errors
* more formatting
* graph2 tooltip formatting
* optional chaining
* Adding component, story and documentation file
* forgot files
* Add label and formvalidation
* fix for error/invalid message
* fixing font color when input is disabled
* red border if invalid
* fixing props and label margin
* added support for icon in input
* support for button and loading state
* redoing some of the markup
* fixing height on addons
* Adding some basic documentation
* remove not used types file
* Add some more knobs
* move component to it's own directory, updated styling
* create component and extract some shared styles
* update story name
* Adding focusstyle and knobs
* Sorting knobs, fix paddings
* accidentaly put in a line break
* use variable names in commonStyles
* add simple mdx docs
* Adding size to TextArea
* more shared styles
* remove unused import
* Panels: Added support to set panel padding to zero
* WIP: fullChromeControl work
* Tweaks to header position
* Reverted some overlay mechanic and now back to no title only
* Fixed test
* Fixed transparent flag
* Added show title
* Added font weight to value
* Reverted back to no padding option
* Fixed issue with border and width and height
* Introduce new Switch component
* Experiment with different focus style
* Review update
* Update on/off swtch colors
* Introduce Form.Field component
* Enable className prop on form's field
* Remove not used imports
* Update packages/grafana-ui/src/components/Forms/Field.tsx
Co-Authored-By: Peter Holmberg <peterholmberg@users.noreply.github.com>
* Make switch usable in field story
* Add predefined input sizes
* Add util to display story on a debug canvas
* Test form
* Updated the test form
* Fix snapshot
* Adding component, story and documentation file
* forgot files
* Add label and formvalidation
* fix for error/invalid message
* fixing font color when input is disabled
* red border if invalid
* fixing props and label margin
* added support for icon in input
* support for button and loading state
* redoing some of the markup
* fixing height on addons
* Adding some basic documentation
* remove not used types file
* Add some more knobs
* move component to it's own directory, updated styling
* Adding component, story and documentation file
* forgot files
* Add label and formvalidation
* fix for error/invalid message
* fixing font color when input is disabled
* red border if invalid
* fixing props and label margin
* added support for icon in input
* support for button and loading state
* redoing some of the markup
* fixing height on addons
* Adding some basic documentation
* remove not used types file
* Add some more knobs
* move component to it's own directory, updated styling
* Add Icon component
* Add useClientRect helper hook
* Add missing Icon types
* Simplify Inputs styling (POC)
* Render theme knob in a separate group
* Update packages/grafana-ui/src/components/Forms/Input/Input.tsx
Co-Authored-By: Peter Holmberg <peterholmberg@users.noreply.github.com>
* Update packages/grafana-ui/src/components/Forms/Input/Input.tsx
* Improve comment
* Restore increase/decrease spinner on number inputs
* Add period
* use input color variables
* fix test
* Expose input styles from getFormStyles
* Chore: Move and wrap Cascader component to @grafana/ui
Closes#19042
* Removes unneeded props from interface and removes rc-trigger
* Removes more unneeded props
* Explore: fixes toolbars datasource selector and date picker responsiveness
* Explore: updates grafana UI time picker component - adds a class on long date
* Explore: updates styles for responsive long date without split
* Explore: adds styles for responsive time picker with long date during split
* Explore: updates long datetime detector to isDateTime, renames isAbsolute to hasAbsolute
* Explore: updates datasource responsiveness
* Explore: moves time picker styles
* Explore: updates datasource picker and select component responsiveness
* Explore: updates data source picker
* Explore: updates explore toolbar to use container width
* Explore: updates styles for datasource picker
* Explore: updates Grafana UI elements - select and single value with an ability to hide text
* Explore: updates time picker styles
* Explore: updates datasource select and date picker
* Explore: updates toolbar elements margin
* Explore: updates toolbar elements split breakpoints
* Explore: updates datasource picker label length with substrings
* Explore: updates the datasource picker label length
* Explore: removes refresh picker hide media query
* Explore: updates refresh picker style query to use xs breakpoint
Adds a config section with derived fields which is a config that allows you to create a new field based on a regex matcher run on a log message create DataLink to it which is the clickable in the log detail.
As discussed in a UX feedback session, it's annoying that queries are
automatically executed in Explore. This change adds props to override
the blur behavior.
- add `onBlur` to Explore query field props
- Explore's query row will pass down an empty function for onBlur to the
query fields
- pass onBlur through to the QueryField component for Loki and
Prometheus
- add test to QueryField to make sure if onBlur is specified, the
onRunQuery is not executed
* SafeDynamicImport: Fixes so that it shows different messages depending on error
* Refactor: Fixes type error
* Refactor: Adds grafana constant to error message
* Refactor: Renames components and adds exports
* Refactor: Uses react-loader instead
* Refactor: Updates after PR comments
* Tests: Adds tests for loadComponentHandler
* basic setup
* onclose fix
* styling and inline drawer
* add options and mdx
* remove blank line
* disable pushing page when opening drawer, re add mask opacity
* small fixes from pr review
* Add knobs and story with long content
* set redone markup and made title sticky
* Minor style update
* Minor style updates 2
* More explicit width prop
* fix import
Add LogDetail section that is shown when log line is clicked and expanded. Contains labels/fields and actions to show stats and add/remove label filter.
* Explore: Remove datasource testing on selector
- datasource testing gets in the way of fast query iteration: switching
between datasources can take seconds
- it should not be explore's duty to test datasources in the first place
- removed the concept of datasourceError in Explore, should not be its
concern
- datasource erorrs will express themselves in query errors just fine
- connection errors are still bubbled up
- removed reconnection logic from explore, should not be its concern
- missing labels in loki are still "visible" via an empty label selector
- Loki and Prometheus treated connection errors differently than other
datasources, making sure to pass through the original error message
* Show datasource error in query field for prom/loki/influx
* Removed connection test case, fixed disabled state
* Implement Label component
* Expose next-gen form components from grafana-ui under Forms namespace
* adding knobs to story, setting new variants and sizes
* handle next gen button in their own component
* removing duplication
* fix Thresholds test
* removing blank lines
* moving noUnusedLocals
* new button should not need theme
* remove not used export
* pseudo classes for focus state
* remove not used things
* use correct border radius
* extracting focus styles to commonStyles for reuse
* tidying up getButtonStyles
* Adding a few examples to the doc
* Adding props table
* Implement Label component
* Expose next-gen form components from grafana-ui under Forms namespace
* Minor Label update
* Add Legend component
* Test form story
* Expose Legend class name via getFormStyles
* Test
* FieldValidationMessage spacing
* Expose FieldValidationMessage styles via getFormStyles
* Update snapshot
* Bump storybook to 5.2.4
* Update yarn.lock
* Babel bump
* Add core-js 2 to dev deps for babel to resolve dependencies correctly
This is because storybook 5.2 introduced core-js 3.x which caused babel to have problems resolving core-js dependencies
* Basic components for HTTP settings migration WIP
* Add secureJsonFields to DataSourceSettings
* Introduce datasource-http-settings-next directive for backward compatibility
* fix lint
* renames
* rename fix
* TagsInput component
* move tags from app to grafana/ui
* implement tagsinput on datasourcesettings
* capitalize
* new file for react directive for testing
* some layout touch ups
* FormField story
* Minor touch ups
* add url validation
* using prevent default to prevent updating datasource when adding tag
* using Stylefactory and fix tslint issue on MouseEvent
* only show tlsauthsettings if tls or ca cert
* fix url input length
* fix for showAccessOptions
* Implemented CertTextArea, removed commented code
* removed commented / not used code
* Rename and add more elements to Certification component
* fixing newSecureJsonData
* spelling
* Fix issue with checkboxes being undefined
* Removed old partials and minor fix
* removed unused props from story
* Add simple group by component
* Make segment generic
* Refactoring segments. Add support for lazy loading
* Use base props
* Add example with grouped options
* Move examples to storybook
* Fixes according to pr feedback
* Cleanup
* added className
* Fixes according to feed back
* Add query string to api so that search can be imlemented in the future
* fixed unit symbols and description consistency in valueFormats/categories.ts
The preferred English spelling is "litre" (vs "liter") and "metre" (vs "meter"), except in American english. Also, the symbol for Litre is an uppercase 'L', not lowercase.
* Changed metre -> meter in units
* refatoring alert box and using alert
* refactoring alertbox to alert
* Changed default to Error
* added buttonText, onButtonClick, omRemove
* Minor fix to buttons
* fixed onRemove
* Explore: add no data points text to graph
* Explore: add console log for error (accidentaly removed)
* Explore: refactor, created getYAxes method for better readability
* Explore: remove unnecessary console.log
* Explore: fix getYAxes method to return value
* Graph: Simplify warning from no data points to No data
* Graph: constant series as override
- ability to define a series override that takes the first value of a
timeseries and produces constant series from it.
* Moved constant series override logic to grafana-ui
* Added docs for instant queries and constant series override
* Loki: Updated cheat sheet with new filter syntax
- updated cheat sheet with new filter syntax
- added user-specific examples from the user's label set
- added link to LogQL docs
- separated styles for examples (clickable) and expressions
* Review feedback
* POC: trying to see if there is a way to support objects in template interpolations
* Added support for nested objects, and arrays
* Added accessor cache
* fixed unit tests
* First take
* Use links supplier in graph
* Add field's index to cache items
* Get field index from field cache
* CHange FiledCacheItem to FieldWithIndex
* Add refId to TimeSeries class
* Make field link supplier work with _series, _field and _value vars
* use field link supplier in graph
* Fix yaxis settings
* Update dashboard schema version and add migration for data links variables
* Update snapshots
* Update build in data link variables
* FieldCache - idx -> index
* Add current query results to panel editor
* WIP Updated data links dropdown to display new variables
* Fix build
* Update variables syntac in field display, update migration
* Field links supplier: review updates
* Add data frame view and field name to TimeSeries for later inspection
* Retrieve data frame from TimeSeries when clicking on plot graph
* Use data frame's index instead of view
* Retrieve data frame by index instead of view on TimeSeries
* Update data links prism regex
* Fix typecheck
* Add value variables to suggestions list
* UI update
* Rename field to config in DisplayProcessorOptions
* Proces single value of a field instead of entire data frame
* Updated font size from 10px to 12px for auto complete
* Replace fieldName with fieldIndex in TimeSeries
* Don't use .entries() for iterating in field cache
* Don't use FieldCache when retrieving field for datalinks in graph
* Add value calculation variable to data links (#19031)
* Add support for labels with dots in the name (#19033)
* Docs update
* Use field name instead of removed series.fieldName
* Add test dashboard
* Typos fix
* Make visualization tab subscribe to query results
* Added tags to dashboard so it shows up in lists
* minor docs fix
* Update singlestat-ish variables suggestions to contain series variables
* Decrease suggestions update debounce
* Enable whitespace characters(new line, space) in links and strip them when processing the data link
* minor data links UI update
* DataLinks: Add __from and __to variables suggestions to data links (#19093)
* Add from and to variables suggestions to data links
* Update docs
* UI update and added info text
* Change ESC global bind to bind (doesn't capture ESC on input)
* Close datalinks suggestions on ESC
* Remove unnecessary fragment
* I needed to learn some rxjs and understand this more, so just playing around
* Updated
* Removed all the complete calls
* Refactoring
* StreamHandler -> observable start
* progress
* simple singal works
* Handle update time range
* added error handling
* wrap old function
* minor changes
* handle data format in the subscribe function
* Use replay subject to return last value to subscribers
* Set loading state after no response in 50ms
* added missing file
* updated comment
* Added cancelation of network requests
* runRequest: Added unit test scenario framework
* Progress on tests
* minor refactor of unit tests
* updated test
* removed some old code
* Shared queries work again, and also became so much simplier
* unified query and observe methods
* implict any fix
* Fixed closed subject issue
* removed comment
* Use last returned data for loading state
* WIP: Explore to runRequest makover step1
* Minor progress
* Minor progress on explore and runRequest
* minor progress
* Things are starting to work in explore
* Updated prometheus to use new observable query response, greatly simplified code
* Revert refId change
* Found better solution for key/refId/requestId problem
* use observable with loki
* tests compile
* fix loki query prep
* Explore: correct first response handling
* Refactorings
* Refactoring
* Explore: Fixes LoadingState and GraphResults between runs (#18986)
* Refactor: Adds state to DataQueryResponse
* Fix: Fixes so we do not empty results before new data arrives
Fixes: #17409
* Transformations work
* observable test data
* remove single() from loki promise
* Fixed comment
* Explore: Fixes failing Loki and Prometheus unit tests (#18995)
* Tests: Makes datasource tests work again
* Fix: Fixes loki datasource so highligthing works
* Chore: Runs Prettier
* Fixed query runner tests
* Delay loading state indication to 200ms
* Fixed test
* fixed unit tests
* Clear cached calcs
* Fixed bug getProcesedDataFrames
* Fix the correct test is a better idea
* Fix: Fixes so queries in Explore are only run if Graph/Table is shown (#19000)
* Fix: Fixes so queries in Explore are only run if Graph/Table is shown
Fixes: #18618
* Refactor: Removes unnecessary condition
* PanelData: provide legacy data only when needed (#19018)
* no legacy
* invert logic... now compiles
* merge getQueryResponseData and getDataRaw
* update comment about query editor
* use single getData() function
* only send legacy when it is used in explore
* pre process rather than post process
* pre process rather than post process
* Minor refactoring
* Add missing tags to test datasource response
* MixedDatasource: Adds query observable pattern to MixedDatasource (#19037)
* start mixed datasource
* Refactor: Refactors into observable parttern
* Tests: Fixes tests
* Tests: Removes console.log
* Refactor: Adds unique requestId
* Adding DashboardPicker component
* fix prop names
* fix prop names pt2
* add component and modify utils
* add showHour prop
* add minuteStep to TimeOfDayPicker, add value to DashboardPicker
* fix for dashboard picker, missed adding file
* Adding story
* add another story for hiding hour and style fixes
* fix these generated files
* fixes after review
* rename current value
* fix type issue on onChange
* fix story
* Adding T and P for bytes
Luckily, all the hard work was done before; just added in these prefixes for our production environment.
* Future-proofing with other values (why not?)
* Yottaflops?
* Cutting back down to Peta sizes, except for hashes
* Performance/Webpack: Introduces more aggressive code-splitting and other perf improvements
- Introduces dynamic imports for built-in plugins
- Uses dynamic imports for various packages (rst2html, brace)
- Introduces route-based dynamic imports
- Splits angular and moment into separate bundles
* add appending utility
* add appending utility
* update comment
* rename to mutable
* move mutable functions out of DataFrameHelper
* move mutable functions out of DataFrameHelper
* move mutable functions out of DataFrameHelper
* turn DataFrameHelper into FieldCache
* guess time from name
* graph the numbers
* return the timeField, not just the index
* just warn on duplicate field names
* only use a parser if the input is a string
* append init all fields to the same length
* typo
* only parse string if value is a string
* DataFrame: test fixes
* Switch to null for missing values
* Fixed tests
* datalink on field
* add dataFrame to view
* Use scoped variables to pass series name and value time to data links interpolation
* Use scoped variables to pass series name and value time to data links interpolation
* Enable value specific variable suggestions when Gauge is displaying values
* Fix prettier
* Add basic context menu with data links to GaugePanel
* Fix incorrect import in grafana/ui
* Add custom cursor indicating datalinks available via context menu (in Gauge only now)
* Add data links to SingleStat2
* Minor refactor
* Retrieve data links in a lazy way
* Update test to respect links retrieval being lazy
* delay link creation
* cleanup
* Add origin to LinkModel and introduce field & panel links suppliers
* Add value time and series name field link supplier
* Remove links prop from visualization and implement common UI for data links context menu
* Update snapshot
* Rename className prop to clickTargetClassName
* Simplify condition
* Updated drilldown dashboard and minor changes
* Use class name an onClick handler on the top level dom element in visualization
* Enable series name interpolation when presented value is a calculation
Since React and other dependencies bump caused some troubles with building packages that @kaydelaney and me tried to debug without any success, we decided to revert React 16.9.0 bump.
* Wip: Compiles and runs
* WIP: Logs Graph partially working
* Refactor: Adds GraphSeriesToggler
* Refactor: Adds tickDecimals to YAxis
* Refactor: Adds TimeZone and PlotSelection to Graph
* Refactor: Makes the graphResult work in Explore
* Refactor: Adds ExploreGraphPanel that is used by Logs and Explore
* Fix: Fixes strange behaviour with ExploreMode not beeing changed
* Fix: Adds onSelectionChanged to GraphWithLegend
* Refactor: Cleans up unused comments
* ExploreGraph: Disable colorpicker
In response to #18282
DataLinksEditor does not limit amount of links by default now (it was 1 link before, unless maxLinks prop was specified). Also, links that do not have label specified, are not rendered anymore.
* UI: Fixes issue where ToggleButtonGroup overlapped DataSourcePicker in Firefox
Closes#17692
* Select: added more padding to right to make space for indicator/caret