react-native-acoustic-connect-beta 18.0.11 → 18.0.12

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 (40) hide show
  1. package/Examples/SampleUI/ConnectConfig.json +180 -0
  2. package/Examples/SampleUI/android/app/build.gradle +2 -0
  3. package/Examples/SampleUI/android/app/src/main/AndroidManifest.xml +18 -13
  4. package/Examples/SampleUI/android/app/src/main/java/com/sampleui/MainActivity.kt +47 -5
  5. package/Examples/SampleUI/ios/SampleUI.xcodeproj/xcshareddata/xcschemes/SampleUI.xcscheme +17 -0
  6. package/Examples/SampleUI/metro.config.js +2 -1
  7. package/Examples/SampleUI/package.json +3 -2
  8. package/Examples/SampleUI/src/RootNavigator.tsx +10 -1
  9. package/README.md +4 -0
  10. package/android/src/main/assets/ConnectAdvancedConfig.json +1 -1
  11. package/lib/commonjs/components/Connect.js +98 -0
  12. package/lib/commonjs/components/Connect.js.map +1 -0
  13. package/lib/commonjs/index.js +10 -1
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/module/components/Connect.js +91 -0
  16. package/lib/module/components/Connect.js.map +1 -0
  17. package/lib/module/index.js +2 -1
  18. package/lib/module/index.js.map +1 -1
  19. package/lib/typescript/src/components/Connect.d.ts +17 -0
  20. package/lib/typescript/src/components/Connect.d.ts.map +1 -0
  21. package/lib/typescript/src/index.d.ts +2 -0
  22. package/lib/typescript/src/index.d.ts.map +1 -1
  23. package/lib/typescript/src/specs/react-native-acoustic-connect.nitro.d.ts.map +1 -1
  24. package/package.json +1 -1
  25. package/scripts/ConnectConfig.json +1 -1
  26. package/scripts/javaParser.js +1 -1
  27. package/src/components/Connect.tsx +110 -0
  28. package/src/index.ts +3 -3
  29. package/src/specs/react-native-acoustic-connect.nitro.ts +1 -15
  30. package/Examples/SampleUI/package-lock.json +0 -17033
  31. package/jslib/components/Connect.js +0 -85
  32. package/lib/commonjs/types.js +0 -24
  33. package/lib/commonjs/types.js.map +0 -1
  34. package/lib/module/types.js +0 -24
  35. package/lib/module/types.js.map +0 -1
  36. package/lib/typescript/jslib/components/Connect.d.ts +0 -4
  37. package/lib/typescript/jslib/components/Connect.d.ts.map +0 -1
  38. package/lib/typescript/src/types.d.ts +0 -1
  39. package/lib/typescript/src/types.d.ts.map +0 -1
  40. package/src/types.ts +0 -23
