mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-21 17:12:43 +00:00
refactor: remodel features in app config
This commit is contained in:
@@ -95,9 +95,9 @@ export interface SCAppConfiguration {
|
|||||||
campusPolygon: Polygon;
|
campusPolygon: Polygon;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A list of features to en- or disable
|
* Maps of enabled features (plugins and external services)
|
||||||
*/
|
*/
|
||||||
features: SCAppConfigurationFeature;
|
features: SCFeatureConfiguration;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A URL where images are available
|
* A URL where images are available
|
||||||
@@ -136,16 +136,6 @@ export interface SCAppConfiguration {
|
|||||||
url?: string;
|
url?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Map of features
|
|
||||||
*/
|
|
||||||
export interface SCAppConfigurationFeature {
|
|
||||||
/**
|
|
||||||
* Whether or not widgets are enabled
|
|
||||||
*/
|
|
||||||
widgets: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* URLs of published apps
|
* URLs of published apps
|
||||||
*/
|
*/
|
||||||
|
|||||||
48
src/config/feature.ts
Normal file
48
src/config/feature.ts
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2021 StApps
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the Free
|
||||||
|
* Software Foundation, version 3.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along with
|
||||||
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import {SCAuthorizationProviderType} from './authorization';
|
||||||
|
|
||||||
|
export interface SCFeatureConfiguration {
|
||||||
|
/**
|
||||||
|
* Map of extern services mapped by their name (statically)
|
||||||
|
*/
|
||||||
|
extern?: Map<string, SCFeatureConfigurationExtern>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Map of plugins registered with the backend mapped by their name.
|
||||||
|
*/
|
||||||
|
plugins?: Map<string, SCFeatureConfigurationPlugin>;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export interface SCFeatureConfigurationPlugin {
|
||||||
|
/**
|
||||||
|
* URL path registered with the backend
|
||||||
|
*/
|
||||||
|
urlPath: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface SCFeatureConfigurationExtern {
|
||||||
|
/**
|
||||||
|
* Key of authorization provider available in SCConfigFile
|
||||||
|
*/
|
||||||
|
authProvider?: SCAuthorizationProviderType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* URL of extern service
|
||||||
|
*/
|
||||||
|
url: string;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user