@jwplayer/jwplayer-react-native 1.0.1 → 1.0.3
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.
- package/.github/ISSUE_TEMPLATE/bug_report.md +10 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +10 -0
- package/.github/ISSUE_TEMPLATE/implement.md +9 -0
- package/.github/ISSUE_TEMPLATE/question.md +10 -0
- package/README.md +2 -0
- package/RNJWPlayer.podspec +2 -2
- package/android/.gradle/8.9/checksums/checksums.lock +0 -0
- package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
- package/android/build.gradle +1 -1
- package/android/src/main/AndroidManifest.xml +2 -0
- package/android/src/main/java/com/jwplayer/rnjwplayer/RNJWPlayerModule.java +510 -458
- package/android/src/main/java/com/jwplayer/rnjwplayer/RNJWPlayerView.java +384 -32
- package/android/src/main/java/com/jwplayer/rnjwplayer/RNJWPlayerViewManager.java +12 -0
- package/android/src/main/java/com/jwplayer/rnjwplayer/Util.java +26 -7
- package/badges/version.svg +1 -1
- package/index.d.ts +41 -7
- package/index.js +22 -2
- package/ios/RNJWPlayer/RNJWPlayerView.swift +47 -34
- package/ios/RNJWPlayer/RNJWPlayerViewController.swift +15 -9
- package/ios/RNJWPlayer/RNJWPlayerViewManager.m +9 -1
- package/ios/RNJWPlayer/RNJWPlayerViewManager.swift +49 -15
- package/jwplayer-jwplayer-react-native-1.0.3.tgz +0 -0
- package/package.json +3 -3
- package/.idea/modules.xml +0 -8
- package/.idea/vcs.xml +0 -6
- package/android/.gradle/8.1.1/checksums/checksums.lock +0 -0
- package/android/.gradle/8.1.1/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/8.1.1/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/8.1.1/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/8.1.1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/8.4/checksums/checksums.lock +0 -0
- package/android/.gradle/8.4/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/8.4/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/8.4/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/8.4/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/8.4/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/8.4/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/8.4/fileChanges/last-build.bin +0 -0
- package/android/.gradle/8.4/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/8.4/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/8.4/gc.properties +0 -0
- package/android/.gradle/config.properties +0 -2
- package/android/.gradle/file-system.probe +0 -0
- package/android/.idea/compiler.xml +0 -6
- package/android/.idea/gradle.xml +0 -18
- package/android/.idea/migrations.xml +0 -10
- package/android/.idea/misc.xml +0 -10
- package/android/.idea/vcs.xml +0 -6
- package/android/local.properties +0 -8
- package/ios/RNJWPlayer.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
- package/ios/RNJWPlayer.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- package/ios/RNJWPlayer.xcodeproj/project.xcworkspace/xcuserdata/jmilham.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/RNJWPlayer.xcodeproj/xcuserdata/jmilham.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
- /package/android/.gradle/{8.1.1 → 8.9}/dependencies-accessors/gc.properties +0 -0
- /package/android/.gradle/{8.1.1 → 8.9}/fileChanges/last-build.bin +0 -0
- /package/android/.gradle/{8.1.1 → 8.9}/gc.properties +0 -0
|
@@ -172,7 +172,7 @@ class RNJWPlayerViewManager: RCTViewManager {
|
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
174
|
|
|
175
|
-
@objc func setVolume(_ reactTag: NSNumber, _ volume:
|
|
175
|
+
@objc func setVolume(_ reactTag: NSNumber, _ volume: NSNumber) {
|
|
176
176
|
self.bridge.uiManager.addUIBlock { uiManager, viewRegistry in
|
|
177
177
|
guard let view = viewRegistry?[reactTag] as? RNJWPlayerView else {
|
|
178
178
|
print("Invalid view returned from registry, expecting RNJWPlayerView, got: \(String(describing: viewRegistry?[reactTag]))")
|
|
@@ -180,9 +180,9 @@ class RNJWPlayerViewManager: RCTViewManager {
|
|
|
180
180
|
}
|
|
181
181
|
|
|
182
182
|
if let playerView = view.playerView {
|
|
183
|
-
playerView.player.volume = volume
|
|
183
|
+
playerView.player.volume = volume.doubleValue
|
|
184
184
|
} else if let playerViewController = view.playerViewController {
|
|
185
|
-
playerViewController.player.volume = volume
|
|
185
|
+
playerViewController.player.volume = volume.doubleValue
|
|
186
186
|
}
|
|
187
187
|
}
|
|
188
188
|
}
|
|
@@ -412,10 +412,33 @@ class RNJWPlayerViewManager: RCTViewManager {
|
|
|
412
412
|
return
|
|
413
413
|
}
|
|
414
414
|
|
|
415
|
+
do {
|
|
416
|
+
if let playerView = view.playerView {
|
|
417
|
+
try playerView.player.setCaptionTrack(index: index.intValue)
|
|
418
|
+
} else if let playerViewController = view.playerViewController {
|
|
419
|
+
try playerViewController.player.setCaptionTrack(index: index.intValue)
|
|
420
|
+
}
|
|
421
|
+
} catch {
|
|
422
|
+
print("Error setting caption track: \(error)")
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
@objc func getCurrentCaptions(_ reactTag: NSNumber, _ resolve: @escaping RCTPromiseResolveBlock, _ reject: @escaping RCTPromiseRejectBlock) {
|
|
428
|
+
self.bridge.uiManager.addUIBlock { uiManager, viewRegistry in
|
|
429
|
+
guard let view = viewRegistry?[reactTag] as? RNJWPlayerView else {
|
|
430
|
+
let error = NSError(domain: "", code: 0, userInfo: [NSLocalizedDescriptionKey: "There is no player"])
|
|
431
|
+
reject("no_player", "Invalid view returned from registry, expecting RNJWPlayerView", error)
|
|
432
|
+
return
|
|
433
|
+
}
|
|
434
|
+
|
|
415
435
|
if let playerView = view.playerView {
|
|
416
|
-
playerView.player.currentCaptionsTrack
|
|
436
|
+
resolve(NSNumber(value: playerView.player.currentCaptionsTrack))
|
|
417
437
|
} else if let playerViewController = view.playerViewController {
|
|
418
|
-
playerViewController.player.currentCaptionsTrack
|
|
438
|
+
resolve(NSNumber(value: playerViewController.player.currentCaptionsTrack))
|
|
439
|
+
} else {
|
|
440
|
+
let error = NSError(domain: "", code: 0, userInfo: [NSLocalizedDescriptionKey: "There is no player"])
|
|
441
|
+
reject("no_player", "There is no player", error)
|
|
419
442
|
}
|
|
420
443
|
}
|
|
421
444
|
}
|
|
@@ -457,7 +480,7 @@ class RNJWPlayerViewManager: RCTViewManager {
|
|
|
457
480
|
}
|
|
458
481
|
}
|
|
459
482
|
|
|
460
|
-
@objc func loadPlaylist(_ reactTag: NSNumber, _ playlist:
|
|
483
|
+
@objc func loadPlaylist(_ reactTag: NSNumber, _ playlist: Any) {
|
|
461
484
|
self.bridge.uiManager.addUIBlock { uiManager, viewRegistry in
|
|
462
485
|
guard let view = viewRegistry?[reactTag] as? RNJWPlayerView else {
|
|
463
486
|
print("Invalid view returned from registry, expecting RNJWPlayerView, got: \(String(describing: viewRegistry?[reactTag]))")
|
|
@@ -466,17 +489,28 @@ class RNJWPlayerViewManager: RCTViewManager {
|
|
|
466
489
|
|
|
467
490
|
var playlistArray = [JWPlayerItem]()
|
|
468
491
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
492
|
+
if playlist is NSArray {
|
|
493
|
+
for item in playlist as! [Any] {
|
|
494
|
+
// TODO Update this to better parse JWP Playlist Items:
|
|
495
|
+
// awaiting JWP SDK exposure of JWJSONParser.playlist
|
|
496
|
+
if let playerItem = try? view.getPlayerItem(item: item as! [String: Any]) {
|
|
497
|
+
playlistArray.append(playerItem)
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
if let playerView = view.playerView {
|
|
502
|
+
playerView.player.loadPlaylist(items: playlistArray)
|
|
503
|
+
} else if let playerViewController = view.playerViewController {
|
|
504
|
+
playerViewController.player.loadPlaylist(items: playlistArray)
|
|
505
|
+
}
|
|
506
|
+
} else {
|
|
507
|
+
if let playerView = view.playerView {
|
|
508
|
+
playerView.player.loadPlaylist(url: URL(string: playlist as! String)!)
|
|
509
|
+
} else if let playerViewController = view.playerViewController {
|
|
510
|
+
playerViewController.player.loadPlaylist(url: URL(string: playlist as! String)!)
|
|
472
511
|
}
|
|
473
512
|
}
|
|
474
|
-
|
|
475
|
-
if let playerView = view.playerView {
|
|
476
|
-
playerView.player.loadPlaylist(items: playlistArray)
|
|
477
|
-
} else if let playerViewController = view.playerViewController {
|
|
478
|
-
playerViewController.player.loadPlaylist(items: playlistArray)
|
|
479
|
-
}
|
|
513
|
+
|
|
480
514
|
}
|
|
481
515
|
}
|
|
482
516
|
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jwplayer/jwplayer-react-native",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "React-native Android/iOS plugin for JWPlayer SDK (https://www.jwplayer.com/)",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "./index.d.ts",
|
|
@@ -35,11 +35,11 @@
|
|
|
35
35
|
"license": "MIT",
|
|
36
36
|
"homepage": "https://github.com/jwplayer/jwplayer-react-native#readme",
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"
|
|
38
|
+
"badge-maker": "^3.3.1",
|
|
39
39
|
"react": ">= 18.2.0",
|
|
40
40
|
"react-native": ">= 0.72.5"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"
|
|
43
|
+
"lodash.isequalwith": "^4.4.0"
|
|
44
44
|
}
|
|
45
45
|
}
|
package/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/jwplayer-react-native.iml" filepath="$PROJECT_DIR$/.idea/jwplayer-react-native.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
package/.idea/vcs.xml
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
package/android/.idea/gradle.xml
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="GradleMigrationSettings" migrationVersion="1" />
|
|
4
|
-
<component name="GradleSettings">
|
|
5
|
-
<option name="linkedExternalProjectsSettings">
|
|
6
|
-
<GradleProjectSettings>
|
|
7
|
-
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
|
8
|
-
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
|
|
9
|
-
<option name="modules">
|
|
10
|
-
<set>
|
|
11
|
-
<option value="$PROJECT_DIR$" />
|
|
12
|
-
</set>
|
|
13
|
-
</option>
|
|
14
|
-
<option name="resolveExternalAnnotations" value="false" />
|
|
15
|
-
</GradleProjectSettings>
|
|
16
|
-
</option>
|
|
17
|
-
</component>
|
|
18
|
-
</project>
|
package/android/.idea/misc.xml
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
|
4
|
-
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
|
|
5
|
-
<output url="file://$PROJECT_DIR$/build/classes" />
|
|
6
|
-
</component>
|
|
7
|
-
<component name="ProjectType">
|
|
8
|
-
<option name="id" value="Android" />
|
|
9
|
-
</component>
|
|
10
|
-
</project>
|
package/android/.idea/vcs.xml
DELETED
package/android/local.properties
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
## This file must *NOT* be checked into Version Control Systems,
|
|
2
|
-
# as it contains information specific to your local configuration.
|
|
3
|
-
#
|
|
4
|
-
# Location of the SDK. This is only used by Gradle.
|
|
5
|
-
# For customization when using a Version Control System, please read the
|
|
6
|
-
# header note.
|
|
7
|
-
#Fri Apr 19 10:10:39 PDT 2024
|
|
8
|
-
sdk.dir=/Users/jmilham/Library/Android/sdk
|
|
Binary file
|
package/ios/RNJWPlayer.xcodeproj/xcuserdata/jmilham.xcuserdatad/xcschemes/xcschememanagement.plist
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
-
<plist version="1.0">
|
|
4
|
-
<dict>
|
|
5
|
-
<key>SchemeUserState</key>
|
|
6
|
-
<dict>
|
|
7
|
-
<key>RNJWPlayer.xcscheme_^#shared#^_</key>
|
|
8
|
-
<dict>
|
|
9
|
-
<key>orderHint</key>
|
|
10
|
-
<integer>0</integer>
|
|
11
|
-
</dict>
|
|
12
|
-
</dict>
|
|
13
|
-
</dict>
|
|
14
|
-
</plist>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|