From 4fe43e43bd30e63064942390dd2747c9c34bb016 Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Wed, 19 Apr 2017 14:43:20 +0100 Subject: Convert vue components into vue files --- .../environments/components/environment.js | 215 -------- .../environments/components/environment.vue | 226 ++++++++ .../environments/components/environment_actions.js | 97 ---- .../components/environment_actions.vue | 100 ++++ .../components/environment_external_url.js | 30 -- .../components/environment_external_url.vue | 37 ++ .../environments/components/environment_item.js | 550 -------------------- .../environments/components/environment_item.vue | 574 +++++++++++++++++++++ .../components/environment_monitoring.js | 31 -- .../components/environment_monitoring.vue | 38 ++ .../components/environment_rollback.js | 67 --- .../components/environment_rollback.vue | 72 +++ .../environments/components/environment_stop.js | 64 --- .../environments/components/environment_stop.vue | 73 +++ .../components/environment_terminal_button.js | 37 -- .../components/environment_terminal_button.vue | 43 ++ .../environments/components/environments_table.js | 97 ---- .../environments/components/environments_table.vue | 120 +++++ .../environments/environments_bundle.js | 17 +- .../folder/environments_folder_bundle.js | 17 +- .../folder/environments_folder_view.js | 169 ------ .../folder/environments_folder_view.vue | 169 ++++++ app/views/projects/environments/folder.html.haml | 2 +- app/views/projects/environments/index.html.haml | 2 +- .../environments/environment_actions_spec.js | 2 +- .../environments/environment_external_url_spec.js | 2 +- .../environments/environment_item_spec.js | 2 +- .../environments/environment_monitoring_spec.js | 2 +- .../environments/environment_rollback_spec.js | 2 +- spec/javascripts/environments/environment_spec.js | 16 +- .../environments/environment_stop_spec.js | 2 +- .../environments/environment_table_spec.js | 2 +- .../environment_terminal_button_spec.js | 2 +- .../folder/environments_folder_view_spec.js | 8 +- .../fixtures/environments/environments.html.haml | 2 +- .../environments_folder_view.html.haml | 2 +- 36 files changed, 1494 insertions(+), 1397 deletions(-) delete mode 100644 app/assets/javascripts/environments/components/environment.js create mode 100644 app/assets/javascripts/environments/components/environment.vue delete mode 100644 app/assets/javascripts/environments/components/environment_actions.js create mode 100644 app/assets/javascripts/environments/components/environment_actions.vue delete mode 100644 app/assets/javascripts/environments/components/environment_external_url.js create mode 100644 app/assets/javascripts/environments/components/environment_external_url.vue delete mode 100644 app/assets/javascripts/environments/components/environment_item.js create mode 100644 app/assets/javascripts/environments/components/environment_item.vue delete mode 100644 app/assets/javascripts/environments/components/environment_monitoring.js create mode 100644 app/assets/javascripts/environments/components/environment_monitoring.vue delete mode 100644 app/assets/javascripts/environments/components/environment_rollback.js create mode 100644 app/assets/javascripts/environments/components/environment_rollback.vue delete mode 100644 app/assets/javascripts/environments/components/environment_stop.js create mode 100644 app/assets/javascripts/environments/components/environment_stop.vue delete mode 100644 app/assets/javascripts/environments/components/environment_terminal_button.js create mode 100644 app/assets/javascripts/environments/components/environment_terminal_button.vue delete mode 100644 app/assets/javascripts/environments/components/environments_table.js create mode 100644 app/assets/javascripts/environments/components/environments_table.vue delete mode 100644 app/assets/javascripts/environments/folder/environments_folder_view.js create mode 100644 app/assets/javascripts/environments/folder/environments_folder_view.vue diff --git a/app/assets/javascripts/environments/components/environment.js b/app/assets/javascripts/environments/components/environment.js deleted file mode 100644 index 0518422e475..00000000000 --- a/app/assets/javascripts/environments/components/environment.js +++ /dev/null @@ -1,215 +0,0 @@ -/* eslint-disable no-new */ -/* global Flash */ -import Vue from 'vue'; -import EnvironmentsService from '../services/environments_service'; -import EnvironmentTable from './environments_table'; -import EnvironmentsStore from '../stores/environments_store'; -import TablePaginationComponent from '../../vue_shared/components/table_pagination'; -import '../../lib/utils/common_utils'; -import eventHub from '../event_hub'; - -export default Vue.component('environment-component', { - - components: { - 'environment-table': EnvironmentTable, - 'table-pagination': TablePaginationComponent, - }, - - data() { - const environmentsData = document.querySelector('#environments-list-view').dataset; - const store = new EnvironmentsStore(); - - return { - store, - state: store.state, - visibility: 'available', - isLoading: false, - isLoadingFolderContent: false, - cssContainerClass: environmentsData.cssClass, - endpoint: environmentsData.environmentsDataEndpoint, - canCreateDeployment: environmentsData.canCreateDeployment, - canReadEnvironment: environmentsData.canReadEnvironment, - canCreateEnvironment: environmentsData.canCreateEnvironment, - projectEnvironmentsPath: environmentsData.projectEnvironmentsPath, - projectStoppedEnvironmentsPath: environmentsData.projectStoppedEnvironmentsPath, - newEnvironmentPath: environmentsData.newEnvironmentPath, - helpPagePath: environmentsData.helpPagePath, - - // Pagination Properties, - paginationInformation: {}, - pageNumber: 1, - }; - }, - - computed: { - scope() { - return gl.utils.getParameterByName('scope'); - }, - - canReadEnvironmentParsed() { - return gl.utils.convertPermissionToBoolean(this.canReadEnvironment); - }, - - canCreateDeploymentParsed() { - return gl.utils.convertPermissionToBoolean(this.canCreateDeployment); - }, - - canCreateEnvironmentParsed() { - return gl.utils.convertPermissionToBoolean(this.canCreateEnvironment); - }, - }, - - /** - * Fetches all the environments and stores them. - * Toggles loading property. - */ - created() { - this.service = new EnvironmentsService(this.endpoint); - - this.fetchEnvironments(); - - eventHub.$on('refreshEnvironments', this.fetchEnvironments); - eventHub.$on('toggleFolder', this.toggleFolder); - }, - - beforeDestroyed() { - eventHub.$off('refreshEnvironments'); - eventHub.$off('toggleFolder'); - }, - - methods: { - toggleFolder(folder, folderUrl) { - this.store.toggleFolder(folder); - - if (!folder.isOpen) { - this.fetchChildEnvironments(folder, folderUrl); - } - }, - - /** - * Will change the page number and update the URL. - * - * @param {Number} pageNumber desired page to go to. - * @return {String} - */ - changePage(pageNumber) { - const param = gl.utils.setParamInURL('page', pageNumber); - - gl.utils.visitUrl(param); - return param; - }, - - fetchEnvironments() { - const scope = gl.utils.getParameterByName('scope') || this.visibility; - const pageNumber = gl.utils.getParameterByName('page') || this.pageNumber; - - this.isLoading = true; - - return this.service.get(scope, pageNumber) - .then(resp => ({ - headers: resp.headers, - body: resp.json(), - })) - .then((response) => { - this.store.storeAvailableCount(response.body.available_count); - this.store.storeStoppedCount(response.body.stopped_count); - this.store.storeEnvironments(response.body.environments); - this.store.setPagination(response.headers); - }) - .then(() => { - this.isLoading = false; - }) - .catch(() => { - this.isLoading = false; - new Flash('An error occurred while fetching the environments.'); - }); - }, - - fetchChildEnvironments(folder, folderUrl) { - this.isLoadingFolderContent = true; - - this.service.getFolderContent(folderUrl) - .then(resp => resp.json()) - .then((response) => { - this.store.setfolderContent(folder, response.environments); - this.isLoadingFolderContent = false; - }) - .catch(() => { - this.isLoadingFolderContent = false; - new Flash('An error occurred while fetching the environments.'); - }); - }, - }, - - template: ` -
- - -
-
- -
- -
-

- You don't have any environments right now. -

-

- Environments are places where code gets deployed, such as staging or production. -
- - Read more about environments - -

- - - New Environment - -
- -
- - -
- - - -
-
- `, -}); diff --git a/app/assets/javascripts/environments/components/environment.vue b/app/assets/javascripts/environments/components/environment.vue new file mode 100644 index 00000000000..37468ed0d6d --- /dev/null +++ b/app/assets/javascripts/environments/components/environment.vue @@ -0,0 +1,226 @@ + + diff --git a/app/assets/javascripts/environments/components/environment_actions.js b/app/assets/javascripts/environments/components/environment_actions.js deleted file mode 100644 index 1418e8d86ee..00000000000 --- a/app/assets/javascripts/environments/components/environment_actions.js +++ /dev/null @@ -1,97 +0,0 @@ -/* global Flash */ -/* eslint-disable no-new */ - -import playIconSvg from 'icons/_icon_play.svg'; -import eventHub from '../event_hub'; - -export default { - props: { - actions: { - type: Array, - required: false, - default: () => [], - }, - - service: { - type: Object, - required: true, - }, - }, - - data() { - return { - playIconSvg, - isLoading: false, - }; - }, - - computed: { - title() { - return 'Deploy to...'; - }, - }, - - methods: { - onClickAction(endpoint) { - this.isLoading = true; - - this.service.postAction(endpoint) - .then(() => { - this.isLoading = false; - eventHub.$emit('refreshEnvironments'); - }) - .catch(() => { - this.isLoading = false; - new Flash('An error occured while making the request.'); - }); - }, - - isActionDisabled(action) { - if (action.playable === undefined) { - return false; - } - - return !action.playable; - }, - }, - - template: ` -
-