@clarionhq/recorder 0.0.1 → 0.1.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.
Files changed (91) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +110 -0
  3. package/android/build.gradle +97 -0
  4. package/android/gradle.properties +4 -0
  5. package/android/src/main/AndroidManifest.xml +4 -0
  6. package/android/src/main/cpp/cpp-adapter.cpp +7 -0
  7. package/android/src/main/java/com/clarionhq/recorder/AudioLevelMeter.kt +38 -0
  8. package/android/src/main/java/com/clarionhq/recorder/ClarionRecorderPackage.kt +27 -0
  9. package/android/src/main/java/com/clarionhq/recorder/EncodeFile.kt +62 -0
  10. package/android/src/main/java/com/clarionhq/recorder/RecorderConfig.kt +33 -0
  11. package/android/src/main/java/com/clarionhq/recorder/RecorderConstants.kt +16 -0
  12. package/android/src/main/java/com/clarionhq/recorder/RecorderSession.kt +336 -0
  13. package/android/src/main/java/com/clarionhq/recorder/RecorderTypes.kt +29 -0
  14. package/android/src/main/java/com/margelo/nitro/clarion/recorder/HybridClarionRecorder.kt +174 -0
  15. package/clarionhq-recorder.podspec +31 -0
  16. package/ios/AudioLevelMeter.swift +37 -0
  17. package/ios/EncodeFile.swift +69 -0
  18. package/ios/HybridClarionRecorder.swift +186 -0
  19. package/ios/RecorderConstants.swift +11 -0
  20. package/ios/RecorderSession.swift +278 -0
  21. package/ios/RecorderTypes.swift +41 -0
  22. package/lib/RecorderEngine.d.ts +31 -0
  23. package/lib/RecorderEngine.d.ts.map +1 -0
  24. package/lib/RecorderEngine.js +245 -0
  25. package/lib/RecorderEngine.js.map +1 -0
  26. package/lib/index.d.ts +4 -0
  27. package/lib/index.d.ts.map +1 -0
  28. package/lib/index.js +2 -0
  29. package/lib/index.js.map +1 -0
  30. package/lib/native.d.ts +3 -0
  31. package/lib/native.d.ts.map +1 -0
  32. package/lib/native.js +3 -0
  33. package/lib/native.js.map +1 -0
  34. package/lib/specs/ClarionRecorder.nitro.d.ts +49 -0
  35. package/lib/specs/ClarionRecorder.nitro.d.ts.map +1 -0
  36. package/lib/specs/ClarionRecorder.nitro.js +2 -0
  37. package/lib/specs/ClarionRecorder.nitro.js.map +1 -0
  38. package/nitro.json +24 -0
  39. package/nitrogen/generated/android/ClarionRecorder+autolinking.cmake +81 -0
  40. package/nitrogen/generated/android/ClarionRecorder+autolinking.gradle +27 -0
  41. package/nitrogen/generated/android/ClarionRecorderOnLoad.cpp +62 -0
  42. package/nitrogen/generated/android/ClarionRecorderOnLoad.hpp +34 -0
  43. package/nitrogen/generated/android/c++/JFunc_void_NativeRecorderError.hpp +78 -0
  44. package/nitrogen/generated/android/c++/JFunc_void_double_double.hpp +75 -0
  45. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
  46. package/nitrogen/generated/android/c++/JFunc_void_std__string_double_double_double.hpp +76 -0
  47. package/nitrogen/generated/android/c++/JHybridClarionRecorderSpec.cpp +207 -0
  48. package/nitrogen/generated/android/c++/JHybridClarionRecorderSpec.hpp +75 -0
  49. package/nitrogen/generated/android/c++/JNativeRecorderConfig.hpp +90 -0
  50. package/nitrogen/generated/android/c++/JNativeRecorderError.hpp +65 -0
  51. package/nitrogen/generated/android/c++/JNativeRecorderResult.hpp +77 -0
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/ClarionRecorderOnLoad.kt +35 -0
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/Func_void_NativeRecorderError.kt +80 -0
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/Func_void_double_double.kt +80 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/Func_void_std__string.kt +80 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/Func_void_std__string_double_double_double.kt +80 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/HybridClarionRecorderSpec.kt +125 -0
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/NativeRecorderConfig.kt +91 -0
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/NativeRecorderError.kt +61 -0
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/clarion/recorder/NativeRecorderResult.kt +76 -0
  61. package/nitrogen/generated/ios/ClarionRecorder+autolinking.rb +62 -0
  62. package/nitrogen/generated/ios/ClarionRecorder-Swift-Cxx-Bridge.cpp +89 -0
  63. package/nitrogen/generated/ios/ClarionRecorder-Swift-Cxx-Bridge.hpp +297 -0
  64. package/nitrogen/generated/ios/ClarionRecorder-Swift-Cxx-Umbrella.hpp +56 -0
  65. package/nitrogen/generated/ios/ClarionRecorderAutolinking.mm +33 -0
  66. package/nitrogen/generated/ios/ClarionRecorderAutolinking.swift +26 -0
  67. package/nitrogen/generated/ios/c++/HybridClarionRecorderSpecSwift.cpp +11 -0
  68. package/nitrogen/generated/ios/c++/HybridClarionRecorderSpecSwift.hpp +188 -0
  69. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  70. package/nitrogen/generated/ios/swift/Func_void_NativeRecorderError.swift +46 -0
  71. package/nitrogen/generated/ios/swift/Func_void_NativeRecorderResult.swift +46 -0
  72. package/nitrogen/generated/ios/swift/Func_void_double_double.swift +46 -0
  73. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  74. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
  75. package/nitrogen/generated/ios/swift/Func_void_std__string_double_double_double.swift +46 -0
  76. package/nitrogen/generated/ios/swift/HybridClarionRecorderSpec.swift +67 -0
  77. package/nitrogen/generated/ios/swift/HybridClarionRecorderSpec_cxx.swift +354 -0
  78. package/nitrogen/generated/ios/swift/NativeRecorderConfig.swift +108 -0
  79. package/nitrogen/generated/ios/swift/NativeRecorderError.swift +39 -0
  80. package/nitrogen/generated/ios/swift/NativeRecorderResult.swift +54 -0
  81. package/nitrogen/generated/shared/c++/HybridClarionRecorderSpec.cpp +34 -0
  82. package/nitrogen/generated/shared/c++/HybridClarionRecorderSpec.hpp +84 -0
  83. package/nitrogen/generated/shared/c++/NativeRecorderConfig.hpp +116 -0
  84. package/nitrogen/generated/shared/c++/NativeRecorderError.hpp +91 -0
  85. package/nitrogen/generated/shared/c++/NativeRecorderResult.hpp +103 -0
  86. package/package.json +66 -8
  87. package/src/RecorderEngine.ts +298 -0
  88. package/src/index.ts +8 -0
  89. package/src/native.ts +5 -0
  90. package/src/specs/ClarionRecorder.nitro.ts +58 -0
  91. package/index.js +0 -1
