phoenix_widgets 1.22.0 copy "phoenix_widgets: ^1.22.0" to clipboard
phoenix_widgets: ^1.22.0 copied to clipboard

Phoenix library collections.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:phoenix_widgets/phoenix_pdf.dart';
import 'package:phoenix_widgets_example/phoenix_back_button_page.dart';
import 'package:phoenix_widgets_example/phoenix_banner_page.dart';
import 'package:phoenix_widgets_example/phoenix_bottom_sheet_page.dart';
import 'package:phoenix_widgets_example/phoenix_bottom_sheet_tile_page.dart';
import 'package:phoenix_widgets_example/phoenix_checkbox_page.dart';
import 'package:phoenix_widgets_example/phoenix_chip_page.dart';
import 'package:phoenix_widgets_example/phoenix_dialog_page.dart';
import 'package:phoenix_widgets_example/phoenix_dropdown_page.dart';
import 'package:phoenix_widgets_example/phoenix_empty_page_page.dart';
import 'package:phoenix_widgets_example/phoenix_end_of_section_page.dart';
import 'package:phoenix_widgets_example/phoenix_expandable_list_page.dart';
import 'package:phoenix_widgets_example/phoenix_image_ease_out_fade_page.dart';
import 'package:phoenix_widgets_example/phoenix_list_group_page.dart';
import 'package:phoenix_widgets_example/phoenix_list_group_partition_page.dart';
import 'package:phoenix_widgets_example/phoenix_listview_page.dart';
import 'package:phoenix_widgets_example/phoenix_more_page.dart';
import 'package:phoenix_widgets_example/phoenix_navigation_card_page.dart';
import 'package:phoenix_widgets_example/phoenix_rich_text_handler_page.dart';
import 'package:phoenix_widgets_example/phoenix_search_no_content_page.dart';
import 'package:phoenix_widgets_example/phoenix_searchbar_page.dart';
import 'package:phoenix_widgets_example/phoenix_shimmer_page.dart';
import 'package:phoenix_widgets_example/phoenix_tab_view_page.dart';
import 'package:phoenix_widgets_example/phoenix_text_field_page.dart';
import 'package:phoenix_widgets_example/phoenix_tick_page.dart';
import 'package:phoenix_widgets_example/phoenix_title_page.dart';
import 'package:phoenix_widgets_example/phoenix_warning_page.dart';

import 'phoenix_bottom_menu_uhf_page.dart';
import 'phoenix_button_page.dart';
import 'phoenix_card_page.dart';
import 'phoenix_expandable_content_block_page.dart';
import 'phoenix_generic_popup_page.dart';
import 'phoenix_popup_page.dart';
import 'phoenix_product_tiles_page.dart';
import 'phoenix_webview_main_page.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(home: HomePage());
  }
}

class HomePage extends StatelessWidget {
  const HomePage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    // Create sorted list of button data
    final buttons = [
      {
        'text': "Phoenix Back Button",
        'page': const PhoenixBackButtonPage(),
      },
      {
        'text': "Phoenix Banner",
        'page': const PhoenixBannerPage(),
      },
      {
        'text': "Phoenix Bottom Navigation UHF",
        'page': const PhoenixBottomMenuUHFPage(),
      },
      {
        'text': "Phoenix Bottom Sheet",
        'page': const PhoenixBottomSheetPage(),
      },
      {
        'text': "Phoenix Bottom Sheet Tile",
        'page': const PhoenixBottomSheetTilePage()
      },
      {
        'text': "Phoenix Button",
        'page': const PhoenixButtonPage(),
      },
      {
        'text': "Phoenix Card",
        'page': const PhoenixCardPage(),
      },
      {
        'text': "Phoenix Checkbox",
        'page': const PhoenixCheckboxPage(),
      },
      {
        'text': "Phoenix Chip Page",
        'page': const PhoenixChipPage(),
      },
      {
        'text': "Phoenix Dialog",
        'page': const PhoenixDialogPage(),
      },
      {
        'text': "Phoenix Dropdown",
        'page': const PhoenixDropdownPage(),
      },
      {
        'text': "Phoenix Empty Page",
        'page': const PhoenixEmptyPagePage(),
      },
      {
        'text': "Phoenix End of Section",
        'page': const PhoenixEndOfSectionPage(),
      },
      {
        'text': "Phoenix Expandable Content Block",
        'page': const PhoenixExpandableContentBlockPage(),
      },
      {
        'text': "Phoenix Expendable",
        'page': const PhoenixExpandableListPage(),
      },
      {
        'text': "Phoenix Generic Pop Up",
        'page': const PhoenixGenericPopupPage(),
      },
      {
        'text': "Phoenix Image Ease Out Fade",
        'page': const PhoenixImageEaseOutPage(),
      },
      {
        'text': "Phoenix List Group",
        'page': const PhoenixListGroupPage(),
      },
      {
        'text': "Phoenix List Group with Partition",
        'page': const PhoenixListGroupPartitionPage(),
      },
      {
        'text': "Phoenix ListView Text Page",
        'page': const PhoenixListviewPage(),
      },
      {
        'text': "Phoenix More",
        'page': const PhoenixMorePage(),
      },
      {
        'text': "Phoenix Navigation Card",
        'page': const PhoenixNavigationCardPage(),
      },
      {
        'text': "Phoenix PDF",
        'page': const PhoenixPdf(
            url:
                "https://s28.q4cdn.com/392171258/files/doc_downloads/test.pdf"),
      },
      {
        'text': "Phoenix Pop Up",
        'page': const PhoenixPopupPage(),
      },
      {
        'text': "Phoenix Product Tiles",
        'page': const PhoenixProductTilesPage(),
      },
      {
        'text': "Phoenix Rich Text Handler",
        'page': const PhoenixRichTextHandlerPage(),
      },
      {
        'text': "Phoenix Search No Content Page",
        'page': const PhoenixSearchNoContentPage(),
      },
      {
        'text': "Phoenix Searchbar",
        'page': const PhoenixSearchbarPage(),
      },
      {
        'text': "Phoenix Shimmer",
        'page': const PhoenixShimmerPage(),
      },
      {
        'text': "Phoenix Tab View",
        'page': PhoenixTabViewPage(),
      },
      {
        'text': "Phoenix Text Field",
        'page': const PhoenixTextFieldPage(),
      },
      {
        'text': "Phoenix Tick",
        'page': const PhoenixTickPage(),
      },
      {
        'text': "Phoenix Title",
        'page': const PhoenixTitlePage(),
      },
      {
        'text': "Phoenix Warning",
        'page': const PhoenixWarningPage(),
      },
      {
        'text': "Phoenix Webview",
        'page': const PhoenixWebviewMainPage(),
      },
    ]..sort((a, b) => a['text']!.toString().compareTo(b['text']!.toString()));

    return Scaffold(
      backgroundColor: Colors.white,
      appBar: AppBar(
        title: const Text('Phoenix Widget Sample App'),
      ),
      body: SingleChildScrollView(
        child: Padding(
          padding: const EdgeInsets.all(16),
          child: Column(
            children: buttons
                .map((button) => ElevatedButton(
                      onPressed: () {
                        Navigator.push(
                          context,
                          MaterialPageRoute(
                            builder: (context) => button['page'] as Widget,
                          ),
                        );
                      },
                      child: SizedBox(
                        width: double.maxFinite,
                        child: Center(child: Text(button['text'] as String)),
                      ),
                    ))
                .toList(),
          ),
        ),
      ),
    );
  }
}