// Copyright (C) 2023 WYATT GROUP // Please see the AUTHORS file for details. // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:wyatt_i18n/wyatt_i18n.dart'; void main(List args) { runApp(const App()); } class App extends StatelessWidget { const App({super.key}); static const String title = 'Wyatt i18n Example'; @override Widget build(BuildContext context) { final I18nDataSource dataSource = NetworkDataSourceImpl( baseUri: Uri.parse( 'https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages/raw/commit/75f561a19e0484e67e511dbf29601ec5f58544aa/packages/wyatt_i18n/example/assets/', ), ); final I18nRepository repository = I18nRepositoryImpl(dataSource: dataSource); return MaterialApp( title: title, theme: ThemeData( primarySwatch: Colors.blue, ), localizationsDelegates: [ I18nDelegate(repository: repository), GlobalMaterialLocalizations.delegate, GlobalWidgetsLocalizations.delegate ], home: Scaffold( appBar: AppBar( title: const Text(title), ), body: Builder( builder: (ctx) => Center( child: Text(ctx.i18n('youHavePushed', {'count': 654})), ), ), ), ); } }