make the selector more inclusive
spec for dashboard’s sidebar visibility
fix linting errors for project dashboard page
remove unused var: shouldBeCollapsed
use project with repo, so download button became available
use es6 style for testing project dashboard
un-aliased global reference at sidebar.js.es6
fix spec from linting errors
code improvement
add singleton to `this`
assign `singleton` to class
add space in between
remove `no-underscore-dangle`
add complete changelog
sidebar internal state test
remove on page change, not exist in master. rebase.
only nicescroll if the element is there
new require style
reference to sidebar content outside of timeout
Document and remove unused code
Declare components in a consistent way;
Use " instead of ' to improve consistency;
Update documentation;
Fix commit author verification to match the use cases;
Adds tests for the added components
Fix paths in pagination spec
Adds tests to pipelines table used in merge requests and commits
Use same resource interceptor
Fix eslint error
Rename Build to Job
Replace "Builds" by "Jobs" and fix broken specs
Replace "Builds" by "Jobs"
Fix broken spinach test
Fix broken test
Remove `˙` at the beginning of the file
Fix broken spinach test
Fix broken tests
Changes after review
Fixes builds dropdown making request when clicked to be closed
Adds MR ID to CHANGELOG
Improve documentation
Use bootstrap dropdown events to only make the request when the dropdown is being opened
* fix-u2f-fixtures:
generate u2f frontend fixtures dynamically
force utf-8 encoding for prior to fixture parsing to prevent nokogiri issues
exclude script type=text/template from dom scrubbing
Currently, the EventFilter whitelists event types for the "All" filter.
This has gotten outdated, which causes the confusing behaviour of the
"All" tab not really showing all events. To make matters worse, by
default no tab at all is selected, which does show all events, so
selecting the "All" tab actually hides some events.
Fix this by:
- Making sure All always includes all activity, by abolishing the
whitelist and just returning all events instead.
- Make the All tab selected by default.
- Add Issue events tab to include the specific events around opening
and closing issues, since there was no specific filter to see them
yet.
Fixes#24826
Clean up common_utils.js
## What does this MR do?
- Remove unused functions from `common_utils.js`.
- Move functions which are used from only one file to that file.
## Why was this MR needed?
Because some utils weren't that common (anymore).
See merge request !7318
When ldap is enabled and use "Standard" authentication method, if authentication fails
the correct tab remain selected.
This is done by saving into localStorage when the active tab changes and by always selecting that tab when
the page is loaded.
Replace static fixture for notes_spec
## What does this MR do?
Replace `comments.html.haml` and `issue_note.html.haml` used in `notes_spec.js` by dynamically created fixture.
## What are the relevant issue numbers?
#24753
See merge request !7683
Replace static fixture for right_sidebar_spec
## What does this MR do?
Replace `right_sidebar.html.haml` for `right_sidebar_spec.js` by already existing dynamically generated fixture.
## What are the relevant issue numbers?
#24753
See merge request !7687
Replace static fixture for shortcuts_issuable_spec
## What does this MR do?
Replace `issuable.html.haml` for `shortcuts_issuable_spec.js` by already existing dynamically generated fixture.
## What are the relevant issue numbers?
#24753
See merge request !7685
Replace static fixture for zen_mode_spec
## What does this MR do?
Replace `zen_mode.html.haml` for `zen_mode_spec.js` by already existing dynamically generated fixture.
## What are the relevant issue numbers?
#24753
See merge request !7686
Create dynamic fixture for build_spec
## What does this MR do?
Replace `spec/javascripts/fixtures/build.html.haml` by a dynamically created fixture (using `rake teaspoon:fixtures`).
## Why was this MR needed?
The existing fixture was not representing the real page.
## What are the relevant issue numbers?
#24614 would have been avoided
following !6059
See merge request !7589
Resolve "Display "folders" for environments"
## What does this MR do?
Adds the ability to show the grouped environments inside "folders".
Adds several reusable vue components in order to accomplish the recursive tree data structure presented.
For the individual components, Jasmine tests were added.
For the ones that depend of an API response, rspec tests are used.
## Screenshots (if relevant)




