Commit Graph
78 Commits
Author SHA1 Message Date
Marcus Andersson 17d87071e6 Transform: adding missing "table"-transform and "series to rows"-transform to Grafana v7-transforms. (#26042)
* Fixed so the merge for table values works as it did before.

* wip

* fixed tests.

* merge tests are green.

* removed unused code and simplify the seriesToRows.

* added time series to rows editor.

* using getFrameDisplayName for the metric value.

* updated description of transforms.

* updated docs.

* fixed according to feedback.

* changed from images to markdown tables for the examples.

* forgot to save :P
2020-07-08 12:40:05 +02:00
Marcus Andersson bbdcd59c50 Chore: updated testing in latest.json to 7.1.0-beta1. (#25988) 2020-07-01 18:49:55 +02:00
Marcus Andersson 039367336c Chore: added change log for 7.1.0-beta1. (#25978) 2020-07-01 15:02:01 +02:00
Marcus Andersson 700ab8f3d8 Chore: bumped version to next minor. (#25971) 2020-07-01 13:26:36 +02:00
Marcus Andersson 83df83fa42 Docs: updated packages reference docs for 7.1.0-beta1. (#25958) 2020-07-01 09:12:35 +02:00
Marcus Andersson 8e36a15968 TimeZonePicker: added possibility to toggle if internal time zones should be included or not. (#25934)
* made some small adjustments after feedback.

* made the flag optional.
2020-06-30 13:30:18 +02:00
Marcus Andersson 9421ae93f8 adding missing namedExport for lodash. (#25857) 2020-06-26 11:18:32 +02:00
Marcus Andersson 1abbb477cf TimeZone: unify the time zone pickers to one that can rule them all. (#24803)
* draft on a unified TimeZonePicker.

* most of the data structures is in place.

* wip.

* wip.

* wip: timezone selector in progress.2

* fixed so we have proper data on all timezones.

* started to add timezone into time picker.

* addeing time zone footer.

* footer is working.

* fixed so we use the timeZone picker in shared preferences.

* Added so we can change timeZone from picker.

* did some styling changes.

* will update timezone on all places that we need to update it.

* removed console.log

* removed magic string.

* fixed border on calendar.

* ignoring eslint cache.

* cleaned up the code a bit.

* made the default selectable.

* corrected so the behaviour about default works as expected.

* excluded timezone from change tracker.

* revert so default will always be the intial value.

* default will always fallback to the one in the config.

* do the country mapping on startup.

* fixed nit.

* updated snapshots for timepicker.

* fixed build errors.

* updating so snapshot tests is in sync.

* removed Date.now from prop since it will change each run in the snapshot tests.

* fixed so e2e tests works as before.

* moved files into separate folders.
2020-06-26 09:08:15 +02:00
Marcus Andersson 7f587b209f removed the event listener on will unmount instead of adding it again. (#25844) 2020-06-25 17:04:43 +02:00
a5b38b799a Build: scripts to build and measure packages reference docs (#24876)
* added script to check docs metrics.

* added information link on how to add code comments.

* added script for build and measure code comment metrics.

* fixed issues according to shellcheck.

* Added so we build the metrics if report folder is missing.

* added some spacing and a devider.

* Added so we can send metrics to grafana.

* added shellcheck attribute.

* Fixed spelling according to feedback.

* see if shellcheck passes.

* fixed issue with shellcheck.

* Explore/Logs: Fix tooltip display for log graph (#25544)

Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2020-06-16 09:33:23 +02:00
Marcus Andersson 989a1a3d5d fixed failing test. (#25619) 2020-06-16 08:02:55 +02:00
Marcus Andersson fb7d036fa4 Typescript: Fixed strict null errors. (#25609) 2020-06-16 07:34:27 +02:00
Marcus Andersson 093383eb83 Transform: added merge transform that will merge multiple series/tables into one table (#25490)
* wip: added draft of series to rows.

* wip: building dataFrame structure first and then adding data.

* wip: added some refactorings of the seriesToRows transformer.

* did some refactorings to make the code easier to follow.

* added an editor for the transform.

* renamed some of the test data.

* added docs.

* fixed according to feedback.

* renamved files.

* fixed docs according to feedback.

* fixed so we don't keep labels or config values from.

* removed unused field.

* fixed spelling errors.

* fixed docs according to feedback.
2020-06-15 15:03:13 +02:00
Marcus AnderssonandSofia Papagiannaki 927e698993 Chore: Updates CHANGELOG.md for 7.0.3 (#25331)
* Update CHANGELOG.md

* updated according to feedback.

* Update CHANGELOG.md

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>

Co-authored-by: Sofia Papagiannaki <papagian@users.noreply.github.com>
2020-06-03 20:25:21 +02:00
Marcus Andersson 83065c9a2c updated latest.json. (#25333) 2020-06-03 19:52:29 +02:00
Marcus Andersson 689425059f Build: adding a couple of things to try to improve the quality of the bug reports (#25282) 2020-06-03 09:52:39 +02:00
Marcus Andersson add1bcb59c Variable: removed __user.name/___.user.email from global variables and added docs for the rest of the __user variable. (#25275)
* added docs for new global variable.

* reverting the name + email so we only expose the bare minumum that should be enough for most cases.
2020-06-02 12:05:05 +02:00
Marcus Andersson 13787294c6 Variables: fix so the variable picker will remember selected options between filtering (#25119)
* added tests to verify flow.

* refactoring picker reducer.

* made all the tests green.

* removed console.log's

* fixed toggle all and making sure the correct values are set on picker open.

* added more tets.

* refactored and added table tests.

* fixed so we select values from selectedValues instead of options.

* fixed so you can navigate and select even after you have filtered a variable.

* adding tests to verify flows when toggling by highlight.

* fixed so enter always selects value before closing.

* improved the code for tags.
2020-06-01 15:06:51 +02:00
Marcus Andersson f795a1577c Fix: make sure that we the gauge panel can handle scenario with no data. (#24938)
* make sure that we can handle the empty data scenario in the gauge.

* reverted Guague.tsx and set default values on no data.
2020-05-27 14:51:15 +02:00
Marcus Andersson 731deb9628 Fix: adding missing icons in the elastic query editor and the single stat editor. (#24914)
* fixed issue that the icon was missing in es group by.

* fixed missing icon in the single stat value mappings.
2020-05-20 12:04:48 +02:00
Marcus Andersson cadadb6290 Docs: fixing link issue with time range controls in "what's new". (#24794) 2020-05-18 17:17:59 +02:00
Marcus Andersson 6a0abf895e Docs: generated a 7.0 version of the packages reference docs. (#24708)
* fixes so we match the transformer based on name properly.

* changed the signature on the FieldMatcher.

* introduced a names option so you can filter in name specificly.

* changed so the matcher UI uses the new options format.

* moved the exported functions together.

* changing editors a bit.

* made the filter by name work with both regex and name filtering.

* fixed failing tests and make sure we always parse regex the same way.

* removed unused code.

* simplified to make the existing field overrides still working.

* fixed issue reported by hugo.

* added tests for the name matcher.

* added tests for filter by name.

* added more tests.

* generated new version of the packages docs.

* fixed spelling error.

* regenerated the docs.
2020-05-14 21:34:59 +02:00
Marcus Andersson 98d5633601 Fix: changing so we are using date/time values in UTC during test. (#24707) 2020-05-14 20:59:42 +02:00
Marcus Andersson 96f26cbd5b Transform: fixes so we match the field based on the proper name. (#24659)
* fixes so we match the transformer based on name properly.

* changed the signature on the FieldMatcher.

* introduced a names option so you can filter in name specificly.

* changed so the matcher UI uses the new options format.

* moved the exported functions together.

* changing editors a bit.

* made the filter by name work with both regex and name filtering.

* fixed failing tests and make sure we always parse regex the same way.

* removed unused code.

* simplified to make the existing field overrides still working.

* fixed issue reported by hugo.

* added tests for the name matcher.

* added tests for filter by name.

* added more tests.
2020-05-14 20:48:43 +02:00
Marcus Andersson cab066f8ce TimePicker: some fixes and polish after testing feedback (#24585)
* make sure we render the delaynow value from dashboard to the time picker settings.

* Added the time zone in the tooltip.
2020-05-13 07:26:03 +02:00
Marcus Andersson 28f54bc2f7 TimePicker: fixed so you can enter a relative range in the time picker without being converted to absolute range (#24534)
* fixed so you can enter a relative date in the time range form.

* did some small adjustments to make sure proper value is stored.
2020-05-12 09:47:50 +02:00
Marcus Andersson cb4266bae0 PanelEditor: Fix so defaults is selected when datasource can't be found. (#24526) 2020-05-12 08:03:52 +02:00
Marcus Andersson a521a39ebf TimeZone: added e2e tests for the custom time zone support. (#24442) 2020-05-11 11:46:57 +02:00
Marcus AnderssonandDiana Payton dc49d81693 Docs: adding documentation for the new time zone functionality (#24080)
* added timezone override information.

* added usp.

* added some code comments.

* added more documentation of the date and time functionality.

* Update docs/sources/reference/timerange.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* some small adjustments.

* fixed comments according to feedback.

* Update packages/grafana-data/src/datetime/parser.ts

* Update packages/grafana-data/src/datetime/parser.ts

* Update packages/grafana-data/src/datetime/parser.ts

* fixed final feedback.

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-05-07 11:59:40 +02:00
Marcus Andersson 5800009951 Docs: added information about improved time zone support to change log. (#24372) 2020-05-07 10:42:43 +02:00
Marcus Andersson 8de6ef473f Graph: Fixed issue with x-axis labels showing "MM/DD" after viewing dashboard with pie chart . 2020-05-06 16:05:00 +02:00
Marcus Andersson 67b4c84399 Panel: will fix so the correct links is generated to the panel view. (#24301)
* fixed a couple of bad links.

* adjusted so we use the correct type of links.

* cleaning up links regarding edit/viewing panels.

* fixing edit link.

* reverted back to panelId for the image urls.

* reverted back.

* remvoed the editPanel: null since it is obsolete.
2020-05-06 09:48:30 +02:00
Marcus Andersson be8c62033c Select: fixes so component loses focus on selecting value or pressing outside of input. (#24008)
* changed the value container to a class component to get it to work with focus (maybe something with context?).

* added e2e tests to verify that the select focus is working as it should.

* fixed according to feedback.

* updated snapshot.
2020-04-29 15:02:09 +02:00
Marcus AnderssonandDominik Prokop 7d58ec3d47 AlertTab: some ui updates (#23971)
* 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>
2020-04-28 10:06:27 +02:00
Marcus Andersson cc3fc18076 Docs: enable packages reference docs for 7-beta (#23953)
* added packages reference menu item.

* removed the draft flag.

* Updated docs by running script.
2020-04-28 09:53:58 +02:00
Marcus Andersson 14de3db275 Build: adding support to rollup *.json files to include moment-timezone data. (#23951) 2020-04-27 17:20:15 +02:00
Marcus Andersson 1a0c1a39e4 DateTime: adding support to select preferred timezone for presentation of date and time values. (#23586)
* added moment timezone package.

* added a qnd way of selecting timezone.

* added a first draft to display how it can be used.

* fixed failing tests.

* made moment.local to be in utc when running tests.

* added tests to verify that the timeZone support works as expected.

* Fixed so we use the formatter in the graph context menu.

* changed so we will format d3 according to timeZone.

* changed from class base to function based for easier consumption.

* fixed so tests got green.

* renamed to make it shorter.

* fixed formatting in logRow.

* removed unused value.

* added time formatter to flot.

* fixed failing tests.

* changed so history will use the formatting with support for timezone.

* added todo.

* added so we append the correct abbrivation behind time.

* added time zone abbrevation in timepicker.

* adding timezone in rangeutil tool.

* will use timezone when formatting range.

* changed so we use new functions to format date so timezone is respected.

* wip - dashboard settings.

* changed so the time picker settings is in react.

* added force update.

* wip to get the react graph to work.

* fixed formatting and parsing on the timepicker.

* updated snap to be correct.

* fixed so we format values properly in time picker.

* make sure we pass timezone on all the proper places.

* fixed so we use correct timeZone in explore.

* fixed failing tests.

* fixed so we always parse from local to selected timezone.

* removed unused variable.

* reverted back.

* trying to fix issue with directive.

* fixed issue.

* fixed strict null errors.

* fixed so we still can select default.

* make sure we reads the time zone from getTimezone
2020-04-27 15:28:06 +02:00
Marcus Andersson a2d741f60f Docs: run the api-extractor on master to update docs (#23726)
* regenerated packages docs.

* fixed spelling issues.

* fixed spelling issues.
2020-04-21 10:41:50 +02:00
Marcus Andersson ab98a8be3b Runtime: make sure we don't lose nested default config values (#23560)
* Fixed so we dont miss the deep default options.

* removed console log.

* remove check of feature toggle and assuming that the new variables are the default ones.

* removed e2e statement about used featuretoggles.
2020-04-15 10:54:52 +02:00
Marcus Andersson ab8305fcb9 Docs: added code comments for everything in the @grafana/runtime package. (#23456)
* added comments for the angular loader.

* added code documentation for backendSrv.

* docs for datasource_srv.

* added some more docs.

* added documentation for the locationsrv.

* started to add docs for echo srv.

* added docs for meta srv.2

* added docs for analytics.

* draft documentation of the DataSourceWithBackend.

* added docs for last files.

* fixed all warnigns in api-extractor.

* fixed some typos and captializations.
2020-04-15 10:46:51 +02:00
Marcus Andersson 32066a3f67 Build: removed circular dependencies to make grafana/ui build again (#23468)
* fixed dependecy issues.

* Fixed so we don't have any circular dependencies.

* added missing type.

* fixed formatting issue of config.

* skipping sourcemap again.
2020-04-09 09:42:59 -07:00
Marcus Andersson 1496da036b PanelEdit: made the transformers tab re-render on changes (#23384)
* fixed so the transformers UI is less buggy.

* changed so we don't mutate state.
2020-04-07 19:54:06 +02:00
Marcus Andersson 6a5794aa7a adding missing named export. (#23385) 2020-04-07 11:33:11 +02:00
Marcus Andersson d6b8aaa7b0 Transformers UI: Fixed import issue. (#23382) 2020-04-07 07:37:54 +02:00
Marcus AnderssonandTorkel Ödegaard 1f717f514a TabelPanel: add support for organizing fields/columns. (#23135)
* Added draft on transformers to sort and hide fields.

* added structure for the UI.

* draft on sorting/filtering UI.

* simplified the datastructure a bit.

* added draft on drag and drop support.

* added some super simple styling. Nothing final still waiting for a proper design on this.

* updated lockfile after merge.

* changed so we use the new path for button.

* added one more test.

* Ignore feature toggle

* Moved editor to app

* Added top description

* Minor update

* Did some renaming and simplified the code a bit.

* fixed so we dont use capital naming on the transformer.

* changed to an vertical drag and drop design.

* added support to rename fields.

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-07 06:54:09 +02:00
dea91c1fd6 Panel: added possibility to group plugins in a panel according to a grid. (#22028)
* POC grid layout of gague.

* added a grid property that can be used to auto size the charts within a panel.

* fill the grid

* fix lint

* change default for stat panel

* avoid empty cells

* Moved to absolute positioning

* Fixed spacing

* Another fix

* Improve layout algorithm

* VizRepeater: Reverted back to so this is auto behavior for some panels

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-04-04 16:57:06 +02:00
Marcus Andersson ac7af7d4c3 TemplateVariables: make sure we handle multi/single value with correct data type (#23208)
* Fixed issue with multi value.

* Made some refactorings after feedback from Torkel and Hugo.

* minor refactorings.

* changed so we don't make the current value to array if multi is false.

* added snapshot to contain v23.

* Fixed so we always use the correct type when setting value for multi/non-multi.

* added some more tests.

* added tests.

* some small adjustments after feedback
2020-04-01 18:13:38 +02:00
Marcus Andersson aae76d797b TemplateVariable: moved templateSrv dependency from reducer to prevent side effect issues. 2020-04-01 18:05:16 +02:00
Marcus Andersson 87796c2b23 Storybook: Field validation Story (#23227) 2020-03-31 15:59:12 +02:00
Marcus Andersson f75387bd14 Fix: reverted back to import * as module instead of using namespaces (#23069)
* Removed namespace declaration to prevent issues with external plugins.

* fixed imports and tests.
2020-03-25 17:01:43 +01:00
Marcus Andersson 41bc1aa3ae DataLinks: make sure we use the correct datapoint when dataset contains null value. (#22981)
* Fix to make sure we have the correct dataIndex when using data links.

* fixed strict null errors.

* decreased number of errors.
2020-03-24 08:19:19 +01:00
Marcus AnderssonandHugo Häggmark a7a1406415 Variables: migrates ad hoc variable type to react/redux. (#22784)
* Refactor: moves all the newVariables part to features/variables directory

* Feature: adds datasource type

* Tests: adds reducer tests

* Tests: covers data source actions with tests

* Chore: reduces strict null errors

* boilerplate that will be replaced by real code.

* added old editor template.

* added initial version of ad hoc editor.

* added working (apart from add) version of the editor.

* Added placeholder for picker.

* Have a working UI. Need to connect it so we refresh the variables on changes.

* variable should be updated now.

* removed console.log

* made the url work.

* cleaned up the adapter.

* added possiblity to create filter directly from table.

* moved infotext from general reducer to extended value of adhoc.

* fixed strict null errors.

* fixed strict null errors.

* fixed issue where remove was displayed before being added.

* fixed issue with fragment key.

* changed so template_src is using the redux variables.

* minor refactorings.

* moved adhoc picker to adhoc variable.

* adding tests for reducer and fixed bug.

* added tests or urlparser.

* added tests for ad hoc actions.

* added more tests.

* added more tests.

* fixed strict null error.

* fixed copy n pase error.

* added utilit for getting new variable index.

* removed console.log

* added location to reducerTester type and created a module type for it.

* changed so we only have one builder pattern.

* fixed tests to use static expected values.

* fixed strict errors.

* fixed more strict errors.

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2020-03-23 09:00:36 +01:00
Marcus Andersson 5cf7803264 Fix: failing tests when running on none english os. (#22913) 2020-03-20 10:34:35 +01:00
Marcus Andersson be192b8191 Chore: migrate admin/users from angular to react + redux (#22759)
* Start adding admin users list page to redux/react.

* removed unused code.

* added pagination.

* changed so we use the new form styles.

* added tooltip.

* using tagbadge for authlabels.

* remove unused code.

* removed old code.

* Fixed the last feedback on PR.
2020-03-16 09:53:20 +01:00
Marcus Andersson f44c0f0643 Datasource: making sure we are having the same data field order when using mixed data sources. (#22718)
* changed so data query response always it returned in the correct order when using mixed data sources.

* refactored the code to make it a bit simpler and not failing the tests.

* changed to simple array type.
2020-03-12 18:16:32 +01:00
Marcus Andersson f26d14eef1 reverting the changes that failed the e2e tests. (#22714) 2020-03-11 11:26:52 +01:00
cc813d71c6 Templating: Migrates some variable types from Angular to React/Redux (#22434)
* Refactor: Adds variables in state to TemplateSrv

* Refactor: Introduces some typings and structures

* Refactor: Introduces picker to adapter

* Refactor: Removes useState and introduces contains instead

* Refactor: Introduces Variable Editor

* Refactor: Adds uuid and simplifies state

* Refactor: Consolidates to VariableRenderer

* Refactor: Adds name change capability

* Refactor: Adds variableMiddleware

* Refactor: Adds ability to change Angular type to type in State

* Fix: Fixes so we check for duplicate names

* Refactor: Adds ability to change State type to type in Angular

* Refactor: Updates name in dashboard templating list

* Refactor: Adds label change to VariableEditor

* Refactor: Adds hide change to VariableEditor

* Refactor: Adds update ability

* Refactor: Adds tooltip

* Refactor: Adds SelectionOptionsEditor

* Refactor: Adds query editor and validation

* Refactor: Adds regex and sort to editor

* Refactor: Adds Selection options

* Refactor: Adds Varible Values Previewer

* Refactor: Changes from array in state to Record

* Refactor: Removes getVariableAtIndex from templateSrv

* Tests: Fixs broken tests

* Chore: Fixes duplicate merge import

* Refactor: Removes strict null errors

* Refactor: Adds duplicate variable

* Refactor: Adds remove variable

* Refactor: Adds change order of variables

* Refactor: Adds add new variable

* Chore: Fixes Prettier formatting

* Refactor: Adds VariablePicker

* Fixed so sub menu is displayed when we only have redux template variables.

* removed unused variable.

* tags will be visibile in the new react picker.

* added some nice colors to the tags.

* Added thunk for selecting a tag.

* Refactor: Cleans up templating state when dashboard unloads

* Refactor: Adds save capabilities for variables in state

* added possibility to select tag.

* Added so you can deselect a tag.

* Fixed issue with coloring on top.

* minor refactoring to make the code more slim.

* Refactor: Fixes dispatch return and copy of variable

* selecting options when tag i selected

* small refactoring.

* fixed so we use options.

* Refactor: Adds getValueForUrl capabilities

* first implementation of keyboard navigation on picker.

* removed comment.

* fixed so you can toggle all options.

* Refactor: Simplified state handling using Redux Toolkit and flat reducer structure

* Refactor: Adds sharedTemplatingReducer and queryVariableReducer

* Tests: Fixs broken tests

* Chore: Removes some strict null errors

* Tests: Fix broken tests

* Refactor: Splitted QueryVariablePicker into smaller components

* Refactor: Moves linktext and selected tags to component instead

* Fix: Fixes the ability to have multiple dropdowns opened at same time

* Fix: Fixes onKeyDown from prev refactor

* Refactor: Adds searchfilter searching

* Tests: Fixes after running e2e tests

* Refactor: Adds an attempt to solve dependencies at startup

* Refactor: Adds feature toggle

* Refactor: Resets all angular files to master

* Refactor: Move stuff to query folder

* Refactor: Initial commit for SubMenu component

* Refactor: Updated DashboardModel with new list

* Refactor: Adds feature toggle to dashboard model and friends

* Refactor: Adds picker to SubMenu

* Refactor: Fixes styling on SubMenu

* Refactor: Fixes processvariables

* Refactor: Initial EditorList skeleton

* Refactor: Refactors out VariableEditorList and VariableEditorContainer

* Refactor: Adds New variable functionality

* Refactor: Adds registred types

* Refactor: Adds edit existing variable functionality

* Refactor: Changes params to thunks

* Refactor: Small fix for cleaning up state when clicking update/add

* Refactor: Better typings for outer containers

* Refactor: Adds change order functionality

* Refactor: Removed notify angular args

* Change so the url is in sync with the redux template variables.

* Adding support for saving proper values and checking changes.

* Refactor: Adds duplicate variable functionality

* Feature: Adds remove variable functionality

* Refactor: Small refactor so e2e tests work as before

* Refactor: Returns null if no visible variables

* Refactor: Adds annotations to SubMenu

* Refactor: Fixes toggling of annotations in SubMenu

* added dashboard links to new submehu.

* Refactor: Small refactor breaking up into smaller components

* Fix: Fixes infinite recursive loop when changing varible name

* Templating: Do not mutate location query state

* Refactor: Fixes minor timing issue when adding new variable

* Refactor: removes initialization in variable_srv constructor

* Refactor: Suggestion on how to handle templating.list in DashboardExporter

* Refactor: Adds getVariables typings and changes ChangeTracker and ShareSnapshotCtrl

* Refactor: Adds getVariable on DashboardModel and changes DashboardMigrator

* Fix: Fixes repeated panels

* wip: starting to add custom variable type.

* Refactor: Merging two different toVariablePayload functions

* Tests: Fixes broken tests

* Fix: Reduces strict null errors

* Tests: Initial commit and fixes strange dependency order

* Tests: Covers sharedTemplatingReducer with tests

* Refactor: Rename state/index.ts => state/reducers.ts as every where else

* Refactor: Renames and moves adapters.ts

* Tests: Adds tests for templatingReducer

* Tests: Adds intitial tests for queryVariableReducer

* starting to ad custom variable.

* Tests: Adds more queryVariableReducer tests

* Added support for custom variable. Next up applying some DRY principles and refactoring.

* fixed compile issue.

* added todo.

* Tests: Fixes broken test

* Tests: Covers queryVariableReducer with tests and fixed a couple of bugs

* Fix: Fixes broken test

* Fix: Reduces strict null errors

* change so custom won't be depending on anything elese.

* fixed descriptions.

* removed unused dependency.

* Fixed issue when adding a new variable and editor is being unmount twice.

* fixed issue with select option loop.

* changed so we update query on typing in editor and removed it from component state.

* Moved runQuery up one level in the component tree.

* renamed action and moved it to custom actions.

* moved applyStateChanges to shared code.

* removed todo comment.

* first stab on moving picker to more general.

* Refactor: Changes so we always show variables type

* removed duplicate code regarding picker.

* Did some renamings.

* Feature: Adds text box variable type

* moved tests from query reducer to picker reducer.

* Removed picker from VariableState.

* removed reference to picker.

* Some more refactorings of the picker reducer + actions.

* Chore: Refactors away editor state to its own state slice (#22515)

* Refactor: Inital move, tests not working

* Tests: Adds editorReducer tests

* Refactor: Cleaning up

* Refactor: Moves logic to thunk instead

* Refactor: Initial commit

* Refactor: Combines reducers to one state

* Refactor: Adds combine reducers

* moved navigation logic flow to a thunk instead of in the component.

* fixed issue with rendering picker link.

* Refactor: Removes variable prop from templating.variables

* refactored and removed some more code.

* Feature: adds Constant variable type

* fixed so tags can be selected.

* Fix: fixes default hide for constant and enum order

* fixed so tags works again.

* Fix: fixes so we use Angular editor when newVariables is not defined

* Fix: fixes wrong hide default for Constant variable

* Fix: fixes bug when using duplicate button

* Fix: changes action id

* Tests: prepares for newVariables

* Chore: reduces strict null errors

* Refactor: removes uuidInEditorReducer for simplification

* Chore: changes after PR comments

* Chore: uses getConfig instead of config

* Tests: fixes so e2e tests check for feature toggle and fixed initLock bug

* Refactor: changes so sharedReducer uses createSlice instead

* Refactor: changes textBoxVariableReducer to use creactSlice instead

* Refactor: changes queryBoxVariableReducer to use creactSlice instead

* Refactor: changes customVariableReducer to use creactSlice instead

* Refactor: changes constantVariableReducer to use creactSlice instead

* Refactor: moves types to specific types.ts files instead

* changed so we use queryValue stored on the variable to populate options input when opening picker.

* Feature: adds the ability to test templating thunks using real store and middleware

* Chore: cleans up unused import

* excluded queryValue from the getSaveModel

* Refactor: adds whenAsyncActionIsDispatched to reduxTester

* Tests: adds initial tests for processVariables

* Added reducer tests for constant variable.

* added tests for custom reducer.

* added tets for texbox reducer.

* Tests: adds more tests for ProcessVariable

* Refactor: fixes processVariable flow so we do notrun updateOptions twice

* Tests: finishes tests for processVariables and removed skip test

* added actions tests for custom and constant.

* Tests: adds tests for setOptionFromUrl

* Tests: adds a naive variable mock builder

* Tests: adds tests for validateVariableSelectionState

* added tests for query variable actions.

* added last test for query actions.

* added more tests.

* some more tests.

* fixed typing errors.

* Fixed issues with variable tags.

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-03-10 08:53:41 +01:00
Marcus Andersson d227353321 Fix: when reloading page make sure that time picker history is converted to dateTime. 2020-03-05 13:14:42 +01:00
Marcus Andersson 29a8417c93 Docs: Removed menu links to SDK Reference until we are ready for 7.0 (#22509) 2020-03-02 15:49:44 +01:00
Marcus Andersson 6bc369629d Docs: adding first version of the auto-generated packages API docs. (#22107)
* trying out api-extractor.

* works with our setup of build.

* wip.

* changed the packages so it works better with the api-extractor.

* Changes to make the api-extractor to work.

* cleaned up the api-extractor config files.

* added some more documentation.

* added tsdoc-metadata to gitignore.

* removed the generated docs (will do that in another PR).

* added execute permission to script for generating dosc.

* added so we will push generated docs to branch.

* will clean packages_api on abort.

* Fixed failing tests.

* fixed formatting issue with typedoc comment.

* temporarily disabled tslint rules about namespace until https://github.com/microsoft/rushstack/issues/1029 is resolved

* temporary enabled bable namespaces.

* updated build script.

* updated script.

* updated script with some colors.

* changed to camelCase.

* removed spacing.

* Starting to add documentation guidelines.

* added examples headline.

* added menu options.

* added parameters and return values.

* Fixed merge error.

* Added first version of auto-generated docs.

* changed so we use the eslint ignore syntax.

* changed to correct eslint ingnore comment.

* fixed some spelling errors reported by codespell.

* added script to generate docs in current folder.

* updated api docs.

* lerna bootstrap.

* added eror to the ingore words list.

* removed file that should be ignored.

* updated locKFILE.

* referenced the code comments guidelines.

* updated packages.

* updated deps.

* updated the autogenerated dosc.

* adding missing new line.
2020-02-26 10:03:53 +01:00
Marcus Andersson 204682e9b8 Fix: making select to return empty list when no values are selected in multivalue mode.
* Fixed error in storybook when remving selections.

* moved fix to select base instead of in story.

* updated to check for null or undefined.
2020-02-25 15:07:13 +01:00
Marcus Andersson 12f1af2956 Fix: Added missing "remove"-icon for light theme. 2020-02-25 14:43:15 +01:00
Marcus Andersson e2038e0614 Docs: adding API reference documentation support for the packages libraries. (#21931)
* trying out api-extractor.

* works with our setup of build.

* wip.

* changed the packages so it works better with the api-extractor.

* Changes to make the api-extractor to work.

* cleaned up the api-extractor config files.

* added some more documentation.

* added tsdoc-metadata to gitignore.

* removed the generated docs (will do that in another PR).

* added execute permission to script for generating dosc.

* added so we will push generated docs to branch.

* will clean packages_api on abort.

* Fixed failing tests.

* fixed formatting issue with typedoc comment.

* temporarily disabled tslint rules about namespace until https://github.com/microsoft/rushstack/issues/1029 is resolved

* temporary enabled bable namespaces.

* updated build script.

* updated script.

* updated script with some colors.

* changed to camelCase.

* removed spacing.

* Starting to add documentation guidelines.

* added examples headline.

* added parameters and return values.

* Fixed merge error.

* changed so we use the eslint ignore syntax.

* changed to correct eslint ingnore comment.

* fixed some spelling errors reported by codespell.

* added script to generate docs in current folder.

* lerna bootstrap.

* removed file that should be ignored.

* updated locKFILE.

* referenced the code comments guidelines.

* updated packages.

* updated deps.
2020-02-25 13:59:11 +01:00
Marcus Andersson 08bf2a5452 TimePicker: fixing weird behavior with calendar when switching between months/years (#22253)
* fixed issues with timepicker closing when month is changed.

* removed console.logs.

* fixed so calendar isn't changing size when selecting several dates.

* Prevent calendar from closing when changing year.

* fixed according to PR feedback.
2020-02-18 12:30:11 +01:00
Marcus Andersson 6dada090b3 Chore: Upgrade Storybook to 5.3.9 (#21550)
* Upgraded to latest stroybook.

* Upgraded to version 5.3.9

* updated yarn.lock file.
2020-01-30 07:49:43 +01:00
Marcus Andersson ffe0a1f975 Fixed strict errors (#21823) 2020-01-29 14:18:06 +01:00
Marcus Andersson cab082438e Fix: prevents the BarGauge from exploding when the datasource returns empty result. (#21791)
* Fixed issue where gauge throw error on empty result.

* Some refactorings to improve the code.

* Added some tests to make sure this doesn't happen again.
2020-01-29 11:40:30 +01:00
Marcus Andersson 1c0d022ac2 Dashboard: fixes issue with UI not being re-rendered after moving dashboard 2020-01-27 11:30:16 +01:00
Marcus Andersson 4e3ff19689 Dashboard: fixed issues with re-rendering of UI when importing dashboard (#21723)
* Fixed issues with angular digest and new backendSrv.
* Fixed failing tests.
2020-01-27 11:29:46 +01:00
Marcus Andersson f46ee12364 Build: Added devenv docker block for testing grafana with traefik. 2020-01-27 11:29:04 +01:00
Marcus Andersson 45dc4a834e Fix: when clicking a plot on a touch device we won't display the annotation menu (#21479)
* Fixed so when clicking a plot on a touch device we won't display the annotation context menue.

* Refactorings after feedback.

* changed to standard-ish comment.
2020-01-14 14:16:44 +01:00
Marcus Andersson b0515f46cc DeleteButton: Button with icon only was not centered correctly. (#21432)
* Refactoring to get the correct spacing between the first icon and button border.

* Should not be smaller then 8px to the left.

* Removed unused dependency.

* Updated snapshot for LinkButton.
2020-01-12 19:55:10 +01:00
Marcus Andersson 1ba5ccb159 Build: prevent changes to pkg/extentions/main.go from throwing error on merge 2020-01-08 07:08:59 +01:00
Marcus AnderssonandTorkel Ödegaard 587e4009f3 Dashboard: new updated time picker (#20931)
* Dashboard: started to implement new time picker.

* TimePicker: working in full screen (except calendar).

* TimePicker: first draft on narrow screen variant.

* TimePicker: small adjustments to the narrow design.

* TimePicker: enabled range selection and started to style calendar.

* TimePicker: applied some more styling.

* Calendar: added so the calendar range selection is styled properly.

* Calendar: added styling for timepicker calendar in narrow screen.

* TimePicker: made it possible to select range from calendar.

* TimePicker: made the calendar have previous selected value.

* TimePicker: moved calendar to be able to update form state.

* TimePicker: calendar is now displayed onFocus or onClick.

* TimePicker: calendar will be closed if click outside input.

* Calendar: fixed the styling of the calendar in narrow screen.

* Calendar: made it work properly with narrow screen.

* TimePicker: connected recent to absolute time range.

* TimePicker: changed the label on recent ranges.

* TimePicker: cleaned up the range list and options.

* TimePicker: some more cleaning up.

* TimePicker: cleaned up the calendar a bit.

* TimePicker: some more refactorings.

* TimePicker: refactorings.

* TimePicker: styled modal properly.

* TimePicker: empty recent list.

* TimePicker: width when calendar in full screen.

* TimePicker: will validate input value.

* TimePicker: removed unused code.

* TimePicker: positioning with emotion instead of sass.

* Calendar: Made sure we send the dates in the correct order to the calendar.

* TimePicker: fixed theme.

* TimePicker: fixed positioning of the content.

* TimePicker: positioning of narrow.

* TimePicker: added some simple tets.

* TimePicker: fixed issue with invalid and added error message.

* TimePicker: added history.

* TimePicker: cleaned up snapshot data.

* TimePicker: fixed so we keep the quick values in the input.

* TimePicker: fixed the missing styling on UTC.

* TimePicker: added missing caret icon.

* TimePicker: fixed formatting on recent time ranges.

* TimePicker: added missing -.

* TimePicker: refactorings after feedback.

* TimePicker: renamed reserved prop name.

* TimePicker: added missing onChange call.

* TimePicker: removed alternative return type.

* TimePicker: fixed the sorting order on the recent list.

* TimePicker: added useCallback for the onEvent functions.

* TimePicker: moving away from default export.

* TimePicker: used the isMathString instead of private function.

* TimePicker: minor refactoring simplify the code.

* TimePicker: Added empty container that will expand when less then 4 recent searches.

* TimePicker: changed the top to be absolute relative to the container.

* TimePicker: updated snapshots for failing tests.

* Fixed shadow

* Move it down a bit

* added some more tests.

* Fixed so we change the anchor point of the time picker in really small screens.

* removed memo.

* fixed snapshot.

* Make sure that we always use the correct timeZone when formatting output.

* Fixed form background.

* Some minor fixes after demo.

* Making sure that empty info box is centered.

* updated snapshots for timepicker after css changes.

* fixed so we don't overflow when input validation error.

* adjusted final things on the time picker.

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2019-12-20 15:31:58 +01:00
Marcus Andersson 05d831df29 Tooltip: preventing xss injections via the colors variable. (#21203)
* Tooltip: preventing xss injections via the colors variable.

* added xss check for single series tooltop color.

* added sanitize to the hoverInfo.value.
2019-12-20 11:28:10 +01:00
Marcus Andersson c1b74becce Chore: updated to latest stable version (#21033) 2019-12-11 15:55:27 +01:00
Marcus Andersson 5568b32c9b Docs: change log for release v6.5.2 (#21028) 2019-12-11 15:14:48 +01:00
Marcus Andersson 5f72bfe6e7 GraphTooltip: added boundaries so we never render tooltip outside window. (#20874) 2019-12-04 18:08:49 +01:00