web/satellite: Disable limits area of dashboard

Add a config flag (default false) to hide the new limit cards (e.g.
segment, storage, bandwidth limits) from the UI. We need to investigate
some queries the egress card is using before enabling these everywhere.

Change-Id: I762e7d9e6a0a4315f1520e688b2bad32b100e5a0
This commit is contained in:
Moby von Briesen 2023-05-30 17:11:29 -04:00 committed by Vitalii
parent 037b07712d
commit 058dbd4cb7
6 changed files with 17 additions and 1 deletions

View File

@ -33,6 +33,7 @@ type FrontendConfig struct {
PathwayOverviewEnabled bool `json:"pathwayOverviewEnabled"` PathwayOverviewEnabled bool `json:"pathwayOverviewEnabled"`
Captcha console.CaptchaConfig `json:"captcha"` Captcha console.CaptchaConfig `json:"captcha"`
AllProjectsDashboard bool `json:"allProjectsDashboard"` AllProjectsDashboard bool `json:"allProjectsDashboard"`
LimitsAreaEnabled bool `json:"limitsAreaEnabled"`
DefaultPaidStorageLimit memory.Size `json:"defaultPaidStorageLimit"` DefaultPaidStorageLimit memory.Size `json:"defaultPaidStorageLimit"`
DefaultPaidBandwidthLimit memory.Size `json:"defaultPaidBandwidthLimit"` DefaultPaidBandwidthLimit memory.Size `json:"defaultPaidBandwidthLimit"`
InactivityTimerEnabled bool `json:"inactivityTimerEnabled"` InactivityTimerEnabled bool `json:"inactivityTimerEnabled"`

View File

@ -93,6 +93,7 @@ type Config struct {
PublicLinksharingURL string `help:"url link for linksharing requests for external sharing" default:"https://link.storjshare.io" devDefault:"http://localhost:8001"` PublicLinksharingURL string `help:"url link for linksharing requests for external sharing" default:"https://link.storjshare.io" devDefault:"http://localhost:8001"`
PathwayOverviewEnabled bool `help:"indicates if the overview onboarding step should render with pathways" default:"true"` PathwayOverviewEnabled bool `help:"indicates if the overview onboarding step should render with pathways" default:"true"`
AllProjectsDashboard bool `help:"indicates if all projects dashboard should be used" default:"false"` AllProjectsDashboard bool `help:"indicates if all projects dashboard should be used" default:"false"`
LimitsAreaEnabled bool `help:"indicates whether limit card section of the UI is enabled" default:"false"`
GeneratedAPIEnabled bool `help:"indicates if generated console api should be used" default:"false"` GeneratedAPIEnabled bool `help:"indicates if generated console api should be used" default:"false"`
OptionalSignupSuccessURL string `help:"optional url to external registration success page" default:""` OptionalSignupSuccessURL string `help:"optional url to external registration success page" default:""`
HomepageURL string `help:"url link to storj.io homepage" default:"https://www.storj.io"` HomepageURL string `help:"url link to storj.io homepage" default:"https://www.storj.io"`
@ -531,6 +532,7 @@ func (server *Server) frontendConfigHandler(w http.ResponseWriter, r *http.Reque
DefaultPaidBandwidthLimit: server.config.UsageLimits.Bandwidth.Paid, DefaultPaidBandwidthLimit: server.config.UsageLimits.Bandwidth.Paid,
Captcha: server.config.Captcha, Captcha: server.config.Captcha,
AllProjectsDashboard: server.config.AllProjectsDashboard, AllProjectsDashboard: server.config.AllProjectsDashboard,
LimitsAreaEnabled: server.config.LimitsAreaEnabled,
InactivityTimerEnabled: server.config.Session.InactivityTimerEnabled, InactivityTimerEnabled: server.config.Session.InactivityTimerEnabled,
InactivityTimerDuration: server.config.Session.InactivityTimerDuration, InactivityTimerDuration: server.config.Session.InactivityTimerDuration,
InactivityTimerViewerEnabled: server.config.Session.InactivityTimerViewerEnabled, InactivityTimerViewerEnabled: server.config.Session.InactivityTimerViewerEnabled,

View File

@ -274,6 +274,9 @@ compensation.withheld-percents: 75,75,75,50,50,50,25,25,25,0,0,0,0,0,0
# url link to let us know page # url link to let us know page
# console.let-us-know-url: https://storjlabs.atlassian.net/servicedesk/customer/portals # console.let-us-know-url: https://storjlabs.atlassian.net/servicedesk/customer/portals
# indicates whether limit card section of the UI is enabled
# console.limits-area-enabled: false
# url link for linksharing requests within the application # url link for linksharing requests within the application
# console.linksharing-url: https://link.storjsatelliteshare.io # console.linksharing-url: https://link.storjsatelliteshare.io

View File

@ -7,6 +7,7 @@ import { MemorySize, Time, UUID } from '@/types/common';
export class APIKeyInfo { export class APIKeyInfo {
id: UUID; id: UUID;
projectId: UUID; projectId: UUID;
projectPublicId: UUID;
userAgent: string; userAgent: string;
name: string; name: string;
createdAt: Time; createdAt: Time;

View File

@ -102,7 +102,7 @@
</template> </template>
</div> </div>
</div> </div>
<LimitsArea :is-loading="isDataFetching" /> <LimitsArea v-if="limitsAreaEnabled" :is-loading="isDataFetching" />
<div class="project-dashboard__info"> <div class="project-dashboard__info">
<InfoContainer <InfoContainer
:icon="BucketsIcon" :icon="BucketsIcon"
@ -246,6 +246,13 @@ const limits = computed((): ProjectLimits => {
return projectsStore.state.currentLimits; return projectsStore.state.currentLimits;
}); });
/**
* Returns the whether the limits area is enabled.
*/
const limitsAreaEnabled = computed((): boolean => {
return configStore.state.config.limitsAreaEnabled;
});
/** /**
* Returns status string based on account status. * Returns status string based on account status.
*/ */

View File

@ -26,9 +26,11 @@ export class FrontendConfig {
couponCodeSignupUIEnabled: boolean; couponCodeSignupUIEnabled: boolean;
fileBrowserFlowDisabled: boolean; fileBrowserFlowDisabled: boolean;
linksharingURL: string; linksharingURL: string;
publicLinksharingURL: string;
pathwayOverviewEnabled: boolean; pathwayOverviewEnabled: boolean;
captcha: CaptchaConfig; captcha: CaptchaConfig;
allProjectsDashboard: boolean; allProjectsDashboard: boolean;
limitsAreaEnabled: boolean;
defaultPaidStorageLimit: MemorySize; defaultPaidStorageLimit: MemorySize;
defaultPaidBandwidthLimit: MemorySize; defaultPaidBandwidthLimit: MemorySize;
inactivityTimerEnabled: boolean; inactivityTimerEnabled: boolean;