// 社内向け設定ファイル
export class CompanyConfig {
// 社内で許可するドメインリスト
static readonly ALLOWED_DOMAINS = [
'company.com',
'intranet.company.com',
'docs.company.com',
'wiki.company.com',
// 外部サイトも必要に応じて追加
'github.com',
'stackoverflow.com',
'developer.mozilla.org'
];
// 社内プロキシ設定(必要に応じて)
static readonly PROXY_URL = process.env.COMPANY_PROXY_URL;
// ログ設定
static readonly LOG_LEVEL = process.env.LOG_LEVEL || 'info';
// 同時処理制限
static readonly MAX_CONCURRENT_URLS = 5;
// 社内用デフォルト設定
static readonly DEFAULT_MAX_CHARS = 10000; // 社内用は多めに設定
static isAllowedDomain(url: string): boolean {
try {
const urlObj = new URL(url);
const domain = urlObj.hostname.toLowerCase();
return CompanyConfig.ALLOWED_DOMAINS.some(allowedDomain =>
domain === allowedDomain || domain.endsWith('.' + allowedDomain)
);
} catch {
return false;
}
}
}