flusmic 1.0.1 copy "flusmic: ^1.0.1" to clipboard
flusmic: ^1.0.1 copied to clipboard

outdated

A functional and (not so) elegant primsmic.io integration for Dart and Flutter.

example/lib/main.dart

import 'package:flusmic/flusmic.dart' hide Text;
import 'package:flutter/material.dart';

void main() => runApp(FlusmicApp());

class FlusmicApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        home: HomeFlusmicScreen(),
        theme: ThemeData(
            primaryColor: Color(0xFF5163BA),
            scaffoldBackgroundColor: Color(0xFFF5F6F9),
            accentColor: Color(0xFF35A86F)));
  }
}

class HomeFlusmicScreen extends StatefulWidget {
  @override
  _HomeFlusmicScreenState createState() => _HomeFlusmicScreenState();
}

class _HomeFlusmicScreenState extends State<HomeFlusmicScreen> {
  final FlusmicController _flusmicController = FlusmicController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(title: Text('Flusmic example')),
        body: FlusmicBuilder(
            baseUrl: 'https://pixela.cdn.prismic.io/api/v2',
            builder: (context, result) => result.map(
                init: (s) => Container(),
                loading: (s) => Center(child: CircularProgressIndicator()),
                error: (s) => Center(child: Text('Hi! I\'m an error :(')),
                loaded: (s) => Container(
                    child: Padding(
                        padding: const EdgeInsets.symmetric(horizontal: 16.0),
                        child: Column(
                            mainAxisAlignment: MainAxisAlignment.center,
                            crossAxisAlignment: CrossAxisAlignment.center,
                            children: <Widget>[
                              Center(
                                  child: Text('Hi! I loaded all the data :)',
                                      style: TextStyle(
                                          fontWeight: FontWeight.bold,
                                          fontSize: 16.0))),
                              SizedBox(height: 16.0),
                              Center(
                                  child: Text((s.result as Result)
                                      .results
                                      .first
                                      .data
                                      .toString()))
                            ])))),
            controller: _flusmicController,
            predicates: [
              Predicate.at(DefaultPredicatePath.type(), 'about'),
              Predicate.at(DefaultPredicatePath.id(), 'WsvbDx8AAGsezMtN')
            ]),
        floatingActionButton: FloatingActionButton(
            onPressed: () => _flusmicController.repeat(),
            child: Icon(Icons.replay)));
  }
}
11
likes
0
pub points
73%
popularity

Publisher

verified publisherpixela.tech

A functional and (not so) elegant primsmic.io integration for Dart and Flutter.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

built_collection, built_value, common_bloc, flutter, freezed_annotation, http, state_notifier

More

Packages that depend on flusmic