remove nicescroll from jobs page and remove the library from common.bundle.js
This commit is contained in:
parent
825224ba13
commit
12c6abf9db
10 changed files with 98 additions and 3737 deletions
|
@ -164,7 +164,6 @@ window.Build = (function () {
|
||||||
|
|
||||||
Build.prototype.initSidebar = function () {
|
Build.prototype.initSidebar = function () {
|
||||||
this.$sidebar = $('.js-build-sidebar');
|
this.$sidebar = $('.js-build-sidebar');
|
||||||
this.$sidebar.niceScroll();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Build.prototype.getBuildTrace = function () {
|
Build.prototype.getBuildTrace = function () {
|
||||||
|
|
1
app/assets/javascripts/commons/jquery.js
vendored
1
app/assets/javascripts/commons/jquery.js
vendored
|
@ -6,6 +6,5 @@ import 'vendor/jquery.endless-scroll';
|
||||||
import 'vendor/jquery.caret';
|
import 'vendor/jquery.caret';
|
||||||
import 'vendor/jquery.atwho';
|
import 'vendor/jquery.atwho';
|
||||||
import 'vendor/jquery.scrollTo';
|
import 'vendor/jquery.scrollTo';
|
||||||
import 'vendor/jquery.nicescroll';
|
|
||||||
import 'vendor/jquery.waitforimages';
|
import 'vendor/jquery.waitforimages';
|
||||||
import 'select2/select2';
|
import 'select2/select2';
|
||||||
|
|
|
@ -109,16 +109,8 @@ body {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.page-with-sidebar > .content-wrapper {
|
||||||
/* The following prevents side effects related to iOS Safari's implementation of -webkit-overflow-scrolling: touch,
|
min-height: calc(100vh - #{$header-height});
|
||||||
which is applied to the body by jquery.nicescroling plugin to force hardware acceleration for momentum scrolling. Side
|
|
||||||
effects are commonly related to inconsisent z-index behavior (e.g. tooltips). By applying the following to direct children
|
|
||||||
of the body element here, we negate cascading side effects but allow momentum scrolling to be applied to the body */
|
|
||||||
|
|
||||||
.navbar,
|
|
||||||
.page-gutter,
|
|
||||||
.page-with-sidebar {
|
|
||||||
-webkit-overflow-scrolling: auto;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.with-performance-bar .page-with-sidebar {
|
.with-performance-bar .page-with-sidebar {
|
||||||
|
|
|
@ -78,15 +78,12 @@
|
||||||
|
|
||||||
.right-sidebar {
|
.right-sidebar {
|
||||||
border-left: 1px solid $border-color;
|
border-left: 1px solid $border-color;
|
||||||
|
height: calc(100% - #{$header-height});
|
||||||
|
|
||||||
&.affix {
|
&.affix {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: $header-height;
|
top: $header-height;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:not(.affix-top) {
|
|
||||||
min-height: 100%;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.with-performance-bar .right-sidebar.affix {
|
.with-performance-bar .right-sidebar.affix {
|
||||||
|
|
|
@ -21,7 +21,7 @@ $new-sidebar-width: 220px;
|
||||||
// Override position: absolute
|
// Override position: absolute
|
||||||
.right-sidebar {
|
.right-sidebar {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
height: 100%;
|
height: calc(100% - #{$header-height});
|
||||||
}
|
}
|
||||||
|
|
||||||
.issues-bulk-update.right-sidebar.right-sidebar-expanded .issuable-sidebar-header {
|
.issues-bulk-update.right-sidebar.right-sidebar-expanded .issuable-sidebar-header {
|
||||||
|
|
|
@ -235,6 +235,15 @@
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.sidebar-container {
|
||||||
|
width: calc(100% + 100px);
|
||||||
|
padding-right: 100px;
|
||||||
|
height: 100%;
|
||||||
|
overflow-y: scroll;
|
||||||
|
overflow-x: hidden;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
}
|
||||||
|
|
||||||
.blocks-container {
|
.blocks-container {
|
||||||
padding: 0 $gl-padding;
|
padding: 0 $gl-padding;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,100 +1,101 @@
|
||||||
- builds = @build.pipeline.builds.to_a
|
- builds = @build.pipeline.builds.to_a
|
||||||
|
|
||||||
%aside.right-sidebar.right-sidebar-expanded.build-sidebar.js-build-sidebar.js-right-sidebar{ data: { "offset-top" => "101", "spy" => "affix" } }
|
%aside.right-sidebar.right-sidebar-expanded.build-sidebar.js-build-sidebar.js-right-sidebar{ data: { "offset-top" => "101", "spy" => "affix" } }
|
||||||
.blocks-container
|
.sidebar-container
|
||||||
.block
|
.blocks-container
|
||||||
%strong
|
|
||||||
= @build.name
|
|
||||||
%a.gutter-toggle.pull-right.visible-xs-block.visible-sm-block.js-sidebar-build-toggle{ href: "#", 'aria-label': 'Toggle Sidebar', role: 'button' }
|
|
||||||
= icon('angle-double-right')
|
|
||||||
|
|
||||||
#js-details-block-vue
|
|
||||||
|
|
||||||
- if can?(current_user, :read_build, @project) && (@build.artifacts? || @build.artifacts_expired?)
|
|
||||||
.block
|
.block
|
||||||
.title
|
%strong
|
||||||
Job artifacts
|
= @build.name
|
||||||
- if @build.artifacts_expired?
|
%a.gutter-toggle.pull-right.visible-xs-block.visible-sm-block.js-sidebar-build-toggle{ href: "#", 'aria-label': 'Toggle Sidebar', role: 'button' }
|
||||||
%p.build-detail-row
|
= icon('angle-double-right')
|
||||||
The artifacts were removed
|
|
||||||
#{time_ago_with_tooltip(@build.artifacts_expire_at)}
|
|
||||||
- elsif @build.has_expiring_artifacts?
|
|
||||||
%p.build-detail-row
|
|
||||||
The artifacts will be removed in
|
|
||||||
%span.js-artifacts-remove= @build.artifacts_expire_at
|
|
||||||
|
|
||||||
- if @build.artifacts?
|
#js-details-block-vue
|
||||||
.btn-group.btn-group-justified{ role: :group }
|
|
||||||
- if @build.has_expiring_artifacts? && can?(current_user, :update_build, @build)
|
|
||||||
= link_to keep_project_job_artifacts_path(@project, @build), class: 'btn btn-sm btn-default', method: :post do
|
|
||||||
Keep
|
|
||||||
|
|
||||||
= link_to download_project_job_artifacts_path(@project, @build), rel: 'nofollow', download: '', class: 'btn btn-sm btn-default' do
|
- if can?(current_user, :read_build, @project) && (@build.artifacts? || @build.artifacts_expired?)
|
||||||
Download
|
.block
|
||||||
|
.title
|
||||||
|
Job artifacts
|
||||||
|
- if @build.artifacts_expired?
|
||||||
|
%p.build-detail-row
|
||||||
|
The artifacts were removed
|
||||||
|
#{time_ago_with_tooltip(@build.artifacts_expire_at)}
|
||||||
|
- elsif @build.has_expiring_artifacts?
|
||||||
|
%p.build-detail-row
|
||||||
|
The artifacts will be removed in
|
||||||
|
%span.js-artifacts-remove= @build.artifacts_expire_at
|
||||||
|
|
||||||
- if @build.artifacts_metadata?
|
- if @build.artifacts?
|
||||||
= link_to browse_project_job_artifacts_path(@project, @build), class: 'btn btn-sm btn-default' do
|
.btn-group.btn-group-justified{ role: :group }
|
||||||
Browse
|
- if @build.has_expiring_artifacts? && can?(current_user, :update_build, @build)
|
||||||
|
= link_to keep_project_job_artifacts_path(@project, @build), class: 'btn btn-sm btn-default', method: :post do
|
||||||
|
Keep
|
||||||
|
|
||||||
- if @build.trigger_request
|
= link_to download_project_job_artifacts_path(@project, @build), rel: 'nofollow', download: '', class: 'btn btn-sm btn-default' do
|
||||||
.build-widget.block
|
Download
|
||||||
%h4.title
|
|
||||||
Trigger
|
|
||||||
|
|
||||||
%p
|
- if @build.artifacts_metadata?
|
||||||
%span.build-light-text Token:
|
= link_to browse_project_job_artifacts_path(@project, @build), class: 'btn btn-sm btn-default' do
|
||||||
#{@build.trigger_request.trigger.short_token}
|
Browse
|
||||||
|
|
||||||
|
- if @build.trigger_request
|
||||||
|
.build-widget.block
|
||||||
|
%h4.title
|
||||||
|
Trigger
|
||||||
|
|
||||||
- if @build.trigger_request.variables
|
|
||||||
%p
|
%p
|
||||||
%button.btn.group.btn-group-justified.reveal-variables Reveal Variables
|
%span.build-light-text Token:
|
||||||
|
#{@build.trigger_request.trigger.short_token}
|
||||||
|
|
||||||
%dl.js-build-variables.trigger-build-variables.hide
|
- if @build.trigger_request.variables
|
||||||
- @build.trigger_request.variables.each do |key, value|
|
%p
|
||||||
%dt.js-build-variable.trigger-build-variable= key
|
%button.btn.group.btn-group-justified.reveal-variables Reveal Variables
|
||||||
%dd.js-build-value.trigger-build-value= value
|
|
||||||
|
|
||||||
%div{ class: (@build.pipeline.stages_count > 1 ? "block" : "block-last") }
|
%dl.js-build-variables.trigger-build-variables.hide
|
||||||
%p
|
- @build.trigger_request.variables.each do |key, value|
|
||||||
Commit
|
%dt.js-build-variable.trigger-build-variable= key
|
||||||
= link_to @build.pipeline.short_sha, project_commit_path(@project, @build.pipeline.sha), class: 'commit-sha link-commit'
|
%dd.js-build-value.trigger-build-value= value
|
||||||
= clipboard_button(text: @build.pipeline.short_sha, title: "Copy commit SHA to clipboard")
|
|
||||||
- if @build.merge_request
|
|
||||||
in
|
|
||||||
= link_to "#{@build.merge_request.to_reference}", merge_request_path(@build.merge_request), class: 'link-commit'
|
|
||||||
|
|
||||||
%p.build-light-text.append-bottom-0
|
%div{ class: (@build.pipeline.stages_count > 1 ? "block" : "block-last") }
|
||||||
#{@build.pipeline.git_commit_title}
|
%p
|
||||||
|
Commit
|
||||||
|
= link_to @build.pipeline.short_sha, project_commit_path(@project, @build.pipeline.sha), class: 'commit-sha link-commit'
|
||||||
|
= clipboard_button(text: @build.pipeline.short_sha, title: "Copy commit SHA to clipboard")
|
||||||
|
- if @build.merge_request
|
||||||
|
in
|
||||||
|
= link_to "#{@build.merge_request.to_reference}", merge_request_path(@build.merge_request), class: 'link-commit'
|
||||||
|
|
||||||
- if @build.pipeline.stages_count > 1
|
%p.build-light-text.append-bottom-0
|
||||||
.dropdown.build-dropdown
|
#{@build.pipeline.git_commit_title}
|
||||||
%div
|
|
||||||
%span{ class: "ci-status-icon-#{@build.pipeline.status}" }
|
|
||||||
= ci_icon_for_status(@build.pipeline.status)
|
|
||||||
Pipeline
|
|
||||||
= link_to "##{@build.pipeline.id}", project_pipeline_path(@project, @build.pipeline), class: 'link-commit'
|
|
||||||
from
|
|
||||||
= link_to "#{@build.pipeline.ref}", project_branch_path(@project, @build.pipeline.ref), class: 'link-commit'
|
|
||||||
%button.dropdown-menu-toggle{ type: 'button', 'data-toggle' => 'dropdown' }
|
|
||||||
%span.stage-selection More
|
|
||||||
= icon('chevron-down')
|
|
||||||
%ul.dropdown-menu
|
|
||||||
- @build.pipeline.legacy_stages.each do |stage|
|
|
||||||
%li
|
|
||||||
%a.stage-item= stage.name
|
|
||||||
|
|
||||||
.builds-container
|
- if @build.pipeline.stages_count > 1
|
||||||
- HasStatus::ORDERED_STATUSES.each do |build_status|
|
.block-last.dropdown.build-dropdown
|
||||||
- builds.select{|build| build.status == build_status}.each do |build|
|
%div
|
||||||
.build-job{ class: sidebar_build_class(build, @build), data: { stage: build.stage } }
|
%span{ class: "ci-status-icon-#{@build.pipeline.status}" }
|
||||||
= link_to project_job_path(@project, build) do
|
= ci_icon_for_status(@build.pipeline.status)
|
||||||
= icon('arrow-right')
|
Pipeline
|
||||||
%span{ class: "ci-status-icon-#{build.status}" }
|
= link_to "##{@build.pipeline.id}", project_pipeline_path(@project, @build.pipeline), class: 'link-commit'
|
||||||
= ci_icon_for_status(build.status)
|
from
|
||||||
%span
|
= link_to "#{@build.pipeline.ref}", project_branch_path(@project, @build.pipeline.ref), class: 'link-commit'
|
||||||
- if build.name
|
%button.dropdown-menu-toggle{ type: 'button', 'data-toggle' => 'dropdown' }
|
||||||
= build.name
|
%span.stage-selection More
|
||||||
- else
|
= icon('chevron-down')
|
||||||
= build.id
|
%ul.dropdown-menu
|
||||||
- if build.retried?
|
- @build.pipeline.legacy_stages.each do |stage|
|
||||||
%i.fa.fa-refresh.has-tooltip{ data: { container: 'body', placement: 'bottom' }, title: 'Job was retried' }
|
%li
|
||||||
|
%a.stage-item= stage.name
|
||||||
|
|
||||||
|
.builds-container
|
||||||
|
- HasStatus::ORDERED_STATUSES.each do |build_status|
|
||||||
|
- builds.select{|build| build.status == build_status}.each do |build|
|
||||||
|
.build-job{ class: sidebar_build_class(build, @build), data: { stage: build.stage } }
|
||||||
|
= link_to project_job_path(@project, build) do
|
||||||
|
= icon('arrow-right')
|
||||||
|
%span{ class: "ci-status-icon-#{build.status}" }
|
||||||
|
= ci_icon_for_status(build.status)
|
||||||
|
%span
|
||||||
|
- if build.name
|
||||||
|
= build.name
|
||||||
|
- else
|
||||||
|
= build.id
|
||||||
|
- if build.retried?
|
||||||
|
%i.fa.fa-refresh.has-tooltip{ data: { container: 'body', placement: 'bottom' }, title: 'Job was retried' }
|
||||||
|
|
|
@ -5,7 +5,6 @@ import '~/lib/utils/datetime_utility';
|
||||||
import '~/lib/utils/url_utility';
|
import '~/lib/utils/url_utility';
|
||||||
import '~/build';
|
import '~/build';
|
||||||
import '~/breakpoints';
|
import '~/breakpoints';
|
||||||
import 'vendor/jquery.nicescroll';
|
|
||||||
|
|
||||||
describe('Build', () => {
|
describe('Build', () => {
|
||||||
const BUILD_URL = `${gl.TEST_HOST}/frontend-fixtures/builds-project/-/jobs/1`;
|
const BUILD_URL = `${gl.TEST_HOST}/frontend-fixtures/builds-project/-/jobs/1`;
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
|
|
||||||
import '~/gl_dropdown';
|
import '~/gl_dropdown';
|
||||||
import 'select2';
|
import 'select2';
|
||||||
import 'vendor/jquery.nicescroll';
|
|
||||||
import '~/api';
|
import '~/api';
|
||||||
import '~/create_label';
|
import '~/create_label';
|
||||||
import '~/issuable_context';
|
import '~/issuable_context';
|
||||||
|
|
3634
vendor/assets/javascripts/jquery.nicescroll.js
vendored
3634
vendor/assets/javascripts/jquery.nicescroll.js
vendored
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue