@cometchat/skills 4.4.2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +55 -0
- package/.claude-plugin/plugin.json +14 -0
- package/CHANGELOG.md +36 -0
- package/LICENSE +21 -0
- package/README.md +41 -163
- package/RULES.md +114 -0
- package/bin/cometchat-skills.mjs +1180 -0
- package/bin/legacy-skills.json +95 -0
- package/catalogs/android-v6.json +1646 -0
- package/catalogs/flutter-v6.json +651 -0
- package/catalogs/ios-v5.json +1383 -0
- package/catalogs/rn-calls-v5.json +134 -0
- package/catalogs/rn-calls-v5.symbols.txt +58 -0
- package/catalogs/rn-sdk-v4.json +672 -0
- package/catalogs/rn-v5.json +449 -0
- package/catalogs/rn-v5.symbols.txt +216 -0
- package/catalogs/sdk-android-v5.json +514 -0
- package/contracts.android-calls-v5.json +122 -0
- package/contracts.android-v6.json +135 -0
- package/contracts.angular-v5.json +694 -0
- package/contracts.flutter-calls-v5.json +77 -0
- package/contracts.flutter-v6.json +126 -0
- package/contracts.ios-calls-v5.json +67 -0
- package/contracts.ios-v5.json +436 -0
- package/contracts.json +82 -0
- package/contracts.rn-calls-v5.json +77 -0
- package/contracts.rn-v5.json +727 -0
- package/contracts.sdk-android-v5.json +15 -0
- package/contracts.web-calls-v5.json +45 -0
- package/features.android-calls-v5.json +246 -0
- package/features.android-v6.json +65 -0
- package/features.angular-v5.json +521 -0
- package/features.flutter-calls-v5.json +286 -0
- package/features.flutter-v6.json +484 -0
- package/features.ios-calls-v5.json +236 -0
- package/features.ios-v5.json +573 -0
- package/features.json +61 -0
- package/features.rn-calls-v5.json +187 -0
- package/features.rn-v5.json +614 -0
- package/features.sdk-android-v5.json +40 -0
- package/features.sdk-jsv4.json +24 -0
- package/features.web-calls-v5.json +108 -0
- package/package.json +151 -74
- package/peers.yaml +312 -0
- package/registry/README.md +31 -0
- package/registry/android-calls-v5.json +54 -0
- package/registry/android-v6.json +137 -0
- package/registry/angular-v5.json +114 -0
- package/registry/flutter-calls-v5.json +54 -0
- package/registry/flutter-v6.json +119 -0
- package/registry/ios-calls-v5.json +59 -0
- package/registry/ios-v5.json +97 -0
- package/registry/rn-calls-v5.json +59 -0
- package/registry/rn-v5.json +129 -0
- package/registry/sdk-android-v5.json +53 -0
- package/registry/sdk-jsv4.json +53 -0
- package/registry/web-calls-v5.json +54 -0
- package/registry/web-v7.json +99 -0
- package/skills/cometchat/SKILL.md +42 -2096
- package/skills/cometchat-android-v5-calls-sdk/SKILL.md +206 -0
- package/skills/cometchat-android-v5-calls-sdk/references/build-truth.md +63 -0
- package/skills/cometchat-android-v5-calls-sdk/references/docs-map.md +119 -0
- package/skills/cometchat-android-v5-calls-sdk/references/method-map.md +53 -0
- package/skills/cometchat-android-v5-calls-sdk/references/pitfalls.md +72 -0
- package/skills/cometchat-android-v5-calls-sdk/references/ringing.md +92 -0
- package/skills/cometchat-android-v5-calls-sdk/references/user-switch.md +90 -0
- package/skills/cometchat-android-v5-sdk/SKILL.md +127 -0
- package/skills/cometchat-android-v5-sdk/references/app-surface.md +88 -0
- package/skills/cometchat-android-v5-sdk/references/docs-map.md +91 -0
- package/skills/cometchat-android-v6-builder-settings/SKILL.md +51 -137
- package/skills/cometchat-android-v6-calls/SKILL.md +128 -413
- package/skills/cometchat-android-v6-compose-components/SKILL.md +84 -194
- package/skills/cometchat-android-v6-compose-customization/SKILL.md +66 -411
- package/skills/cometchat-android-v6-compose-placement/SKILL.md +154 -237
- package/skills/cometchat-android-v6-core/SKILL.md +236 -672
- package/skills/cometchat-android-v6-core/references/anti-patterns.md +31 -0
- package/skills/cometchat-android-v6-core/references/component-props.md +168 -0
- package/skills/cometchat-android-v6-core/references/docs-map.md +153 -0
- package/skills/cometchat-android-v6-core/references/layout.md +112 -0
- package/skills/cometchat-android-v6-core/references/lifecycle.md +75 -0
- package/skills/cometchat-android-v6-core/references/setup-credentials.md +105 -0
- package/skills/cometchat-android-v6-core/references/troubleshooting.md +36 -0
- package/skills/cometchat-android-v6-events/SKILL.md +46 -184
- package/skills/cometchat-android-v6-extensions/SKILL.md +39 -179
- package/skills/cometchat-android-v6-features/SKILL.md +74 -143
- package/skills/cometchat-android-v6-kotlin-components/SKILL.md +75 -193
- package/skills/cometchat-android-v6-kotlin-customization/SKILL.md +67 -419
- package/skills/cometchat-android-v6-kotlin-placement/SKILL.md +77 -223
- package/skills/cometchat-android-v6-migration/SKILL.md +67 -378
- package/skills/cometchat-android-v6-production/SKILL.md +40 -179
- package/skills/cometchat-android-v6-push/SKILL.md +39 -289
- package/skills/cometchat-android-v6-testing/SKILL.md +50 -265
- package/skills/cometchat-android-v6-troubleshooting/SKILL.md +70 -254
- package/skills/cometchat-angular-v5-calls/SKILL.md +193 -0
- package/skills/cometchat-angular-v5-components/SKILL.md +131 -0
- package/skills/cometchat-angular-v5-components/references/catalog.md +111 -0
- package/skills/cometchat-angular-v5-components/references/host-composed.md +46 -0
- package/skills/cometchat-angular-v5-core/SKILL.md +300 -0
- package/skills/cometchat-angular-v5-core/references/anti-patterns.md +49 -0
- package/skills/cometchat-angular-v5-core/references/component-props.md +55 -0
- package/skills/cometchat-angular-v5-core/references/dependencies.md +66 -0
- package/skills/cometchat-angular-v5-core/references/docs-map.md +132 -0
- package/skills/cometchat-angular-v5-core/references/layout.md +64 -0
- package/skills/cometchat-angular-v5-core/references/lifecycle.md +202 -0
- package/skills/cometchat-angular-v5-core/references/setup-credentials.md +137 -0
- package/skills/cometchat-angular-v5-core/references/theming.md +70 -0
- package/skills/cometchat-angular-v5-core/references/troubleshooting.md +27 -0
- package/skills/cometchat-angular-v5-customization/SKILL.md +94 -0
- package/skills/cometchat-angular-v5-features/SKILL.md +107 -0
- package/skills/cometchat-angular-v5-features/references/custom-messages.md +133 -0
- package/skills/cometchat-angular-v5-features/references/formatters.md +28 -0
- package/skills/cometchat-angular-v5-features/references/host-composed-extensions.md +85 -0
- package/skills/cometchat-angular-v5-migration/SKILL.md +40 -0
- package/skills/cometchat-angular-v5-migration/references/migration-guide.md +165 -0
- package/skills/cometchat-angular-v5-patterns/SKILL.md +107 -0
- package/skills/cometchat-angular-v5-placement/SKILL.md +133 -0
- package/skills/cometchat-angular-v5-placement/references/combined-app.md +174 -0
- package/skills/cometchat-angular-v5-placement/references/core-surface.md +199 -0
- package/skills/cometchat-angular-v5-production/SKILL.md +101 -0
- package/skills/cometchat-angular-v5-push/SKILL.md +61 -0
- package/skills/cometchat-angular-v5-testing/SKILL.md +112 -0
- package/skills/cometchat-angular-v5-troubleshooting/SKILL.md +96 -0
- package/skills/cometchat-flutter-v5-sdk/SKILL.md +188 -0
- package/skills/cometchat-flutter-v5-sdk/references/doc-corrections.md +55 -0
- package/skills/cometchat-flutter-v5-sdk/references/docs-map.md +211 -0
- package/skills/cometchat-flutter-v5-sdk/references/platform-notes.md +48 -0
- package/skills/cometchat-flutter-v5-sdk/references/transcription.md +87 -0
- package/skills/cometchat-flutter-v6-calls/SKILL.md +75 -389
- package/skills/cometchat-flutter-v6-components/SKILL.md +88 -361
- package/skills/cometchat-flutter-v6-core/SKILL.md +154 -593
- package/skills/cometchat-flutter-v6-core/references/anti-patterns.md +55 -0
- package/skills/cometchat-flutter-v6-core/references/docs-map.md +143 -0
- package/skills/cometchat-flutter-v6-core/references/layout.md +45 -0
- package/skills/cometchat-flutter-v6-core/references/lifecycle.md +87 -0
- package/skills/cometchat-flutter-v6-core/references/setup-credentials.md +84 -0
- package/skills/cometchat-flutter-v6-core/references/troubleshooting.md +26 -0
- package/skills/cometchat-flutter-v6-customization/SKILL.md +70 -712
- package/skills/cometchat-flutter-v6-events/SKILL.md +79 -174
- package/skills/cometchat-flutter-v6-features/SKILL.md +55 -394
- package/skills/cometchat-flutter-v6-migration/SKILL.md +68 -367
- package/skills/cometchat-flutter-v6-migration/references/migration-guide.md +131 -0
- package/skills/cometchat-flutter-v6-patterns/SKILL.md +61 -0
- package/skills/cometchat-flutter-v6-placement/SKILL.md +94 -381
- package/skills/cometchat-flutter-v6-production/SKILL.md +58 -615
- package/skills/cometchat-flutter-v6-push/SKILL.md +46 -455
- package/skills/cometchat-flutter-v6-testing/SKILL.md +68 -299
- package/skills/cometchat-flutter-v6-troubleshooting/SKILL.md +54 -878
- package/skills/cometchat-ios-calls/SKILL.md +112 -563
- package/skills/cometchat-ios-components/SKILL.md +44 -834
- package/skills/cometchat-ios-core/SKILL.md +181 -1068
- package/skills/cometchat-ios-core/references/anti-patterns.md +80 -0
- package/skills/cometchat-ios-core/references/docs-map.md +123 -0
- package/skills/cometchat-ios-core/references/install.md +23 -0
- package/skills/cometchat-ios-core/references/layout.md +186 -0
- package/skills/cometchat-ios-core/references/setup-credentials.md +197 -0
- package/skills/cometchat-ios-core/references/swiftui.md +91 -0
- package/skills/cometchat-ios-core/references/troubleshooting.md +100 -0
- package/skills/cometchat-ios-customization/SKILL.md +33 -968
- package/skills/cometchat-ios-features/SKILL.md +29 -738
- package/skills/cometchat-ios-migration/SKILL.md +39 -0
- package/skills/cometchat-ios-placement/SKILL.md +51 -729
- package/skills/cometchat-ios-push/SKILL.md +24 -602
- package/skills/cometchat-ios-v5-sdk/SKILL.md +161 -0
- package/skills/cometchat-ios-v5-sdk/references/docs-map.md +326 -0
- package/skills/cometchat-js-v5-sdk/SKILL.md +95 -0
- package/skills/cometchat-js-v5-sdk/references/docs-map.md +114 -0
- package/skills/cometchat-onboarding/SKILL.md +89 -0
- package/skills/cometchat-onboarding/references/archetypes.md +51 -0
- package/skills/cometchat-onboarding/references/calling-first.md +77 -0
- package/skills/cometchat-onboarding/references/not-in-this-pack.md +8 -0
- package/skills/cometchat-onboarding/references/plan-artifact.md +133 -0
- package/skills/cometchat-onboarding/references/platforms.md +90 -0
- package/skills/cometchat-react-native-bare-patterns/SKILL.md +120 -0
- package/skills/cometchat-react-native-calls/SKILL.md +200 -0
- package/skills/cometchat-react-native-components/SKILL.md +142 -0
- package/skills/cometchat-react-native-core/SKILL.md +313 -0
- package/skills/cometchat-react-native-core/references/anti-patterns.md +79 -0
- package/skills/cometchat-react-native-core/references/component-props.md +105 -0
- package/skills/cometchat-react-native-core/references/dependencies.md +62 -0
- package/skills/cometchat-react-native-core/references/docs-map.md +126 -0
- package/skills/cometchat-react-native-core/references/layout.md +61 -0
- package/skills/cometchat-react-native-core/references/lifecycle.md +64 -0
- package/skills/cometchat-react-native-core/references/setup-credentials.md +39 -0
- package/skills/cometchat-react-native-customization/SKILL.md +198 -0
- package/skills/cometchat-react-native-expo-patterns/SKILL.md +116 -0
- package/skills/cometchat-react-native-features/SKILL.md +122 -0
- package/skills/cometchat-react-native-migration/SKILL.md +103 -0
- package/skills/cometchat-react-native-placement/SKILL.md +158 -0
- package/skills/cometchat-react-native-production/SKILL.md +78 -0
- package/skills/cometchat-react-native-push/SKILL.md +88 -0
- package/skills/cometchat-react-native-sdk/SKILL.md +126 -0
- package/skills/cometchat-react-native-sdk/references/method-map.md +239 -0
- package/skills/cometchat-react-native-sdk/references/page-map.md +96 -0
- package/skills/cometchat-react-native-testing/SKILL.md +94 -0
- package/skills/cometchat-react-native-troubleshooting/SKILL.md +116 -0
- package/skills/cometchat-react-native-v5-sdk/SKILL.md +150 -0
- package/skills/cometchat-react-native-v5-sdk/references/docs-map.md +127 -0
- package/skills/cometchat-react-native-v5-sdk/references/ringing-voip.md +369 -0
- package/skills/cometchat-react-v7-calls/SKILL.md +75 -0
- package/skills/cometchat-react-v7-components/SKILL.md +72 -0
- package/skills/cometchat-react-v7-core/SKILL.md +101 -0
- package/skills/cometchat-react-v7-core/references/anti-patterns.md +19 -0
- package/skills/cometchat-react-v7-core/references/component-props.md +82 -0
- package/skills/cometchat-react-v7-core/references/dependencies.md +23 -0
- package/skills/cometchat-react-v7-core/references/docs-map.md +117 -0
- package/skills/cometchat-react-v7-core/references/i18n-rtl-a11y.md +22 -0
- package/skills/cometchat-react-v7-core/references/layout.md +158 -0
- package/skills/cometchat-react-v7-core/references/lifecycle.md +74 -0
- package/skills/cometchat-react-v7-core/references/setup-credentials.md +58 -0
- package/skills/cometchat-react-v7-core/references/ssr.md +11 -0
- package/skills/cometchat-react-v7-core/references/theming.md +52 -0
- package/skills/cometchat-react-v7-core/references/troubleshooting.md +28 -0
- package/skills/cometchat-react-v7-customization/SKILL.md +84 -0
- package/skills/cometchat-react-v7-features/SKILL.md +92 -0
- package/skills/cometchat-react-v7-migration/SKILL.md +39 -0
- package/skills/cometchat-react-v7-migration/references/migration-guide.md +119 -0
- package/skills/cometchat-react-v7-patterns/SKILL.md +43 -0
- package/skills/cometchat-react-v7-placement/SKILL.md +106 -0
- package/skills/cometchat-react-v7-placement/references/recipes.md +354 -0
- package/skills/cometchat-react-v7-push/SKILL.md +53 -0
- package/test-suite/README.md +70 -0
- package/test-suite/catalogs/android-calls-v5.json +830 -0
- package/test-suite/catalogs/android-calls-v5.symbols.txt +499 -0
- package/test-suite/catalogs/android-v6.json +1646 -0
- package/test-suite/catalogs/android-v6.symbols.txt +298 -0
- package/test-suite/catalogs/angular-v5.json +7587 -0
- package/test-suite/catalogs/flutter-calls-v5.json +196 -0
- package/test-suite/catalogs/flutter-calls-v5.symbols.txt +59 -0
- package/test-suite/catalogs/flutter-v6.json +651 -0
- package/test-suite/catalogs/ios-calls-v5.json +158 -0
- package/test-suite/catalogs/ios-calls-v5.symbols.txt +70 -0
- package/test-suite/catalogs/ios-v5.json +1383 -0
- package/test-suite/catalogs/ios-v5.symbols.txt +699 -0
- package/test-suite/catalogs/rn-calls-v5.json +134 -0
- package/test-suite/catalogs/rn-sdk-v4.json +672 -0
- package/test-suite/catalogs/rn-v5.json +449 -0
- package/test-suite/catalogs/sdk-android-v5.json +514 -0
- package/test-suite/catalogs/sdk-android-v5.symbols.txt +254 -0
- package/test-suite/catalogs/sdk-jsv4.json +800 -0
- package/test-suite/catalogs/web-calls-v5.json +195 -0
- package/test-suite/catalogs/web-v7.json +1243 -0
- package/test-suite/scripts/build-registry.mjs +113 -0
- package/test-suite/scripts/catalog-refresh-dart.mjs +151 -0
- package/test-suite/scripts/catalog-refresh.mjs +100 -0
- package/test-suite/scripts/lint-skills.mjs +909 -0
- package/test-suite/scripts/measure-tokens.mjs +169 -0
- package/test-suite/scripts/typecheck-fences-dart.mjs +437 -0
- package/test-suite/scripts/typecheck-fences-kotlin.mjs +269 -0
- package/test-suite/scripts/typecheck-fences.mjs +206 -0
- package/test-suite/scripts/verify-catalog.mjs +242 -0
- package/test-suite/scripts/verify-contract-fences.mjs +94 -0
- package/test-suite/scripts/verify-detection.mjs +178 -0
- package/test-suite/scripts/verify-docs-base.mjs +91 -0
- package/test-suite/scripts/verify-family-agnostic.mjs +130 -0
- package/test-suite/scripts/verify-golden-path.mjs +138 -0
- package/test-suite/scripts/verify-oracle-components.mjs +133 -0
- package/test-suite/scripts/verify-template-bindings.mjs +148 -0
- package/test-suite/typecheck/angular-v5/package.json +21 -0
- package/test-suite/typecheck/angular-v5/tsconfig.json +21 -0
- package/test-suite/typecheck/flutter-v6/analysis_options.yaml +25 -0
- package/test-suite/typecheck/flutter-v6/pubspec.yaml +21 -0
- package/test-suite/typecheck/web-v7/package.json +18 -0
- package/test-suite/typecheck/web-v7/tsconfig.json +19 -0
- package/bin/install.js +0 -1003
- package/skills/.claude-plugin/marketplace.json +0 -86
- package/skills/cometchat/references/asking-questions.md +0 -48
- package/skills/cometchat-a11y/SKILL.md +0 -477
- package/skills/cometchat-android-v5/SKILL.md +0 -121
- package/skills/cometchat-android-v5-calls/SKILL.md +0 -429
- package/skills/cometchat-android-v5-calls/references/README.md +0 -53
- package/skills/cometchat-android-v5-calls/references/add-calls-to-existing-chat.md +0 -197
- package/skills/cometchat-android-v5-calls/references/audio-controls.md +0 -91
- package/skills/cometchat-android-v5-calls/references/background-handling.md +0 -168
- package/skills/cometchat-android-v5-calls/references/call-layouts.md +0 -131
- package/skills/cometchat-android-v5-calls/references/call-logs.md +0 -113
- package/skills/cometchat-android-v5-calls/references/call-session.md +0 -274
- package/skills/cometchat-android-v5-calls/references/custom-ui.md +0 -150
- package/skills/cometchat-android-v5-calls/references/event-listeners.md +0 -123
- package/skills/cometchat-android-v5-calls/references/group-calls.md +0 -205
- package/skills/cometchat-android-v5-calls/references/idle-timeout.md +0 -117
- package/skills/cometchat-android-v5-calls/references/in-call-chat.md +0 -134
- package/skills/cometchat-android-v5-calls/references/join-session.md +0 -120
- package/skills/cometchat-android-v5-calls/references/migration-v4-to-v5.md +0 -222
- package/skills/cometchat-android-v5-calls/references/participant-management.md +0 -110
- package/skills/cometchat-android-v5-calls/references/picture-in-picture.md +0 -106
- package/skills/cometchat-android-v5-calls/references/raise-hand.md +0 -248
- package/skills/cometchat-android-v5-calls/references/recording.md +0 -101
- package/skills/cometchat-android-v5-calls/references/ringing-integration.md +0 -152
- package/skills/cometchat-android-v5-calls/references/screen-sharing.md +0 -78
- package/skills/cometchat-android-v5-calls/references/server-fcm-voip.md +0 -215
- package/skills/cometchat-android-v5-calls/references/session-settings.md +0 -121
- package/skills/cometchat-android-v5-calls/references/setup.md +0 -137
- package/skills/cometchat-android-v5-calls/references/share-invite.md +0 -156
- package/skills/cometchat-android-v5-calls/references/video-controls.md +0 -87
- package/skills/cometchat-android-v5-calls/references/voip-calling.md +0 -526
- package/skills/cometchat-android-v5-components/SKILL.md +0 -431
- package/skills/cometchat-android-v5-core/SKILL.md +0 -486
- package/skills/cometchat-android-v5-customization/SKILL.md +0 -469
- package/skills/cometchat-android-v5-extensions/SKILL.md +0 -127
- package/skills/cometchat-android-v5-features/SKILL.md +0 -131
- package/skills/cometchat-android-v5-placement/SKILL.md +0 -277
- package/skills/cometchat-android-v5-production/SKILL.md +0 -95
- package/skills/cometchat-android-v5-push/SKILL.md +0 -619
- package/skills/cometchat-android-v5-testing/SKILL.md +0 -188
- package/skills/cometchat-android-v5-theming/SKILL.md +0 -167
- package/skills/cometchat-android-v5-troubleshooting/SKILL.md +0 -74
- package/skills/cometchat-android-v6/SKILL.md +0 -108
- package/skills/cometchat-android-v6-calls/references/add-calls-to-existing-chat.md +0 -97
- package/skills/cometchat-android-v6-calls/references/advanced-features.md +0 -87
- package/skills/cometchat-android-v6-calls/references/call-layouts.md +0 -100
- package/skills/cometchat-android-v6-calls/references/call-session.md +0 -163
- package/skills/cometchat-android-v6-calls/references/device-management.md +0 -172
- package/skills/cometchat-android-v6-calls/references/group-calls.md +0 -191
- package/skills/cometchat-android-v6-calls/references/idle-timeout.md +0 -110
- package/skills/cometchat-android-v6-calls/references/in-call-chat.md +0 -141
- package/skills/cometchat-android-v6-calls/references/raise-hand.md +0 -188
- package/skills/cometchat-android-v6-calls/references/ringing-integration.md +0 -176
- package/skills/cometchat-android-v6-calls/references/server-fcm-voip.md +0 -127
- package/skills/cometchat-android-v6-calls/references/share-invite.md +0 -105
- package/skills/cometchat-android-v6-compose-theming/SKILL.md +0 -250
- package/skills/cometchat-android-v6-kotlin-theming/SKILL.md +0 -233
- package/skills/cometchat-angular-calls/SKILL.md +0 -380
- package/skills/cometchat-angular-calls/references/add-calls-to-existing-chat.md +0 -96
- package/skills/cometchat-angular-calls/references/call-layouts.md +0 -123
- package/skills/cometchat-angular-calls/references/call-session.md +0 -167
- package/skills/cometchat-angular-calls/references/custom-ui.md +0 -239
- package/skills/cometchat-angular-calls/references/device-management.md +0 -154
- package/skills/cometchat-angular-calls/references/group-calls.md +0 -433
- package/skills/cometchat-angular-calls/references/idle-timeout.md +0 -161
- package/skills/cometchat-angular-calls/references/in-call-chat.md +0 -148
- package/skills/cometchat-angular-calls/references/lazy-loading-pitfalls.md +0 -205
- package/skills/cometchat-angular-calls/references/migration-v4-to-v5.md +0 -53
- package/skills/cometchat-angular-calls/references/ngzone-and-async-callbacks.md +0 -184
- package/skills/cometchat-angular-calls/references/picture-in-picture.md +0 -285
- package/skills/cometchat-angular-calls/references/raise-hand.md +0 -172
- package/skills/cometchat-angular-calls/references/recording-screen-share.md +0 -260
- package/skills/cometchat-angular-calls/references/ringing-integration.md +0 -133
- package/skills/cometchat-angular-calls/references/server-web-push-vapid.md +0 -100
- package/skills/cometchat-angular-calls/references/share-invite.md +0 -122
- package/skills/cometchat-angular-calls/references/virtual-background.md +0 -29
- package/skills/cometchat-angular-components/SKILL.md +0 -235
- package/skills/cometchat-angular-core/SKILL.md +0 -386
- package/skills/cometchat-angular-customization/SKILL.md +0 -616
- package/skills/cometchat-angular-features/SKILL.md +0 -329
- package/skills/cometchat-angular-patterns/SKILL.md +0 -256
- package/skills/cometchat-angular-placement/SKILL.md +0 -314
- package/skills/cometchat-angular-production/SKILL.md +0 -564
- package/skills/cometchat-angular-push/SKILL.md +0 -389
- package/skills/cometchat-angular-testing/SKILL.md +0 -605
- package/skills/cometchat-angular-theming/SKILL.md +0 -290
- package/skills/cometchat-angular-troubleshooting/SKILL.md +0 -364
- package/skills/cometchat-astro-patterns/SKILL.md +0 -708
- package/skills/cometchat-calls/SKILL.md +0 -364
- package/skills/cometchat-calls/references/use-case-broadcast.md +0 -199
- package/skills/cometchat-calls/references/use-case-marketplace.md +0 -157
- package/skills/cometchat-calls/references/use-case-support.md +0 -189
- package/skills/cometchat-calls/references/use-case-team.md +0 -180
- package/skills/cometchat-calls/references/use-case-telehealth.md +0 -153
- package/skills/cometchat-components/SKILL.md +0 -1142
- package/skills/cometchat-core/SKILL.md +0 -1048
- package/skills/cometchat-customization/SKILL.md +0 -580
- package/skills/cometchat-customization/references/component-catalog.md +0 -236
- package/skills/cometchat-features/SKILL.md +0 -861
- package/skills/cometchat-flutter-v5/SKILL.md +0 -173
- package/skills/cometchat-flutter-v5-calls/SKILL.md +0 -455
- package/skills/cometchat-flutter-v5-calls/references/add-calls-to-existing-chat.md +0 -193
- package/skills/cometchat-flutter-v5-calls/references/call-layouts.md +0 -103
- package/skills/cometchat-flutter-v5-calls/references/call-session.md +0 -285
- package/skills/cometchat-flutter-v5-calls/references/device-management.md +0 -124
- package/skills/cometchat-flutter-v5-calls/references/group-calls.md +0 -181
- package/skills/cometchat-flutter-v5-calls/references/idle-timeout.md +0 -99
- package/skills/cometchat-flutter-v5-calls/references/in-call-chat.md +0 -135
- package/skills/cometchat-flutter-v5-calls/references/migration-v4-to-v5.md +0 -210
- package/skills/cometchat-flutter-v5-calls/references/raise-hand.md +0 -255
- package/skills/cometchat-flutter-v5-calls/references/ringing-integration.md +0 -196
- package/skills/cometchat-flutter-v5-calls/references/server-push-bridge.md +0 -101
- package/skills/cometchat-flutter-v5-calls/references/share-invite.md +0 -148
- package/skills/cometchat-flutter-v5-conversations/SKILL.md +0 -118
- package/skills/cometchat-flutter-v5-core/SKILL.md +0 -239
- package/skills/cometchat-flutter-v5-customization/SKILL.md +0 -358
- package/skills/cometchat-flutter-v5-events/SKILL.md +0 -156
- package/skills/cometchat-flutter-v5-messages/SKILL.md +0 -259
- package/skills/cometchat-flutter-v5-production/SKILL.md +0 -216
- package/skills/cometchat-flutter-v5-push/SKILL.md +0 -285
- package/skills/cometchat-flutter-v5-testing/SKILL.md +0 -401
- package/skills/cometchat-flutter-v5-theming/SKILL.md +0 -161
- package/skills/cometchat-flutter-v5-troubleshooting/SKILL.md +0 -130
- package/skills/cometchat-flutter-v5-users-groups/SKILL.md +0 -152
- package/skills/cometchat-flutter-v6/SKILL.md +0 -446
- package/skills/cometchat-flutter-v6-calls/references/add-calls-to-existing-chat.md +0 -136
- package/skills/cometchat-flutter-v6-calls/references/advanced-features.md +0 -89
- package/skills/cometchat-flutter-v6-calls/references/call-layouts.md +0 -105
- package/skills/cometchat-flutter-v6-calls/references/call-session.md +0 -229
- package/skills/cometchat-flutter-v6-calls/references/device-management.md +0 -105
- package/skills/cometchat-flutter-v6-calls/references/group-calls.md +0 -190
- package/skills/cometchat-flutter-v6-calls/references/idle-timeout.md +0 -88
- package/skills/cometchat-flutter-v6-calls/references/in-call-chat.md +0 -125
- package/skills/cometchat-flutter-v6-calls/references/raise-hand.md +0 -275
- package/skills/cometchat-flutter-v6-calls/references/ringing-integration.md +0 -171
- package/skills/cometchat-flutter-v6-calls/references/server-push-bridge.md +0 -93
- package/skills/cometchat-flutter-v6-calls/references/share-invite.md +0 -102
- package/skills/cometchat-flutter-v6-conversations/SKILL.md +0 -238
- package/skills/cometchat-flutter-v6-messages/SKILL.md +0 -384
- package/skills/cometchat-flutter-v6-theming/SKILL.md +0 -293
- package/skills/cometchat-flutter-v6-users-groups/SKILL.md +0 -224
- package/skills/cometchat-i18n/SKILL.md +0 -419
- package/skills/cometchat-ios/SKILL.md +0 -325
- package/skills/cometchat-ios-calls/references/add-calls-to-existing-chat.md +0 -181
- package/skills/cometchat-ios-calls/references/audio-modes-and-controls.md +0 -45
- package/skills/cometchat-ios-calls/references/avaudiosession-routing.md +0 -188
- package/skills/cometchat-ios-calls/references/call-layouts.md +0 -76
- package/skills/cometchat-ios-calls/references/call-session.md +0 -218
- package/skills/cometchat-ios-calls/references/callkit-and-pushkit.md +0 -357
- package/skills/cometchat-ios-calls/references/custom-ui.md +0 -322
- package/skills/cometchat-ios-calls/references/device-management.md +0 -171
- package/skills/cometchat-ios-calls/references/group-calls.md +0 -359
- package/skills/cometchat-ios-calls/references/idle-timeout.md +0 -184
- package/skills/cometchat-ios-calls/references/in-call-chat.md +0 -179
- package/skills/cometchat-ios-calls/references/migration-v4-to-v5.md +0 -196
- package/skills/cometchat-ios-calls/references/picture-in-picture.md +0 -246
- package/skills/cometchat-ios-calls/references/raise-hand.md +0 -26
- package/skills/cometchat-ios-calls/references/recording-screen-share.md +0 -252
- package/skills/cometchat-ios-calls/references/ringing-integration.md +0 -143
- package/skills/cometchat-ios-calls/references/server-apns-pushkit.md +0 -267
- package/skills/cometchat-ios-calls/references/share-invite.md +0 -148
- package/skills/cometchat-ios-calls/references/swiftui-uikit-hosting.md +0 -246
- package/skills/cometchat-ios-calls/references/voip-cert-setup.md +0 -166
- package/skills/cometchat-ios-production/SKILL.md +0 -738
- package/skills/cometchat-ios-testing/SKILL.md +0 -376
- package/skills/cometchat-ios-theming/SKILL.md +0 -667
- package/skills/cometchat-ios-troubleshooting/SKILL.md +0 -1003
- package/skills/cometchat-native-bare-patterns/SKILL.md +0 -550
- package/skills/cometchat-native-calls/SKILL.md +0 -671
- package/skills/cometchat-native-calls/references/add-calls-to-existing-chat.md +0 -203
- package/skills/cometchat-native-calls/references/call-layouts.md +0 -125
- package/skills/cometchat-native-calls/references/call-session.md +0 -182
- package/skills/cometchat-native-calls/references/custom-ui.md +0 -254
- package/skills/cometchat-native-calls/references/device-management.md +0 -158
- package/skills/cometchat-native-calls/references/expo-vs-bare.md +0 -179
- package/skills/cometchat-native-calls/references/group-calls.md +0 -296
- package/skills/cometchat-native-calls/references/idle-timeout.md +0 -128
- package/skills/cometchat-native-calls/references/in-call-chat.md +0 -145
- package/skills/cometchat-native-calls/references/migration-v4-to-v5.md +0 -72
- package/skills/cometchat-native-calls/references/picture-in-picture.md +0 -276
- package/skills/cometchat-native-calls/references/raise-hand.md +0 -205
- package/skills/cometchat-native-calls/references/recording-screen-share.md +0 -169
- package/skills/cometchat-native-calls/references/ringing-integration.md +0 -118
- package/skills/cometchat-native-calls/references/server-push-bridge.md +0 -135
- package/skills/cometchat-native-calls/references/server-push-payloads.md +0 -193
- package/skills/cometchat-native-calls/references/share-invite.md +0 -146
- package/skills/cometchat-native-calls/references/voip-push-end-to-end.md +0 -319
- package/skills/cometchat-native-components/SKILL.md +0 -628
- package/skills/cometchat-native-core/SKILL.md +0 -679
- package/skills/cometchat-native-customization/SKILL.md +0 -716
- package/skills/cometchat-native-expo-patterns/SKILL.md +0 -552
- package/skills/cometchat-native-features/SKILL.md +0 -638
- package/skills/cometchat-native-placement/SKILL.md +0 -509
- package/skills/cometchat-native-production/SKILL.md +0 -700
- package/skills/cometchat-native-push/SKILL.md +0 -594
- package/skills/cometchat-native-testing/SKILL.md +0 -582
- package/skills/cometchat-native-theming/SKILL.md +0 -681
- package/skills/cometchat-native-troubleshooting/SKILL.md +0 -501
- package/skills/cometchat-nextjs-patterns/SKILL.md +0 -899
- package/skills/cometchat-placement/SKILL.md +0 -1360
- package/skills/cometchat-production/SKILL.md +0 -1027
- package/skills/cometchat-react-calls/SKILL.md +0 -752
- package/skills/cometchat-react-calls/references/add-calls-to-existing-chat.md +0 -146
- package/skills/cometchat-react-calls/references/call-layouts.md +0 -160
- package/skills/cometchat-react-calls/references/call-session.md +0 -235
- package/skills/cometchat-react-calls/references/custom-ui.md +0 -247
- package/skills/cometchat-react-calls/references/device-management.md +0 -210
- package/skills/cometchat-react-calls/references/group-calls.md +0 -257
- package/skills/cometchat-react-calls/references/idle-timeout.md +0 -188
- package/skills/cometchat-react-calls/references/in-call-chat.md +0 -212
- package/skills/cometchat-react-calls/references/migration-v4-to-v5.md +0 -170
- package/skills/cometchat-react-calls/references/picture-in-picture.md +0 -245
- package/skills/cometchat-react-calls/references/raise-hand.md +0 -238
- package/skills/cometchat-react-calls/references/recording-screen-share.md +0 -144
- package/skills/cometchat-react-calls/references/ringing-integration.md +0 -255
- package/skills/cometchat-react-calls/references/server-web-push-vapid.md +0 -241
- package/skills/cometchat-react-calls/references/share-invite.md +0 -175
- package/skills/cometchat-react-calls/references/testing-calls-on-web.md +0 -216
- package/skills/cometchat-react-calls/references/virtual-background.md +0 -32
- package/skills/cometchat-react-calls/references/voip-and-web-push.md +0 -165
- package/skills/cometchat-react-patterns/SKILL.md +0 -628
- package/skills/cometchat-react-push/SKILL.md +0 -634
- package/skills/cometchat-react-router-patterns/SKILL.md +0 -758
- package/skills/cometchat-react-testing/SKILL.md +0 -413
- package/skills/cometchat-theming/SKILL.md +0 -498
- package/skills/cometchat-troubleshooting/SKILL.md +0 -294
|
@@ -1,431 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: cometchat-android-v5-components
|
|
3
|
-
description: "Complete catalog of CometChat Android UI Kit v5 components. Reference before writing integration code — never invent component names."
|
|
4
|
-
license: "MIT"
|
|
5
|
-
compatibility: "Android 7.0+; Java 8+; Kotlin 1.8+; com.cometchat:chat-uikit-android:5.x"
|
|
6
|
-
metadata:
|
|
7
|
-
author: "CometChat"
|
|
8
|
-
version: "3.0.0"
|
|
9
|
-
tags: "chat cometchat android components catalog reference ui-kit views"
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
> **Ground truth:** `com.cometchat:chat-uikit-android:5.x` (legacy/maintenance-only) component catalog (javap the AAR) + `docs/ui-kit/android`. **Official docs:** https://www.cometchat.com/docs/ui-kit/android/components-overview · **Docs MCP:** `claude mcp add --transport http cometchat-docs https://www.cometchat.com/docs/mcp` (or fetch the URL directly without MCP). Verify symbols against the installed package/source before relying on them.
|
|
13
|
-
|
|
14
|
-
> **Companion skills:** `cometchat-android-v5-core` covers initialization and login;
|
|
15
|
-
> `cometchat-android-v5-placement` covers where to put these components;
|
|
16
|
-
> `cometchat-android-v5-customization` covers how to modify component behavior.
|
|
17
|
-
|
|
18
|
-
## Purpose
|
|
19
|
-
|
|
20
|
-
This is the single source of truth for CometChat Android UI Kit v5 component names, key methods, and usage. **Check this catalog before writing any CometChat view code.** If a component is not listed here, it does not exist in the UI Kit.
|
|
21
|
-
|
|
22
|
-
Most top-level components extend `MaterialCardView` and can be used in XML layouts or created programmatically. Some lower-level views have different base classes — e.g. `CometChatDate` extends `LinearLayout`, `CometChatMessageReceipt` extends `AppCompatImageView`, `CometChatEmojiKeyboard` extends `BottomSheetDialogFragment`, and `CometChatConfirmDialog` extends `Dialog`. The main components follow a consistent pattern: set a `User` or `Group` object, configure visibility/style via setters, and attach callbacks for user interactions.
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Use this skill when
|
|
28
|
-
|
|
29
|
-
- Writing code that uses any `CometChat*` view
|
|
30
|
-
- Looking up component names, methods, or XML attributes
|
|
31
|
-
- Composing multiple components together (e.g., message header + list + composer)
|
|
32
|
-
- "What components does CometChat have?"
|
|
33
|
-
- "How do I use CometChatConversations?"
|
|
34
|
-
|
|
35
|
-
## Do not use this skill when
|
|
36
|
-
|
|
37
|
-
- Setting up init/login → use `cometchat-android-v5-core`
|
|
38
|
-
- Customizing themes/colors → use `cometchat-android-v5-theming`
|
|
39
|
-
- Writing custom message templates → use `cometchat-android-v5-customization`
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## 1. Core messaging components
|
|
44
|
-
|
|
45
|
-
These are the components you use to build a chat experience. Most integrations use some combination of these.
|
|
46
|
-
|
|
47
|
-
### CometChatConversations
|
|
48
|
-
|
|
49
|
-
Renders a scrollable list of the logged-in user's conversations (both 1:1 and group).
|
|
50
|
-
|
|
51
|
-
**Key methods:**
|
|
52
|
-
|
|
53
|
-
| Method | Type | Description |
|
|
54
|
-
|---|---|---|
|
|
55
|
-
| `setOnItemClick(OnItemClick<Conversation>)` | Callback | Called when user taps a conversation |
|
|
56
|
-
| `setSelectionMode(UIKitConstants.SelectionMode)` | Config | `NONE`, `SINGLE`, `MULTIPLE` |
|
|
57
|
-
| `setSearchBoxVisibility(int)` | Visibility | Show/hide the search bar |
|
|
58
|
-
| `setUserStatusVisibility(int)` | Visibility | Show/hide online status indicators |
|
|
59
|
-
| `setReceiptsVisibility(int)` | Visibility | Show/hide read receipts |
|
|
60
|
-
| `setDeleteConversationOptionVisibility(int)` | Visibility | Show/hide delete option on swipe |
|
|
61
|
-
| `setBackIconVisibility(int)` | Visibility | Show/hide back button |
|
|
62
|
-
| `setOnError(OnError)` | Callback | Error handler |
|
|
63
|
-
| `setOnLoad(OnLoad<Conversation>)` | Callback | Called when conversations are loaded |
|
|
64
|
-
| `setOnEmpty(OnEmpty)` | Callback | Called when list is empty |
|
|
65
|
-
|
|
66
|
-
**XML usage:**
|
|
67
|
-
```xml
|
|
68
|
-
<com.cometchat.chatuikit.conversations.CometChatConversations
|
|
69
|
-
android:id="@+id/conversations"
|
|
70
|
-
android:layout_width="match_parent"
|
|
71
|
-
android:layout_height="match_parent" />
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
**Java:**
|
|
75
|
-
```java
|
|
76
|
-
CometChatConversations conversations = findViewById(R.id.conversations);
|
|
77
|
-
conversations.setOnItemClick((view, position, conversation) -> {
|
|
78
|
-
// Navigate to message screen with conversation.getConversationWith()
|
|
79
|
-
});
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
**Kotlin:**
|
|
83
|
-
```kotlin
|
|
84
|
-
val conversations = findViewById<CometChatConversations>(R.id.conversations)
|
|
85
|
-
conversations.setOnItemClick { view, position, conversation ->
|
|
86
|
-
// Navigate to message screen with conversation.conversationWith
|
|
87
|
-
}
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
### CometChatMessageList
|
|
93
|
-
|
|
94
|
-
Renders messages for a specific user or group conversation. The main chat area.
|
|
95
|
-
|
|
96
|
-
**Key methods:**
|
|
97
|
-
|
|
98
|
-
| Method | Type | Description |
|
|
99
|
-
|---|---|---|
|
|
100
|
-
| `setUser(User)` | Config | Show messages with this user (mutually exclusive with `setGroup`) |
|
|
101
|
-
| `setGroup(Group)` | Config | Show messages in this group (mutually exclusive with `setUser`) |
|
|
102
|
-
| `setParentMessage(long)` | Config | If set, shows only thread replies (note: list takes the parent ID as `long` via `setParentMessage`, NOT `setParentMessageId`) |
|
|
103
|
-
| `setOnThreadRepliesClick(ThreadReplyClick)` | Callback | Called when "Reply in Thread" is tapped |
|
|
104
|
-
| `setOnError(OnError)` | Callback | Error handler |
|
|
105
|
-
| `setOnLoad(OnLoad<BaseMessage>)` | Callback | Called when messages are loaded |
|
|
106
|
-
| `setReplyInThreadOptionVisibility(int)` | Visibility | Show/hide thread reply option |
|
|
107
|
-
| `setReplyOptionVisibility(int)` | Visibility | Show/hide reply option |
|
|
108
|
-
| `setCopyMessageOptionVisibility(int)` | Visibility | Show/hide copy option |
|
|
109
|
-
| `setEditMessageOptionVisibility(int)` | Visibility | Show/hide edit option |
|
|
110
|
-
| `setDeleteMessageOptionVisibility(int)` | Visibility | Show/hide delete option |
|
|
111
|
-
| `setReceiptsVisibility(int)` | Visibility | Show/hide read receipts |
|
|
112
|
-
| `setAvatarVisibility(int)` | Visibility | Show/hide sender avatars |
|
|
113
|
-
| `setTextFormatters(List<CometChatTextFormatter>)` | Config | Custom text formatters |
|
|
114
|
-
| `setTemplates(List<CometChatMessageTemplate>)` | Config | Custom message bubble templates |
|
|
115
|
-
|
|
116
|
-
**Java:**
|
|
117
|
-
```java
|
|
118
|
-
CometChatMessageList messageList = findViewById(R.id.messageList);
|
|
119
|
-
messageList.setUser(user); // or messageList.setGroup(group);
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
**Kotlin:**
|
|
123
|
-
```kotlin
|
|
124
|
-
val messageList = findViewById<CometChatMessageList>(R.id.messageList)
|
|
125
|
-
messageList.setUser(user) // or messageList.setGroup(group)
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
### CometChatMessageComposer
|
|
131
|
-
|
|
132
|
-
A text input with send button, attachment options, emoji, and voice note support. Sends messages to the specified user or group.
|
|
133
|
-
|
|
134
|
-
**Key methods:**
|
|
135
|
-
|
|
136
|
-
| Method | Type | Description |
|
|
137
|
-
|---|---|---|
|
|
138
|
-
| `setUser(User)` | Config | Send messages to this user |
|
|
139
|
-
| `setGroup(Group)` | Config | Send messages to this group |
|
|
140
|
-
| `setParentMessageId(long)` | Config | Thread mode — sends replies to this message |
|
|
141
|
-
| `setOnSendButtonClick(SendButtonClick)` | Callback | Custom send button handler |
|
|
142
|
-
| `setOnError(OnError)` | Callback | Error handler |
|
|
143
|
-
| `setAttachmentButtonVisibility(int)` | Visibility | Show/hide attachment button |
|
|
144
|
-
| `setVoiceNoteButtonVisibility(int)` | Visibility | Show/hide voice note button |
|
|
145
|
-
| `setSendButtonVisibility(int)` | Visibility | Show/hide send button |
|
|
146
|
-
| `setHeaderView(View)` | Custom view | Custom view above the composer |
|
|
147
|
-
| `setFooterView(View)` | Custom view | Custom view below the composer |
|
|
148
|
-
| `setAuxiliaryButtonView(View)` | Custom view | Custom auxiliary button (takes a plain `View`) |
|
|
149
|
-
| `disableTypingEvents(boolean)` | Config | Disable typing indicators (note: no `set` prefix) |
|
|
150
|
-
| `setDisableMentions(boolean)` | Config | Disable @mentions |
|
|
151
|
-
|
|
152
|
-
**Java:**
|
|
153
|
-
```java
|
|
154
|
-
CometChatMessageComposer composer = findViewById(R.id.composer);
|
|
155
|
-
composer.setUser(user); // or composer.setGroup(group);
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
**Kotlin:**
|
|
159
|
-
```kotlin
|
|
160
|
-
val composer = findViewById<CometChatMessageComposer>(R.id.composer)
|
|
161
|
-
composer.setUser(user) // or composer.setGroup(group)
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
---
|
|
165
|
-
|
|
166
|
-
### CometChatMessageHeader
|
|
167
|
-
|
|
168
|
-
Displays the name, avatar, and status of the user or group at the top of a message view.
|
|
169
|
-
|
|
170
|
-
**Key methods:**
|
|
171
|
-
|
|
172
|
-
| Method | Type | Description |
|
|
173
|
-
|---|---|---|
|
|
174
|
-
| `setUser(User)` | Config | Show header for this user |
|
|
175
|
-
| `setGroup(Group)` | Config | Show header for this group |
|
|
176
|
-
| `setBackIconVisibility(int)` | Visibility | Show/hide back button |
|
|
177
|
-
| `setOnBackPress(OnBackPress)` | Callback | Back button handler |
|
|
178
|
-
| `setUserStatusVisibility(int)` | Visibility | Show/hide online status |
|
|
179
|
-
| `setVideoCallButtonVisibility(int)` | Visibility | Show/hide video call button |
|
|
180
|
-
| `setVoiceCallButtonVisibility(int)` | Visibility | Show/hide voice call button |
|
|
181
|
-
| `setSubtitleView(Function3)` | Custom view | Custom subtitle view |
|
|
182
|
-
| `setTrailingView(Function3)` | Custom view | Custom trailing view |
|
|
183
|
-
| `setLeadingView(Function3)` | Custom view | Custom leading view |
|
|
184
|
-
|
|
185
|
-
**Java:**
|
|
186
|
-
```java
|
|
187
|
-
CometChatMessageHeader header = findViewById(R.id.header);
|
|
188
|
-
header.setUser(user);
|
|
189
|
-
header.setBackIconVisibility(View.VISIBLE);
|
|
190
|
-
header.setOnBackPress(() -> finish());
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
**Kotlin:**
|
|
194
|
-
```kotlin
|
|
195
|
-
val header = findViewById<CometChatMessageHeader>(R.id.header)
|
|
196
|
-
header.setUser(user)
|
|
197
|
-
header.setBackIconVisibility(View.VISIBLE)
|
|
198
|
-
header.setOnBackPress { finish() }
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
---
|
|
202
|
-
|
|
203
|
-
## 2. List components
|
|
204
|
-
|
|
205
|
-
### CometChatUsers
|
|
206
|
-
|
|
207
|
-
Renders a scrollable list of users with alphabetical sticky headers.
|
|
208
|
-
|
|
209
|
-
**Key methods:**
|
|
210
|
-
|
|
211
|
-
| Method | Type | Description |
|
|
212
|
-
|---|---|---|
|
|
213
|
-
| `setOnItemClick(OnItemClick<User>)` | Callback | Called when user taps a user |
|
|
214
|
-
| `setSelectionMode(UIKitConstants.SelectionMode)` | Config | `NONE`, `SINGLE`, `MULTIPLE` |
|
|
215
|
-
| `setSearchBoxVisibility(int)` | Visibility | Show/hide search bar |
|
|
216
|
-
| `setUserStatusVisibility(int)` | Visibility | Show/hide online status |
|
|
217
|
-
| `setOnSelect(OnSelection<User>)` | Callback | Called when selection changes (note: `setOnSelect` for Users + Conversations; `setOnSelection` for Groups + GroupMembers) |
|
|
218
|
-
|
|
219
|
-
### CometChatGroups
|
|
220
|
-
|
|
221
|
-
Renders a scrollable list of groups.
|
|
222
|
-
|
|
223
|
-
**Key methods:**
|
|
224
|
-
|
|
225
|
-
| Method | Type | Description |
|
|
226
|
-
|---|---|---|
|
|
227
|
-
| `setOnItemClick(OnItemClick<Group>)` | Callback | Called when user taps a group |
|
|
228
|
-
| `setSelectionMode(UIKitConstants.SelectionMode)` | Config | `NONE`, `SINGLE`, `MULTIPLE` |
|
|
229
|
-
| `setSearchBoxVisibility(int)` | Visibility | Show/hide search bar |
|
|
230
|
-
| `setOnSelection(OnSelection<Group>)` | Callback | Called when selection changes |
|
|
231
|
-
|
|
232
|
-
### CometChatGroupMembers
|
|
233
|
-
|
|
234
|
-
Renders the member list for a specific group.
|
|
235
|
-
|
|
236
|
-
**Key methods:**
|
|
237
|
-
|
|
238
|
-
| Method | Type | Description |
|
|
239
|
-
|---|---|---|
|
|
240
|
-
| `setGroup(Group)` | Config | Required — the group to show members for |
|
|
241
|
-
| `setOnItemClick(OnItemClick<GroupMember>)` | Callback | Called when user taps a member |
|
|
242
|
-
| `setSelectionMode(UIKitConstants.SelectionMode)` | Config | `NONE`, `SINGLE`, `MULTIPLE` |
|
|
243
|
-
|
|
244
|
-
---
|
|
245
|
-
|
|
246
|
-
## 3. Call components
|
|
247
|
-
|
|
248
|
-
### CometChatCallLogs
|
|
249
|
-
|
|
250
|
-
Renders a list of past calls with duration, type, and timestamp.
|
|
251
|
-
|
|
252
|
-
### CometChatIncomingCall
|
|
253
|
-
|
|
254
|
-
Incoming call notification banner with accept/reject buttons. Typically added to your root Activity layout.
|
|
255
|
-
|
|
256
|
-
### CometChatOutgoingCall
|
|
257
|
-
|
|
258
|
-
Outgoing call screen with ringing indicator.
|
|
259
|
-
|
|
260
|
-
### CometChatOngoingCall
|
|
261
|
-
|
|
262
|
-
Active call view (video/audio, controls).
|
|
263
|
-
|
|
264
|
-
---
|
|
265
|
-
|
|
266
|
-
## 4. Other components
|
|
267
|
-
|
|
268
|
-
### CometChatSearch
|
|
269
|
-
|
|
270
|
-
Search component for finding conversations and messages.
|
|
271
|
-
|
|
272
|
-
### CometChatReactionList
|
|
273
|
-
|
|
274
|
-
Full reaction list showing who reacted with which emoji.
|
|
275
|
-
|
|
276
|
-
### CometChatThreadHeader
|
|
277
|
-
|
|
278
|
-
Thread header with parent message preview and reply count.
|
|
279
|
-
|
|
280
|
-
---
|
|
281
|
-
|
|
282
|
-
## 5. Shared views (building blocks)
|
|
283
|
-
|
|
284
|
-
These are lower-level views used inside the main components:
|
|
285
|
-
|
|
286
|
-
| View | Description |
|
|
287
|
-
|---|---|
|
|
288
|
-
| `CometChatAvatar` | User/group avatar (image + fallback initials) |
|
|
289
|
-
| `CometChatBadge` | Unread count badge |
|
|
290
|
-
| `CometChatStatusIndicator` | Online/offline status dot |
|
|
291
|
-
| `CometChatMessageReceipt` | Message delivery/read receipt icons |
|
|
292
|
-
| `CometChatDate` | Formatted date display |
|
|
293
|
-
| `CometChatMessageBubble` | Message bubble container |
|
|
294
|
-
| `CometChatEmojiKeyboard` | Emoji picker grid |
|
|
295
|
-
| `CometChatConfirmDialog` | Confirmation dialog |
|
|
296
|
-
| `CometChatPopupMenu` | Context menu / popup menu |
|
|
297
|
-
|
|
298
|
-
---
|
|
299
|
-
|
|
300
|
-
## 6. Composition patterns
|
|
301
|
-
|
|
302
|
-
### Two-pane chat (conversation list + message view)
|
|
303
|
-
|
|
304
|
-
The most common pattern — conversation list on one side, active chat on the other. On phones, this is typically two Activities or Fragments with navigation between them.
|
|
305
|
-
|
|
306
|
-
**Java:**
|
|
307
|
-
```java
|
|
308
|
-
// In ConversationsFragment or Activity
|
|
309
|
-
CometChatConversations conversations = findViewById(R.id.conversations);
|
|
310
|
-
conversations.setOnItemClick((view, position, conversation) -> {
|
|
311
|
-
Intent intent = new Intent(this, MessagesActivity.class);
|
|
312
|
-
if (conversation.getConversationType().equals("user")) {
|
|
313
|
-
intent.putExtra("uid", ((User) conversation.getConversationWith()).getUid());
|
|
314
|
-
} else {
|
|
315
|
-
intent.putExtra("guid", ((Group) conversation.getConversationWith()).getGuid());
|
|
316
|
-
}
|
|
317
|
-
startActivity(intent);
|
|
318
|
-
});
|
|
319
|
-
|
|
320
|
-
// In MessagesActivity
|
|
321
|
-
CometChatMessageHeader header = findViewById(R.id.header);
|
|
322
|
-
CometChatMessageList messageList = findViewById(R.id.messageList);
|
|
323
|
-
CometChatMessageComposer composer = findViewById(R.id.composer);
|
|
324
|
-
|
|
325
|
-
String uid = getIntent().getStringExtra("uid");
|
|
326
|
-
if (uid != null) {
|
|
327
|
-
CometChat.getUser(uid, new CometChat.CallbackListener<User>() {
|
|
328
|
-
@Override
|
|
329
|
-
public void onSuccess(User user) {
|
|
330
|
-
header.setUser(user);
|
|
331
|
-
messageList.setUser(user);
|
|
332
|
-
composer.setUser(user);
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
@Override
|
|
336
|
-
public void onError(CometChatException e) { }
|
|
337
|
-
});
|
|
338
|
-
}
|
|
339
|
-
```
|
|
340
|
-
|
|
341
|
-
**Kotlin:**
|
|
342
|
-
```kotlin
|
|
343
|
-
// In ConversationsFragment or Activity
|
|
344
|
-
val conversations = findViewById<CometChatConversations>(R.id.conversations)
|
|
345
|
-
conversations.setOnItemClick { view, position, conversation ->
|
|
346
|
-
val intent = Intent(this, MessagesActivity::class.java)
|
|
347
|
-
when (conversation.conversationType) {
|
|
348
|
-
"user" -> intent.putExtra("uid", (conversation.conversationWith as User).uid)
|
|
349
|
-
"group" -> intent.putExtra("guid", (conversation.conversationWith as Group).guid)
|
|
350
|
-
}
|
|
351
|
-
startActivity(intent)
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
// In MessagesActivity
|
|
355
|
-
val header = findViewById<CometChatMessageHeader>(R.id.header)
|
|
356
|
-
val messageList = findViewById<CometChatMessageList>(R.id.messageList)
|
|
357
|
-
val composer = findViewById<CometChatMessageComposer>(R.id.composer)
|
|
358
|
-
|
|
359
|
-
val uid = intent.getStringExtra("uid")
|
|
360
|
-
uid?.let {
|
|
361
|
-
CometChat.getUser(it, object : CometChat.CallbackListener<User>() {
|
|
362
|
-
override fun onSuccess(user: User) {
|
|
363
|
-
header.setUser(user)
|
|
364
|
-
messageList.setUser(user)
|
|
365
|
-
composer.setUser(user)
|
|
366
|
-
}
|
|
367
|
-
override fun onError(e: CometChatException) { }
|
|
368
|
-
})
|
|
369
|
-
}
|
|
370
|
-
```
|
|
371
|
-
|
|
372
|
-
### Messages Activity XML layout
|
|
373
|
-
|
|
374
|
-
```xml
|
|
375
|
-
<LinearLayout
|
|
376
|
-
android:layout_width="match_parent"
|
|
377
|
-
android:layout_height="match_parent"
|
|
378
|
-
android:orientation="vertical">
|
|
379
|
-
|
|
380
|
-
<com.cometchat.chatuikit.messageheader.CometChatMessageHeader
|
|
381
|
-
android:id="@+id/header"
|
|
382
|
-
android:layout_width="match_parent"
|
|
383
|
-
android:layout_height="wrap_content" />
|
|
384
|
-
|
|
385
|
-
<com.cometchat.chatuikit.messagelist.CometChatMessageList
|
|
386
|
-
android:id="@+id/messageList"
|
|
387
|
-
android:layout_width="match_parent"
|
|
388
|
-
android:layout_height="0dp"
|
|
389
|
-
android:layout_weight="1" />
|
|
390
|
-
|
|
391
|
-
<com.cometchat.chatuikit.messagecomposer.CometChatMessageComposer
|
|
392
|
-
android:id="@+id/composer"
|
|
393
|
-
android:layout_width="match_parent"
|
|
394
|
-
android:layout_height="wrap_content" />
|
|
395
|
-
|
|
396
|
-
</LinearLayout>
|
|
397
|
-
```
|
|
398
|
-
|
|
399
|
-
### Bottom navigation with tabs (Conversations + Users + Groups + Calls)
|
|
400
|
-
|
|
401
|
-
```java
|
|
402
|
-
// In HomeActivity — switch fragments based on bottom nav selection
|
|
403
|
-
binding.bottomNavigationView.setOnItemSelectedListener(item -> {
|
|
404
|
-
Fragment fragment;
|
|
405
|
-
if (item.getItemId() == R.id.nav_chats) {
|
|
406
|
-
fragment = new ChatsFragment();
|
|
407
|
-
} else if (item.getItemId() == R.id.nav_users) {
|
|
408
|
-
fragment = new UsersFragment();
|
|
409
|
-
} else if (item.getItemId() == R.id.nav_groups) {
|
|
410
|
-
fragment = new GroupsFragment();
|
|
411
|
-
} else if (item.getItemId() == R.id.nav_calls) {
|
|
412
|
-
fragment = new CallsFragment();
|
|
413
|
-
} else {
|
|
414
|
-
return false;
|
|
415
|
-
}
|
|
416
|
-
getSupportFragmentManager().beginTransaction()
|
|
417
|
-
.replace(R.id.fragment_container, fragment)
|
|
418
|
-
.commit();
|
|
419
|
-
return true;
|
|
420
|
-
});
|
|
421
|
-
```
|
|
422
|
-
|
|
423
|
-
---
|
|
424
|
-
|
|
425
|
-
## Hard rules
|
|
426
|
-
|
|
427
|
-
- **Never invent component names.** If it's not in this catalog, it doesn't exist.
|
|
428
|
-
- **`setUser()` and `setGroup()` are mutually exclusive.** Set one or the other, never both.
|
|
429
|
-
- **Components require a logged-in user.** Always verify `CometChatUIKit.getLoggedInUser() != null` before mounting.
|
|
430
|
-
- **All components extend `MaterialCardView`.** They can be used in XML or created programmatically.
|
|
431
|
-
- **Thread mode** — `CometChatMessageList.setParentMessage(long)` (no `Id` suffix on the list) and `CometChatMessageComposer.setParentMessageId(long)`. Both must point to the same parent message ID. Without them, the list and composer show the main conversation, not the thread.
|