Skip to content

Commit 91d9cfb

Browse files
Merge pull request #14 from CleverTap/SDK-1675-Fix-Pod-LintErrors
[SDK-1675] Release iOS Push templates CTNotificationContent v0.2.0
2 parents 462602f + e0768eb commit 91d9cfb

File tree

23 files changed

+601
-84
lines changed

23 files changed

+601
-84
lines changed

CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
Change Log
22
==========
33

4-
Version 0.2.0 *(22 June, 2022)*
4+
Version 0.2.0 *(24 June, 2022)*
55
-----------------------------------------------
66
- Supports new templates - Basic, Auto carousel, Manual carousel and Timer
77
- Backward compatible with Rich Media Push Notifications (Single Image and Content Slider)
8-
- Compatibile with CleverTap iOS SDK v4.1.0
8+
- Compatible with CleverTap iOS SDK v4.1.0
99

1010
Version 0.1.5 *(3 December, 2021)*
1111
-----------------------------------------------

CTNotificationContent.podspec

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,7 @@ Pod::Spec.new do |s|
99
s.requires_arc = true
1010
s.platform = :ios, '10.0'
1111
s.weak_frameworks = 'UserNotifications', 'UIKit'
12-
s.source_files = 'CTNotificationContent/**/*.{h,m,swift,png}'
12+
s.source_files = 'CTNotificationContent/**/*.{h,m,swift}'
13+
s.resources = 'CTNotificationContent/**/*.{png}'
14+
s.swift_version = '5.0'
1315
end

CTNotificationContent/Controllers/CTCarouselController.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,18 @@ struct CarouselProperties: Decodable {
1515
let pt_msg_clr: String?
1616
}
1717