@@ -0,0 +1,180 @@
1
+ {
2
+ "Connect": {
3
+ "AndroidVersion": "10.4.30",
4
+ "AppKey": "b6c3709b7a4c479bb4b5a9fb8fec324c",
5
+ "KillSwitchUrl": "https://lib-us-2.brilliantcollector.com/collector/switch/b6c3709b7a4c479bb4b5a9fb8fec324c",
6
+ "PostMessageUrl": "https://lib-us-2.brilliantcollector.com/collector/collectorPost",
7
+ "iOSVersion": "",
8
+ "layoutConfigAndroid": {
9
+ "AppendMapIds": {
10
+ "[w,9290],[v,0]": {
11
+ "mid": "ASimpleUIView"
12
+ },
13
+ "idxPathValue": {
14
+ "mid": "giveAdditionalId2"
15
+ },
16
+ "tag2999999": {
17
+ "mid": "giveAdditionalId1"
18
+ }
19
+ },
20
+ "AutoLayout": {
21
+ "ExampleMaskingPage": {
22
+ "CaptureLayoutDelay": 0,
23
+ "CaptureLayoutOn": 0,
24
+ "CaptureScreenVisits": false,
25
+ "CaptureScreenshotOn": 0,
26
+ "CaptureUserEvents": false,
27
+ "DisplayName": "",
28
+ "Masking": {
29
+ "HasCustomMask": true,
30
+ "HasMasking": true,
31
+ "MaskAccessibilityIdList": [
32
+
33
+ ],
34
+ "MaskAccessibilityLabelList": [
35
+
36
+ ],
37
+ "MaskIdList": [
38
+ "^9[0-9][0-9][0-9]$",
39
+ "^\\[wvv,0\\],\\[dddv,0\\],\\[v,0\\],\\[v,0\\],\\[v,0\\],\\[b,0\\](.)*$"
40
+ ],
41
+ "MaskValueList": [
42
+ "^4[0-9]{12}(?:[0-9]{3})?$",
43
+ "^3[47][0-9]{13}$",
44
+ "^65[4-9][0-9]{13}|64[4-9][0-9]{13}|6011[0-9]{12}|(622(?:12[6-9]|1[3-9][0-9]|[2-8][0-9][0-9]|9[01][0-9]|92[0-5])[0-9]{10})$",
45
+ "^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$"
46
+ ],
47
+ "Sensitive": {
48
+ "capitalCaseAlphabet": "X",
49
+ "number": "9",
50
+ "smallCaseAlphabet": "x",
51
+ "symbol": "#"
52
+ }
53
+ },
54
+ "NumberOfWebViews": 0,
55
+ "ScreenChange": false,
56
+ "ScreenShot": false
57
+ },
58
+ "GlobalScreenSettings": {
59
+ "CaptureLayoutDelay": 1,
60
+ "CaptureLayoutOn": 2,
61
+ "CaptureScreenVisits": false,
62
+ "CaptureScreenshotOn": 2,
63
+ "CaptureUserEvents": true,
64
+ "DisplayName": "",
65
+ "Masking": {
66
+ "HasCustomMask": true,
67
+ "HasMasking": true,
68
+ "MaskAccessibilityIdList": [
69
+
70
+ ],
71
+ "MaskAccessibilityLabelList": [
72
+
73
+ ],
74
+ "MaskIdList": [
75
+
76
+ ],
77
+ "MaskValueList": [
78
+
79
+ ],
80
+ "Sensitive": {
81
+ "capitalCaseAlphabet": "X",
82
+ "number": "9",
83
+ "smallCaseAlphabet": "x",
84
+ "symbol": "#"
85
+ }
86
+ },
87
+ "NumberOfWebViews": 0,
88
+ "ScreenChange": true,
89
+ "ScreenShot": true
90
+ }
91
+ }
92
+ },
93
+ "layoutConfigIos": {
94
+ "AppendMapIds": {
95
+ "[w,9290],[v,0]": {
96
+ "mid": "ASimpleUIView"
97
+ },
98
+ "idxPathValue": {
99
+ "mid": "giveAdditionalId2"
100
+ },
101
+ "tag2999999": {
102
+ "mid": "giveAdditionalId1"
103
+ }
104
+ },
105
+ "AutoLayout": {
106
+ "ExampleMaskingPage": {
107
+ "CaptureLayoutDelay": 0,
108
+ "CaptureLayoutOn": 0,
109
+ "CaptureScreenVisits": false,
110
+ "CaptureScreenshotOn": 0,
111
+ "CaptureUserEvents": false,
112
+ "DisplayName": "",
113
+ "Masking": {
114
+ "HasCustomMask": true,
115
+ "HasMasking": true,
116
+ "MaskAccessibilityIdList": [
117
+
118
+ ],
119
+ "MaskAccessibilityLabelList": [
120
+
121
+ ],
122
+ "MaskIdList": [
123
+ "^9[0-9][0-9][0-9]$",
124
+ "^\\[wvv,0\\],\\[dddv,0\\],\\[v,0\\],\\[v,0\\],\\[v,0\\],\\[b,0\\](.)*$"
125
+ ],
126
+ "MaskValueList": [
127
+ "^4[0-9]{12}(?:[0-9]{3})?$",
128
+ "^3[47][0-9]{13}$",
129
+ "^65[4-9][0-9]{13}|64[4-9][0-9]{13}|6011[0-9]{12}|(622(?:12[6-9]|1[3-9][0-9]|[2-8][0-9][0-9]|9[01][0-9]|92[0-5])[0-9]{10})$",
130
+ "^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$"
131
+ ],
132
+ "Sensitive": {
133
+ "capitalCaseAlphabet": "X",
134
+ "number": "9",
135
+ "smallCaseAlphabet": "x",
136
+ "symbol": "#"
137
+ }
138
+ },
139
+ "NumberOfWebViews": 0,
140
+ "ScreenChange": false,
141
+ "ScreenShot": false
142
+ },
143
+ "GlobalScreenSettings": {
144
+ "CaptureLayoutDelay": 1,
145
+ "CaptureLayoutOn": 2,
146
+ "CaptureScreenVisits": false,
147
+ "CaptureScreenshotOn": 2,
148
+ "CaptureUserEvents": true,
149
+ "DisplayName": "",
150
+ "Masking": {
151
+ "HasCustomMask": true,
152
+ "HasMasking": true,
153
+ "MaskAccessibilityIdList": [
154
+
155
+ ],
156
+ "MaskAccessibilityLabelList": [
157
+
158
+ ],
159
+ "MaskIdList": [
160
+
161
+ ],
162
+ "MaskValueList": [
163
+
164
+ ],
165
+ "Sensitive": {
166
+ "capitalCaseAlphabet": "X",
167
+ "number": "9",
168
+ "smallCaseAlphabet": "x",
169
+ "symbol": "#"
170
+ }
171
+ },
172
+ "NumberOfWebViews": 0,
173
+ "ScreenChange": true,
174
+ "ScreenShot": true
175
+ }
176
+ }
177
+ },
178
+ "useRelease": false
179
+ }
180
+ }
@@ -122,3 +122,5 @@ dependencies {
122
122
  implementation jscFlavor
123
123
  }
