react-native-tpstreams 0.2.19 → 0.2.21
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/TPStreamsRNPlayerView.podspec +8 -2
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/tpstreams/TPStreamsDownloadsModule.kt +143 -0
- package/android/src/main/java/com/tpstreams/TPStreamsRNPackage.kt +1 -0
- package/ios/TPStreamsDownloadsModule.mm +32 -0
- package/ios/TPStreamsDownloadsModule.swift +92 -0
- package/ios/TPStreamsModule.swift +17 -12
- package/ios/TPStreamsRNPlayerView.swift +242 -0
- package/ios/TPStreamsRNPlayerViewManager.m +38 -0
- package/ios/TPStreamsRNPlayerViewManager.swift +109 -0
- package/lib/module/TPStreamsPlayer.js +2 -2
- package/lib/module/TPStreamsPlayer.js.map +1 -1
- package/lib/module/index.js +6 -2
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/spec/NativeTPStreams.d.ts +7 -0
- package/lib/typescript/spec/NativeTPStreams.d.ts.map +1 -0
- package/lib/typescript/spec/NativeTPStreamsDownloads.d.ts +24 -0
- package/lib/typescript/spec/NativeTPStreamsDownloads.d.ts.map +1 -0
- package/lib/typescript/spec/TPStreamsPlayerViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/TPStreamsPlayer.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +4 -3
- package/spec/NativeTPStreams.ts +8 -0
- package/spec/NativeTPStreamsDownloads.ts +32 -0
- package/src/TPStreamsPlayer.tsx +6 -3
- package/src/index.tsx +7 -2
- package/android/app/build/generated/source/codegen/java/com/facebook/react/viewmanagers/TPStreamsRNPlayerViewManagerDelegate.java +0 -78
- package/android/app/build/generated/source/codegen/java/com/facebook/react/viewmanagers/TPStreamsRNPlayerViewManagerInterface.java +0 -31
- package/android/app/build/generated/source/codegen/jni/CMakeLists.txt +0 -36
- package/android/app/build/generated/source/codegen/jni/TPStreamsPlayerViewSpec-generated.cpp +0 -22
- package/android/app/build/generated/source/codegen/jni/TPStreamsPlayerViewSpec.h +0 -24
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/ComponentDescriptors.cpp +0 -22
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/ComponentDescriptors.h +0 -24
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/EventEmitters.cpp +0 -98
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/EventEmitters.h +0 -75
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/Props.cpp +0 -30
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/Props.h +0 -32
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/ShadowNodes.cpp +0 -17
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/ShadowNodes.h +0 -32
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/States.cpp +0 -16
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/States.h +0 -29
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/TPStreamsPlayerViewSpecJSI-generated.cpp +0 -17
- package/android/app/build/generated/source/codegen/jni/react/renderer/components/TPStreamsPlayerViewSpec/TPStreamsPlayerViewSpecJSI.h +0 -19
- package/ios/TPStreamsRNPlayerView.h +0 -14
- package/ios/TPStreamsRNPlayerView.mm +0 -52
- package/ios/TPStreamsRNPlayerViewManager.mm +0 -18
- package/lib/typescript/src/TPStreamsPlayerViewNativeComponent.d.ts.map +0 -1
- package/src/TPStreamsPlayerViewNativeComponent.ts +0 -82
- /package/ios/{TPStreamsModule.mm → TPStreamsModule.m} +0 -0
- /package/lib/typescript/{src → spec}/TPStreamsPlayerViewNativeComponent.d.ts +0 -0
- /package/{lib/module → spec}/TPStreamsPlayerViewNativeComponent.ts +0 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import Foundation
|
|
2
|
+
import React
|
|
3
|
+
import CoreMedia
|
|
4
|
+
import AVFoundation
|
|
5
|
+
|
|
6
|
+
@objc(TPStreamsRNPlayerViewManager)
|
|
7
|
+
class TPStreamsRNPlayerViewManager: RCTViewManager {
|
|
8
|
+
override func view() -> UIView! {
|
|
9
|
+
return TPStreamsRNPlayerView()
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
override static func requiresMainQueueSetup() -> Bool {
|
|
13
|
+
return true
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// MARK: - Player Commands - Simply delegate to the view
|
|
17
|
+
|
|
18
|
+
@objc func seekTo(_ node: NSNumber, position: NSNumber) {
|
|
19
|
+
DispatchQueue.main.async {
|
|
20
|
+
let component = self.bridge.uiManager.view(
|
|
21
|
+
forReactTag: node
|
|
22
|
+
) as? TPStreamsRNPlayerView
|
|
23
|
+
|
|
24
|
+
component?.seekTo(position: position.doubleValue)
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@objc func play(_ node: NSNumber) {
|
|
29
|
+
DispatchQueue.main.async {
|
|
30
|
+
let component = self.bridge.uiManager.view(
|
|
31
|
+
forReactTag: node
|
|
32
|
+
) as? TPStreamsRNPlayerView
|
|
33
|
+
|
|
34
|
+
component?.play()
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
@objc func pause(_ node: NSNumber) {
|
|
39
|
+
DispatchQueue.main.async {
|
|
40
|
+
let component = self.bridge.uiManager.view(
|
|
41
|
+
forReactTag: node
|
|
42
|
+
) as? TPStreamsRNPlayerView
|
|
43
|
+
|
|
44
|
+
component?.pause()
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@objc func setPlaybackSpeed(_ node: NSNumber, speed: NSNumber) {
|
|
49
|
+
DispatchQueue.main.async {
|
|
50
|
+
let component = self.bridge.uiManager.view(
|
|
51
|
+
forReactTag: node
|
|
52
|
+
) as? TPStreamsRNPlayerView
|
|
53
|
+
|
|
54
|
+
component?.setPlaybackSpeed(speed.floatValue)
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// MARK: - Methods that trigger events - Simply delegate to the view
|
|
59
|
+
|
|
60
|
+
@objc func getCurrentPosition(_ node: NSNumber) {
|
|
61
|
+
DispatchQueue.main.async {
|
|
62
|
+
let component = self.bridge.uiManager.view(
|
|
63
|
+
forReactTag: node
|
|
64
|
+
) as? TPStreamsRNPlayerView
|
|
65
|
+
|
|
66
|
+
component?.getCurrentPosition()
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@objc func getDuration(_ node: NSNumber) {
|
|
71
|
+
DispatchQueue.main.async {
|
|
72
|
+
let component = self.bridge.uiManager.view(
|
|
73
|
+
forReactTag: node
|
|
74
|
+
) as? TPStreamsRNPlayerView
|
|
75
|
+
|
|
76
|
+
component?.getDuration()
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@objc func isPlaying(_ node: NSNumber) {
|
|
81
|
+
DispatchQueue.main.async {
|
|
82
|
+
let component = self.bridge.uiManager.view(
|
|
83
|
+
forReactTag: node
|
|
84
|
+
) as? TPStreamsRNPlayerView
|
|
85
|
+
|
|
86
|
+
component?.isPlaying()
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
@objc func getPlaybackSpeed(_ node: NSNumber) {
|
|
91
|
+
DispatchQueue.main.async {
|
|
92
|
+
let component = self.bridge.uiManager.view(
|
|
93
|
+
forReactTag: node
|
|
94
|
+
) as? TPStreamsRNPlayerView
|
|
95
|
+
|
|
96
|
+
component?.getPlaybackSpeed()
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
@objc func setNewAccessToken(_ node: NSNumber, newToken: NSString) {
|
|
101
|
+
DispatchQueue.main.async {
|
|
102
|
+
let component = self.bridge.uiManager.view(
|
|
103
|
+
forReactTag: node
|
|
104
|
+
) as? TPStreamsRNPlayerView
|
|
105
|
+
|
|
106
|
+
component?.setNewAccessToken(newToken as String)
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { forwardRef, useImperativeHandle, useRef, useCallback } from 'react';
|
|
4
|
-
import TPStreamsPlayerNative, { Commands } from '
|
|
4
|
+
import TPStreamsPlayerNative, { Commands } from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
// Create a unique ID for each instance to track promises
|
|
7
7
|
let nextInstanceId = 0;
|
|
@@ -152,7 +152,7 @@ const TPStreamsPlayerView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
152
152
|
getCurrentPosition: createPromiseMethod(Commands.getCurrentPosition, 'position'),
|
|
153
153
|
getDuration: createPromiseMethod(Commands.getDuration, 'duration'),
|
|
154
154
|
isPlaying: createPromiseMethod(Commands.isPlaying, 'isPlaying'),
|
|
155
|
-
getPlaybackSpeed: createPromiseMethod(Commands.getPlaybackSpeed, '
|
|
155
|
+
getPlaybackSpeed: createPromiseMethod(Commands.getPlaybackSpeed, 'playbackSpeed')
|
|
156
156
|
}), [createPromiseMethod]);
|
|
157
157
|
|
|
158
158
|
// Create native props object with the correct types
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","useCallback","TPStreamsPlayerNative","Commands","jsx","_jsx","nextInstanceId","TPStreamsPlayerView","props","ref","videoId","accessToken","shouldAutoPlay","startAt","enableDownload","offlineLicenseExpireTime","showDefaultCaptions","downloadMetadata","style","onPlayerStateChanged","onIsPlayingChanged","onPlaybackSpeedChanged","onIsLoadingChanged","onError","onAccessTokenExpired","restProps","nativeRef","instanceId","promiseMap","onCurrentPosition","event","key","current","handler","resolve","nativeEvent","position","onDuration","duration","onIsPlaying","isPlaying","onPlaybackSpeed","speed","handlePlayerStateChanged","playbackState","handleIsPlayingChanged","handlePlaybackSpeedChanged","handleIsLoadingChanged","isLoading","handleError","message","code","details","Object","entries","forEach","reject","Error","handleAccessTokenExpired","expiredVideoId","newToken","setNewAccessToken","console","error","createPromiseMethod","command","eventKey","Promise","setTimeout","play","pause","seekTo","positionMs","setPlaybackSpeed","getCurrentPosition","getDuration","getPlaybackSpeed","nativeProps","JSON","stringify","undefined"],"sourceRoot":"../../src","sources":["TPStreamsPlayer.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,mBAAmB,EAAEC,MAAM,EAAEC,WAAW,QAAQ,OAAO;AAC5E,OAAOC,qBAAqB,IAC1BC,QAAQ,QACH,
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","useCallback","TPStreamsPlayerNative","Commands","jsx","_jsx","nextInstanceId","TPStreamsPlayerView","props","ref","videoId","accessToken","shouldAutoPlay","startAt","enableDownload","offlineLicenseExpireTime","showDefaultCaptions","downloadMetadata","style","onPlayerStateChanged","onIsPlayingChanged","onPlaybackSpeedChanged","onIsLoadingChanged","onError","onAccessTokenExpired","restProps","nativeRef","instanceId","promiseMap","onCurrentPosition","event","key","current","handler","resolve","nativeEvent","position","onDuration","duration","onIsPlaying","isPlaying","onPlaybackSpeed","speed","handlePlayerStateChanged","playbackState","handleIsPlayingChanged","handlePlaybackSpeedChanged","handleIsLoadingChanged","isLoading","handleError","message","code","details","Object","entries","forEach","reject","Error","handleAccessTokenExpired","expiredVideoId","newToken","setNewAccessToken","console","error","createPromiseMethod","command","eventKey","Promise","setTimeout","play","pause","seekTo","positionMs","setPlaybackSpeed","getCurrentPosition","getDuration","getPlaybackSpeed","nativeProps","JSON","stringify","undefined"],"sourceRoot":"../../src","sources":["TPStreamsPlayer.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
import { NativeModules } from 'react-native';
|
|
4
4
|
// Export the native component with a different name to avoid conflicts
|
|
5
|
-
export { default as TPStreamsPlayerNative } from '
|
|
6
|
-
export * from '
|
|
5
|
+
export { default as TPStreamsPlayerNative } from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
6
|
+
export * from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
7
7
|
|
|
8
8
|
// Export the wrapper component as TPStreamsPlayerView
|
|
9
9
|
export { default as TPStreamsPlayerView } from "./TPStreamsPlayer.js";
|
|
10
|
+
// Export the original download module
|
|
10
11
|
export { pauseDownload, resumeDownload, removeDownload, isDownloaded, isDownloading, isPaused, getDownloadStatus, getAllDownloads, addDownloadProgressListener, removeDownloadProgressListener, onDownloadProgressChanged } from "./TPStreamsDownload.js";
|
|
12
|
+
|
|
13
|
+
// Export the TPStreamsDownloads TurboModule directly
|
|
14
|
+
export { default as TPStreamsDownloads } from "../spec/NativeTPStreamsDownloads.js";
|
|
11
15
|
const TPStreamsModule = NativeModules.TPStreams;
|
|
12
16
|
export const TPStreams = {
|
|
13
17
|
initialize: organizationId => {
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","default","TPStreamsPlayerNative","TPStreamsPlayerView","pauseDownload","resumeDownload","removeDownload","isDownloaded","isDownloading","isPaused","getDownloadStatus","getAllDownloads","addDownloadProgressListener","removeDownloadProgressListener","onDownloadProgressChanged","TPStreamsModule","TPStreams","initialize","organizationId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,cAAc;AAC5C;AACA,SAASC,OAAO,IAAIC,qBAAqB,QAAQ,
|
|
1
|
+
{"version":3,"names":["NativeModules","default","TPStreamsPlayerNative","TPStreamsPlayerView","pauseDownload","resumeDownload","removeDownload","isDownloaded","isDownloading","isPaused","getDownloadStatus","getAllDownloads","addDownloadProgressListener","removeDownloadProgressListener","onDownloadProgressChanged","TPStreamsDownloads","TPStreamsModule","TPStreams","initialize","organizationId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,cAAc;AAC5C;AACA,SAASC,OAAO,IAAIC,qBAAqB,QAAQ,4CAA4C;AAC7F,cAAc,4CAA4C;;AAE1D;AACA,SAASD,OAAO,IAAIE,mBAAmB,QAAQ,sBAAmB;AAGlE;AACA,SACEC,aAAa,EACbC,cAAc,EACdC,cAAc,EACdC,YAAY,EACZC,aAAa,EACbC,QAAQ,EACRC,iBAAiB,EACjBC,eAAe,EACfC,2BAA2B,EAC3BC,8BAA8B,EAC9BC,yBAAyB,QAIpB,wBAAqB;;AAE5B;AACA,SAASb,OAAO,IAAIc,kBAAkB,QAAQ,qCAAkC;AAGhF,MAAMC,eAAe,GAAGhB,aAAa,CAACiB,SAAS;AAE/C,OAAO,MAAMA,SAAS,GAAG;EACvBC,UAAU,EAAGC,cAAsB,IAAW;IAC5CH,eAAe,CAACE,UAAU,CAACC,cAAc,CAAC;EAC5C;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeTPStreams.d.ts","sourceRoot":"","sources":["../../../spec/NativeTPStreams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;;AAED,wBAAmE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { TurboModule } from 'react-native';
|
|
2
|
+
export type DownloadItem = {
|
|
3
|
+
videoId: string;
|
|
4
|
+
title: string;
|
|
5
|
+
thumbnailUrl?: string;
|
|
6
|
+
totalBytes: number;
|
|
7
|
+
downloadedBytes: number;
|
|
8
|
+
progressPercentage: number;
|
|
9
|
+
state: string;
|
|
10
|
+
};
|
|
11
|
+
export interface Spec extends TurboModule {
|
|
12
|
+
getAll(): Promise<DownloadItem[]>;
|
|
13
|
+
get(videoId: string): Promise<DownloadItem | null>;
|
|
14
|
+
pause(videoId: string): Promise<void>;
|
|
15
|
+
resume(videoId: string): Promise<void>;
|
|
16
|
+
remove(videoId: string): Promise<void>;
|
|
17
|
+
startProgressUpdates(): void;
|
|
18
|
+
stopProgressUpdates(): void;
|
|
19
|
+
addListener(eventName: string): void;
|
|
20
|
+
removeListeners(count: number): void;
|
|
21
|
+
}
|
|
22
|
+
declare const _default: Spec;
|
|
23
|
+
export default _default;
|
|
24
|
+
//# sourceMappingURL=NativeTPStreamsDownloads.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeTPStreamsDownloads.d.ts","sourceRoot":"","sources":["../../../spec/NativeTPStreamsDownloads.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,WAAW;IAEvC,MAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAClC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACnD,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvC,oBAAoB,IAAI,IAAI,CAAC;IAC7B,mBAAmB,IAAI,IAAI,CAAC;IAI5B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;;AAED,wBAA4E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TPStreamsPlayerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../spec/TPStreamsPlayerViewNativeComponent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TPStreamsPlayer.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsPlayer.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAc9C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACzC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,oBAAoB,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KACjC,IAAI,CAAC;CACX;AAED;;;GAGG;AACH,QAAA,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"TPStreamsPlayer.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsPlayer.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAc9C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACzC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,oBAAoB,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KACjC,IAAI,CAAC;CACX;AAED;;;GAGG;AACH,QAAA,MAAM,mBAAmB,qHAyMvB,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
export { default as TPStreamsPlayerNative } from '
|
|
2
|
-
export * from '
|
|
1
|
+
export { default as TPStreamsPlayerNative } from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
2
|
+
export * from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
3
3
|
export { default as TPStreamsPlayerView } from './TPStreamsPlayer';
|
|
4
4
|
export type { TPStreamsPlayerRef } from './TPStreamsPlayer';
|
|
5
5
|
export { pauseDownload, resumeDownload, removeDownload, isDownloaded, isDownloading, isPaused, getDownloadStatus, getAllDownloads, addDownloadProgressListener, removeDownloadProgressListener, onDownloadProgressChanged, type DownloadItem, type DownloadProgressChange, type DownloadProgressListener, } from './TPStreamsDownload';
|
|
6
|
+
export { default as TPStreamsDownloads } from '../spec/NativeTPStreamsDownloads';
|
|
7
|
+
export type { DownloadItem as TPStreamsDownloadsItem } from '../spec/NativeTPStreamsDownloads';
|
|
6
8
|
export declare const TPStreams: {
|
|
7
9
|
initialize: (organizationId: string) => void;
|
|
8
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAC9F,cAAc,4CAA4C,CAAC;AAG3D,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,2BAA2B,EAC3B,8BAA8B,EAC9B,yBAAyB,EACzB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,GAC9B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACjF,YAAY,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAI/F,eAAO,MAAM,SAAS;iCACS,MAAM,KAAG,IAAI;CAG3C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-tpstreams",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.21",
|
|
4
4
|
"description": "Video component for TPStreams",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
"android",
|
|
19
19
|
"ios",
|
|
20
20
|
"cpp",
|
|
21
|
+
"spec",
|
|
21
22
|
"*.podspec",
|
|
22
23
|
"react-native.config.js",
|
|
23
24
|
"!ios/build",
|
|
@@ -149,9 +150,9 @@
|
|
|
149
150
|
]
|
|
150
151
|
},
|
|
151
152
|
"codegenConfig": {
|
|
152
|
-
"name": "
|
|
153
|
+
"name": "TPStreamsSpec",
|
|
153
154
|
"type": "all",
|
|
154
|
-
"jsSrcsDir": "
|
|
155
|
+
"jsSrcsDir": "spec",
|
|
155
156
|
"android": {
|
|
156
157
|
"javaPackageName": "com.tpstreams"
|
|
157
158
|
},
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { TurboModule } from 'react-native';
|
|
2
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
3
|
+
|
|
4
|
+
export interface Spec extends TurboModule {
|
|
5
|
+
initialize(organizationId: string): void;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export default TurboModuleRegistry.getEnforcing<Spec>('TPStreams');
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { TurboModule } from 'react-native';
|
|
2
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
3
|
+
|
|
4
|
+
export type DownloadItem = {
|
|
5
|
+
videoId: string;
|
|
6
|
+
title: string;
|
|
7
|
+
thumbnailUrl?: string;
|
|
8
|
+
totalBytes: number;
|
|
9
|
+
downloadedBytes: number;
|
|
10
|
+
progressPercentage: number;
|
|
11
|
+
state: string;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export interface Spec extends TurboModule {
|
|
15
|
+
// Download management methods
|
|
16
|
+
getAll(): Promise<DownloadItem[]>;
|
|
17
|
+
get(videoId: string): Promise<DownloadItem | null>;
|
|
18
|
+
pause(videoId: string): Promise<void>;
|
|
19
|
+
resume(videoId: string): Promise<void>;
|
|
20
|
+
remove(videoId: string): Promise<void>;
|
|
21
|
+
|
|
22
|
+
// Progress monitoring methods
|
|
23
|
+
startProgressUpdates(): void;
|
|
24
|
+
stopProgressUpdates(): void;
|
|
25
|
+
|
|
26
|
+
// Required by React Native's NativeEventEmitter
|
|
27
|
+
// These are used internally by the event emitter
|
|
28
|
+
addListener(eventName: string): void;
|
|
29
|
+
removeListeners(count: number): void;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export default TurboModuleRegistry.getEnforcing<Spec>('TPStreamsDownloads');
|
package/src/TPStreamsPlayer.tsx
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { forwardRef, useImperativeHandle, useRef, useCallback } from 'react';
|
|
2
2
|
import TPStreamsPlayerNative, {
|
|
3
3
|
Commands,
|
|
4
|
-
} from '
|
|
4
|
+
} from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
5
5
|
import type {
|
|
6
6
|
NativeProps,
|
|
7
7
|
ErrorEvent,
|
|
8
|
-
} from '
|
|
8
|
+
} from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
9
9
|
import type { ViewProps } from 'react-native';
|
|
10
10
|
|
|
11
11
|
// Create a unique ID for each instance to track promises
|
|
@@ -226,7 +226,10 @@ const TPStreamsPlayerView = forwardRef<
|
|
|
226
226
|
),
|
|
227
227
|
getDuration: createPromiseMethod(Commands.getDuration, 'duration'),
|
|
228
228
|
isPlaying: createPromiseMethod(Commands.isPlaying, 'isPlaying'),
|
|
229
|
-
getPlaybackSpeed: createPromiseMethod(
|
|
229
|
+
getPlaybackSpeed: createPromiseMethod(
|
|
230
|
+
Commands.getPlaybackSpeed,
|
|
231
|
+
'playbackSpeed'
|
|
232
|
+
),
|
|
230
233
|
}),
|
|
231
234
|
[createPromiseMethod]
|
|
232
235
|
);
|
package/src/index.tsx
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { NativeModules } from 'react-native';
|
|
2
2
|
// Export the native component with a different name to avoid conflicts
|
|
3
|
-
export { default as TPStreamsPlayerNative } from '
|
|
4
|
-
export * from '
|
|
3
|
+
export { default as TPStreamsPlayerNative } from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
4
|
+
export * from '../spec/TPStreamsPlayerViewNativeComponent';
|
|
5
5
|
|
|
6
6
|
// Export the wrapper component as TPStreamsPlayerView
|
|
7
7
|
export { default as TPStreamsPlayerView } from './TPStreamsPlayer';
|
|
8
8
|
export type { TPStreamsPlayerRef } from './TPStreamsPlayer';
|
|
9
9
|
|
|
10
|
+
// Export the original download module
|
|
10
11
|
export {
|
|
11
12
|
pauseDownload,
|
|
12
13
|
resumeDownload,
|
|
@@ -24,6 +25,10 @@ export {
|
|
|
24
25
|
type DownloadProgressListener,
|
|
25
26
|
} from './TPStreamsDownload';
|
|
26
27
|
|
|
28
|
+
// Export the TPStreamsDownloads TurboModule directly
|
|
29
|
+
export { default as TPStreamsDownloads } from '../spec/NativeTPStreamsDownloads';
|
|
30
|
+
export type { DownloadItem as TPStreamsDownloadsItem } from '../spec/NativeTPStreamsDownloads';
|
|
31
|
+
|
|
27
32
|
const TPStreamsModule = NativeModules.TPStreams;
|
|
28
33
|
|
|
29
34
|
export const TPStreams = {
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
-
*
|
|
4
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
-
* once the code is regenerated.
|
|
6
|
-
*
|
|
7
|
-
* @generated by codegen project: GeneratePropsJavaDelegate.js
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
package com.facebook.react.viewmanagers;
|
|
11
|
-
|
|
12
|
-
import android.view.View;
|
|
13
|
-
import androidx.annotation.Nullable;
|
|
14
|
-
import com.facebook.react.bridge.ReadableArray;
|
|
15
|
-
import com.facebook.react.uimanager.BaseViewManager;
|
|
16
|
-
import com.facebook.react.uimanager.BaseViewManagerDelegate;
|
|
17
|
-
import com.facebook.react.uimanager.LayoutShadowNode;
|
|
18
|
-
|
|
19
|
-
public class TPStreamsRNPlayerViewManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & TPStreamsRNPlayerViewManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
|
|
20
|
-
public TPStreamsRNPlayerViewManagerDelegate(U viewManager) {
|
|
21
|
-
super(viewManager);
|
|
22
|
-
}
|
|
23
|
-
@Override
|
|
24
|
-
public void setProperty(T view, String propName, @Nullable Object value) {
|
|
25
|
-
switch (propName) {
|
|
26
|
-
case "videoId":
|
|
27
|
-
mViewManager.setVideoId(view, value == null ? null : (String) value);
|
|
28
|
-
break;
|
|
29
|
-
case "accessToken":
|
|
30
|
-
mViewManager.setAccessToken(view, value == null ? null : (String) value);
|
|
31
|
-
break;
|
|
32
|
-
case "shouldAutoPlay":
|
|
33
|
-
mViewManager.setShouldAutoPlay(view, value == null ? false : (boolean) value);
|
|
34
|
-
break;
|
|
35
|
-
case "startAt":
|
|
36
|
-
mViewManager.setStartAt(view, value == null ? 0f : ((Double) value).doubleValue());
|
|
37
|
-
break;
|
|
38
|
-
case "enableDownload":
|
|
39
|
-
mViewManager.setEnableDownload(view, value == null ? false : (boolean) value);
|
|
40
|
-
break;
|
|
41
|
-
case "showDefaultCaptions":
|
|
42
|
-
mViewManager.setShowDefaultCaptions(view, value == null ? false : (boolean) value);
|
|
43
|
-
break;
|
|
44
|
-
default:
|
|
45
|
-
super.setProperty(view, propName, value);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
@Override
|
|
50
|
-
public void receiveCommand(T view, String commandName, @Nullable ReadableArray args) {
|
|
51
|
-
switch (commandName) {
|
|
52
|
-
case "play":
|
|
53
|
-
mViewManager.play(view);
|
|
54
|
-
break;
|
|
55
|
-
case "pause":
|
|
56
|
-
mViewManager.pause(view);
|
|
57
|
-
break;
|
|
58
|
-
case "seekTo":
|
|
59
|
-
mViewManager.seekTo(view, args.getDouble(0));
|
|
60
|
-
break;
|
|
61
|
-
case "setPlaybackSpeed":
|
|
62
|
-
mViewManager.setPlaybackSpeed(view, (float) args.getDouble(0));
|
|
63
|
-
break;
|
|
64
|
-
case "getCurrentPosition":
|
|
65
|
-
mViewManager.getCurrentPosition(view);
|
|
66
|
-
break;
|
|
67
|
-
case "getDuration":
|
|
68
|
-
mViewManager.getDuration(view);
|
|
69
|
-
break;
|
|
70
|
-
case "isPlaying":
|
|
71
|
-
mViewManager.isPlaying(view);
|
|
72
|
-
break;
|
|
73
|
-
case "getPlaybackSpeed":
|
|
74
|
-
mViewManager.getPlaybackSpeed(view);
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
-
*
|
|
4
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
-
* once the code is regenerated.
|
|
6
|
-
*
|
|
7
|
-
* @generated by codegen project: GeneratePropsJavaInterface.js
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
package com.facebook.react.viewmanagers;
|
|
11
|
-
|
|
12
|
-
import android.view.View;
|
|
13
|
-
import androidx.annotation.Nullable;
|
|
14
|
-
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
|
|
15
|
-
|
|
16
|
-
public interface TPStreamsRNPlayerViewManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
|
|
17
|
-
void setVideoId(T view, @Nullable String value);
|
|
18
|
-
void setAccessToken(T view, @Nullable String value);
|
|
19
|
-
void setShouldAutoPlay(T view, boolean value);
|
|
20
|
-
void setStartAt(T view, double value);
|
|
21
|
-
void setEnableDownload(T view, boolean value);
|
|
22
|
-
void setShowDefaultCaptions(T view, boolean value);
|
|
23
|
-
void play(T view);
|
|
24
|
-
void pause(T view);
|
|
25
|
-
void seekTo(T view, double positionMs);
|
|
26
|
-
void setPlaybackSpeed(T view, float speed);
|
|
27
|
-
void getCurrentPosition(T view);
|
|
28
|
-
void getDuration(T view);
|
|
29
|
-
void isPlaying(T view);
|
|
30
|
-
void getPlaybackSpeed(T view);
|
|
31
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
-
#
|
|
3
|
-
# This source code is licensed under the MIT license found in the
|
|
4
|
-
# LICENSE file in the root directory of this source tree.
|
|
5
|
-
|
|
6
|
-
cmake_minimum_required(VERSION 3.13)
|
|
7
|
-
set(CMAKE_VERBOSE_MAKEFILE on)
|
|
8
|
-
|
|
9
|
-
file(GLOB react_codegen_SRCS CONFIGURE_DEPENDS *.cpp react/renderer/components/TPStreamsPlayerViewSpec/*.cpp)
|
|
10
|
-
|
|
11
|
-
add_library(
|
|
12
|
-
react_codegen_TPStreamsPlayerViewSpec
|
|
13
|
-
OBJECT
|
|
14
|
-
${react_codegen_SRCS}
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
target_include_directories(react_codegen_TPStreamsPlayerViewSpec PUBLIC . react/renderer/components/TPStreamsPlayerViewSpec)
|
|
18
|
-
|
|
19
|
-
target_link_libraries(
|
|
20
|
-
react_codegen_TPStreamsPlayerViewSpec
|
|
21
|
-
fbjni
|
|
22
|
-
jsi
|
|
23
|
-
# We need to link different libraries based on whether we are building rncore or not, that's necessary
|
|
24
|
-
# because we want to break a circular dependency between react_codegen_rncore and reactnative
|
|
25
|
-
reactnative
|
|
26
|
-
)
|
|
27
|
-
|
|
28
|
-
target_compile_options(
|
|
29
|
-
react_codegen_TPStreamsPlayerViewSpec
|
|
30
|
-
PRIVATE
|
|
31
|
-
-DLOG_TAG=\"ReactNative\"
|
|
32
|
-
-fexceptions
|
|
33
|
-
-frtti
|
|
34
|
-
-std=c++20
|
|
35
|
-
-Wall
|
|
36
|
-
)
|
package/android/app/build/generated/source/codegen/jni/TPStreamsPlayerViewSpec-generated.cpp
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
4
|
-
*
|
|
5
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
6
|
-
* once the code is regenerated.
|
|
7
|
-
*
|
|
8
|
-
* @generated by codegen project: GenerateModuleJniCpp.js
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
#include "TPStreamsPlayerViewSpec.h"
|
|
12
|
-
|
|
13
|
-
namespace facebook::react {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
std::shared_ptr<TurboModule> TPStreamsPlayerViewSpec_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
|
18
|
-
|
|
19
|
-
return nullptr;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
} // namespace facebook::react
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
4
|
-
*
|
|
5
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
6
|
-
* once the code is regenerated.
|
|
7
|
-
*
|
|
8
|
-
* @generated by codegen project: GenerateModuleJniH.js
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
#pragma once
|
|
12
|
-
|
|
13
|
-
#include <ReactCommon/JavaTurboModule.h>
|
|
14
|
-
#include <ReactCommon/TurboModule.h>
|
|
15
|
-
#include <jsi/jsi.h>
|
|
16
|
-
|
|
17
|
-
namespace facebook::react {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
JSI_EXPORT
|
|
22
|
-
std::shared_ptr<TurboModule> TPStreamsPlayerViewSpec_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
|
23
|
-
|
|
24
|
-
} // namespace facebook::react
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
4
|
-
*
|
|
5
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
6
|
-
* once the code is regenerated.
|
|
7
|
-
*
|
|
8
|
-
* @generated by codegen project: GenerateComponentDescriptorCpp.js
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
#include <react/renderer/components/TPStreamsPlayerViewSpec/ComponentDescriptors.h>
|
|
12
|
-
#include <react/renderer/core/ConcreteComponentDescriptor.h>
|
|
13
|
-
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
|
|
14
|
-
|
|
15
|
-
namespace facebook::react {
|
|
16
|
-
|
|
17
|
-
void TPStreamsPlayerViewSpec_registerComponentDescriptorsFromCodegen(
|
|
18
|
-
std::shared_ptr<const ComponentDescriptorProviderRegistry> registry) {
|
|
19
|
-
registry->add(concreteComponentDescriptorProvider<TPStreamsRNPlayerViewComponentDescriptor>());
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
} // namespace facebook::react
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
4
|
-
*
|
|
5
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
6
|
-
* once the code is regenerated.
|
|
7
|
-
*
|
|
8
|
-
* @generated by codegen project: GenerateComponentDescriptorH.js
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
#pragma once
|
|
12
|
-
|
|
13
|
-
#include <react/renderer/components/TPStreamsPlayerViewSpec/ShadowNodes.h>
|
|
14
|
-
#include <react/renderer/core/ConcreteComponentDescriptor.h>
|
|
15
|
-
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
|
|
16
|
-
|
|
17
|
-
namespace facebook::react {
|
|
18
|
-
|
|
19
|
-
using TPStreamsRNPlayerViewComponentDescriptor = ConcreteComponentDescriptor<TPStreamsRNPlayerViewShadowNode>;
|
|
20
|
-
|
|
21
|
-
void TPStreamsPlayerViewSpec_registerComponentDescriptorsFromCodegen(
|
|
22
|
-
std::shared_ptr<const ComponentDescriptorProviderRegistry> registry);
|
|
23
|
-
|
|
24
|
-
} // namespace facebook::react
|