import 'package:flutter/material.dart';

class MySinglePage extends StatelessWidget {
  final PageViewModel? viewModel;
  final double? percentVisible;

  MySinglePage({
    super.key,
    this.viewModel,
    this.percentVisible = 1.0,
  });

  @override
  Widget build(BuildContext context) {
    return Container(
        width: double.infinity,
        color: viewModel!.color,
        child: Opacity(
          opacity: percentVisible!,
          child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [
            Transform(
                transform: Matrix4.translationValues(
                    0.0, 50.0 * (1.0 - percentVisible!), 0.0),
                child: viewModel!.content),
          ]),
        ));
  }
}

class PageViewModel {
  final Color color;
  final Widget content;

  PageViewModel(
    this.color,
    this.content,
  );
}