124
124
  }
125
+
126
+ apply from: project(':react-native-acoustic-connect-beta').projectDir.getPath() + "/config.gradle"
@@ -1,22 +1,27 @@
1
1
  <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
3
+ <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
4
+ <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
2
5
 
3
6
  <uses-permission android:name="android.permission.INTERNET" />
4
7
 
5
8
  <application
6
- android:name=".MainApplication"
7
- android:label="@string/app_name"
8
- android:icon="@mipmap/ic_launcher"
9
- android:roundIcon="@mipmap/ic_launcher_round"
10
- android:allowBackup="false"
11
- android:theme="@style/AppTheme"
12
- android:supportsRtl="true">
9
+ android:name=".MainApplication"
10
+ android:label="@string/app_name"
11
+ android:icon="@mipmap/ic_launcher"
12
+ android:roundIcon="@mipmap/ic_launcher_round"
13
+ android:allowBackup="false"
14
+ android:theme="@style/AppTheme"
15
+ android:supportsRtl="true"
16
+ >
13
17
  <activity
14
- android:name=".MainActivity"
15
- android:label="@string/app_name"
16
- android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
17
- android:launchMode="singleTask"
18
- android:windowSoftInputMode="adjustResize"
19
- android:exported="true">
18
+ android:name=".MainActivity"
19
+ android:label="@string/app_name"
20
+ android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
21
+ android:launchMode="singleTask"
22
+ android:windowSoftInputMode="adjustResize"
23
+ android:exported="true"
24
+ >
20
25
  <intent-filter>
21
26
  <action android:name="android.intent.action.MAIN" />
22
27
  <category android:name="android.intent.category.LAUNCHER" />
@@ -1,4 +1,6 @@
1
1
  package com.sampleui
2
+ import com.acoustic.connect.android.connectmod.Connect
3
+ import android.view.MotionEvent
2
4
  import expo.modules.ReactActivityDelegateWrapper
3
5
 
4
6
  import com.facebook.react.ReactActivity
@@ -8,16 +10,56 @@ import com.facebook.react.defaults.DefaultReactActivityDelegate
8
10
 
