Skip to content

Commit

Permalink
feat: add initial status view file
Browse files Browse the repository at this point in the history
  • Loading branch information
luisburgos committed Sep 24, 2022
1 parent c64279a commit 58ccdd8
Show file tree
Hide file tree
Showing 3 changed files with 98 additions and 45 deletions.
52 changes: 52 additions & 0 deletions example/lib/shared/components/labeled_section.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import 'package:flutter/material.dart';

class LabeledSection extends StatelessWidget {
const LabeledSection({
Key? key,
required this.label,
required this.child,
this.backgroundColor = Colors.red,
}) : super(key: key);

final String label;
final Widget child;
final Color backgroundColor;

@override
Widget build(BuildContext context) {
return Stack(
children: [
Container(
width: double.infinity,
margin: const EdgeInsets.fromLTRB(10, 30, 10, 10),
decoration: BoxDecoration(
border: Border.all(
color: Colors.blueGrey,
width: 1,
),
shape: BoxShape.rectangle,
),
child: Container(
color: backgroundColor,
child: child,
),
),
Positioned(
left: 10,
top: 10,
child: Container(
padding: const EdgeInsets.fromLTRB(10, 10, 10, 0),
color: backgroundColor,
child: Text(
label,
style: const TextStyle(
color: Colors.black,
fontSize: 12,
),
),
),
),
],
);
}
}
43 changes: 43 additions & 0 deletions example/lib/shared/modules/trivia/initial/trivia_initial_view.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import 'package:flutter/material.dart';

import '../../../components/labeled_section.dart';
import '../components/copy_join_link_view.dart';
import '../components/trivia_data_view.dart';

class TriviaInitialStatusView extends StatelessWidget {
const TriviaInitialStatusView({
Key? key,
required this.triviaId,
required this.onCopyJoinLinkTap,
}) : super(key: key);

final String triviaId;
final Function(String) onCopyJoinLinkTap;

@override
Widget build(BuildContext context) {
const joinLink = 'TODO: improve joinLink';

return LabeledSection(
label: 'Initial',
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
const SizedBox(height: 50),
const TriviaDataView(
hostName: 'hostName',
triviaName: 'triviaName',
triviaDescription: 'triviaDescription',
triviaMainQuestion: 'triviaMainQuestion',
),
CopyJoinLinkView(
joinLink: joinLink,
onCopyJoinLinkTap: (joinLink) {
//TODO: Implement.
},
),
],
),
);
}
}
48 changes: 3 additions & 45 deletions example/lib/shared/modules/trivia/page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:scrollable_positioned_list/scrollable_positioned_list.dart';

import 'components/copy_join_link_view.dart';
import 'components/trivia_data_view.dart';
import 'initial/trivia_initial_view.dart';

class NavigateToTrivia extends NavigateToCommand {
NavigateToTrivia({
Expand Down Expand Up @@ -58,7 +57,7 @@ class TriviaPage extends StatelessWidget {
);
} else {
if (status == 'initial') {
triviaView = _TriviaInitialStatusView(
triviaView = TriviaInitialStatusView(
triviaId: triviaId,
onCopyJoinLinkTap: onCopyJoinLinkTap,
);
Expand Down Expand Up @@ -113,7 +112,7 @@ class _TriviaCompleteView extends StatelessWidget {
itemCount: 3,
itemBuilder: (_, index) {
if (index == 0) {
return _TriviaInitialStatusView(
return TriviaInitialStatusView(
triviaId: triviaId,
onCopyJoinLinkTap: onCopyJoinLinkTap,
);
Expand All @@ -136,47 +135,6 @@ class _TriviaCompleteView extends StatelessWidget {
}
}

class _TriviaInitialStatusView extends StatelessWidget {
const _TriviaInitialStatusView({
Key? key,
required this.triviaId,
required this.onCopyJoinLinkTap,
}) : super(key: key);

final String triviaId;
final Function(String) onCopyJoinLinkTap;

@override
Widget build(BuildContext context) {
const joinLink = 'TODO: improve joinLink';

return BaseContainer(
name: '$runtimeType',
body: Container(
color: Colors.red.shade200,
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
const SizedBox(height: 50),
const TriviaDataView(
hostName: 'hostName',
triviaName: 'triviaName',
triviaDescription: 'triviaDescription',
triviaMainQuestion: 'triviaMainQuestion',
),
CopyJoinLinkView(
joinLink: joinLink,
onCopyJoinLinkTap: (joinLink) {
//TODO: Implement.
},
),
],
),
),
);
}
}

class _TriviaStartedStatusView extends StatelessWidget {
const _TriviaStartedStatusView({
Key? key,
Expand Down

0 comments on commit 58ccdd8

Please sign in to comment.