@tyrads.com/tyrads-sdk 4.0.0 → 4.0.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -112,6 +112,6 @@ dependencies {
112
112
  implementation "com.facebook.react:react-native:+"
113
113
  implementation 'com.google.code.gson:gson:+'
114
114
 
115
- implementation 'com.github.tyrads-com:tyrads-sdk-android:22b7882c30'
115
+ implementation 'com.github.tyrads-com:tyrads-sdk-android:04257cd7a0'
116
116
  }
117
117
 
@@ -41,8 +41,6 @@ public class Tyrads : NSObject {
41
41
  }
42
42
  }
43
43
 
44
- private var preloadedWebVC: AcmoWebViewController?
45
-
46
44
  internal func log(_ message: String) {
47
45
  if debugMode {
48
46
  NSLog(message)
@@ -214,10 +212,6 @@ public class Tyrads : NSObject {
214
212
  privacyAccepted: hasAccepted
215
213
  )
216
214
 
217
- Task { @MainActor in
218
- self.preloadOffers()
219
- }
220
-
221
215
  return headers
222
216
  }
223
217
 
@@ -242,36 +236,7 @@ public class Tyrads : NSObject {
242
236
  return components.url
243
237
  }
244
238
 
245
- @MainActor
246
- public func preloadOffers(route: String? = nil) {
247
- let normalizedRoute = (route?.isEmpty ?? true) ? nil : route
248
-
249
- // only preload the default offerwall (no specific route)
250
- if normalizedRoute != nil {
251
- self.log("Preload: Skipping specific route \(normalizedRoute!)")
252
- return
253
- }
254
-
255
- guard !self.token.isEmpty else {
256
- self.log("Preload failed: token is empty")
257
- return
258
- }
259
- guard let url = getOffersURL(route: nil) else {
260
- self.log("Preload failed: failed to generate URL")
261
- return
262
- }
263
-
264
- self.log("Preloading default webview for URL: \(url.absoluteString)")
265
-
266
- if let existing = self.preloadedWebVC, existing.initialURL.absoluteString == url.absoluteString {
267
- self.log("Preload: Already have a matching preloaded VC, skipping recreation.")
268
- return
269
- }
270
-
271
- let webVC = AcmoWebViewController(url: url)
272
- _ = webVC.view
273
- self.preloadedWebVC = webVC
274
- }
239
+
275
240
 
276
241
  public func showOffers(_ launchMode: Int = 2, route: String? = nil, campaignID: Int? = nil) async {
277
242
  await ensureInitialized()
@@ -289,43 +254,7 @@ public class Tyrads : NSObject {
289
254
  let showWebView: () -> Void = {
290
255
  let webVC: AcmoWebViewController
291
256
 
292
- let isDefault = (route?.isEmpty ?? true) && campaignID == nil
293
-
294
- let isMatch: Bool = {
295
- guard isDefault else { return false }
296
-
297
- guard let preloaded = self.preloadedWebVC else {
298
- self.log("Preload Check: No preloaded webview found.")
299
- return false
300
- }
301
- let preloadedURL = preloaded.initialURL
302
-
303
- if preloadedURL.absoluteString == url.absoluteString { return true }
304
-
305
- guard let comp1 = URLComponents(url: preloadedURL, resolvingAgainstBaseURL: false),
306
- let comp2 = URLComponents(url: url, resolvingAgainstBaseURL: false) else { return false }
307
-
308
- let q1 = comp1.queryItems ?? []
309
- let q2 = comp2.queryItems ?? []
310
-
311
- if q1.count != q2.count {
312
- return false
313
- }
314
-
315
- let matchesAll = q1.allSatisfy { item1 in
316
- q2.contains { item2 in item1.name == item2.name && item1.value == item2.value }
317
- }
318
-
319
- return matchesAll && comp1.host == comp2.host && comp1.path == comp2.path
320
- }()
321
-
322
- if isMatch, let preloaded = self.preloadedWebVC {
323
- self.log("Preload Check: MATCH FOUND. Using shared default webview.")
324
- webVC = preloaded
325
- } else {
326
- self.log("Preload Check: Loading normally. (Req: \(isDefault ? "default" : "specific route"), Preload Available: \(self.preloadedWebVC != nil))")
327
- webVC = AcmoWebViewController(url: url)
328
- }
257
+ webVC = AcmoWebViewController(url: url)
329
258
 
330
259
  webVC.onDismiss = {
331
260
  webVC.onDismiss = nil
@@ -387,8 +316,6 @@ public class Tyrads : NSObject {
387
316
  self.currentLanguage = lang
388
317
  UserDefaults.standard.set(lang, forKey: "locale")
389
318
  await LocalizationService.shared.changeLanguage(locale: lang)
390
-
391
- self.preloadedWebVC = nil
392
319
  }
393
320
 
394
321
  public func isPrivacyAccepted() -> Bool {
package/ios/TyradsSdk.mm CHANGED
@@ -34,9 +34,6 @@ RCT_EXTERN_METHOD(isPrivacyAccepted:(RCTPromiseResolveBlock)resolve
34
34
  rejecter:(RCTPromiseRejectBlock)reject)
35
35
  RCT_EXTERN_METHOD(checkOnboardingProcess:(RCTPromiseResolveBlock)resolve
36
36
  rejecter:(RCTPromiseRejectBlock)reject)
37
- RCT_EXTERN_METHOD(preloadOffers : (NSString *_Nullable)route
38
- resolver : (RCTPromiseResolveBlock)resolve
39
- rejecter : (RCTPromiseRejectBlock)reject)
40
37
 
41
38
  RCT_EXTERN_METHOD(pushRequestPermission:(RCTPromiseResolveBlock)resolve
42
39
  rejecter:(RCTPromiseRejectBlock)reject)
@@ -131,14 +131,6 @@ class TyradsSdk: RCTEventEmitter , APNsNotificationListener{
131
131
  }
132
132
  }
133
133
 
134
- @objc(preloadOffers:resolver:rejecter:)
135
- func preloadOffers(_ route: String?, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
136
- Task { @MainActor in
137
- Tyrads.instance.preloadOffers(route: route)
138
- resolve(nil)
139
- }
140
- }
141
-
142
134
  @objc(changeLanguage:resolver:rejecter:)
143
135
  func changeLanguage(_ lang: String, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
144
136
  Task {
@@ -9,8 +9,8 @@ class AcmoConfig {
9
9
  static BASE_URL = `https://api.tyrads.com/v${this.API_VERSION}/`;
10
10
  static MAJOR_VERSION = "4";
11
11
  static MINOR_VERSION = "0";
12
- static PATCH_VERSION = "0";
13
- static BUILD_VERSION = "1";
12
+ static PATCH_VERSION = "1";
13
+ static BUILD_VERSION = "2";
14
14
  static SDK_PLATFORM = "React Native";
15
15
  static SDK_VERSION = `${this.MAJOR_VERSION}.${this.MINOR_VERSION}.${this.PATCH_VERSION}-${this.BUILD_VERSION}`;
16
16
  }
@@ -5,8 +5,8 @@ export class AcmoConfig {
5
5
  static BASE_URL = `https://api.tyrads.com/v${this.API_VERSION}/`;
6
6
  static MAJOR_VERSION = "4";
7
7
  static MINOR_VERSION = "0";
8
- static PATCH_VERSION = "0";
9
- static BUILD_VERSION = "1";
8
+ static PATCH_VERSION = "1";
9
+ static BUILD_VERSION = "2";
10
10
  static SDK_PLATFORM = "React Native";
11
11
  static SDK_VERSION = `${this.MAJOR_VERSION}.${this.MINOR_VERSION}.${this.PATCH_VERSION}-${this.BUILD_VERSION}`;
12
12
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyrads.com/tyrads-sdk",
3
- "version": "4.0.0",
3
+ "version": "4.0.1-beta.0",
4
4
  "description": "Tyrads SDK for React Native ",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",
@@ -194,4 +194,4 @@
194
194
  "react-native-linear-gradient": "^2.8.3",
195
195
  "react-native-snap-carousel": "^3.9.1"
196
196
  }
197
- }
197
+ }
@@ -3,8 +3,8 @@ export class AcmoConfig {
3
3
  public static BASE_URL = `https://api.tyrads.com/v${this.API_VERSION}/`;
4
4
  public static MAJOR_VERSION = "4";
5
5
  public static MINOR_VERSION = "0";
6
- public static PATCH_VERSION = "0";
7
- public static BUILD_VERSION = "1";
6
+ public static PATCH_VERSION = "1";
7
+ public static BUILD_VERSION = "2";
8
8
  public static SDK_PLATFORM = "React Native";
9
9
  public static SDK_VERSION = `${this.MAJOR_VERSION}.${this.MINOR_VERSION}.${this.PATCH_VERSION}-${this.BUILD_VERSION}`;
10
10
  }