|
|
- const checkConfigMap = {
- endpoint: checkEndpoint,
- region: /^[a-zA-Z0-9\-_]+$/
- };
-
- function checkEndpoint(endpoint) {
- if (typeof endpoint === 'string') {
- return /^[a-zA-Z0-9._:/-]+$/.test(endpoint);
- } else if (endpoint.host) {
- return /^[a-zA-Z0-9._:/-]+$/.test(endpoint.host);
- }
- return false;
- }
-
- export const checkConfigValid = (conf, key: 'endpoint' | 'region'): void => {
- if (checkConfigMap[key]) {
- let isConfigValid = true;
- if (checkConfigMap[key] instanceof Function) {
- isConfigValid = (checkConfigMap[key] as Function)(conf);
- } else {
- isConfigValid = (checkConfigMap[key] as RegExp).test(conf);
- }
- if (!isConfigValid) {
- throw new Error(`The ${key} must be conform to the specifications`);
- }
- }
- };
|