SYMBOL INDEX (390 symbols across 63 files) FILE: auto-imports.d.ts type GlobalComponents (line 338) | interface GlobalComponents {} type ComponentCustomProperties (line 339) | interface ComponentCustomProperties { FILE: components.d.ts type GlobalComponents (line 10) | interface GlobalComponents { FILE: env.d.ts type RouteMeta (line 4) | interface RouteMeta { FILE: examples/plugin-component/vite.config.js method Root (line 62) | Root(root) { FILE: src/@core/libs/apex-chart/apexCharConfig.ts function colorVariables (line 5) | function colorVariables(themeColors: ThemeInstance['themes']['value']['c... function getScatterChartConfig (line 14) | function getScatterChartConfig(themeColors: ThemeInstance['themes']['val... function getLineChartSimpleConfig (line 70) | function getLineChartSimpleConfig(themeColors: ThemeInstance['themes']['... function getBarChartConfig (line 140) | function getBarChartConfig(themeColors: ThemeInstance['themes']['value']... function getCandlestickChartConfig (line 183) | function getCandlestickChartConfig(themeColors: ThemeInstance['themes'][... function getRadialBarChartConfig (line 234) | function getRadialBarChartConfig(themeColors: ThemeInstance['themes']['v... function getDonutChartConfig (line 310) | function getDonutChartConfig(themeColors: ThemeInstance['themes']['value... function getAreaChartSplineConfig (line 404) | function getAreaChartSplineConfig(themeColors: ThemeInstance['themes']['... function getColumnChartConfig (line 485) | function getColumnChartConfig(themeColors: ThemeInstance['themes']['valu... function getHeatMapChartConfig (line 571) | function getHeatMapChartConfig(themeColors: ThemeInstance['themes']['val... function getRadarChartConfig (line 630) | function getRadarChartConfig(themeColors: ThemeInstance['themes']['value... FILE: src/@core/utils/dom.ts function removeEl (line 1) | function removeEl(selector: string) { function useDefer (line 8) | function useDefer(maxFrameCount = 1) { function ensureRenderComplete (line 22) | function ensureRenderComplete(callback: () => void) { FILE: src/@core/utils/formatters.ts function avatarText (line 10) | function avatarText(value: string) { function kFormatter (line 18) | function kFormatter(num: number) { function formatDownloadCount (line 27) | function formatDownloadCount(num: number): string { function formatDate (line 40) | function formatDate( function formatDateToMonthShort (line 55) | function formatDateToMonthShort(value: string, toTimeForCurrentDay = tru... function formatFileSize (line 70) | function formatFileSize(bytes: number, decimals = 2, prefix = false) { function formatSeconds (line 92) | function formatSeconds(seconds: number) { function parseDate (line 109) | function parseDate(dateString: string): Date | null { function formatBytes (line 117) | function formatBytes(bytes: number, decimals = 2) { function formatEp (line 130) | function formatEp(nums: number[]): string { function formatDateDifference (line 159) | function formatDateDifference(dateString: string): string { function formatRating (line 165) | function formatRating(rating: number): string { FILE: src/@core/utils/image.ts function rgbStringToHex (line 4) | function rgbStringToHex(rgbArray: number[]): string { function getDominantColor (line 18) | async function getDominantColor(image: HTMLImageElement): Promise { function preloadImage (line 25) | async function preloadImage(url: string): Promise { FILE: src/@core/utils/index.ts function isEmpty (line 2) | function isEmpty(value: unknown): boolean { function isNullOrUndefined (line 9) | function isNullOrUndefined(value: unknown): value is undefined | null { function isEmptyArray (line 14) | function isEmptyArray(arr: unknown): boolean { function isObject (line 19) | function isObject(obj: unknown): obj is Record { function isToday (line 23) | function isToday(date: Date) { function isContained (line 36) | function isContained(subArray: any[], mainArray: any[]): boolean { function isIntersected (line 41) | function isIntersected(array1: any[], array2: any[]): boolean { function isNullOrEmptyObject (line 45) | function isNullOrEmptyObject(obj: any): boolean { function checkPrefersColorSchemeIsDark (line 54) | function checkPrefersColorSchemeIsDark(): boolean { function getQueryValue (line 63) | function getQueryValue(key: string, url = window.location.href): string { FILE: src/@core/utils/navigator.ts function getClipboardContent (line 4) | async function getClipboardContent() { function copyToClipboard (line 19) | async function copyToClipboard(content: string) { function urlBase64ToUint8Array (line 25) | function urlBase64ToUint8Array(base64String: string) { function bufferToBase64Url (line 39) | function bufferToBase64Url(buffer: ArrayBuffer): string { function base64UrlToUint8Array (line 47) | function base64UrlToUint8Array(base64Url: string): Uint8Array { FILE: src/@core/utils/theme.ts function saveLocalTheme (line 1) | function saveLocalTheme(name: string, theme: any) { FILE: src/@core/utils/workflow.ts function getId (line 8) | function getId() { function useDragAndDrop (line 26) | function useDragAndDrop() { FILE: src/@iconify/build-icons.ts type BundleScriptCustomSVGConfig (line 38) | interface BundleScriptCustomSVGConfig { type BundleScriptCustomJSONConfig (line 50) | interface BundleScriptCustomJSONConfig { type BundleScriptConfig (line 59) | interface BundleScriptConfig { function removeMetaData (line 286) | function removeMetaData(iconSet: IconifyJSON) { function organizeIconsList (line 304) | function organizeIconsList(icons: string[]): Record { FILE: src/@layouts/types.d.ts type UserConfig (line 5) | interface UserConfig { type Config (line 45) | interface Config { type AclProperties (line 81) | interface AclProperties { type NavSectionTitle (line 87) | interface NavSectionTitle extends Partial { type ATagTargetAttrValues (line 92) | type ATagTargetAttrValues = '_blank' | '_self' | '_parent' | '_top' | 'f... type ATagRelAttrValues (line 93) | type ATagRelAttrValues = type NavLinkProps (line 108) | interface NavLinkProps { type NavLink (line 115) | interface NavLink extends NavLinkProps, Partial { type NavMenu (line 124) | interface NavMenu extends NavLink { type NavGroup (line 132) | interface NavGroup extends Partial { type VerticalNavItems (line 141) | type VerticalNavItems = (NavLink | NavGroup | NavSectionTitle)[] type HorizontalNavItems (line 142) | type HorizontalNavItems = (NavLink | NavGroup)[] type I18nLanguage (line 146) | interface I18nLanguage { type Notification (line 153) | type Notification = { type ThemeSwitcherTheme (line 166) | interface ThemeSwitcherTheme { FILE: src/@layouts/utils.ts function hexToRgb (line 27) | function hexToRgb(hex: string) { FILE: src/@validators/index.ts type ValidationRule (line 1) | type ValidationRule = (value: any) => string | boolean FILE: src/ace-config.ts function registerJinja2Mode (line 51) | function registerJinja2Mode() { FILE: src/api/index.ts type Window (line 14) | interface Window { FILE: src/api/nprogress.ts function configureNProgress (line 4) | function configureNProgress() { function startNProgress (line 10) | function startNProgress() { function doneNProgress (line 14) | function doneNProgress() { FILE: src/api/types.ts type Subscribe (line 2) | interface Subscribe { type SubscribeShare (line 86) | interface SubscribeShare { type WorkflowShare (line 148) | interface WorkflowShare { type TransferHistory (line 184) | interface TransferHistory { type MediaInfo (line 232) | interface MediaInfo { type MediaSeason (line 338) | interface MediaSeason { type TmdbSeason (line 356) | interface TmdbSeason { type MediaRelease (line 374) | interface MediaRelease { type TmdbEpisode (line 386) | interface TmdbEpisode { type Person (line 410) | interface Person { type Site (line 467) | interface Site { type SiteStatistic (line 513) | interface SiteStatistic { type SiteUserData (line 531) | interface SiteUserData { type DownloadingInfo (line 573) | interface DownloadingInfo { type NotExistMediaInfo (line 605) | interface NotExistMediaInfo { type Plugin (line 617) | interface Plugin { type PluginSidebarNavItem (line 660) | interface PluginSidebarNavItem { type RenderProps (line 671) | interface RenderProps { type DashboardItem (line 682) | interface DashboardItem { type TorrentInfo (line 700) | interface TorrentInfo { type MetaInfo (line 758) | interface MetaInfo { type Context (line 840) | interface Context { type User (line 850) | interface User { type PassKey (line 876) | interface PassKey { type Storage (line 886) | interface Storage { type MediaStatistic (line 894) | interface MediaStatistic { type Process (line 906) | interface Process { type DownloaderInfo (line 924) | interface DownloaderInfo { type ScheduleInfo (line 938) | interface ScheduleInfo { type NotificationSwitch (line 952) | interface NotificationSwitch { type EndPoints (line 965) | interface EndPoints { type FileItem (line 981) | interface FileItem { type MediaServerPlayItem (line 1013) | interface MediaServerPlayItem { type MediaServerLibrary (line 1035) | interface MediaServerLibrary { type Message (line 1059) | interface Message { type SystemNotification (line 1083) | interface SystemNotification { type DownloaderConf (line 1097) | interface DownloaderConf { type NotificationConf (line 1113) | interface NotificationConf { type NotificationSwitchConf (line 1127) | interface NotificationSwitchConf { type StorageConf (line 1135) | interface StorageConf { type MediaServerConf (line 1145) | interface MediaServerConf { type TransferDirectoryConf (line 1159) | interface TransferDirectoryConf { type CustomRule (line 1201) | interface CustomRule { type FilterRuleGroup (line 1219) | interface FilterRuleGroup { type SubscribeDownloadFileInfo (line 1231) | interface SubscribeDownloadFileInfo { type SubscribeLibraryFileInfo (line 1245) | interface SubscribeLibraryFileInfo { type SubscribeEpisodeInfo (line 1253) | interface SubscribeEpisodeInfo { type SubscrbieInfo (line 1267) | interface SubscrbieInfo { type TransferForm (line 1275) | interface TransferForm { type TransferQueue (line 1317) | interface TransferQueue { type DiscoverSource (line 1334) | interface DiscoverSource { type RecommendSource (line 1350) | interface RecommendSource { type SiteCategory (line 1360) | interface SiteCategory { type Workflow (line 1367) | interface Workflow { type TorrentCacheItem (line 1399) | interface TorrentCacheItem { type TorrentCacheData (line 1435) | interface TorrentCacheData { type SubscribeShareStatistics (line 1445) | interface SubscribeShareStatistics { type ApiResponse (line 1455) | interface ApiResponse { type CategoryRule (line 1462) | interface CategoryRule { type CategoryConfig (line 1471) | interface CategoryConfig { FILE: src/composables/useAvailableHeight.ts function useAvailableHeight (line 15) | function useAvailableHeight( FILE: src/composables/useBackgroundOptimization.ts function useBackgroundOptimization (line 9) | function useBackgroundOptimization() { FILE: src/composables/useCacheManager.ts type CacheInfo (line 1) | interface CacheInfo { function useCacheManager (line 7) | function useCacheManager() { FILE: src/composables/useConfirm.ts type ConfirmOptions (line 8) | interface ConfirmOptions { function createConfirmDialog (line 20) | async function createConfirmDialog(options: ConfirmOptions = {}) { function useConfirm (line 79) | function useConfirm() { FILE: src/composables/useDynamicButton.ts type Window (line 18) | interface Window { type MaybeRefValue (line 24) | type MaybeRefValue = T | Ref | ComputedRef type DynamicButtonMenuItem (line 26) | interface DynamicButtonMenuItem { function resolveMaybeRef (line 37) | function resolveMaybeRef(value: MaybeRefValue | undefined, fallbac... function useDynamicButton (line 56) | function useDynamicButton(options: { FILE: src/composables/useDynamicHeaderTab.ts type DynamicHeaderTabButton (line 5) | interface DynamicHeaderTabButton { type DynamicHeaderTabItem (line 16) | interface DynamicHeaderTabItem { type DynamicHeaderTabConfig (line 22) | interface DynamicHeaderTabConfig { function useDynamicHeaderTab (line 30) | function useDynamicHeaderTab() { FILE: src/composables/useInfiniteScroll.ts type InfiniteScrollStatus (line 3) | type InfiniteScrollStatus = 'ok' | 'empty' | 'loading' | 'error' function useInfiniteScroll (line 11) | function useInfiniteScroll( FILE: src/composables/useOfflineStatus.ts constant MAX_CONSECUTIVE_ERRORS (line 8) | const MAX_CONSECUTIVE_ERRORS = 3 function useGlobalOfflineStatus (line 11) | function useGlobalOfflineStatus() { function useOfflineStatus (line 70) | function useOfflineStatus(initialMessage?: string) { FILE: src/composables/usePWA.ts type UIMode (line 16) | type UIMode = 'auto' | 'desktop' | 'app' function setUIMode (line 20) | function setUIMode(mode: UIMode) { function initializePWAGlobally (line 26) | async function initializePWAGlobally() { function usePWA (line 54) | function usePWA() { FILE: src/composables/usePWAInstall.ts type BeforeInstallPromptEvent (line 1) | interface BeforeInstallPromptEvent extends Event { type WindowEventMap (line 11) | interface WindowEventMap { function usePWAInstall (line 16) | function usePWAInstall() { FILE: src/composables/usePullDownGesture.ts type PullDownConfig (line 6) | interface PullDownConfig { type PullDownOptions (line 17) | interface PullDownOptions { constant DEFAULT_CONFIG (line 28) | const DEFAULT_CONFIG: PullDownConfig = { function usePullDownGesture (line 38) | function usePullDownGesture(options: PullDownOptions = {}) { FILE: src/composables/useRecentPlugins.ts constant RECENT_PLUGINS_KEY (line 3) | const RECENT_PLUGINS_KEY = 'moviepilot_recent_plugins' constant MAX_RECENT_PLUGINS (line 4) | const MAX_RECENT_PLUGINS = 3 type RecentPlugin (line 6) | interface RecentPlugin { function pluginToRecentPlugin (line 17) | function pluginToRecentPlugin(plugin: Plugin): RecentPlugin { function recentPluginToPlugin (line 30) | function recentPluginToPlugin(recentPlugin: RecentPlugin): Plugin { function useRecentPlugins (line 41) | function useRecentPlugins() { FILE: src/composables/useSetupWizard.ts type WizardData (line 9) | interface WizardData { type ConnectivityTestState (line 85) | interface ConnectivityTestState { type ValidationErrorState (line 93) | interface ValidationErrorState { function normalizeThinkingLevelValue (line 125) | function normalizeThinkingLevelValue(value?: unknown) { function resolveThinkingLevelValue (line 142) | function resolveThinkingLevelValue(data?: Record) { function useSetupWizard (line 285) | function useSetupWizard() { FILE: src/composables/useStateRestore.ts function useTabStateRestore (line 18) | function useTabStateRestore(defaultTab?: string) { function useRouteStateRestore (line 74) | function useRouteStateRestore() { function useStateRestore (line 133) | function useStateRestore() { function usePageStateRestore (line 169) | function usePageStateRestore(defaultTab?: string) { FILE: src/composables/useTorrentFilter.ts type SearchTorrent (line 6) | interface SearchTorrent extends Context { type GroupedItem (line 10) | interface GroupedItem { type FilterState (line 16) | interface FilterState { function useTorrentFilter (line 24) | function useTorrentFilter() { FILE: src/composables/useVersionChecker.ts function useVersionChecker (line 67) | function useVersionChecker() { FILE: src/plugins/i18n.ts function getBrowserLocale (line 27) | function getBrowserLocale(): SupportedLocale | null { function setI18nLanguage (line 48) | async function setI18nLanguage(locale: SupportedLocale) { function getCurrentLocale (line 62) | function getCurrentLocale(): SupportedLocale { FILE: src/plugins/stateRestore.ts class RouteStateManager (line 12) | class RouteStateManager { method saveCurrentRoute (line 16) | saveCurrentRoute() { method restoreRoute (line 27) | restoreRoute() { method clearRoute (line 46) | clearRoute() { method init (line 51) | init() { class TabStateManager (line 73) | class TabStateManager { method saveTabState (line 77) | saveTabState(routePath: string, activeTab: string) { method getTabState (line 91) | getTabState(routePath: string): string | null { method getAllTabStates (line 112) | private getAllTabStates(): Record { method clearTabState (line 122) | clearTabState(routePath?: string) { class StateRestore (line 137) | class StateRestore { method init (line 142) | init() { method setupAutoRestore (line 148) | private setupAutoRestore() { method checkAndRestoreRoute (line 169) | private checkAndRestoreRoute() { method clearAllStates (line 190) | clearAllStates() { method install (line 203) | install(app: App) { FILE: src/router/i18n-menu.ts function getNavMenus (line 5) | function getNavMenus(t: Composer['t']) { function getSettingTabs (line 150) | function getSettingTabs(t: Composer['t']) { function getSubscribeMovieTabs (line 198) | function getSubscribeMovieTabs(t: Composer['t']) { function getSubscribeTvTabs (line 214) | function getSubscribeTvTabs(t: Composer['t']) { function getPluginTabs (line 235) | function getPluginTabs(t: Composer['t']) { function getDiscoverTabs (line 251) | function getDiscoverTabs(t: Composer['t']) { function getWorkflowTabs (line 272) | function getWorkflowTabs(t: Composer['t']) { type PluginSidebarSection (line 288) | type PluginSidebarSection = 'start' | 'discovery' | 'subscribe' | 'organ... function pluginSidebarSectionToHeaderKey (line 293) | function pluginSidebarSectionToHeaderKey(section: string, t: Composer['t... FILE: src/router/index.ts method scrollBehavior (line 12) | scrollBehavior(to: any, from: any, savedPosition: any) { FILE: src/service-worker.ts constant RESOURCE_VERSION (line 14) | const RESOURCE_VERSION = 'V2' constant CACHE_VERSION (line 26) | const CACHE_VERSION = `${appVersion}-${buildTime}` constant UNREAD_COUNT_KEY (line 63) | const UNREAD_COUNT_KEY = 'mp_unread_count' function cleanupRuntimeCaches (line 183) | async function cleanupRuntimeCaches(onlyOld: boolean = false) { function openDB (line 219) | async function openDB(): Promise { function get (line 233) | async function get(key: string, storeName: string = 'badge'): Promise { function setStoredUnreadCount (line 277) | async function setStoredUnreadCount(count: number): Promise { function updateBadge (line 281) | async function updateBadge(count: number) { function clearBadge (line 295) | async function clearBadge() { function monitorCacheSize (line 307) | async function monitorCacheSize() { FILE: src/stores/auth.ts method setToken (line 16) | setToken(token: string | null) { method clearToken (line 19) | clearToken() { method setRemember (line 22) | setRemember(remember: boolean) { method setOriginalPath (line 25) | setOriginalPath(originalPath: string | null) { method login (line 28) | login(payload: authState) { method logout (line 32) | logout() { FILE: src/stores/global.ts method initialize (line 15) | async initialize() { method loadUserSettings (line 45) | async loadUserSettings() { method setData (line 57) | setData(data: { [key: string]: any }) { method get (line 62) | get(key: string) { method reset (line 66) | reset() { FILE: src/stores/pluginSidebarNav.ts method ensureSidebarNav (line 22) | async ensureSidebarNav(force = false): Promise { method reset (line 43) | reset() { FILE: src/stores/types.ts type authState (line 1) | interface authState { type userState (line 10) | interface userState { type globalSettingsState (line 27) | interface globalSettingsState { FILE: src/stores/user.ts method setSuperUser (line 20) | setSuperUser(superUser: boolean) { method setUserID (line 23) | setUserID(userID: number) { method setUserName (line 26) | setUserName(userName: string) { method setAvatar (line 29) | setAvatar(avatar: string) { method setLevel (line 32) | setLevel(level: number) { method setPermissions (line 35) | setPermissions(permissions: object) { method setWizard (line 38) | setWizard(wizard: boolean) { method loginUser (line 41) | loginUser(payload: userState) { method reset (line 50) | reset() { FILE: src/types/global.d.ts type Navigator (line 6) | interface Navigator { FILE: src/types/i18n.ts type LocaleInfo (line 1) | interface LocaleInfo { constant SUPPORTED_LOCALES (line 7) | const SUPPORTED_LOCALES: Record = { type SupportedLocale (line 25) | type SupportedLocale = keyof typeof SUPPORTED_LOCALES FILE: src/types/service-worker-sync.d.ts type SyncManager (line 7) | interface SyncManager { type ServiceWorkerRegistration (line 17) | interface ServiceWorkerRegistration { type SyncEvent (line 27) | interface SyncEvent extends ExtendableEvent { type ServiceWorkerGlobalScopeEventMap (line 35) | interface ServiceWorkerGlobalScopeEventMap { FILE: src/types/workbox-precaching.d.ts type ManifestEntry (line 8) | interface ManifestEntry { FILE: src/utils/appDeepLink.ts type AppType (line 15) | type AppType = 'plex' | 'jellyfin' | 'emby' | 'trimemedia' | 'douban' type DeepLinkConfig (line 18) | interface DeepLinkConfig { constant DEEP_LINK_CONFIGS (line 25) | const DEEP_LINK_CONFIGS: Record = { type DoubanAppParams (line 54) | interface DoubanAppParams { function openApp (line 67) | async function openApp(appType: AppType, params: string | DoubanAppParam... function getWebUrl (line 108) | function getWebUrl(appType: AppType, params: string | DoubanAppParams, f... function buildDeepLinkUrl (line 127) | function buildDeepLinkUrl(appType: AppType, params: string | DoubanAppPa... function buildPlexDeepLink (line 163) | function buildPlexDeepLink(playUrl: string): string { function buildJellyfinDeepLink (line 301) | function buildJellyfinDeepLink(playUrl: string): string { function buildEmbyDeepLink (line 397) | function buildEmbyDeepLink(playUrl: string): string { function buildTrimemediaDeepLink (line 507) | function buildTrimemediaDeepLink(playUrl: string): string { function buildDoubanDeepLink (line 560) | function buildDoubanDeepLink(params: DoubanAppParams): string { function attemptAppLaunch (line 582) | async function attemptAppLaunch(appUrl: string, timeout: number): Promis... function openMediaServerWithAutoDetect (line 627) | async function openMediaServerWithAutoDetect( function openDoubanApp (line 671) | async function openDoubanApp( function getAppDownloadUrl (line 693) | function getAppDownloadUrl(appType: AppType): string { function checkAppInstalled (line 715) | function checkAppInstalled(appType: AppType): boolean { FILE: src/utils/backgroundManager.ts class BackgroundManager (line 5) | class BackgroundManager { method constructor (line 19) | constructor() { method setupVisibilityListener (line 24) | private setupVisibilityListener() { method setupActivityTracking (line 44) | private setupActivityTracking() { method addTimer (line 69) | addTimer( method removeTimer (line 117) | removeTimer(id: string) { method pauseAllTimers (line 131) | private pauseAllTimers() { method resumeAllTimers (line 144) | private resumeAllTimers() { method getTimerStatus (line 168) | getTimerStatus(id: string): 'running' | 'paused' | 'not-found' { method getTimersInfo (line 177) | getTimersInfo(): Array<{ method isUserActive (line 196) | isUserActive(maxInactiveTime = 5 * 60 * 1000): boolean { method getLastActivityTime (line 203) | getLastActivityTime(): number { method getStatus (line 210) | getStatus(): { method destroy (line 229) | destroy() { function addBackgroundTimer (line 258) | function addBackgroundTimer( function removeBackgroundTimer (line 270) | function removeBackgroundTimer(id: string) { function getBackgroundTimerStatus (line 274) | function getBackgroundTimerStatus(id: string) { FILE: src/utils/badge.ts type UnreadMessageEvent (line 6) | interface UnreadMessageEvent extends CustomEvent { function emitUnreadMessageEvent (line 11) | function emitUnreadMessageEvent(count: number) { function onUnreadMessage (line 17) | function onUnreadMessage(callback: (count: number) => void) { function waitForServiceWorker (line 27) | async function waitForServiceWorker(): Promise { function checkUnreadOnStartup (line 72) | async function checkUnreadOnStartup(): Promise { function checkAndEmitUnreadMessages (line 88) | async function checkAndEmitUnreadMessages() { function clearAppBadge (line 100) | async function clearAppBadge(): Promise { function updateAppBadge (line 128) | async function updateAppBadge(count: number): Promise { function getUnreadCount (line 160) | async function getUnreadCount(): Promise { function supportsBadgeAPI (line 182) | function supportsBadgeAPI(): boolean { FILE: src/utils/colorUtils.ts constant COLORS (line 2) | const COLORS = [ function generateRandomColor (line 88) | function generateRandomColor(): string { function getItemColor (line 97) | function getItemColor(itemKey: string): string { function initializeItemColors (line 109) | function initializeItemColors(items: T[], keyExtractor: (item: T) => ... function clearColorCache (line 119) | function clearColorCache(): void { function getAllColors (line 127) | function getAllColors(): string[] { function getColorCount (line 135) | function getColorCount(): number { FILE: src/utils/federationLoader.ts type RemoteModule (line 13) | interface RemoteModule { function fetchSingleRemoteModule (line 22) | async function fetchSingleRemoteModule(id: string): Promise { function injectRemoteModule (line 134) | function injectRemoteModule(module: RemoteModule): void { function loadRemoteComponents (line 158) | async function loadRemoteComponents(): Promise { FILE: src/utils/globalSetting.ts function fetchGlobalSettings (line 6) | async function fetchGlobalSettings() { FILE: src/utils/imageUtils.ts function getLogoUrl (line 73) | function getLogoUrl(logoName: string): string { function getAvailableLogos (line 81) | function getAvailableLogos(): string[] { function hasLogo (line 90) | function hasLogo(logoName: string): boolean { FILE: src/utils/loadingStateManager.ts class PWALoadingStateManager (line 5) | class PWALoadingStateManager { method setLoadingState (line 14) | setLoadingState(key: string, loading: boolean): void { method isAnyLoading (line 28) | isAnyLoading(): boolean { method waitForAllComplete (line 35) | waitForAllComplete(): Promise { method addListener (line 58) | addListener(listener: (isLoading: boolean) => void): void { method removeListener (line 66) | removeListener(listener: (isLoading: boolean) => void): void { method notifyListeners (line 74) | private notifyListeners(isLoading: boolean): void { method getLoadingStates (line 87) | getLoadingStates(): Record { method reset (line 94) | reset(): void { FILE: src/utils/permission.ts type UserPermissions (line 2) | interface UserPermissions { constant DEFAULT_PERMISSIONS (line 10) | const DEFAULT_PERMISSIONS: UserPermissions = { constant ADMIN_PERMISSIONS (line 18) | const ADMIN_PERMISSIONS: UserPermissions = { function hasPermission (line 26) | function hasPermission(userPermissions: any, permission: keyof UserPermi... function hasAnyPermission (line 38) | function hasAnyPermission(userPermissions: any, permissionList: (keyof U... function hasAllPermissions (line 43) | function hasAllPermissions(userPermissions: any, permissionList: (keyof ... function filterMenusByPermission (line 48) | function filterMenusByPermission(menus: any[], userPermissions: any): an... FILE: src/utils/pluginSidebarNav.ts type PluginNavMenuEntry (line 7) | type PluginNavMenuEntry = { function navMenuFromPluginSidebarItem (line 15) | function navMenuFromPluginSidebarItem( function filterPluginSidebarNavEntries (line 39) | function filterPluginSidebarNavEntries( FILE: src/utils/requestOptimizer.ts function setNavigatingState (line 8) | function setNavigatingState(navigating: boolean) { function abortAllActiveRequests (line 19) | function abortAllActiveRequests() { function cleanupController (line 29) | function cleanupController(controller: AbortController) { function initializeRequestOptimizer (line 34) | function initializeRequestOptimizer(axiosInstance: any) { function getActiveRequestsCount (line 91) | function getActiveRequestsCount() { function abortAllRequests (line 96) | function abortAllRequests() { FILE: src/utils/sseManager.ts class SSEManager (line 5) | class SSEManager { method constructor (line 20) | constructor(url: string, options: Partial void) { method removeMessageListener (line 162) | removeMessageListener(id: string) { method close (line 174) | close() { method readyState (line 198) | get readyState(): number { method connectionUrl (line 205) | get connectionUrl(): string { method forceReconnect (line 212) | forceReconnect() { method hasActiveListeners (line 222) | get hasActiveListeners(): boolean { method currentReconnectAttempts (line 229) | get currentReconnectAttempts(): number { method hasReachedMaxAttempts (line 236) | get hasReachedMaxAttempts(): boolean { class SSEManagerSingleton (line 244) | class SSEManagerSingleton { method getManager (line 253) | getManager(url: string, options?: ConstructorParameters { method loadThemeCSS (line 73) | private async loadThemeCSS(themeName: string, cssPath: string): Promis... method applyTheme (line 117) | private applyTheme(themeName: string): void { method unloadTheme (line 135) | unloadTheme(themeName: string): void { method unloadOtherThemes (line 157) | unloadOtherThemes(): void { method getAvailableThemes (line 168) | getAvailableThemes(): string[] { method isThemeLoaded (line 175) | isThemeLoaded(themeName: string): boolean { method dispatchThemeChangeEvent (line 182) | private dispatchThemeChangeEvent(themeName: string): void { method onThemeChange (line 192) | onThemeChange(callback: (theme: string) => void): void { method offThemeChange (line 201) | offThemeChange(callback: (theme: string) => void): void {