From 592d0bd6bc73ab4b917c23aa2020d0527179a779 Mon Sep 17 00:00:00 2001 From: Malcolm Bouzi Date: Wed, 11 Nov 2020 11:41:46 -0500 Subject: [PATCH] web/satellite: access grant routing (#3966) --- .../components/accessGrants/AccessGrants.vue | 14 ++++++ .../components/accessGrants/ProgressBar.vue | 13 ++++++ .../steps/CreateAccessNameStep.vue | 15 ++++++ .../steps/CreateAccessPassphraseStep.vue | 15 ++++++ .../steps/CreateAccessPermissionsStep.vue | 15 ++++++ .../steps/CreateAccessUplinkStep.vue | 13 ++++++ web/satellite/src/router/index.ts | 46 ++++++++++++++++++- 7 files changed, 129 insertions(+), 2 deletions(-) create mode 100644 web/satellite/src/components/accessGrants/AccessGrants.vue create mode 100644 web/satellite/src/components/accessGrants/ProgressBar.vue create mode 100644 web/satellite/src/components/accessGrants/steps/CreateAccessNameStep.vue create mode 100644 web/satellite/src/components/accessGrants/steps/CreateAccessPassphraseStep.vue create mode 100644 web/satellite/src/components/accessGrants/steps/CreateAccessPermissionsStep.vue create mode 100644 web/satellite/src/components/accessGrants/steps/CreateAccessUplinkStep.vue diff --git a/web/satellite/src/components/accessGrants/AccessGrants.vue b/web/satellite/src/components/accessGrants/AccessGrants.vue new file mode 100644 index 000000000..a463e01a6 --- /dev/null +++ b/web/satellite/src/components/accessGrants/AccessGrants.vue @@ -0,0 +1,14 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + diff --git a/web/satellite/src/components/accessGrants/ProgressBar.vue b/web/satellite/src/components/accessGrants/ProgressBar.vue new file mode 100644 index 000000000..ec6d10659 --- /dev/null +++ b/web/satellite/src/components/accessGrants/ProgressBar.vue @@ -0,0 +1,13 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + + diff --git a/web/satellite/src/components/accessGrants/steps/CreateAccessNameStep.vue b/web/satellite/src/components/accessGrants/steps/CreateAccessNameStep.vue new file mode 100644 index 000000000..099d03506 --- /dev/null +++ b/web/satellite/src/components/accessGrants/steps/CreateAccessNameStep.vue @@ -0,0 +1,15 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + + diff --git a/web/satellite/src/components/accessGrants/steps/CreateAccessPassphraseStep.vue b/web/satellite/src/components/accessGrants/steps/CreateAccessPassphraseStep.vue new file mode 100644 index 000000000..338dbd2ff --- /dev/null +++ b/web/satellite/src/components/accessGrants/steps/CreateAccessPassphraseStep.vue @@ -0,0 +1,15 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + + diff --git a/web/satellite/src/components/accessGrants/steps/CreateAccessPermissionsStep.vue b/web/satellite/src/components/accessGrants/steps/CreateAccessPermissionsStep.vue new file mode 100644 index 000000000..e9baf8c13 --- /dev/null +++ b/web/satellite/src/components/accessGrants/steps/CreateAccessPermissionsStep.vue @@ -0,0 +1,15 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + + diff --git a/web/satellite/src/components/accessGrants/steps/CreateAccessUplinkStep.vue b/web/satellite/src/components/accessGrants/steps/CreateAccessUplinkStep.vue new file mode 100644 index 000000000..e5f0c9acf --- /dev/null +++ b/web/satellite/src/components/accessGrants/steps/CreateAccessUplinkStep.vue @@ -0,0 +1,13 @@ +// Copyright (C) 2020 Storj Labs, Inc. +// See LICENSE for copying information. + + + diff --git a/web/satellite/src/router/index.ts b/web/satellite/src/router/index.ts index 184c216ee..3446f3814 100644 --- a/web/satellite/src/router/index.ts +++ b/web/satellite/src/router/index.ts @@ -4,6 +4,11 @@ import Vue from 'vue'; import Router, { RouteRecord } from 'vue-router'; +import AccessGrants from '@/components/accessGrants/AccessGrants.vue'; +import CreateAccessNameStep from '@/components/accessGrants/steps/CreateAccessNameStep.vue'; +import CreateAccessPassphraseStep from '@/components/accessGrants/steps/CreateAccessPassphraseStep.vue'; +import CreateAccessPermissionsStep from '@/components/accessGrants/steps/CreateAccessPermissionsStep.vue'; +import CreateAccessUplinkStep from '@/components/accessGrants/steps/CreateAccessUplinkStep.vue'; import AccountArea from '@/components/account/AccountArea.vue'; import AccountBilling from '@/components/account/billing/BillingArea.vue'; import DetailedHistory from '@/components/account/billing/depositAndBillingHistory/DetailedHistory.vue'; @@ -42,6 +47,7 @@ export abstract class RouteConfig { public static OnboardingTour = new NavigationLink('/onboarding-tour', 'Onboarding Tour'); public static CreateProject = new NavigationLink('/create-project', 'Create Project'); public static EditProjectDetails = new NavigationLink('/edit-project-details', 'Edit Project Details'); + public static AccessGrants = new NavigationLink('/access-grants', 'Access Grants'); // child paths public static Settings = new NavigationLink('settings', 'Settings'); @@ -49,6 +55,11 @@ export abstract class RouteConfig { public static BillingHistory = new NavigationLink('billing-history', 'Billing History'); public static DepositHistory = new NavigationLink('deposit-history', 'Deposit History'); public static CreditsHistory = new NavigationLink('credits-history', 'Credits History'); + public static NameStep = new NavigationLink('access-create-name', 'Name Your Access'); + public static PermissionsStep = new NavigationLink('access-create-permissions', 'Access Permissions'); + public static PassphraseStep = new NavigationLink('access-create-passphrase', 'Encryption Passphrase'); + public static UplinkStep = new NavigationLink('access-create-uplink', 'Upload Data'); + // TODO: disabled until implementation // public static Referral = new NavigationLink('referral', 'Referral'); @@ -65,6 +76,7 @@ export const notProjectRelatedRoutes = [ RouteConfig.DepositHistory.name, RouteConfig.CreditsHistory.name, RouteConfig.Settings.name, + RouteConfig.AccessGrants.name, // RouteConfig.Referral.name, ]; @@ -165,8 +177,38 @@ export const router = new Router({ name: RouteConfig.EditProjectDetails.name, component: EditProjectDetails, }, - ], - }, + { + path: RouteConfig.AccessGrants.path, + name: RouteConfig.AccessGrants.name, + meta: { + requiresAuth: true, + }, + component: AccessGrants, + children: [ + { + path: RouteConfig.NameStep.path, + name: RouteConfig.NameStep.name, + component: CreateAccessNameStep, + }, + { + path: RouteConfig.PermissionsStep.path, + name: RouteConfig.PermissionsStep.name, + component: CreateAccessPermissionsStep, + }, + { + path: RouteConfig.PassphraseStep.path, + name: RouteConfig.PassphraseStep.name, + component: CreateAccessPassphraseStep, + }, + { + path: RouteConfig.UplinkStep.path, + name: RouteConfig.UplinkStep.name, + component: CreateAccessUplinkStep, + }, + ], + }, +], + }, { path: '*', name: '404',