55 lines
2.2 KiB
JavaScript
55 lines
2.2 KiB
JavaScript
const HMBIZ_LOCATION_HOST = String(window.location.hostname || '').trim();
|
|
const HMBIZ_LOCATION_PORT = String(window.location.port || '').trim();
|
|
const HMBIZ_LOCATION_PROTOCOL = String(window.location.protocol || 'http:');
|
|
const HMBIZ_LOCATION_PATHNAME = String(window.location.pathname || '/');
|
|
|
|
const HMBIZ_IS_LOCAL_LIVE_SERVER = HMBIZ_LOCATION_PORT === '5500';
|
|
const HMBIZ_IS_HMAC_HOST = /\.hmac\.kr$/i.test(HMBIZ_LOCATION_HOST) || HMBIZ_LOCATION_HOST === 'hmac.kr';
|
|
const HMBIZ_IS_GITEA_HOST = /^gitea\.hmac\.kr$/i.test(HMBIZ_LOCATION_HOST);
|
|
const HMBIZ_IS_STATIC_HTML_VIEW = /\.html?$/i.test(HMBIZ_LOCATION_PATHNAME);
|
|
const HMBIZ_REMOTE_RAW_BASE = 'https://gitea.hmac.kr/tech-planning/hm-biz-process/raw/branch/feature/viewer-ui-cleanup';
|
|
|
|
function hmbizNormalizePath(path) {
|
|
const raw = String(path || '').trim();
|
|
if (!raw) return '/';
|
|
return raw.startsWith('/') ? raw : `/${raw}`;
|
|
}
|
|
|
|
function hmbizDirectoryPath(pathname) {
|
|
const normalized = hmbizNormalizePath(pathname);
|
|
const idx = normalized.lastIndexOf('/');
|
|
if (idx <= 0) return '/';
|
|
return normalized.slice(0, idx);
|
|
}
|
|
|
|
function hmbizJoinPath(baseDir, fileName) {
|
|
const dir = hmbizDirectoryPath(baseDir);
|
|
return `${dir}/${String(fileName || '').replace(/^\/+/, '')}`;
|
|
}
|
|
|
|
const HMBIZ_CURRENT_DIR = hmbizDirectoryPath(HMBIZ_LOCATION_PATHNAME);
|
|
|
|
const HMBIZ_API_BASE_URL = '/biz-process-viewer';
|
|
const HMBIZ_PROCESS_MAP_ROUTE = '/biz-process-viewer/process-map';
|
|
const HMBIZ_MAIN_APP_PATH = '/static/hm-biz-process/flow_260320.html';
|
|
const HMBIZ_DEFAULT_JSON_CANDIDATES = [];
|
|
|
|
window.HMBIZ_CONFIG = Object.freeze({
|
|
apiBaseUrl: HMBIZ_API_BASE_URL,
|
|
forceRemoteSync: true,
|
|
seedVersion: 'flow-data-2026-03-23',
|
|
defaultJsonCandidates: HMBIZ_DEFAULT_JSON_CANDIDATES,
|
|
processMapRoute: HMBIZ_PROCESS_MAP_ROUTE,
|
|
processMapPopupName: 'hm-process-map',
|
|
processMapBroadcastChannel: 'hm-biz-process-map',
|
|
processMapStorageSignalKey: 'hm-biz-process-map:refresh',
|
|
processMapNavigationStorageKey: 'hm-biz-process-map:navigate',
|
|
processMapFocusStorageKey: 'hm-biz-process-map:focus',
|
|
processMapPollIntervalMs: 60000,
|
|
apiFetchTimeoutMs: 4500,
|
|
mainAppPath: HMBIZ_MAIN_APP_PATH,
|
|
sitemapAutoLinkWidth: 132,
|
|
sitemapManualLinkWidth: 132,
|
|
sharedSegment: ['전표작성', '검토', '출금']
|
|
});
|