Routines: workout, meditation and must-do routines with timed, rep and tick steps, sets and rest. A library screen, a builder with templates and drag-to-reorder steps, and a full-screen player that auto-advances timed phases, counts backgrounding and logs broken chains as partial. Goals: a goal editor (deadline, colour, category, default class, archive), routines linked to goals, and a goal field on tasks and routines. Tasks added from inside a goal are now actually attached to it via parentId. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KhQh614DMeYoQEH9SoMRUw
21 lines
657 B
Dart
21 lines
657 B
Dart
import 'package:flutter/material.dart';
|
|
|
|
import '../../about/external/data/RoutineStep.dart';
|
|
import '../../about/internal/application/RoutineKind.dart';
|
|
import 'StepEditorState.dart';
|
|
|
|
/// The bottom sheet for one step. Pops with the edited [RoutineStep], with
|
|
/// `false` when the step is removed, or with nothing when dismissed.
|
|
class StepEditor extends StatefulWidget {
|
|
/// The step being edited; null adds a new one.
|
|
final RoutineStep? step;
|
|
|
|
/// Decides the defaults for a new step.
|
|
final RoutineKind kind;
|
|
|
|
const StepEditor({super.key, this.step, required this.kind});
|
|
|
|
@override
|
|
State<StepEditor> createState() => StepEditorState();
|
|
}
|