referralhero 0.0.1 copy "referralhero: ^0.0.1" to clipboard
referralhero: ^0.0.1 copied to clipboard

ReferralHero is a powerful Flutter package that allows you to effortlessly create viral, lead-generating, and revenue-boosting referral programs for your business.With ReferralHero, building a referra [...]

example/lib/main.dart

import 'dart:convert';

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:referralhero/referralhero.dart';
import 'package:referralhero_example/zip_code_details.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({super.key});

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

class _MyAppState extends State<MyApp> {
  String _platformVersion = 'Unknown';
  final _referralheroPlugin = Referralhero();
  String zipCode = '33162';
  Map<String, dynamic>? zipCodeDetails = null;
  Future<void> getZipCodeDetails() async {
    try {
      final value = await _referralheroPlugin.getZipCodeDetails(zipCode)!;
      print('Received details: $value'); // Debug print statement
      if (!mounted) return;
      setState(() {
        zipCodeDetails = jsonDecode(value);
        print('Country details: ${zipCodeDetails}');
      });
    } catch (e) {
      print('Error retrieving zip code details: $e');
    }
  }

  @override
  void initState() {
    super.initState();
    initPlatformState();
    getZipCodeDetails();
  }

  // Platform messages are asynchronous, so we initialize in an async method.
  Future<void> initPlatformState() async {
    String platformVersion;
    // Platform messages may fail, so we use a try/catch PlatformException.
    // We also handle the message potentially returning null.
    try {
      platformVersion =
          await _referralheroPlugin.getPlatformVersion() ?? 'Unknown platform version';
    } on PlatformException {
      platformVersion = 'Failed to get platform version.';
    }

    String? raw = await _referralheroPlugin.initializeSdk("Jaspalsinh", "Gohil");
    print("object {$raw}");

    // If the widget was removed from the tree while the asynchronous platform
    // message was in flight, we want to discard the reply rather than calling
    // setState to update our non-existent appearance.
    if (!mounted) return;

    setState(() {
      _platformVersion = platformVersion;
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              ElevatedButton(
                onPressed: getZipCodeDetails,
                child: Text('Get Zip Code Details'),
              ),
              SizedBox(height: 16),
              if (zipCodeDetails != null) // Check if not null before accessing elements
                Column(
                  children: [
                    Text('Zip Code: ${zipCodeDetails?["post code"]}'),
                    Text('Country: ${zipCodeDetails?["country"]}'),
                    Text('State: ${zipCodeDetails?["places"][0]["state"]}'),
                    Text('Places: ${zipCodeDetails?["places"][0]["place name"]}'),
                  ],
                ),
            ],
          ),
        ),
      ),
    );
  }
}
1
likes
140
points
1
downloads

Publisher

unverified uploader

Weekly Downloads

ReferralHero is a powerful Flutter package that allows you to effortlessly create viral, lead-generating, and revenue-boosting referral programs for your business.With ReferralHero, building a referral program becomes easy, empowering your customers to become enthusiastic brand ambassadors. Experience substantial business growth as your referral program fuels exponential growth, helping you reach new customers and increase revenue.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

flutter, http, plugin_platform_interface

More

Packages that depend on referralhero

Packages that implement referralhero