// 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: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) => MaterialApp( title: title, theme: ThemeData( primarySwatch: Colors.blue, ), home: Scaffold( appBar: AppBar( title: const Text(title), ), body: Center( child: FutureBuilder( future: Future(() async { // test const I18nDataSource dataSource = AssetsFileDataSourceImpl(); final I18nRepository repository = I18nRepositoryImpl(dataSource: dataSource); final test1 = (await repository.load(locale: 'en')).ok; // final test2 = (await repository.loadFrom( // Uri.parse('assets/i18n.en.yaml'), // parser: const YamlParser(), // )) // .ok; // print(test1?.locale); // print(test1?.data); // print(test1?.data['btnAddFile']); final text = repository.get('youHavePushed', { 'count': 8, }); print(text.ok); // print(test2?.locale); // print(test2?.data); // print(test2?.data['btnAddFile']); return 'test'; }), builder: (context, snapshot) => const Text('WyattI18n'), ), ), ), ); }