package/src/index.ts ADDED
@@ -0,0 +1,8 @@
1
+ export { RecorderEngine } from './RecorderEngine';
2
+ export type { RecorderEngineOptions } from './RecorderEngine';
3
+ export type {
4
+ ClarionRecorder,
5
+ NativeRecorderConfig,
6
+ NativeRecorderResult,
7
+ NativeRecorderError,
8
+ } from './specs/ClarionRecorder.nitro';
package/src/native.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { NitroModules } from 'react-native-nitro-modules';
2
+ import type { ClarionRecorder } from './specs/ClarionRecorder.nitro';
3
+
4
+ export const createNativeRecorder = (): ClarionRecorder =>
5
+ NitroModules.createHybridObject<ClarionRecorder>('ClarionRecorder');
@@ -0,0 +1,58 @@
1
+ import type { HybridObject } from 'react-native-nitro-modules';
2
+
3
+ export interface NativeRecorderConfig {
4
+ sampleRate: number;
5
+ channels: number;
6
+ bitDepth: number;
7
+ outputDirectory?: string;
8
+ filenamePrefix?: string;
9
+ rotateAfterMs?: number;
10
+ emitAudioLevel: boolean;
11
+ audioLevelIntervalMs: number;
12
+ aacBitrate: number;
13
+ }
14
+
15
+ export interface NativeRecorderResult {
16
+ uri: string;
17
+ durationMs: number;
18
+ sizeBytes: number;
19
+ sampleRate: number;
20
+ channels: number;
21
+ bitDepth: number;
22
+ }
23
+
24
+ export interface NativeRecorderError {
25
+ code: string;
26
+ message: string;
27
+ recoverable: boolean;
28
+ }
29
+
30
+ export type StateListener = (state: string) => void;
31
+ export type AudioLevelListener = (rms: number, peak: number) => void;
32
+ export type ChunkListener = (
33
+ uri: string,
34
+ startMs: number,
35
+ endMs: number,
36
+ sizeBytes: number,
37
+ ) => void;
38
+ export type ErrorListener = (error: NativeRecorderError) => void;
39
+
40
+ export interface ClarionRecorder
41
+ extends HybridObject<{ ios: 'swift'; android: 'kotlin' }> {
42
+ readonly state: string;
43
+
44
+ prepare(config: NativeRecorderConfig): Promise<void>;
45
+ start(): Promise<void>;
46
+ pause(): Promise<void>;
47
+ resume(): Promise<void>;
48
+ stop(): Promise<NativeRecorderResult>;
49
+ discard(): Promise<void>;
50
+ release(): Promise<void>;
51
+
52
+ addStateListener(listener: StateListener): number;
53
+ addAudioLevelListener(listener: AudioLevelListener): number;
54
+ addChunkListener(listener: ChunkListener): number;
55
+ addErrorListener(listener: ErrorListener): number;
56
+ removeListener(id: number): void;
57
+ removeAllListeners(): void;
58
+ }
package/index.js DELETED
@@ -1 +0,0 @@
1
- // @clarionhq/recorder — placeholder. See https://github.com/clarionhq/clarion