This commit is contained in:
Viktoria Polyakova
2026-01-25 15:57:18 +03:00
parent 9626c9f3be
commit 0a9c3f5bc4
2809 changed files with 182961 additions and 0 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

Binary file not shown.

View File

@@ -0,0 +1,2 @@
#Sat Jan 17 17:02:16 MSK 2026
gradle.version=8.13

Binary file not shown.

BIN
.gradle/file-system.probe Normal file

Binary file not shown.

View File

188
API_ANALYSIS.md Normal file
View File

@@ -0,0 +1,188 @@
# Анализ соответствия API чата между Android приложением и бэкендом
## Обзор
Проанализированы API чата в Android приложении и бэкенд-системе для выявления соответствий и несоответствий.
## Android API (ChatApiService.kt)
### Доступные эндпоинты:
1. **Провайдеры чата**
- `GET /api/chat/providers` - Получение списка провайдеров чата
2. **Чаты**
- `GET /api/chat/chats` - Получение списка чатов
- `GET /api/chat/chats/{chatId}` - Получение конкретного чата
- `DELETE /api/chat/chats/{chatId}` - Удаление чата
3. **Сообщения чата**
- `GET /api/chat/chats/{chatId}/messages` - Получение сообщений чата
- `POST /api/chat/chats/{chatId}/messages` - Отправка сообщения
- `PUT /api/chat/chats/{chatId}/messages/{messageId}/status/{status}` - Обновление статуса сообщения
- `PUT /api/chat/chats/{chatId}/status/read` - Отметка всех сообщений как прочитанных
4. **Непрочитанные сообщения**
- `GET /api/chat/unseen-count` - Получение количества непрочитанных сообщений
## Бэкенд API (NestJS)
### Доступные эндпоинты:
#### ChatController (api/chat/chats)
- `POST /api/chat/chats/personal` - Создание личного чата
- `POST /api/chat/chats/group` - Создание группового чата
- `POST /api/chat/chats/external` - Создание внешнего чата
- `GET /api/chat/chats/group/exists/:entityId` - Проверка существования чата по entity
- `GET /api/chat/chats` - Получение чатов с пагинацией
- `GET /api/chat/chats/find` - Поиск чатов (простой)
- `GET /api/chat/chats/find/full` - Поиск чатов (полный)
- `GET /api/chat/chats/find/full/personal` - Поиск личных чатов
- `GET /api/chat/chats/find/full/by-message-content` - Поиск по содержанию сообщений
- `GET /api/chat/chats/:chatId` - Получение чата по ID
- `PATCH /api/chat/chats/group/:chatId` - Обновление группового чата
- `DELETE /api/chat/chats/:chatId` - Удаление чата
- `PUT /api/chat/chats/:chatId/pin/:messageId` - Закрепление сообщения
- `PUT /api/chat/chats/:chatId/unpin/:messageId` - Открепление сообщения
- `PUT /api/chat/chats/:chatId/status/:status` - Обновление статуса сообщений
- `POST /api/chat/chats/:chatId/contact` - Создание контакта и лида
#### ChatMessageController (api/chat/chats/:chatId/messages)
- `POST /api/chat/chats/:chatId/messages` - Создание сообщения
- `GET /api/chat/chats/:chatId/messages` - Получение сообщений
- `GET /api/chat/chats/:chatId/messages/:messageId` - Получение конкретного сообщения
- `PUT /api/chat/chats/:chatId/messages/:messageId` - Обновление сообщения
- `DELETE /api/chat/chats/:chatId/messages/:messageId` - Удаление сообщения
- `POST /api/chat/chats/:chatId/messages/status/:status` - Обновление статуса сообщений (массовое)
- `PUT /api/chat/chats/:chatId/messages/:messageId/status/:status` - Обновление статуса сообщения
- `PUT /api/chat/chats/:chatId/messages/:messageId/react/:reaction` - Реакция на сообщение
- `PUT /api/chat/chats/:chatId/messages/:messageId/unreact/:reactionId` - Удаление реакции
#### MultichatController (api/chat)
- `GET /api/chat/unseen-count` - Получение количества непрочитанных сообщений
## Соответствия API
### ✅ Полностью соответствующие эндпоинты:
1. **Получение списка провайдеров**
- Android: `GET /api/chat/providers`
- Backend: `GET /api/chat/providers`
2. **Получение списка чатов**
- Android: `GET /api/chat/chats`
- Backend: `GET /api/chat/chats`
3. **Получение конкретного чата**
- Android: `GET /api/chat/chats/{chatId}`
- Backend: `GET /api/chat/chats/:chatId`
4. **Удаление чата**
- Android: `DELETE /api/chat/chats/{chatId}`
- Backend: `DELETE /api/chat/chats/:chatId`
5. **Получение сообщений чата**
- Android: `GET /api/chat/chats/{chatId}/messages`
- Backend: `GET /api/chat/chats/:chatId/messages`
6. **Отправка сообщения**
- Android: `POST /api/chat/chats/{chatId}/messages`
- Backend: `POST /api/chat/chats/:chatId/messages`
7. **Обновление статуса сообщения**
- Android: `PUT /api/chat/chats/{chatId}/messages/{messageId}/status/{status}`
- Backend: `PUT /api/chat/chats/:chatId/messages/:messageId/status/:status`
8. **Получение количества непрочитанных сообщений**
- Android: `GET /api/chat/unseen-count`
- Backend: `GET /api/chat/unseen-count`
## Несоответствия и недостающие функции
### ❌ Отсутствующие в Android API:
1. **Создание чатов**
- Личные чаты: `POST /api/chat/chats/personal`
- Групповые чаты: `POST /api/chat/chats/group`
- Внешние чаты: `POST /api/chat/chats/external`
2. **Поиск чатов**
- Простой поиск: `GET /api/chat/chats/find`
- Полный поиск: `GET /api/chat/chats/find/full`
- Поиск по имени пользователя: `GET /api/chat/chats/find/full/personal`
- Поиск по содержанию сообщений: `GET /api/chat/chats/find/full/by-message-content`
3. **Управление чатами**
- Обновление группового чата: `PATCH /api/chat/chats/group/:chatId`
- Закрепление сообщений: `PUT /api/chat/chats/:chatId/pin/:messageId`
- Открепление сообщений: `PUT /api/chat/chats/:chatId/unpin/:messageId`
- Создание контактов: `POST /api/chat/chats/:chatId/contact`
4. **Расширенное управление сообщениями**
- Массовое обновление статуса: `POST /api/chat/chats/:chatId/messages/status/:status`
- Реакции на сообщения: `PUT /api/chat/chats/:chatId/messages/:messageId/react/:reaction`
- Удаление реакций: `PUT /api/chat/chats/:chatId/messages/:messageId/unreact/:reactionId`
- Удаление сообщений: `DELETE /api/chat/chats/:chatId/messages/:messageId`
5. **Дополнительные функции**
- Проверка существования чата: `GET /api/chat/chats/group/exists/:entityId`
## Рекомендации по улучшению Android API
### 1. Добавить создание чатов
```kotlin
// Добавить в ChatApiService
@POST("api/chat/chats/personal")
suspend fun createPersonalChat(@Body request: CreatePersonalChatRequest): Response<Chat>
@POST("api/chat/chats/group")
suspend fun createGroupChat(@Body request: CreateGroupChatRequest): Response<Chat>
@POST("api/chat/chats/external")
suspend fun createExternalChat(@Body request: CreateExternalChatRequest): Response<Chat>
```
### 2. Добавить поиск чатов
```kotlin
// Добавить в ChatApiService
@GET("api/chat/chats/find")
suspend fun findChats(@QueryMap filters: Map<String, String>): Response<ChatsResponse>
@GET("api/chat/chats/find/full")
suspend fun findChatsFull(@QueryMap filters: Map<String, String>): Response<ChatsResponse>
```
### 3. Добавить управление сообщениями
```kotlin
// Добавить в ChatApiService
@DELETE("api/chat/chats/{chatId}/messages/{messageId}")
suspend fun deleteMessage(@Path("chatId") chatId: Long, @Path("messageId") messageId: Long): Response<Unit>
@PUT("api/chat/chats/{chatId}/messages/{messageId}/react/{reaction}")
suspend fun reactToMessage(
@Path("chatId") chatId: Long,
@Path("messageId") messageId: Long,
@Path("reaction") reaction: String
): Response<ChatMessage>
@POST("api/chat/chats/{chatId}/messages/status/{status}")
suspend fun updateMessagesStatus(
@Path("chatId") chatId: Long,
@Path("status") status: String,
@Body messageIds: List<Long>
): Response<List<ChatMessage>>
```
### 4. Добавить управление чатами
```kotlin
// Добавить в ChatApiService
@PUT("api/chat/chats/{chatId}/pin/{messageId}")
suspend fun pinMessage(@Path("chatId") chatId: Long, @Path("messageId") messageId: Long): Response<Chat>
@PUT("api/chat/chats/{chatId}/unpin/{messageId}")
suspend fun unpinMessage(@Path("chatId") chatId: Long, @Path("messageId") messageId: Long): Response<Chat>
```
## Заключение
Android API имеет хорошее соответствие с бэкендом для базовых операций (получение чатов, сообщений, отправка сообщений), но отсутствует множество функций для полноценного управления чатами. Для создания полноценного чат-клиента рекомендуется расширить Android API в соответствии с доступными бэкенд-эндпоинтами.

205
ENHANCED_FEATURES.md Normal file
View File

@@ -0,0 +1,205 @@
# Расширенный функционал Android приложения CRM Чат
## Обзор
В приложение добавлен расширенный функционал для полноценной работы с чатами, соответствующий всем доступным бэкенд-эндпоинтам.
## Новые возможности
### 1. Создание чатов
#### Личные чаты
- Создание прямых чатов с другими пользователями
- Выбор провайдера для подключения
- Привязка к сущностям CRM
#### Групповые чаты
- Создание групповых чатов с несколькими участниками
- Назначение названия группы
- Возможность привязки к сущностям CRM
- Массовое добавление участников через список ID
#### Внешние чаты
- Создание чатов с внешними пользователями
- Возможность привязки к сущностям CRM
- Поддержка внешних пользователей с уникальными идентификаторами
### 2. Поиск и фильтрация чатов
#### Простой поиск
- Поиск чатов по различным критериям
- Поддержка фильтрации по провайдерам
- Пагинация результатов
#### Расширенный поиск
- Поиск по имени пользователя
- Поиск по содержанию сообщений
- Получение полной информации о чатах (участники, последнее сообщение, сущности)
### 3. Управление сообщениями
#### Отправка сообщений
- Текстовые сообщения
- Сообщения с файлами
- Цитирование других сообщений
#### Реакции на сообщения
- Добавление реакций (👍, ❤️, 😂 и др.)
- Удаление реакций
- Отображение всех реакций на сообщение
#### Статусы сообщений
- Отслеживание статусов доставки и прочтения
- Массовое обновление статусов
- Отметка всех сообщений в чате как прочитанных
#### Управление сообщениями
- Редактирование собственных сообщений
- Удаление сообщений
- Закрепление важных сообщений
### 4. Управление чатами
#### Обновление чатов
- Изменение названия групповых чатов
- Управление списком участников
- Обновление настроек чата
#### Закрепление сообщений
- Закрепление важных сообщений в чате
- Открепление сообщений
- Отображение закрепленных сообщений
#### Интеграция с CRM
- Создание контактов и лидов из внешних чатов
- Привязка чатов к сущностям CRM
- Автоматическое создание сущностей при необходимости
### 5. Счетчики и уведомления
#### Непрочитанные сообщения
- Получение общего количества непрочитанных сообщений
- Отображение счетчиков на иконках приложения
- Уведомления о новых сообщениях
#### Статусы пользователей
- Отображение онлайн-статусов
- Индикация активности в чатах
- Статусы набора текста
## Архитектура
### Модели данных
- **ChatRequests.kt** - Запросы для создания и управления чатами
- **ChatModels.kt** - Основные модели чатов и сообщений
- **EntityInfo** - Информация о сущностях CRM
### Слой API
- **ChatApiService.kt** - Расширенный интерфейс API с 25+ эндпоинтами
- Поддержка всех типов чатов и сообщений
- Полная интеграция с бэкендом
### Слой репозитория
- **ChatRepository.kt** - Централизованное управление данными чатов
- Обработка ошибок и логирование
- Поддержка всех операций с чатами
### Слой ViewModel
- **MainViewModel.kt** - Управление состоянием экрана чатов
- **ChatViewModel.kt** - Управление состоянием конкретного чата
- Обработка пользовательских действий
### UI слой
- **CreateChatActivity.kt** - Экран создания чатов
- **activity_create_chat.xml** - Интерфейс для создания чатов
- **ChatAdapter.kt** - Адаптер для отображения сообщений
## Технические особенности
### Безопасность
- Использование API ключей для аутентификации
- Защита токенов доступа
- Валидация входных данных
### Производительность
- Пагинация для больших списков чатов
- Кэширование данных
- Асинхронная загрузка
### Обработка ошибок
- Детальные сообщения об ошибках
- Автоматическое восстановление после сбоев
- Логирование для диагностики
### UX/UI
- Интуитивно понятный интерфейс
- Адаптивный дизайн
- Поддержка темной темы
- Анимации переходов
## Интеграция с бэкендом
### Соответствие API
- Полное соответствие бэкенд-эндпоинтам
- Поддержка всех типов провайдеров
- Совместимость с существующей инфраструктурой
### Расширенные возможности
- Поддержка WebSocket для реального времени
- Push-уведомления
- Синхронизация данных между устройствами
## Тестирование
### Unit-тесты
- **ChatRepositoryTest.kt** - Тесты для слоя репозитория
- **AuthViewModelTest.kt** - Тесты для ViewModel авторизации
- Покрытие всех основных сценариев
### Интеграционные тесты
- Тестирование взаимодействия с бэкендом
- Проверка обработки ошибок
- Тестирование производительности
## Документация
### API Analysis
- **API_ANALYSIS.md** - Подробный анализ соответствия API
- Сравнение Android и бэкенд API
- Рекомендации по использованию
### Руководства
- **TROUBLESHOOTING.md** - Руководство по устранению неполадок
- **README.md** - Общее описание приложения
- **ENHANCED_FEATURES.md** - Это руководство
## Планы развития
### Ближайшие улучшения
1. Добавление поддержки WebSocket для реального времени
2. Реализация push-уведомлений
3. Поддержка голосовых и видео сообщений
4. Интеграция с файловыми хранилищами
### Долгосрочные планы
1. Поддержка тем и стикеров
2. Интеграция с календарем
3. Возможность проведения голосований в чатах
4. Аналитика использования чатов
## Требования к окружению
### Android
- Минимальная версия: Android 7.0 (API 24)
- Kotlin 1.8+
- AndroidX
### Зависимости
- Retrofit 2.9+ для HTTP запросов
- OkHttp 4.10+ для управления соединениями
- Coroutines для асинхронных операций
- Material Components для UI
## Заключение
Расширенный функционал делает Android приложение полноценным клиентом для работы с чатами в CRM системе. Приложение теперь поддерживает все основные операции с чатами, соответствует бэкенд API и предоставляет пользователям удобный и функциональный интерфейс для общения.

85
README.md Normal file
View File

@@ -0,0 +1,85 @@
# CRM Чат - Мобильное приложение
Мобильное приложение для подключения к CRM системе через чат.
## Особенности
- Авторизация через email и пароль
- Подключение к серверу CRM по умолчанию (crm.mcmed.ru)
- Использование API ключа для аутентификации
- Информативные сообщения об ошибках
- Автоматическое сохранение данных авторизации
## Технические детали
### Конфигурация по умолчанию
Приложение использует следующие константы для подключения:
```kotlin
object AppConstants {
const val API_KEY = "KxBBliOsuVkfRSQzmWNYFJ"
const val SERVER_URL = "https://crm.mcmed.ru"
}
```
### Архитектура
Приложение построено по архитектуре MVVM:
- **Model**: `AuthRepository`, `AuthResponse`, `LoginRequest`
- **View**: `AuthActivity`, `activity_auth.xml`
- **ViewModel**: `AuthViewModel`
### Сетевые запросы
- Используется Retrofit для HTTP запросов
- OkHttp для управления соединением
- Таймаут соединения: 30 секунд
- Логирование HTTP запросов и ответов
### Эндпоинты
- `POST /api/iam/auth/login-site` - авторизация пользователя
## Установка и запуск
1. Клонируйте репозиторий
2. Откройте проект в Android Studio
3. Соберите и запустите приложение на устройстве или эмуляторе
## Авторизация
Для входа в систему необходимо:
1. Ввести email
2. Ввести пароль
3. Нажать кнопку "Войти"
Приложение автоматически использует:
- URL сервера: `https://crm.mcmed.ru`
- API ключ: `KxBBliOsuVkfRSQzmWNYFJ`
## Обработка ошибок
Приложение предоставляет подробные сообщения об ошибках:
- **Сетевые ошибки**: проблемы с подключением к интернету
- **HTTP ошибки**: 401 (неверные учетные данные), 403 (доступ запрещен), 404 (сервер не найден) и др.
- **Пустые ответы**: когда сервер возвращает пустой токен или null
- **Валидация**: проверка обязательных полей
## Тестирование
Проект включает unit-тесты:
- `AuthRepositoryTest.kt` - тесты для репозитория авторизации
- `AuthViewModelTest.kt` - тесты для ViewModel авторизации
## Устранение неполадок
Подробное руководство по устранению ошибок доступно в файле [TROUBLESHOOTING.md](TROUBLESHOOTING.md).
## Лицензия
Этот проект является частью CRM системы.

96
TROUBLESHOOTING.md Normal file
View File

@@ -0,0 +1,96 @@
# Руководство по устранению ошибок авторизации
## Ошибка: "Сервер вернул пустой или некорректный ответ"
Эта ошибка может возникать по нескольким причинам. Ниже приведены возможные причины и способы их устранения.
### Возможные причины
1. **Неправильный URL сервера**
- URL должен начинаться с `http://` или `https://`
- Проверьте, что URL введен полностью и правильно
- Пример правильного URL: `https://crm.example.com`
2. **Проблемы с подключением к серверу**
- Проверьте интернет-соединение
- Убедитесь, что сервер доступен
- Проверьте, не блокирует ли брандмауэр соединение
3. **Неверные учетные данные**
- Проверьте правильность email и пароля
- Убедитесь, что учетная запись активна
4. **Неправильный API ключ**
- Проверьте, что API ключ введен правильно
- Убедитесь, что API ключ активен и имеет необходимые права
5. **Проблемы на стороне сервера**
- Сервер может быть временно недоступен
- Возможны проблемы с базой данных
- Сервер может возвращать пустой ответ из-за внутренних ошибок
### Пошаговая диагностика
1. **Проверьте вводимые данные**
- Убедитесь, что все поля заполнены
- Проверьте формат email
- Убедитесь, что URL начинается с `http://` или `https://`
2. **Проверьте подключение**
- Попробуйте открыть URL сервера в браузере
- Проверьте, доступен ли сервер из вашей сети
3. **Проверьте логи приложения**
- Включите отладочные логи в Android Studio
- Ищите сообщения с тегом `AuthRepository`
- Обратите внимание на коды HTTP ответов
4. **Проверьте API ключ**
- Убедитесь, что API ключ действителен
- Проверьте, имеет ли ключ необходимые права доступа
### Коды HTTP ошибок и их значения
- **400** - Некорректный запрос. Проверьте введенные данные и формат email.
- **401** - Неверный email или пароль. Проверьте правильность введенных данных.
- **403** - Доступ запрещен. Проверьте API ключ и права доступа.
- **404** - Сервер не найден. Проверьте URL сервера и подключение к сети.
- **405** - Метод не разрешен. Эндпоинт не существует или недоступен.
- **422** - Некорректные данные. Проверьте формат email и пароля.
- **500** - Ошибка сервера. Сервер временно недоступен, попробуйте позже.
- **502, 503, 504** - Проблемы с сервером. Проверьте подключение к серверу.
### Сетевые ошибки
- **UnknownHostException** - Нет подключения к серверу. Проверьте интернет-соединение и правильность URL.
- **SocketTimeoutException** - Таймаут соединения. Проверьте подключение к серверу и попробуйте снова.
- **IOException** - Ошибка сети. Проверьте подключение к интернету.
### Если проблема не решена
1. **Перезапустите приложение**
2. **Проверьте версию приложения** - убедитесь, что используется последняя версия
3. **Обратитесь в поддержку** - предоставьте:
- Текст ошибки
- Логи приложения (с тегом `AuthRepository`)
- Используемый URL сервера
- Версию приложения
### Примеры правильного ввода данных
```
URL сервера: https://crm.example.com
Email: user@example.com
Пароль: your_password
API Key: your_api_key_here
```
### Техническая информация для разработчиков
Приложение использует следующие эндпоинты для авторизации:
- `POST /api/iam/auth/login-site` - для авторизации через сайт
- `POST /api/iam/auth/login-ext` - для авторизации через расширение
Все запросы выполняются с использованием Retrofit и OkHttp с таймаутом 30 секунд.
Для диагностики проблем рекомендуется включить уровень логирования `BODY` в OkHttpInterceptor.

91
app/build.gradle Normal file
View File

