PNApplicationConfig constructor

PNApplicationConfig(
  1. Map<String, dynamic> values
)

Implementation

PNApplicationConfig(Map<String, dynamic> values) {
  try {
    originVersion = values['originVersion'];
    appId = values['appId'];
    name = values['name'];
    appKey = values['appKey'];
    flags = values['flags'].cast<String>();
    frequencyCaps = values['frequencyCaps'] != null
        ? PNAppFrequencyCaps(values['frequencyCaps'].cast<String, dynamic>())
        : null;
    ecommConfig = values['ecommConfig'] != null
        ? PNEcommConfig(values['ecommConfig'].cast<String, dynamic>())
        : null;
    // ignore: prefer_null_aware_operators
    channels = values['channels'] != null
        ? values['channels']
            .cast<Map>()
            .map((value) =>
                PNNotificationChannel(value.cast<String, dynamic>()))
            .toList()
            .cast<PNNotificationChannel>()
        : null;
    authorizationOptions = values['authorizationOptions'];
    prompts = values['prompts']
        ?.cast<Map>()
        ?.map((value) => PNPrompt(value.cast<String, dynamic>()))
        ?.toList()
        ?.cast<PNPrompt>();
    session = values['session'] != null ? PNSessionConfig(values['session'].cast<String, dynamic>()) : null;
  } catch (e) {
    dt.log("Error processing PNApplicationConfig ${e.toString()}");
  }
}