Files
homebox_lens/tasks/completed/02_create_labels_screen_file.xml
2025-08-14 15:34:05 +03:00

92 lines
4.2 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- tasks/02_create_labels_screen_file.xml -->
<TASK status="completed">
<WORK_ORDER id="task-20250812-114502">
<ACTION>CREATE_FILE</ACTION>
<TARGET_FILE>app/src/main/java/com/homebox/lens/ui/screen/labelslist/LabelsListScreen.kt</TARGET_FILE>
<GOAL>
Создать базовую структуру (stub) для экрана "Метки" (LabelsListScreen) с использованием Jetpack Compose.
Этот файл будет служить основой для дальнейшей реализации полноценного UI.
</GOAL>
<CONTEXT_FILES>
<FILE>tech_spec.txt</FILE>
</CONTEXT_FILES>
<CONTRACT>
<CONSTRAINTS>
<CONSTRAINT>Имя файла должно быть 'LabelsListScreen.kt'.</CONSTRAINT>
<CONSTRAINT>Функция должна называться 'LabelsListScreen'.</CONSTRAINT>
<CONSTRAINT>Функция должна быть аннотирована как @Composable.</CONSTRAINT>
<CONSTRAINT>Основная разметка должна использовать Scaffold.</CONSTRAINT>
<CONSTRAINT>Должен быть TopAppBar с заголовком "Метки".</CONSTRAINT>
<CONSTRAINT>В качестве временного контента для Scaffold должен использоваться Text-компонент с текстом "Hello, Labels Screen!".</CONSTRAINT>
</CONSTRAINTS>
</CONTRACT>
<PAYLOAD mode="FULL_CONTENT">
<![CDATA[
[FILE:app/src/main/java/com/homebox/lens/ui/screen/labelslist/LabelsListScreen.kt]
[PACKAGE]
package com.homebox.lens.ui.screen.labelslist
[/PACKAGE]
[IMPORTS]
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
[/IMPORTS]
[COMPOSABLE_FUNCTION]
/**
* Заглушка для экрана, отображающего список меток.
* В соответствии со спецификацией 'screen_labels_list'.
*/
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun LabelsListScreen(
// В будущем здесь будут параметры: navController для навигации, viewModel для получения данных.
) {
Scaffold(
topBar = {
TopAppBar(
title = {
Text(text = "Метки") // В будущем будет заменено на stringResource
}
)
}
) { paddingValues ->
// Временный контент-заглушка.
// В будущем здесь будет LazyColumn для отображения списка меток.
Box(
modifier = Modifier
.fillMaxSize()
.padding(paddingValues),
contentAlignment = Alignment.Center
) {
Text("Hello, Labels Screen!")
}
}
}
[/COMPOSABLE_FUNCTION]
[END_FILE]
]]>
</PAYLOAD>
<IMPLEMENTATION_HINTS>
<HINT>Создай новый файл по пути 'app/src/main/java/com/homebox/lens/ui/screen/labelslist/LabelsListScreen.kt'.</HINT>
<HINT>Скопируй предоставленный код из секции PAYLOAD в этот файл.</HINT>
<HINT>Убедись, что используется правильный package: com.homebox.lens.ui.screen.labelslist.</HINT>
<HINT>Добавь все необходимые импорты для Jetpack Compose (Scaffold, TopAppBar, Text, Composable и т.д.), как указано в PAYLOAD.</HINT>
<HINT>Следуй структуре, заданной семантическими якорями.</HINT>
</IMPLEMENTATION_HINTS>
</WORK_ORDER>
</TASK>