169 Commits
Author SHA1 Message Date
Łukasz Mierzwa 4debfd3560 Save space between alert groups 2018-04-19 09:17:18 -07:00
Łukasz Mierzwa dc58c26b90 Fix silence borders
There's an extra layer of transparent border and padding makes the green side to be missing a few pixels, correct that
2018-04-19 09:17:18 -07:00
Łukasz Mierzwa c6288d27a2 Show silence ID in the UI
This adds silence ID to the list of rendered silence elements, clicking on it will allow to copy it to the clipboard. Fixes #203
2018-01-03 13:15:19 -08:00
Łukasz Mierzwa a8c158963d Trim very long history menu items
If there's a very long menu item entry we should trim it
2017-09-07 12:22:41 -07:00
Łukasz Mierzwa 5d0366a743 Redraw alert grid after annotations visibility toggle
Alert group needs more space after expanding, so we need to redraw everything.
2017-09-07 12:15:32 -07:00
Łukasz Mierzwa 843eb80060 Add button to toggle annotation visibility
If user make annotation hidden by default, then render a button that allows to show it per label
2017-09-07 12:15:32 -07:00
Łukasz Mierzwa c7442c3adf Linkify URLs in the annotation
use linkifyjs to make all URLs in the annotation clickable, but since it requires us to stop escaping html when rendering annotation object let's first manually escape it to prevent rogue alerts with malicious annotations from executing <scripts> and other ugly things in user browsers
2017-08-18 12:09:35 -07:00
Łukasz Mierzwa 3124049c5a Fix wrong status in error
Doesn't matter for test result, but should be error since we return 500
2017-08-17 19:42:08 -07:00
Łukasz Mierzwa f96cafca7b Test creating silences 2017-08-17 19:42:08 -07:00
Łukasz Mierzwa ac8b3391d7 Re-use ajax mocks instead of creating one per response 2017-08-15 20:22:57 -07:00
Łukasz Mierzwa 866797cc42 Add more silence.js tests 2017-08-15 20:20:35 -07:00
Łukasz Mierzwa 431540c05e Add a test case for error handling when unsilence request fails 2017-08-15 19:53:26 -07:00
Łukasz Mierzwa 77ec8d9a8b Use correct icon
Tests are failing because we're not cleaning icons properly
2017-08-15 19:45:00 -07:00
Łukasz Mierzwa ecf14e7633 Add a test for unsilence button 2017-08-15 19:43:49 -07:00
Łukasz Mierzwa c6e91c658e Update test snapshots
Rendered HTML changed, so tests need updating
2017-08-15 09:46:58 -07:00
Łukasz Mierzwa 536379434d Enable tooltips for history dropdown
It's a dropdown so data-toggle is already used for the menu
2017-08-15 09:46:58 -07:00
Łukasz Mierzwa d92e08f3f6 Don't reload filters until entire applyFilterList() block was completed
setFilters() will trigger fetch of the new alerts with updated filter, it's being called after each filter is added to the filter bar, so each added filter ends up with AJAX call to /alerts.json, this means that when someone clicks on a history entry with complex rule it will trigger multiple subsequent requests. What's worse first request will have bigger response body (since it filters less) so it's likely that it will finish after the next request, leaving invalid alerts on the grid. This disable setFilters() if we apply filters in batch mode.
2017-08-14 20:10:44 -07:00
Łukasz Mierzwa c7b18f314d Add applyFilterList() function and move logic there 2017-08-13 19:25:55 -07:00
Łukasz Mierzwa 9ba23d1658 Tweak history menu UI
Show search icon for search history elements and provide a separate entries for the default and saved filter.
Default & saved filter are always rendered on the bottom, if they are non-empty.
2017-08-13 16:55:51 -07:00
Łukasz Mierzwa 256453ccaf Add snapshot tests for history dropdown 2017-08-12 21:21:25 -07:00
Łukasz Mierzwa 9645287d88 Use a Set() instead of array
We only want unique values, Set is better for this
2017-08-12 19:57:30 -07:00
Łukasz Mierzwa f0dc85ad0b Pass storage implementation as an argument
Instead of assuming that window.localStorage is always used pass it via arguments
2017-08-11 16:40:29 -07:00
Łukasz Mierzwa 6809733346 Add history tests 2017-08-11 16:40:29 -07:00
Łukasz Mierzwa 4bb14312ff Mock local storage when running tests 2017-08-11 16:40:29 -07:00
Łukasz Mierzwa ea62db3c2f Save filters usage history to local storage and provide a dropdown menu to access it
This allows to quickly select recently used filters from a dropdown. It also shows default (configured by unsee admin) filter and the saved one (saved by the user to a cookie)
2017-08-11 16:40:27 -07:00
Łukasz Mierzwa d8efb97f97 Provide .less style for bootstrap-tagsinput
We use flatly theme for bootstrap while bootstrap-tagsinput bundles a css file that follow vanilla style, create a less version and use it instead of the css one bundles with bootstrap-tagsinput.
typeahead.js allows to customize class names used for UI elements, but bootstrap-tagsinput doesn't support passing that and is no longer maintained, so we need to follow default typeahead.js classes.
2017-08-10 16:53:30 -07:00
Łukasz Mierzwa 55c722773a Resume auto-refresh on backspace
Right now if user starts typing & then starts pressing backspace we pause but never resume, because stopping pressing backspace is ignored when resuming.
2017-08-08 12:03:33 -07:00
Łukasz Mierzwa 937f12e5e0 Update jquery.typing to 0.3.2 2017-08-08 11:57:38 -07:00
Łukasz Mierzwa bea01196b3 Add more watchdog tests 2017-08-02 20:58:05 -07:00
Łukasz Mierzwa ae5f0e39ae remove dead code from templates.test.js 2017-08-02 20:57:24 -07:00
Łukasz Mierzwa 90646a3727 Fix is-in-viewport mock to return true 2017-08-02 20:11:32 -07:00
Łukasz Mierzwa eb21642103 Add reload tests 2017-07-30 21:35:01 -07:00
Łukasz Mierzwa b6d5a5614e Run end-to-end tests for unsee.js
This will allow to test entire alerts flow - get alerts.json response (via mocks) and render alerts
2017-07-30 21:08:11 -07:00
Łukasz Mierzwa 2020099987 Mock templates so we actually load and parse all of them 2017-07-30 20:18:32 -07:00
Łukasz Mierzwa bd249e4c02 Proper behaviour tests for ui.js
Checks whenever code does what it suppose to, not only if it runs
2017-07-30 17:25:10 -07:00
Łukasz Mierzwa 558ace10fc More coverage in the ui.js module tests 2017-07-30 15:53:28 -07:00
Łukasz Mierzwa f6078d9f1f Add proper counter.js tests 2017-07-29 23:14:42 -07:00
Łukasz Mierzwa 3eb1e0cafd Test color.merge() 2017-07-29 16:57:36 -07:00
Łukasz Mierzwa 566de0c347 Fix nprogress usage and styling 2017-07-29 14:43:51 -07:00
Łukasz Mierzwa 557c55dc64 Add a bundle for /help page 2017-07-29 14:22:55 -07:00
Łukasz Mierzwa a694add079 Fix css selectors not firing with webpack 2017-07-29 13:54:14 -07:00
Łukasz Mierzwa ca1081f461 Correctly bundle favicon.ico file 2017-07-29 13:52:55 -07:00
Łukasz Mierzwa 8f5c246297 Move to fully webpack managed assets 2017-07-29 13:52:07 -07:00
Łukasz Mierzwa 6105ae87d2 Get rid of last managed assets, everything is in webpack now 2017-07-29 13:51:29 -07:00
Łukasz Mierzwa b08d203a04 Make is-in-viewport work with webpack 2017-07-29 13:50:55 -07:00
Łukasz Mierzwa 70296853c5 Add missing css imports 2017-07-29 13:50:18 -07:00
Łukasz Mierzwa 7f4ec13956 disable eslint check on circular function, for now 2017-07-29 13:49:46 -07:00
Łukasz Mierzwa f8a60936a7 lru is now managed via npm 2017-07-29 13:49:43 -07:00
Łukasz Mierzwa 685c14303d Drop old managed js files 2017-07-29 13:49:03 -07:00
Łukasz Mierzwa 5ec0340f1c Strict mode for js files, fix minor typos 2017-07-29 13:48:36 -07:00