* Wrap the inner template into div to prevent premailer from breaking the HTML structure
* Remove test row
* Add wrapper explanation
* Remove redundant code
* Add empty line
* loki: add helper function to handle range/instant queries
* improved comment
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* Create a "monarch" folder with everything you need to do syntax highlighting and autocompletion.
* Use this new monarch folder with existing cloudwatch sql.
* Add metric math syntax highlighting and autocomplete.
* Make autocomplete "smarter":
- search always inserts a string as first arg
- strings can't contain predefined functions
- operators follow the last closing )
* Add some tests for Metric Math's CompletionItemProvider.
* Fixes After CR:
- refactor CompletionItemProvider, so that it only requires args that are dynamic or outside of it's responsibility
- Update and add tests with mocked monaco
- Add more autocomplete suggestions for SEARCH expression functions
- sort keywords and give different priority from function to make more visually distinctive.
* Change QueryEditor to auto-resize and look more like the one in Prometheus.
* Add autocomplete for time periods for the third arg of Search.
* More CR fixes:
- fix missing break
- add unit tests for statementPosition
- fix broken time period
- sort time periods
* Bug fix
* first things
* show affected rules when creating silence
* revert typescript bump
* fix yarn lock
* fix import order
* fixing tests
* some layout for affected alerts
* fix test
* add default description
* review part 1
* Add a badge for number of affected alerts
* fix test
* remove blank space
* refactor resource picker
* add tests
* remove not used code
* remove unnecessary check
* fix broken tests
* update table tests now that we no longer expand second level by default
* add missing new line
* pr feedback
* fix broken test
* Added logic to reset metric name when changing namespace in Metric Query
* Added tests for reseting or not metricName onChange namespace
* Added tests for reseting or not metricName onChange namespace
* Removed comment
* Cleaned up tests
* Refactored namespace to be updated in utils
* Removed unecessary overrides for query and onQueryChange
* Renamed tests + used some instead of find
* Display error if no service graph data is returned
* Remove error message and update node graph no data logic
* Check processed nodes instead of rendered nodes for no data message
* Remove console.log
* Explore: modify tempo trace start time to human readable format in table output
Signed-off-by: tharun <rajendrantharun@live.com>
* add unit tests
Signed-off-by: tharun <rajendrantharun@live.com>
* Prevent rule deletion when creation in a new folder fails
* Fix handling duplication of rules when moving between folders
* Add unit test for unique name generator
* Fix typo
* I18n: Translate navigation items
* improve comment, remove console.log
* update mock macros
* Mark up all phrases for translation
* added deprecate text comment, moved translations to a seperate file
* use TestProvider in NavBarItem
* use TestProvider in nav tests
* remove text deprecation comment
* update translations
* Add filtering by matching label
* Add label and contact based filters to Notification policies
* Improve filters UI, add clear filters option
* Add clearing of filters before switching to adding mode
* Move filtering code to the AmRoutesTable component
* Fix the clearing of silences filter
* Remove key-based input resetting
* Use uniqueId for input key generation
* Add tests for notification policies filtering
* Moved flux case to its own return
* Added missing template replaces for limit, slimit, tz
* Added missing template replaces for select
* Added missing template replaces for group by
* Added tests
* PR changes
* Add PRO badge
* Allow adding extra content
* Add extra content for the new navbar
* Use highlight text instead of extra content
* Trigger extra events
* Remove ExtraContent
* Update public/app/core/components/NavBar/NavFeatureHighlight.tsx
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Remove redundant i
* Add UpgradeBox
* Move highlight to menu trigger
* Clear navbar next
* Cleanup
* Fix UpgradeBox styles
* Add arrow icon
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Added tests for wanted behavious in MetricsStatEditor
* Removed wrong import
* Updated MetricStatEditor to add new behaviour
* Updated tests to use react-select-event
* removed unused export
* Adding check for empty string in select value and force null
* clean up
* added check to avoid call to getMetric if there is no metricName selected
* removed todo
* removed empty lines
* Moved external import to top
* Refactored tests to copy props rather than overriding them
* Fix postgres QE a11y label issue
* Add aria-label to query-editor
* Remove unecessary element ID.
* Use aria-labeledby instead of aria-label
* Prefer aria-labelby with dynamic ids
* Prefer "for" over aria-labeledby
* Prefer "for" over aria-labeledby for MSSQL QE
* refactor: use server admin listing serviceaccounts
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
* setup route for specifc service account
* add routes to index
* main issue with spelling mistakes
* feat: make routes /serviceacconts/id for navModel
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
* Update pkg/services/serviceaccounts/manager/service.go
Co-authored-by: Jguer <joao.guerreiro@grafana.com>
Co-authored-by: Alexander Zobnin <alexanderzobnin@gmail.com>
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* add tests
* fix up
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
* Special case mixed datasources... :/
* Revert "Special case mixed datasources... :/"
This reverts commit dd0e3ea4a8.
* Ensure testdata persists datasource when switching scenario
* Add a unit test to prevent regressions
* kick drone
* Setting default values for props
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
* Using table instead
Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
* Mark up User profile page for translation
* Extract new messages
* updated selectors
* update selectors
* wip TestProvider
* update tests
* fix field labels
* extract new messages
* don't store date objects in redux state
* don't store date objects in redux state
* Refactor: move fetching from role picker to parent component
* Make built in role props optional
* Initial team role picker
* Add role picker to the teams list
* Optimize fetching roles
* Add pagination for the teams page
* Fix tests
* Hide roles if access control not enabled
* Fix test snapshots
* Refactor: use useAsync() hook
* Refactor: simplify input component
* Move api calls to separate file
* Refactor: use useAsync() hook for user role picker
* Tweak role picker input width
* Fix pagination
* Update test snapshots
* Use loading state from useAsync() hook
* Fix roles label if no roles assigned
* Chore: move constants to own file
* Chore: moves safe* functions to grafana/data
* Chore: moves safe* functions to grafana/data
* Chore: adds VariableQueryEditorProps and deprecates VariableQueryProps
* Chore: remove getDefaultVariableAdapters function
* Chore: moves transaction status to types
* Chore: fix tests that do not initialise TemplateSrv
* Chore: change space when stringifying
* Chore: revert safe* func move
* Chore: remove circular dependency in Explore utils
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>>
* Split silence matchers parameter into a separate entry for each label
* Unify the silence link creation
* Remove duplicated matchers when parsing to/from query params
* Add tests for matchers
* Add a comment with a duplication removal explanation
* Improve label duplication comment
* Remove redundant code
* Use uniqBy to simplify the code. Rename matchers parameter
* Fix Silence test data
* Serviceaccounts: feat - tabview for serviceaccounts
* WIP
* feat: listing all service accounts
* refactor: needed to remove showInvitees as not present in serviceaccounts
* add token column in the list
* add token to orgserviceaccount
* Update pkg/services/serviceaccounts/api/api.go
* user essentials mob! 🔱
* user essentials mob! 🔱
* WIP: Mob session work 🚧🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* mob next [ci-skip] [ci skip] [skip ci]
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* 🚧: Mob session work 🔱
* user essentials mob! 🔱
* user essentials mob! 🔱
* Move repeats suite under dashboard suite
* remove these generated files
* move repeats-suite into dashboards-suite
* Reexport dashboard jsons from play and update them
* 🚧: Mob session work 🔱
* 🚧: Mob session work 🔱
* Rename dashboards to work with stripnulls
* Run stripnulls
* Add repeat to row schema
* Clean up the rest of the repeating dashboards
* Fix tooltip sorting
* Update older dashboards
* Update golden files so tests pass
* format this to ensure consistent tabs/spaces
* undo whitespace changes
* Update scripts/stripnulls.sh
Co-authored-by: sam boyer <sam.boyer@grafana.com>
* update schema versions and test
Co-authored-by: thisisobate <obasiuche62@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: sam boyer <sam.boyer@grafana.com>
* TimeSeries panel: Add support for sorting series in the tooltip
* Fix cue tests
* Make sortValues work with string values
* Sort values in DatHoverView and remove sort index from TooltipPlugin
* Rename sortOrder prop to sort
* DataHoverView - use raw values for sorting
Typing `t a` in Explore or Dashboards will turn a relative time like "Last 1 hour"
into an absolute range to make the URL permanent, so that when sharing it others
will see the same data.
- registered `t a` in key service
- new `AbsoluteTimeEvent` dispatch via global event bus
- dashboard times handled in TimeSrv
- Explore times handled in Explore.tsx and Explore's time reducer
I could not find an easy way to combine time handling for Exlore and Dashboard in one place.
* Plugins: Change the PostgreSQL plugin to include more column types in Query Builder metaquery
Originally, the metaquery used in the PostgreSQL plugin to populate the
column dropdown menu in the Query Builder UI only included integer- and real-typed
columns. This change expands the list of acceptable types for plotting to
include numeric columns, boolean columns, and textual columns, as all are
types that could feasibly be desired to plot in a panel.
* Update types tracked in meta query builder
Removed the `boolean` and `text` types, but retained addition of `numeric` type as part of time series query builder.
* Update dependency typescript to v4.5.4
* Changes needed to support new TypeScript version
* kick drone
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Fix a11y issues in OpenTSDB configuration page
* Fix a11y issues in OpenTSDB editor
* Link labels to inputs where possible
Co-authored-by: kay delaney <kay@grafana.com>
* wip: add form inputs for creating mute timing
* form for mute timings
* add action for submitting config
* fix bug in payload
* add table for viewing mute timings
* remove mute timing from routes when deleted
* attach mute timing to route
* edit a mute timing
* use field array for multiple intervals
* Add confirmation modal for deleting mute timing
* add default values to form inputs
* fetch am config prior to renderring form
* validation for mute timing fields
* fix tests
* tests for mute timing form
* small ui fixes for the form and table
* pass mute name as query param
* make time fields inline
* fix validation for an existing alert and overwrite on edit
* rename mute timing in routes on edit
* fix validation for time inputs
* make time interval its own component
* add descriptions for mute timings
* refactor time interval parsing functions
* fix linting and tests
* refactor makeAmLink
* docs for mute timings
* reorganize docs and add intro for mute timings
* doc review edits
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
* run prettier
Co-authored-by: achatterjee-grafana <70489351+achatterjee-grafana@users.noreply.github.com>
* Allow customizable googlechat message via optional setting
* Add optional message field in googlechat contact point configurator
* Fix strange error message on send if template fails to fully evaluate
* Elevate template evaluation failure logs to Warn level
* Extract default.title template embed from all channels to shared constant
* AccessControl: Add user metadata to user detail view
* AccessControl: Do not present delete or disable buttons based on ac metadata in admin/users
* AccessControl: do not allow password changing or user editing without permission
* AccessControl: Fetch global:users scope for admin
* AccessControl: optimize org.user metadata fetch
* Chore: early return if ac metadata is not available
* BarGauge: fix vertical view flip issue
* fix bar misalignment in vertical and horizontal orientations
* add test to prevent bar misalignment in the future
* Revert externalization of the tslib so it gets bundled with the plugins.
* Adding pnp-webpack-plugin to properly resolve dependencies in nested plugins.
* added dependency on lodash.
* AccessControl: Disable user remove and update roles when they do not have the appropriate permissions
* AccessControl: Ensure frontend tests pass in CI
* [cr] whitelist flexbox styles in text panel editor
* [cr] separate sanitize function for text panel only
* [cr] separate markdown function for text panel
* [cr] common markdown options
* Update dependency eslint-plugin-react to v7.27.1
* Fix up code to work with new version of eslint-plugin-react
* kick drone
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* Implement left arrow to close menu for now, fix list style on firefox
* Implement onLeft
* Fix outline of first item in navbar
* Fix focus styles appearing when using mouse
* add unit test
* Azure Monitor: Bug fix for template variables.
- Adds back support for custom dropdown field names (such as those that use template variables)
- No longer clears a dropdown if selected value is an unknown option. (Hopefully makes debugging dynamically generated dashboards from json easier to debug).
- Add back support in UI for custom values
* influxdb: influxql: query editor: skip fields for metadata
* test added
* removed forgotten line
* updated test name
* updated comment
* simplified test code
* Replace redundant wording
* Add term key
* Reduce wording and move down tooltip
* Reduce margin between tooltip and button
* Correct manual margin to same as button's
* add state filters for prom alerts
* combine state filters
* add datasource filter for panel
* remove duplicate state check
* show only prom, loki, and grafana datasources
* pass the correct value to buildScaleKey()
* drop unnecessary type casting
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
* fix linting errors
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>