## Does this MR meet the acceptance criteria?
- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG.md) entry added
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- Tests
- [x] Added for this feature/bug
- [ ] All builds are passing
- [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes#22539
See merge request !7015
Add todo toggle event
## What does this MR do?
Adds a custom jQuery event `todo:toggle` to detect when a new todo is added so that the respective todo counters (header navigation and sidebar) can update as needed
## Are there points in the code the reviewer needs to double check?
* I wasn't sure whether each `spec` should be modularized based on the html templates or whether they should be separated based on function. There are some crossovers between the `dashboard_spec` and the `header_spec`.
* The naming conventions for `sidebar` and `right_sidebar` were a little confusing since they were named the opposite in their `specs`. I made a few assumptions and named a few files based on what I thought they should be named. I'd be happy to change it to something else though 😄
## Why was this MR needed?
This resolves an existing issue where the todo count on the sidebar would not update (until refresh) and refactors the existing methods that are used to update the todo counters (header navigation and sidebar)
## What are the relevant issue numbers?
Closes#20140
## Does this MR meet the acceptance criteria?
- [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added
- Tests
- [x] Added for this feature/bug
- [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
See merge request !5724
Pass the remember_me option into the u2f form and support it while authenticating
## What does this MR do?
Adds remember me support in the u2f authentication, and makes sure the flag gets passed from the login form to the u2f form.
Based on the changes for the same thing done for regular 2fa: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4369
## Why was this MR needed?
The remember me option wasn't working for u2f devices (yubikey)
## What are the relevant issue numbers?
Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/18103
See merge request !5918
17465 Fixed dropdown cursor key navigation
## What does this MR do?
This MR fixes the use of cursor/arrow/enter key events with search dropdowns, allowing a user to navigate up and down the list with the arrow keys and then select their item with the enter key.
It also applies some *minor* scroll user experience fixes, such as resetting the selected dropdown item every time it opens/closes (also stops multiple dropdowns conflicting) and forcing the dropdown scroll to scroll right to the top or bottom depending on whether they have selected the first or last item, respectively.
## Are there points in the code the reviewer needs to double check?
I would like someone with GitLab experience to check over whether this would harm any unique implementations of the GitLabDropdown or SearchAutocomplete.
## Why was this MR needed?
The current version has incorrectly behaving search dropdowns in the navbar, they either do not navigate using the keyboard or do not use the enter keystroke to select a highlighted item.
## What are the relevant issue numbers?
Fixes#17465.
Closes#20752.
Closes#21014.
**Contributes** to #20754.
## Screenshots (if relevant)

See merge request !4781
Added bootstrap dropdown event triggers to invoke the open and close methods of the dropdown, allowing for the binding of array key events
Added #17465 fix entry to CHANGELOG
Fixed multi-dropdown selected row index conflict
Fixed whitespace diff
Added padding to the dropdown content iterative scroll as well as new conditional scrolls to scroll all the way to the top when the first item of a list is selected and to scroll all the way to the bottom when the last item of a list is selected
Added conditionals to the enable and disable autocomplete methods to stop multiple invocations without any enabled/disabled state change
Fixes some incorrect firing of requests. The dropdown box was invoking a new query every time it closed and the GitLabDropdownRemote callback was invoking a new query which was causing the dropdown double render issue.
Added .selectable css class to dropdown list items that are not dividers or headers and altered selectors to account for that. Moved scroll padding Number to variable.
Removed unused method
Started Dropdown tests
Added fixture and began first test
Almost finished, navigation done, action and close needed
YAY. TESTS DONE.
Altered test and fixed click
started removing selectable class use
Fixed as reviewed
altered selection method
Fixed autocomplete shutting dropdown on arrow key use
patched XSS vulns
updated tests
f
Added click fixes
Notes are awardables
## What does this MR do?
Makes sure we can :thunder_cloud_rain: comments/notes.
## What are the relevant issue numbers?
Follows up upon !2901, depends on !3785Closes#3655
## Screenshots (if relevant)
TODO
See merge request !4291
- Move the `TwoFactorAuthsController`'s `new` action to `show`, since
the page is not used to create a single "two factor auth" anymore. We
can have a single 2FA authenticator app, along with any number of U2F
devices, in any combination, so the page will be accessed after the
first "two factor auth" is created.
- Add the `u2f` javascript library, which provides an API to the
browser's U2F implementation.
- Add tests for the JS components
- No longer depends on the "hidden checkbox".
- No longer depends on manually storing/restoring the scroll position.
Instead, we take advantage of jquery.scrollTo.
- Event-based.
- Simplifies the state-based styling.