Compare commits
	
		
			No commits in common. "5464cd1d4068117ff886a994da63e5e0abcc7068" and "23b608ed100548257dddd700fb33676ee275bd2e" have entirely different histories.
		
	
	
		
			5464cd1d40
			...
			23b608ed10
		
	
		
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 3.3 KiB  | 
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 1.6 KiB  | 
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 1.6 MiB  | 
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 756 KiB  | 
@ -1,21 +0,0 @@
 | 
				
			|||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit_example/cards/information_card/information_cards.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class Cards extends StatelessWidget {
 | 
					 | 
				
			||||||
  const Cards({super.key});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => ListView(
 | 
					 | 
				
			||||||
        shrinkWrap: true,
 | 
					 | 
				
			||||||
        children: [
 | 
					 | 
				
			||||||
          Text(
 | 
					 | 
				
			||||||
            'Cards',
 | 
					 | 
				
			||||||
            style: Theme.of(context)
 | 
					 | 
				
			||||||
                .textTheme
 | 
					 | 
				
			||||||
                .titleLarge!
 | 
					 | 
				
			||||||
                .copyWith(color: Colors.white),
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          const InformationCards(),
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,152 +0,0 @@
 | 
				
			|||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/wyatt_ui_kit.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class InformationCards extends StatelessWidget {
 | 
					 | 
				
			||||||
  const InformationCards({super.key});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => ListView(
 | 
					 | 
				
			||||||
        shrinkWrap: true,
 | 
					 | 
				
			||||||
        children: [
 | 
					 | 
				
			||||||
          Text(
 | 
					 | 
				
			||||||
            'Information Cards',
 | 
					 | 
				
			||||||
            style: Theme.of(context)
 | 
					 | 
				
			||||||
                .textTheme
 | 
					 | 
				
			||||||
                .titleMedium!
 | 
					 | 
				
			||||||
                .copyWith(color: Colors.white),
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          Row(
 | 
					 | 
				
			||||||
            mainAxisAlignment: MainAxisAlignment.center,
 | 
					 | 
				
			||||||
            children: [
 | 
					 | 
				
			||||||
              InformationCard(
 | 
					 | 
				
			||||||
                icons: const [
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                ],
 | 
					 | 
				
			||||||
                title: const TextWrapper('Flutter'),
 | 
					 | 
				
			||||||
                subtitle: TextWrapper.text('One single code base.'),
 | 
					 | 
				
			||||||
                body: TextWrapper.text(
 | 
					 | 
				
			||||||
                  'Cupidatat reprehenderit aliqua eiusmod Lorem. '
 | 
					 | 
				
			||||||
                  'Qui ipsum id ea ea nulla labore aute ullamco aute '
 | 
					 | 
				
			||||||
                  'quis elit ut amet velit. Incididunt fugiat proident '
 | 
					 | 
				
			||||||
                  'proident deserunt tempor Lorem cillum qui do '
 | 
					 | 
				
			||||||
                  'ullamco Lorem magna ipsum. Ullamco cupidatat velit '
 | 
					 | 
				
			||||||
                  'elit sint ex cupidatat ullamco Lorem amet elit '
 | 
					 | 
				
			||||||
                  'ipsum sunt ex voluptate. Eiusmod quis laborum velit '
 | 
					 | 
				
			||||||
                  'excepteur eu commodo consectetur qui exercitation '
 | 
					 | 
				
			||||||
                  'officia consequat ullamco sit adipisicing. Ullamco '
 | 
					 | 
				
			||||||
                  'magna cupidatat Lorem nulla cupidatat voluptate '
 | 
					 | 
				
			||||||
                  'irure ex reprehenderit.',
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
              const Gap(20),
 | 
					 | 
				
			||||||
              InformationCard(
 | 
					 | 
				
			||||||
                background: Center(
 | 
					 | 
				
			||||||
                  child: Container(
 | 
					 | 
				
			||||||
                    decoration: const BoxDecoration(
 | 
					 | 
				
			||||||
                      image: DecorationImage(
 | 
					 | 
				
			||||||
                        image: AssetImage('assets/asset_1.png'),
 | 
					 | 
				
			||||||
                        fit: BoxFit.fitHeight,
 | 
					 | 
				
			||||||
                        alignment: Alignment.centerRight,
 | 
					 | 
				
			||||||
                      ),
 | 
					 | 
				
			||||||
                    ),
 | 
					 | 
				
			||||||
                  ),
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
                icons: const [
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                ],
 | 
					 | 
				
			||||||
                title: 'Flutter'.wrap(
 | 
					 | 
				
			||||||
                  gradient: [Colors.blue, Colors.green],
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
                subtitle: TextWrapper.text('One single code base.'),
 | 
					 | 
				
			||||||
                body: 'Cupidatat reprehenderit aliqua eiusmod Lorem. '
 | 
					 | 
				
			||||||
                        'Qui ipsum id ea ea nulla labore aute ullamco aute '
 | 
					 | 
				
			||||||
                        'quis elit ut amet velit. Incididunt fugiat proident '
 | 
					 | 
				
			||||||
                        'proident deserunt tempor Lorem cillum qui do '
 | 
					 | 
				
			||||||
                        'ullamco Lorem magna ipsum. Ullamco cupidatat velit '
 | 
					 | 
				
			||||||
                        'elit sint ex cupidatat ullamco Lorem amet elit '
 | 
					 | 
				
			||||||
                        'ipsum sunt ex voluptate. Eiusmod quis laborum velit '
 | 
					 | 
				
			||||||
                        'excepteur eu commodo consectetur qui exercitation '
 | 
					 | 
				
			||||||
                        'officia consequat ullamco sit adipisicing. Ullamco '
 | 
					 | 
				
			||||||
                        'magna cupidatat Lorem nulla cupidatat voluptate '
 | 
					 | 
				
			||||||
                        'irure ex reprehenderit.'
 | 
					 | 
				
			||||||
                    .wrap(),
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
            ],
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          const Gap(20),
 | 
					 | 
				
			||||||
          Row(
 | 
					 | 
				
			||||||
            mainAxisAlignment: MainAxisAlignment.center,
 | 
					 | 
				
			||||||
            children: [
 | 
					 | 
				
			||||||
              InformationCard(
 | 
					 | 
				
			||||||
                icons: const [
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                ],
 | 
					 | 
				
			||||||
                axis: Axis.horizontal,
 | 
					 | 
				
			||||||
                title: TextWrapper.text('Flutter'),
 | 
					 | 
				
			||||||
                subtitle: TextWrapper.text('One single code base.'),
 | 
					 | 
				
			||||||
                body: 'Cupidatat reprehenderit aliqua eiusmod Lorem. '
 | 
					 | 
				
			||||||
                        'Qui ipsum id ea ea nulla labore aute ullamco aute '
 | 
					 | 
				
			||||||
                        'quis elit ut amet velit. Incididunt fugiat proident '
 | 
					 | 
				
			||||||
                        'proident deserunt tempor Lorem cillum qui do '
 | 
					 | 
				
			||||||
                        'ullamco Lorem magna ipsum. Ullamco cupidatat velit '
 | 
					 | 
				
			||||||
                        'elit sint ex cupidatat ullamco Lorem amet elit '
 | 
					 | 
				
			||||||
                        'ipsum sunt ex voluptate. Eiusmod quis laborum velit '
 | 
					 | 
				
			||||||
                        'excepteur eu commodo consectetur qui exercitation '
 | 
					 | 
				
			||||||
                        'officia consequat ullamco sit adipisicing. Ullamco '
 | 
					 | 
				
			||||||
                        'magna cupidatat Lorem nulla cupidatat voluptate '
 | 
					 | 
				
			||||||
                        'irure ex reprehenderit.'
 | 
					 | 
				
			||||||
                    .wrap(
 | 
					 | 
				
			||||||
                  gradient: [
 | 
					 | 
				
			||||||
                    Colors.red,
 | 
					 | 
				
			||||||
                    Colors.orange,
 | 
					 | 
				
			||||||
                  ],
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
              const Gap(20),
 | 
					 | 
				
			||||||
              InformationCard(
 | 
					 | 
				
			||||||
                background: Center(
 | 
					 | 
				
			||||||
                  child: Container(
 | 
					 | 
				
			||||||
                    decoration: const BoxDecoration(
 | 
					 | 
				
			||||||
                      image: DecorationImage(
 | 
					 | 
				
			||||||
                        image: AssetImage('assets/asset_1.png'),
 | 
					 | 
				
			||||||
                        fit: BoxFit.fitHeight,
 | 
					 | 
				
			||||||
                        alignment: Alignment.centerRight,
 | 
					 | 
				
			||||||
                      ),
 | 
					 | 
				
			||||||
                    ),
 | 
					 | 
				
			||||||
                  ),
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
                icons: const [
 | 
					 | 
				
			||||||
                  FlutterLogo(size: 60),
 | 
					 | 
				
			||||||
                ],
 | 
					 | 
				
			||||||
                axis: Axis.horizontal,
 | 
					 | 
				
			||||||
                title: TextWrapper.text('Flutter'),
 | 
					 | 
				
			||||||
                subtitle: 'One single code base.'.wrap(
 | 
					 | 
				
			||||||
                  gradient: [Colors.blue, Colors.green],
 | 
					 | 
				
			||||||
                  style: TextStyle(
 | 
					 | 
				
			||||||
                    fontWeight: FontWeight.bold,
 | 
					 | 
				
			||||||
                  ),
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
                body: TextWrapper.text(
 | 
					 | 
				
			||||||
                  'Cupidatat reprehenderit aliqua eiusmod Lorem. '
 | 
					 | 
				
			||||||
                  'Qui ipsum id ea ea nulla labore aute ullamco aute '
 | 
					 | 
				
			||||||
                  'quis elit ut amet velit. Incididunt fugiat proident '
 | 
					 | 
				
			||||||
                  'proident deserunt tempor Lorem cillum qui do '
 | 
					 | 
				
			||||||
                  'ullamco Lorem magna ipsum. Ullamco cupidatat velit '
 | 
					 | 
				
			||||||
                  'elit sint ex cupidatat ullamco Lorem amet elit '
 | 
					 | 
				
			||||||
                  'ipsum sunt ex voluptate. Eiusmod quis laborum velit '
 | 
					 | 
				
			||||||
                  'excepteur eu commodo consectetur qui exercitation '
 | 
					 | 
				
			||||||
                  'officia consequat ullamco sit adipisicing. Ullamco '
 | 
					 | 
				
			||||||
                  'magna cupidatat Lorem nulla cupidatat voluptate '
 | 
					 | 
				
			||||||
                  'irure ex reprehenderit.',
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
            ],
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -14,10 +14,9 @@
 | 
				
			|||||||
// You should have received a copy of the GNU General Public License
 | 
					// You should have received a copy of the GNU General Public License
 | 
				
			||||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
 | 
					// along with this program. If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import 'package:flutter/cupertino.dart';
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					import 'package:flutter/material.dart';
 | 
				
			||||||
import 'package:flutter_localizations/flutter_localizations.dart';
 | 
					
 | 
				
			||||||
import 'package:wyatt_ui_kit_example/cards/cards.dart';
 | 
					import 'package:wyatt_ui_kit/wyatt_ui_kit.dart';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void main(List<String> args) {
 | 
					void main(List<String> args) {
 | 
				
			||||||
  runApp(const App());
 | 
					  runApp(const App());
 | 
				
			||||||
@ -29,30 +28,16 @@ class App extends StatelessWidget {
 | 
				
			|||||||
  static const String title = 'Wyatt Ui Kit Example';
 | 
					  static const String title = 'Wyatt Ui Kit Example';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @override
 | 
					  @override
 | 
				
			||||||
  Widget build(BuildContext context) => CupertinoApp(
 | 
					  Widget build(BuildContext context) => MaterialApp(
 | 
				
			||||||
        localizationsDelegates: const [
 | 
					 | 
				
			||||||
          GlobalMaterialLocalizations.delegate,
 | 
					 | 
				
			||||||
          GlobalWidgetsLocalizations.delegate,
 | 
					 | 
				
			||||||
          GlobalCupertinoLocalizations.delegate,
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        theme: const CupertinoThemeData(
 | 
					 | 
				
			||||||
          primaryColor: Colors.blue,
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        supportedLocales: const [
 | 
					 | 
				
			||||||
          Locale('fr', ''),
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        title: title,
 | 
					        title: title,
 | 
				
			||||||
        home: CupertinoPageScaffold(
 | 
					        theme: ThemeData(
 | 
				
			||||||
          navigationBar: const CupertinoNavigationBar(
 | 
					          primarySwatch: Colors.blue,
 | 
				
			||||||
            middle: Text(title),
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          child: Padding(
 | 
					 | 
				
			||||||
            padding: const EdgeInsets.all(8),
 | 
					 | 
				
			||||||
            child: ListView(
 | 
					 | 
				
			||||||
              shrinkWrap: true,
 | 
					 | 
				
			||||||
              children: const [Cards()],
 | 
					 | 
				
			||||||
        ),
 | 
					        ),
 | 
				
			||||||
 | 
					        home: Scaffold(
 | 
				
			||||||
 | 
					          appBar: AppBar(
 | 
				
			||||||
 | 
					            title: const Text(title),
 | 
				
			||||||
          ),
 | 
					          ),
 | 
				
			||||||
 | 
					          body: Center(child: Text(WyattUiKit.testString)),
 | 
				
			||||||
        ),
 | 
					        ),
 | 
				
			||||||
      );
 | 
					      );
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -10,19 +10,9 @@ environment:
 | 
				
			|||||||
dependencies:
 | 
					dependencies:
 | 
				
			||||||
  flutter: { sdk: flutter }
 | 
					  flutter: { sdk: flutter }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  flutter_localizations:
 | 
					 | 
				
			||||||
    sdk: flutter
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  gap: ^2.0.1
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  wyatt_ui_kit:
 | 
					  wyatt_ui_kit:
 | 
				
			||||||
    path: "../"
 | 
					    path: "../"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wyatt_ui_components:
 | 
					 | 
				
			||||||
    git:
 | 
					 | 
				
			||||||
      url: ssh://git@git.wyatt-studio.fr:993/Wyatt-FOSS/wyatt-packages.git
 | 
					 | 
				
			||||||
      path: packages/wyatt_ui_components
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
dev_dependencies:
 | 
					dev_dependencies:
 | 
				
			||||||
  flutter_test: { sdk: flutter }
 | 
					  flutter_test: { sdk: flutter }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -33,6 +23,3 @@ dev_dependencies:
 | 
				
			|||||||
# The following section is specific to Flutter.
 | 
					# The following section is specific to Flutter.
 | 
				
			||||||
flutter:
 | 
					flutter:
 | 
				
			||||||
  uses-material-design: true
 | 
					  uses-material-design: true
 | 
				
			||||||
 | 
					 | 
				
			||||||
  assets:
 | 
					 | 
				
			||||||
    - ./assets/
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export './information_card/information_card.dart';
 | 
					 | 
				
			||||||
@ -1,93 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/information_card/widgets/information_card_horizontal_header.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/information_card/widgets/information_card_vertical_header.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/widgets/card_wrapper.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/gradients/gradient_text.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/core/extensions/theme_extensions.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/core/helpers/helpers.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
part 'information_card.g.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const _bodyTopSpacing = 25.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ComponentCopyWithExtension()
 | 
					 | 
				
			||||||
class InformationCard extends InformationCardComponent
 | 
					 | 
				
			||||||
    with $InformationCardCWMixin {
 | 
					 | 
				
			||||||
  const InformationCard({
 | 
					 | 
				
			||||||
    super.icons,
 | 
					 | 
				
			||||||
    super.title,
 | 
					 | 
				
			||||||
    super.subtitle,
 | 
					 | 
				
			||||||
    super.body,
 | 
					 | 
				
			||||||
    super.axis,
 | 
					 | 
				
			||||||
    super.radius,
 | 
					 | 
				
			||||||
    super.padding,
 | 
					 | 
				
			||||||
    super.borderColors,
 | 
					 | 
				
			||||||
    super.backgroundColor,
 | 
					 | 
				
			||||||
    super.minSize,
 | 
					 | 
				
			||||||
    super.maxSize = const Size(330, double.infinity),
 | 
					 | 
				
			||||||
    super.shadow,
 | 
					 | 
				
			||||||
    super.background,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => CardWrapper(
 | 
					 | 
				
			||||||
        background: background,
 | 
					 | 
				
			||||||
        padding: padding,
 | 
					 | 
				
			||||||
        backgroundColor: backgroundColor,
 | 
					 | 
				
			||||||
        borderColors: borderColors,
 | 
					 | 
				
			||||||
        shadow: shadow,
 | 
					 | 
				
			||||||
        maxSize: maxSize,
 | 
					 | 
				
			||||||
        minSize: minSize,
 | 
					 | 
				
			||||||
        child: Column(
 | 
					 | 
				
			||||||
          mainAxisSize: MainAxisSize.min,
 | 
					 | 
				
			||||||
          children: [
 | 
					 | 
				
			||||||
            if (axis == Axis.horizontal) ...[
 | 
					 | 
				
			||||||
              InformationCardHorizontalHeader(
 | 
					 | 
				
			||||||
                icons: icons,
 | 
					 | 
				
			||||||
                axis: axis,
 | 
					 | 
				
			||||||
                title: title,
 | 
					 | 
				
			||||||
                subtitle: subtitle,
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
            ] else if (axis == Axis.vertical) ...[
 | 
					 | 
				
			||||||
              InformationCardVerticalHeader(
 | 
					 | 
				
			||||||
                icons: icons,
 | 
					 | 
				
			||||||
                axis: axis,
 | 
					 | 
				
			||||||
                title: title,
 | 
					 | 
				
			||||||
                subtitle: subtitle,
 | 
					 | 
				
			||||||
              )
 | 
					 | 
				
			||||||
            ],
 | 
					 | 
				
			||||||
            if (body != null) ...[
 | 
					 | 
				
			||||||
              const Gap(_bodyTopSpacing),
 | 
					 | 
				
			||||||
              Text(
 | 
					 | 
				
			||||||
                body!.text,
 | 
					 | 
				
			||||||
                style: body!.style ?? context.textTheme.bodyMedium,
 | 
					 | 
				
			||||||
              ).toGradient(
 | 
					 | 
				
			||||||
                LinearGradientHelper.fromNullableColors(
 | 
					 | 
				
			||||||
                  body!.gradient,
 | 
					 | 
				
			||||||
                ),
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
            ],
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,81 +0,0 @@
 | 
				
			|||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
part of 'information_card.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// **************************************************************************
 | 
					 | 
				
			||||||
// ComponentCopyWithGenerator
 | 
					 | 
				
			||||||
// **************************************************************************
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class $InformationCardCWProxyImpl implements $InformationCardComponentCWProxy {
 | 
					 | 
				
			||||||
  const $InformationCardCWProxyImpl(this._value);
 | 
					 | 
				
			||||||
  final InformationCard _value;
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard icons(List<Widget>? icons) => this(icons: icons);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard title(TextWrapper? title) => this(title: title);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard subtitle(TextWrapper? subtitle) => this(subtitle: subtitle);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard body(TextWrapper? body) => this(body: body);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard axis(Axis? axis) => this(axis: axis);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard radius(double? radius) => this(radius: radius);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard padding(double? padding) => this(padding: padding);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard borderColors(List<Color>? borderColors) =>
 | 
					 | 
				
			||||||
      this(borderColors: borderColors);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard backgroundColor(Color? backgroundColor) =>
 | 
					 | 
				
			||||||
      this(backgroundColor: backgroundColor);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard minSize(Size? minSize) => this(minSize: minSize);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard maxSize(Size? maxSize) => this(maxSize: maxSize);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard shadow(BoxShadow? shadow) => this(shadow: shadow);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard background(Widget? background) =>
 | 
					 | 
				
			||||||
      this(background: background);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard key(Key? key) => this(key: key);
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  InformationCard call({
 | 
					 | 
				
			||||||
    List<Widget>? icons,
 | 
					 | 
				
			||||||
    TextWrapper? title,
 | 
					 | 
				
			||||||
    TextWrapper? subtitle,
 | 
					 | 
				
			||||||
    TextWrapper? body,
 | 
					 | 
				
			||||||
    Axis? axis,
 | 
					 | 
				
			||||||
    double? radius,
 | 
					 | 
				
			||||||
    double? padding,
 | 
					 | 
				
			||||||
    List<Color>? borderColors,
 | 
					 | 
				
			||||||
    Color? backgroundColor,
 | 
					 | 
				
			||||||
    Size? minSize,
 | 
					 | 
				
			||||||
    Size? maxSize,
 | 
					 | 
				
			||||||
    BoxShadow? shadow,
 | 
					 | 
				
			||||||
    Widget? background,
 | 
					 | 
				
			||||||
    Key? key,
 | 
					 | 
				
			||||||
  }) =>
 | 
					 | 
				
			||||||
      InformationCard(
 | 
					 | 
				
			||||||
        icons: icons ?? _value.icons,
 | 
					 | 
				
			||||||
        title: title ?? _value.title,
 | 
					 | 
				
			||||||
        subtitle: subtitle ?? _value.subtitle,
 | 
					 | 
				
			||||||
        body: body ?? _value.body,
 | 
					 | 
				
			||||||
        axis: axis ?? _value.axis,
 | 
					 | 
				
			||||||
        radius: radius ?? _value.radius,
 | 
					 | 
				
			||||||
        padding: padding ?? _value.padding,
 | 
					 | 
				
			||||||
        borderColors: borderColors ?? _value.borderColors,
 | 
					 | 
				
			||||||
        backgroundColor: backgroundColor ?? _value.backgroundColor,
 | 
					 | 
				
			||||||
        minSize: minSize ?? _value.minSize,
 | 
					 | 
				
			||||||
        maxSize: maxSize ?? _value.maxSize,
 | 
					 | 
				
			||||||
        shadow: shadow ?? _value.shadow,
 | 
					 | 
				
			||||||
        background: background ?? _value.background,
 | 
					 | 
				
			||||||
        key: key ?? _value.key,
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
mixin $InformationCardCWMixin on Component {
 | 
					 | 
				
			||||||
  $InformationCardComponentCWProxy get copyWith =>
 | 
					 | 
				
			||||||
      $InformationCardCWProxyImpl(this as InformationCard);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,52 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/information_card/widgets/information_card_titles.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const _avatarAndTitlesSpacing = 25.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class InformationCardHorizontalHeader extends StatelessWidget {
 | 
					 | 
				
			||||||
  const InformationCardHorizontalHeader({
 | 
					 | 
				
			||||||
    this.title,
 | 
					 | 
				
			||||||
    this.subtitle,
 | 
					 | 
				
			||||||
    this.axis,
 | 
					 | 
				
			||||||
    this.icons,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final TextWrapper? title;
 | 
					 | 
				
			||||||
  final TextWrapper? subtitle;
 | 
					 | 
				
			||||||
  final Axis? axis;
 | 
					 | 
				
			||||||
  final List<Widget>? icons;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => Row(
 | 
					 | 
				
			||||||
        children: [
 | 
					 | 
				
			||||||
          if (icons?.first != null) ...[
 | 
					 | 
				
			||||||
            icons!.first,
 | 
					 | 
				
			||||||
            const Gap(_avatarAndTitlesSpacing),
 | 
					 | 
				
			||||||
            InformationCardTitles(
 | 
					 | 
				
			||||||
              title: title,
 | 
					 | 
				
			||||||
              subtitle: subtitle,
 | 
					 | 
				
			||||||
              axis: axis,
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,42 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const _iconSpacing = 25.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class InformationCardIcons extends StatelessWidget {
 | 
					 | 
				
			||||||
  const InformationCardIcons({
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
    this.icons,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final List<Widget>? icons;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) {
 | 
					 | 
				
			||||||
    final result = <Widget>[];
 | 
					 | 
				
			||||||
    for (final widget in icons ?? List<Widget>.empty()) {
 | 
					 | 
				
			||||||
      result.addAll([widget, const Gap(_iconSpacing)]);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    result.removeLast();
 | 
					 | 
				
			||||||
    return Row(
 | 
					 | 
				
			||||||
      mainAxisAlignment: MainAxisAlignment.center,
 | 
					 | 
				
			||||||
      children: result,
 | 
					 | 
				
			||||||
    );
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,63 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/gradients/gradient_text.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/core/extensions/theme_extensions.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/core/helpers/linear_gradient_helper.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const _titlesLineSpacing = 5.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class InformationCardTitles extends StatelessWidget {
 | 
					 | 
				
			||||||
  const InformationCardTitles({
 | 
					 | 
				
			||||||
    this.title,
 | 
					 | 
				
			||||||
    this.subtitle,
 | 
					 | 
				
			||||||
    this.axis,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final TextWrapper? title;
 | 
					 | 
				
			||||||
  final TextWrapper? subtitle;
 | 
					 | 
				
			||||||
  final Axis? axis;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => Column(
 | 
					 | 
				
			||||||
        crossAxisAlignment: axis == Axis.horizontal
 | 
					 | 
				
			||||||
            ? CrossAxisAlignment.start
 | 
					 | 
				
			||||||
            : CrossAxisAlignment.center,
 | 
					 | 
				
			||||||
        children: [
 | 
					 | 
				
			||||||
          if (title != null) ...[
 | 
					 | 
				
			||||||
            Text(
 | 
					 | 
				
			||||||
              title!.text,
 | 
					 | 
				
			||||||
              style: title!.style ?? context.textTheme.titleLarge,
 | 
					 | 
				
			||||||
            ).toGradient(
 | 
					 | 
				
			||||||
              LinearGradientHelper.fromNullableColors(title!.gradient),
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
          if (subtitle != null) ...[
 | 
					 | 
				
			||||||
            const Gap(_titlesLineSpacing),
 | 
					 | 
				
			||||||
            Text(
 | 
					 | 
				
			||||||
              subtitle!.text,
 | 
					 | 
				
			||||||
              style: subtitle!.style ?? context.textTheme.titleSmall,
 | 
					 | 
				
			||||||
            ).toGradient(
 | 
					 | 
				
			||||||
              LinearGradientHelper.fromNullableColors(subtitle!.gradient),
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,55 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:gap/gap.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/information_card/widgets/information_card_icons.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/cards/information_card/widgets/information_card_titles.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const _avatarAndTitlesSpacing = 25.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class InformationCardVerticalHeader extends StatelessWidget {
 | 
					 | 
				
			||||||
  const InformationCardVerticalHeader({
 | 
					 | 
				
			||||||
    this.title,
 | 
					 | 
				
			||||||
    this.subtitle,
 | 
					 | 
				
			||||||
    this.axis,
 | 
					 | 
				
			||||||
    this.icons,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final TextWrapper? title;
 | 
					 | 
				
			||||||
  final TextWrapper? subtitle;
 | 
					 | 
				
			||||||
  final Axis? axis;
 | 
					 | 
				
			||||||
  final List<Widget>? icons;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => Column(
 | 
					 | 
				
			||||||
        children: [
 | 
					 | 
				
			||||||
          if (icons != null && icons!.isNotEmpty) ...[
 | 
					 | 
				
			||||||
            InformationCardIcons(
 | 
					 | 
				
			||||||
              icons: icons,
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
            const Gap(_avatarAndTitlesSpacing),
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
          InformationCardTitles(
 | 
					 | 
				
			||||||
            title: title,
 | 
					 | 
				
			||||||
            subtitle: subtitle,
 | 
					 | 
				
			||||||
            axis: axis,
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,124 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
import 'package:wyatt_ui_kit/src/components/gradients/gradient_box_border.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class CardWrapper extends StatefulWidget {
 | 
					 | 
				
			||||||
  const CardWrapper({
 | 
					 | 
				
			||||||
    required this.child,
 | 
					 | 
				
			||||||
    required this.backgroundColor,
 | 
					 | 
				
			||||||
    required this.borderColors,
 | 
					 | 
				
			||||||
    required this.shadow,
 | 
					 | 
				
			||||||
    required this.minSize,
 | 
					 | 
				
			||||||
    required this.maxSize,
 | 
					 | 
				
			||||||
    required this.padding,
 | 
					 | 
				
			||||||
    required this.background,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final Widget? background;
 | 
					 | 
				
			||||||
  final Widget child;
 | 
					 | 
				
			||||||
  final Color? backgroundColor;
 | 
					 | 
				
			||||||
  final List<Color>? borderColors;
 | 
					 | 
				
			||||||
  final BoxShadow? shadow;
 | 
					 | 
				
			||||||
  final Size? minSize;
 | 
					 | 
				
			||||||
  final Size? maxSize;
 | 
					 | 
				
			||||||
  final double? padding;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  State<CardWrapper> createState() => _CardWrapperState();
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class _CardWrapperState extends State<CardWrapper> {
 | 
					 | 
				
			||||||
  Size _cardSize = Size.zero;
 | 
					 | 
				
			||||||
  final GlobalKey _key = GlobalKey();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  void initState() {
 | 
					 | 
				
			||||||
    super.initState();
 | 
					 | 
				
			||||||
    WidgetsBinding.instance.addPostFrameCallback((_) {
 | 
					 | 
				
			||||||
      final RenderObject? renderBox = _key.currentContext?.findRenderObject();
 | 
					 | 
				
			||||||
      if (renderBox != null) {
 | 
					 | 
				
			||||||
        setState(() {
 | 
					 | 
				
			||||||
          _cardSize =
 | 
					 | 
				
			||||||
              Size(renderBox.paintBounds.width, renderBox.paintBounds.height);
 | 
					 | 
				
			||||||
        });
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    });
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  Widget _buildChild(Widget child) => (widget.background != null)
 | 
					 | 
				
			||||||
      ? Stack(
 | 
					 | 
				
			||||||
          alignment: Alignment.center,
 | 
					 | 
				
			||||||
          children: [
 | 
					 | 
				
			||||||
            SizedBox(
 | 
					 | 
				
			||||||
              width: _cardSize.width,
 | 
					 | 
				
			||||||
              height: _cardSize.height,
 | 
					 | 
				
			||||||
              child: Center(child: widget.background),
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
            Padding(
 | 
					 | 
				
			||||||
              padding: EdgeInsets.all(
 | 
					 | 
				
			||||||
                widget.padding ?? 25,
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
              child: child,
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
          ],
 | 
					 | 
				
			||||||
        )
 | 
					 | 
				
			||||||
      : Padding(
 | 
					 | 
				
			||||||
          padding: EdgeInsets.all(
 | 
					 | 
				
			||||||
            widget.padding ?? 25,
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          child: child,
 | 
					 | 
				
			||||||
        );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) => SelectionArea(
 | 
					 | 
				
			||||||
        child: DecoratedBox(
 | 
					 | 
				
			||||||
          key: _key,
 | 
					 | 
				
			||||||
          decoration: BoxDecoration(
 | 
					 | 
				
			||||||
            borderRadius: const BorderRadius.all(Radius.circular(12)),
 | 
					 | 
				
			||||||
            color: widget.backgroundColor ?? Theme.of(context).cardColor,
 | 
					 | 
				
			||||||
            border: GradientBoxBorder(
 | 
					 | 
				
			||||||
              gradient: LinearGradient(
 | 
					 | 
				
			||||||
                colors: (widget.borderColors != null &&
 | 
					 | 
				
			||||||
                        widget.borderColors!.length >= 2)
 | 
					 | 
				
			||||||
                    ? widget.borderColors!
 | 
					 | 
				
			||||||
                    : [
 | 
					 | 
				
			||||||
                        Theme.of(context).cardColor,
 | 
					 | 
				
			||||||
                        Theme.of(context).cardColor
 | 
					 | 
				
			||||||
                      ],
 | 
					 | 
				
			||||||
              ),
 | 
					 | 
				
			||||||
              width: 1,
 | 
					 | 
				
			||||||
            ),
 | 
					 | 
				
			||||||
            boxShadow: [
 | 
					 | 
				
			||||||
              if (widget.shadow != null) ...[widget.shadow!]
 | 
					 | 
				
			||||||
            ],
 | 
					 | 
				
			||||||
          ),
 | 
					 | 
				
			||||||
          child: (widget.minSize != null && widget.maxSize != null)
 | 
					 | 
				
			||||||
              ? ConstrainedBox(
 | 
					 | 
				
			||||||
                  constraints: BoxConstraints(
 | 
					 | 
				
			||||||
                    minWidth: widget.minSize!.width,
 | 
					 | 
				
			||||||
                    minHeight: widget.minSize!.height,
 | 
					 | 
				
			||||||
                    maxWidth: widget.maxSize!.width,
 | 
					 | 
				
			||||||
                    maxHeight: widget.maxSize!.height,
 | 
					 | 
				
			||||||
                  ),
 | 
					 | 
				
			||||||
                  child: _buildChild(widget.child),
 | 
					 | 
				
			||||||
                )
 | 
					 | 
				
			||||||
              : _buildChild(widget.child),
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export './cards/cards.dart';
 | 
					 | 
				
			||||||
@ -1,85 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/painting.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class GradientBoxBorder extends BoxBorder {
 | 
					 | 
				
			||||||
  const GradientBoxBorder({this.gradient, this.width = 0});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final Gradient? gradient;
 | 
					 | 
				
			||||||
  final double width;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  BorderSide get bottom => BorderSide.none;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  BorderSide get top => BorderSide.none;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  EdgeInsetsGeometry get dimensions => EdgeInsets.all(width);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  bool get isUniform => true;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  ShapeBorder scale(double t) => this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  void paint(
 | 
					 | 
				
			||||||
    Canvas canvas,
 | 
					 | 
				
			||||||
    Rect rect, {
 | 
					 | 
				
			||||||
    TextDirection? textDirection,
 | 
					 | 
				
			||||||
    BoxShape shape = BoxShape.rectangle,
 | 
					 | 
				
			||||||
    BorderRadius? borderRadius,
 | 
					 | 
				
			||||||
  }) {
 | 
					 | 
				
			||||||
    switch (shape) {
 | 
					 | 
				
			||||||
      case BoxShape.circle:
 | 
					 | 
				
			||||||
        assert(
 | 
					 | 
				
			||||||
          borderRadius == null,
 | 
					 | 
				
			||||||
          'A borderRadius can only be given for rectangular boxes.',
 | 
					 | 
				
			||||||
        );
 | 
					 | 
				
			||||||
        _paintCircle(canvas, rect);
 | 
					 | 
				
			||||||
        break;
 | 
					 | 
				
			||||||
      case BoxShape.rectangle:
 | 
					 | 
				
			||||||
        if (borderRadius != null) {
 | 
					 | 
				
			||||||
          _paintRRect(canvas, rect, borderRadius);
 | 
					 | 
				
			||||||
          return;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        _paintRect(canvas, rect);
 | 
					 | 
				
			||||||
        break;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  Paint _getPaint(Rect rect) => Paint()
 | 
					 | 
				
			||||||
    ..strokeWidth = width
 | 
					 | 
				
			||||||
    ..shader = gradient?.createShader(rect)
 | 
					 | 
				
			||||||
    ..style = PaintingStyle.stroke;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  void _paintRect(Canvas canvas, Rect rect) {
 | 
					 | 
				
			||||||
    canvas.drawRect(rect.deflate(width / 2), _getPaint(rect));
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  void _paintRRect(Canvas canvas, Rect rect, BorderRadius borderRadius) {
 | 
					 | 
				
			||||||
    final RRect rrect = borderRadius.toRRect(rect).deflate(width / 2);
 | 
					 | 
				
			||||||
    canvas.drawRRect(rrect, _getPaint(rect));
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  void _paintCircle(Canvas canvas, Rect rect) {
 | 
					 | 
				
			||||||
    final Paint paint = _getPaint(rect);
 | 
					 | 
				
			||||||
    final double radius = (rect.shortestSide - width) / 2.0;
 | 
					 | 
				
			||||||
    canvas.drawCircle(rect.center, radius, paint);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,71 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/widgets.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
extension GradientTextExtension on Icon {
 | 
					 | 
				
			||||||
  GradientIcon toGradient(Gradient? gradient) =>
 | 
					 | 
				
			||||||
      GradientIcon.from(this, gradient);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class GradientIcon extends Icon {
 | 
					 | 
				
			||||||
  const GradientIcon(
 | 
					 | 
				
			||||||
    super.icon, {
 | 
					 | 
				
			||||||
    this.gradient,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
    super.size,
 | 
					 | 
				
			||||||
    super.fill,
 | 
					 | 
				
			||||||
    super.weight,
 | 
					 | 
				
			||||||
    super.grade,
 | 
					 | 
				
			||||||
    super.opticalSize,
 | 
					 | 
				
			||||||
    super.color,
 | 
					 | 
				
			||||||
    super.shadows,
 | 
					 | 
				
			||||||
    super.semanticLabel,
 | 
					 | 
				
			||||||
    super.textDirection,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  factory GradientIcon.from(Icon icon, Gradient? gradient) => GradientIcon(
 | 
					 | 
				
			||||||
        icon.icon,
 | 
					 | 
				
			||||||
        gradient: gradient,
 | 
					 | 
				
			||||||
        key: icon.key,
 | 
					 | 
				
			||||||
        size: icon.size,
 | 
					 | 
				
			||||||
        fill: icon.fill,
 | 
					 | 
				
			||||||
        weight: icon.weight,
 | 
					 | 
				
			||||||
        grade: icon.grade,
 | 
					 | 
				
			||||||
        opticalSize: icon.opticalSize,
 | 
					 | 
				
			||||||
        color: icon.color,
 | 
					 | 
				
			||||||
        shadows: icon.shadows,
 | 
					 | 
				
			||||||
        semanticLabel: icon.semanticLabel,
 | 
					 | 
				
			||||||
        textDirection: icon.textDirection,
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final Gradient? gradient;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) {
 | 
					 | 
				
			||||||
    if (gradient != null) {
 | 
					 | 
				
			||||||
      return ShaderMask(
 | 
					 | 
				
			||||||
        blendMode: BlendMode.srcIn,
 | 
					 | 
				
			||||||
        shaderCallback: (bounds) => gradient!.createShader(
 | 
					 | 
				
			||||||
          Rect.fromLTWH(0, 0, bounds.width, bounds.height),
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        child: super.build(context),
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      return super.build(context);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,81 +0,0 @@
 | 
				
			|||||||
// Wyatt Studio Copyright (c) 2023
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/widgets.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
extension GradientTextExtension on Text {
 | 
					 | 
				
			||||||
  GradientText toGradient(Gradient? gradient) =>
 | 
					 | 
				
			||||||
      GradientText.from(this, gradient);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class GradientText extends Text {
 | 
					 | 
				
			||||||
  const GradientText(
 | 
					 | 
				
			||||||
    super.data, {
 | 
					 | 
				
			||||||
    this.gradient,
 | 
					 | 
				
			||||||
    super.style,
 | 
					 | 
				
			||||||
    super.strutStyle,
 | 
					 | 
				
			||||||
    super.textAlign,
 | 
					 | 
				
			||||||
    super.textDirection,
 | 
					 | 
				
			||||||
    super.locale,
 | 
					 | 
				
			||||||
    super.softWrap,
 | 
					 | 
				
			||||||
    super.overflow,
 | 
					 | 
				
			||||||
    super.textScaleFactor,
 | 
					 | 
				
			||||||
    super.maxLines,
 | 
					 | 
				
			||||||
    super.semanticsLabel,
 | 
					 | 
				
			||||||
    super.textWidthBasis,
 | 
					 | 
				
			||||||
    super.textHeightBehavior,
 | 
					 | 
				
			||||||
    super.selectionColor,
 | 
					 | 
				
			||||||
    super.key,
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  factory GradientText.from(Text text, Gradient? gradient) => GradientText(
 | 
					 | 
				
			||||||
        text.data ?? '',
 | 
					 | 
				
			||||||
        style: text.style,
 | 
					 | 
				
			||||||
        gradient: gradient,
 | 
					 | 
				
			||||||
        strutStyle: text.strutStyle,
 | 
					 | 
				
			||||||
        textAlign: text.textAlign,
 | 
					 | 
				
			||||||
        textDirection: text.textDirection,
 | 
					 | 
				
			||||||
        locale: text.locale,
 | 
					 | 
				
			||||||
        softWrap: text.softWrap,
 | 
					 | 
				
			||||||
        overflow: text.overflow,
 | 
					 | 
				
			||||||
        textScaleFactor: text.textScaleFactor,
 | 
					 | 
				
			||||||
        maxLines: text.maxLines,
 | 
					 | 
				
			||||||
        semanticsLabel: text.semanticsLabel,
 | 
					 | 
				
			||||||
        textWidthBasis: text.textWidthBasis,
 | 
					 | 
				
			||||||
        textHeightBehavior: text.textHeightBehavior,
 | 
					 | 
				
			||||||
        selectionColor: text.selectionColor,
 | 
					 | 
				
			||||||
        key: text.key,
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  final Gradient? gradient;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  @override
 | 
					 | 
				
			||||||
  Widget build(BuildContext context) {
 | 
					 | 
				
			||||||
    if (gradient != null) {
 | 
					 | 
				
			||||||
      return ShaderMask(
 | 
					 | 
				
			||||||
        blendMode: BlendMode.srcIn,
 | 
					 | 
				
			||||||
        shaderCallback: (bounds) => gradient!.createShader(
 | 
					 | 
				
			||||||
          Rect.fromLTWH(0, 0, bounds.width, bounds.height),
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        child: super.build(context),
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      return super.build(context);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export './theme_extensions.dart';
 | 
					 | 
				
			||||||
@ -1,21 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
extension ThemeExtension on BuildContext {
 | 
					 | 
				
			||||||
  TextTheme get textTheme => Theme.of(this).textTheme;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,17 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export './linear_gradient_helper.dart';
 | 
					 | 
				
			||||||
@ -1,22 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
class LinearGradientHelper {
 | 
					 | 
				
			||||||
  static LinearGradient? fromNullableColors(List<Color>? colors) =>
 | 
					 | 
				
			||||||
      colors != null ? LinearGradient(colors: colors) : null;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
@ -1,34 +0,0 @@
 | 
				
			|||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// 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 <https://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export './components/components.dart';
 | 
					 | 
				
			||||||
export './core/core.dart';
 | 
					 | 
				
			||||||
@ -14,5 +14,6 @@
 | 
				
			|||||||
// You should have received a copy of the GNU General Public License
 | 
					// You should have received a copy of the GNU General Public License
 | 
				
			||||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
 | 
					// along with this program. If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export './extensions/extensions.dart';
 | 
					abstract class WyattUiKit {
 | 
				
			||||||
export './helpers/helpers.dart';
 | 
					  static String get testString => 'Package: Wyatt Ui Kit';
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -17,4 +17,4 @@
 | 
				
			|||||||
/// UIKit and Design System used in Wyatt Studio.
 | 
					/// UIKit and Design System used in Wyatt Studio.
 | 
				
			||||||
library wyatt_ui_kit;
 | 
					library wyatt_ui_kit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export './src/src.dart';
 | 
					export 'src/wyatt_ui_kit.dart';
 | 
				
			||||||
 | 
				
			|||||||
@ -3,14 +3,11 @@ description: UIKit and Design System used in Wyatt Studio.
 | 
				
			|||||||
repository: https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages/src/branch/master/packages/wyatt_ui_kit
 | 
					repository: https://git.wyatt-studio.fr/Wyatt-FOSS/wyatt-packages/src/branch/master/packages/wyatt_ui_kit
 | 
				
			||||||
version: 1.0.0
 | 
					version: 1.0.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
publish_to: none
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
environment:
 | 
					environment:
 | 
				
			||||||
  sdk: ">=2.19.0 <3.0.0"
 | 
					  sdk: ">=2.19.0 <3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dependencies:
 | 
					dependencies:
 | 
				
			||||||
  flutter: { sdk: flutter }
 | 
					  flutter: { sdk: flutter }
 | 
				
			||||||
  gap: ^2.0.1
 | 
					 | 
				
			||||||
  flutter_animate: ^3.0.0
 | 
					  flutter_animate: ^3.0.0
 | 
				
			||||||
  wyatt_component_copy_with_extension:
 | 
					  wyatt_component_copy_with_extension:
 | 
				
			||||||
    git:
 | 
					    git:
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user