@luciq/react-native 18.0.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.
- package/CHANGELOG.md +5 -0
- package/FONTS_SETUP_GUIDE.md +521 -0
- package/Gemfile +1 -0
- package/Gemfile.lock +11 -0
- package/LICENSE +21 -0
- package/README.md +148 -0
- package/RNLuciq.podspec +21 -0
- package/android/build.gradle +88 -0
- package/android/gradle.properties +4 -0
- package/android/jacoco.gradle +52 -0
- package/android/native.gradle +7 -0
- package/android/proguard-rules.txt +1 -0
- package/android/sourcemaps.gradle +255 -0
- package/android/src/main/AndroidManifest.xml +4 -0
- package/android/src/main/java/ai/luciq/reactlibrary/ArgsRegistry.java +278 -0
- package/android/src/main/java/ai/luciq/reactlibrary/Constants.java +20 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciq.java +328 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqAPMModule.java +392 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqBugReportingModule.java +444 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqCrashReportingModule.java +169 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqFeatureRequestsModule.java +98 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqNetworkLoggerModule.java +195 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqReactnativeModule.java +1611 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqReactnativePackage.java +41 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqRepliesModule.java +298 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqSessionReplayModule.java +213 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqSurveysModule.java +237 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/ArrayUtil.java +167 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/EventEmitterModule.java +35 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/LuciqUtil.java +58 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/MainThreadHandler.java +13 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/MapUtil.java +171 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/RNTouchedViewExtractor.java +167 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/ReportUtil.java +67 -0
- package/app.plugin.js +1 -0
- package/babel.config.js +3 -0
- package/bin/commands/MigrateCommand.d.ts +6 -0
- package/bin/commands/UploadEasUpdatesSourcemaps.d.ts +2 -0
- package/bin/commands/UploadSoFiles.d.ts +6 -0
- package/bin/commands/UploadSourcemaps.d.ts +2 -0
- package/bin/config/migration-config.json +125 -0
- package/bin/index.d.ts +2 -0
- package/bin/index.js +19179 -0
- package/bin/upload/index.d.ts +4 -0
- package/bin/upload/migrate.d.ts +14 -0
- package/bin/upload/uploadEasUpdatesSourcemaps.d.ts +21 -0
- package/bin/upload/uploadSoFiles.d.ts +21 -0
- package/bin/upload/uploadSourcemaps.d.ts +21 -0
- package/cli/commands/MigrateCommand.ts +32 -0
- package/cli/commands/UploadEasUpdatesSourcemaps.ts +34 -0
- package/cli/commands/UploadSoFiles.ts +38 -0
- package/cli/commands/UploadSourcemaps.ts +40 -0
- package/cli/config/migration-config.json +125 -0
- package/cli/index.ts +21 -0
- package/cli/upload/index.ts +4 -0
- package/cli/upload/migrate.ts +271 -0
- package/cli/upload/uploadEasUpdatesSourcemaps.ts +74 -0
- package/cli/upload/uploadSoFiles.ts +112 -0
- package/cli/upload/uploadSourcemaps.ts +73 -0
- package/dangerfile.ts +44 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.js +14 -0
- package/dist/models/FeatureFlag.d.ts +11 -0
- package/dist/models/FeatureFlag.js +1 -0
- package/dist/models/LuciqConfig.d.ts +42 -0
- package/dist/models/LuciqConfig.js +1 -0
- package/dist/models/NonFatalOptions.d.ts +15 -0
- package/dist/models/NonFatalOptions.js +1 -0
- package/dist/models/OverAirUpdate.d.ts +12 -0
- package/dist/models/OverAirUpdate.js +1 -0
- package/dist/models/Report.d.ts +70 -0
- package/dist/models/Report.js +109 -0
- package/dist/models/ReproConfig.d.ts +27 -0
- package/dist/models/ReproConfig.js +1 -0
- package/dist/models/SessionMetadata.d.ts +55 -0
- package/dist/models/SessionMetadata.js +1 -0
- package/dist/models/ThemeConfig.d.ts +27 -0
- package/dist/models/ThemeConfig.js +1 -0
- package/dist/models/W3cExternalTraceAttributes.d.ts +22 -0
- package/dist/models/W3cExternalTraceAttributes.js +1 -0
- package/dist/modules/APM.d.ts +77 -0
- package/dist/modules/APM.js +104 -0
- package/dist/modules/BugReporting.d.ts +138 -0
- package/dist/modules/BugReporting.js +202 -0
- package/dist/modules/CrashReporting.d.ts +19 -0
- package/dist/modules/CrashReporting.js +40 -0
- package/dist/modules/FeatureRequests.d.ts +20 -0
- package/dist/modules/FeatureRequests.js +28 -0
- package/dist/modules/Luciq.d.ts +362 -0
- package/dist/modules/Luciq.js +797 -0
- package/dist/modules/NetworkLogger.d.ts +52 -0
- package/dist/modules/NetworkLogger.js +208 -0
- package/dist/modules/Replies.d.ts +78 -0
- package/dist/modules/Replies.js +121 -0
- package/dist/modules/SessionReplay.d.ts +78 -0
- package/dist/modules/SessionReplay.js +98 -0
- package/dist/modules/Surveys.d.ts +75 -0
- package/dist/modules/Surveys.js +101 -0
- package/dist/native/NativeAPM.d.ts +18 -0
- package/dist/native/NativeAPM.js +4 -0
- package/dist/native/NativeBugReporting.d.ts +32 -0
- package/dist/native/NativeBugReporting.js +10 -0
- package/dist/native/NativeConstants.d.ts +182 -0
- package/dist/native/NativeConstants.js +1 -0
- package/dist/native/NativeCrashReporting.d.ts +18 -0
- package/dist/native/NativeCrashReporting.js +2 -0
- package/dist/native/NativeFeatureRequests.d.ts +8 -0
- package/dist/native/NativeFeatureRequests.js +2 -0
- package/dist/native/NativeLuciq.d.ts +86 -0
- package/dist/native/NativeLuciq.js +10 -0
- package/dist/native/NativeNetworkLogger.d.ts +21 -0
- package/dist/native/NativeNetworkLogger.js +14 -0
- package/dist/native/NativePackage.d.ts +21 -0
- package/dist/native/NativePackage.js +2 -0
- package/dist/native/NativeReplies.d.ts +21 -0
- package/dist/native/NativeReplies.js +8 -0
- package/dist/native/NativeSessionReplay.d.ts +16 -0
- package/dist/native/NativeSessionReplay.js +8 -0
- package/dist/native/NativeSurveys.d.ts +22 -0
- package/dist/native/NativeSurveys.js +9 -0
- package/dist/utils/AppStatesHandler.d.ts +3 -0
- package/dist/utils/AppStatesHandler.js +16 -0
- package/dist/utils/Enums.d.ts +244 -0
- package/dist/utils/Enums.js +266 -0
- package/dist/utils/FeatureFlags.d.ts +7 -0
- package/dist/utils/FeatureFlags.js +24 -0
- package/dist/utils/LuciqConstants.d.ts +14 -0
- package/dist/utils/LuciqConstants.js +15 -0
- package/dist/utils/LuciqUtils.d.ts +97 -0
- package/dist/utils/LuciqUtils.js +301 -0
- package/dist/utils/UnhandledRejectionTracking.d.ts +9 -0
- package/dist/utils/UnhandledRejectionTracking.js +99 -0
- package/dist/utils/XhrNetworkInterceptor.d.ts +39 -0
- package/dist/utils/XhrNetworkInterceptor.js +253 -0
- package/dist/utils/config.d.ts +5 -0
- package/dist/utils/config.js +6 -0
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.js +39 -0
- package/expo.d.ts +1 -0
- package/expo.js +1 -0
- package/ios/RNLuciq/ArgsRegistry.h +32 -0
- package/ios/RNLuciq/ArgsRegistry.m +276 -0
- package/ios/RNLuciq/LuciqAPMBridge.h +26 -0
- package/ios/RNLuciq/LuciqAPMBridge.m +99 -0
- package/ios/RNLuciq/LuciqBugReportingBridge.h +60 -0
- package/ios/RNLuciq/LuciqBugReportingBridge.m +241 -0
- package/ios/RNLuciq/LuciqCrashReportingBridge.h +18 -0
- package/ios/RNLuciq/LuciqCrashReportingBridge.m +68 -0
- package/ios/RNLuciq/LuciqFeatureRequestsBridge.h +30 -0
- package/ios/RNLuciq/LuciqFeatureRequestsBridge.m +61 -0
- package/ios/RNLuciq/LuciqNetworkLoggerBridge.h +44 -0
- package/ios/RNLuciq/LuciqNetworkLoggerBridge.m +206 -0
- package/ios/RNLuciq/LuciqReactBridge.h +151 -0
- package/ios/RNLuciq/LuciqReactBridge.m +548 -0
- package/ios/RNLuciq/LuciqRepliesBridge.h +40 -0
- package/ios/RNLuciq/LuciqRepliesBridge.m +80 -0
- package/ios/RNLuciq/LuciqSessionReplayBridge.h +32 -0
- package/ios/RNLuciq/LuciqSessionReplayBridge.m +107 -0
- package/ios/RNLuciq/LuciqSurveysBridge.h +46 -0
- package/ios/RNLuciq/LuciqSurveysBridge.m +107 -0
- package/ios/RNLuciq/RCTConvert+LuciqEnums.h +18 -0
- package/ios/RNLuciq/RCTConvert+LuciqEnums.m +127 -0
- package/ios/RNLuciq/RNLuciq.h +35 -0
- package/ios/RNLuciq/RNLuciq.m +107 -0
- package/ios/RNLuciq/Util/LCQAPM+PrivateAPIs.h +15 -0
- package/ios/RNLuciq/Util/LCQCrashReporting+CP.h +13 -0
- package/ios/RNLuciq/Util/LCQNetworkLogger+CP.h +68 -0
- package/ios/RNLuciq/Util/Luciq+CP.h +12 -0
- package/ios/RNLuciq.xcodeproj/project.pbxproj +352 -0
- package/ios/native.rb +12 -0
- package/ios/sourcemaps.sh +120 -0
- package/migrate.js +569 -0
- package/package.json +92 -0
- package/plugin/build/index.js +42078 -0
- package/plugin/src/index.ts +5 -0
- package/plugin/src/pluginProps.ts +6 -0
- package/plugin/src/withLuciq.ts +51 -0
- package/plugin/src/withLuciqAndroid.ts +99 -0
- package/plugin/src/withLuciqIOS.ts +109 -0
- package/plugin/tsconfig.json +7 -0
- package/react-native.config.js +16 -0
- package/scripts/customize-ios-endpoints.sh +28 -0
- package/scripts/dream-11-delete-unused-features.sh +62 -0
- package/scripts/find-token.js +58 -0
- package/scripts/find-token.sh +70 -0
- package/scripts/notify-github.sh +15 -0
- package/scripts/replace.js +58 -0
- package/scripts/snapshot-comment.md +15 -0
- package/scripts/snapshot-version.sh +11 -0
- package/src/index.ts +40 -0
- package/src/models/FeatureFlag.ts +12 -0
- package/src/models/LuciqConfig.ts +48 -0
- package/src/models/NonFatalOptions.ts +16 -0
- package/src/models/OverAirUpdate.ts +14 -0
- package/src/models/Report.ts +124 -0
- package/src/models/ReproConfig.ts +31 -0
- package/src/models/SessionMetadata.ts +57 -0
- package/src/models/ThemeConfig.ts +34 -0
- package/src/models/W3cExternalTraceAttributes.ts +22 -0
- package/src/modules/APM.ts +117 -0
- package/src/modules/BugReporting.ts +254 -0
- package/src/modules/CrashReporting.ts +54 -0
- package/src/modules/FeatureRequests.ts +32 -0
- package/src/modules/Luciq.ts +934 -0
- package/src/modules/NetworkLogger.ts +270 -0
- package/src/modules/Replies.ts +137 -0
- package/src/modules/SessionReplay.ts +111 -0
- package/src/modules/Surveys.ts +118 -0
- package/src/native/NativeAPM.ts +51 -0
- package/src/native/NativeBugReporting.ts +70 -0
- package/src/native/NativeConstants.ts +215 -0
- package/src/native/NativeCrashReporting.ts +29 -0
- package/src/native/NativeFeatureRequests.ts +12 -0
- package/src/native/NativeLuciq.ts +179 -0
- package/src/native/NativeNetworkLogger.ts +42 -0
- package/src/native/NativePackage.ts +25 -0
- package/src/native/NativeReplies.ts +34 -0
- package/src/native/NativeSessionReplay.ts +21 -0
- package/src/native/NativeSurveys.ts +34 -0
- package/src/promise.d.ts +11 -0
- package/src/utils/AppStatesHandler.ts +19 -0
- package/src/utils/Enums.ts +266 -0
- package/src/utils/FeatureFlags.ts +33 -0
- package/src/utils/LuciqConstants.ts +24 -0
- package/src/utils/LuciqUtils.ts +417 -0
- package/src/utils/UnhandledRejectionTracking.ts +118 -0
- package/src/utils/XhrNetworkInterceptor.ts +333 -0
- package/src/utils/config.ts +7 -0
- package/src/utils/logger.ts +54 -0
- package/tsconfig.json +32 -0
- package/tsconfig.test.json +4 -0
- package/tsconfig.upload.json +10 -0
- package/upload/index.d.ts +4 -0
- package/upload/index.js +17314 -0
- package/upload/migrate.d.ts +14 -0
- package/upload/package.json +5 -0
- package/upload/uploadEasUpdatesSourcemaps.d.ts +21 -0
- package/upload/uploadSoFiles.d.ts +21 -0
- package/upload/uploadSourcemaps.d.ts +21 -0
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
// !$*UTF8*$!
|
|
2
|
+
{
|
|
3
|
+
archiveVersion = 1;
|
|
4
|
+
classes = {
|
|
5
|
+
};
|
|
6
|
+
objectVersion = 52;
|
|
7
|
+
objects = {
|
|
8
|
+
|
|
9
|
+
/* Begin PBXBuildFile section */
|
|
10
|
+
24DF11FD1DA3A2F30056F77C /* LuciqReactBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DF11FA1DA3A2F30056F77C /* LuciqReactBridge.m */; };
|
|
11
|
+
24DF11FE1DA3A2F30056F77C /* RCTConvert+LuciqEnums.m in Sources */ = {isa = PBXBuildFile; fileRef = 24DF11FC1DA3A2F30056F77C /* RCTConvert+LuciqEnums.m */; };
|
|
12
|
+
BAD36E1A22F0763A007F5E74 /* LuciqBugReportingBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD36E1922F0763A007F5E74 /* LuciqBugReportingBridge.m */; };
|
|
13
|
+
BAD36E2222F19248007F5E74 /* LuciqSurveysBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD36E2122F19248007F5E74 /* LuciqSurveysBridge.m */; };
|
|
14
|
+
BAD36E2522F19265007F5E74 /* LuciqRepliesBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD36E2422F19265007F5E74 /* LuciqRepliesBridge.m */; };
|
|
15
|
+
BAD36E2822F19283007F5E74 /* LuciqChatsBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD36E2722F19283007F5E74 /* LuciqChatsBridge.m */; };
|
|
16
|
+
BAD36E2B22F192CB007F5E74 /* LuciqFeatureRequestsBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD36E2A22F192CB007F5E74 /* LuciqFeatureRequestsBridge.m */; };
|
|
17
|
+
C063F52D2620B0220039EDEA /* Luciq.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C063F52C2620B0220039EDEA /* Luciq.xcframework */; };
|
|
18
|
+
/* End PBXBuildFile section */
|
|
19
|
+
|
|
20
|
+
/* Begin PBXCopyFilesBuildPhase section */
|
|
21
|
+
24DF11EB1DA3A2B90056F77C /* CopyFiles */ = {
|
|
22
|
+
isa = PBXCopyFilesBuildPhase;
|
|
23
|
+
buildActionMask = 2147483647;
|
|
24
|
+
dstPath = "include/$(PRODUCT_NAME)";
|
|
25
|
+
dstSubfolderSpec = 16;
|
|
26
|
+
files = (
|
|
27
|
+
);
|
|
28
|
+
runOnlyForDeploymentPostprocessing = 0;
|
|
29
|
+
};
|
|
30
|
+
/* End PBXCopyFilesBuildPhase section */
|
|
31
|
+
|
|
32
|
+
/* Begin PBXFileReference section */
|
|
33
|
+
24DF11ED1DA3A2B90056F77C /* libRNLuciq.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNLuciq.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
34
|
+
24DF11F91DA3A2F30056F77C /* LuciqReactBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LuciqReactBridge.h; sourceTree = "<group>"; };
|
|
35
|
+
24DF11FA1DA3A2F30056F77C /* LuciqReactBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LuciqReactBridge.m; sourceTree = "<group>"; };
|
|
36
|
+
24DF11FB1DA3A2F30056F77C /* RCTConvert+LuciqEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RCTConvert+LuciqEnums.h"; sourceTree = "<group>"; };
|
|
37
|
+
24DF11FC1DA3A2F30056F77C /* RCTConvert+LuciqEnums.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "RCTConvert+LuciqEnums.m"; sourceTree = "<group>"; };
|
|
38
|
+
BAD36E1822F075DD007F5E74 /* LuciqBugReportingBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LuciqBugReportingBridge.h; sourceTree = "<group>"; };
|
|
39
|
+
BAD36E1922F0763A007F5E74 /* LuciqBugReportingBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LuciqBugReportingBridge.m; sourceTree = "<group>"; };
|
|
40
|
+
BAD36E2022F19230007F5E74 /* LuciqSurveysBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LuciqSurveysBridge.h; sourceTree = "<group>"; };
|
|
41
|
+
BAD36E2122F19248007F5E74 /* LuciqSurveysBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LuciqSurveysBridge.m; sourceTree = "<group>"; };
|
|
42
|
+
BAD36E2322F19258007F5E74 /* LuciqRepliesBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LuciqRepliesBridge.h; sourceTree = "<group>"; };
|
|
43
|
+
BAD36E2422F19265007F5E74 /* LuciqRepliesBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LuciqRepliesBridge.m; sourceTree = "<group>"; };
|
|
44
|
+
BAD36E2622F19272007F5E74 /* LuciqChatsBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LuciqChatsBridge.h; sourceTree = "<group>"; };
|
|
45
|
+
BAD36E2722F19283007F5E74 /* LuciqChatsBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LuciqChatsBridge.m; sourceTree = "<group>"; };
|
|
46
|
+
BAD36E2922F192B8007F5E74 /* LuciqFeatureRequestsBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LuciqFeatureRequestsBridge.h; sourceTree = "<group>"; };
|
|
47
|
+
BAD36E2A22F192CB007F5E74 /* LuciqFeatureRequestsBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LuciqFeatureRequestsBridge.m; sourceTree = "<group>"; };
|
|
48
|
+
C063F52C2620B0220039EDEA /* Luciq.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; path = Luciq.xcframework; sourceTree = "<group>"; };
|
|
49
|
+
/* End PBXFileReference section */
|
|
50
|
+
|
|
51
|
+
/* Begin PBXFrameworksBuildPhase section */
|
|
52
|
+
24DF11EA1DA3A2B90056F77C /* Frameworks */ = {
|
|
53
|
+
isa = PBXFrameworksBuildPhase;
|
|
54
|
+
buildActionMask = 2147483647;
|
|
55
|
+
files = (
|
|
56
|
+
C063F52D2620B0220039EDEA /* Luciq.xcframework in Frameworks */,
|
|
57
|
+
);
|
|
58
|
+
runOnlyForDeploymentPostprocessing = 0;
|
|
59
|
+
};
|
|
60
|
+
/* End PBXFrameworksBuildPhase section */
|
|
61
|
+
|
|
62
|
+
/* Begin PBXGroup section */
|
|
63
|
+
248766431DA3E8EC00D93EDA /* Frameworks */ = {
|
|
64
|
+
isa = PBXGroup;
|
|
65
|
+
children = (
|
|
66
|
+
C063F52C2620B0220039EDEA /* Luciq.xcframework */,
|
|
67
|
+
);
|
|
68
|
+
name = Frameworks;
|
|
69
|
+
sourceTree = "<group>";
|
|
70
|
+
};
|
|
71
|
+
24DF11E41DA3A2B90056F77C = {
|
|
72
|
+
isa = PBXGroup;
|
|
73
|
+
children = (
|
|
74
|
+
24DF11EF1DA3A2B90056F77C /* RNLuciq */,
|
|
75
|
+
24DF11EE1DA3A2B90056F77C /* Products */,
|
|
76
|
+
248766431DA3E8EC00D93EDA /* Frameworks */,
|
|
77
|
+
);
|
|
78
|
+
sourceTree = "<group>";
|
|
79
|
+
};
|
|
80
|
+
24DF11EE1DA3A2B90056F77C /* Products */ = {
|
|
81
|
+
isa = PBXGroup;
|
|
82
|
+
children = (
|
|
83
|
+
24DF11ED1DA3A2B90056F77C /* libRNLuciq.a */,
|
|
84
|
+
);
|
|
85
|
+
name = Products;
|
|
86
|
+
sourceTree = "<group>";
|
|
87
|
+
};
|
|
88
|
+
24DF11EF1DA3A2B90056F77C /* RNLuciq */ = {
|
|
89
|
+
isa = PBXGroup;
|
|
90
|
+
children = (
|
|
91
|
+
24DF11F91DA3A2F30056F77C /* LuciqReactBridge.h */,
|
|
92
|
+
24DF11FA1DA3A2F30056F77C /* LuciqReactBridge.m */,
|
|
93
|
+
24DF11FB1DA3A2F30056F77C /* RCTConvert+LuciqEnums.h */,
|
|
94
|
+
24DF11FC1DA3A2F30056F77C /* RCTConvert+LuciqEnums.m */,
|
|
95
|
+
BAD36E1822F075DD007F5E74 /* LuciqBugReportingBridge.h */,
|
|
96
|
+
BAD36E1922F0763A007F5E74 /* LuciqBugReportingBridge.m */,
|
|
97
|
+
BAD36E2022F19230007F5E74 /* LuciqSurveysBridge.h */,
|
|
98
|
+
BAD36E2122F19248007F5E74 /* LuciqSurveysBridge.m */,
|
|
99
|
+
BAD36E2322F19258007F5E74 /* LuciqRepliesBridge.h */,
|
|
100
|
+
BAD36E2422F19265007F5E74 /* LuciqRepliesBridge.m */,
|
|
101
|
+
BAD36E2622F19272007F5E74 /* LuciqChatsBridge.h */,
|
|
102
|
+
BAD36E2722F19283007F5E74 /* LuciqChatsBridge.m */,
|
|
103
|
+
BAD36E2922F192B8007F5E74 /* LuciqFeatureRequestsBridge.h */,
|
|
104
|
+
BAD36E2A22F192CB007F5E74 /* LuciqFeatureRequestsBridge.m */,
|
|
105
|
+
);
|
|
106
|
+
path = RNLuciq;
|
|
107
|
+
sourceTree = "<group>";
|
|
108
|
+
};
|
|
109
|
+
/* End PBXGroup section */
|
|
110
|
+
|
|
111
|
+
/* Begin PBXNativeTarget section */
|
|
112
|
+
24DF11EC1DA3A2B90056F77C /* RNLuciq */ = {
|
|
113
|
+
isa = PBXNativeTarget;
|
|
114
|
+
buildConfigurationList = 24DF11F61DA3A2B90056F77C /* Build configuration list for PBXNativeTarget "RNLuciq" */;
|
|
115
|
+
buildPhases = (
|
|
116
|
+
24DF11E91DA3A2B90056F77C /* Sources */,
|
|
117
|
+
24DF11EA1DA3A2B90056F77C /* Frameworks */,
|
|
118
|
+
24DF11EB1DA3A2B90056F77C /* CopyFiles */,
|
|
119
|
+
);
|
|
120
|
+
buildRules = (
|
|
121
|
+
);
|
|
122
|
+
dependencies = (
|
|
123
|
+
);
|
|
124
|
+
name = RNLuciq;
|
|
125
|
+
productName = RNLuciq;
|
|
126
|
+
productReference = 24DF11ED1DA3A2B90056F77C /* libRNLuciq.a */;
|
|
127
|
+
productType = "com.apple.product-type.library.static";
|
|
128
|
+
};
|
|
129
|
+
/* End PBXNativeTarget section */
|
|
130
|
+
|
|
131
|
+
/* Begin PBXProject section */
|
|
132
|
+
24DF11E51DA3A2B90056F77C /* Project object */ = {
|
|
133
|
+
isa = PBXProject;
|
|
134
|
+
attributes = {
|
|
135
|
+
LastUpgradeCheck = 0800;
|
|
136
|
+
ORGANIZATIONNAME = luciq;
|
|
137
|
+
TargetAttributes = {
|
|
138
|
+
24DF11EC1DA3A2B90056F77C = {
|
|
139
|
+
CreatedOnToolsVersion = 8.0;
|
|
140
|
+
ProvisioningStyle = Automatic;
|
|
141
|
+
};
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
buildConfigurationList = 24DF11E81DA3A2B90056F77C /* Build configuration list for PBXProject "RNLuciq" */;
|
|
145
|
+
compatibilityVersion = "Xcode 3.2";
|
|
146
|
+
developmentRegion = English;
|
|
147
|
+
hasScannedForEncodings = 0;
|
|
148
|
+
knownRegions = (
|
|
149
|
+
English,
|
|
150
|
+
en,
|
|
151
|
+
);
|
|
152
|
+
mainGroup = 24DF11E41DA3A2B90056F77C;
|
|
153
|
+
productRefGroup = 24DF11EE1DA3A2B90056F77C /* Products */;
|
|
154
|
+
projectDirPath = "";
|
|
155
|
+
projectRoot = "";
|
|
156
|
+
targets = (
|
|
157
|
+
24DF11EC1DA3A2B90056F77C /* RNLuciq */,
|
|
158
|
+
);
|
|
159
|
+
};
|
|
160
|
+
/* End PBXProject section */
|
|
161
|
+
|
|
162
|
+
/* Begin PBXSourcesBuildPhase section */
|
|
163
|
+
24DF11E91DA3A2B90056F77C /* Sources */ = {
|
|
164
|
+
isa = PBXSourcesBuildPhase;
|
|
165
|
+
buildActionMask = 2147483647;
|
|
166
|
+
files = (
|
|
167
|
+
BAD36E1A22F0763A007F5E74 /* LuciqBugReportingBridge.m in Sources */,
|
|
168
|
+
BAD36E2222F19248007F5E74 /* LuciqSurveysBridge.m in Sources */,
|
|
169
|
+
BAD36E2522F19265007F5E74 /* LuciqRepliesBridge.m in Sources */,
|
|
170
|
+
BAD36E2822F19283007F5E74 /* LuciqChatsBridge.m in Sources */,
|
|
171
|
+
BAD36E2B22F192CB007F5E74 /* LuciqFeatureRequestsBridge.m in Sources */,
|
|
172
|
+
24DF11FE1DA3A2F30056F77C /* RCTConvert+LuciqEnums.m in Sources */,
|
|
173
|
+
24DF11FD1DA3A2F30056F77C /* LuciqReactBridge.m in Sources */,
|
|
174
|
+
);
|
|
175
|
+
runOnlyForDeploymentPostprocessing = 0;
|
|
176
|
+
};
|
|
177
|
+
/* End PBXSourcesBuildPhase section */
|
|
178
|
+
|
|
179
|
+
/* Begin XCBuildConfiguration section */
|
|
180
|
+
24DF11F41DA3A2B90056F77C /* Debug */ = {
|
|
181
|
+
isa = XCBuildConfiguration;
|
|
182
|
+
buildSettings = {
|
|
183
|
+
ALWAYS_SEARCH_USER_PATHS = NO;
|
|
184
|
+
CLANG_ANALYZER_NONNULL = YES;
|
|
185
|
+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
|
186
|
+
CLANG_CXX_LIBRARY = "libc++";
|
|
187
|
+
CLANG_ENABLE_MODULES = YES;
|
|
188
|
+
CLANG_ENABLE_OBJC_ARC = YES;
|
|
189
|
+
CLANG_WARN_BOOL_CONVERSION = YES;
|
|
190
|
+
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
|
191
|
+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
|
192
|
+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
|
193
|
+
CLANG_WARN_EMPTY_BODY = YES;
|
|
194
|
+
CLANG_WARN_ENUM_CONVERSION = YES;
|
|
195
|
+
CLANG_WARN_INFINITE_RECURSION = YES;
|
|
196
|
+
CLANG_WARN_INT_CONVERSION = YES;
|
|
197
|
+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
|
198
|
+
CLANG_WARN_SUSPICIOUS_MOVES = YES;
|
|
199
|
+
CLANG_WARN_UNREACHABLE_CODE = YES;
|
|
200
|
+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
|
201
|
+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
|
202
|
+
COPY_PHASE_STRIP = NO;
|
|
203
|
+
DEBUG_INFORMATION_FORMAT = dwarf;
|
|
204
|
+
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
|
205
|
+
ENABLE_TESTABILITY = YES;
|
|
206
|
+
GCC_C_LANGUAGE_STANDARD = gnu99;
|
|
207
|
+
GCC_DYNAMIC_NO_PIC = NO;
|
|
208
|
+
GCC_NO_COMMON_BLOCKS = YES;
|
|
209
|
+
GCC_OPTIMIZATION_LEVEL = 0;
|
|
210
|
+
GCC_PREPROCESSOR_DEFINITIONS = (
|
|
211
|
+
"DEBUG=1",
|
|
212
|
+
"$(inherited)",
|
|
213
|
+
);
|
|
214
|
+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
|
215
|
+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
216
|
+
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
|
217
|
+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
218
|
+
GCC_WARN_UNUSED_FUNCTION = YES;
|
|
219
|
+
GCC_WARN_UNUSED_VARIABLE = YES;
|
|
220
|
+
HEADER_SEARCH_PATHS = (
|
|
221
|
+
"$(inherited)",
|
|
222
|
+
"$(SRCROOT)/../../React/**",
|
|
223
|
+
"$(SRCROOT)/node_modules/react-native/React/**",
|
|
224
|
+
"$(SRCROOT)/../../../node_modules/react-native/React/**",
|
|
225
|
+
"$(SRCROOT)/../react-native/React/**",
|
|
226
|
+
);
|
|
227
|
+
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
|
|
228
|
+
MTL_ENABLE_DEBUG_INFO = YES;
|
|
229
|
+
ONLY_ACTIVE_ARCH = YES;
|
|
230
|
+
SDKROOT = iphoneos;
|
|
231
|
+
};
|
|
232
|
+
name = Debug;
|
|
233
|
+
};
|
|
234
|
+
24DF11F51DA3A2B90056F77C /* Release */ = {
|
|
235
|
+
isa = XCBuildConfiguration;
|
|
236
|
+
buildSettings = {
|
|
237
|
+
ALWAYS_SEARCH_USER_PATHS = NO;
|
|
238
|
+
CLANG_ANALYZER_NONNULL = YES;
|
|
239
|
+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
|
240
|
+
CLANG_CXX_LIBRARY = "libc++";
|
|
241
|
+
CLANG_ENABLE_MODULES = YES;
|
|
242
|
+
CLANG_ENABLE_OBJC_ARC = YES;
|
|
243
|
+
CLANG_WARN_BOOL_CONVERSION = YES;
|
|
244
|
+
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
|
245
|
+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
|
246
|
+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
|
247
|
+
CLANG_WARN_EMPTY_BODY = YES;
|
|
248
|
+
CLANG_WARN_ENUM_CONVERSION = YES;
|
|
249
|
+
CLANG_WARN_INFINITE_RECURSION = YES;
|
|
250
|
+
CLANG_WARN_INT_CONVERSION = YES;
|
|
251
|
+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
|
252
|
+
CLANG_WARN_SUSPICIOUS_MOVES = YES;
|
|
253
|
+
CLANG_WARN_UNREACHABLE_CODE = YES;
|
|
254
|
+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
|
255
|
+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
|
256
|
+
COPY_PHASE_STRIP = NO;
|
|
257
|
+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
|
258
|
+
ENABLE_NS_ASSERTIONS = NO;
|
|
259
|
+
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
|
260
|
+
GCC_C_LANGUAGE_STANDARD = gnu99;
|
|
261
|
+
GCC_NO_COMMON_BLOCKS = YES;
|
|
262
|
+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
|
263
|
+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
264
|
+
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
|
265
|
+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
266
|
+
GCC_WARN_UNUSED_FUNCTION = YES;
|
|
267
|
+
GCC_WARN_UNUSED_VARIABLE = YES;
|
|
268
|
+
HEADER_SEARCH_PATHS = (
|
|
269
|
+
"$(inherited)",
|
|
270
|
+
"$(SRCROOT)/../../React/**",
|
|
271
|
+
"$(SRCROOT)/node_modules/react-native/React/**",
|
|
272
|
+
"$(SRCROOT)/../../../node_modules/react-native/React/**",
|
|
273
|
+
"$(SRCROOT)/../react-native/React/**",
|
|
274
|
+
);
|
|
275
|
+
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
|
|
276
|
+
MTL_ENABLE_DEBUG_INFO = NO;
|
|
277
|
+
SDKROOT = iphoneos;
|
|
278
|
+
VALIDATE_PRODUCT = YES;
|
|
279
|
+
};
|
|
280
|
+
name = Release;
|
|
281
|
+
};
|
|
282
|
+
24DF11F71DA3A2B90056F77C /* Debug */ = {
|
|
283
|
+
isa = XCBuildConfiguration;
|
|
284
|
+
buildSettings = {
|
|
285
|
+
FRAMEWORK_SEARCH_PATHS = (
|
|
286
|
+
"$(inherited)",
|
|
287
|
+
"$(PROJECT_DIR)/../../../ios/Frameworks",
|
|
288
|
+
"$(PROJECT_DIR)/../../../ios/Pods/Luciq",
|
|
289
|
+
"$(PROJECT_DIR)",
|
|
290
|
+
);
|
|
291
|
+
HEADER_SEARCH_PATHS = (
|
|
292
|
+
"$(SRCROOT)/../node_modules/react-native/React/**",
|
|
293
|
+
"$(SRCROOT)/../node_modules/react-native/Libraries/**",
|
|
294
|
+
"$(inherited)",
|
|
295
|
+
"$(SRCROOT)/../../React/**",
|
|
296
|
+
"$(SRCROOT)/../../../node_modules/react-native/React/**",
|
|
297
|
+
"$(SRCROOT)/../react-native/React/**",
|
|
298
|
+
);
|
|
299
|
+
OTHER_LDFLAGS = "-ObjC";
|
|
300
|
+
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
301
|
+
SKIP_INSTALL = YES;
|
|
302
|
+
};
|
|
303
|
+
name = Debug;
|
|
304
|
+
};
|
|
305
|
+
24DF11F81DA3A2B90056F77C /* Release */ = {
|
|
306
|
+
isa = XCBuildConfiguration;
|
|
307
|
+
buildSettings = {
|
|
308
|
+
FRAMEWORK_SEARCH_PATHS = (
|
|
309
|
+
"$(inherited)",
|
|
310
|
+
"$(PROJECT_DIR)/../../../ios/Frameworks",
|
|
311
|
+
"$(PROJECT_DIR)/../../../ios/Pods/Luciq",
|
|
312
|
+
"$(PROJECT_DIR)",
|
|
313
|
+
);
|
|
314
|
+
HEADER_SEARCH_PATHS = (
|
|
315
|
+
"$(SRCROOT)/../node_modules/react-native/React/**",
|
|
316
|
+
"$(SRCROOT)/../node_modules/react-native/Libraries/**",
|
|
317
|
+
"$(inherited)",
|
|
318
|
+
"$(SRCROOT)/../../React/**",
|
|
319
|
+
"$(SRCROOT)/../../../node_modules/react-native/React/**",
|
|
320
|
+
"$(SRCROOT)/../react-native/React/**",
|
|
321
|
+
);
|
|
322
|
+
OTHER_LDFLAGS = "-ObjC";
|
|
323
|
+
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
324
|
+
SKIP_INSTALL = YES;
|
|
325
|
+
};
|
|
326
|
+
name = Release;
|
|
327
|
+
};
|
|
328
|
+
/* End XCBuildConfiguration section */
|
|
329
|
+
|
|
330
|
+
/* Begin XCConfigurationList section */
|
|
331
|
+
24DF11E81DA3A2B90056F77C /* Build configuration list for PBXProject "RNLuciq" */ = {
|
|
332
|
+
isa = XCConfigurationList;
|
|
333
|
+
buildConfigurations = (
|
|
334
|
+
24DF11F41DA3A2B90056F77C /* Debug */,
|
|
335
|
+
24DF11F51DA3A2B90056F77C /* Release */,
|
|
336
|
+
);
|
|
337
|
+
defaultConfigurationIsVisible = 0;
|
|
338
|
+
defaultConfigurationName = Release;
|
|
339
|
+
};
|
|
340
|
+
24DF11F61DA3A2B90056F77C /* Build configuration list for PBXNativeTarget "RNLuciq" */ = {
|
|
341
|
+
isa = XCConfigurationList;
|
|
342
|
+
buildConfigurations = (
|
|
343
|
+
24DF11F71DA3A2B90056F77C /* Debug */,
|
|
344
|
+
24DF11F81DA3A2B90056F77C /* Release */,
|
|
345
|
+
);
|
|
346
|
+
defaultConfigurationIsVisible = 0;
|
|
347
|
+
defaultConfigurationName = Release;
|
|
348
|
+
};
|
|
349
|
+
/* End XCConfigurationList section */
|
|
350
|
+
};
|
|
351
|
+
rootObject = 24DF11E51DA3A2B90056F77C /* Project object */;
|
|
352
|
+
}
|
package/ios/native.rb
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export SOURCEMAP_FILE="$DERIVED_FILE_DIR/main.jsbundle.map"
|
|
5
|
+
|
|
6
|
+
main() {
|
|
7
|
+
# Read environment variables from ios/.xcode.env if it exists
|
|
8
|
+
env_path="$PODS_ROOT/../.xcode.env"
|
|
9
|
+
if [ -f "$env_path" ]; then
|
|
10
|
+
source "$env_path"
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
# Read environment variables from ios/.xcode.env.local if it exists
|
|
14
|
+
local_env_path="${ENV_PATH}.local"
|
|
15
|
+
if [ -f "$local_env_path" ]; then
|
|
16
|
+
source "$local_env_path"
|
|
17
|
+
fi
|
|
18
|
+
|
|
19
|
+
# Check both LUCIQ and INSTABUG environment variables for sourcemaps upload disable
|
|
20
|
+
local luciq_disable="${LUCIQ_SOURCEMAPS_UPLOAD_DISABLE}"
|
|
21
|
+
local instabug_disable="${INSTABUG_SOURCEMAPS_UPLOAD_DISABLE}"
|
|
22
|
+
|
|
23
|
+
if [[ "$luciq_disable" = true ]] || [[ "$instabug_disable" = true ]]; then
|
|
24
|
+
echo "[Info] Sourcemaps upload was disabled via environment variable, skipping sourcemaps upload..."
|
|
25
|
+
exit 0
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
if [[ "$CONFIGURATION" = "Debug" ]]; then
|
|
29
|
+
echo "[Info] Building in debug mode, skipping sourcemaps upload..."
|
|
30
|
+
exit 0
|
|
31
|
+
fi
|
|
32
|
+
|
|
33
|
+
if [[ -z "$INFOPLIST_FILE" ]] || [[ -z "$PROJECT_DIR" ]]; then
|
|
34
|
+
echo "[Error] Luciq sourcemaps script must be invoked by Xcode"
|
|
35
|
+
exit 0
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
local sourcemap_file=""
|
|
40
|
+
# Use existing sourcemap if available
|
|
41
|
+
if [[ -f "$SOURCEMAP_FILE" ]]; then
|
|
42
|
+
sourcemap_file="$SOURCEMAP_FILE"
|
|
43
|
+
else
|
|
44
|
+
sourcemap_file=$(generate_sourcemaps | tail -n 1)
|
|
45
|
+
fi
|
|
46
|
+
|
|
47
|
+
local js_project_dir="$PROJECT_DIR/.."
|
|
48
|
+
local luciq_dir=$(dirname $(node -p "require.resolve('@luciq/react-native/package.json')"))
|
|
49
|
+
local inferred_token=$(cd $js_project_dir && node $luciq_dir/scripts/find-token.js)
|
|
50
|
+
local app_token=$(resolve_var "App Token" "LUCIQ_APP_TOKEN" "$inferred_token" | tail -n 1)
|
|
51
|
+
|
|
52
|
+
local inferred_name=$(/usr/libexec/PlistBuddy -c 'print CFBundleShortVersionString' "$PROJECT_DIR/$INFOPLIST_FILE")
|
|
53
|
+
local version_name=$(resolve_var "Version Name" "LUCIQ_APP_VERSION_NAME" "$inferred_name" | tail -n 1)
|
|
54
|
+
|
|
55
|
+
local inferred_code=$(/usr/libexec/PlistBuddy -c 'print CFBundleVersion' "$PROJECT_DIR/$INFOPLIST_FILE")
|
|
56
|
+
local version_code=$(resolve_var "Version Code" "LUCIQ_APP_VERSION_CODE" "$inferred_code" | tail -n 1)
|
|
57
|
+
|
|
58
|
+
if [ -n "$sourcemap_file" ]; then
|
|
59
|
+
node $luciq_dir/bin/index.js upload-sourcemaps \
|
|
60
|
+
--platform ios \
|
|
61
|
+
--file $sourcemap_file \
|
|
62
|
+
--token $app_token \
|
|
63
|
+
--name $version_name \
|
|
64
|
+
--code $version_code
|
|
65
|
+
fi
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
generate_sourcemaps() {
|
|
69
|
+
local react_native_dir=$(dirname $(node -p "require.resolve('react-native/package.json')"))
|
|
70
|
+
|
|
71
|
+
# Fixes an issue with react-native prior to v0.67.0
|
|
72
|
+
# For more info: https://github.com/facebook/react-native/issues/32168
|
|
73
|
+
export RN_DIR=$react_native_dir
|
|
74
|
+
|
|
75
|
+
# Used withing `react-native-xcode.sh` to generate sourcemap file
|
|
76
|
+
export SOURCEMAP_FILE="$(pwd)/main.jsbundle.map";
|
|
77
|
+
|
|
78
|
+
source "$react_native_dir/scripts/react-native-xcode.sh"
|
|
79
|
+
|
|
80
|
+
if [[ ! -f "$SOURCEMAP_FILE" ]]; then
|
|
81
|
+
echo "[Error] Unable to find source map file at: $SOURCEMAP_FILE"
|
|
82
|
+
exit 0
|
|
83
|
+
fi
|
|
84
|
+
|
|
85
|
+
echo $SOURCEMAP_FILE
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
resolve_var() {
|
|
89
|
+
local name=$1
|
|
90
|
+
local env_key=$2
|
|
91
|
+
local default_value=$3
|
|
92
|
+
|
|
93
|
+
# First try LUCIQ environment variable
|
|
94
|
+
local luciq_env_key="$env_key"
|
|
95
|
+
local luciq_env_value="${!luciq_env_key}"
|
|
96
|
+
|
|
97
|
+
# Then try INSTABUG environment variable as fallback
|
|
98
|
+
local instabug_env_key="${env_key/LUCIQ_/INSTABUG_}"
|
|
99
|
+
local instabug_env_value="${!instabug_env_key}"
|
|
100
|
+
|
|
101
|
+
# Use LUCIQ value if available, otherwise use INSTABUG value
|
|
102
|
+
local env_value="${luciq_env_value:-$instabug_env_value}"
|
|
103
|
+
|
|
104
|
+
if [[ -n "$env_value" ]] && [[ -n "$default_value" ]] && [[ "$env_value" != "$default_value" ]]; then
|
|
105
|
+
echo "[Warning] Environment variable \`$env_key\` might have incorrect value, make sure this was intentional:"
|
|
106
|
+
echo " Environment Value: $env_value"
|
|
107
|
+
echo " Default Value: $default_value"
|
|
108
|
+
fi
|
|
109
|
+
|
|
110
|
+
local value="${env_value:-$default_value}"
|
|
111
|
+
|
|
112
|
+
if [[ -z "$value" ]]; then
|
|
113
|
+
echo "[Error] Unable to find $name! Set the environment variable \`$env_key\` or \`$instabug_env_key\` and try again."
|
|
114
|
+
exit 0
|
|
115
|
+
fi
|
|
116
|
+
|
|
117
|
+
echo $value
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
main "$@"; exit
|