Skip to main content

Overview

The CometChat Angular UIKit provides a centralized configuration system through the COMETCHAT_GLOBAL_CONFIG injection token. This allows you to set default values for common properties across all UIKit components from a single location, without having to pass the same inputs to every component instance.

Priority System

All configurable properties follow a three-tier priority system:
  1. @Input value (if explicitly set on the component)
  2. GlobalConfig value (from the injection token)
  3. Component’s internal default value
This means you can set a global default and still override it on individual component instances when needed.

Setup

Standalone Application (app.config.ts)

NgModule Application (app.module.ts)

Dynamic Configuration with Factory

Configuration Properties

All properties are optional. When a property is undefined (not set), the component falls back to its own internal default.

Call Settings Customization

The callSettingsBuilder property lets you provide a custom CometChatCalls.CallSettingsBuilder that is used across all call-related components. This is useful for configuring call UI features like layout, recording, analytics, or audio-only mode globally.

Global Call Settings

Per-Component Override

Even with a global callSettingsBuilder, you can override it on individual component instances:

Components That Support callSettingsBuilder

Components That Read GlobalConfig

The following components read from COMETCHAT_GLOBAL_CONFIG and apply the three-tier priority system:

Full Example