9
11
  class MainActivity : ReactActivity() {
10
12
 
11
- /**
13
+ /**
12
14
  * Returns the name of the main component registered from JavaScript. This is used to schedule
13
15
  * rendering of the component.
14
16
  */
15
- override fun getMainComponentName(): String = "SampleUI"
17
+ override fun getMainComponentName(): String = "SampleUI"
16
18
 
17
- /**
19
+ /**
18
20
  * Returns the instance of the [ReactActivityDelegate]. We use [DefaultReactActivityDelegate]
19
21
  * which allows you to enable New Architecture with a single boolean flags [fabricEnabled]
20
22
  */
21
- override fun createReactActivityDelegate(): ReactActivityDelegate =
22
- ReactActivityDelegateWrapper(this, BuildConfig.IS_NEW_ARCHITECTURE_ENABLED, DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled))
23
+ override fun createReactActivityDelegate(): ReactActivityDelegate = ReactActivityDelegateWrapper(this, BuildConfig.IS_NEW_ARCHITECTURE_ENABLED, DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled))
24
+
25
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
26
+ Connect.dispatchTouchEvent(this, e)
27
+ return super.dispatchTouchEvent(e)
28
+ }
29
+
30
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
31
+ Connect.dispatchTouchEvent(this, e)
32
+ return super.dispatchTouchEvent(e)
33
+ }
34
+
35
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
36
+ Connect.dispatchTouchEvent(this, e)
37
+ return super.dispatchTouchEvent(e)
38
+ }
39
+
40
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
41
+ Connect.dispatchTouchEvent(this, e)
42
+ return super.dispatchTouchEvent(e)
43
+ }
44
+
45
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
46
+ Connect.dispatchTouchEvent(this, e)
47
+ return super.dispatchTouchEvent(e)
48
+ }
49
+
50
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
51
+ Connect.dispatchTouchEvent(this, e)
52
+ return super.dispatchTouchEvent(e)
53
+ }
54
+
55
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
56
+ Connect.dispatchTouchEvent(this, e)
57
+ return super.dispatchTouchEvent(e)
58
+ }
59
+
60
+ override fun dispatchTouchEvent(e: MotionEvent?): Boolean {
61
+ Connect.dispatchTouchEvent(this, e)
62
+ return super.dispatchTouchEvent(e)
63
+ }
23
64
  }
65
+
@@ -60,6 +60,23 @@
60
60
  ReferencedContainer = "container:SampleUI.xcodeproj">
61
61
  </BuildableReference>
62
62
  </BuildableProductRunnable>
63
+ <EnvironmentVariables>
64
+ <EnvironmentVariable
65
+ key = "EODebug"
66
+ value = "1"
67
+ isEnabled = "YES">
68
+ </EnvironmentVariable>
69
+ <EnvironmentVariable
70
+ key = "TLF_DEBUG"
71
+ value = "1"
72
+ isEnabled = "YES">
73
+ </EnvironmentVariable>
74
+ <EnvironmentVariable
75
+ key = "CONNECT_DEBUG"
76
+ value = "1"
77
+ isEnabled = "YES">
78
+ </EnvironmentVariable>
79
+ </EnvironmentVariables>
63
80
  </LaunchAction>
64
81
  <ProfileAction
65
82
  buildConfiguration = "Release"
@@ -15,7 +15,8 @@ const modules = [
15
15
  'react-native',
16
16
  'react-native-safe-area-context',
17
17
  'react-native-vector-icons',
18
- '@expo/vector-icons'
18
+ '@expo/vector-icons',
19
+ // 'react-native-acoustic-connect-beta',
19
20
  ];
20
21
 
21
22
  module.exports = {
@@ -7,7 +7,8 @@
7
7
  "ios": "cd ios && pod install && cd .. && react-native run-ios",
8
8
  "lint": "eslint .",
9
9
  "start": "react-native start",
10
- "test": "jest"
10
+ "test": "jest",
11
+ "updateYalc": "yalc update react-native-acoustic-connect-beta && cd ios && pod install && cd .."
11
12
  },
