summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/repo/components
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/repo/components')
-rw-r--r--app/assets/javascripts/repo/components/new_dropdown/index.vue7
-rw-r--r--app/assets/javascripts/repo/components/new_dropdown/modal.vue21
-rw-r--r--app/assets/javascripts/repo/components/repo_editor.vue4
-rw-r--r--app/assets/javascripts/repo/components/repo_file_buttons.vue8
-rw-r--r--app/assets/javascripts/repo/components/repo_tab.vue6
5 files changed, 20 insertions, 26 deletions
diff --git a/app/assets/javascripts/repo/components/new_dropdown/index.vue b/app/assets/javascripts/repo/components/new_dropdown/index.vue
index 96b2087e1b9..53baa02c344 100644
--- a/app/assets/javascripts/repo/components/new_dropdown/index.vue
+++ b/app/assets/javascripts/repo/components/new_dropdown/index.vue
@@ -1,5 +1,4 @@
<script>
- import { mapState } from 'vuex';
import newModal from './modal.vue';
export default {
@@ -12,11 +11,6 @@
modalType: '',
};
},
- computed: {
- ...mapState({
- currentPath: 'path',
- }),
- },
methods: {
createNewItem(type) {
this.modalType = type;
@@ -70,7 +64,6 @@
<new-modal
v-if="openModal"
:type="modalType"
- :current-path="currentPath"
@toggle="toggleModalOpen"
/>
</div>
diff --git a/app/assets/javascripts/repo/components/new_dropdown/modal.vue b/app/assets/javascripts/repo/components/new_dropdown/modal.vue
index e3496f26b8b..bb22dc4caa9 100644
--- a/app/assets/javascripts/repo/components/new_dropdown/modal.vue
+++ b/app/assets/javascripts/repo/components/new_dropdown/modal.vue
@@ -1,14 +1,10 @@
<script>
- import { mapActions } from 'vuex';
+ import { mapActions, mapState } from 'vuex';
import { __ } from '../../../locale';
import popupDialog from '../../../vue_shared/components/popup_dialog.vue';
export default {
props: {
- currentPath: {
- type: String,
- required: true,
- },
type: {
type: String,
required: true,
@@ -16,7 +12,7 @@
},
data() {
return {
- entryName: this.currentPath !== '' ? `${this.currentPath}/` : '',
+ entryName: '',
};
},
components: {
@@ -39,6 +35,17 @@
},
},
computed: {
+ ...mapState([
+ 'path',
+ ]),
+ name: {
+ get() {
+ return this.path !== '' ? `${this.path}/${this.entryName}` : this.entryName;
+ },
+ set(newVal) {
+ this.entryName = newVal.replace(`${this.path}/`, '');
+ },
+ },
modalTitle() {
if (this.type === 'tree') {
return __('Create new directory');
@@ -88,7 +95,7 @@
<input
type="text"
class="form-control"
- v-model="entryName"
+ v-model="name"
ref="fieldName"
/>
</div>
diff --git a/app/assets/javascripts/repo/components/repo_editor.vue b/app/assets/javascripts/repo/components/repo_editor.vue
index 0714ba90b6f..8b717e2330b 100644
--- a/app/assets/javascripts/repo/components/repo_editor.vue
+++ b/app/assets/javascripts/repo/components/repo_editor.vue
@@ -51,6 +51,8 @@ export default {
.catch(() => flash('Error setting up monaco. Please try again.'));
},
setupEditor() {
+ if (!this.activeFile) return;
+
const foundLang = this.languages.find(lang =>
lang.extensions && lang.extensions.indexOf(this.activeFileExtension) === 0,
);
@@ -71,7 +73,7 @@ export default {
},
watch: {
activeFile(oldVal, newVal) {
- if (newVal.active) {
+ if (!newVal.active) {
this.initMonaco();
}
},
diff --git a/app/assets/javascripts/repo/components/repo_file_buttons.vue b/app/assets/javascripts/repo/components/repo_file_buttons.vue
index 3d72a635035..dd948ee84fb 100644
--- a/app/assets/javascripts/repo/components/repo_file_buttons.vue
+++ b/app/assets/javascripts/repo/components/repo_file_buttons.vue
@@ -52,13 +52,5 @@ export default {
Permalink
</a>
</div>
-
- <!-- <a
- v-if="canPreview"
- href="#"
- @click.prevent="rawPreviewToggle"
- class="btn btn-default preview">
- {{activeFileLabel}}
- </a> -->
</div>
</template>
diff --git a/app/assets/javascripts/repo/components/repo_tab.vue b/app/assets/javascripts/repo/components/repo_tab.vue
index 4c418aba103..da0714c368c 100644
--- a/app/assets/javascripts/repo/components/repo_tab.vue
+++ b/app/assets/javascripts/repo/components/repo_tab.vue
@@ -11,7 +11,7 @@ export default {
computed: {
closeLabel() {
- if (this.tab.changed) {
+ if (this.tab.changed || this.tab.tempFile) {
return `${this.tab.name} changed`;
}
return `Close ${this.tab.name}`;
@@ -42,7 +42,7 @@ export default {
<button
type="button"
class="close-btn"
- @click.stop.prevent="closeFile(tab)"
+ @click.stop.prevent="closeFile({ file: tab })"
:aria-label="closeLabel">
<i
class="fa"
@@ -55,7 +55,7 @@ export default {
href="#"
class="repo-tab"
:title="tab.url"
- @click.prevent="setFileActive(tab)">
+ @click.prevent.stop="setFileActive(tab)">
{{tab.name}}
</a>
</li>