Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ repositories {

dependencies {
implementation "com.facebook.react:react-native:${safeExtGet("reactNative", "+")}" // from node_modules
implementation group: 'com.zendesk', name: 'support', version: '3.0.2'
implementation group: 'com.zendesk', name: 'support', version: '5.0.1'
}
36 changes: 17 additions & 19 deletions android/src/main/java/io/dcvz/rnzendesk/RNZendeskBridge.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,6 @@

import androidx.annotation.RequiresApi;

import zendesk.commonui.UiConfig;
import zendesk.core.Zendesk;
import zendesk.core.Identity;
import zendesk.core.JwtIdentity;
import zendesk.core.AnonymousIdentity;
import zendesk.support.Support;
import zendesk.support.guide.HelpCenterActivity;
import zendesk.support.request.RequestActivity;
import zendesk.support.requestlist.RequestListActivity;

import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.bridge.ReactApplicationContext;
Expand All @@ -23,6 +13,16 @@
import java.util.ArrayList;
import java.util.Locale;

import zendesk.configurations.Configuration;
import zendesk.core.AnonymousIdentity;
import zendesk.core.Identity;
import zendesk.core.JwtIdentity;
import zendesk.core.Zendesk;
import zendesk.support.Support;
import zendesk.support.guide.HelpCenterActivity;
import zendesk.support.request.RequestActivity;
import zendesk.support.requestlist.RequestListActivity;

public class RNZendeskBridge extends ReactContextBaseJavaModule {

public RNZendeskBridge(ReactApplicationContext reactContext) {
Expand Down Expand Up @@ -68,13 +68,14 @@ public void identifyAnonymous(String name, String email) {

@ReactMethod
public void showHelpCenter(ReadableMap options) {
// Boolean hideContact = options.getBoolean("hideContactUs") || false;
UiConfig hcConfig = HelpCenterActivity.builder()
.withContactUsButtonVisible(!(options.hasKey("hideContactSupport") && options.getBoolean("hideContactSupport")))
ArrayList tags = options.getArray("tags").toArrayList();

Configuration hcConfig = RequestActivity.builder()
.withTags(tags)
.config();

Intent intent = HelpCenterActivity.builder()
.withContactUsButtonVisible(true)
.withContactUsButtonVisible(!(options.hasKey("hideContactSupport") && options.getBoolean("hideContactSupport")))
.intent(getReactApplicationContext(), hcConfig);

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Expand All @@ -95,10 +96,7 @@ public void showNewTicket(ReadableMap options) {

@ReactMethod
public void showTicketList() {
Intent intent = RequestListActivity.builder()
.intent(getReactApplicationContext());

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getReactApplicationContext().startActivity(intent);
RequestListActivity.builder()
.show(getReactApplicationContext());
}
}
20 changes: 17 additions & 3 deletions ios/RNZendesk/RNZendesk.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

import UIKit
import Foundation
import ZendeskSDK
import SupportSDK
import ZendeskCoreSDK
import CommonUISDK

Expand Down Expand Up @@ -64,8 +64,22 @@ class RNZendesk: RCTEventEmitter {
func showHelpCenter(with options: [String: Any]) {
DispatchQueue.main.async {
let hcConfig = HelpCenterUiConfiguration()
hcConfig.hideContactSupport = (options["hideContactSupport"] as? Bool) ?? false
let helpCenter = HelpCenterUi.buildHelpCenterOverviewUi(withConfigs: [hcConfig])
let requestConfig = RequestUiConfiguration()

if let hideContactSupport = options["hideContactSupport"] as? Bool {
hcConfig.showContactOptions = !hideContactSupport
} else {
hcConfig.showContactOptions = true
}

if let subject = options["subject"] as? String {
requestConfig.subject = subject
}

if let tags = options["tags"] as? [String] {
requestConfig.tags = tags
}
let helpCenter = HelpCenterUi.buildHelpCenterOverviewUi(withConfigs: [hcConfig,requestConfig])

let nvc = UINavigationController(rootViewController: helpCenter)
UIApplication.shared.keyWindow?.rootViewController?.present(nvc, animated: true, completion: nil)
Expand Down
2 changes: 1 addition & 1 deletion react-native-zendesk.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@ Pod::Spec.new do |s|
s.swift_version = '5.0'

s.dependency "React"
s.dependency "ZendeskSDK", "~> 3.0.3"
s.dependency "ZendeskSupportSDK", "~> 5.0.0"
end