up_form 0.0.3 copy "up_form: ^0.0.3" to clipboard
up_form: ^0.0.3 copied to clipboard

UpForm upgrades standard form capabilities, including advanced reactivity, flexible controls and convenient building.

example/lib/main.dart

// dart:async not required here

import 'package:flutter/material.dart';
import 'package:up_form_example/core/locale_controller.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:form_builder_validators/form_builder_validators.dart';
import 'package:inheriteds/inheriteds.dart';
import '/home_page.dart';

void main() {
  // ContextBasedValidator.initialize(
  //   invalidValueMessage: (context) => FormBuilderLocalizations.of(context).invalidErrorText,
  //   requiredValueMessage: (context) => FormBuilderLocalizations.of(context).requiredErrorText,
  //   localeContextGlobalKey: _rootNavigatorKey,
  // );
  runApp(const App());
}

class App extends StatefulWidget {
  const App({super.key});

  static late AppState instance;
  static GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();

  @override
  // ignore: no_logic_in_create_state
  State<App> createState() => instance = AppState();
}

class AppState extends State<App> {

  final localeController = LocaleController(
    supportedLocales: const [Locale('en'), Locale('ru')],
    storage: ({Locale? save}) async {
      // Here you can implement saving/loading the locale from persistent storage
      return save;
    },
    onChange: (locale) {
      // to support Intl package localization
      // Intl.defaultLocale = locale.languageCode;
    },
  );


  @override
  Widget build(BuildContext context) {
    return InheritedHub(
      child: ListenableBuilder(
        listenable: localeController,
        builder: (context, _) {
          return MaterialApp(
            title: 'Up Form Demo',
            locale: localeController.currentLocale,
            supportedLocales: localeController.supportedLocales,
            localizationsDelegates: const [
              GlobalMaterialLocalizations.delegate,
              GlobalWidgetsLocalizations.delegate,
              GlobalCupertinoLocalizations.delegate,
              FormBuilderLocalizations.delegate,
            ],
            navigatorKey: App.navigatorKey,
            theme: ThemeData(
              colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
            ),
            home: const HomePage(title: 'Up Form - Demo'),
          );
        }
      ),
    );
  }
}
0
likes
80
points
137
downloads

Publisher

unverified uploader

Weekly Downloads

UpForm upgrades standard form capabilities, including advanced reactivity, flexible controls and convenient building.

Repository (GitHub)
View/report issues

Topics

#form #reactive-form #form-enhancement #form-control #form-validation

Documentation

API reference

License

MIT (license)

Dependencies

equalone, flutter, inheriteds

More

Packages that depend on up_form