UNPKG

@needle-tools/engine

Version:

Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.

52 lines (45 loc) 1.99 kB
import { isLocalNetwork } from "../engine_networking_utils.js"; import { getParam } from "../engine_utils.js"; import { addLog, clearMessages, LogType, setAllowBalloonMessages, setAllowOverlayMessages } from "./debug_overlay.js"; export { clearMessages as clearBalloonMessages, /** @deprecated use clearBalloonMessages instead */ clearMessages as clearOverlayMessages, LogType, setAllowBalloonMessages, // eslint-disable-next-line deprecation/deprecation setAllowOverlayMessages, }; export { enableSpatialConsole } from "./debug_spatial_console.js"; const noDevLogs = getParam("nodevlogs"); /** Displays a debug message on screen for a certain amount of time */ export function showBalloonMessage(text: string, logType: LogType = LogType.Log): void { addLog(logType, text); } /** Displays a warning message on screen for a certain amount of time */ export function showBalloonWarning(text: string): void { showBalloonMessage(text, LogType.Warn); } /** Displays an error message on screen for a certain amount of time */ export function showBalloonError(text: string): void { showBalloonMessage(text, LogType.Error); } let _manuallySetDevEnvironment: boolean | undefined; let _cachedDevEnvironment: boolean | undefined; /** True when the application runs on a local url */ export function isDevEnvironment(): boolean { if (noDevLogs) return false; if (_manuallySetDevEnvironment !== undefined) return _manuallySetDevEnvironment; if (_cachedDevEnvironment !== undefined) return _cachedDevEnvironment; let res = isLocalNetwork(); if (!res) { // is stackblitz? res = window.location.hostname.endsWith(".local-credentialless.webcontainer.io"); } _cachedDevEnvironment = res; return res; } /** Enforce the dev environment flag to be true or false */ export function setDevEnvironment(val: boolean): void { _manuallySetDevEnvironment = val; }