* 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
* Explore: clear results when you change datasource
* Explore: Clear results on data source change, and fix query hints issue
* Clear results on clear all
* Prometheus: Update logic of when to re-check query hints
* Build: Removed typescript checking from dev bundler
- when switching branches and trying out features, TS checking and bundling are eating up a lot
of CPU
- most of us are using an editor with typechecking support
- this commit removes type checking from the dev bundler
- we still have type checking enabled as a precommit hook and as part of
the prod bundler
* Adds new npm script: start:noTsCheck
* add extension framework
* add filter transformer
* more logging
* adding more tests
* make stats an extension
* make stats an extension
* test registry init
* first get a function, then call it
* move files to data package
* not used
* update to columnar
* Add more tests for nameMatcher
* Fix invert predicate
* add fluent API
* remove calc snapshot
* split Field matchers and Frame matchers
* split filter transformers
* Fix typo
* 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.
* SQLite migrations
* cleanup
* migrate end times
* switch to update with a query
* real migration
* anno migrations
* remove old docs
* set isRegion from time changes
* use <> for is not
* add comment and fix index decleration
* single validation place
* add test
* fix test
* add upgrading docs
* use AnnotationEvent
* fix import
* remove regionId from typescript
* 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
* @grafana/toolkit: make ts-loader ignore files that are not bundled
* @grafana/toolkit: improve the circleci task (#18133)
This PR makes some minor improvements to the circle task
Adds build info to plugin.json
adds dependencies to deployed artifacts
Makes sure prettier has content before writing (avoid writing empty files)
renames 'bundle' to 'package' and saves stuff in a 'packages' file
* @grafana/toolkit: enable plugin themes to work with common stylesheet (#18160)
This makes it possible to use themes styleshheet files and stylesheet imports at the same time. The problem occurred when trying to migrate polystat panel to toolkit: grafana/grafana-polystat-panel#62
* Enable running tests in watch mode and by path or name regex
* Toolkit readme update
* Show webpack stats on successful compilation
* unzip the plugin, not the docs
* Testing lerna on circle
* Remove dependency on test task, fix yarn
* yarn fix
* Run lerna from local bin
* Use packages cache, run lern via npx
* Add packages:build
* Install packages before release
* Remove cache tmp
* add lerna bootstrap
* temporarily add tsignore
* lerna add data package to ui
* Remove @types/lodas resolution
* Try any...
* Typo fix
* Add publishing packages
* update lerna publish script
* Reset git befgore publishing package
* Correct lerna version
* Packages version bump
* Remove postpublish
* Publish to npm
* Set git creds before commit
* Rename job and run it after frontend tests and build passes
* Run next packages release on master but not when tagged with release
* Minor copy
* Update circle's config
* Fix config
* validate type and id
* copy all svg and png, useful if people don't use the img folder
* update comments
* add stubs for each ci task
* use ci-work folder rather than build
* use axios for basic testing
* Packages: publish packages@6.3.0-alpha.39
* bump version
* add download task
* Packages: publish packages@6.3.0-alpha.40
* merge all dist folders into one
* fix folder paths
* Fix ts error
* Packages: publish packages@6.3.0-beta.0
* Packages: publish packages@6.3.0-beta.1
* bump next to 6.4
* Packages: publish packages@6.4.0-alpha.2
* better build and bundle tasks
* fix lint
* Packages: publish packages@6.4.0-alpha.3
* copy the file to start grafana
* Packages: publish packages@6.4.0-alpha.4
* use sudo for copy
* Packages: publish packages@6.4.0-alpha.5
* add missing service
* add service and homepath
* Packages: publish packages@6.4.0-alpha.6
* make the folder
* Update packages/grafana-toolkit/src/cli/tasks/plugin.ci.ts
* Update packages/grafana-toolkit/src/cli/tasks/plugin.ci.ts
* Replace webpack ng annotate plugin with babel-plugin-angularjs-annotate
* Copy statics(png/svg) when necessary or keep the original path when files loaded via file-loader
* Update readme
* Add support for static files
* Use url-loader in single css setup
* Add postcss setup
* Expose emotion to plugins and externalise it in toolkit
* Add readme note about emotion
In 4281344 the loadPluginCss util was migrated to @grafana/runtime package. This made SystemJS to fail loading the css files for a plugin. Root cause was that core and runtime used different SystemJS instances.
To solve the issue, I am exposing SystemJS from @grafana/runtime package to make sure we are always using the same instance. Also, the SystemJS dependency was moved to runtime.
* ChangePassword to React, created PasswordInput component, attempting UserProvider wrapper component, adding flex to btn row
* UserAPI interface, force classes on PasswordInput, remove api call from ChangePassword
* refactored out form
* clean up
* removed unnecessary bind, added loading state and loading component to change password form
* should be OR
* arrow funcs instead of binds, inline-block instead of flex, isSaving instead of isLoading, disabled button instead of spinner
* inline-flex on the react btn
* change state instatiatiation
* TimePicker: Restore time picker settings
* CleanUp: removed unuused angular-ui (calendar) components
* Fix angular boot dependency list
* TimePicker: set time to 23:59:00 when setting To time using calendar
* Move cli to grafana-toolkit
* Moving packages, fixing ts
* Add basics of plugin build task
* Add toolkit build task
* Circle - use node 10 for test-frontend
* Prettier fix
* First attempt for having shared tsconfig for plugins
* Add enzyme as peer depencency
* Do not expose internal commands when using toolkit from npm package
* Introduce plugin linting
* Fix missing file
* Fix shim extenstion
* Remove rollup typings
* Add tslint as dependency
* Toolkit - use the same versions of enzyme and tslint as core does
* Remove include property from plugin tsconfig
* Take failed suites into consideration when tests failed
* Set ts-jest preset for jest
* Cleanup tsconfig.plugins
* Add plugin:test task
* Rename file causing build failute
* Fixing those missed renames
* Add ts as peer dependency
* Remove enzyme dependency and tweak test plugin task
* Allow jest options overrides via package.json config
* Improvements
* Remove rollup node packages
* TMP : Fix ts errors when linked
* use local tslint if it exists
* support coverage commands
* Fix merge
* fix build
* Some minors
* Make jest pass when no tests discovered
* Refactor: Removes switches for TimeStamp and LocalTime and displays time as configured for user
* Styles: Updates classname used to display timeUtc
* Refactor: Adds switch for Time column
* Modify backend to allow expiration of API Keys
* Add middleware test for expired api keys
* Modify frontend to enable expiration of API Keys
* Fix frontend tests
* Fix migration and add index for `expires` field
* Add api key tests for database access
* Substitude time.Now() by a mock for test usage
* Front-end modifications
* Change input label to `Time to live`
* Change input behavior to comply with the other similar
* Add tooltip
* Modify AddApiKey api call response
Expiration should be *time.Time instead of string
* Present expiration date in the selected timezone
* Use kbn for transforming intervals to seconds
* Use `assert` library for tests
* Frontend fixes
Add checks for empty/undefined/null values
* Change expires column from datetime to integer
* Restrict api key duration input
It should be interval not number
* AddApiKey must complain if SecondsToLive is negative
* Declare ErrInvalidApiKeyExpiration
* Move configuration to auth section
* Update docs
* Eliminate alias for models in modified files
* Omit expiration from api response if empty
* Eliminate Goconvey from test file
* Fix test
Do not sleep, use mocked timeNow() instead
* Remove index for expires from api_key table
The index should be anyway on both org_id and expires fields.
However this commit eliminates completely the index for now
since not many rows are expected to be in this table.
* Use getTimeZone function
* Minor change in api key listing
The frontend should display a message instead of empty string
if the key does not expire.
* Update datasource.ts
* Update datasource.test.ts
* utcOffset reverse
from moment docs, utcOffset "function returns the real offset from UTC, not the reverse offset"
* add utcOffset() to DateTime interface
method returns the UTC offset as a number of minutes
* Fixed test
* WIP: initial panel links editor
* WIP: Added dashboard migration to new panel drilldown link schema
* Make link_srv interpolate new variables
* Fix failing tests
* Drilldown: Add context menu to graph viz (#17284)
* Add simple context menu for adding graph annotations and showing drilldown links
* Close graph context menu when user start scrolling
* Move context menu component to grafana/ui
* Make graph context menu appear on click, use cmd/ctrl click for quick annotations
* Move graph context menu controller to separate file
* Drilldown: datapoint variables interpolation (#17328)
* Add simple context menu for adding graph annotations and showing drilldown links
* Close graph context menu when user start scrolling
* Move context menu component to grafana/ui
* Make graph context menu appear on click, use cmd/ctrl click for quick annotations
* Add util for absolute time range transformation
* Add series name and datapoint timestamp interpolation
* Rename drilldown link variables tot snake case, use const values instead of strings in tests
* Bring LinkSrv.getPanelLinkAnchorInfo for compatibility reasons and add deprecation warning
* Rename seriesLabel to seriesName
* Drilldown: use separate editors for panel and series links (#17355)
* Use correct target ini context menu links
* Rename PanelLinksEditor to DrilldownLinksEditor and mote it to grafana/ui
* Expose DrilldownLinksEditor as an angular directive
* Enable visualization specifix drilldown links
* Props interfaces rename
* Drilldown: Add variables suggestion and syntax highlighting for drilldown link editor (#17391)
* Add variables suggestion in drilldown link editor
* Enable prism
* Fix backspace not working
* Move slate value helpers to grafana/ui
* Add syntax higlighting for links input
* Rename drilldown link components to data links
* Add template variabe suggestions
* Bugfix
* Fix regexp not working in Firefox
* Display correct links in panel header corner
* bugfix
* bugfix
* Bugfix
* Context menu UI tweaks
* Use data link terminology instead of drilldown
* DataLinks: changed autocomplete syntax
* Use singular form for data link
* Use the same syntax higlighting for built-in and template variables in data links editor
* UI improvements to context menu
* UI review tweaks
* Tweak layout of data link editor
* Fix vertical spacing
* Remove data link header in context menu
* Remove pointer cursor from series label in context menu
* Fix variable selection on click
* DataLinks: migrations for old links
* Update docs about data links
* Use value time instead of time range when interpolating datapoint timestamp
* Remove not used util
* Update docs
* Moved icon a bit more down
* Interpolate value ts only when using __value_time variable
* Bring href property back to LinkModel
* Add any type annotations
* Fix TS error on slate's Value type
* minor changes
* feat: Add new picker to DashNavTimeControls
* chore: noImplicitAny limit reached
* chore: noImplicityAny fix
* chore: Add momentUtc helper to avoid the isUtc conditionals
* chore: Move getRaw from Explore's time picker to grafana/ui utils and rename to getRawRange
* feat: Use helper functions to convert utc to browser time
* fix: Dont Select current value when pressing tab when using Time Picker
* fix: Add tabIndex to time range inputs so tab works smoothly and prevent mouseDown event to propagate to react-select
* fix: Add spacing to custom range labels
* fix: Updated snapshot
* fix: Re-adding getRaw() temporary to fix the build
* fix: Disable scroll event in Popper when we're using the TimePicker so the popup wont "follow" the menu
* fix: Move all "Last xxxx" quick ranges to the menu and show a "UTC" text when applicable
* fix: Add zoom functionality
* feat: Add logic to mark selected option as active
* fix: Add tooltip to zoom button
* fix: lint fix after rebase
* chore: Remove old time picker from DashNav
* TimePicker: minor design update
* chore: Move all time picker quick ranges to the menu
* fix: Remove the popover border-right, since the quick ranges are gone
* chore: Remove function not in use
* Fix: Close time picker on resize event
* Fix: Remove border bottom
* Fix: Use fa icons on prev/next arrows
* Fix: Pass ref from TimePicker to TimePickerOptionGroup so the popover will align as it should
* Fix: time picker ui adjustments to get better touch area on buttons
* Fix: Dont increase line height on large screens
* TimePicker: style updates
* Fix: Add more prominent colors for selected dates and fade out dates in previous/next month
* TimePicker: style updates2
* TimePicker: Big refactorings and style changes
* Removed use of Popper not sure we need that here?
* Made active selected item in the list have the "selected" checkmark
* Changed design of popover
* Changed design of and implementation of the Custom selection in the dropdown it did not feel like a item you
could select like the rest now the list is just a normal list
* TimePicker: Refactoring & style changes
* TimePicker: use same date format everywhere
* TimePicker: Calendar style updates
* TimePicker: fixed unit test
* fixed unit test
* TimeZone: refactoring time zone type
* TimePicker: refactoring
* TimePicker: finally to UTC to work
* TimePicker: better way to handle calendar utc dates
* TimePicker: Fixed tooltip issues
* Updated snapshot
* TimePicker: moved tooltip from DashNavControls into TimePicker
* Fix: Filters Tags and Values depending on options passed
Fixes: #17507
* Fix: Makes sure options is not undefined
* Fix: Fixes tests and small button refactor
* Chore: PR comments
* Fix: Upgrade hugo wip
* Chore: Rename index to _index for latest hugo
* Chore: Use relative refs, no starting slash
* Feat: Add possibility to mount layouts from grafana.org project
* Wip: Intial commit
* Wip: Adds intial InfluxLogsQueryField
* Refactor: Adds measurements to InfluxLogQueryField
* Style: Tweaks styles and adds chosen measurement to measurements
* Refactor: Adds remove filter row
* refactor: make influx datasource typed
Uses the new api for exporting the plugin.
* adds metricFindQuery to DataSourceApi
metricFindQuery, getTagKeys and getTagValues now returns a promise
* influx: minor improvements
Limits logs result to 1000.
Don't show adhoc filter until measurement have been selected.
* Refactor: Adds fields to Cascader and uses chosen field as log column
Co-authored-by: Marcus <marcus.efraimsson@gmail.com>
* Refactor: Removes replaceUrl from actions
* Refactor: Moves saveState thunk to epic
* Refactor: Moves thunks to epics
* Wip: removes resulttype and queries once
* Refactor: LiveTailing uses observer in query
* Refactor: Creates epics folder for epics and move back actioncreators
* Tests: Adds tests for epics and reducer
* Fix: Checks for undefined as well
* Refactor: Cleans up previous live tailing implementation
* Chore: merge with master
* Fix: Fixes url issuses and prom graph in Panels
* Refactor: Removes supportsStreaming and adds sockets to DataSourcePluginMeta instead
* Refactor: Changes the way we create TimeSeries
* Refactor: Renames sockets to streaming
* Refactor: Changes the way Explore does incremental updates
* Refactor: Removes unused method
* Refactor: Adds back Loading indication