18-
class CTCarouselController: BaseCTNotificationContentViewController {
18+
@objc public class CTCarouselController: BaseCTNotificationContentViewController {
1919
var contentView: UIView = UIView(frame: .zero)
2020
var pageControl: UIPageControl = UIPageControl(frame: .zero)
2121
var currentItemView: CTCaptionedImageView = CTCaptionedImageView(frame: .zero)
2222
var timer: Timer? = nil
2323
var itemViews = [CTCaptionedImageView]()
2424
var currentItemIndex: Int = 0
25-
@objc var data: String = ""
26-
@objc var templateType: String = ""
27-
@objc var templateCaption: String = ""
28-
@objc var templateSubcaption: String = ""
29-
@objc var deeplinkURL: String = ""
25+
@objc public var data: String = ""
26+
@objc public var templateType: String = ""
27+
@objc public var templateCaption: String = ""
28+
@objc public var templateSubcaption: String = ""
29+
@objc public var deeplinkURL: String = ""
3030
var bgColor: String = ConstantKeys.kDefaultColor
3131
var captionColor: String = ConstantKeys.kHexBlackColor
3232
var subcaptionColor: String = ConstantKeys.kHexLightGrayColor
@@ -36,7 +36,7 @@ class CTCarouselController: BaseCTNotificationContentViewController {
3636
var nextButton: UIButton = UIButton(frame: .zero)
3737
var previousButton: UIButton = UIButton(frame: .zero)
3838

39-
override func viewDidLoad() {
39+
@objc public override func viewDidLoad() {
4040
super.viewDidLoad()
4141

4242
contentView = UIView(frame: view.frame)
@@ -240,7 +240,7 @@ class CTCarouselController: BaseCTNotificationContentViewController {
240240
showPrevious()
241241
}
242242

243-
override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
243+
@objc public override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
244244
if action == ConstantKeys.kAction1 {
245245
// Maps to show previous
246246
if templateType == TemplateConstants.kTemplateManualCarousel {

CTNotificationContent/Controllers/CTContentSliderController.swift

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ fileprivate enum Constants {
2424
static let kActionUrl: String = "actionUrl"
2525
}
2626

27-
class CTContentSliderController: BaseCTNotificationContentViewController {
27+
@objc public class CTContentSliderController: BaseCTNotificationContentViewController {
2828
var contentView: UIView = UIView(frame: .zero)
2929
var pageControl: UIPageControl = UIPageControl(frame: .zero)
3030
var currentItemView: CTCaptionedImageView = CTCaptionedImageView(frame: .zero)
@@ -36,13 +36,13 @@ class CTContentSliderController: BaseCTNotificationContentViewController {
3636
var showPaging: Int = 0
3737
var autoPlay: Int = 0
3838
var orientation: String = ConstantKeys.kOrientationLandscape
39-
@objc var data: String = ""
40-
@objc var templateCaption: String = ""
41-
@objc var templateSubcaption: String = ""
42-
@objc var deeplinkURL: String = ""
39+
@objc public var data: String = ""
40+
@objc public var templateCaption: String = ""
41+
@objc public var templateSubcaption: String = ""
42+
@objc public var deeplinkURL: String = ""
4343
var jsonContent: ContentSliderProperties? = nil
4444

45-
override func viewDidLoad() {
45+
@objc public override func viewDidLoad() {
4646
super.viewDidLoad()
4747

4848
contentView = UIView(frame: view.frame)
@@ -181,7 +181,7 @@ class CTContentSliderController: BaseCTNotificationContentViewController {
181181
}
182182

183183

184-
override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
184+
@objc public override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
185185
if action == ConstantKeys.kAction1 {
186186
// Maps to show previous
187187
stopAutoPlay()

CTNotificationContent/Controllers/CTSingleMediaController.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ import UserNotificationsUI
33
import AVKit
44
import AVFoundation
55

6-
class CTSingleMediaController: BaseCTNotificationContentViewController {
6+
@objc public class CTSingleMediaController: BaseCTNotificationContentViewController {
77
var contentView: UIView = UIView(frame: .zero)
88
var currentItemView: CTCaptionedImageView = CTCaptionedImageView(frame: .zero)
9-
@objc var caption: String = ""
10-
@objc var subCaption: String = ""
11-
@objc var mediaType: String = ""
12-
@objc var mediaURL: String = ""
13-
@objc var deeplinkURL: String = ""
9+
@objc public var caption: String = ""
10+
@objc public var subCaption: String = ""
11+
@objc public var mediaType: String = ""
12+
@objc public var mediaURL: String = ""
13+
@objc public var deeplinkURL: String = ""
1414
var player:AVPlayer?
1515
var videoPlayerView: CTVideoPlayerView = CTVideoPlayerView(frame: .zero)
1616
private var captionLabel: UILabel = {
@@ -36,7 +36,7 @@ class CTSingleMediaController: BaseCTNotificationContentViewController {
3636
var playPauseButton: UIButton = UIButton(frame: .zero)
3737
var isPlaying: Bool = false
3838

39-
override func viewDidLoad() {
39+
@objc public override func viewDidLoad() {
4040
super.viewDidLoad()
4141

4242
contentView = UIView(frame: view.frame)
@@ -170,7 +170,7 @@ class CTSingleMediaController: BaseCTNotificationContentViewController {
170170
])
171171
}
172172

173-
override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
173+
@objc public override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
174174
if action == ConstantKeys.kAction3 {
175175
// Maps to run the relevant deeplink
176176
if !deeplinkURL.isEmpty {

CTNotificationContent/Controllers/CTTimerTemplateController.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,12 @@ struct TimerTemplateProperties: Decodable {
6464
}
6565
}
6666

67-
class CTTimerTemplateController: BaseCTNotificationContentViewController {
67+
@objc public class CTTimerTemplateController: BaseCTNotificationContentViewController {
6868
var contentView: UIView = UIView(frame: .zero)
69-
@objc var data: String = ""
70-
@objc var templateCaption: String = ""
71-
@objc var templateSubcaption: String = ""
72-
@objc var deeplinkURL: String = ""
69+
@objc public var data: String = ""
70+
@objc public var templateCaption: String = ""
71+
@objc public var templateSubcaption: String = ""
72+
@objc public var deeplinkURL: String = ""
7373
var bgColor: String = ConstantKeys.kDefaultColor
7474
var captionColor: String = ConstantKeys.kHexBlackColor
7575
var subcaptionColor: String = ConstantKeys.kHexLightGrayColor
@@ -113,7 +113,7 @@ class CTTimerTemplateController: BaseCTNotificationContentViewController {
113113
return timerLabel
114114
}()
115115

116-
override func viewDidLoad() {
116+
@objc public override func viewDidLoad() {
117117
super.viewDidLoad()
118118

119119
contentView = UIView(frame: view.frame)
@@ -124,7 +124,7 @@ class CTTimerTemplateController: BaseCTNotificationContentViewController {
124124
setupConstraints()
125125
}
126126

127-
override func viewWillAppear(_ animated: Bool) {
127+
@objc public override func viewWillAppear(_ animated: Bool) {
128128
super.viewWillAppear(animated)
129129

130130
timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(updateTimer), userInfo: nil, repeats: true)
@@ -303,7 +303,7 @@ class CTTimerTemplateController: BaseCTNotificationContentViewController {
303303
])
304304
}
305305

306-
override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
306+
@objc public override func handleAction(_ action: String) -> UNNotificationContentExtensionResponseOption {
307307
if action == ConstantKeys.kAction3 {
308308
// Maps to run the relevant deeplink
309309
if !deeplinkURL.isEmpty {

Example/Podfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11

2-
ENV['SWIFT_VERSION'] = '5'
32
platform :ios, '10.0'
43

54
use_frameworks!

Framework/CTNotificationContent.xcframework/Info.plist

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,32 +6,32 @@
66
<array>
77
<dict>
88
<key>LibraryIdentifier</key>
9-
<string>ios-arm64_i386_x86_64-simulator</string>
9+
<string>ios-arm64_armv7</string>
1010
<key>LibraryPath</key>
1111
<string>CTNotificationContent.framework</string>
1212
<key>SupportedArchitectures</key>
1313
<array>
1414
<string>arm64</string>
15-
<string>i386</string>
16-
<string>x86_64</string>
15+
<string>armv7</string>
1716
</array>
1817
<key>SupportedPlatform</key>
1918
<string>ios</string>
20-
<key>SupportedPlatformVariant</key>
21-
<string>simulator</string>
2219
</dict>
2320
<dict>
2421
<key>LibraryIdentifier</key>
25-
<string>ios-arm64_armv7</string>
22+
<string>ios-arm64_i386_x86_64-simulator</string>
2623
<key>LibraryPath</key>
2724
<string>CTNotificationContent.framework</string>
2825
<key>SupportedArchitectures</key>
2926
<array>
3027
<string>arm64</string>
31-
<string>armv7</string>
28+
<string>i386</string>
29+
<string>x86_64</string>
3230
</array>
3331
<key>SupportedPlatform</key>
3432
<string>ios</string>
33+
<key>SupportedPlatformVariant</key>
34+
<string>simulator</string>
3535
</dict>
3636
</array>
3737
<key>CFBundlePackageType</key>

Framework/CTNotificationContent.xcframework/ios-arm64_armv7/CTNotificationContent.framework/Modules/CTNotificationContent.swiftmodule/arm.swiftinterface

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,50 @@ import _Concurrency
1212
extension UIKit.UIColor {
1313
public convenience init?(hex: Swift.String)
1414
}
15+
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class CTCarouselController : CTNotificationContent.BaseCTNotificationContentViewController {
16+
@objc @_Concurrency.MainActor(unsafe) public var data: Swift.String
17+
@objc @_Concurrency.MainActor(unsafe) public var templateType: Swift.String
18+
@objc @_Concurrency.MainActor(unsafe) public var templateCaption: Swift.String
19+
@objc @_Concurrency.MainActor(unsafe) public var templateSubcaption: Swift.String
20+
@objc @_Concurrency.MainActor(unsafe) public var deeplinkURL: Swift.String
21+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func viewDidLoad()
22+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func handleAction(_ action: Swift.String) -> UserNotificationsUI.UNNotificationContentExtensionResponseOption
23+
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(nibName nibNameOrNil: Swift.String?, bundle nibBundleOrNil: Foundation.Bundle?)
24+
@_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder)
25+
@objc deinit
26+
}
27+
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class CTTimerTemplateController : CTNotificationContent.BaseCTNotificationContentViewController {
28+
@objc @_Concurrency.MainActor(unsafe) public var data: Swift.String
29+
@objc @_Concurrency.MainActor(unsafe) public var templateCaption: Swift.String
30+
@objc @_Concurrency.MainActor(unsafe) public var templateSubcaption: Swift.String
31+
@objc @_Concurrency.MainActor(unsafe) public var deeplinkURL: Swift.String
32+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func viewDidLoad()
33+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func viewWillAppear(_ animated: Swift.Bool)
34+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func handleAction(_ action: Swift.String) -> UserNotificationsUI.UNNotificationContentExtensionResponseOption
35+
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(nibName nibNameOrNil: Swift.String?, bundle nibBundleOrNil: Foundation.Bundle?)
36+
@_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder)
37+
@objc deinit
38+
}
39+
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class CTContentSliderController : CTNotificationContent.BaseCTNotificationContentViewController {
40+
@objc @_Concurrency.MainActor(unsafe) public var data: Swift.String
41+
@objc @_Concurrency.MainActor(unsafe) public var templateCaption: Swift.String
42+
@objc @_Concurrency.MainActor(unsafe) public var templateSubcaption: Swift.String
43+
@objc @_Concurrency.MainActor(unsafe) public var deeplinkURL: Swift.String
44+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func viewDidLoad()
45+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func handleAction(_ action: Swift.String) -> UserNotificationsUI.UNNotificationContentExtensionResponseOption
46+
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(nibName nibNameOrNil: Swift.String?, bundle nibBundleOrNil: Foundation.Bundle?)
47+
@_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder)
48+
@objc deinit
49+
}
50+
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class CTSingleMediaController : CTNotificationContent.BaseCTNotificationContentViewController {
51+
@objc @_Concurrency.MainActor(unsafe) public var caption: Swift.String
52+
@objc @_Concurrency.MainActor(unsafe) public var subCaption: Swift.String
53+
@objc @_Concurrency.MainActor(unsafe) public var mediaType: Swift.String
54+
@objc @_Concurrency.MainActor(unsafe) public var mediaURL: Swift.String
55+
@objc @_Concurrency.MainActor(unsafe) public var deeplinkURL: Swift.String
56+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func viewDidLoad()
57+
@objc @_Concurrency.MainActor(unsafe) override dynamic public func handleAction(_ action: Swift.String) -> UserNotificationsUI.UNNotificationContentExtensionResponseOption
58+
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(nibName nibNameOrNil: Swift.String?, bundle nibBundleOrNil: Foundation.Bundle?)
59+
@_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder)
60+
@objc deinit
61+
}

0 commit comments

Comments
 (0)