12
13
  "dependencies": {
13
14
  "@babel/plugin-proposal-export-namespace-from": "^7.18.9",
@@ -25,7 +26,7 @@
25
26
  "expo-status-bar": "^2.0.1",
26
27
  "react": "18.3.1",
27
28
  "react-native": "0.76.9",
28
- "react-native-acoustic-connect-beta": "^18.0.7",
29
+ "react-native-acoustic-connect-beta": "file:.yalc/react-native-acoustic-connect-beta",
29
30
  "react-native-gesture-handler": "~2.20.2",
30
31
  "react-native-get-random-values": "^1.11.0",
31
32
  "react-native-nitro-modules": "^0.25.2",
@@ -11,6 +11,15 @@ import { Appbar } from 'react-native-paper';
11
11
 
12
12
  import ExampleList, { examples } from './ExampleList';
13
13
 
14
+ // import { AcousticConnectRN, Connect } from 'react-native-acoustic-connect-beta';
15
+ // Log all exported items from the module
16
+ import AcousticConnectRN from 'react-native-acoustic-connect-beta';
17
+ import * as AcousticConnectBeta from 'react-native-acoustic-connect-beta';
18
+ console.log('Exported items from react-native-acoustic-connect-beta:', AcousticConnectBeta);
19
+
20
+ const result = AcousticConnectRN.logCustomEvent('test', {test: 'test'}, 1);
21
+ console.log('result', result);
22
+
14
23
  const Stack = createStackNavigator();
15
24
 
16
25
  export default function Root() {
@@ -53,7 +62,7 @@ export default function Root() {
53
62
  name="ExampleList"
54
63
  component={ExampleList}
55
64
  options={{
56
- title: 'Examples',
65
+ title: 'Examples: Acoustic Connect',
57
66
  }}
58
67
  />
59
68
  {(Object.keys(examples) as Array<keyof typeof examples>).map((id) => {
package/README.md CHANGED
@@ -8,7 +8,11 @@
8
8
  ## Installation
9
9
 
10
10
  ```bash
11
+ // To add to your package
11
12
  npm add react-native-acoustic-connect-beta react-native-nitro-modules
13
+ // To install on your application and view debug information during install
14
+ npm install --foreground-scripts --force
15
+
12
16
  ```
13
17
 
14
18
 
@@ -24,7 +24,7 @@
24
24
  "IpPlaceholder": "N/A",
25
25
  "KillSwitchAsync": true,
26
26
  "KillSwitchDelay": 300,
27
- "LibraryVersion": "10.4.35",
27
+ "LibraryVersion": "10.4.37",
28
28
  "LogFullRequestResponsePayloads": true,
29
29
  "MessageTypeHeader": "WorklightHit",
30
30
  "MessageTypes": "4,5",
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ /********************************************************************************************
12
+ * Copyright (C) 2025 Acoustic, L.P. All rights reserved.
13
+ *
14
+ * NOTICE: This file contains material that is confidential and proprietary to
15
+ * Acoustic, L.P. and/or other developers. No license is granted under any intellectual or
16
+ * industrial property rights of Acoustic, L.P. except as may be provided in an agreement with
17
+ * Acoustic, L.P. Any unauthorized copying or distribution of content from this file is
18
+ * prohibited.
19
+ ********************************************************************************************/
20
+
21
+ // Use type-only import for LayoutChangeEvent
22
+ // import TLTRN from '../TLTRN';
23
+
24
+ const Connect = ({
25
+ children,
26
+ captureKeyboardEvents
27
+ }) => {
28
+ const navigation = children.ref; // Type assertion for children with ref
29
+ const currentRoute = (0, _react.useRef)(undefined);
30
+ const initial = (0, _react.useRef)(false);
31
+ (0, _react.useEffect)(() => {
32
+ // TLTRN.interceptKeyboardEvents(captureKeyboardEvents);
33
+ }, [captureKeyboardEvents]);
34
+ (0, _react.useEffect)(() => {
35
+ if (!navigation || typeof navigation.current.addListener !== "function" || typeof navigation.current.getCurrentRoute !== "function") {
36
+ console.warn("Connect: The Connect component's first child must be a NavigationContainer with a ref.");
37
+ return;
38
+ }
39
+ const unsubscribe = navigation.current.addListener("state", () => {
40
+ currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
41
+ console.log("State change - ", currentRoute.current);
42
+ if (_reactNative.Platform.OS === "ios" && currentRoute && currentRoute.current) {
43
+ // TLTRN.setCurrentScreenName(currentRoute.current);
44
+ } else if (_reactNative.Platform.OS === "android") {
45
+ // TLTRN.setCurrentScreenName(currentRoute.current);
46
+ // TLTRN.logScreenLayout(currentRoute.current);
47
+ }
48
+ });
49
+ return unsubscribe;
50
+ }, [navigation]);
51
+ const onStartShouldSetResponderCapture = (0, _react.useCallback)(event => {
52
+ currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
53
+ if (currentRoute && currentRoute.current) {
54
+ // TLTRN.setCurrentScreenName(currentRoute.current);
55
+ }
56
+ // Log the click event
57
+ console.log("event - ", event.nativeEvent);
58
+ // TLTRN.logClickEvent(event);
59
+ return false; // Must be false; true means this component becomes the touch responder and events don't bubble
60
+ }, []);
61
+ const onLayout = (0, _react.useCallback)(event => {
62
+ if (initial.current) {
63
+ return false;
64
+ }
65
+ initial.current = true;
66
+ console.log("event - ", event.nativeEvent);
67
+ currentRoute.current = navigation.current.getCurrentRoute()?.name;
68
+ if (_reactNative.Platform.OS === "ios" && currentRoute && currentRoute.current) {
69
+ // TLTRN.setCurrentScreenName(currentRoute.current);
70
+ } else if (_reactNative.Platform.OS === "android") {
71
+ // TLTRN.logScreenLayout(currentRoute.current);
72
+ }
73
+ return true;
74
+ }, [navigation]);
75
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
76
+ style: styles.connect_main,
77
+ onLayout: onLayout,
78
+ onStartShouldSetResponderCapture: onStartShouldSetResponderCapture,
79
+ children: children
80
+ });
81
+ };
82
+ function extractName(navigation) {
83
+ const routeParams = navigation.current.getCurrentRoute()?.params;
84
+ if (routeParams) {
85
+ const {
86
+ name
87
+ } = routeParams;
88
+ return name || "";
89
+ }
90
+ return "";
91
+ }
92
+ var _default = exports.default = Connect;
93
+ const styles = _reactNative.StyleSheet.create({
94
+ connect_main: {
95
+ flex: 1
96
+ }
97
+ });
98
+ //# sourceMappingURL=Connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Connect","children","captureKeyboardEvents","navigation","ref","currentRoute","useRef","undefined","initial","useEffect","current","addListener","getCurrentRoute","console","warn","unsubscribe","extractName","name","log","Platform","OS","onStartShouldSetResponderCapture","useCallback","event","nativeEvent","onLayout","jsx","View","style","styles","connect_main","routeParams","params","_default","exports","StyleSheet","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "Connect", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Connect.default;
10
+ }
11
+ });
6
12
  exports.default = void 0;
7
13
  var _reactNativeNitroModules = require("react-native-nitro-modules");
14
+ var _Connect = _interopRequireDefault(require("./components/Connect"));
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
16
  /********************************************************************************************
9
17
  * Copyright (C) 2025 Acoustic, L.P. All rights reserved.
10
18
  *
@@ -18,8 +26,9 @@ var _reactNativeNitroModules = require("react-native-nitro-modules");
18
26
  *
19
27
  ********************************************************************************************/
20
28
 
21
- // export type * from './types'
29
+ // Import Connect.tsx
22
30
 
23
31
  const AcousticConnectRN = _reactNativeNitroModules.NitroModules.createHybridObject('AcousticConnectRN');
32
+ // Export Connect.tsx
24
33
  var _default = exports.default = AcousticConnectRN;
25
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeNitroModules","require","AcousticConnectRN","NitroModules","createHybridObject","_default","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;AAaA,IAAAA,wBAAA,GAAAC,OAAA;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;;AAEA,MAAMC,iBAAiB,GACnBC,qCAAY,CAACC,kBAAkB,CAAwB,mBAAmB,CAAC;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEhEL,iBAAiB","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeNitroModules","require","_Connect","_interopRequireDefault","e","__esModule","default","AcousticConnectRN","NitroModules","createHybridObject","_default","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;AAaA,IAAAA,wBAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA0C,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAf1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAI2C;;AAE3C,MAAMG,iBAAiB,GAAGC,qCAAY,CAACC,kBAAkB,CAAwB,mBAAmB,CAAC;AAElF;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAL,OAAA,GACJC,iBAAiB","ignoreList":[]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ /********************************************************************************************
4
+ * Copyright (C) 2025 Acoustic, L.P. All rights reserved.
5
+ *
6
+ * NOTICE: This file contains material that is confidential and proprietary to
7
+ * Acoustic, L.P. and/or other developers. No license is granted under any intellectual or
8
+ * industrial property rights of Acoustic, L.P. except as may be provided in an agreement with
9
+ * Acoustic, L.P. Any unauthorized copying or distribution of content from this file is
10
+ * prohibited.
11
+ ********************************************************************************************/
12
+ import React, { useCallback, useEffect, useRef } from "react";
13
+ import { View, StyleSheet, Platform } from "react-native";
14
+ // Use type-only import for LayoutChangeEvent
15
+ // import TLTRN from '../TLTRN';
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ const Connect = ({
18
+ children,
19
+ captureKeyboardEvents
20
+ }) => {
21
+ const navigation = children.ref; // Type assertion for children with ref
22
+ const currentRoute = useRef(undefined);
23
+ const initial = useRef(false);
24
+ useEffect(() => {
25
+ // TLTRN.interceptKeyboardEvents(captureKeyboardEvents);
26
+ }, [captureKeyboardEvents]);
27
+ useEffect(() => {
28
+ if (!navigation || typeof navigation.current.addListener !== "function" || typeof navigation.current.getCurrentRoute !== "function") {
29
+ console.warn("Connect: The Connect component's first child must be a NavigationContainer with a ref.");
30
+ return;
31
+ }
32
+ const unsubscribe = navigation.current.addListener("state", () => {
33
+ currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
34
+ console.log("State change - ", currentRoute.current);
35
+ if (Platform.OS === "ios" && currentRoute && currentRoute.current) {
36
+ // TLTRN.setCurrentScreenName(currentRoute.current);
37
+ } else if (Platform.OS === "android") {
38
+ // TLTRN.setCurrentScreenName(currentRoute.current);
39
+ // TLTRN.logScreenLayout(currentRoute.current);
40
+ }
41
+ });
42
+ return unsubscribe;
43
+ }, [navigation]);
44
+ const onStartShouldSetResponderCapture = useCallback(event => {
45
+ currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
46
+ if (currentRoute && currentRoute.current) {
47
+ // TLTRN.setCurrentScreenName(currentRoute.current);
48
+ }
49
+ // Log the click event
50
+ console.log("event - ", event.nativeEvent);
51
+ // TLTRN.logClickEvent(event);
52
+ return false; // Must be false; true means this component becomes the touch responder and events don't bubble
53
+ }, []);
54
+ const onLayout = useCallback(event => {
55
+ if (initial.current) {
56
+ return false;
57
+ }
58
+ initial.current = true;
59
+ console.log("event - ", event.nativeEvent);
60
+ currentRoute.current = navigation.current.getCurrentRoute()?.name;
61
+ if (Platform.OS === "ios" && currentRoute && currentRoute.current) {
62
+ // TLTRN.setCurrentScreenName(currentRoute.current);
63
+ } else if (Platform.OS === "android") {
64
+ // TLTRN.logScreenLayout(currentRoute.current);
65
+ }
66
+ return true;
67
+ }, [navigation]);
68
+ return /*#__PURE__*/_jsx(View, {
69
+ style: styles.connect_main,
70
+ onLayout: onLayout,
71
+ onStartShouldSetResponderCapture: onStartShouldSetResponderCapture,
72
+ children: children
73
+ });
74
+ };
75
+ function extractName(navigation) {
76
+ const routeParams = navigation.current.getCurrentRoute()?.params;
77
+ if (routeParams) {
78
+ const {
79
+ name
80
+ } = routeParams;
81
+ return name || "";
82
+ }
83
+ return "";
84
+ }
85
+ export default Connect;
86
+ const styles = StyleSheet.create({
87
+ connect_main: {
88
+ flex: 1
89
+ }
90
+ });
91
+ //# sourceMappingURL=Connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","View","StyleSheet","Platform","jsx","_jsx","Connect","children","captureKeyboardEvents","navigation","ref","currentRoute","undefined","initial","current","addListener","getCurrentRoute","console","warn","unsubscribe","extractName","name","log","OS","onStartShouldSetResponderCapture","event","nativeEvent","onLayout","style","styles","connect_main","routeParams","params","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
@@ -14,8 +14,9 @@
14
14
  ********************************************************************************************/
15
15
 
16
16
  import { NitroModules } from 'react-native-nitro-modules';
17
- // export type * from './types'
17
+ import Connect from './components/Connect'; // Import Connect.tsx
18
18
 
19
19
  const AcousticConnectRN = NitroModules.createHybridObject('AcousticConnectRN');
20
+ export { Connect }; // Export Connect.tsx
20
21
  export default AcousticConnectRN;
21
22
  //# sourceMappingURL=index.js.map