registerEvents static method

void registerEvents(
  1. MethodChannel channel
)

Implementation

static void registerEvents(MethodChannel channel) {
  void Function(dynamic data) open = allowInterop((dynamic data) {
    channel.invokeMethod('widgetOpened');
  });
  GleapJsSdkHelper.registerEvents('open', open);

  void Function(dynamic data) close = allowInterop((dynamic data) {
    channel.invokeMethod('widgetClosed');
  });
  GleapJsSdkHelper.registerEvents('close', close);

  void Function(dynamic data) feedbackSent = allowInterop((dynamic data) {
    channel.invokeMethod('feedbackSent');
  });
  GleapJsSdkHelper.registerEvents('feedback-sent', feedbackSent);

  void Function(dynamic data) errorWhileSending =
      allowInterop((dynamic data) {
    channel.invokeMethod('feedbackSendingFailed');
  });
  GleapJsSdkHelper.registerEvents('error-while-sending', errorWhileSending);

  void Function(dynamic data) initialized = allowInterop((dynamic data) {
    channel.invokeMethod('initialized');
  });
  GleapJsSdkHelper.registerEvents('initialized', initialized);

  void Function(dynamic data) feedbackFlowStarted =
      allowInterop((dynamic data) {
    final String strifiedData = GleapJsSdkHelper.stringify(data as Object);

    channel.invokeMethod(
      'feedbackFlowStarted',
      jsonDecode(strifiedData),
    );
  });
  GleapJsSdkHelper.registerEvents('flow-started', feedbackFlowStarted);

  void Function(dynamic data) customActionCalled =
      allowInterop((dynamic data) {
    channel.invokeMethod(
      'customActionTriggered',
      <String, dynamic>{'name': data.name},
    );
  });
  GleapJsSdkHelper.registerCustomAction(customActionCalled);

  void Function(dynamic data) registerPushMessageGroup =
      allowInterop((dynamic data) {
    channel.invokeMethod('registerPushMessageGroup', data);
  });
  GleapJsSdkHelper.registerEvents(
      'register-pushmessage-group', registerPushMessageGroup);

  void Function(dynamic data) unregisterPushMessageGroup =
      allowInterop((dynamic data) {
    channel.invokeMethod('unregisterPushMessageGroup', data);
  });
  GleapJsSdkHelper.registerEvents(
      'unregister-pushmessage-group', unregisterPushMessageGroup);
}