From 8399838538c2f74ce84926e4d8ba060bbcefa357 Mon Sep 17 00:00:00 2001 From: Guillaume Chau Date: Mon, 5 Mar 2018 17:53:21 +0100 Subject: [PATCH] feat(ui): Project Create details form --- .../@vue/cli-ui/src/components/StatusBar.vue | 50 +++- .../@vue/cli-ui/src/components/StepWizard.vue | 78 +++++++ .../@vue/cli-ui/src/graphql-api/type-defs.js | 7 + packages/@vue/cli-ui/src/router.js | 6 + packages/@vue/cli-ui/src/style/main.styl | 9 + .../@vue/cli-ui/src/views/ProjectCreate.vue | 214 ++++++++++++++++++ .../@vue/cli-ui/src/views/ProjectSelect.vue | 32 +-- 7 files changed, 377 insertions(+), 19 deletions(-) create mode 100644 packages/@vue/cli-ui/src/components/StepWizard.vue create mode 100644 packages/@vue/cli-ui/src/views/ProjectCreate.vue diff --git a/packages/@vue/cli-ui/src/components/StatusBar.vue b/packages/@vue/cli-ui/src/components/StatusBar.vue index 690951eca..8d9bd7407 100644 --- a/packages/@vue/cli-ui/src/components/StatusBar.vue +++ b/packages/@vue/cli-ui/src/components/StatusBar.vue @@ -1,10 +1,39 @@ @@ -42,4 +78,10 @@ export default { &:hover opacity 1 background lighten(@background, 40%) + + > .vue-icon + * + margin-left 4px + + .label + color lighten($vue-color-dark, 20%) diff --git a/packages/@vue/cli-ui/src/components/StepWizard.vue b/packages/@vue/cli-ui/src/components/StepWizard.vue new file mode 100644 index 000000000..4de4fd390 --- /dev/null +++ b/packages/@vue/cli-ui/src/components/StepWizard.vue @@ -0,0 +1,78 @@ + + + + + + diff --git a/packages/@vue/cli-ui/src/graphql-api/type-defs.js b/packages/@vue/cli-ui/src/graphql-api/type-defs.js index 31adbcc7a..5397ae677 100644 --- a/packages/@vue/cli-ui/src/graphql-api/type-defs.js +++ b/packages/@vue/cli-ui/src/graphql-api/type-defs.js @@ -16,6 +16,11 @@ enum ConsoleLogType { done } +enum PackageManager { + npm + yarn +} + type Folder { name: String! path: String! @@ -36,6 +41,8 @@ type Project { input ProjectCreateInput { path: String! + force: Boolean! + packageManager: PackageManager } input ProjectImportInput { diff --git a/packages/@vue/cli-ui/src/router.js b/packages/@vue/cli-ui/src/router.js index a5ab98a27..cc4763c09 100644 --- a/packages/@vue/cli-ui/src/router.js +++ b/packages/@vue/cli-ui/src/router.js @@ -4,6 +4,7 @@ import { apolloClient } from './vue-apollo' import Home from './views/Home.vue' import ProjectSelect from './views/ProjectSelect.vue' +import ProjectCreate from './views/ProjectCreate.vue' import About from './views/About.vue' import PROJECT_CURRENT from './graphql/projectCurrent.gql' @@ -26,6 +27,11 @@ const router = new Router({ name: 'project-select', component: ProjectSelect }, + { + path: '/project/create', + name: 'project-create', + component: ProjectCreate + }, { path: '/about', name: 'about', diff --git a/packages/@vue/cli-ui/src/style/main.styl b/packages/@vue/cli-ui/src/style/main.styl index b8142c534..7b4a749d4 100644 --- a/packages/@vue/cli-ui/src/style/main.styl +++ b/packages/@vue/cli-ui/src/style/main.styl @@ -11,3 +11,12 @@ body, margin 24px auto width 48px height @width + +.actions-bar + padding 12px + background $color-light-background + h-box() + box-center() + + > * + space-between-x(12px) diff --git a/packages/@vue/cli-ui/src/views/ProjectCreate.vue b/packages/@vue/cli-ui/src/views/ProjectCreate.vue new file mode 100644 index 000000000..2d99dacc3 --- /dev/null +++ b/packages/@vue/cli-ui/src/views/ProjectCreate.vue @@ -0,0 +1,214 @@ + + + + + diff --git a/packages/@vue/cli-ui/src/views/ProjectSelect.vue b/packages/@vue/cli-ui/src/views/ProjectSelect.vue index 8d781a109..0230f572d 100644 --- a/packages/@vue/cli-ui/src/views/ProjectSelect.vue +++ b/packages/@vue/cli-ui/src/views/ProjectSelect.vue @@ -1,6 +1,10 @@