ApptiveGrid Core

Pub pub points popularity likes

Core Library for ApptiveGrid. This provides general access to ApptiveGrid functionalities. It also contains authentication and general client logic so you can build your own ApptiveGrid experiences using this.

Setup

In order to use any ApptiveGrid Feature you must wrap your App with a ApptiveGrid Widget

import 'package:apptive_grid_core/apptive_grid_core.dart';

void main() {
  runApp(
    ApptiveGrid(
      options: ApptiveGridOptions(
        environment: ApptiveGridEnvironment.alpha,
        authenticationOptions: ApptiveGridAuthenticationOptions(
          autoAuthenticate = true,
        ),
      ),
      child: MyApp(),
    ),
  );
}

Authentication

Some functionalities require authentication. In order to authenticate a user either manually call ApptiveGrid.getClient(context).authenticate(). Alternatively you can set autoAuthenticate to true in ApptiveGridAuthenticationOptions in the ApptiveGridOptions this will automatically trigger the process.

Auth Redirect

To get redirected by authentication you need to provide a custom redirectScheme in ApptiveGridAuthenticationOptions

ApptiveGrid(
  options: ApptiveGridOptions(
    environment: ApptiveGridEnvironment.beta,
    authenticationOptions: ApptiveGridAuthenticationOptions(
      autoAuthenticate: true,
      redirectScheme: 'apptivegrid'
    ),
  ),
  child: MyApp(),
));

Also make sure that your app can be opened with that redirect Link. For more info check the documentation of uni_links

Flutter Web

If you want to use it with Flutter web you need to call and await enableWebAuth before runApp. This takes care of the redirect of the Authentication Server

void main() async {
  await enableWebAuth(options);
  runApp(ApptiveGrid(child: MyApp()));
}

API Key Auth

If you want to authenticate with an API Key, add a ApptiveGridApiKey to the ApptiveGridAuthenticationOptions

ApptiveGridOptions(
  environment: ApptiveGridEnvironment.alpha,
  authenticationOptions: ApptiveGridAuthenticationOptions(
    autoAuthenticate: true,
    apiKey: ApptiveGridApiKey(
      authKey: 'YOUR_AUTH_KEY',
      password: 'YOUR_AUTH_KEY_PASSWORD',
    ),
  )
)

Libraries

apptive_grid
apptive_grid_cache
apptive_grid_client
apptive_grid_core
apptive_grid_filter
apptive_grid_model
apptive_grid_network
apptive_grid_options
apptive_grid_sorting
authentication_storage
configure_nonweb
configure_web
io_authenticator
submit_form_progress
web_auth_enabler
web_authenticator