* implement edit page
* connectWithCleanup
* remove angular related code
* use loadingindicator
* use the correct loading component
* handle secureFields
* fixed implementation of secure fields
* Keep secureFields after rerendering the form
* CollapsableSection and Page refactor
* use checkbox instead of switch
* fix comment
* add cursor to section
* Fixed issues after PR review
* Fix issue with some settings being undefined
* new reducer and start with test
* algorithm to migrate secure fields
* UX: Minor UI Tweaks
* Added field around checkboxes, and missing required field
* fixed test
* tests for util
* minor tweaks and changes
* define as records
* fix typ error
* forward invalid to textarea and inputcontrol
* merge formdata and redux data in test
* fix issue with creating channel
* do not figure out securefields in migration
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Squash four commits and claim.
Credit to @ikkemaniac in #25034, but taking this to sign CLA and get it landed. Four commit message were:
- add 'fill' switch on Alert Tab
- add 'fill' to Alert init model. Make default value 'true' not to break current design
- use newly created alert.fill when rendering graph
- add 'line' switch on Alert tab, add 'line' to Alert init model. Set default to 'true' not to break current design. Use newly created alert.line when rendering graph
Should close feature req #7258.
* Move alert toggle to Display tab.
* Move alertThreshold to PanelModel.options.
* Fix ThresholdMapper tests by adding options to each mocked panel.
* Update documentation for the new display option.
* Update docs with review feedback.
* Handle onRender with null panel in ThresholdMapper
Support storing sensitive notification settings securely/encrypted.
Move slack notifier url and api token to secure settings.
Migrating slack notifier to store token and url encrypted is currently
a manual process by saving an existing slack alert notification channel.
saving an existing slack alert notification channel will reset the stored
non-secure url and token.
Closes#25113
Ref #25967
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
* creating page
* add types select
* adding switches
* start with converting angular templates to json
* converting more alert channels to new format
* convert remaining channels
* typing the form
* add validation, update models
* fix default value in type select
* fix type
* fix issue with validation rule
* add missing settings
* fix type errors
* test notification
* add comments to structs
* fix selectable value and minor things on each channel
* More typings
* fix strictnull
* rename ModelValue -> PropertyName
* rename show -> showWhen
* add enums and adding comments
* fix comment
* break out channel options to component
* use try catch
* adding default case to OptionElement if element not supported
* updated the alerting tab.
* changed so we use a confirm button.
* removed uncommeneted import.
* Change to secondary buttons
Co-Authored-By: Dominik Prokop <dominik.prokop@grafana.com>
* trying to fix issue with panel of undefined.
* Fix prettier
* Update public/app/features/alerting/AlertTab.tsx
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* Datasource/Cloudwatch: Adds support for Cloudwatch Logs
* Fix rebase leftover
* Use jsurl for AWS url serialization
* WIP: Temporary workaround for CLIQ metrics
* Only allow up to 20 log groups to be selected
* WIP additional changes
* More changes based on feedback
* More changes based on PR feedback
* Fix strict null errors
* Explore: Create basic E2E test
* Feature: adds e2e tests for panel inspector
* Refactor: adds ts-ignore because of type checking errors
* Refactor: changes after PR comments and updates snapshot
* Refactor: adds typings back for IScope
* e2e: adds e2e for panel edit
Co-authored-by: Andreas Opferkuch <andreas.opferkuch@gmail.com>
If no image renderer available/installed when adding a new alert notification
channel will set Include image to false per default, otherwise true as before.
If no image renderer available/installed when adding/edit alert notification
channel will show an informational message that you need to install the
Grafana Image Renderer plugin for Grafana to be able to render an image.
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
* Part1: Unicons implementation (#23197)
* Create a new Icon component
* Update icons in main sidebar
* Update icons in Useful links and in react components on main site
* Update icons in Useful links and in main top navigation
* Adjust sizing
* Update panel navigation and timepicker
* Update icons in Panel menu
* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)
* Update icons in add panel widget
* Resolve merge conflict
* Fix part of the test errors and type errors
* Fix storybook errors
* Update getAvailableIcons import in storybook knobs
* Fix import path
* Fix SyntaxError: Cannot use import statement outside a module in test environment error
* Remove dynamic imports
* Remove types as using @ts-ignore
* Update snapshot test
* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax
* Remove color prop from icon, remove color implemetation in mono icons
* Update navbar styling
* Move toPascalCase to utils/string
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Resolve type errors resulted from merge
* Part2: Unicons implementation (#23266)
* Create a new Icon component
* Update icons in main sidebar
* Update icons in Useful links and in react components on main site
* Update icons in Useful links and in main top navigation
* Adjust sizing
* Update panel navigation and timepicker
* Update icons in Panel menu
* Update icons in add panel widget
* Resolve merge conflict
* Fix part of the test errors and type errors
* Fix storybook errors
* Update getAvailableIcons import in storybook knobs
* Fix import path
* Fix SyntaxError: Cannot use import statement outside a module in test environment error
* Remove dynamic imports
* Remove types as using @ts-ignore
* Update snapshot test
* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax
* Implment icons in Tabs
* Implement icons in search items and empty list
* Update buttons
* Update button-related snapshot tests
* Update icons in modals and page headers
* Create anfular wrapper and update all icons on search screen
* Update sizing, remove colors, update snapshot tests
* Remove color prop from icon, remove color implemetation in mono icons
* Remove color props from monochrome icons
* Complete update of icons for search screen
* Update icons for infor tooltips, playlist, permissions
* Support temporarly font awesome icons used in enterprise grafana
* Part1: Unicons implementation (#23197)
* Create a new Icon component
* Update icons in main sidebar
* Update icons in Useful links and in react components on main site
* Update icons in Useful links and in main top navigation
* Adjust sizing
* Update panel navigation and timepicker
* Update icons in Panel menu
* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)
* Update icons in add panel widget
* Resolve merge conflict
* Fix part of the test errors and type errors
* Fix storybook errors
* Update getAvailableIcons import in storybook knobs
* Fix import path
* Fix SyntaxError: Cannot use import statement outside a module in test environment error
* Remove dynamic imports
* Remove types as using @ts-ignore
* Update snapshot test
* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax
* Remove color prop from icon, remove color implemetation in mono icons
* Update navbar styling
* Move toPascalCase to utils/string
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Icons update
* Add optional chaining to for isFontAwesome variable
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Part3: Unicons implementation (#23356)
* Create a new Icon component
* Update icons in main sidebar
* Update icons in Useful links and in react components on main site
* Update icons in Useful links and in main top navigation
* Adjust sizing
* Update panel navigation and timepicker
* Update icons in Panel menu
* Update icons in add panel widget
* Resolve merge conflict
* Fix part of the test errors and type errors
* Fix storybook errors
* Update getAvailableIcons import in storybook knobs
* Fix import path
* Fix SyntaxError: Cannot use import statement outside a module in test environment error
* Remove dynamic imports
* Remove types as using @ts-ignore
* Update snapshot test
* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax
* Implment icons in Tabs
* Implement icons in search items and empty list
* Update buttons
* Update button-related snapshot tests
* Update icons in modals and page headers
* Create anfular wrapper and update all icons on search screen
* Update sizing, remove colors, update snapshot tests
* Remove color prop from icon, remove color implemetation in mono icons
* Remove color props from monochrome icons
* Complete update of icons for search screen
* Update icons for infor tooltips, playlist, permissions
* Support temporarly font awesome icons used in enterprise grafana
* Part1: Unicons implementation (#23197)
* Create a new Icon component
* Update icons in main sidebar
* Update icons in Useful links and in react components on main site
* Update icons in Useful links and in main top navigation
* Adjust sizing
* Update panel navigation and timepicker
* Update icons in Panel menu
* NewPanelEditor: Fixed so that test alert rule works in new edit mode (#23179)
* Update icons in add panel widget
* Resolve merge conflict
* Fix part of the test errors and type errors
* Fix storybook errors
* Update getAvailableIcons import in storybook knobs
* Fix import path
* Fix SyntaxError: Cannot use import statement outside a module in test environment error
* Remove dynamic imports
* Remove types as using @ts-ignore
* Update snapshot test
* Add @iconscout/react-unicons to the shouldExclude list as it is blundled with es2015 syntax
* Remove color prop from icon, remove color implemetation in mono icons
* Update navbar styling
* Move toPascalCase to utils/string
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Update icons in Explore
* Update icons in alerting
* Update + and x buttons
* Update icons in configurations and settings
* Update close icons
* Update icons in rich history
* Update alert messages
* Add optional chaining to for isFontAwesome variable
* Remove icon mock, set up jest.config
* Fix navbar plus icon
* Fir enable-bacground to enableBackgournd
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
* Merge remote branch origin master to icons-unicons
* Revert "Merge remote branch origin master to icons-unicons"
This reverts commit 3f25d50a39.
* Size-up dashnav icons
* Fix alerting icons, panel headers, update tests
* Fix typecheck error
* Adjustments - add panel icon, spacing
* Set TerserPlugin sourceMap to false to prevent running out of memory when publishing storybook
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
because id is never defined on notification object, the condition 'n.id === an.id' is equal to 'undefined === undefined' which is always true.
that code is responsible for the situation when you delete one endpoint and it removes all of them.
* NewPanelEdit: Added angular options to new panel editor and started looking and angular component state
* Moved angular component state to redux
* Close to working 100%
* Think everything is working
* AlertTab: Alert tab now gets angularComponent from redux
* Fixed panel menu access to angular panel component
* Added new tests
* Fixed unit test
* Fixed strict null errors
* Fixed typescript issues
* fixed issues
* Annotations: Makes various annotation and alert calls cancelable
Fixes#21943
* Refactor: Uses backendSrv.get method with requestId instead
* Update public/app/features/annotations/annotations_srv.ts
Co-Authored-By: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
* WIP: Angular panel chrome, this is going to be tricky
* AngularPanelChrome: initial render works
* Options are showing up
* viz options working
* Fixed singlestat background
* AngularPanels: Fixed alert tab
* Removed anuglar loading spinner
* Dashboard: Refactor dashboard reducer & actions
* Dashboard: minor refactoring
* PanelChrome: loading state moved to header
* Subscribe to render events to solve title update issue
* Time info and query errors now works
* PanelHeader: unifying angular and react behavior
* added getPanelMenu test
* Scrollable now works again
* Various fixes
* Making stuff work
* seperate event emitter for angular
* Fixed issue sending updated dimensions to angular panel
* Minor tweaks
* Fixed tests
* Alerting: alert state now works
* Fixed unit tests
* Fixed a few null check errors
* Simplified events handling
* Fixed strict null checks
* Chore: Remove angular dependency from backendSrv
* Refactor: Naive soultion for logging out unauthorized users
* Refactor: Restructures to different streams
* Refactor: Restructures datasourceRequest
* Refactor: Flipped back if statement
* Refactor: Extracted getFromFetchStream
* Refactor: Extracts toFailureStream operation
* Refactor: Fixes issue when options.params contains arrays
* Refactor: Fixes broken test (but we need a lot more)
* Refactor: Adds explaining comments
* Refactor: Adds latest RxJs version so cancellations work
* Refactor: Cleans up the takeUntil code
* Refactor: Adds tests for request function
* Refactor: Separates into smaller functions
* Refactor: Adds last error tests
* Started to changed so we require getBackendSrv from the @grafana-runtime when applicable.
* Using the getBackendSrv from @grafana/runtime.
* Changed so we use the getBackendSrv from the @grafana-runtime when possible.
* Fixed so Server Admin -> Orgs works again.
* Removed unused dependency.
* Fixed digest issues on the Server Admin -> Users page.
* Fix: Fixes digest problems in Playlists
* Fix: Fixes digest issues in VersionHistory
* Tests: Fixes broken tests
* Fix: Fixes digest issues in Alerting => Notification channels
* Fixed digest issues on the Intive page.
* Fixed so we run digest after password reset email sent.
* Fixed digest issue when trying to sign up account.
* Fixed so the Server Admin -> Edit Org works with backendSrv
* Fixed so Server Admin -> Users works with backend srv.
* Fixed digest issues in Server Admin -> Orgs
* Fix: Fixes digest issues in DashList plugin
* Fixed digest issues on Server Admin -> users.
* Fix: Fixes digest issues with Snapshots
* Fixed digest issue when deleting a user.
* Fix: Fixes digest issues with dashLink
* Chore: Changes RxJs version to 6.5.4 which includes the same cancellation fix
* Fix: Fixes digest issue when toggling folder in manage dashboards
* Fix: Fixes bug in executeInOrder
* Fix: Fixes digest issue with CreateFolderCtrl and FolderDashboardsCtrl
* Fix: Fixes tslint error in test
* Refactor: Changes default behaviour for emitted messages as before migration
* Fix: Fixes various digest issues when saving, starring or deleting dashboards
* Fix: Fixes digest issues with FolderPickerCtrl
* Fixed digest issue.
* Fixed digest issues.
* Fixed issues with angular digest.
* Removed the this.digest pattern.
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
Co-authored-by: Marcus Andersson <systemvetaren@gmail.com>
* add min_interval_seconds setting to alerting config
It will let operator enforce a minimum time for the scheduler to enqueue evaluations
* Introduce UI modifications
* Update docs
Co-authored-by: Martin <uepoch@users.noreply.github.com>
* Footer: Single footer implementation for both react & angular pages
* Export type
* Updates
* Use footer links in help menu
* Updates & Fixes
* Updated snapshot
* updated snapshot
* Pagerduty notifier: configurable severity
Instead of hardcoding `critical` make it configurable per notification channel instance.
* fix html
* Add a test to ensure default severity is correct
* Notifications doc
* Add a non-default test
* Add err check on NewJson (all tests)
* Add default severity (critical) to AlertNotificationEditCtrl class