import { tagTextToIb } from "@ibgib/core-gib/dist/common/other/ibgib-helper.mjs"; import { ZERO_SPACE_ID } from "@ibgib/core-gib/dist/witness/space/space-constants.mjs"; import { IbGibAmbientContextConfig } from "@ibgib/web-gib/dist/app-bootstrap/types.mjs"; // --------------------------------------------------------------------------- // Logging / debug // --------------------------------------------------------------------------- export const GLOBAL_LOG_A_LOT = false; // --------------------------------------------------------------------------- // Storage — unique per app instance // --------------------------------------------------------------------------- export const SPACE_GIB_DB_NAME = 'space_gib_db'; export const SPACE_GIB_STORE_NAME = 'space_gib_store'; export const SPACE_GIB_API_KEY_NAME = 'space_gib_api_key'; export const SPACE_GIB_INDEXEDDB_KEY_LOCAL_SPACE_NAME = 'local_space_name'; /** * Prefix for the automatically generated local space name on first visit. * A random suffix is appended at runtime. */ export const SPACE_GIB_INDEXEDDB_LOCAL_SPACE_NAME_PREFIX = 'space_gib_'; // --------------------------------------------------------------------------- // App identity discriminator // --------------------------------------------------------------------------- export const HTML_META_APP_ID_NAME = "ibgib-app-id"; export const HTML_META_APP_ID_CONTENT = "0c45ac92e668410190b115512d5e2d51"; // --------------------------------------------------------------------------- // Agent / AI (optional) // --------------------------------------------------------------------------- export const GEMINI_API_KEY_REGEXP = /^[a-zA-Z0-9\-_]{32,64}$/; export const CONFIG_OPTION_GEMINI_API_KEY_LOCATION_HELP = `Gemini API Key config option (⚙️ icon)`; // --------------------------------------------------------------------------- // Tags // --------------------------------------------------------------------------- export const TAG_AGENT_TEXT = "agent"; export const TAG_AGENT_ICON = "body-outline"; export const TAG_AGENT_DESCRIPTION = "This tag tracks the active agents for the current local user space."; export const TAG_AGENT_IB = tagTextToIb(TAG_AGENT_TEXT); // --------------------------------------------------------------------------- // Colors // --------------------------------------------------------------------------- export const DEFAULT_IBGIB_COLOR = '#78f87e88'; export const DEFAULT_IBGIB_TRANSLUCENT = '#78f87e10'; export const DEFAULT_IBGIB_COLOR_CONTRAST = '#ffffff'; export const DEFAULT_TJP_COLOR = '#78f87e88'; export const DEFAULT_TJP_COLOR_TRANSLUCENT = '#78f87e10'; export const DEFAULT_TJP_COLOR_CONTRAST = '#ffffff'; // --------------------------------------------------------------------------- // Server API base URL (relative — same origin serves both API and SPA) // --------------------------------------------------------------------------- export const API_BASE_URL = '/api'; // --------------------------------------------------------------------------- // Ambient context config // --------------------------------------------------------------------------- export const APP_CONFIG: IbGibAmbientContextConfig = { dbName: SPACE_GIB_DB_NAME, storeName: SPACE_GIB_STORE_NAME, additionalStoreNames: [ZERO_SPACE_ID], apiKeyName: SPACE_GIB_API_KEY_NAME, };