diff options
Diffstat (limited to 'app/assets/javascripts')
9 files changed, 29 insertions, 22 deletions
diff --git a/app/assets/javascripts/boards/components/issue_card_inner.vue b/app/assets/javascripts/boards/components/issue_card_inner.vue index bdaed17fd09..274565adab0 100644 --- a/app/assets/javascripts/boards/components/issue_card_inner.vue +++ b/app/assets/javascripts/boards/components/issue_card_inner.vue @@ -177,9 +177,9 @@ export default { class="confidential-icon append-right-4" :aria-label="__('Confidential')" /> - <a :href="issue.path" :title="issue.title" class="js-no-trigger" @mousemove.stop> - {{ issue.title }} - </a> + <a :href="issue.path" :title="issue.title" class="js-no-trigger" @mousemove.stop>{{ + issue.title + }}</a> </h4> </div> <div v-if="showLabelFooter" class="board-card-labels prepend-top-4 d-flex flex-wrap"> @@ -225,7 +225,7 @@ export default { #{{ issue.iid }} </span> <span class="board-info-items prepend-top-8 d-inline-block"> - <issue-due-date v-if="issue.dueDate" :date="issue.dueDate" /> + <issue-due-date v-if="issue.dueDate" :date="issue.dueDate" :closed="issue.closed" /> <issue-time-estimate v-if="issue.timeEstimate" :estimate="issue.timeEstimate" /> <issue-card-weight v-if="validIssueWeight" diff --git a/app/assets/javascripts/boards/components/issue_due_date.vue b/app/assets/javascripts/boards/components/issue_due_date.vue index a32ebdab5e1..1d70c635c18 100644 --- a/app/assets/javascripts/boards/components/issue_due_date.vue +++ b/app/assets/javascripts/boards/components/issue_due_date.vue @@ -16,6 +16,11 @@ export default { GlTooltip, }, props: { + closed: { + type: Boolean, + required: false, + default: false, + }, date: { type: String, required: true, @@ -66,7 +71,7 @@ export default { return getDayDifference(today, this.issueDueDate); }, isPastDue() { - if (this.timeDifference >= 0) return false; + if (this.timeDifference >= 0 || this.closed) return false; return true; }, standardDateFormat() { @@ -92,7 +97,8 @@ export default { }}</time> </span> <gl-tooltip :target="() => $refs.issueDueDate" :placement="tooltipPlacement"> - <span class="bold">{{ __('Due date') }}</span> <br /> + <span class="bold">{{ __('Due date') }}</span> + <br /> <span :class="{ 'text-danger-muted': isPastDue }">{{ title }}</span> </gl-tooltip> </span> diff --git a/app/assets/javascripts/boards/models/issue.js b/app/assets/javascripts/boards/models/issue.js index 044d96a9aec..0e86359534b 100644 --- a/app/assets/javascripts/boards/models/issue.js +++ b/app/assets/javascripts/boards/models/issue.js @@ -19,6 +19,7 @@ class ListIssue { this.isFetching = { subscriptions: true, }; + this.closed = obj.closed; this.isLoading = {}; this.refreshData(obj, defaultAvatar); diff --git a/app/assets/javascripts/diffs/components/diff_file.vue b/app/assets/javascripts/diffs/components/diff_file.vue index f5051748f10..048dc274cf2 100644 --- a/app/assets/javascripts/diffs/components/diff_file.vue +++ b/app/assets/javascripts/diffs/components/diff_file.vue @@ -1,6 +1,6 @@ <script> import { mapActions, mapGetters, mapState } from 'vuex'; -import _ from 'underscore'; +import { escape as esc } from 'lodash'; import { GlLoadingIcon } from '@gitlab/ui'; import { __, sprintf } from '~/locale'; import createFlash from '~/flash'; @@ -46,7 +46,7 @@ export default { return sprintf( __('You can %{linkStart}view the blob%{linkEnd} instead.'), { - linkStart: `<a href="${_.escape(this.file.view_path)}">`, + linkStart: `<a href="${esc(this.file.view_path)}">`, linkEnd: '</a>', }, false, diff --git a/app/assets/javascripts/diffs/components/diff_file_header.vue b/app/assets/javascripts/diffs/components/diff_file_header.vue index 731c53a7339..d4270960f57 100644 --- a/app/assets/javascripts/diffs/components/diff_file_header.vue +++ b/app/assets/javascripts/diffs/components/diff_file_header.vue @@ -1,5 +1,5 @@ <script> -import _ from 'underscore'; +import { escape as esc } from 'lodash'; import { mapActions, mapGetters } from 'vuex'; import { GlButton, GlTooltipDirective, GlLoadingIcon } from '@gitlab/ui'; import { polyfillSticky } from '~/lib/utils/sticky'; @@ -91,7 +91,7 @@ export default { return this.expanded ? 'chevron-down' : 'chevron-right'; }, viewFileButtonText() { - const truncatedContentSha = _.escape(truncateSha(this.diffFile.content_sha)); + const truncatedContentSha = esc(truncateSha(this.diffFile.content_sha)); return sprintf( s__('MergeRequests|View file @ %{commitId}'), { commitId: truncatedContentSha }, @@ -99,7 +99,7 @@ export default { ); }, viewReplacedFileButtonText() { - const truncatedBaseSha = _.escape(truncateSha(this.diffFile.diff_refs.base_sha)); + const truncatedBaseSha = esc(truncateSha(this.diffFile.diff_refs.base_sha)); return sprintf( s__('MergeRequests|View replaced file @ %{commitId}'), { diff --git a/app/assets/javascripts/diffs/components/diff_stats.vue b/app/assets/javascripts/diffs/components/diff_stats.vue index 9d362ceb429..0234fc4f40e 100644 --- a/app/assets/javascripts/diffs/components/diff_stats.vue +++ b/app/assets/javascripts/diffs/components/diff_stats.vue @@ -1,7 +1,7 @@ <script> import Icon from '~/vue_shared/components/icon.vue'; import { n__ } from '~/locale'; -import { isNumber } from 'underscore'; +import { isNumber } from 'lodash'; export default { components: { Icon }, diff --git a/app/assets/javascripts/diffs/components/image_diff_overlay.vue b/app/assets/javascripts/diffs/components/image_diff_overlay.vue index 703a281308e..be7e6789216 100644 --- a/app/assets/javascripts/diffs/components/image_diff_overlay.vue +++ b/app/assets/javascripts/diffs/components/image_diff_overlay.vue @@ -1,6 +1,6 @@ <script> import { mapActions, mapGetters } from 'vuex'; -import _ from 'underscore'; +import { isArray } from 'lodash'; import imageDiffMixin from 'ee_else_ce/diffs/mixins/image_diff'; import Icon from '~/vue_shared/components/icon.vue'; @@ -46,7 +46,7 @@ export default { return this.getCommentFormForDiffFile(this.fileHash); }, allDiscussions() { - return _.isArray(this.discussions) ? this.discussions : [this.discussions]; + return isArray(this.discussions) ? this.discussions : [this.discussions]; }, }, methods: { diff --git a/app/assets/javascripts/diffs/components/no_changes.vue b/app/assets/javascripts/diffs/components/no_changes.vue index 47e9627a957..09cb542c3dc 100644 --- a/app/assets/javascripts/diffs/components/no_changes.vue +++ b/app/assets/javascripts/diffs/components/no_changes.vue @@ -1,6 +1,6 @@ <script> import { mapGetters } from 'vuex'; -import _ from 'underscore'; +import { escape as esc } from 'lodash'; import { GlButton } from '@gitlab/ui'; import { __, sprintf } from '~/locale'; @@ -24,8 +24,8 @@ export default { { ref_start: '<span class="ref-name">', ref_end: '</span>', - source_branch: _.escape(this.getNoteableData.source_branch), - target_branch: _.escape(this.getNoteableData.target_branch), + source_branch: esc(this.getNoteableData.source_branch), + target_branch: esc(this.getNoteableData.target_branch), }, false, ); diff --git a/app/assets/javascripts/diffs/store/utils.js b/app/assets/javascripts/diffs/store/utils.js index 29133c814ea..9c788e283b9 100644 --- a/app/assets/javascripts/diffs/store/utils.js +++ b/app/assets/javascripts/diffs/store/utils.js @@ -1,4 +1,4 @@ -import _ from 'underscore'; +import { property, isEqual } from 'lodash'; import { truncatePathMiddleToLength } from '~/lib/utils/text_utility'; import { diffModes, diffViewerModes } from '~/ide/constants'; import { @@ -442,7 +442,7 @@ export function isDiscussionApplicableToLine({ discussion, diffPosition, latestD const originalRefs = discussion.original_position; const refs = discussion.position; - return _.isEqual(refs, diffPositionCopy) || _.isEqual(originalRefs, diffPositionCopy); + return isEqual(refs, diffPositionCopy) || isEqual(originalRefs, diffPositionCopy); } // eslint-disable-next-line @@ -578,10 +578,10 @@ export const convertExpandLines = ({ for (let i = 0, diffLinesLength = diffLines.length; i < diffLinesLength; i += 1) { const line = diffLines[i]; - if (_.property(typeKey)(line) === 'match') { + if (property(typeKey)(line) === 'match') { const beforeLine = diffLines[i - 1]; const afterLine = diffLines[i + 1]; - const newLineProperty = _.property(newLineKey); + const newLineProperty = property(newLineKey); const beforeLineIndex = newLineProperty(beforeLine) || 0; const afterLineIndex = newLineProperty(afterLine) - 1 || dataLength; @@ -589,7 +589,7 @@ export const convertExpandLines = ({ ...data.slice(beforeLineIndex, afterLineIndex).map((l, index) => mapLine({ line: Object.assign(l, { hasForm: false, discussions: [] }), - oldLine: (_.property(oldLineKey)(beforeLine) || 0) + index + 1, + oldLine: (property(oldLineKey)(beforeLine) || 0) + index + 1, newLine: (newLineProperty(beforeLine) || 0) + index + 1, }), ), |