@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
232 lines (231 loc) • 6.29 kB
TypeScript
declare class GirafeConfig {
general: {
locale: string;
logLevel: 'debug' | 'info' | 'warn' | 'error';
};
languages: {
translations: {
[key: string]: string[];
};
defaultLanguage: string;
};
interface: {
defaultSelectionComponent: string;
darkFrontendMode: boolean | undefined;
darkMapMode: boolean;
};
themes: {
url: string;
defaultTheme: string;
imagesUrlPrefix: string;
showErrorsOnStart: boolean;
selectionMode: 'add' | 'replace';
};
basemaps: {
show: boolean;
defaultBasemap: string;
OSM: boolean;
SwissTopoVectorTiles: boolean;
emptyBasemap: boolean;
};
treeview: {
hideLegendWhenLayerIsDeactivated: boolean;
defaultIconSize: {
width: number;
height: number;
};
};
search: {
url: string;
objectPreview?: boolean;
layerPreview?: boolean;
minResolution?: number;
defaultFillColor?: string;
defaultStrokeColor?: string;
defaultStrokeWidth?: number;
paintSearchResults?: boolean;
};
print: {
url: string;
formats?: string[];
defaultFormat?: string;
layouts?: string[];
defaultLayout?: string;
scales?: number[];
defaultScale?: number;
attributeNames?: string[];
printLegend?: {
useBbox?: boolean;
label?: Record<string, boolean | undefined>;
params?: Record<string, Record<string, unknown>>;
showGroupsTitle?: boolean;
};
customScale?: boolean;
};
selection: {
maxFeature: number;
defaultFillColor: string;
defaultStrokeColor: string;
defaultStrokeWidth: number;
highlightFillColor: string;
highlightStrokeColor: string;
};
drawing: {
defaultFillColor: string;
defaultStrokeColor: string;
defaultStrokeWidth: number;
defaultTextSize: number;
defaultFont: string;
defaultVertexRadius: number;
defaultVertexFillColor: string;
defaultVertexStrokeWidth: number;
};
share: {
service: 'lstu' | 'gmf' | null;
createUrl: string;
};
projections: {
[key: string]: string;
};
map: {
srid: string;
startZoom: string;
startPosition: string;
maxExtent?: string;
scales: number[];
constrainScales: boolean;
constrainRotation: boolean;
showScaleLine: boolean;
};
map3d?: {
terrainImagery: {
url: string;
srid: 4326 | 3857;
minLoD: number | undefined;
maxLoD: number | undefined;
coverageArea: number[] | undefined;
};
tilesetsMaxError: number | undefined;
terrainUrl: string;
tilesetsUrls: string[];
maximumZoomDistance: number;
};
lidar: {
url: string;
};
contextmenu: {
crs: {
code: string;
translation: string;
format: 'decimal' | 'dms';
precision: number;
}[];
sources: {
id: string;
translation: string;
prefix: string;
suffix: string;
precision: number;
crs: string;
url: string;
}[];
};
crs: {
code: string;
definition: string;
}[];
csv: {
encoding: string;
extension: string;
includeHeader: boolean;
quote: string;
separator: string;
};
metadata: {
metadataUrlPrefix: string;
};
infoWindow: {
defaultWindowWidth: string;
defaultWindowHeight: string;
defaultWindowPositionTop: string;
defaultWindowPositionLeft: string;
};
offline?: {
downloadStartZoom: number;
downloadEndZoom: number;
};
query: {
legacy: boolean;
};
gmfauth?: {
url: string;
loginRequired: boolean;
checkSessionOnLoad: boolean;
audience: string[];
authMode: 'cookie';
refererPolicy: ReferrerPolicy;
audienceExcludedPaths: string[];
};
oauth?: {
issuer: {
url: string;
algorithm: 'oauth2' | 'oidc';
codeChallengeMethod: string;
clientId: string;
scope: string;
loginRequired: boolean;
checkSessionOnLoad: boolean;
audience: string[];
audienceExcludedPaths: string[];
};
geomapfish: {
userInfoUrl: string;
loginUrl: string;
logoutUrl: string;
anonymousUsername: string;
authMode: 'token' | 'cookie';
refererPolicy: ReferrerPolicy;
};
};
userdata: {
source: 'localStorage' | 'server';
getUrl: string | undefined;
postUrl: string | undefined;
};
extendedConfig?: Record<string, object>;
static readonly DEFAULT_LOCALE = "en-US";
/**
* Creates the configuration of the app validating the json passed or giving default values.
*
* Every property of config that is not complying with GirafeConfig type is ignored.
* @param config the configuration
*/
constructor(config: GirafeConfig);
private initConfigProjections;
private initConfigMap3D;
private initConfigMap;
private initConfigQuery;
private initConfigDrawing;
private initConfigShare;
private initConfigSelection;
private initConfigPrint;
private initConfigSearch;
private initConfigTreeview;
private initConfigBasemaps;
private initConfigLidar;
private initConfigCsv;
private initConfigMetadata;
private initConfigInfoWindow;
private initConfigOffline;
private initConfigThemes;
private initConfigLanguages;
private initConfigInterface;
private initConfigGeneral;
private initGmfOauth;
private initConfigOauth;
private initUserData;
private initContextMenu;
private initCRS;
private initExtendedConfig;
}
export default GirafeConfig;