feat: integrate Google Maps Places Autocomplete for hub address validation
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:design_system/design_system.dart';
|
||||
import 'package:core_localization/core_localization.dart';
|
||||
|
||||
class GetStartedActions extends StatelessWidget {
|
||||
final VoidCallback onSignUpPressed;
|
||||
@@ -13,40 +14,15 @@ class GetStartedActions extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final TranslationsStaffAuthenticationGetStartedPageEn i18n =
|
||||
t.staff_authentication.get_started_page;
|
||||
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.stretch,
|
||||
children: [
|
||||
ElevatedButton(
|
||||
onPressed: onSignUpPressed,
|
||||
style: ElevatedButton.styleFrom(
|
||||
backgroundColor: UiColors.primary,
|
||||
foregroundColor: Colors.white,
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
),
|
||||
),
|
||||
child: Text(
|
||||
'Create Account',
|
||||
style: UiTypography.buttonL.copyWith(color: Colors.white),
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 16),
|
||||
OutlinedButton(
|
||||
onPressed: onLoginPressed,
|
||||
style: OutlinedButton.styleFrom(
|
||||
foregroundColor: UiColors.primary,
|
||||
side: const BorderSide(color: UiColors.primary),
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
),
|
||||
),
|
||||
child: Text(
|
||||
'Log In',
|
||||
style: UiTypography.buttonL.copyWith(color: UiColors.primary),
|
||||
),
|
||||
),
|
||||
spacing: UiConstants.space4,
|
||||
children: <Widget>[
|
||||
UiButton.primary(onPressed: onSignUpPressed, text: i18n.sign_up_button),
|
||||
UiButton.secondary(onPressed: onLoginPressed, text: i18n.log_in_button),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,26 +1,42 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:design_system/design_system.dart';
|
||||
import 'package:staff_authentication/staff_authentication.dart';
|
||||
|
||||
/// A widget that displays the welcome text and description on the Get Started page.
|
||||
class GetStartedHeader extends StatelessWidget {
|
||||
/// Creates a [GetStartedHeader].
|
||||
const GetStartedHeader({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final TranslationsStaffAuthenticationGetStartedPageEn i18n =
|
||||
t.staff_authentication.get_started_page;
|
||||
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(
|
||||
'Krow Workforce',
|
||||
style: UiTypography.display1b.copyWith(color: UiColors.textPrimary),
|
||||
crossAxisAlignment: CrossAxisAlignment.stretch,
|
||||
children: <Widget>[
|
||||
RichText(
|
||||
textAlign: TextAlign.center,
|
||||
text: TextSpan(
|
||||
style: UiTypography.displayM,
|
||||
children: <InlineSpan>[
|
||||
TextSpan(
|
||||
text: i18n.title_part1,
|
||||
),
|
||||
TextSpan(
|
||||
text: i18n.title_part2,
|
||||
style: UiTypography.displayMb.textLink,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 16),
|
||||
Text(
|
||||
'Find flexible shifts that fit your schedule.',
|
||||
style: UiTypography.body1r.copyWith(color: UiColors.textSecondary),
|
||||
i18n.subtitle,
|
||||
textAlign: TextAlign.center,
|
||||
style: UiTypography.body1r.textSecondary,
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user