@@ -0,0 +1,91 @@
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
}
android {
namespace 'com.crm.chat'
compileSdk 36
defaultConfig {
applicationId "com.crm.chat"
minSdk 21
targetSdk 34
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
signingConfigs {
release {
storeFile file(RELEASE_STORE_FILE)
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = '11'
}
buildFeatures {
viewBinding true
}
}
repositories {
google()
mavenCentral()
}
dependencies {
implementation 'androidx.core:core-ktx:1.12.0'
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.7.0'
implementation 'androidx.activity:activity-compose:1.8.2'
implementation 'androidx.fragment:fragment-ktx:1.6.2'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.11.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
// HTTP client
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.okhttp3:logging-interceptor:4.12.0'
// WebSocket
implementation 'com.squareup.okhttp3:okhttp:4.12.0'
// Image loading
implementation 'com.github.bumptech.glide:glide:4.16.0'
// JSON parsing
implementation 'com.google.code.gson:gson:2.10.1'
// Room database
implementation 'androidx.room:room-runtime:2.6.1'
implementation 'androidx.room:room-ktx:2.6.1'
// WorkManager
implementation 'androidx.work:work-runtime-ktx:2.9.0'
testImplementation 'junit:junit:4.13.2'
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.7.3'
testImplementation 'io.mockk:mockk:1.13.8'
testImplementation 'androidx.arch.core:core-testing:2.2.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
}

View File

@@ -0,0 +1,169 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityAuthBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton additionalSettingsButton;
@NonNull
public final TextView descriptionTextView;
@NonNull
public final TextInputEditText emailEditText;
@NonNull
public final TextInputLayout emailInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final MaterialButton loginButton;
@NonNull
public final TextInputEditText passwordEditText;
@NonNull
public final TextInputLayout passwordInputLayout;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final TextView titleTextView;
private ActivityAuthBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton additionalSettingsButton, @NonNull TextView descriptionTextView,
@NonNull TextInputEditText emailEditText, @NonNull TextInputLayout emailInputLayout,
@NonNull TextView errorTextView, @NonNull MaterialButton loginButton,
@NonNull TextInputEditText passwordEditText, @NonNull TextInputLayout passwordInputLayout,
@NonNull ProgressBar progressBar, @NonNull TextView titleTextView) {
this.rootView = rootView;
this.additionalSettingsButton = additionalSettingsButton;
this.descriptionTextView = descriptionTextView;
this.emailEditText = emailEditText;
this.emailInputLayout = emailInputLayout;
this.errorTextView = errorTextView;
this.loginButton = loginButton;
this.passwordEditText = passwordEditText;
this.passwordInputLayout = passwordInputLayout;
this.progressBar = progressBar;
this.titleTextView = titleTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityAuthBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityAuthBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_auth, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityAuthBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.additionalSettingsButton;
MaterialButton additionalSettingsButton = ViewBindings.findChildViewById(rootView, id);
if (additionalSettingsButton == null) {
break missingId;
}
id = R.id.descriptionTextView;
TextView descriptionTextView = ViewBindings.findChildViewById(rootView, id);
if (descriptionTextView == null) {
break missingId;
}
id = R.id.emailEditText;
TextInputEditText emailEditText = ViewBindings.findChildViewById(rootView, id);
if (emailEditText == null) {
break missingId;
}
id = R.id.emailInputLayout;
TextInputLayout emailInputLayout = ViewBindings.findChildViewById(rootView, id);
if (emailInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.loginButton;
MaterialButton loginButton = ViewBindings.findChildViewById(rootView, id);
if (loginButton == null) {
break missingId;
}
id = R.id.passwordEditText;
TextInputEditText passwordEditText = ViewBindings.findChildViewById(rootView, id);
if (passwordEditText == null) {
break missingId;
}
id = R.id.passwordInputLayout;
TextInputLayout passwordInputLayout = ViewBindings.findChildViewById(rootView, id);
if (passwordInputLayout == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.titleTextView;
TextView titleTextView = ViewBindings.findChildViewById(rootView, id);
if (titleTextView == null) {
break missingId;
}
return new ActivityAuthBinding((ConstraintLayout) rootView, additionalSettingsButton,
descriptionTextView, emailEditText, emailInputLayout, errorTextView, loginButton,
passwordEditText, passwordInputLayout, progressBar, titleTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,237 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.textfield.TextInputEditText;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton attachButton;
@NonNull
public final ConstraintLayout attachmentIndicators;
@NonNull
public final ConstraintLayout fileAttachmentIndicator;
@NonNull
public final TextView fileAttachmentText;
@NonNull
public final ImageButton fileCancelButton;
@NonNull
public final ProgressBar loadingProgressBar;
@NonNull
public final TextInputEditText messageEditText;
@NonNull
public final ConstraintLayout messageInputLayout;
@NonNull
public final RecyclerView messagesRecyclerView;
@NonNull
public final ImageButton replyCancelButton;
@NonNull
public final ConstraintLayout replyIndicator;
@NonNull
public final TextView replyMessageText;
@NonNull
public final TextView replySenderText;
@NonNull
public final FloatingActionButton scrollToBottomFab;
@NonNull
public final MaterialButton sendButton;
@NonNull
public final Toolbar toolbar;
private ActivityChatBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton attachButton, @NonNull ConstraintLayout attachmentIndicators,
@NonNull ConstraintLayout fileAttachmentIndicator, @NonNull TextView fileAttachmentText,
@NonNull ImageButton fileCancelButton, @NonNull ProgressBar loadingProgressBar,
@NonNull TextInputEditText messageEditText, @NonNull ConstraintLayout messageInputLayout,
@NonNull RecyclerView messagesRecyclerView, @NonNull ImageButton replyCancelButton,
@NonNull ConstraintLayout replyIndicator, @NonNull TextView replyMessageText,
@NonNull TextView replySenderText, @NonNull FloatingActionButton scrollToBottomFab,
@NonNull MaterialButton sendButton, @NonNull Toolbar toolbar) {
this.rootView = rootView;
this.attachButton = attachButton;
this.attachmentIndicators = attachmentIndicators;
this.fileAttachmentIndicator = fileAttachmentIndicator;
this.fileAttachmentText = fileAttachmentText;
this.fileCancelButton = fileCancelButton;
this.loadingProgressBar = loadingProgressBar;
this.messageEditText = messageEditText;
this.messageInputLayout = messageInputLayout;
this.messagesRecyclerView = messagesRecyclerView;
this.replyCancelButton = replyCancelButton;
this.replyIndicator = replyIndicator;
this.replyMessageText = replyMessageText;
this.replySenderText = replySenderText;
this.scrollToBottomFab = scrollToBottomFab;
this.sendButton = sendButton;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.attachButton;
MaterialButton attachButton = ViewBindings.findChildViewById(rootView, id);
if (attachButton == null) {
break missingId;
}
id = R.id.attachmentIndicators;
ConstraintLayout attachmentIndicators = ViewBindings.findChildViewById(rootView, id);
if (attachmentIndicators == null) {
break missingId;
}
id = R.id.fileAttachmentIndicator;
ConstraintLayout fileAttachmentIndicator = ViewBindings.findChildViewById(rootView, id);
if (fileAttachmentIndicator == null) {
break missingId;
}
id = R.id.fileAttachmentText;
TextView fileAttachmentText = ViewBindings.findChildViewById(rootView, id);
if (fileAttachmentText == null) {
break missingId;
}
id = R.id.fileCancelButton;
ImageButton fileCancelButton = ViewBindings.findChildViewById(rootView, id);
if (fileCancelButton == null) {
break missingId;
}
id = R.id.loadingProgressBar;
ProgressBar loadingProgressBar = ViewBindings.findChildViewById(rootView, id);
if (loadingProgressBar == null) {
break missingId;
}
id = R.id.messageEditText;
TextInputEditText messageEditText = ViewBindings.findChildViewById(rootView, id);
if (messageEditText == null) {
break missingId;
}
id = R.id.messageInputLayout;
ConstraintLayout messageInputLayout = ViewBindings.findChildViewById(rootView, id);
if (messageInputLayout == null) {
break missingId;
}
id = R.id.messagesRecyclerView;
RecyclerView messagesRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (messagesRecyclerView == null) {
break missingId;
}
id = R.id.replyCancelButton;
ImageButton replyCancelButton = ViewBindings.findChildViewById(rootView, id);
if (replyCancelButton == null) {
break missingId;
}
id = R.id.replyIndicator;
ConstraintLayout replyIndicator = ViewBindings.findChildViewById(rootView, id);
if (replyIndicator == null) {
break missingId;
}
id = R.id.replyMessageText;
TextView replyMessageText = ViewBindings.findChildViewById(rootView, id);
if (replyMessageText == null) {
break missingId;
}
id = R.id.replySenderText;
TextView replySenderText = ViewBindings.findChildViewById(rootView, id);
if (replySenderText == null) {
break missingId;
}
id = R.id.scrollToBottomFab;
FloatingActionButton scrollToBottomFab = ViewBindings.findChildViewById(rootView, id);
if (scrollToBottomFab == null) {
break missingId;
}
id = R.id.sendButton;
MaterialButton sendButton = ViewBindings.findChildViewById(rootView, id);
if (sendButton == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityChatBinding((ConstraintLayout) rootView, attachButton,
attachmentIndicators, fileAttachmentIndicator, fileAttachmentText, fileCancelButton,
loadingProgressBar, messageEditText, messageInputLayout, messagesRecyclerView,
replyCancelButton, replyIndicator, replyMessageText, replySenderText, scrollToBottomFab,
sendButton, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,333 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityCreateChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextView chatTypeLabel;
@NonNull
public final RadioGroup chatTypeRadioGroup;
@NonNull
public final TextView companionLabel;
@NonNull
public final MaterialButton createButton;
@NonNull
public final TextInputEditText entityEditText;
@NonNull
public final TextInputLayout entityInputLayout;
@NonNull
public final TextView entityLabel;
@NonNull
public final TextView errorTextView;
@NonNull
public final TextInputEditText externalTitleEditText;
@NonNull
public final TextInputLayout externalTitleInputLayout;
@NonNull
public final TextView externalTitleLabel;
@NonNull
public final TextInputEditText groupTitleEditText;
@NonNull
public final TextInputLayout groupTitleInputLayout;
@NonNull
public final TextView groupTitleLabel;
@NonNull
public final TextInputEditText participantsEditText;
@NonNull
public final TextInputLayout participantsInputLayout;
@NonNull
public final TextView participantsLabel;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final TextView providerInfo;
@NonNull
public final RadioButton radioExternal;
@NonNull
public final RadioButton radioGroup;
@NonNull
public final RadioButton radioPersonal;
@NonNull
public final MaterialButton selectUserButton;
@NonNull
public final TextView selectedUserTextView;
@NonNull
public final TextView titleTextView;
private ActivityCreateChatBinding(@NonNull ConstraintLayout rootView,
@NonNull TextView chatTypeLabel, @NonNull RadioGroup chatTypeRadioGroup,
@NonNull TextView companionLabel, @NonNull MaterialButton createButton,
@NonNull TextInputEditText entityEditText, @NonNull TextInputLayout entityInputLayout,
@NonNull TextView entityLabel, @NonNull TextView errorTextView,
@NonNull TextInputEditText externalTitleEditText,
@NonNull TextInputLayout externalTitleInputLayout, @NonNull TextView externalTitleLabel,
@NonNull TextInputEditText groupTitleEditText, @NonNull TextInputLayout groupTitleInputLayout,
@NonNull TextView groupTitleLabel, @NonNull TextInputEditText participantsEditText,
@NonNull TextInputLayout participantsInputLayout, @NonNull TextView participantsLabel,
@NonNull ProgressBar progressBar, @NonNull TextView providerInfo,
@NonNull RadioButton radioExternal, @NonNull RadioButton radioGroup,
@NonNull RadioButton radioPersonal, @NonNull MaterialButton selectUserButton,
@NonNull TextView selectedUserTextView, @NonNull TextView titleTextView) {
this.rootView = rootView;
this.chatTypeLabel = chatTypeLabel;
this.chatTypeRadioGroup = chatTypeRadioGroup;
this.companionLabel = companionLabel;
this.createButton = createButton;
this.entityEditText = entityEditText;
this.entityInputLayout = entityInputLayout;
this.entityLabel = entityLabel;
this.errorTextView = errorTextView;
this.externalTitleEditText = externalTitleEditText;
this.externalTitleInputLayout = externalTitleInputLayout;
this.externalTitleLabel = externalTitleLabel;
this.groupTitleEditText = groupTitleEditText;
this.groupTitleInputLayout = groupTitleInputLayout;
this.groupTitleLabel = groupTitleLabel;
this.participantsEditText = participantsEditText;
this.participantsInputLayout = participantsInputLayout;
this.participantsLabel = participantsLabel;
this.progressBar = progressBar;
this.providerInfo = providerInfo;
this.radioExternal = radioExternal;
this.radioGroup = radioGroup;
this.radioPersonal = radioPersonal;
this.selectUserButton = selectUserButton;
this.selectedUserTextView = selectedUserTextView;
this.titleTextView = titleTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityCreateChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityCreateChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_create_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityCreateChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatTypeLabel;
TextView chatTypeLabel = ViewBindings.findChildViewById(rootView, id);
if (chatTypeLabel == null) {
break missingId;
}
id = R.id.chatTypeRadioGroup;
RadioGroup chatTypeRadioGroup = ViewBindings.findChildViewById(rootView, id);
if (chatTypeRadioGroup == null) {
break missingId;
}
id = R.id.companionLabel;
TextView companionLabel = ViewBindings.findChildViewById(rootView, id);
if (companionLabel == null) {
break missingId;
}
id = R.id.createButton;
MaterialButton createButton = ViewBindings.findChildViewById(rootView, id);
if (createButton == null) {
break missingId;
}
id = R.id.entityEditText;
TextInputEditText entityEditText = ViewBindings.findChildViewById(rootView, id);
if (entityEditText == null) {
break missingId;
}
id = R.id.entityInputLayout;
TextInputLayout entityInputLayout = ViewBindings.findChildViewById(rootView, id);
if (entityInputLayout == null) {
break missingId;
}
id = R.id.entityLabel;
TextView entityLabel = ViewBindings.findChildViewById(rootView, id);
if (entityLabel == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.externalTitleEditText;
TextInputEditText externalTitleEditText = ViewBindings.findChildViewById(rootView, id);
if (externalTitleEditText == null) {
break missingId;
}
id = R.id.externalTitleInputLayout;
TextInputLayout externalTitleInputLayout = ViewBindings.findChildViewById(rootView, id);
if (externalTitleInputLayout == null) {
break missingId;
}
id = R.id.externalTitleLabel;
TextView externalTitleLabel = ViewBindings.findChildViewById(rootView, id);
if (externalTitleLabel == null) {
break missingId;
}
id = R.id.groupTitleEditText;
TextInputEditText groupTitleEditText = ViewBindings.findChildViewById(rootView, id);
if (groupTitleEditText == null) {
break missingId;
}
id = R.id.groupTitleInputLayout;
TextInputLayout groupTitleInputLayout = ViewBindings.findChildViewById(rootView, id);
if (groupTitleInputLayout == null) {
break missingId;
}
id = R.id.groupTitleLabel;
TextView groupTitleLabel = ViewBindings.findChildViewById(rootView, id);
if (groupTitleLabel == null) {
break missingId;
}
id = R.id.participantsEditText;
TextInputEditText participantsEditText = ViewBindings.findChildViewById(rootView, id);
if (participantsEditText == null) {
break missingId;
}
id = R.id.participantsInputLayout;
TextInputLayout participantsInputLayout = ViewBindings.findChildViewById(rootView, id);
if (participantsInputLayout == null) {
break missingId;
}
id = R.id.participantsLabel;
TextView participantsLabel = ViewBindings.findChildViewById(rootView, id);
if (participantsLabel == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.providerInfo;
TextView providerInfo = ViewBindings.findChildViewById(rootView, id);
if (providerInfo == null) {
break missingId;
}
id = R.id.radioExternal;
RadioButton radioExternal = ViewBindings.findChildViewById(rootView, id);
if (radioExternal == null) {
break missingId;
}
id = R.id.radioGroup;
RadioButton radioGroup = ViewBindings.findChildViewById(rootView, id);
if (radioGroup == null) {
break missingId;
}
id = R.id.radioPersonal;
RadioButton radioPersonal = ViewBindings.findChildViewById(rootView, id);
if (radioPersonal == null) {
break missingId;
}
id = R.id.selectUserButton;
MaterialButton selectUserButton = ViewBindings.findChildViewById(rootView, id);
if (selectUserButton == null) {
break missingId;
}
id = R.id.selectedUserTextView;
TextView selectedUserTextView = ViewBindings.findChildViewById(rootView, id);
if (selectedUserTextView == null) {
break missingId;
}
id = R.id.titleTextView;
TextView titleTextView = ViewBindings.findChildViewById(rootView, id);
if (titleTextView == null) {
break missingId;
}
return new ActivityCreateChatBinding((ConstraintLayout) rootView, chatTypeLabel,
chatTypeRadioGroup, companionLabel, createButton, entityEditText, entityInputLayout,
entityLabel, errorTextView, externalTitleEditText, externalTitleInputLayout,
externalTitleLabel, groupTitleEditText, groupTitleInputLayout, groupTitleLabel,
participantsEditText, participantsInputLayout, participantsLabel, progressBar,
providerInfo, radioExternal, radioGroup, radioPersonal, selectUserButton,
selectedUserTextView, titleTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,126 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.appbar.AppBarLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityImageViewerBinding implements ViewBinding {
@NonNull
private final CoordinatorLayout rootView;
@NonNull
public final AppBarLayout appBarLayout;
@NonNull
public final ImageButton backButton;
@NonNull
public final ImageButton downloadButton;
@NonNull
public final ImageView imageView;
@NonNull
public final Toolbar toolbar;
@NonNull
public final TextView toolbarTitle;
private ActivityImageViewerBinding(@NonNull CoordinatorLayout rootView,
@NonNull AppBarLayout appBarLayout, @NonNull ImageButton backButton,
@NonNull ImageButton downloadButton, @NonNull ImageView imageView, @NonNull Toolbar toolbar,
@NonNull TextView toolbarTitle) {
this.rootView = rootView;
this.appBarLayout = appBarLayout;
this.backButton = backButton;
this.downloadButton = downloadButton;
this.imageView = imageView;
this.toolbar = toolbar;
this.toolbarTitle = toolbarTitle;
}
@Override
@NonNull
public CoordinatorLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityImageViewerBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityImageViewerBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_image_viewer, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityImageViewerBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.appBarLayout;
AppBarLayout appBarLayout = ViewBindings.findChildViewById(rootView, id);
if (appBarLayout == null) {
break missingId;
}
id = R.id.backButton;
ImageButton backButton = ViewBindings.findChildViewById(rootView, id);
if (backButton == null) {
break missingId;
}
id = R.id.downloadButton;
ImageButton downloadButton = ViewBindings.findChildViewById(rootView, id);
if (downloadButton == null) {
break missingId;
}
id = R.id.imageView;
ImageView imageView = ViewBindings.findChildViewById(rootView, id);
if (imageView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
id = R.id.toolbarTitle;
TextView toolbarTitle = ViewBindings.findChildViewById(rootView, id);
if (toolbarTitle == null) {
break missingId;
}
return new ActivityImageViewerBinding((CoordinatorLayout) rootView, appBarLayout, backButton,
downloadButton, imageView, toolbar, toolbarTitle);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,194 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityMainBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final RecyclerView chatsRecyclerView;
@NonNull
public final FloatingActionButton createChatFab;
@NonNull
public final ConstraintLayout emptyStateLayout;
@NonNull
public final TextView emptyStateTextView;
@NonNull
public final ConstraintLayout errorStateLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final ProgressBar loadingProgressBar;
@NonNull
public final ImageView logoImageView;
@NonNull
public final ImageButton menuButton;
@NonNull
public final MaterialButton retryButton;
@NonNull
public final SwipeRefreshLayout swipeRefreshLayout;
@NonNull
public final Toolbar toolbar;
private ActivityMainBinding(@NonNull ConstraintLayout rootView,
@NonNull RecyclerView chatsRecyclerView, @NonNull FloatingActionButton createChatFab,
@NonNull ConstraintLayout emptyStateLayout, @NonNull TextView emptyStateTextView,
@NonNull ConstraintLayout errorStateLayout, @NonNull TextView errorTextView,
@NonNull ProgressBar loadingProgressBar, @NonNull ImageView logoImageView,
@NonNull ImageButton menuButton, @NonNull MaterialButton retryButton,
@NonNull SwipeRefreshLayout swipeRefreshLayout, @NonNull Toolbar toolbar) {
this.rootView = rootView;
this.chatsRecyclerView = chatsRecyclerView;
this.createChatFab = createChatFab;
this.emptyStateLayout = emptyStateLayout;
this.emptyStateTextView = emptyStateTextView;
this.errorStateLayout = errorStateLayout;
this.errorTextView = errorTextView;
this.loadingProgressBar = loadingProgressBar;
this.logoImageView = logoImageView;
this.menuButton = menuButton;
this.retryButton = retryButton;
this.swipeRefreshLayout = swipeRefreshLayout;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_main, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityMainBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatsRecyclerView;
RecyclerView chatsRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (chatsRecyclerView == null) {
break missingId;
}
id = R.id.createChatFab;
FloatingActionButton createChatFab = ViewBindings.findChildViewById(rootView, id);
if (createChatFab == null) {
break missingId;
}
id = R.id.emptyStateLayout;
ConstraintLayout emptyStateLayout = ViewBindings.findChildViewById(rootView, id);
if (emptyStateLayout == null) {
break missingId;
}
id = R.id.emptyStateTextView;
TextView emptyStateTextView = ViewBindings.findChildViewById(rootView, id);
if (emptyStateTextView == null) {
break missingId;
}
id = R.id.errorStateLayout;
ConstraintLayout errorStateLayout = ViewBindings.findChildViewById(rootView, id);
if (errorStateLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.loadingProgressBar;
ProgressBar loadingProgressBar = ViewBindings.findChildViewById(rootView, id);
if (loadingProgressBar == null) {
break missingId;
}
id = R.id.logoImageView;
ImageView logoImageView = ViewBindings.findChildViewById(rootView, id);
if (logoImageView == null) {
break missingId;
}
id = R.id.menuButton;
ImageButton menuButton = ViewBindings.findChildViewById(rootView, id);
if (menuButton == null) {
break missingId;
}
id = R.id.retryButton;
MaterialButton retryButton = ViewBindings.findChildViewById(rootView, id);
if (retryButton == null) {
break missingId;
}
id = R.id.swipeRefreshLayout;
SwipeRefreshLayout swipeRefreshLayout = ViewBindings.findChildViewById(rootView, id);
if (swipeRefreshLayout == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityMainBinding((ConstraintLayout) rootView, chatsRecyclerView, createChatFab,
emptyStateLayout, emptyStateTextView, errorStateLayout, errorTextView, loadingProgressBar,
logoImageView, menuButton, retryButton, swipeRefreshLayout, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,225 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityProfileBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextView avatarHintTextView;
@NonNull
public final ImageView avatarImageView;
@NonNull
public final ConstraintLayout avatarSection;
@NonNull
public final TextInputEditText emailEditText;
@NonNull
public final TextInputLayout emailInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final TextInputEditText firstNameEditText;
@NonNull
public final TextInputLayout firstNameInputLayout;
@NonNull
public final TextInputEditText lastNameEditText;
@NonNull
public final TextInputLayout lastNameInputLayout;
@NonNull
public final TextInputEditText phoneEditText;
@NonNull
public final TextInputLayout phoneInputLayout;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final MaterialButton saveButton;
@NonNull
public final Toolbar toolbar;
private ActivityProfileBinding(@NonNull ConstraintLayout rootView,
@NonNull TextView avatarHintTextView, @NonNull ImageView avatarImageView,
@NonNull ConstraintLayout avatarSection, @NonNull TextInputEditText emailEditText,
@NonNull TextInputLayout emailInputLayout, @NonNull TextView errorTextView,
@NonNull TextInputEditText firstNameEditText, @NonNull TextInputLayout firstNameInputLayout,
@NonNull TextInputEditText lastNameEditText, @NonNull TextInputLayout lastNameInputLayout,
@NonNull TextInputEditText phoneEditText, @NonNull TextInputLayout phoneInputLayout,
@NonNull ProgressBar progressBar, @NonNull MaterialButton saveButton,
@NonNull Toolbar toolbar) {
this.rootView = rootView;
this.avatarHintTextView = avatarHintTextView;
this.avatarImageView = avatarImageView;
this.avatarSection = avatarSection;
this.emailEditText = emailEditText;
this.emailInputLayout = emailInputLayout;
this.errorTextView = errorTextView;
this.firstNameEditText = firstNameEditText;
this.firstNameInputLayout = firstNameInputLayout;
this.lastNameEditText = lastNameEditText;
this.lastNameInputLayout = lastNameInputLayout;
this.phoneEditText = phoneEditText;
this.phoneInputLayout = phoneInputLayout;
this.progressBar = progressBar;
this.saveButton = saveButton;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityProfileBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityProfileBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_profile, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityProfileBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.avatarHintTextView;
TextView avatarHintTextView = ViewBindings.findChildViewById(rootView, id);
if (avatarHintTextView == null) {
break missingId;
}
id = R.id.avatarImageView;
ImageView avatarImageView = ViewBindings.findChildViewById(rootView, id);
if (avatarImageView == null) {
break missingId;
}
id = R.id.avatarSection;
ConstraintLayout avatarSection = ViewBindings.findChildViewById(rootView, id);
if (avatarSection == null) {
break missingId;
}
id = R.id.emailEditText;
TextInputEditText emailEditText = ViewBindings.findChildViewById(rootView, id);
if (emailEditText == null) {
break missingId;
}
id = R.id.emailInputLayout;
TextInputLayout emailInputLayout = ViewBindings.findChildViewById(rootView, id);
if (emailInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.firstNameEditText;
TextInputEditText firstNameEditText = ViewBindings.findChildViewById(rootView, id);
if (firstNameEditText == null) {
break missingId;
}
id = R.id.firstNameInputLayout;
TextInputLayout firstNameInputLayout = ViewBindings.findChildViewById(rootView, id);
if (firstNameInputLayout == null) {
break missingId;
}
id = R.id.lastNameEditText;
TextInputEditText lastNameEditText = ViewBindings.findChildViewById(rootView, id);
if (lastNameEditText == null) {
break missingId;
}
id = R.id.lastNameInputLayout;
TextInputLayout lastNameInputLayout = ViewBindings.findChildViewById(rootView, id);
if (lastNameInputLayout == null) {
break missingId;
}
id = R.id.phoneEditText;
TextInputEditText phoneEditText = ViewBindings.findChildViewById(rootView, id);
if (phoneEditText == null) {
break missingId;
}
id = R.id.phoneInputLayout;
TextInputLayout phoneInputLayout = ViewBindings.findChildViewById(rootView, id);
if (phoneInputLayout == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.saveButton;
MaterialButton saveButton = ViewBindings.findChildViewById(rootView, id);
if (saveButton == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityProfileBinding((ConstraintLayout) rootView, avatarHintTextView,
avatarImageView, avatarSection, emailEditText, emailInputLayout, errorTextView,
firstNameEditText, firstNameInputLayout, lastNameEditText, lastNameInputLayout,
phoneEditText, phoneInputLayout, progressBar, saveButton, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,204 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.switchmaterial.SwitchMaterial;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivitySettingsBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextInputEditText apiKeyEditText;
@NonNull
public final TextInputLayout apiKeyInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final MaterialButton saveButton;
@NonNull
public final ConstraintLayout serverSection;
@NonNull
public final TextView serverTitleTextView;
@NonNull
public final TextInputEditText serverUrlEditText;
@NonNull
public final TextInputLayout serverUrlInputLayout;
@NonNull
public final ConstraintLayout themeSection;
@NonNull
public final SwitchMaterial themeSwitch;
@NonNull
public final TextView themeTitleTextView;
@NonNull
public final Toolbar toolbar;
private ActivitySettingsBinding(@NonNull ConstraintLayout rootView,
@NonNull TextInputEditText apiKeyEditText, @NonNull TextInputLayout apiKeyInputLayout,
@NonNull TextView errorTextView, @NonNull ProgressBar progressBar,
@NonNull MaterialButton saveButton, @NonNull ConstraintLayout serverSection,
@NonNull TextView serverTitleTextView, @NonNull TextInputEditText serverUrlEditText,
@NonNull TextInputLayout serverUrlInputLayout, @NonNull ConstraintLayout themeSection,
@NonNull SwitchMaterial themeSwitch, @NonNull TextView themeTitleTextView,
@NonNull Toolbar toolbar) {
this.rootView = rootView;
this.apiKeyEditText = apiKeyEditText;
this.apiKeyInputLayout = apiKeyInputLayout;
this.errorTextView = errorTextView;
this.progressBar = progressBar;
this.saveButton = saveButton;
this.serverSection = serverSection;
this.serverTitleTextView = serverTitleTextView;
this.serverUrlEditText = serverUrlEditText;
this.serverUrlInputLayout = serverUrlInputLayout;
this.themeSection = themeSection;
this.themeSwitch = themeSwitch;
this.themeTitleTextView = themeTitleTextView;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivitySettingsBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivitySettingsBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_settings, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivitySettingsBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.apiKeyEditText;
TextInputEditText apiKeyEditText = ViewBindings.findChildViewById(rootView, id);
if (apiKeyEditText == null) {
break missingId;
}
id = R.id.apiKeyInputLayout;
TextInputLayout apiKeyInputLayout = ViewBindings.findChildViewById(rootView, id);
if (apiKeyInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.saveButton;
MaterialButton saveButton = ViewBindings.findChildViewById(rootView, id);
if (saveButton == null) {
break missingId;
}
id = R.id.serverSection;
ConstraintLayout serverSection = ViewBindings.findChildViewById(rootView, id);
if (serverSection == null) {
break missingId;
}
id = R.id.serverTitleTextView;
TextView serverTitleTextView = ViewBindings.findChildViewById(rootView, id);
if (serverTitleTextView == null) {
break missingId;
}
id = R.id.serverUrlEditText;
TextInputEditText serverUrlEditText = ViewBindings.findChildViewById(rootView, id);
if (serverUrlEditText == null) {
break missingId;
}
id = R.id.serverUrlInputLayout;
TextInputLayout serverUrlInputLayout = ViewBindings.findChildViewById(rootView, id);
if (serverUrlInputLayout == null) {
break missingId;
}
id = R.id.themeSection;
ConstraintLayout themeSection = ViewBindings.findChildViewById(rootView, id);
if (themeSection == null) {
break missingId;
}
id = R.id.themeSwitch;
SwitchMaterial themeSwitch = ViewBindings.findChildViewById(rootView, id);
if (themeSwitch == null) {
break missingId;
}
id = R.id.themeTitleTextView;
TextView themeTitleTextView = ViewBindings.findChildViewById(rootView, id);
if (themeTitleTextView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivitySettingsBinding((ConstraintLayout) rootView, apiKeyEditText,
apiKeyInputLayout, errorTextView, progressBar, saveButton, serverSection,
serverTitleTextView, serverUrlEditText, serverUrlInputLayout, themeSection, themeSwitch,
themeTitleTextView, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,127 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.SearchView;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityUserSelectionBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton doneButton;
@NonNull
public final TextView emptyTextView;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final SearchView searchView;
@NonNull
public final Toolbar toolbar;
@NonNull
public final RecyclerView usersRecyclerView;
private ActivityUserSelectionBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton doneButton, @NonNull TextView emptyTextView,
@NonNull ProgressBar progressBar, @NonNull SearchView searchView, @NonNull Toolbar toolbar,
@NonNull RecyclerView usersRecyclerView) {
this.rootView = rootView;
this.doneButton = doneButton;
this.emptyTextView = emptyTextView;
this.progressBar = progressBar;
this.searchView = searchView;
this.toolbar = toolbar;
this.usersRecyclerView = usersRecyclerView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityUserSelectionBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityUserSelectionBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_user_selection, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityUserSelectionBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.doneButton;
MaterialButton doneButton = ViewBindings.findChildViewById(rootView, id);
if (doneButton == null) {
break missingId;
}
id = R.id.emptyTextView;
TextView emptyTextView = ViewBindings.findChildViewById(rootView, id);
if (emptyTextView == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.searchView;
SearchView searchView = ViewBindings.findChildViewById(rootView, id);
if (searchView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
id = R.id.usersRecyclerView;
RecyclerView usersRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (usersRecyclerView == null) {
break missingId;
}
return new ActivityUserSelectionBinding((ConstraintLayout) rootView, doneButton,
emptyTextView, progressBar, searchView, toolbar, usersRecyclerView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,113 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.card.MaterialCardView;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemChatBinding implements ViewBinding {
@NonNull
private final MaterialCardView rootView;
@NonNull
public final ImageView chatAvatarImageView;
@NonNull
public final TextView chatNameTextView;
@NonNull
public final TextView lastMessageTextView;
@NonNull
public final TextView lastMessageTimeTextView;
@NonNull
public final TextView unreadCountBadge;
private ItemChatBinding(@NonNull MaterialCardView rootView,
@NonNull ImageView chatAvatarImageView, @NonNull TextView chatNameTextView,
@NonNull TextView lastMessageTextView, @NonNull TextView lastMessageTimeTextView,
@NonNull TextView unreadCountBadge) {
this.rootView = rootView;
this.chatAvatarImageView = chatAvatarImageView;
this.chatNameTextView = chatNameTextView;
this.lastMessageTextView = lastMessageTextView;
this.lastMessageTimeTextView = lastMessageTimeTextView;
this.unreadCountBadge = unreadCountBadge;
}
@Override
@NonNull
public MaterialCardView getRoot() {
return rootView;
}
@NonNull
public static ItemChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatAvatarImageView;
ImageView chatAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (chatAvatarImageView == null) {
break missingId;
}
id = R.id.chatNameTextView;
TextView chatNameTextView = ViewBindings.findChildViewById(rootView, id);
if (chatNameTextView == null) {
break missingId;
}
id = R.id.lastMessageTextView;
TextView lastMessageTextView = ViewBindings.findChildViewById(rootView, id);
if (lastMessageTextView == null) {
break missingId;
}
id = R.id.lastMessageTimeTextView;
TextView lastMessageTimeTextView = ViewBindings.findChildViewById(rootView, id);
if (lastMessageTimeTextView == null) {
break missingId;
}
id = R.id.unreadCountBadge;
TextView unreadCountBadge = ViewBindings.findChildViewById(rootView, id);
if (unreadCountBadge == null) {
break missingId;
}
return new ItemChatBinding((MaterialCardView) rootView, chatAvatarImageView, chatNameTextView,
lastMessageTextView, lastMessageTimeTextView, unreadCountBadge);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,287 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.cardview.widget.CardView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemMessageBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final LinearLayout receivedFileLayout;
@NonNull
public final TextView receivedFileNameText;
@NonNull
public final ImageView receivedImagePreview;
@NonNull
public final CardView receivedMessageCard;
@NonNull
public final TextView receivedMessageText;
@NonNull
public final LinearLayout receivedReplyIndicator;
@NonNull
public final TextView receivedReplyMessageText;
@NonNull
public final TextView receivedReplySenderText;
@NonNull
public final LinearLayout replyIndicator;
@NonNull
public final TextView replyMessageText;
@NonNull
public final TextView replySenderText;
@NonNull
public final TextView senderNameText;
@NonNull
public final LinearLayout sentFileLayout;
@NonNull
public final TextView sentFileNameText;
@NonNull
public final ImageView sentImagePreview;
@NonNull
public final CardView sentMessageCard;
@NonNull
public final TextView sentMessageText;
@NonNull
public final LinearLayout sentReplyIndicator;
@NonNull
public final TextView sentReplyMessageText;
@NonNull
public final TextView sentReplySenderText;
@NonNull
public final TextView timestampText;
private ItemMessageBinding(@NonNull ConstraintLayout rootView,
@NonNull LinearLayout receivedFileLayout, @NonNull TextView receivedFileNameText,
@NonNull ImageView receivedImagePreview, @NonNull CardView receivedMessageCard,
@NonNull TextView receivedMessageText, @NonNull LinearLayout receivedReplyIndicator,
@NonNull TextView receivedReplyMessageText, @NonNull TextView receivedReplySenderText,
@NonNull LinearLayout replyIndicator, @NonNull TextView replyMessageText,
@NonNull TextView replySenderText, @NonNull TextView senderNameText,
@NonNull LinearLayout sentFileLayout, @NonNull TextView sentFileNameText,
@NonNull ImageView sentImagePreview, @NonNull CardView sentMessageCard,
@NonNull TextView sentMessageText, @NonNull LinearLayout sentReplyIndicator,
@NonNull TextView sentReplyMessageText, @NonNull TextView sentReplySenderText,
@NonNull TextView timestampText) {
this.rootView = rootView;
this.receivedFileLayout = receivedFileLayout;
this.receivedFileNameText = receivedFileNameText;
this.receivedImagePreview = receivedImagePreview;
this.receivedMessageCard = receivedMessageCard;
this.receivedMessageText = receivedMessageText;
this.receivedReplyIndicator = receivedReplyIndicator;
this.receivedReplyMessageText = receivedReplyMessageText;
this.receivedReplySenderText = receivedReplySenderText;
this.replyIndicator = replyIndicator;
this.replyMessageText = replyMessageText;
this.replySenderText = replySenderText;
this.senderNameText = senderNameText;
this.sentFileLayout = sentFileLayout;
this.sentFileNameText = sentFileNameText;
this.sentImagePreview = sentImagePreview;
this.sentMessageCard = sentMessageCard;
this.sentMessageText = sentMessageText;
this.sentReplyIndicator = sentReplyIndicator;
this.sentReplyMessageText = sentReplyMessageText;
this.sentReplySenderText = sentReplySenderText;
this.timestampText = timestampText;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ItemMessageBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemMessageBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_message, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemMessageBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.receivedFileLayout;
LinearLayout receivedFileLayout = ViewBindings.findChildViewById(rootView, id);
if (receivedFileLayout == null) {
break missingId;
}
id = R.id.receivedFileNameText;
TextView receivedFileNameText = ViewBindings.findChildViewById(rootView, id);
if (receivedFileNameText == null) {
break missingId;
}
id = R.id.receivedImagePreview;
ImageView receivedImagePreview = ViewBindings.findChildViewById(rootView, id);
if (receivedImagePreview == null) {
break missingId;
}
id = R.id.receivedMessageCard;
CardView receivedMessageCard = ViewBindings.findChildViewById(rootView, id);
if (receivedMessageCard == null) {
break missingId;
}
id = R.id.receivedMessageText;
TextView receivedMessageText = ViewBindings.findChildViewById(rootView, id);
if (receivedMessageText == null) {
break missingId;
}
id = R.id.receivedReplyIndicator;
LinearLayout receivedReplyIndicator = ViewBindings.findChildViewById(rootView, id);
if (receivedReplyIndicator == null) {
break missingId;
}
id = R.id.receivedReplyMessageText;
TextView receivedReplyMessageText = ViewBindings.findChildViewById(rootView, id);
if (receivedReplyMessageText == null) {
break missingId;
}
id = R.id.receivedReplySenderText;
TextView receivedReplySenderText = ViewBindings.findChildViewById(rootView, id);
if (receivedReplySenderText == null) {
break missingId;
}
id = R.id.replyIndicator;
LinearLayout replyIndicator = ViewBindings.findChildViewById(rootView, id);
if (replyIndicator == null) {
break missingId;
}
id = R.id.replyMessageText;
TextView replyMessageText = ViewBindings.findChildViewById(rootView, id);
if (replyMessageText == null) {
break missingId;
}
id = R.id.replySenderText;
TextView replySenderText = ViewBindings.findChildViewById(rootView, id);
if (replySenderText == null) {
break missingId;
}
id = R.id.senderNameText;
TextView senderNameText = ViewBindings.findChildViewById(rootView, id);
if (senderNameText == null) {
break missingId;
}
id = R.id.sentFileLayout;
LinearLayout sentFileLayout = ViewBindings.findChildViewById(rootView, id);
if (sentFileLayout == null) {
break missingId;
}
id = R.id.sentFileNameText;
TextView sentFileNameText = ViewBindings.findChildViewById(rootView, id);
if (sentFileNameText == null) {
break missingId;
}
id = R.id.sentImagePreview;
ImageView sentImagePreview = ViewBindings.findChildViewById(rootView, id);
if (sentImagePreview == null) {
break missingId;
}
id = R.id.sentMessageCard;
CardView sentMessageCard = ViewBindings.findChildViewById(rootView, id);
if (sentMessageCard == null) {
break missingId;
}
id = R.id.sentMessageText;
TextView sentMessageText = ViewBindings.findChildViewById(rootView, id);
if (sentMessageText == null) {
break missingId;
}
id = R.id.sentReplyIndicator;
LinearLayout sentReplyIndicator = ViewBindings.findChildViewById(rootView, id);
if (sentReplyIndicator == null) {
break missingId;
}
id = R.id.sentReplyMessageText;
TextView sentReplyMessageText = ViewBindings.findChildViewById(rootView, id);
if (sentReplyMessageText == null) {
break missingId;
}
id = R.id.sentReplySenderText;
TextView sentReplySenderText = ViewBindings.findChildViewById(rootView, id);
if (sentReplySenderText == null) {
break missingId;
}
id = R.id.timestampText;
TextView timestampText = ViewBindings.findChildViewById(rootView, id);
if (timestampText == null) {
break missingId;
}
return new ItemMessageBinding((ConstraintLayout) rootView, receivedFileLayout,
receivedFileNameText, receivedImagePreview, receivedMessageCard, receivedMessageText,
receivedReplyIndicator, receivedReplyMessageText, receivedReplySenderText, replyIndicator,
replyMessageText, replySenderText, senderNameText, sentFileLayout, sentFileNameText,
sentImagePreview, sentMessageCard, sentMessageText, sentReplyIndicator,
sentReplyMessageText, sentReplySenderText, timestampText);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,102 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.card.MaterialCardView;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemUserBinding implements ViewBinding {
@NonNull
private final MaterialCardView rootView;
@NonNull
public final ImageView userAvatarImageView;
@NonNull
public final TextView userEmailTextView;
@NonNull
public final TextView userIdTextView;
@NonNull
public final TextView userNameTextView;
private ItemUserBinding(@NonNull MaterialCardView rootView,
@NonNull ImageView userAvatarImageView, @NonNull TextView userEmailTextView,
@NonNull TextView userIdTextView, @NonNull TextView userNameTextView) {
this.rootView = rootView;
this.userAvatarImageView = userAvatarImageView;
this.userEmailTextView = userEmailTextView;
this.userIdTextView = userIdTextView;
this.userNameTextView = userNameTextView;
}
@Override
@NonNull
public MaterialCardView getRoot() {
return rootView;
}
@NonNull
public static ItemUserBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemUserBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_user, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemUserBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.userAvatarImageView;
ImageView userAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (userAvatarImageView == null) {
break missingId;
}
id = R.id.userEmailTextView;
TextView userEmailTextView = ViewBindings.findChildViewById(rootView, id);
if (userEmailTextView == null) {
break missingId;
}
id = R.id.userIdTextView;
TextView userIdTextView = ViewBindings.findChildViewById(rootView, id);
if (userIdTextView == null) {
break missingId;
}
id = R.id.userNameTextView;
TextView userNameTextView = ViewBindings.findChildViewById(rootView, id);
if (userNameTextView == null) {
break missingId;
}
return new ItemUserBinding((MaterialCardView) rootView, userAvatarImageView,
userEmailTextView, userIdTextView, userNameTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,92 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ToolbarChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final ImageButton backButton;
@NonNull
public final ImageView chatAvatarImageView;
@NonNull
public final TextView chatNameTextView;
private ToolbarChatBinding(@NonNull ConstraintLayout rootView, @NonNull ImageButton backButton,
@NonNull ImageView chatAvatarImageView, @NonNull TextView chatNameTextView) {
this.rootView = rootView;
this.backButton = backButton;
this.chatAvatarImageView = chatAvatarImageView;
this.chatNameTextView = chatNameTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ToolbarChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ToolbarChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.toolbar_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ToolbarChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.backButton;
ImageButton backButton = ViewBindings.findChildViewById(rootView, id);
if (backButton == null) {
break missingId;
}
id = R.id.chatAvatarImageView;
ImageView chatAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (chatAvatarImageView == null) {
break missingId;
}
id = R.id.chatNameTextView;
TextView chatNameTextView = ViewBindings.findChildViewById(rootView, id);
if (chatNameTextView == null) {
break missingId;
}
return new ToolbarChatBinding((ConstraintLayout) rootView, backButton, chatAvatarImageView,
chatNameTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,169 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityAuthBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton additionalSettingsButton;
@NonNull
public final TextView descriptionTextView;
@NonNull
public final TextInputEditText emailEditText;
@NonNull
public final TextInputLayout emailInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final MaterialButton loginButton;
@NonNull
public final TextInputEditText passwordEditText;
@NonNull
public final TextInputLayout passwordInputLayout;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final TextView titleTextView;
private ActivityAuthBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton additionalSettingsButton, @NonNull TextView descriptionTextView,
@NonNull TextInputEditText emailEditText, @NonNull TextInputLayout emailInputLayout,
@NonNull TextView errorTextView, @NonNull MaterialButton loginButton,
@NonNull TextInputEditText passwordEditText, @NonNull TextInputLayout passwordInputLayout,
@NonNull ProgressBar progressBar, @NonNull TextView titleTextView) {
this.rootView = rootView;
this.additionalSettingsButton = additionalSettingsButton;
this.descriptionTextView = descriptionTextView;
this.emailEditText = emailEditText;
this.emailInputLayout = emailInputLayout;
this.errorTextView = errorTextView;
this.loginButton = loginButton;
this.passwordEditText = passwordEditText;
this.passwordInputLayout = passwordInputLayout;
this.progressBar = progressBar;
this.titleTextView = titleTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityAuthBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityAuthBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_auth, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityAuthBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.additionalSettingsButton;
MaterialButton additionalSettingsButton = ViewBindings.findChildViewById(rootView, id);
if (additionalSettingsButton == null) {
break missingId;
}
id = R.id.descriptionTextView;
TextView descriptionTextView = ViewBindings.findChildViewById(rootView, id);
if (descriptionTextView == null) {
break missingId;
}
id = R.id.emailEditText;
TextInputEditText emailEditText = ViewBindings.findChildViewById(rootView, id);
if (emailEditText == null) {
break missingId;
}
id = R.id.emailInputLayout;
TextInputLayout emailInputLayout = ViewBindings.findChildViewById(rootView, id);
if (emailInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.loginButton;
MaterialButton loginButton = ViewBindings.findChildViewById(rootView, id);
if (loginButton == null) {
break missingId;
}
id = R.id.passwordEditText;
TextInputEditText passwordEditText = ViewBindings.findChildViewById(rootView, id);
if (passwordEditText == null) {
break missingId;
}
id = R.id.passwordInputLayout;
TextInputLayout passwordInputLayout = ViewBindings.findChildViewById(rootView, id);
if (passwordInputLayout == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.titleTextView;
TextView titleTextView = ViewBindings.findChildViewById(rootView, id);
if (titleTextView == null) {
break missingId;
}
return new ActivityAuthBinding((ConstraintLayout) rootView, additionalSettingsButton,
descriptionTextView, emailEditText, emailInputLayout, errorTextView, loginButton,
passwordEditText, passwordInputLayout, progressBar, titleTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,237 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.textfield.TextInputEditText;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton attachButton;
@NonNull
public final ConstraintLayout attachmentIndicators;
@NonNull
public final ConstraintLayout fileAttachmentIndicator;
@NonNull
public final TextView fileAttachmentText;
@NonNull
public final ImageButton fileCancelButton;
@NonNull
public final ProgressBar loadingProgressBar;
@NonNull
public final TextInputEditText messageEditText;
@NonNull
public final ConstraintLayout messageInputLayout;
@NonNull
public final RecyclerView messagesRecyclerView;
@NonNull
public final ImageButton replyCancelButton;
@NonNull
public final ConstraintLayout replyIndicator;
@NonNull
public final TextView replyMessageText;
@NonNull
public final TextView replySenderText;
@NonNull
public final FloatingActionButton scrollToBottomFab;
@NonNull
public final MaterialButton sendButton;
@NonNull
public final Toolbar toolbar;
private ActivityChatBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton attachButton, @NonNull ConstraintLayout attachmentIndicators,
@NonNull ConstraintLayout fileAttachmentIndicator, @NonNull TextView fileAttachmentText,
@NonNull ImageButton fileCancelButton, @NonNull ProgressBar loadingProgressBar,
@NonNull TextInputEditText messageEditText, @NonNull ConstraintLayout messageInputLayout,
@NonNull RecyclerView messagesRecyclerView, @NonNull ImageButton replyCancelButton,
@NonNull ConstraintLayout replyIndicator, @NonNull TextView replyMessageText,
@NonNull TextView replySenderText, @NonNull FloatingActionButton scrollToBottomFab,
@NonNull MaterialButton sendButton, @NonNull Toolbar toolbar) {
this.rootView = rootView;
this.attachButton = attachButton;
this.attachmentIndicators = attachmentIndicators;
this.fileAttachmentIndicator = fileAttachmentIndicator;
this.fileAttachmentText = fileAttachmentText;
this.fileCancelButton = fileCancelButton;
this.loadingProgressBar = loadingProgressBar;
this.messageEditText = messageEditText;
this.messageInputLayout = messageInputLayout;
this.messagesRecyclerView = messagesRecyclerView;
this.replyCancelButton = replyCancelButton;
this.replyIndicator = replyIndicator;
this.replyMessageText = replyMessageText;
this.replySenderText = replySenderText;
this.scrollToBottomFab = scrollToBottomFab;
this.sendButton = sendButton;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.attachButton;
MaterialButton attachButton = ViewBindings.findChildViewById(rootView, id);
if (attachButton == null) {
break missingId;
}
id = R.id.attachmentIndicators;
ConstraintLayout attachmentIndicators = ViewBindings.findChildViewById(rootView, id);
if (attachmentIndicators == null) {
break missingId;
}
id = R.id.fileAttachmentIndicator;
ConstraintLayout fileAttachmentIndicator = ViewBindings.findChildViewById(rootView, id);
if (fileAttachmentIndicator == null) {
break missingId;
}
id = R.id.fileAttachmentText;
TextView fileAttachmentText = ViewBindings.findChildViewById(rootView, id);
if (fileAttachmentText == null) {
break missingId;
}
id = R.id.fileCancelButton;
ImageButton fileCancelButton = ViewBindings.findChildViewById(rootView, id);
if (fileCancelButton == null) {
break missingId;
}
id = R.id.loadingProgressBar;
ProgressBar loadingProgressBar = ViewBindings.findChildViewById(rootView, id);
if (loadingProgressBar == null) {
break missingId;
}
id = R.id.messageEditText;
TextInputEditText messageEditText = ViewBindings.findChildViewById(rootView, id);
if (messageEditText == null) {
break missingId;
}
id = R.id.messageInputLayout;
ConstraintLayout messageInputLayout = ViewBindings.findChildViewById(rootView, id);
if (messageInputLayout == null) {
break missingId;
}
id = R.id.messagesRecyclerView;
RecyclerView messagesRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (messagesRecyclerView == null) {
break missingId;
}
id = R.id.replyCancelButton;
ImageButton replyCancelButton = ViewBindings.findChildViewById(rootView, id);
if (replyCancelButton == null) {
break missingId;
}
id = R.id.replyIndicator;
ConstraintLayout replyIndicator = ViewBindings.findChildViewById(rootView, id);
if (replyIndicator == null) {
break missingId;
}
id = R.id.replyMessageText;
TextView replyMessageText = ViewBindings.findChildViewById(rootView, id);
if (replyMessageText == null) {
break missingId;
}
id = R.id.replySenderText;
TextView replySenderText = ViewBindings.findChildViewById(rootView, id);
if (replySenderText == null) {
break missingId;
}
id = R.id.scrollToBottomFab;
FloatingActionButton scrollToBottomFab = ViewBindings.findChildViewById(rootView, id);
if (scrollToBottomFab == null) {
break missingId;
}
id = R.id.sendButton;
MaterialButton sendButton = ViewBindings.findChildViewById(rootView, id);
if (sendButton == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityChatBinding((ConstraintLayout) rootView, attachButton,
attachmentIndicators, fileAttachmentIndicator, fileAttachmentText, fileCancelButton,
loadingProgressBar, messageEditText, messageInputLayout, messagesRecyclerView,
replyCancelButton, replyIndicator, replyMessageText, replySenderText, scrollToBottomFab,
sendButton, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,333 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityCreateChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextView chatTypeLabel;
@NonNull
public final RadioGroup chatTypeRadioGroup;
@NonNull
public final TextView companionLabel;
@NonNull
public final MaterialButton createButton;
@NonNull
public final TextInputEditText entityEditText;
@NonNull
public final TextInputLayout entityInputLayout;
@NonNull
public final TextView entityLabel;
@NonNull
public final TextView errorTextView;
@NonNull
public final TextInputEditText externalTitleEditText;
@NonNull
public final TextInputLayout externalTitleInputLayout;
@NonNull
public final TextView externalTitleLabel;
@NonNull
public final TextInputEditText groupTitleEditText;
@NonNull
public final TextInputLayout groupTitleInputLayout;
@NonNull
public final TextView groupTitleLabel;
@NonNull
public final TextInputEditText participantsEditText;
@NonNull
public final TextInputLayout participantsInputLayout;
@NonNull
public final TextView participantsLabel;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final TextView providerInfo;
@NonNull
public final RadioButton radioExternal;
@NonNull
public final RadioButton radioGroup;
@NonNull
public final RadioButton radioPersonal;
@NonNull
public final MaterialButton selectUserButton;
@NonNull
public final TextView selectedUserTextView;
@NonNull
public final TextView titleTextView;
private ActivityCreateChatBinding(@NonNull ConstraintLayout rootView,
@NonNull TextView chatTypeLabel, @NonNull RadioGroup chatTypeRadioGroup,
@NonNull TextView companionLabel, @NonNull MaterialButton createButton,
@NonNull TextInputEditText entityEditText, @NonNull TextInputLayout entityInputLayout,
@NonNull TextView entityLabel, @NonNull TextView errorTextView,
@NonNull TextInputEditText externalTitleEditText,
@NonNull TextInputLayout externalTitleInputLayout, @NonNull TextView externalTitleLabel,
@NonNull TextInputEditText groupTitleEditText, @NonNull TextInputLayout groupTitleInputLayout,
@NonNull TextView groupTitleLabel, @NonNull TextInputEditText participantsEditText,
@NonNull TextInputLayout participantsInputLayout, @NonNull TextView participantsLabel,
@NonNull ProgressBar progressBar, @NonNull TextView providerInfo,
@NonNull RadioButton radioExternal, @NonNull RadioButton radioGroup,
@NonNull RadioButton radioPersonal, @NonNull MaterialButton selectUserButton,
@NonNull TextView selectedUserTextView, @NonNull TextView titleTextView) {
this.rootView = rootView;
this.chatTypeLabel = chatTypeLabel;
this.chatTypeRadioGroup = chatTypeRadioGroup;
this.companionLabel = companionLabel;
this.createButton = createButton;
this.entityEditText = entityEditText;
this.entityInputLayout = entityInputLayout;
this.entityLabel = entityLabel;
this.errorTextView = errorTextView;
this.externalTitleEditText = externalTitleEditText;
this.externalTitleInputLayout = externalTitleInputLayout;
this.externalTitleLabel = externalTitleLabel;
this.groupTitleEditText = groupTitleEditText;
this.groupTitleInputLayout = groupTitleInputLayout;
this.groupTitleLabel = groupTitleLabel;
this.participantsEditText = participantsEditText;
this.participantsInputLayout = participantsInputLayout;
this.participantsLabel = participantsLabel;
this.progressBar = progressBar;
this.providerInfo = providerInfo;
this.radioExternal = radioExternal;
this.radioGroup = radioGroup;
this.radioPersonal = radioPersonal;
this.selectUserButton = selectUserButton;
this.selectedUserTextView = selectedUserTextView;
this.titleTextView = titleTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityCreateChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityCreateChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_create_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityCreateChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatTypeLabel;
TextView chatTypeLabel = ViewBindings.findChildViewById(rootView, id);
if (chatTypeLabel == null) {
break missingId;
}
id = R.id.chatTypeRadioGroup;
RadioGroup chatTypeRadioGroup = ViewBindings.findChildViewById(rootView, id);
if (chatTypeRadioGroup == null) {
break missingId;
}
id = R.id.companionLabel;
TextView companionLabel = ViewBindings.findChildViewById(rootView, id);
if (companionLabel == null) {
break missingId;
}
id = R.id.createButton;
MaterialButton createButton = ViewBindings.findChildViewById(rootView, id);
if (createButton == null) {
break missingId;
}
id = R.id.entityEditText;
TextInputEditText entityEditText = ViewBindings.findChildViewById(rootView, id);
if (entityEditText == null) {
break missingId;
}
id = R.id.entityInputLayout;
TextInputLayout entityInputLayout = ViewBindings.findChildViewById(rootView, id);
if (entityInputLayout == null) {
break missingId;
}
id = R.id.entityLabel;
TextView entityLabel = ViewBindings.findChildViewById(rootView, id);
if (entityLabel == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.externalTitleEditText;
TextInputEditText externalTitleEditText = ViewBindings.findChildViewById(rootView, id);
if (externalTitleEditText == null) {
break missingId;
}
id = R.id.externalTitleInputLayout;
TextInputLayout externalTitleInputLayout = ViewBindings.findChildViewById(rootView, id);
if (externalTitleInputLayout == null) {
break missingId;
}
id = R.id.externalTitleLabel;
TextView externalTitleLabel = ViewBindings.findChildViewById(rootView, id);
if (externalTitleLabel == null) {
break missingId;
}
id = R.id.groupTitleEditText;
TextInputEditText groupTitleEditText = ViewBindings.findChildViewById(rootView, id);
if (groupTitleEditText == null) {
break missingId;
}
id = R.id.groupTitleInputLayout;
TextInputLayout groupTitleInputLayout = ViewBindings.findChildViewById(rootView, id);
if (groupTitleInputLayout == null) {
break missingId;
}
id = R.id.groupTitleLabel;
TextView groupTitleLabel = ViewBindings.findChildViewById(rootView, id);
if (groupTitleLabel == null) {
break missingId;
}
id = R.id.participantsEditText;
TextInputEditText participantsEditText = ViewBindings.findChildViewById(rootView, id);
if (participantsEditText == null) {
break missingId;
}
id = R.id.participantsInputLayout;
TextInputLayout participantsInputLayout = ViewBindings.findChildViewById(rootView, id);
if (participantsInputLayout == null) {
break missingId;
}
id = R.id.participantsLabel;
TextView participantsLabel = ViewBindings.findChildViewById(rootView, id);
if (participantsLabel == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.providerInfo;
TextView providerInfo = ViewBindings.findChildViewById(rootView, id);
if (providerInfo == null) {
break missingId;
}
id = R.id.radioExternal;
RadioButton radioExternal = ViewBindings.findChildViewById(rootView, id);
if (radioExternal == null) {
break missingId;
}
id = R.id.radioGroup;
RadioButton radioGroup = ViewBindings.findChildViewById(rootView, id);
if (radioGroup == null) {
break missingId;
}
id = R.id.radioPersonal;
RadioButton radioPersonal = ViewBindings.findChildViewById(rootView, id);
if (radioPersonal == null) {
break missingId;
}
id = R.id.selectUserButton;
MaterialButton selectUserButton = ViewBindings.findChildViewById(rootView, id);
if (selectUserButton == null) {
break missingId;
}
id = R.id.selectedUserTextView;
TextView selectedUserTextView = ViewBindings.findChildViewById(rootView, id);
if (selectedUserTextView == null) {
break missingId;
}
id = R.id.titleTextView;
TextView titleTextView = ViewBindings.findChildViewById(rootView, id);
if (titleTextView == null) {
break missingId;
}
return new ActivityCreateChatBinding((ConstraintLayout) rootView, chatTypeLabel,
chatTypeRadioGroup, companionLabel, createButton, entityEditText, entityInputLayout,
entityLabel, errorTextView, externalTitleEditText, externalTitleInputLayout,
externalTitleLabel, groupTitleEditText, groupTitleInputLayout, groupTitleLabel,
participantsEditText, participantsInputLayout, participantsLabel, progressBar,
providerInfo, radioExternal, radioGroup, radioPersonal, selectUserButton,
selectedUserTextView, titleTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,126 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.appbar.AppBarLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityImageViewerBinding implements ViewBinding {
@NonNull
private final CoordinatorLayout rootView;
@NonNull
public final AppBarLayout appBarLayout;
@NonNull
public final ImageButton backButton;
@NonNull
public final ImageButton downloadButton;
@NonNull
public final ImageView imageView;
@NonNull
public final Toolbar toolbar;
@NonNull
public final TextView toolbarTitle;
private ActivityImageViewerBinding(@NonNull CoordinatorLayout rootView,
@NonNull AppBarLayout appBarLayout, @NonNull ImageButton backButton,
@NonNull ImageButton downloadButton, @NonNull ImageView imageView, @NonNull Toolbar toolbar,
@NonNull TextView toolbarTitle) {
this.rootView = rootView;
this.appBarLayout = appBarLayout;
this.backButton = backButton;
this.downloadButton = downloadButton;
this.imageView = imageView;
this.toolbar = toolbar;
this.toolbarTitle = toolbarTitle;
}
@Override
@NonNull
public CoordinatorLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityImageViewerBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityImageViewerBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_image_viewer, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityImageViewerBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.appBarLayout;
AppBarLayout appBarLayout = ViewBindings.findChildViewById(rootView, id);
if (appBarLayout == null) {
break missingId;
}
id = R.id.backButton;
ImageButton backButton = ViewBindings.findChildViewById(rootView, id);
if (backButton == null) {
break missingId;
}
id = R.id.downloadButton;
ImageButton downloadButton = ViewBindings.findChildViewById(rootView, id);
if (downloadButton == null) {
break missingId;
}
id = R.id.imageView;
ImageView imageView = ViewBindings.findChildViewById(rootView, id);
if (imageView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
id = R.id.toolbarTitle;
TextView toolbarTitle = ViewBindings.findChildViewById(rootView, id);
if (toolbarTitle == null) {
break missingId;
}
return new ActivityImageViewerBinding((CoordinatorLayout) rootView, appBarLayout, backButton,
downloadButton, imageView, toolbar, toolbarTitle);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,194 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityMainBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final RecyclerView chatsRecyclerView;
@NonNull
public final FloatingActionButton createChatFab;
@NonNull
public final ConstraintLayout emptyStateLayout;
@NonNull
public final TextView emptyStateTextView;
@NonNull
public final ConstraintLayout errorStateLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final ProgressBar loadingProgressBar;
@NonNull
public final ImageView logoImageView;
@NonNull
public final ImageButton menuButton;
@NonNull
public final MaterialButton retryButton;
@NonNull
public final SwipeRefreshLayout swipeRefreshLayout;
@NonNull
public final Toolbar toolbar;
private ActivityMainBinding(@NonNull ConstraintLayout rootView,
@NonNull RecyclerView chatsRecyclerView, @NonNull FloatingActionButton createChatFab,
@NonNull ConstraintLayout emptyStateLayout, @NonNull TextView emptyStateTextView,
@NonNull ConstraintLayout errorStateLayout, @NonNull TextView errorTextView,
@NonNull ProgressBar loadingProgressBar, @NonNull ImageView logoImageView,
@NonNull ImageButton menuButton, @NonNull MaterialButton retryButton,
@NonNull SwipeRefreshLayout swipeRefreshLayout, @NonNull Toolbar toolbar) {
this.rootView = rootView;
this.chatsRecyclerView = chatsRecyclerView;
this.createChatFab = createChatFab;
this.emptyStateLayout = emptyStateLayout;
this.emptyStateTextView = emptyStateTextView;
this.errorStateLayout = errorStateLayout;
this.errorTextView = errorTextView;
this.loadingProgressBar = loadingProgressBar;
this.logoImageView = logoImageView;
this.menuButton = menuButton;
this.retryButton = retryButton;
this.swipeRefreshLayout = swipeRefreshLayout;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_main, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityMainBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatsRecyclerView;
RecyclerView chatsRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (chatsRecyclerView == null) {
break missingId;
}
id = R.id.createChatFab;
FloatingActionButton createChatFab = ViewBindings.findChildViewById(rootView, id);
if (createChatFab == null) {
break missingId;
}
id = R.id.emptyStateLayout;
ConstraintLayout emptyStateLayout = ViewBindings.findChildViewById(rootView, id);
if (emptyStateLayout == null) {
break missingId;
}
id = R.id.emptyStateTextView;
TextView emptyStateTextView = ViewBindings.findChildViewById(rootView, id);
if (emptyStateTextView == null) {
break missingId;
}
id = R.id.errorStateLayout;
ConstraintLayout errorStateLayout = ViewBindings.findChildViewById(rootView, id);
if (errorStateLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.loadingProgressBar;
ProgressBar loadingProgressBar = ViewBindings.findChildViewById(rootView, id);
if (loadingProgressBar == null) {
break missingId;
}
id = R.id.logoImageView;
ImageView logoImageView = ViewBindings.findChildViewById(rootView, id);
if (logoImageView == null) {
break missingId;
}
id = R.id.menuButton;
ImageButton menuButton = ViewBindings.findChildViewById(rootView, id);
if (menuButton == null) {
break missingId;
}
id = R.id.retryButton;
MaterialButton retryButton = ViewBindings.findChildViewById(rootView, id);
if (retryButton == null) {
break missingId;
}
id = R.id.swipeRefreshLayout;
SwipeRefreshLayout swipeRefreshLayout = ViewBindings.findChildViewById(rootView, id);
if (swipeRefreshLayout == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityMainBinding((ConstraintLayout) rootView, chatsRecyclerView, createChatFab,
emptyStateLayout, emptyStateTextView, errorStateLayout, errorTextView, loadingProgressBar,
logoImageView, menuButton, retryButton, swipeRefreshLayout, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,225 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityProfileBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextView avatarHintTextView;
@NonNull
public final ImageView avatarImageView;
@NonNull
public final ConstraintLayout avatarSection;
@NonNull
public final TextInputEditText emailEditText;
@NonNull
public final TextInputLayout emailInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final TextInputEditText firstNameEditText;
@NonNull
public final TextInputLayout firstNameInputLayout;
@NonNull
public final TextInputEditText lastNameEditText;
@NonNull
public final TextInputLayout lastNameInputLayout;
@NonNull
public final TextInputEditText phoneEditText;
@NonNull
public final TextInputLayout phoneInputLayout;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final MaterialButton saveButton;
@NonNull
public final Toolbar toolbar;
private ActivityProfileBinding(@NonNull ConstraintLayout rootView,
@NonNull TextView avatarHintTextView, @NonNull ImageView avatarImageView,
@NonNull ConstraintLayout avatarSection, @NonNull TextInputEditText emailEditText,
@NonNull TextInputLayout emailInputLayout, @NonNull TextView errorTextView,
@NonNull TextInputEditText firstNameEditText, @NonNull TextInputLayout firstNameInputLayout,
@NonNull TextInputEditText lastNameEditText, @NonNull TextInputLayout lastNameInputLayout,
@NonNull TextInputEditText phoneEditText, @NonNull TextInputLayout phoneInputLayout,
@NonNull ProgressBar progressBar, @NonNull MaterialButton saveButton,
@NonNull Toolbar toolbar) {
this.rootView = rootView;
this.avatarHintTextView = avatarHintTextView;
this.avatarImageView = avatarImageView;
this.avatarSection = avatarSection;
this.emailEditText = emailEditText;
this.emailInputLayout = emailInputLayout;
this.errorTextView = errorTextView;
this.firstNameEditText = firstNameEditText;
this.firstNameInputLayout = firstNameInputLayout;
this.lastNameEditText = lastNameEditText;
this.lastNameInputLayout = lastNameInputLayout;
this.phoneEditText = phoneEditText;
this.phoneInputLayout = phoneInputLayout;
this.progressBar = progressBar;
this.saveButton = saveButton;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityProfileBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityProfileBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_profile, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityProfileBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.avatarHintTextView;
TextView avatarHintTextView = ViewBindings.findChildViewById(rootView, id);
if (avatarHintTextView == null) {
break missingId;
}
id = R.id.avatarImageView;
ImageView avatarImageView = ViewBindings.findChildViewById(rootView, id);
if (avatarImageView == null) {
break missingId;
}
id = R.id.avatarSection;
ConstraintLayout avatarSection = ViewBindings.findChildViewById(rootView, id);
if (avatarSection == null) {
break missingId;
}
id = R.id.emailEditText;
TextInputEditText emailEditText = ViewBindings.findChildViewById(rootView, id);
if (emailEditText == null) {
break missingId;
}
id = R.id.emailInputLayout;
TextInputLayout emailInputLayout = ViewBindings.findChildViewById(rootView, id);
if (emailInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.firstNameEditText;
TextInputEditText firstNameEditText = ViewBindings.findChildViewById(rootView, id);
if (firstNameEditText == null) {
break missingId;
}
id = R.id.firstNameInputLayout;
TextInputLayout firstNameInputLayout = ViewBindings.findChildViewById(rootView, id);
if (firstNameInputLayout == null) {
break missingId;
}
id = R.id.lastNameEditText;
TextInputEditText lastNameEditText = ViewBindings.findChildViewById(rootView, id);
if (lastNameEditText == null) {
break missingId;
}
id = R.id.lastNameInputLayout;
TextInputLayout lastNameInputLayout = ViewBindings.findChildViewById(rootView, id);
if (lastNameInputLayout == null) {
break missingId;
}
id = R.id.phoneEditText;
TextInputEditText phoneEditText = ViewBindings.findChildViewById(rootView, id);
if (phoneEditText == null) {
break missingId;
}
id = R.id.phoneInputLayout;
TextInputLayout phoneInputLayout = ViewBindings.findChildViewById(rootView, id);
if (phoneInputLayout == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.saveButton;
MaterialButton saveButton = ViewBindings.findChildViewById(rootView, id);
if (saveButton == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivityProfileBinding((ConstraintLayout) rootView, avatarHintTextView,
avatarImageView, avatarSection, emailEditText, emailInputLayout, errorTextView,
firstNameEditText, firstNameInputLayout, lastNameEditText, lastNameInputLayout,
phoneEditText, phoneInputLayout, progressBar, saveButton, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,204 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.switchmaterial.SwitchMaterial;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivitySettingsBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final TextInputEditText apiKeyEditText;
@NonNull
public final TextInputLayout apiKeyInputLayout;
@NonNull
public final TextView errorTextView;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final MaterialButton saveButton;
@NonNull
public final ConstraintLayout serverSection;
@NonNull
public final TextView serverTitleTextView;
@NonNull
public final TextInputEditText serverUrlEditText;
@NonNull
public final TextInputLayout serverUrlInputLayout;
@NonNull
public final ConstraintLayout themeSection;
@NonNull
public final SwitchMaterial themeSwitch;
@NonNull
public final TextView themeTitleTextView;
@NonNull
public final Toolbar toolbar;
private ActivitySettingsBinding(@NonNull ConstraintLayout rootView,
@NonNull TextInputEditText apiKeyEditText, @NonNull TextInputLayout apiKeyInputLayout,
@NonNull TextView errorTextView, @NonNull ProgressBar progressBar,
@NonNull MaterialButton saveButton, @NonNull ConstraintLayout serverSection,
@NonNull TextView serverTitleTextView, @NonNull TextInputEditText serverUrlEditText,
@NonNull TextInputLayout serverUrlInputLayout, @NonNull ConstraintLayout themeSection,
@NonNull SwitchMaterial themeSwitch, @NonNull TextView themeTitleTextView,
@NonNull Toolbar toolbar) {
this.rootView = rootView;
this.apiKeyEditText = apiKeyEditText;
this.apiKeyInputLayout = apiKeyInputLayout;
this.errorTextView = errorTextView;
this.progressBar = progressBar;
this.saveButton = saveButton;
this.serverSection = serverSection;
this.serverTitleTextView = serverTitleTextView;
this.serverUrlEditText = serverUrlEditText;
this.serverUrlInputLayout = serverUrlInputLayout;
this.themeSection = themeSection;
this.themeSwitch = themeSwitch;
this.themeTitleTextView = themeTitleTextView;
this.toolbar = toolbar;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivitySettingsBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivitySettingsBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_settings, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivitySettingsBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.apiKeyEditText;
TextInputEditText apiKeyEditText = ViewBindings.findChildViewById(rootView, id);
if (apiKeyEditText == null) {
break missingId;
}
id = R.id.apiKeyInputLayout;
TextInputLayout apiKeyInputLayout = ViewBindings.findChildViewById(rootView, id);
if (apiKeyInputLayout == null) {
break missingId;
}
id = R.id.errorTextView;
TextView errorTextView = ViewBindings.findChildViewById(rootView, id);
if (errorTextView == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.saveButton;
MaterialButton saveButton = ViewBindings.findChildViewById(rootView, id);
if (saveButton == null) {
break missingId;
}
id = R.id.serverSection;
ConstraintLayout serverSection = ViewBindings.findChildViewById(rootView, id);
if (serverSection == null) {
break missingId;
}
id = R.id.serverTitleTextView;
TextView serverTitleTextView = ViewBindings.findChildViewById(rootView, id);
if (serverTitleTextView == null) {
break missingId;
}
id = R.id.serverUrlEditText;
TextInputEditText serverUrlEditText = ViewBindings.findChildViewById(rootView, id);
if (serverUrlEditText == null) {
break missingId;
}
id = R.id.serverUrlInputLayout;
TextInputLayout serverUrlInputLayout = ViewBindings.findChildViewById(rootView, id);
if (serverUrlInputLayout == null) {
break missingId;
}
id = R.id.themeSection;
ConstraintLayout themeSection = ViewBindings.findChildViewById(rootView, id);
if (themeSection == null) {
break missingId;
}
id = R.id.themeSwitch;
SwitchMaterial themeSwitch = ViewBindings.findChildViewById(rootView, id);
if (themeSwitch == null) {
break missingId;
}
id = R.id.themeTitleTextView;
TextView themeTitleTextView = ViewBindings.findChildViewById(rootView, id);
if (themeTitleTextView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
return new ActivitySettingsBinding((ConstraintLayout) rootView, apiKeyEditText,
apiKeyInputLayout, errorTextView, progressBar, saveButton, serverSection,
serverTitleTextView, serverUrlEditText, serverUrlInputLayout, themeSection, themeSwitch,
themeTitleTextView, toolbar);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,127 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.SearchView;
import androidx.appcompat.widget.Toolbar;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.button.MaterialButton;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityUserSelectionBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final MaterialButton doneButton;
@NonNull
public final TextView emptyTextView;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final SearchView searchView;
@NonNull
public final Toolbar toolbar;
@NonNull
public final RecyclerView usersRecyclerView;
private ActivityUserSelectionBinding(@NonNull ConstraintLayout rootView,
@NonNull MaterialButton doneButton, @NonNull TextView emptyTextView,
@NonNull ProgressBar progressBar, @NonNull SearchView searchView, @NonNull Toolbar toolbar,
@NonNull RecyclerView usersRecyclerView) {
this.rootView = rootView;
this.doneButton = doneButton;
this.emptyTextView = emptyTextView;
this.progressBar = progressBar;
this.searchView = searchView;
this.toolbar = toolbar;
this.usersRecyclerView = usersRecyclerView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityUserSelectionBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityUserSelectionBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_user_selection, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityUserSelectionBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.doneButton;
MaterialButton doneButton = ViewBindings.findChildViewById(rootView, id);
if (doneButton == null) {
break missingId;
}
id = R.id.emptyTextView;
TextView emptyTextView = ViewBindings.findChildViewById(rootView, id);
if (emptyTextView == null) {
break missingId;
}
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.searchView;
SearchView searchView = ViewBindings.findChildViewById(rootView, id);
if (searchView == null) {
break missingId;
}
id = R.id.toolbar;
Toolbar toolbar = ViewBindings.findChildViewById(rootView, id);
if (toolbar == null) {
break missingId;
}
id = R.id.usersRecyclerView;
RecyclerView usersRecyclerView = ViewBindings.findChildViewById(rootView, id);
if (usersRecyclerView == null) {
break missingId;
}
return new ActivityUserSelectionBinding((ConstraintLayout) rootView, doneButton,
emptyTextView, progressBar, searchView, toolbar, usersRecyclerView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,113 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.card.MaterialCardView;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemChatBinding implements ViewBinding {
@NonNull
private final MaterialCardView rootView;
@NonNull
public final ImageView chatAvatarImageView;
@NonNull
public final TextView chatNameTextView;
@NonNull
public final TextView lastMessageTextView;
@NonNull
public final TextView lastMessageTimeTextView;
@NonNull
public final TextView unreadCountBadge;
private ItemChatBinding(@NonNull MaterialCardView rootView,
@NonNull ImageView chatAvatarImageView, @NonNull TextView chatNameTextView,
@NonNull TextView lastMessageTextView, @NonNull TextView lastMessageTimeTextView,
@NonNull TextView unreadCountBadge) {
this.rootView = rootView;
this.chatAvatarImageView = chatAvatarImageView;
this.chatNameTextView = chatNameTextView;
this.lastMessageTextView = lastMessageTextView;
this.lastMessageTimeTextView = lastMessageTimeTextView;
this.unreadCountBadge = unreadCountBadge;
}
@Override
@NonNull
public MaterialCardView getRoot() {
return rootView;
}
@NonNull
public static ItemChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.chatAvatarImageView;
ImageView chatAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (chatAvatarImageView == null) {
break missingId;
}
id = R.id.chatNameTextView;
TextView chatNameTextView = ViewBindings.findChildViewById(rootView, id);
if (chatNameTextView == null) {
break missingId;
}
id = R.id.lastMessageTextView;
TextView lastMessageTextView = ViewBindings.findChildViewById(rootView, id);
if (lastMessageTextView == null) {
break missingId;
}
id = R.id.lastMessageTimeTextView;
TextView lastMessageTimeTextView = ViewBindings.findChildViewById(rootView, id);
if (lastMessageTimeTextView == null) {
break missingId;
}
id = R.id.unreadCountBadge;
TextView unreadCountBadge = ViewBindings.findChildViewById(rootView, id);
if (unreadCountBadge == null) {
break missingId;
}
return new ItemChatBinding((MaterialCardView) rootView, chatAvatarImageView, chatNameTextView,
lastMessageTextView, lastMessageTimeTextView, unreadCountBadge);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,287 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.cardview.widget.CardView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemMessageBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final LinearLayout receivedFileLayout;
@NonNull
public final TextView receivedFileNameText;
@NonNull
public final ImageView receivedImagePreview;
@NonNull
public final CardView receivedMessageCard;
@NonNull
public final TextView receivedMessageText;
@NonNull
public final LinearLayout receivedReplyIndicator;
@NonNull
public final TextView receivedReplyMessageText;
@NonNull
public final TextView receivedReplySenderText;
@NonNull
public final LinearLayout replyIndicator;
@NonNull
public final TextView replyMessageText;
@NonNull
public final TextView replySenderText;
@NonNull
public final TextView senderNameText;
@NonNull
public final LinearLayout sentFileLayout;
@NonNull
public final TextView sentFileNameText;
@NonNull
public final ImageView sentImagePreview;
@NonNull
public final CardView sentMessageCard;
@NonNull
public final TextView sentMessageText;
@NonNull
public final LinearLayout sentReplyIndicator;
@NonNull
public final TextView sentReplyMessageText;
@NonNull
public final TextView sentReplySenderText;
@NonNull
public final TextView timestampText;
private ItemMessageBinding(@NonNull ConstraintLayout rootView,
@NonNull LinearLayout receivedFileLayout, @NonNull TextView receivedFileNameText,
@NonNull ImageView receivedImagePreview, @NonNull CardView receivedMessageCard,
@NonNull TextView receivedMessageText, @NonNull LinearLayout receivedReplyIndicator,
@NonNull TextView receivedReplyMessageText, @NonNull TextView receivedReplySenderText,
@NonNull LinearLayout replyIndicator, @NonNull TextView replyMessageText,
@NonNull TextView replySenderText, @NonNull TextView senderNameText,
@NonNull LinearLayout sentFileLayout, @NonNull TextView sentFileNameText,
@NonNull ImageView sentImagePreview, @NonNull CardView sentMessageCard,
@NonNull TextView sentMessageText, @NonNull LinearLayout sentReplyIndicator,
@NonNull TextView sentReplyMessageText, @NonNull TextView sentReplySenderText,
@NonNull TextView timestampText) {
this.rootView = rootView;
this.receivedFileLayout = receivedFileLayout;
this.receivedFileNameText = receivedFileNameText;
this.receivedImagePreview = receivedImagePreview;
this.receivedMessageCard = receivedMessageCard;
this.receivedMessageText = receivedMessageText;
this.receivedReplyIndicator = receivedReplyIndicator;
this.receivedReplyMessageText = receivedReplyMessageText;
this.receivedReplySenderText = receivedReplySenderText;
this.replyIndicator = replyIndicator;
this.replyMessageText = replyMessageText;
this.replySenderText = replySenderText;
this.senderNameText = senderNameText;
this.sentFileLayout = sentFileLayout;
this.sentFileNameText = sentFileNameText;
this.sentImagePreview = sentImagePreview;
this.sentMessageCard = sentMessageCard;
this.sentMessageText = sentMessageText;
this.sentReplyIndicator = sentReplyIndicator;
this.sentReplyMessageText = sentReplyMessageText;
this.sentReplySenderText = sentReplySenderText;
this.timestampText = timestampText;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ItemMessageBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemMessageBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_message, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemMessageBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.receivedFileLayout;
LinearLayout receivedFileLayout = ViewBindings.findChildViewById(rootView, id);
if (receivedFileLayout == null) {
break missingId;
}
id = R.id.receivedFileNameText;
TextView receivedFileNameText = ViewBindings.findChildViewById(rootView, id);
if (receivedFileNameText == null) {
break missingId;
}
id = R.id.receivedImagePreview;
ImageView receivedImagePreview = ViewBindings.findChildViewById(rootView, id);
if (receivedImagePreview == null) {
break missingId;
}
id = R.id.receivedMessageCard;
CardView receivedMessageCard = ViewBindings.findChildViewById(rootView, id);
if (receivedMessageCard == null) {
break missingId;
}
id = R.id.receivedMessageText;
TextView receivedMessageText = ViewBindings.findChildViewById(rootView, id);
if (receivedMessageText == null) {
break missingId;
}
id = R.id.receivedReplyIndicator;
LinearLayout receivedReplyIndicator = ViewBindings.findChildViewById(rootView, id);
if (receivedReplyIndicator == null) {
break missingId;
}
id = R.id.receivedReplyMessageText;
TextView receivedReplyMessageText = ViewBindings.findChildViewById(rootView, id);
if (receivedReplyMessageText == null) {
break missingId;
}
id = R.id.receivedReplySenderText;
TextView receivedReplySenderText = ViewBindings.findChildViewById(rootView, id);
if (receivedReplySenderText == null) {
break missingId;
}
id = R.id.replyIndicator;
LinearLayout replyIndicator = ViewBindings.findChildViewById(rootView, id);
if (replyIndicator == null) {
break missingId;
}
id = R.id.replyMessageText;
TextView replyMessageText = ViewBindings.findChildViewById(rootView, id);
if (replyMessageText == null) {
break missingId;
}
id = R.id.replySenderText;
TextView replySenderText = ViewBindings.findChildViewById(rootView, id);
if (replySenderText == null) {
break missingId;
}
id = R.id.senderNameText;
TextView senderNameText = ViewBindings.findChildViewById(rootView, id);
if (senderNameText == null) {
break missingId;
}
id = R.id.sentFileLayout;
LinearLayout sentFileLayout = ViewBindings.findChildViewById(rootView, id);
if (sentFileLayout == null) {
break missingId;
}
id = R.id.sentFileNameText;
TextView sentFileNameText = ViewBindings.findChildViewById(rootView, id);
if (sentFileNameText == null) {
break missingId;
}
id = R.id.sentImagePreview;
ImageView sentImagePreview = ViewBindings.findChildViewById(rootView, id);
if (sentImagePreview == null) {
break missingId;
}
id = R.id.sentMessageCard;
CardView sentMessageCard = ViewBindings.findChildViewById(rootView, id);
if (sentMessageCard == null) {
break missingId;
}
id = R.id.sentMessageText;
TextView sentMessageText = ViewBindings.findChildViewById(rootView, id);
if (sentMessageText == null) {
break missingId;
}
id = R.id.sentReplyIndicator;
LinearLayout sentReplyIndicator = ViewBindings.findChildViewById(rootView, id);
if (sentReplyIndicator == null) {
break missingId;
}
id = R.id.sentReplyMessageText;
TextView sentReplyMessageText = ViewBindings.findChildViewById(rootView, id);
if (sentReplyMessageText == null) {
break missingId;
}
id = R.id.sentReplySenderText;
TextView sentReplySenderText = ViewBindings.findChildViewById(rootView, id);
if (sentReplySenderText == null) {
break missingId;
}
id = R.id.timestampText;
TextView timestampText = ViewBindings.findChildViewById(rootView, id);
if (timestampText == null) {
break missingId;
}
return new ItemMessageBinding((ConstraintLayout) rootView, receivedFileLayout,
receivedFileNameText, receivedImagePreview, receivedMessageCard, receivedMessageText,
receivedReplyIndicator, receivedReplyMessageText, receivedReplySenderText, replyIndicator,
replyMessageText, replySenderText, senderNameText, sentFileLayout, sentFileNameText,
sentImagePreview, sentMessageCard, sentMessageText, sentReplyIndicator,
sentReplyMessageText, sentReplySenderText, timestampText);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,102 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import com.google.android.material.card.MaterialCardView;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemUserBinding implements ViewBinding {
@NonNull
private final MaterialCardView rootView;
@NonNull
public final ImageView userAvatarImageView;
@NonNull
public final TextView userEmailTextView;
@NonNull
public final TextView userIdTextView;
@NonNull
public final TextView userNameTextView;
private ItemUserBinding(@NonNull MaterialCardView rootView,
@NonNull ImageView userAvatarImageView, @NonNull TextView userEmailTextView,
@NonNull TextView userIdTextView, @NonNull TextView userNameTextView) {
this.rootView = rootView;
this.userAvatarImageView = userAvatarImageView;
this.userEmailTextView = userEmailTextView;
this.userIdTextView = userIdTextView;
this.userNameTextView = userNameTextView;
}
@Override
@NonNull
public MaterialCardView getRoot() {
return rootView;
}
@NonNull
public static ItemUserBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemUserBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_user, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemUserBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.userAvatarImageView;
ImageView userAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (userAvatarImageView == null) {
break missingId;
}
id = R.id.userEmailTextView;
TextView userEmailTextView = ViewBindings.findChildViewById(rootView, id);
if (userEmailTextView == null) {
break missingId;
}
id = R.id.userIdTextView;
TextView userIdTextView = ViewBindings.findChildViewById(rootView, id);
if (userIdTextView == null) {
break missingId;
}
id = R.id.userNameTextView;
TextView userNameTextView = ViewBindings.findChildViewById(rootView, id);
if (userNameTextView == null) {
break missingId;
}
return new ItemUserBinding((MaterialCardView) rootView, userAvatarImageView,
userEmailTextView, userIdTextView, userNameTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,92 @@
// Generated by view binder compiler. Do not edit!
package com.crm.chat.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.crm.chat.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ToolbarChatBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
@NonNull
public final ImageButton backButton;
@NonNull
public final ImageView chatAvatarImageView;
@NonNull
public final TextView chatNameTextView;
private ToolbarChatBinding(@NonNull ConstraintLayout rootView, @NonNull ImageButton backButton,
@NonNull ImageView chatAvatarImageView, @NonNull TextView chatNameTextView) {
this.rootView = rootView;
this.backButton = backButton;
this.chatAvatarImageView = chatAvatarImageView;
this.chatNameTextView = chatNameTextView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ToolbarChatBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ToolbarChatBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.toolbar_chat, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ToolbarChatBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.backButton;
ImageButton backButton = ViewBindings.findChildViewById(rootView, id);
if (backButton == null) {
break missingId;
}
id = R.id.chatAvatarImageView;
ImageView chatAvatarImageView = ViewBindings.findChildViewById(rootView, id);
if (chatAvatarImageView == null) {
break missingId;
}
id = R.id.chatNameTextView;
TextView chatNameTextView = ViewBindings.findChildViewById(rootView, id);
if (chatNameTextView == null) {
break missingId;
}
return new ToolbarChatBinding((ConstraintLayout) rootView, backButton, chatAvatarImageView,
chatNameTextView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,386 @@
<dependencies>
<compile
roots=":@@:app::debug,androidx.test.ext:junit:1.1.5@aar,androidx.test.espresso:espresso-core:3.5.1@aar,androidx.databinding:viewbinding:8.12.0@aar,com.google.android.material:material:1.11.0@aar,androidx.appcompat:appcompat:1.6.1@aar,com.github.bumptech.glide:glide:4.16.0@aar,androidx.viewpager2:viewpager2:1.0.0@aar,androidx.fragment:fragment:1.6.2@aar,androidx.fragment:fragment:1.6.2@aar,androidx.fragment:fragment-ktx:1.6.2@aar,androidx.activity:activity:1.8.2@aar,androidx.activity:activity-compose:1.8.2@aar,androidx.activity:activity-ktx:1.8.2@aar,androidx.swiperefreshlayout:swiperefreshlayout:1.1.0@aar,androidx.appcompat:appcompat-resources:1.6.1@aar,androidx.drawerlayout:drawerlayout:1.1.1@aar,androidx.coordinatorlayout:coordinatorlayout:1.1.0@aar,androidx.dynamicanimation:dynamicanimation:1.0.0@aar,androidx.transition:transition:1.2.0@aar,androidx.vectordrawable:vectordrawable-animated:1.1.0@aar,androidx.vectordrawable:vectordrawable:1.1.0@aar,androidx.legacy:legacy-support-core-utils:1.0.0@aar,androidx.loader:loader:1.0.0@aar,androidx.viewpager:viewpager:1.0.0@aar,androidx.recyclerview:recyclerview:1.1.0@aar,androidx.customview:customview:1.1.0@aar,androidx.core:core:1.12.0@aar,androidx.core:core:1.12.0@aar,androidx.test:core:1.5.0@aar,androidx.work:work-runtime-ktx:2.9.0@aar,androidx.work:work-runtime:2.9.0@aar,androidx.lifecycle:lifecycle-livedata:2.7.0@aar,androidx.lifecycle:lifecycle-livedata:2.7.0@aar,androidx.lifecycle:lifecycle-livedata-core:2.7.0@aar,androidx.lifecycle:lifecycle-common:2.7.0@jar,androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0@aar,androidx.lifecycle:lifecycle-livedata-core-ktx:2.7.0@aar,androidx.lifecycle:lifecycle-runtime:2.7.0@aar,androidx.lifecycle:lifecycle-runtime-ktx:2.7.0@aar,androidx.lifecycle:lifecycle-viewmodel:2.7.0@aar,androidx.lifecycle:lifecycle-viewmodel:2.7.0@aar,androidx.lifecycle:lifecycle-viewmodel-savedstate:2.7.0@aar,androidx.core:core-ktx:1.12.0@aar,androidx.room:room-common:2.6.1@jar,androidx.room:room-runtime:2.6.1@aar,androidx.room:room-ktx:2.6.1@aar,androidx.collection:collection-ktx:1.1.0@jar,androidx.savedstate:savedstate:1.2.1@aar,androidx.savedstate:savedstate-ktx:1.2.1@aar,androidx.test:runner:1.5.2@aar,androidx.test.services:storage:1.4.2@aar,androidx.test:monitor:1.6.1@aar,androidx.test:annotation:1.0.1@aar,androidx.annotation:annotation-experimental:1.3.0@aar,androidx.cardview:cardview:1.0.0@aar,androidx.compose.ui:ui:1.0.1@aar,androidx.compose.runtime:runtime-saveable:1.0.1@aar,androidx.cursoradapter:cursoradapter:1.0.0@aar,androidx.interpolator:interpolator:1.0.0@aar,com.github.bumptech.glide:gifdecoder:4.16.0@aar,androidx.sqlite:sqlite-framework:2.4.0@aar,androidx.sqlite:sqlite:2.4.0@aar,androidx.concurrent:concurrent-futures:1.1.0@jar,androidx.versionedparcelable:versionedparcelable:1.1.1@aar,androidx.arch.core:core-runtime:2.2.0@aar,androidx.arch.core:core-common:2.2.0@jar,androidx.compose.ui:ui-text:1.0.1@aar,androidx.compose.ui:ui-graphics:1.0.1@aar,androidx.compose.ui:ui-unit:1.0.1@aar,androidx.compose.ui:ui-geometry:1.0.1@aar,androidx.collection:collection:1.1.0@jar,androidx.documentfile:documentfile:1.0.0@aar,androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar,androidx.print:print:1.0.0@aar,androidx.annotation:annotation-jvm:1.6.0@jar,com.squareup.retrofit2:converter-gson:2.9.0@jar,com.squareup.retrofit2:retrofit:2.9.0@jar,com.squareup.okhttp3:logging-interceptor:4.12.0@jar,com.squareup.okhttp3:okhttp:4.12.0@jar,androidx.compose.runtime:runtime:1.0.1@aar,org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.1@jar,org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1@jar,com.squareup.okio:okio-jvm:3.6.0@jar,org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10@jar,org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.10@jar,org.jetbrains.kotlin:kotlin-stdlib:1.9.22@jar,androidx.constraintlayout:constraintlayout:2.1.4@aar,com.google.code.gson:gson:2.10.1@jar,junit:junit:4.13.2@jar,org.hamcrest:hamcrest-integration:1.3@jar,org.hamcrest:hamcrest-library:1.3@jar,org.hamcrest:hamcrest-core:1.3@jar,org.jetbrains:annotations:23.0.0@jar,androidx.tracing:tracing:1.0.0@aar,com.google.code.findbugs:jsr305:2.0.2@jar,com.google.guava:listenablefuture:1.0@jar,androidx.test.espresso:espresso-idling-resource:3.5.1@aar,com.squareup:javawriter:2.1.1@jar,javax.inject:javax.inject:1@jar,androidx.resourceinspection:resourceinspection-annotation:1.0.1@jar,com.github.bumptech.glide:disklrucache:4.16.0@jar,com.github.bumptech.glide:annotations:4.16.0@jar,androidx.exifinterface:exifinterface:1.3.6@aar,androidx.startup:startup-runtime:1.1.1@aar">
<dependency
name=":@@:app::debug"
simpleName="artifacts::app"/>
<dependency
name="androidx.test.ext:junit:1.1.5@aar"
simpleName="androidx.test.ext:junit"/>
<dependency
name="androidx.test.espresso:espresso-core:3.5.1@aar"
simpleName="androidx.test.espresso:espresso-core"/>
<dependency
name="androidx.databinding:viewbinding:8.12.0@aar"
simpleName="androidx.databinding:viewbinding"/>
<dependency
name="com.google.android.material:material:1.11.0@aar"
simpleName="com.google.android.material:material"/>
<dependency
name="androidx.appcompat:appcompat:1.6.1@aar"
simpleName="androidx.appcompat:appcompat"/>
<dependency
name="com.github.bumptech.glide:glide:4.16.0@aar"
simpleName="com.github.bumptech.glide:glide"/>
<dependency
name="androidx.viewpager2:viewpager2:1.0.0@aar"
simpleName="androidx.viewpager2:viewpager2"/>
<dependency
name="androidx.fragment:fragment:1.6.2@aar"
simpleName="androidx.fragment:fragment"/>
<dependency
name="androidx.fragment:fragment-ktx:1.6.2@aar"
simpleName="androidx.fragment:fragment-ktx"/>
<dependency
name="androidx.activity:activity:1.8.2@aar"
simpleName="androidx.activity:activity"/>
<dependency
name="androidx.activity:activity-compose:1.8.2@aar"
simpleName="androidx.activity:activity-compose"/>
<dependency
name="androidx.activity:activity-ktx:1.8.2@aar"
simpleName="androidx.activity:activity-ktx"/>
<dependency
name="androidx.swiperefreshlayout:swiperefreshlayout:1.1.0@aar"
simpleName="androidx.swiperefreshlayout:swiperefreshlayout"/>
<dependency
name="androidx.appcompat:appcompat-resources:1.6.1@aar"
simpleName="androidx.appcompat:appcompat-resources"/>
<dependency
name="androidx.drawerlayout:drawerlayout:1.1.1@aar"
simpleName="androidx.drawerlayout:drawerlayout"/>
<dependency
name="androidx.coordinatorlayout:coordinatorlayout:1.1.0@aar"
simpleName="androidx.coordinatorlayout:coordinatorlayout"/>
<dependency
name="androidx.dynamicanimation:dynamicanimation:1.0.0@aar"
simpleName="androidx.dynamicanimation:dynamicanimation"/>
<dependency
name="androidx.transition:transition:1.2.0@aar"
simpleName="androidx.transition:transition"/>
<dependency
name="androidx.vectordrawable:vectordrawable-animated:1.1.0@aar"
simpleName="androidx.vectordrawable:vectordrawable-animated"/>
<dependency
name="androidx.vectordrawable:vectordrawable:1.1.0@aar"
simpleName="androidx.vectordrawable:vectordrawable"/>
<dependency
name="androidx.legacy:legacy-support-core-utils:1.0.0@aar"
simpleName="androidx.legacy:legacy-support-core-utils"/>
<dependency
name="androidx.loader:loader:1.0.0@aar"
simpleName="androidx.loader:loader"/>
<dependency
name="androidx.viewpager:viewpager:1.0.0@aar"
simpleName="androidx.viewpager:viewpager"/>
<dependency
name="androidx.recyclerview:recyclerview:1.1.0@aar"
simpleName="androidx.recyclerview:recyclerview"/>
<dependency
name="androidx.customview:customview:1.1.0@aar"
simpleName="androidx.customview:customview"/>
<dependency
name="androidx.core:core:1.12.0@aar"
simpleName="androidx.core:core"/>
<dependency
name="androidx.test:core:1.5.0@aar"
simpleName="androidx.test:core"/>
<dependency
name="androidx.work:work-runtime-ktx:2.9.0@aar"
simpleName="androidx.work:work-runtime-ktx"/>
<dependency
name="androidx.work:work-runtime:2.9.0@aar"
simpleName="androidx.work:work-runtime"/>
<dependency
name="androidx.lifecycle:lifecycle-livedata:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-livedata"/>
<dependency
name="androidx.lifecycle:lifecycle-livedata-core:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-livedata-core"/>
<dependency
name="androidx.lifecycle:lifecycle-common:2.7.0@jar"
simpleName="androidx.lifecycle:lifecycle-common"/>
<dependency
name="androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-viewmodel-ktx"/>
<dependency
name="androidx.lifecycle:lifecycle-livedata-core-ktx:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-livedata-core-ktx"/>
<dependency
name="androidx.lifecycle:lifecycle-runtime:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-runtime"/>
<dependency
name="androidx.lifecycle:lifecycle-runtime-ktx:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-runtime-ktx"/>
<dependency
name="androidx.lifecycle:lifecycle-viewmodel:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-viewmodel"/>
<dependency
name="androidx.lifecycle:lifecycle-viewmodel-savedstate:2.7.0@aar"
simpleName="androidx.lifecycle:lifecycle-viewmodel-savedstate"/>
<dependency
name="androidx.core:core-ktx:1.12.0@aar"
simpleName="androidx.core:core-ktx"/>
<dependency
name="androidx.room:room-common:2.6.1@jar"
simpleName="androidx.room:room-common"/>
<dependency
name="androidx.room:room-runtime:2.6.1@aar"
simpleName="androidx.room:room-runtime"/>
<dependency
name="androidx.room:room-ktx:2.6.1@aar"
simpleName="androidx.room:room-ktx"/>
<dependency
name="androidx.collection:collection-ktx:1.1.0@jar"
simpleName="androidx.collection:collection-ktx"/>
<dependency
name="androidx.savedstate:savedstate:1.2.1@aar"
simpleName="androidx.savedstate:savedstate"/>
<dependency
name="androidx.savedstate:savedstate-ktx:1.2.1@aar"
simpleName="androidx.savedstate:savedstate-ktx"/>
<dependency
name="androidx.test:runner:1.5.2@aar"
simpleName="androidx.test:runner"/>
<dependency
name="androidx.test.services:storage:1.4.2@aar"
simpleName="androidx.test.services:storage"/>
<dependency
name="androidx.test:monitor:1.6.1@aar"
simpleName="androidx.test:monitor"/>
<dependency
name="androidx.test:annotation:1.0.1@aar"
simpleName="androidx.test:annotation"/>
<dependency
name="androidx.annotation:annotation-experimental:1.3.0@aar"
simpleName="androidx.annotation:annotation-experimental"/>
<dependency
name="androidx.cardview:cardview:1.0.0@aar"
simpleName="androidx.cardview:cardview"/>
<dependency
name="androidx.compose.ui:ui:1.0.1@aar"
simpleName="androidx.compose.ui:ui"/>
<dependency
name="androidx.compose.runtime:runtime-saveable:1.0.1@aar"
simpleName="androidx.compose.runtime:runtime-saveable"/>
<dependency
name="androidx.cursoradapter:cursoradapter:1.0.0@aar"
simpleName="androidx.cursoradapter:cursoradapter"/>
<dependency
name="androidx.interpolator:interpolator:1.0.0@aar"
simpleName="androidx.interpolator:interpolator"/>
<dependency
name="com.github.bumptech.glide:gifdecoder:4.16.0@aar"
simpleName="com.github.bumptech.glide:gifdecoder"/>
<dependency
name="androidx.sqlite:sqlite-framework:2.4.0@aar"
simpleName="androidx.sqlite:sqlite-framework"/>
<dependency
name="androidx.sqlite:sqlite:2.4.0@aar"
simpleName="androidx.sqlite:sqlite"/>
<dependency
name="androidx.concurrent:concurrent-futures:1.1.0@jar"
simpleName="androidx.concurrent:concurrent-futures"/>
<dependency
name="androidx.versionedparcelable:versionedparcelable:1.1.1@aar"
simpleName="androidx.versionedparcelable:versionedparcelable"/>
<dependency
name="androidx.arch.core:core-runtime:2.2.0@aar"
simpleName="androidx.arch.core:core-runtime"/>
<dependency
name="androidx.arch.core:core-common:2.2.0@jar"
simpleName="androidx.arch.core:core-common"/>
<dependency
name="androidx.compose.ui:ui-text:1.0.1@aar"
simpleName="androidx.compose.ui:ui-text"/>
<dependency
name="androidx.compose.ui:ui-graphics:1.0.1@aar"
simpleName="androidx.compose.ui:ui-graphics"/>
<dependency
name="androidx.compose.ui:ui-unit:1.0.1@aar"
simpleName="androidx.compose.ui:ui-unit"/>
<dependency
name="androidx.compose.ui:ui-geometry:1.0.1@aar"
simpleName="androidx.compose.ui:ui-geometry"/>
<dependency
name="androidx.collection:collection:1.1.0@jar"
simpleName="androidx.collection:collection"/>
<dependency
name="androidx.documentfile:documentfile:1.0.0@aar"
simpleName="androidx.documentfile:documentfile"/>
<dependency
name="androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar"
simpleName="androidx.localbroadcastmanager:localbroadcastmanager"/>
<dependency
name="androidx.print:print:1.0.0@aar"
simpleName="androidx.print:print"/>
<dependency
name="androidx.annotation:annotation-jvm:1.6.0@jar"
simpleName="androidx.annotation:annotation-jvm"/>
<dependency
name="com.squareup.retrofit2:converter-gson:2.9.0@jar"
simpleName="com.squareup.retrofit2:converter-gson"/>
<dependency
name="com.squareup.retrofit2:retrofit:2.9.0@jar"
simpleName="com.squareup.retrofit2:retrofit"/>
<dependency
name="com.squareup.okhttp3:logging-interceptor:4.12.0@jar"
simpleName="com.squareup.okhttp3:logging-interceptor"/>
<dependency
name="com.squareup.okhttp3:okhttp:4.12.0@jar"
simpleName="com.squareup.okhttp3:okhttp"/>
<dependency
name="androidx.compose.runtime:runtime:1.0.1@aar"
simpleName="androidx.compose.runtime:runtime"/>
<dependency
name="org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.1@jar"
simpleName="org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm"/>
<dependency
name="org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1@jar"
simpleName="org.jetbrains.kotlinx:kotlinx-coroutines-android"/>
<dependency
name="com.squareup.okio:okio-jvm:3.6.0@jar"
simpleName="com.squareup.okio:okio-jvm"/>
<dependency
name="org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10@jar"
simpleName="org.jetbrains.kotlin:kotlin-stdlib-jdk8"/>
<dependency
name="org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.10@jar"
simpleName="org.jetbrains.kotlin:kotlin-stdlib-jdk7"/>
<dependency
name="org.jetbrains.kotlin:kotlin-stdlib:1.9.22@jar"
simpleName="org.jetbrains.kotlin:kotlin-stdlib"/>
<dependency
name="androidx.constraintlayout:constraintlayout:2.1.4@aar"
simpleName="androidx.constraintlayout:constraintlayout"/>
<dependency
name="com.google.code.gson:gson:2.10.1@jar"
simpleName="com.google.code.gson:gson"/>
<dependency
name="junit:junit:4.13.2@jar"
simpleName="junit:junit"/>
<dependency
name="org.hamcrest:hamcrest-integration:1.3@jar"
simpleName="org.hamcrest:hamcrest-integration"/>
<dependency
name="org.hamcrest:hamcrest-library:1.3@jar"
simpleName="org.hamcrest:hamcrest-library"/>
<dependency
name="org.hamcrest:hamcrest-core:1.3@jar"
simpleName="org.hamcrest:hamcrest-core"/>
<dependency
name="org.jetbrains:annotations:23.0.0@jar"
simpleName="org.jetbrains:annotations"/>
<dependency
name="androidx.tracing:tracing:1.0.0@aar"
simpleName="androidx.tracing:tracing"/>
<dependency
name="com.google.code.findbugs:jsr305:2.0.2@jar"
simpleName="com.google.code.findbugs:jsr305"/>
<dependency
name="com.google.guava:listenablefuture:1.0@jar"
simpleName="com.google.guava:listenablefuture"/>
<dependency
name="androidx.test.espresso:espresso-idling-resource:3.5.1@aar"
simpleName="androidx.test.espresso:espresso-idling-resource"/>
<dependency
name="com.squareup:javawriter:2.1.1@jar"
simpleName="com.squareup:javawriter"/>
<dependency
name="javax.inject:javax.inject:1@jar"
simpleName="javax.inject:javax.inject"/>
<dependency
name="androidx.resourceinspection:resourceinspection-annotation:1.0.1@jar"
simpleName="androidx.resourceinspection:resourceinspection-annotation"/>
<dependency
name="com.github.bumptech.glide:disklrucache:4.16.0@jar"
simpleName="com.github.bumptech.glide:disklrucache"/>
<dependency
name="com.github.bumptech.glide:annotations:4.16.0@jar"
simpleName="com.github.bumptech.glide:annotations"/>
<dependency
name="androidx.exifinterface:exifinterface:1.3.6@aar"
simpleName="androidx.exifinterface:exifinterface"/>
<dependency
name="androidx.startup:startup-runtime:1.1.1@aar"
simpleName="androidx.startup:startup-runtime"/>
</compile>
<package
roots="androidx.test.ext:junit:1.1.5@aar,androidx.test.espresso:espresso-core:3.5.1@aar,androidx.test:core:1.5.0@aar,androidx.test:runner:1.5.2@aar,androidx.test.services:storage:1.4.2@aar,androidx.test:monitor:1.6.1@aar,androidx.test:annotation:1.0.1@aar,androidx.lifecycle:lifecycle-common:2.7.0@jar,androidx.tracing:tracing:1.0.0@aar,androidx.concurrent:concurrent-futures:1.1.0@jar,androidx.annotation:annotation-jvm:1.6.0@jar,androidx.annotation:annotation-experimental:1.3.0@aar,org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1@jar,org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.1@jar,org.jetbrains.kotlin:kotlin-stdlib:1.9.22@jar,org.jetbrains:annotations:23.0.0@jar,com.google.guava:listenablefuture:1.0@jar,junit:junit:4.13.2@jar,androidx.test.espresso:espresso-idling-resource:3.5.1@aar,com.squareup:javawriter:2.1.1@jar,javax.inject:javax.inject:1@jar,org.hamcrest:hamcrest-integration:1.3@jar,org.hamcrest:hamcrest-library:1.3@jar,com.google.code.findbugs:jsr305:2.0.2@jar,org.hamcrest:hamcrest-core:1.3@jar">
<dependency
name="androidx.test.ext:junit:1.1.5@aar"
simpleName="androidx.test.ext:junit"/>
<dependency
name="androidx.test.espresso:espresso-core:3.5.1@aar"
simpleName="androidx.test.espresso:espresso-core"/>
<dependency
name="androidx.test:core:1.5.0@aar"
simpleName="androidx.test:core"/>
<dependency
name="androidx.test:runner:1.5.2@aar"
simpleName="androidx.test:runner"/>
<dependency
name="androidx.test.services:storage:1.4.2@aar"
simpleName="androidx.test.services:storage"/>
<dependency
name="androidx.test:monitor:1.6.1@aar"
simpleName="androidx.test:monitor"/>
<dependency
name="androidx.test:annotation:1.0.1@aar"
simpleName="androidx.test:annotation"/>
<dependency
name="androidx.lifecycle:lifecycle-common:2.7.0@jar"
simpleName="androidx.lifecycle:lifecycle-common"/>
<dependency
name="androidx.tracing:tracing:1.0.0@aar"
simpleName="androidx.tracing:tracing"/>
<dependency
name="androidx.concurrent:concurrent-futures:1.1.0@jar"
simpleName="androidx.concurrent:concurrent-futures"/>
<dependency
name="androidx.annotation:annotation-jvm:1.6.0@jar"
simpleName="androidx.annotation:annotation-jvm"/>
<dependency
name="androidx.annotation:annotation-experimental:1.3.0@aar"
simpleName="androidx.annotation:annotation-experimental"/>
<dependency
name="org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1@jar"
simpleName="org.jetbrains.kotlinx:kotlinx-coroutines-android"/>
<dependency
name="org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.1@jar"
simpleName="org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm"/>
<dependency
name="org.jetbrains.kotlin:kotlin-stdlib:1.9.22@jar"
simpleName="org.jetbrains.kotlin:kotlin-stdlib"/>
<dependency
name="org.jetbrains:annotations:23.0.0@jar"
simpleName="org.jetbrains:annotations"/>
<dependency
name="com.google.guava:listenablefuture:1.0@jar"
simpleName="com.google.guava:listenablefuture"/>
<dependency
name="junit:junit:4.13.2@jar"
simpleName="junit:junit"/>
<dependency
name="androidx.test.espresso:espresso-idling-resource:3.5.1@aar"
simpleName="androidx.test.espresso:espresso-idling-resource"/>
<dependency
name="com.squareup:javawriter:2.1.1@jar"
simpleName="com.squareup:javawriter"/>
<dependency
name="javax.inject:javax.inject:1@jar"
simpleName="javax.inject:javax.inject"/>
<dependency
name="org.hamcrest:hamcrest-integration:1.3@jar"
simpleName="org.hamcrest:hamcrest-integration"/>
<dependency
name="org.hamcrest:hamcrest-library:1.3@jar"
simpleName="org.hamcrest:hamcrest-library"/>
<dependency
name="com.google.code.findbugs:jsr305:2.0.2@jar"
simpleName="com.google.code.findbugs:jsr305"/>
<dependency
name="org.hamcrest:hamcrest-core:1.3@jar"
simpleName="org.hamcrest:hamcrest-core"/>
</package>
</dependencies>

View File

@@ -0,0 +1,31 @@
<variant
name="debug"
package="com.crm.chat"
minSdkVersion="21"
targetSdkVersion="34"
debuggable="true"
mergedManifest="build/intermediates/merged_manifest/debug/processDebugMainManifest/AndroidManifest.xml"
manifestMergeReport="build/outputs/logs/manifest-merger-debug-report.txt"
partialResultsDir="build/intermediates/android_test_lint_partial_results/debug/lintAnalyzeDebugAndroidTest/out">
<buildFeatures
viewBinding="true"
namespacing="REQUIRED"/>
<sourceProviders>
</sourceProviders>
<testSourceProviders>
<sourceProvider
manifests="src/androidTest/AndroidManifest.xml"
javaDirectories="src/androidTest/java:src/androidTestDebug/java:src/androidTest/kotlin:src/androidTestDebug/kotlin"
resDirectories="src/androidTest/res:src/androidTestDebug/res"
assetsDirectories="src/androidTest/assets:src/androidTestDebug/assets"
androidTest="true"/>
</testSourceProviders>
<testFixturesSourceProviders>
</testFixturesSourceProviders>
<artifact
type="INSTRUMENTATION_TEST"
applicationId="com.crm.chat.test"
generatedResourceFolders="build/generated/res/resValues/androidTest/debug"
desugaredMethodsFiles="/home/user/.gradle/caches/8.13/transforms/654bdbf1a622e65f97c292eda846fdf0/transformed/D8BackportedDesugaredMethods.txt">
</artifact>
</variant>

View File

@@ -0,0 +1,19 @@
<lint-module
format="1"
dir="/home/user/mydata/SRC/crm.mcmed.ru/android-chat-app/app"
name=":app"
type="APP"
maven="CRM Chat:app:unspecified"
agpVersion="8.12.0"
buildFolder="build"
bootClassPath="/home/user/Android/Sdk/platforms/android-36/android.jar:/home/user/Android/Sdk/build-tools/35.0.0/core-lambda-stubs.jar"
javaSourceLevel="11"
compileTarget="android-36"
neverShrinking="true">
<lintOptions
abortOnError="true"
absolutePaths="true"
checkReleaseBuilds="true"
explainIssues="true"/>
<variant name="debug"/>
</lint-module>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<incidents format="6" by="lint 8.12.0" type="partial_results">
<map id="UnusedResources">
<entry
name="model"
string=""/>
</map>
</incidents>

Binary file not shown.

View File

@@ -0,0 +1,21 @@
{
"version": 3,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.crm.chat",
"variantName": "debug",
"elements": [
{
"type": "SINGLE",
"filters": [],
"attributes": [],
"versionCode": 1,
"versionName": "1.0",
"outputFile": "app-debug.apk"
}
],
"elementType": "File",
"minSdkVersionForDexing": 24
}

View File

@@ -0,0 +1,2 @@
#- File Locator -
listingFile=../../../apk/debug/output-metadata.json

View File

@@ -0,0 +1,2 @@
#- File Locator -
listingFile=../../../../outputs/apk/release/output-metadata.json

View File

@@ -0,0 +1,2 @@
appMetadataVersion=1.1
androidGradlePluginVersion=8.12.0

View File

@@ -0,0 +1,2 @@
appMetadataVersion=1.1
androidGradlePluginVersion=8.12.0

View File

@@ -0,0 +1,10 @@
{
"version": 3,
"artifactType": {
"type": "COMPATIBLE_SCREEN_MANIFEST",
"kind": "Directory"
},
"applicationId": "com.crm.chat",
"variantName": "debug",
"elements": []
}

View File

@@ -0,0 +1,10 @@
{
"version": 3,
"artifactType": {
"type": "COMPATIBLE_SCREEN_MANIFEST",
"kind": "Directory"
},
"applicationId": "com.crm.chat",
"variantName": "release",
"elements": []
}

View File

@@ -0,0 +1 @@
{"options":{"minApiLevel":"21","isDebugModeEnabled":false},"version":"8.12.14"}

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_auth" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_auth.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_auth_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="144" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/descriptionTextView" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="47" endOffset="73"/></Target><Target id="@+id/emailInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="50" startOffset="12" endLine="67" endOffset="67"/></Target><Target id="@+id/emailEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="60" startOffset="16" endLine="65" endOffset="54"/></Target><Target id="@+id/passwordInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="70" startOffset="12" endLine="88" endOffset="67"/></Target><Target id="@+id/passwordEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="81" startOffset="16" endLine="86" endOffset="54"/></Target><Target id="@+id/loginButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="91" startOffset="12" endLine="101" endOffset="79"/></Target><Target id="@+id/additionalSettingsButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="114" endOffset="71"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="117" startOffset="12" endLine="125" endOffset="84"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="128" startOffset="12" endLine="138" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="225" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="22" endOffset="43"/></Target><Target id="@+id/messagesRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="25" startOffset="4" endLine="34" endOffset="47"/></Target><Target id="@+id/attachmentIndicators" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="37" startOffset="4" endLine="133" endOffset="55"/></Target><Target id="@+id/replyIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="48" startOffset="8" endLine="94" endOffset="59"/></Target><Target id="@+id/replySenderText" view="TextView"><Expressions/><location startLine="59" startOffset="12" endLine="68" endOffset="41"/></Target><Target id="@+id/replyMessageText" view="TextView"><Expressions/><location startLine="70" startOffset="12" endLine="81" endOffset="55"/></Target><Target id="@+id/replyCancelButton" view="ImageButton"><Expressions/><location startLine="83" startOffset="12" endLine="92" endOffset="50"/></Target><Target id="@+id/fileAttachmentIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="97" startOffset="8" endLine="131" endOffset="59"/></Target><Target id="@+id/fileAttachmentText" view="TextView"><Expressions/><location startLine="108" startOffset="12" endLine="118" endOffset="53"/></Target><Target id="@+id/fileCancelButton" view="ImageButton"><Expressions/><location startLine="120" startOffset="12" endLine="129" endOffset="43"/></Target><Target id="@+id/messageInputLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="136" startOffset="4" endLine="197" endOffset="55"/></Target><Target id="@+id/messageEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="149" startOffset="8" endLine="165" endOffset="58"/></Target><Target id="@+id/attachButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="168" startOffset="8" endLine="180" endOffset="58"/></Target><Target id="@+id/sendButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="183" startOffset="8" endLine="195" endOffset="58"/></Target><Target id="@+id/scrollToBottomFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="200" startOffset="4" endLine="212" endOffset="33"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="215" startOffset="4" endLine="223" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_create_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_create_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_create_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="295" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/chatTypeLabel" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="46" endOffset="73"/></Target><Target id="@+id/chatTypeRadioGroup" view="RadioGroup"><Expressions/><location startLine="48" startOffset="12" endLine="77" endOffset="24"/></Target><Target id="@+id/radioPersonal" view="RadioButton"><Expressions/><location startLine="58" startOffset="16" endLine="63" endOffset="44"/></Target><Target id="@+id/radioGroup" view="RadioButton"><Expressions/><location startLine="65" startOffset="16" endLine="69" endOffset="50"/></Target><Target id="@+id/radioExternal" view="RadioButton"><Expressions/><location startLine="71" startOffset="16" endLine="75" endOffset="48"/></Target><Target id="@+id/providerInfo" view="TextView"><Expressions/><location startLine="80" startOffset="12" endLine="89" endOffset="78"/></Target><Target id="@+id/companionLabel" view="TextView"><Expressions/><location startLine="92" startOffset="12" endLine="102" endOffset="72"/></Target><Target id="@+id/selectUserButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="113" endOffset="74"/></Target><Target id="@+id/selectedUserTextView" view="TextView"><Expressions/><location startLine="115" startOffset="12" endLine="126" endOffset="65"/></Target><Target id="@+id/groupTitleLabel" view="TextView"><Expressions/><location startLine="129" startOffset="12" endLine="139" endOffset="72"/></Target><Target id="@+id/groupTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="141" startOffset="12" endLine="158" endOffset="67"/></Target><Target id="@+id/groupTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="152" startOffset="16" endLine="156" endOffset="46"/></Target><Target id="@+id/participantsLabel" view="TextView"><Expressions/><location startLine="161" startOffset="12" endLine="171" endOffset="81"/></Target><Target id="@+id/participantsInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="173" startOffset="12" endLine="190" endOffset="67"/></Target><Target id="@+id/participantsEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="184" startOffset="16" endLine="188" endOffset="46"/></Target><Target id="@+id/externalTitleLabel" view="TextView"><Expressions/><location startLine="193" startOffset="12" endLine="203" endOffset="72"/></Target><Target id="@+id/externalTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="205" startOffset="12" endLine="222" endOffset="67"/></Target><Target id="@+id/externalTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="216" startOffset="16" endLine="220" endOffset="46"/></Target><Target id="@+id/entityLabel" view="TextView"><Expressions/><location startLine="225" startOffset="12" endLine="234" endOffset="84"/></Target><Target id="@+id/entityInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="236" startOffset="12" endLine="252" endOffset="67"/></Target><Target id="@+id/entityEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="246" startOffset="16" endLine="250" endOffset="48"/></Target><Target id="@+id/createButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="255" startOffset="12" endLine="265" endOffset="81"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="268" startOffset="12" endLine="276" endOffset="72"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="279" startOffset="12" endLine="289" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_image_viewer" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_image_viewer.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.coordinatorlayout.widget.CoordinatorLayout"><Targets><Target tag="layout/activity_image_viewer_0" view="androidx.coordinatorlayout.widget.CoordinatorLayout"><Expressions/><location startLine="1" startOffset="0" endLine="79" endOffset="53"/></Target><Target id="@+id/appBarLayout" view="com.google.android.material.appbar.AppBarLayout"><Expressions/><location startLine="8" startOffset="4" endLine="69" endOffset="53"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="14" startOffset="8" endLine="67" endOffset="43"/></Target><Target id="@+id/backButton" view="ImageButton"><Expressions/><location startLine="28" startOffset="16" endLine="38" endOffset="57"/></Target><Target id="@+id/toolbarTitle" view="TextView"><Expressions/><location startLine="40" startOffset="16" endLine="51" endOffset="44"/></Target><Target id="@+id/downloadButton" view="ImageButton"><Expressions/><location startLine="53" startOffset="16" endLine="63" endOffset="57"/></Target><Target id="@+id/imageView" view="ImageView"><Expressions/><location startLine="71" startOffset="4" endLine="77" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_main" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_main.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_main_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="151" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="45" endOffset="39"/></Target><Target id="@+id/logoImageView" view="ImageView"><Expressions/><location startLine="23" startOffset="8" endLine="30" endOffset="50"/></Target><Target id="@+id/menuButton" view="ImageButton"><Expressions/><location startLine="33" startOffset="8" endLine="43" endOffset="46"/></Target><Target id="@+id/swipeRefreshLayout" view="androidx.swiperefreshlayout.widget.SwipeRefreshLayout"><Expressions/><location startLine="48" startOffset="4" endLine="66" endOffset="59"/></Target><Target id="@+id/chatsRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="58" startOffset="8" endLine="64" endOffset="48"/></Target><Target id="@+id/emptyStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="69" startOffset="4" endLine="91" endOffset="55"/></Target><Target id="@+id/emptyStateTextView" view="TextView"><Expressions/><location startLine="79" startOffset="8" endLine="89" endOffset="55"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="94" startOffset="4" endLine="102" endOffset="59"/></Target><Target id="@+id/errorStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="105" startOffset="4" endLine="137" endOffset="55"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="115" startOffset="8" endLine="125" endOffset="59"/></Target><Target id="@+id/retryButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="127" startOffset="8" endLine="135" endOffset="55"/></Target><Target id="@+id/createChatFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="140" startOffset="4" endLine="149" endOffset="33"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_profile" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_profile.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_profile_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="197" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="29"/></Target><Target id="@+id/avatarSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="36" startOffset="12" endLine="72" endOffset="63"/></Target><Target id="@+id/avatarImageView" view="ImageView"><Expressions/><location startLine="46" startOffset="16" endLine="58" endOffset="53"/></Target><Target id="@+id/avatarHintTextView" view="TextView"><Expressions/><location startLine="60" startOffset="16" endLine="70" endOffset="79"/></Target><Target id="@+id/firstNameInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="75" startOffset="12" endLine="93" endOffset="67"/></Target><Target id="@+id/firstNameEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="86" startOffset="16" endLine="91" endOffset="61"/></Target><Target id="@+id/lastNameInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="96" startOffset="12" endLine="114" endOffset="67"/></Target><Target id="@+id/lastNameEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="107" startOffset="16" endLine="112" endOffset="61"/></Target><Target id="@+id/emailInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="117" startOffset="12" endLine="134" endOffset="67"/></Target><Target id="@+id/emailEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="127" startOffset="16" endLine="132" endOffset="61"/></Target><Target id="@+id/phoneInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="137" startOffset="12" endLine="154" endOffset="67"/></Target><Target id="@+id/phoneEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="147" startOffset="16" endLine="152" endOffset="61"/></Target><Target id="@+id/saveButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="157" startOffset="12" endLine="167" endOffset="76"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="170" startOffset="12" endLine="178" endOffset="70"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="181" startOffset="12" endLine="191" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_settings" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_settings.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_settings_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="177" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="31"/></Target><Target id="@+id/serverSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="36" startOffset="12" endLine="98" endOffset="63"/></Target><Target id="@+id/serverTitleTextView" view="TextView"><Expressions/><location startLine="47" startOffset="16" endLine="56" endOffset="63"/></Target><Target id="@+id/serverUrlInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="59" startOffset="16" endLine="76" endOffset="71"/></Target><Target id="@+id/serverUrlEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="69" startOffset="20" endLine="74" endOffset="65"/></Target><Target id="@+id/apiKeyInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="79" startOffset="16" endLine="96" endOffset="71"/></Target><Target id="@+id/apiKeyEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="89" startOffset="20" endLine="94" endOffset="65"/></Target><Target id="@+id/themeSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="101" startOffset="12" endLine="134" endOffset="63"/></Target><Target id="@+id/themeTitleTextView" view="TextView"><Expressions/><location startLine="112" startOffset="16" endLine="121" endOffset="63"/></Target><Target id="@+id/themeSwitch" view="com.google.android.material.switchmaterial.SwitchMaterial"><Expressions/><location startLine="124" startOffset="16" endLine="132" endOffset="82"/></Target><Target id="@+id/saveButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="137" startOffset="12" endLine="147" endOffset="72"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="150" startOffset="12" endLine="158" endOffset="70"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="161" startOffset="12" endLine="171" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_user_selection" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_user_selection.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_user_selection_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="88" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="43"/></Target><Target id="@+id/searchView" view="androidx.appcompat.widget.SearchView"><Expressions/><location startLine="23" startOffset="4" endLine="32" endOffset="48"/></Target><Target id="@+id/usersRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="35" startOffset="4" endLine="44" endOffset="44"/></Target><Target id="@+id/doneButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="47" startOffset="4" endLine="59" endOffset="36"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="62" startOffset="4" endLine="70" endOffset="51"/></Target><Target id="@+id/emptyTextView" view="TextView"><Expressions/><location startLine="73" startOffset="4" endLine="86" endOffset="46"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_chat_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="98" endOffset="51"/></Target><Target id="@+id/chatAvatarImageView" view="ImageView"><Expressions/><location startLine="17" startOffset="8" endLine="29" endOffset="53"/></Target><Target id="@+id/chatNameTextView" view="TextView"><Expressions/><location startLine="32" startOffset="8" endLine="46" endOffset="36"/></Target><Target id="@+id/lastMessageTextView" view="TextView"><Expressions/><location startLine="49" startOffset="8" endLine="63" endOffset="44"/></Target><Target id="@+id/lastMessageTimeTextView" view="TextView"><Expressions/><location startLine="66" startOffset="8" endLine="75" endOffset="32"/></Target><Target id="@+id/unreadCountBadge" view="TextView"><Expressions/><location startLine="78" startOffset="8" endLine="94" endOffset="40"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_message" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_message.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/item_message_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="317" endOffset="51"/></Target><Target id="@+id/replyIndicator" view="LinearLayout"><Expressions/><location startLine="9" startOffset="4" endLine="42" endOffset="18"/></Target><Target id="@+id/replySenderText" view="TextView"><Expressions/><location startLine="24" startOffset="8" endLine="31" endOffset="37"/></Target><Target id="@+id/replyMessageText" view="TextView"><Expressions/><location startLine="33" startOffset="8" endLine="40" endOffset="51"/></Target><Target id="@+id/sentMessageCard" view="androidx.cardview.widget.CardView"><Expressions/><location startLine="45" startOffset="4" endLine="163" endOffset="39"/></Target><Target id="@+id/sentReplyIndicator" view="LinearLayout"><Expressions/><location startLine="65" startOffset="12" endLine="95" endOffset="26"/></Target><Target id="@+id/sentReplySenderText" view="TextView"><Expressions/><location startLine="77" startOffset="16" endLine="84" endOffset="45"/></Target><Target id="@+id/sentReplyMessageText" view="TextView"><Expressions/><location startLine="86" startOffset="16" endLine="93" endOffset="59"/></Target><Target id="@+id/sentFileLayout" view="LinearLayout"><Expressions/><location startLine="98" startOffset="12" endLine="131" endOffset="26"/></Target><Target id="@+id/sentFileNameText" view="TextView"><Expressions/><location startLine="120" startOffset="16" endLine="129" endOffset="47"/></Target><Target id="@+id/sentImagePreview" view="ImageView"><Expressions/><location startLine="134" startOffset="12" endLine="148" endOffset="44"/></Target><Target id="@+id/sentMessageText" view="TextView"><Expressions/><location startLine="150" startOffset="12" endLine="159" endOffset="53"/></Target><Target id="@+id/receivedMessageCard" view="androidx.cardview.widget.CardView"><Expressions/><location startLine="166" startOffset="4" endLine="283" endOffset="39"/></Target><Target id="@+id/receivedReplyIndicator" view="LinearLayout"><Expressions/><location startLine="186" startOffset="12" endLine="216" endOffset="26"/></Target><Target id="@+id/receivedReplySenderText" view="TextView"><Expressions/><location startLine="198" startOffset="16" endLine="205" endOffset="45"/></Target><Target id="@+id/receivedReplyMessageText" view="TextView"><Expressions/><location startLine="207" startOffset="16" endLine="214" endOffset="59"/></Target><Target id="@+id/receivedFileLayout" view="LinearLayout"><Expressions/><location startLine="219" startOffset="12" endLine="252" endOffset="26"/></Target><Target id="@+id/receivedFileNameText" view="TextView"><Expressions/><location startLine="241" startOffset="16" endLine="250" endOffset="47"/></Target><Target id="@+id/receivedImagePreview" view="ImageView"><Expressions/><location startLine="255" startOffset="12" endLine="269" endOffset="44"/></Target><Target id="@+id/receivedMessageText" view="TextView"><Expressions/><location startLine="271" startOffset="12" endLine="279" endOffset="57"/></Target><Target id="@+id/senderNameText" view="TextView"><Expressions/><location startLine="286" startOffset="4" endLine="298" endOffset="36"/></Target><Target id="@+id/timestampText" view="TextView"><Expressions/><location startLine="301" startOffset="4" endLine="315" endOffset="36"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_user" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_user.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_user_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="81" endOffset="51"/></Target><Target id="@+id/userAvatarImageView" view="ImageView"><Expressions/><location startLine="17" startOffset="8" endLine="29" endOffset="53"/></Target><Target id="@+id/userNameTextView" view="TextView"><Expressions/><location startLine="32" startOffset="8" endLine="45" endOffset="38"/></Target><Target id="@+id/userIdTextView" view="TextView"><Expressions/><location startLine="48" startOffset="8" endLine="61" endOffset="36"/></Target><Target id="@+id/userEmailTextView" view="TextView"><Expressions/><location startLine="64" startOffset="8" endLine="77" endOffset="43"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="toolbar_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/toolbar_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/toolbar_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="52" endOffset="51"/></Target><Target id="@+id/backButton" view="ImageButton"><Expressions/><location startLine="9" startOffset="4" endLine="19" endOffset="43"/></Target><Target id="@+id/chatAvatarImageView" view="ImageView"><Expressions/><location startLine="22" startOffset="4" endLine="33" endOffset="49"/></Target><Target id="@+id/chatNameTextView" view="TextView"><Expressions/><location startLine="36" startOffset="4" endLine="50" endOffset="31"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_auth" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_auth.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_auth_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="144" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/descriptionTextView" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="47" endOffset="73"/></Target><Target id="@+id/emailInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="50" startOffset="12" endLine="67" endOffset="67"/></Target><Target id="@+id/emailEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="60" startOffset="16" endLine="65" endOffset="54"/></Target><Target id="@+id/passwordInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="70" startOffset="12" endLine="88" endOffset="67"/></Target><Target id="@+id/passwordEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="81" startOffset="16" endLine="86" endOffset="54"/></Target><Target id="@+id/loginButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="91" startOffset="12" endLine="101" endOffset="79"/></Target><Target id="@+id/additionalSettingsButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="114" endOffset="71"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="117" startOffset="12" endLine="125" endOffset="84"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="128" startOffset="12" endLine="138" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="225" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="22" endOffset="43"/></Target><Target id="@+id/messagesRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="25" startOffset="4" endLine="34" endOffset="47"/></Target><Target id="@+id/attachmentIndicators" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="37" startOffset="4" endLine="133" endOffset="55"/></Target><Target id="@+id/replyIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="48" startOffset="8" endLine="94" endOffset="59"/></Target><Target id="@+id/replySenderText" view="TextView"><Expressions/><location startLine="59" startOffset="12" endLine="68" endOffset="41"/></Target><Target id="@+id/replyMessageText" view="TextView"><Expressions/><location startLine="70" startOffset="12" endLine="81" endOffset="55"/></Target><Target id="@+id/replyCancelButton" view="ImageButton"><Expressions/><location startLine="83" startOffset="12" endLine="92" endOffset="50"/></Target><Target id="@+id/fileAttachmentIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="97" startOffset="8" endLine="131" endOffset="59"/></Target><Target id="@+id/fileAttachmentText" view="TextView"><Expressions/><location startLine="108" startOffset="12" endLine="118" endOffset="53"/></Target><Target id="@+id/fileCancelButton" view="ImageButton"><Expressions/><location startLine="120" startOffset="12" endLine="129" endOffset="43"/></Target><Target id="@+id/messageInputLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="136" startOffset="4" endLine="197" endOffset="55"/></Target><Target id="@+id/messageEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="149" startOffset="8" endLine="165" endOffset="58"/></Target><Target id="@+id/attachButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="168" startOffset="8" endLine="180" endOffset="58"/></Target><Target id="@+id/sendButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="183" startOffset="8" endLine="195" endOffset="58"/></Target><Target id="@+id/scrollToBottomFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="200" startOffset="4" endLine="212" endOffset="33"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="215" startOffset="4" endLine="223" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_create_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_create_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_create_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="295" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/chatTypeLabel" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="46" endOffset="73"/></Target><Target id="@+id/chatTypeRadioGroup" view="RadioGroup"><Expressions/><location startLine="48" startOffset="12" endLine="77" endOffset="24"/></Target><Target id="@+id/radioPersonal" view="RadioButton"><Expressions/><location startLine="58" startOffset="16" endLine="63" endOffset="44"/></Target><Target id="@+id/radioGroup" view="RadioButton"><Expressions/><location startLine="65" startOffset="16" endLine="69" endOffset="50"/></Target><Target id="@+id/radioExternal" view="RadioButton"><Expressions/><location startLine="71" startOffset="16" endLine="75" endOffset="48"/></Target><Target id="@+id/providerInfo" view="TextView"><Expressions/><location startLine="80" startOffset="12" endLine="89" endOffset="78"/></Target><Target id="@+id/companionLabel" view="TextView"><Expressions/><location startLine="92" startOffset="12" endLine="102" endOffset="72"/></Target><Target id="@+id/selectUserButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="113" endOffset="74"/></Target><Target id="@+id/selectedUserTextView" view="TextView"><Expressions/><location startLine="115" startOffset="12" endLine="126" endOffset="65"/></Target><Target id="@+id/groupTitleLabel" view="TextView"><Expressions/><location startLine="129" startOffset="12" endLine="139" endOffset="72"/></Target><Target id="@+id/groupTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="141" startOffset="12" endLine="158" endOffset="67"/></Target><Target id="@+id/groupTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="152" startOffset="16" endLine="156" endOffset="46"/></Target><Target id="@+id/participantsLabel" view="TextView"><Expressions/><location startLine="161" startOffset="12" endLine="171" endOffset="81"/></Target><Target id="@+id/participantsInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="173" startOffset="12" endLine="190" endOffset="67"/></Target><Target id="@+id/participantsEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="184" startOffset="16" endLine="188" endOffset="46"/></Target><Target id="@+id/externalTitleLabel" view="TextView"><Expressions/><location startLine="193" startOffset="12" endLine="203" endOffset="72"/></Target><Target id="@+id/externalTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="205" startOffset="12" endLine="222" endOffset="67"/></Target><Target id="@+id/externalTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="216" startOffset="16" endLine="220" endOffset="46"/></Target><Target id="@+id/entityLabel" view="TextView"><Expressions/><location startLine="225" startOffset="12" endLine="234" endOffset="84"/></Target><Target id="@+id/entityInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="236" startOffset="12" endLine="252" endOffset="67"/></Target><Target id="@+id/entityEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="246" startOffset="16" endLine="250" endOffset="48"/></Target><Target id="@+id/createButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="255" startOffset="12" endLine="265" endOffset="81"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="268" startOffset="12" endLine="276" endOffset="72"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="279" startOffset="12" endLine="289" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_image_viewer" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_image_viewer.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.coordinatorlayout.widget.CoordinatorLayout"><Targets><Target tag="layout/activity_image_viewer_0" view="androidx.coordinatorlayout.widget.CoordinatorLayout"><Expressions/><location startLine="1" startOffset="0" endLine="79" endOffset="53"/></Target><Target id="@+id/appBarLayout" view="com.google.android.material.appbar.AppBarLayout"><Expressions/><location startLine="8" startOffset="4" endLine="69" endOffset="53"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="14" startOffset="8" endLine="67" endOffset="43"/></Target><Target id="@+id/backButton" view="ImageButton"><Expressions/><location startLine="28" startOffset="16" endLine="38" endOffset="57"/></Target><Target id="@+id/toolbarTitle" view="TextView"><Expressions/><location startLine="40" startOffset="16" endLine="51" endOffset="44"/></Target><Target id="@+id/downloadButton" view="ImageButton"><Expressions/><location startLine="53" startOffset="16" endLine="63" endOffset="57"/></Target><Target id="@+id/imageView" view="ImageView"><Expressions/><location startLine="71" startOffset="4" endLine="77" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_main" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_main.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_main_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="151" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="45" endOffset="39"/></Target><Target id="@+id/logoImageView" view="ImageView"><Expressions/><location startLine="23" startOffset="8" endLine="30" endOffset="50"/></Target><Target id="@+id/menuButton" view="ImageButton"><Expressions/><location startLine="33" startOffset="8" endLine="43" endOffset="46"/></Target><Target id="@+id/swipeRefreshLayout" view="androidx.swiperefreshlayout.widget.SwipeRefreshLayout"><Expressions/><location startLine="48" startOffset="4" endLine="66" endOffset="59"/></Target><Target id="@+id/chatsRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="58" startOffset="8" endLine="64" endOffset="48"/></Target><Target id="@+id/emptyStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="69" startOffset="4" endLine="91" endOffset="55"/></Target><Target id="@+id/emptyStateTextView" view="TextView"><Expressions/><location startLine="79" startOffset="8" endLine="89" endOffset="55"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="94" startOffset="4" endLine="102" endOffset="59"/></Target><Target id="@+id/errorStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="105" startOffset="4" endLine="137" endOffset="55"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="115" startOffset="8" endLine="125" endOffset="59"/></Target><Target id="@+id/retryButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="127" startOffset="8" endLine="135" endOffset="55"/></Target><Target id="@+id/createChatFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="140" startOffset="4" endLine="149" endOffset="33"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_profile" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_profile.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_profile_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="197" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="29"/></Target><Target id="@+id/avatarSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="36" startOffset="12" endLine="72" endOffset="63"/></Target><Target id="@+id/avatarImageView" view="ImageView"><Expressions/><location startLine="46" startOffset="16" endLine="58" endOffset="53"/></Target><Target id="@+id/avatarHintTextView" view="TextView"><Expressions/><location startLine="60" startOffset="16" endLine="70" endOffset="79"/></Target><Target id="@+id/firstNameInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="75" startOffset="12" endLine="93" endOffset="67"/></Target><Target id="@+id/firstNameEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="86" startOffset="16" endLine="91" endOffset="61"/></Target><Target id="@+id/lastNameInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="96" startOffset="12" endLine="114" endOffset="67"/></Target><Target id="@+id/lastNameEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="107" startOffset="16" endLine="112" endOffset="61"/></Target><Target id="@+id/emailInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="117" startOffset="12" endLine="134" endOffset="67"/></Target><Target id="@+id/emailEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="127" startOffset="16" endLine="132" endOffset="61"/></Target><Target id="@+id/phoneInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="137" startOffset="12" endLine="154" endOffset="67"/></Target><Target id="@+id/phoneEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="147" startOffset="16" endLine="152" endOffset="61"/></Target><Target id="@+id/saveButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="157" startOffset="12" endLine="167" endOffset="76"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="170" startOffset="12" endLine="178" endOffset="70"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="181" startOffset="12" endLine="191" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_settings" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_settings.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_settings_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="177" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="31"/></Target><Target id="@+id/serverSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="36" startOffset="12" endLine="98" endOffset="63"/></Target><Target id="@+id/serverTitleTextView" view="TextView"><Expressions/><location startLine="47" startOffset="16" endLine="56" endOffset="63"/></Target><Target id="@+id/serverUrlInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="59" startOffset="16" endLine="76" endOffset="71"/></Target><Target id="@+id/serverUrlEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="69" startOffset="20" endLine="74" endOffset="65"/></Target><Target id="@+id/apiKeyInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="79" startOffset="16" endLine="96" endOffset="71"/></Target><Target id="@+id/apiKeyEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="89" startOffset="20" endLine="94" endOffset="65"/></Target><Target id="@+id/themeSection" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="101" startOffset="12" endLine="134" endOffset="63"/></Target><Target id="@+id/themeTitleTextView" view="TextView"><Expressions/><location startLine="112" startOffset="16" endLine="121" endOffset="63"/></Target><Target id="@+id/themeSwitch" view="com.google.android.material.switchmaterial.SwitchMaterial"><Expressions/><location startLine="124" startOffset="16" endLine="132" endOffset="82"/></Target><Target id="@+id/saveButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="137" startOffset="12" endLine="147" endOffset="72"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="150" startOffset="12" endLine="158" endOffset="70"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="161" startOffset="12" endLine="171" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_user_selection" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_user_selection.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_user_selection_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="88" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="20" endOffset="43"/></Target><Target id="@+id/searchView" view="androidx.appcompat.widget.SearchView"><Expressions/><location startLine="23" startOffset="4" endLine="32" endOffset="48"/></Target><Target id="@+id/usersRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="35" startOffset="4" endLine="44" endOffset="44"/></Target><Target id="@+id/doneButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="47" startOffset="4" endLine="59" endOffset="36"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="62" startOffset="4" endLine="70" endOffset="51"/></Target><Target id="@+id/emptyTextView" view="TextView"><Expressions/><location startLine="73" startOffset="4" endLine="86" endOffset="46"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_chat_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="98" endOffset="51"/></Target><Target id="@+id/chatAvatarImageView" view="ImageView"><Expressions/><location startLine="17" startOffset="8" endLine="29" endOffset="53"/></Target><Target id="@+id/chatNameTextView" view="TextView"><Expressions/><location startLine="32" startOffset="8" endLine="46" endOffset="36"/></Target><Target id="@+id/lastMessageTextView" view="TextView"><Expressions/><location startLine="49" startOffset="8" endLine="63" endOffset="44"/></Target><Target id="@+id/lastMessageTimeTextView" view="TextView"><Expressions/><location startLine="66" startOffset="8" endLine="75" endOffset="32"/></Target><Target id="@+id/unreadCountBadge" view="TextView"><Expressions/><location startLine="78" startOffset="8" endLine="94" endOffset="40"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_message" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_message.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/item_message_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="317" endOffset="51"/></Target><Target id="@+id/replyIndicator" view="LinearLayout"><Expressions/><location startLine="9" startOffset="4" endLine="42" endOffset="18"/></Target><Target id="@+id/replySenderText" view="TextView"><Expressions/><location startLine="24" startOffset="8" endLine="31" endOffset="37"/></Target><Target id="@+id/replyMessageText" view="TextView"><Expressions/><location startLine="33" startOffset="8" endLine="40" endOffset="51"/></Target><Target id="@+id/sentMessageCard" view="androidx.cardview.widget.CardView"><Expressions/><location startLine="45" startOffset="4" endLine="163" endOffset="39"/></Target><Target id="@+id/sentReplyIndicator" view="LinearLayout"><Expressions/><location startLine="65" startOffset="12" endLine="95" endOffset="26"/></Target><Target id="@+id/sentReplySenderText" view="TextView"><Expressions/><location startLine="77" startOffset="16" endLine="84" endOffset="45"/></Target><Target id="@+id/sentReplyMessageText" view="TextView"><Expressions/><location startLine="86" startOffset="16" endLine="93" endOffset="59"/></Target><Target id="@+id/sentFileLayout" view="LinearLayout"><Expressions/><location startLine="98" startOffset="12" endLine="131" endOffset="26"/></Target><Target id="@+id/sentFileNameText" view="TextView"><Expressions/><location startLine="120" startOffset="16" endLine="129" endOffset="47"/></Target><Target id="@+id/sentImagePreview" view="ImageView"><Expressions/><location startLine="134" startOffset="12" endLine="148" endOffset="44"/></Target><Target id="@+id/sentMessageText" view="TextView"><Expressions/><location startLine="150" startOffset="12" endLine="159" endOffset="53"/></Target><Target id="@+id/receivedMessageCard" view="androidx.cardview.widget.CardView"><Expressions/><location startLine="166" startOffset="4" endLine="283" endOffset="39"/></Target><Target id="@+id/receivedReplyIndicator" view="LinearLayout"><Expressions/><location startLine="186" startOffset="12" endLine="216" endOffset="26"/></Target><Target id="@+id/receivedReplySenderText" view="TextView"><Expressions/><location startLine="198" startOffset="16" endLine="205" endOffset="45"/></Target><Target id="@+id/receivedReplyMessageText" view="TextView"><Expressions/><location startLine="207" startOffset="16" endLine="214" endOffset="59"/></Target><Target id="@+id/receivedFileLayout" view="LinearLayout"><Expressions/><location startLine="219" startOffset="12" endLine="252" endOffset="26"/></Target><Target id="@+id/receivedFileNameText" view="TextView"><Expressions/><location startLine="241" startOffset="16" endLine="250" endOffset="47"/></Target><Target id="@+id/receivedImagePreview" view="ImageView"><Expressions/><location startLine="255" startOffset="12" endLine="269" endOffset="44"/></Target><Target id="@+id/receivedMessageText" view="TextView"><Expressions/><location startLine="271" startOffset="12" endLine="279" endOffset="57"/></Target><Target id="@+id/senderNameText" view="TextView"><Expressions/><location startLine="286" startOffset="4" endLine="298" endOffset="36"/></Target><Target id="@+id/timestampText" view="TextView"><Expressions/><location startLine="301" startOffset="4" endLine="315" endOffset="36"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_user" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/item_user.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_user_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="81" endOffset="51"/></Target><Target id="@+id/userAvatarImageView" view="ImageView"><Expressions/><location startLine="17" startOffset="8" endLine="29" endOffset="53"/></Target><Target id="@+id/userNameTextView" view="TextView"><Expressions/><location startLine="32" startOffset="8" endLine="45" endOffset="38"/></Target><Target id="@+id/userIdTextView" view="TextView"><Expressions/><location startLine="48" startOffset="8" endLine="61" endOffset="36"/></Target><Target id="@+id/userEmailTextView" view="TextView"><Expressions/><location startLine="64" startOffset="8" endLine="77" endOffset="43"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="toolbar_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/toolbar_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/toolbar_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="52" endOffset="51"/></Target><Target id="@+id/backButton" view="ImageButton"><Expressions/><location startLine="9" startOffset="4" endLine="19" endOffset="43"/></Target><Target id="@+id/chatAvatarImageView" view="ImageView"><Expressions/><location startLine="22" startOffset="4" endLine="33" endOffset="49"/></Target><Target id="@+id/chatNameTextView" view="TextView"><Expressions/><location startLine="36" startOffset="4" endLine="50" endOffset="31"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_auth" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_auth.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_auth_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="144" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/descriptionTextView" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="47" endOffset="73"/></Target><Target id="@+id/emailInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="50" startOffset="12" endLine="67" endOffset="67"/></Target><Target id="@+id/emailEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="60" startOffset="16" endLine="65" endOffset="54"/></Target><Target id="@+id/passwordInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="70" startOffset="12" endLine="88" endOffset="67"/></Target><Target id="@+id/passwordEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="81" startOffset="16" endLine="86" endOffset="54"/></Target><Target id="@+id/loginButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="91" startOffset="12" endLine="101" endOffset="79"/></Target><Target id="@+id/additionalSettingsButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="114" endOffset="71"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="117" startOffset="12" endLine="125" endOffset="84"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="128" startOffset="12" endLine="138" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="225" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="22" endOffset="43"/></Target><Target id="@+id/messagesRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="25" startOffset="4" endLine="34" endOffset="47"/></Target><Target id="@+id/attachmentIndicators" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="37" startOffset="4" endLine="133" endOffset="55"/></Target><Target id="@+id/replyIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="48" startOffset="8" endLine="94" endOffset="59"/></Target><Target id="@+id/replySenderText" view="TextView"><Expressions/><location startLine="59" startOffset="12" endLine="68" endOffset="41"/></Target><Target id="@+id/replyMessageText" view="TextView"><Expressions/><location startLine="70" startOffset="12" endLine="81" endOffset="55"/></Target><Target id="@+id/replyCancelButton" view="ImageButton"><Expressions/><location startLine="83" startOffset="12" endLine="92" endOffset="50"/></Target><Target id="@+id/fileAttachmentIndicator" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="97" startOffset="8" endLine="131" endOffset="59"/></Target><Target id="@+id/fileAttachmentText" view="TextView"><Expressions/><location startLine="108" startOffset="12" endLine="118" endOffset="53"/></Target><Target id="@+id/fileCancelButton" view="ImageButton"><Expressions/><location startLine="120" startOffset="12" endLine="129" endOffset="43"/></Target><Target id="@+id/messageInputLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="136" startOffset="4" endLine="197" endOffset="55"/></Target><Target id="@+id/messageEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="149" startOffset="8" endLine="165" endOffset="58"/></Target><Target id="@+id/attachButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="168" startOffset="8" endLine="180" endOffset="58"/></Target><Target id="@+id/sendButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="183" startOffset="8" endLine="195" endOffset="58"/></Target><Target id="@+id/scrollToBottomFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="200" startOffset="4" endLine="212" endOffset="33"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="215" startOffset="4" endLine="223" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_create_chat" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_create_chat.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_create_chat_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="295" endOffset="51"/></Target><Target id="@+id/titleTextView" view="TextView"><Expressions/><location startLine="23" startOffset="12" endLine="34" endOffset="59"/></Target><Target id="@+id/chatTypeLabel" view="TextView"><Expressions/><location startLine="37" startOffset="12" endLine="46" endOffset="73"/></Target><Target id="@+id/chatTypeRadioGroup" view="RadioGroup"><Expressions/><location startLine="48" startOffset="12" endLine="77" endOffset="24"/></Target><Target id="@+id/radioPersonal" view="RadioButton"><Expressions/><location startLine="58" startOffset="16" endLine="63" endOffset="44"/></Target><Target id="@+id/radioGroup" view="RadioButton"><Expressions/><location startLine="65" startOffset="16" endLine="69" endOffset="50"/></Target><Target id="@+id/radioExternal" view="RadioButton"><Expressions/><location startLine="71" startOffset="16" endLine="75" endOffset="48"/></Target><Target id="@+id/providerInfo" view="TextView"><Expressions/><location startLine="80" startOffset="12" endLine="89" endOffset="78"/></Target><Target id="@+id/companionLabel" view="TextView"><Expressions/><location startLine="92" startOffset="12" endLine="102" endOffset="72"/></Target><Target id="@+id/selectUserButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="104" startOffset="12" endLine="113" endOffset="74"/></Target><Target id="@+id/selectedUserTextView" view="TextView"><Expressions/><location startLine="115" startOffset="12" endLine="126" endOffset="65"/></Target><Target id="@+id/groupTitleLabel" view="TextView"><Expressions/><location startLine="129" startOffset="12" endLine="139" endOffset="72"/></Target><Target id="@+id/groupTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="141" startOffset="12" endLine="158" endOffset="67"/></Target><Target id="@+id/groupTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="152" startOffset="16" endLine="156" endOffset="46"/></Target><Target id="@+id/participantsLabel" view="TextView"><Expressions/><location startLine="161" startOffset="12" endLine="171" endOffset="81"/></Target><Target id="@+id/participantsInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="173" startOffset="12" endLine="190" endOffset="67"/></Target><Target id="@+id/participantsEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="184" startOffset="16" endLine="188" endOffset="46"/></Target><Target id="@+id/externalTitleLabel" view="TextView"><Expressions/><location startLine="193" startOffset="12" endLine="203" endOffset="72"/></Target><Target id="@+id/externalTitleInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="205" startOffset="12" endLine="222" endOffset="67"/></Target><Target id="@+id/externalTitleEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="216" startOffset="16" endLine="220" endOffset="46"/></Target><Target id="@+id/entityLabel" view="TextView"><Expressions/><location startLine="225" startOffset="12" endLine="234" endOffset="84"/></Target><Target id="@+id/entityInputLayout" view="com.google.android.material.textfield.TextInputLayout"><Expressions/><location startLine="236" startOffset="12" endLine="252" endOffset="67"/></Target><Target id="@+id/entityEditText" view="com.google.android.material.textfield.TextInputEditText"><Expressions/><location startLine="246" startOffset="16" endLine="250" endOffset="48"/></Target><Target id="@+id/createButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="255" startOffset="12" endLine="265" endOffset="81"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="268" startOffset="12" endLine="276" endOffset="72"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="279" startOffset="12" endLine="289" endOffset="71"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_image_viewer" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_image_viewer.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.coordinatorlayout.widget.CoordinatorLayout"><Targets><Target tag="layout/activity_image_viewer_0" view="androidx.coordinatorlayout.widget.CoordinatorLayout"><Expressions/><location startLine="1" startOffset="0" endLine="79" endOffset="53"/></Target><Target id="@+id/appBarLayout" view="com.google.android.material.appbar.AppBarLayout"><Expressions/><location startLine="8" startOffset="4" endLine="69" endOffset="53"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="14" startOffset="8" endLine="67" endOffset="43"/></Target><Target id="@+id/backButton" view="ImageButton"><Expressions/><location startLine="28" startOffset="16" endLine="38" endOffset="57"/></Target><Target id="@+id/toolbarTitle" view="TextView"><Expressions/><location startLine="40" startOffset="16" endLine="51" endOffset="44"/></Target><Target id="@+id/downloadButton" view="ImageButton"><Expressions/><location startLine="53" startOffset="16" endLine="63" endOffset="57"/></Target><Target id="@+id/imageView" view="ImageView"><Expressions/><location startLine="71" startOffset="4" endLine="77" endOffset="54"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_main" modulePackage="com.crm.chat" filePath="app/src/main/res/layout/activity_main.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="androidx.constraintlayout.widget.ConstraintLayout"><Targets><Target tag="layout/activity_main_0" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="1" startOffset="0" endLine="151" endOffset="51"/></Target><Target id="@+id/toolbar" view="androidx.appcompat.widget.Toolbar"><Expressions/><location startLine="10" startOffset="4" endLine="45" endOffset="39"/></Target><Target id="@+id/logoImageView" view="ImageView"><Expressions/><location startLine="23" startOffset="8" endLine="30" endOffset="50"/></Target><Target id="@+id/menuButton" view="ImageButton"><Expressions/><location startLine="33" startOffset="8" endLine="43" endOffset="46"/></Target><Target id="@+id/swipeRefreshLayout" view="androidx.swiperefreshlayout.widget.SwipeRefreshLayout"><Expressions/><location startLine="48" startOffset="4" endLine="66" endOffset="59"/></Target><Target id="@+id/chatsRecyclerView" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="58" startOffset="8" endLine="64" endOffset="48"/></Target><Target id="@+id/emptyStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="69" startOffset="4" endLine="91" endOffset="55"/></Target><Target id="@+id/emptyStateTextView" view="TextView"><Expressions/><location startLine="79" startOffset="8" endLine="89" endOffset="55"/></Target><Target id="@+id/loadingProgressBar" view="ProgressBar"><Expressions/><location startLine="94" startOffset="4" endLine="102" endOffset="59"/></Target><Target id="@+id/errorStateLayout" view="androidx.constraintlayout.widget.ConstraintLayout"><Expressions/><location startLine="105" startOffset="4" endLine="137" endOffset="55"/></Target><Target id="@+id/errorTextView" view="TextView"><Expressions/><location startLine="115" startOffset="8" endLine="125" endOffset="59"/></Target><Target id="@+id/retryButton" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="127" startOffset="8" endLine="135" endOffset="55"/></Target><Target id="@+id/createChatFab" view="com.google.android.material.floatingactionbutton.FloatingActionButton"><Expressions/><location startLine="140" startOffset="4" endLine="149" endOffset="33"/></Target></Targets></Layout>

Some files were not shown because too many files have changed in this diff Show More