From b299198e1eb5e1f26d5267f4a64944e600086d6b Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Wed, 3 Jan 2018 23:14:55 +0000 Subject: Adds `eslint-plugin-vue`, fixes linter errors and adds docs --- app/assets/javascripts/blob/notebook/index.js | 76 ++++---- app/assets/javascripts/blob/pdf/index.js | 6 +- app/assets/javascripts/boards/boards_bundle.js | 18 +- .../clusters/components/applications.vue | 32 ++-- app/assets/javascripts/commit/image_file.js | 194 ++++++++++----------- .../cycle_analytics/cycle_analytics_bundle.js | 20 +-- app/assets/javascripts/deploy_keys/index.js | 6 +- .../environments/components/environment_item.vue | 3 +- .../filtered_search/recent_searches_root.js | 6 +- .../javascripts/groups/components/group_folder.vue | 6 +- .../javascripts/groups/components/item_stats.vue | 7 +- .../ide/components/repo_commit_section.vue | 4 +- app/assets/javascripts/ide/index.js | 10 +- .../issue_show/components/description.vue | 6 +- app/assets/javascripts/jobs/job_details_bundle.js | 12 +- .../merge_conflicts/merge_conflicts_bundle.js | 2 +- .../monitoring/components/empty_state.vue | 6 +- .../javascripts/notes/components/comment_form.vue | 14 +- .../notes/components/noteable_discussion.vue | 3 +- .../components/graph/dropdown_job_component.vue | 3 +- .../pipelines/components/pipeline_url.vue | 12 +- .../javascripts/pipelines/components/stage.vue | 4 +- .../pipelines/pipeline_details_bundle.js | 12 +- .../javascripts/pipelines/pipelines_bundle.js | 6 +- .../account/components/delete_account_modal.vue | 3 +- .../confidential/confidential_issue_sidebar.vue | 5 +- .../sidebar/components/lock/lock_issue_sidebar.vue | 3 +- 27 files changed, 265 insertions(+), 214 deletions(-) (limited to 'app') diff --git a/app/assets/javascripts/blob/notebook/index.js b/app/assets/javascripts/blob/notebook/index.js index 57b031956e8..6f1350e80fc 100644 --- a/app/assets/javascripts/blob/notebook/index.js +++ b/app/assets/javascripts/blob/notebook/index.js @@ -8,6 +8,9 @@ export default () => { new Vue({ el, + components: { + notebookLab, + }, data() { return { error: false, @@ -16,8 +19,41 @@ export default () => { json: {}, }; }, - components: { - notebookLab, + mounted() { + if (gon.katex_css_url) { + const katexStyles = document.createElement('link'); + katexStyles.setAttribute('rel', 'stylesheet'); + katexStyles.setAttribute('href', gon.katex_css_url); + document.head.appendChild(katexStyles); + } + + if (gon.katex_js_url) { + const katexScript = document.createElement('script'); + katexScript.addEventListener('load', () => { + this.loadFile(); + }); + katexScript.setAttribute('src', gon.katex_js_url); + document.head.appendChild(katexScript); + } else { + this.loadFile(); + } + }, + methods: { + loadFile() { + axios.get(el.dataset.endpoint) + .then(res => res.data) + .then((data) => { + this.json = data; + this.loading = false; + }) + .catch((e) => { + if (e.status !== 200) { + this.loadError = true; + } + + this.error = true; + }); + }, }, template: `
@@ -46,41 +82,5 @@ export default () => {

`, - methods: { - loadFile() { - axios.get(el.dataset.endpoint) - .then(res => res.data) - .then((data) => { - this.json = data; - this.loading = false; - }) - .catch((e) => { - if (e.status !== 200) { - this.loadError = true; - } - - this.error = true; - }); - }, - }, - mounted() { - if (gon.katex_css_url) { - const katexStyles = document.createElement('link'); - katexStyles.setAttribute('rel', 'stylesheet'); - katexStyles.setAttribute('href', gon.katex_css_url); - document.head.appendChild(katexStyles); - } - - if (gon.katex_js_url) { - const katexScript = document.createElement('script'); - katexScript.addEventListener('load', () => { - this.loadFile(); - }); - katexScript.setAttribute('src', gon.katex_js_url); - document.head.appendChild(katexScript); - } else { - this.loadFile(); - } - }, }); }; diff --git a/app/assets/javascripts/blob/pdf/index.js b/app/assets/javascripts/blob/pdf/index.js index 7109f356540..70136cc4087 100644 --- a/app/assets/javascripts/blob/pdf/index.js +++ b/app/assets/javascripts/blob/pdf/index.js @@ -7,6 +7,9 @@ export default () => { return new Vue({ el, + components: { + pdfLab, + }, data() { return { error: false, @@ -15,9 +18,6 @@ export default () => { pdf: el.dataset.endpoint, }; }, - components: { - pdfLab, - }, methods: { onLoad() { this.loading = false; diff --git a/app/assets/javascripts/boards/boards_bundle.js b/app/assets/javascripts/boards/boards_bundle.js index 679c883cdcf..90166b3d3d1 100644 --- a/app/assets/javascripts/boards/boards_bundle.js +++ b/app/assets/javascripts/boards/boards_bundle.js @@ -171,19 +171,14 @@ $(() => { }); gl.IssueBoardsModalAddBtn = new Vue({ - mixins: [gl.issueBoards.ModalMixins], el: document.getElementById('js-add-issues-btn'), + mixins: [gl.issueBoards.ModalMixins], data() { return { modal: ModalStore.store, store: Store.state, }; }, - watch: { - disabled() { - this.updateTooltip(); - }, - }, computed: { disabled() { if (!this.store) { @@ -199,6 +194,14 @@ $(() => { return ''; }, }, + watch: { + disabled() { + this.updateTooltip(); + }, + }, + mounted() { + this.updateTooltip(); + }, methods: { updateTooltip() { const $tooltip = $(this.$refs.addIssuesButton); @@ -217,9 +220,6 @@ $(() => { } }, }, - mounted() { - this.updateTooltip(); - }, template: `