@bugfender/rn-bugfender 1.1.4 → 2.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.
Files changed (285) hide show
  1. package/README.md +147 -96
  2. package/RnBugfender.podspec +21 -0
  3. package/android/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  4. package/android/.gradle/{6.1.1 → 7.1/dependencies-accessors}/gc.properties +0 -0
  5. package/android/.gradle/{6.1.1/javaCompile/taskHistory.bin → 7.1/executionHistory/executionHistory.bin} +0 -0
  6. package/android/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  7. package/android/.gradle/{6.1.1 → 7.1}/fileChanges/last-build.bin +0 -0
  8. package/android/.gradle/{6.1.1/fileHashes/resourceHashesCache.bin → 7.1/fileHashes/fileHashes.bin} +0 -0
  9. package/android/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  10. package/android/{build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt → .gradle/7.1/gc.properties} +0 -0
  11. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  12. package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
  13. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  14. package/android/.gradle/checksums/checksums.lock +0 -0
  15. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  16. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  17. package/android/.idea/compiler.xml +6 -0
  18. package/android/.idea/gradle.xml +1 -3
  19. package/android/.idea/jarRepositories.xml +12 -17
  20. package/android/.idea/misc.xml +4 -1
  21. package/android/.idea/runConfigurations.xml +10 -0
  22. package/android/.idea/uiDesigner.xml +124 -0
  23. package/android/build.gradle +43 -85
  24. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  25. package/android/gradle/wrapper/gradle-wrapper.properties +1 -2
  26. package/android/gradlew +34 -21
  27. package/android/gradlew.bat +24 -19
  28. package/android/src/main/AndroidManifest.xml +4 -3
  29. package/android/src/main/java/com/bugfender/react/{RNBugfenderModule.java → RnBugfenderModule.java} +44 -15
  30. package/android/src/main/java/com/bugfender/react/RnBugfenderPackage.java +28 -0
  31. package/ios/RnBugfender.h +5 -0
  32. package/ios/{RNBugfender.m → RnBugfender.m} +30 -9
  33. package/ios/{RNBugfender.xcodeproj → RnBugfender.xcodeproj}/project.pbxproj +42 -37
  34. package/ios/RnBugfender.xcodeproj/project.xcworkspace/xcuserdata/fj.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  35. package/ios/{RNBugfender.xcodeproj → RnBugfender.xcodeproj}/xcuserdata/fj.xcuserdatad/xcschemes/xcschememanagement.plist +1 -1
  36. package/lib/commonjs/bugfender.js +338 -0
  37. package/lib/commonjs/bugfender.js.map +1 -0
  38. package/lib/commonjs/index.js +28 -0
  39. package/lib/commonjs/index.js.map +1 -0
  40. package/lib/commonjs/index.web.js +30 -0
  41. package/lib/commonjs/index.web.js.map +1 -0
  42. package/lib/commonjs/override-console-methods.js +91 -0
  43. package/lib/commonjs/override-console-methods.js.map +1 -0
  44. package/lib/commonjs/print-to-console.js +78 -0
  45. package/lib/commonjs/print-to-console.js.map +1 -0
  46. package/lib/commonjs/sdk-options.js +75 -0
  47. package/lib/commonjs/sdk-options.js.map +1 -0
  48. package/lib/commonjs/string-formatter.js +55 -0
  49. package/lib/commonjs/string-formatter.js.map +1 -0
  50. package/lib/commonjs/types/device.js +2 -0
  51. package/lib/commonjs/types/device.js.map +1 -0
  52. package/lib/commonjs/types/log.js +35 -0
  53. package/lib/commonjs/types/log.js.map +1 -0
  54. package/lib/commonjs/types/sdk-options.js +57 -0
  55. package/lib/commonjs/types/sdk-options.js.map +1 -0
  56. package/lib/commonjs/user-feedback.js +31 -0
  57. package/lib/commonjs/user-feedback.js.map +1 -0
  58. package/lib/commonjs/utilities.js +18 -0
  59. package/lib/commonjs/utilities.js.map +1 -0
  60. package/lib/module/bugfender.js +323 -0
  61. package/lib/module/bugfender.js.map +1 -0
  62. package/lib/module/index.js +6 -0
  63. package/lib/module/index.js.map +1 -0
  64. package/lib/module/index.web.js +5 -0
  65. package/lib/module/index.web.js.map +1 -0
  66. package/lib/module/override-console-methods.js +75 -0
  67. package/lib/module/override-console-methods.js.map +1 -0
  68. package/lib/module/print-to-console.js +67 -0
  69. package/lib/module/print-to-console.js.map +1 -0
  70. package/lib/module/sdk-options.js +65 -0
  71. package/lib/module/sdk-options.js.map +1 -0
  72. package/lib/module/string-formatter.js +45 -0
  73. package/lib/module/string-formatter.js.map +1 -0
  74. package/lib/module/types/device.js +2 -0
  75. package/lib/module/types/device.js.map +1 -0
  76. package/lib/module/types/log.js +24 -0
  77. package/lib/module/types/log.js.map +1 -0
  78. package/lib/module/types/sdk-options.js +47 -0
  79. package/lib/module/types/sdk-options.js.map +1 -0
  80. package/lib/module/user-feedback.js +22 -0
  81. package/lib/module/user-feedback.js.map +1 -0
  82. package/lib/module/utilities.js +11 -0
  83. package/lib/module/utilities.js.map +1 -0
  84. package/lib/typescript/bugfender.d.ts +163 -0
  85. package/lib/typescript/index.d.ts +5 -0
  86. package/lib/typescript/index.web.d.ts +4 -0
  87. package/lib/typescript/override-console-methods.d.ts +10 -0
  88. package/lib/typescript/print-to-console.d.ts +14 -0
  89. package/lib/typescript/sdk-options.d.ts +16 -0
  90. package/lib/typescript/string-formatter.d.ts +4 -0
  91. package/lib/typescript/types/device.d.ts +4 -0
  92. package/lib/typescript/types/log.d.ts +59 -0
  93. package/lib/typescript/types/sdk-options.d.ts +40 -0
  94. package/lib/typescript/user-feedback.d.ts +31 -0
  95. package/lib/typescript/utilities.d.ts +1 -0
  96. package/package.json +146 -12
  97. package/src/bugfender.ts +360 -0
  98. package/src/index.tsx +7 -0
  99. package/src/index.web.tsx +5 -0
  100. package/src/override-console-methods.ts +53 -0
  101. package/src/print-to-console.ts +67 -0
  102. package/src/sdk-options.ts +63 -0
  103. package/src/string-formatter.ts +44 -0
  104. package/src/types/device.ts +4 -0
  105. package/src/types/log.ts +75 -0
  106. package/src/types/sdk-options.ts +77 -0
  107. package/src/user-feedback.ts +33 -0
  108. package/src/utilities.ts +8 -0
  109. package/RNBugfender.podspec +0 -24
  110. package/android/.gradle/6.1.1/executionHistory/executionHistory.bin +0 -0
  111. package/android/.gradle/6.1.1/executionHistory/executionHistory.lock +0 -0
  112. package/android/.gradle/6.1.1/fileContent/fileContent.lock +0 -0
  113. package/android/.gradle/6.1.1/fileHashes/fileHashes.bin +0 -0
  114. package/android/.gradle/6.1.1/fileHashes/fileHashes.lock +0 -0
  115. package/android/.gradle/6.1.1/javaCompile/classAnalysis.bin +0 -0
  116. package/android/.gradle/6.1.1/javaCompile/javaCompile.lock +0 -0
  117. package/android/.idea/android.iml +0 -29
  118. package/android/.idea/caches/build_file_checksums.ser +0 -0
  119. package/android/.idea/codeStyles/Project.xml +0 -116
  120. package/android/.idea/libraries/Gradle__android_arch_core_common_1_1_1_jar.xml +0 -11
  121. package/android/.idea/libraries/Gradle__android_arch_core_runtime_1_1_1_aar.xml +0 -12
  122. package/android/.idea/libraries/Gradle__android_arch_lifecycle_common_1_1_1_jar.xml +0 -11
  123. package/android/.idea/libraries/Gradle__android_arch_lifecycle_livedata_1_1_1_aar.xml +0 -12
  124. package/android/.idea/libraries/Gradle__android_arch_lifecycle_livedata_core_1_1_1_aar.xml +0 -12
  125. package/android/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_1_1_aar.xml +0 -12
  126. package/android/.idea/libraries/Gradle__android_arch_lifecycle_viewmodel_1_1_1_aar.xml +0 -12
  127. package/android/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_28_0_0_aar.xml +0 -10
  128. package/android/.idea/libraries/Gradle__com_android_support_appcompat_v7_28_0_0_aar.xml +0 -13
  129. package/android/.idea/libraries/Gradle__com_android_support_asynclayoutinflater_28_0_0_aar.xml +0 -10
  130. package/android/.idea/libraries/Gradle__com_android_support_collections_28_0_0_jar.xml +0 -9
  131. package/android/.idea/libraries/Gradle__com_android_support_coordinatorlayout_28_0_0_aar.xml +0 -13
  132. package/android/.idea/libraries/Gradle__com_android_support_cursoradapter_28_0_0_aar.xml +0 -10
  133. package/android/.idea/libraries/Gradle__com_android_support_customview_28_0_0_aar.xml +0 -10
  134. package/android/.idea/libraries/Gradle__com_android_support_documentfile_28_0_0_aar.xml +0 -10
  135. package/android/.idea/libraries/Gradle__com_android_support_drawerlayout_28_0_0_aar.xml +0 -13
  136. package/android/.idea/libraries/Gradle__com_android_support_interpolator_28_0_0_aar.xml +0 -10
  137. package/android/.idea/libraries/Gradle__com_android_support_loader_28_0_0_aar.xml +0 -10
  138. package/android/.idea/libraries/Gradle__com_android_support_localbroadcastmanager_28_0_0_aar.xml +0 -10
  139. package/android/.idea/libraries/Gradle__com_android_support_print_28_0_0_aar.xml +0 -13
  140. package/android/.idea/libraries/Gradle__com_android_support_slidingpanelayout_28_0_0_aar.xml +0 -10
  141. package/android/.idea/libraries/Gradle__com_android_support_support_annotations_28_0_0_jar.xml +0 -9
  142. package/android/.idea/libraries/Gradle__com_android_support_support_compat_28_0_0_aar.xml +0 -13
  143. package/android/.idea/libraries/Gradle__com_android_support_support_core_ui_28_0_0_aar.xml +0 -10
  144. package/android/.idea/libraries/Gradle__com_android_support_support_core_utils_28_0_0_aar.xml +0 -10
  145. package/android/.idea/libraries/Gradle__com_android_support_support_fragment_28_0_0_aar.xml +0 -13
  146. package/android/.idea/libraries/Gradle__com_android_support_support_vector_drawable_28_0_0_aar.xml +0 -10
  147. package/android/.idea/libraries/Gradle__com_android_support_swiperefreshlayout_28_0_0_aar.xml +0 -13
  148. package/android/.idea/libraries/Gradle__com_android_support_versionedparcelable_28_0_0_aar.xml +0 -10
  149. package/android/.idea/libraries/Gradle__com_android_support_viewpager_28_0_0_aar.xml +0 -10
  150. package/android/.idea/libraries/Gradle__com_bugfender_sdk_android_3_0_5_aar.xml +0 -12
  151. package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_1_10_0_aar.xml +0 -12
  152. package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_1_10_0_aar.xml +0 -15
  153. package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_1_10_0_aar.xml +0 -15
  154. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_1_10_0_aar.xml +0 -15
  155. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_1_10_0_aar.xml +0 -15
  156. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_1_10_0_aar.xml +0 -12
  157. package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_11_2_jar.xml +0 -11
  158. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_59_9_aar.xml +0 -17
  159. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_6_0_aar.xml +0 -12
  160. package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2_jar.xml +0 -13
  161. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1_jar.xml +0 -11
  162. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_3_12_1_jar.xml +0 -11
  163. package/android/.idea/libraries/Gradle__com_squareup_okio_okio_1_15_0_jar.xml +0 -13
  164. package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml +0 -13
  165. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/android/support/v4/R.java +0 -12
  166. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/android/support/v7/appcompat/R.java +0 -1248
  167. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/android/support/v7/recyclerview/R.java +0 -40
  168. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/bugfender/android/R.java +0 -55
  169. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/bugfender/react/R.java +0 -1384
  170. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/drawee/R.java +0 -82
  171. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/drawee/backends/pipeline/R.java +0 -82
  172. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/fbcore/R.java +0 -12
  173. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/imagepipeline/R.java +0 -12
  174. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/imagepipeline/backends/okhttp/R.java +0 -12
  175. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/com/facebook/react/R.java +0 -1361
  176. package/android/build/generated/not_namespaced_r_class_sources/debug/generateDebugRFile/out/org/webkit/android_jsc/R.java +0 -12
  177. package/android/build/generated/source/buildConfig/debug/com/bugfender/react/BuildConfig.java +0 -13
  178. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml +0 -11
  179. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output.json +0 -1
  180. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -11
  181. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output.json +0 -1
  182. package/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json +0 -1
  183. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  184. package/android/build/intermediates/compile_library_classes/debug/classes.jar +0 -0
  185. package/android/build/intermediates/compile_only_not_namespaced_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  186. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  187. package/android/build/intermediates/incremental/debug-mergeJniLibs/merge-state +0 -0
  188. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  189. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  190. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  191. package/android/build/intermediates/incremental/packageDebugResources/compile-file-map.properties +0 -1
  192. package/android/build/intermediates/incremental/packageDebugResources/merger.xml +0 -2
  193. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v4/R.class +0 -0
  194. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$anim.class +0 -0
  195. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$attr.class +0 -0
  196. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$bool.class +0 -0
  197. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$color.class +0 -0
  198. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$dimen.class +0 -0
  199. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$drawable.class +0 -0
  200. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$id.class +0 -0
  201. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$integer.class +0 -0
  202. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$layout.class +0 -0
  203. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$string.class +0 -0
  204. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$style.class +0 -0
  205. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R$styleable.class +0 -0
  206. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/appcompat/R.class +0 -0
  207. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/recyclerview/R$attr.class +0 -0
  208. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/recyclerview/R$dimen.class +0 -0
  209. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/recyclerview/R$id.class +0 -0
  210. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/recyclerview/R$styleable.class +0 -0
  211. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v7/recyclerview/R.class +0 -0
  212. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R$color.class +0 -0
  213. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R$drawable.class +0 -0
  214. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R$id.class +0 -0
  215. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R$layout.class +0 -0
  216. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R$string.class +0 -0
  217. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/android/R.class +0 -0
  218. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/BuildConfig.class +0 -0
  219. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$anim.class +0 -0
  220. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$attr.class +0 -0
  221. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$bool.class +0 -0
  222. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$color.class +0 -0
  223. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$dimen.class +0 -0
  224. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$drawable.class +0 -0
  225. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$id.class +0 -0
  226. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$integer.class +0 -0
  227. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$layout.class +0 -0
  228. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$string.class +0 -0
  229. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$style.class +0 -0
  230. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$styleable.class +0 -0
  231. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R$xml.class +0 -0
  232. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/R.class +0 -0
  233. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/RNBugfenderModule.class +0 -0
  234. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/bugfender/react/RNBugfenderPackage.class +0 -0
  235. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/R$attr.class +0 -0
  236. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/R$id.class +0 -0
  237. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/R$styleable.class +0 -0
  238. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/R.class +0 -0
  239. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/backends/pipeline/R$attr.class +0 -0
  240. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/backends/pipeline/R$id.class +0 -0
  241. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/backends/pipeline/R$styleable.class +0 -0
  242. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/drawee/backends/pipeline/R.class +0 -0
  243. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/fbcore/R.class +0 -0
  244. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/imagepipeline/R.class +0 -0
  245. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/imagepipeline/backends/okhttp/R.class +0 -0
  246. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$anim.class +0 -0
  247. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$attr.class +0 -0
  248. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$bool.class +0 -0
  249. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$color.class +0 -0
  250. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$dimen.class +0 -0
  251. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$drawable.class +0 -0
  252. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$id.class +0 -0
  253. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$integer.class +0 -0
  254. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$layout.class +0 -0
  255. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$string.class +0 -0
  256. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$style.class +0 -0
  257. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$styleable.class +0 -0
  258. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R$xml.class +0 -0
  259. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/R.class +0 -0
  260. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/org/webkit/android_jsc/R.class +0 -0
  261. package/android/build/intermediates/library_java_res/debug/res.jar +0 -0
  262. package/android/build/intermediates/library_manifest/debug/AndroidManifest.xml +0 -11
  263. package/android/build/intermediates/merged_manifests/debug/output.json +0 -1
  264. package/android/build/intermediates/merged_manifests/debug/processDebugManifest/merged/AndroidManifest.xml +0 -11
  265. package/android/build/intermediates/merged_manifests/debug/processDebugManifest/merged/output.json +0 -1
  266. package/android/build/intermediates/packaged-classes/debug/classes.jar +0 -0
  267. package/android/build/intermediates/res/symbol-table-with-package/debug/package-aware-r.txt +0 -1309
  268. package/android/build/intermediates/runtime_library_classes/debug/classes.jar +0 -0
  269. package/android/build/intermediates/symbols/debug/R.txt +0 -1783
  270. package/android/build/intermediates/transforms/mergeJavaRes/debug/0.jar +0 -0
  271. package/android/build/intermediates/transforms/mergeJavaRes/debug/__content__.json +0 -1
  272. package/android/build/intermediates/transforms/mergeJniLibs/debug/__content__.json +0 -1
  273. package/android/build/outputs/aar/android.aar +0 -0
  274. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -37
  275. package/android/local.properties +0 -1
  276. package/android/src/main/java/com/bugfender/react/RNBugfenderPackage.java +0 -29
  277. package/bugfender.js +0 -217
  278. package/example/.babelrc +0 -3
  279. package/example/.watchmanconfig +0 -1
  280. package/example/App.js +0 -121
  281. package/ios/RNBugfender.h +0 -7
  282. package/ios/RNBugfender.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  283. package/ios/RNBugfender.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  284. package/ios/RNBugfender.xcodeproj/project.xcworkspace/xcuserdata/fj.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  285. package/ios/RNBugfender.xcodeproj/xcuserdata/rubenvot.xcuserdatad/xcschemes/xcschememanagement.plist +0 -19
@@ -0,0 +1,323 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { NativeModules, Platform } from 'react-native';
4
+ import { DefaultUserFeedbackOptions } from './user-feedback';
5
+ import { StringFormatter } from './string-formatter';
6
+ import { LogLevel } from "./types/log";
7
+ import { OverrideConsoleMethods } from "./override-console-methods";
8
+ import { PrintToConsole } from "./print-to-console";
9
+ import { SDKOptions } from "./sdk-options";
10
+ const LINKING_ERROR = `The package '@bugfender/rn-bugfender' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
11
+ ios: "- You have run 'pod install'\n",
12
+ default: ''
13
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo managed workflow\n';
14
+ const RnBugfender = NativeModules.RnBugfender ? NativeModules.RnBugfender : new Proxy({}, {
15
+ get() {
16
+ throw new Error(LINKING_ERROR);
17
+ }
18
+
19
+ });
20
+
21
+ class BugfenderClass {
22
+ constructor() {
23
+ _defineProperty(this, "stringFormatter", new StringFormatter());
24
+
25
+ _defineProperty(this, "overrideConsoleMethods", new OverrideConsoleMethods(window));
26
+
27
+ _defineProperty(this, "printToConsole", new PrintToConsole(global.console));
28
+
29
+ _defineProperty(this, "sdkOptions", new SDKOptions());
30
+
31
+ _defineProperty(this, "initialized", false);
32
+ }
33
+
34
+ async init(options) {
35
+ if (!this.initialized) {
36
+ var _validatedOptions$pri;
37
+
38
+ const validatedOptions = this.sdkOptions.init(options); // Needs to be executed prior initialization
39
+
40
+ if (typeof options.deviceName !== 'undefined') {
41
+ RnBugfender.overrideDeviceName(options.deviceName);
42
+ } // Library initialization
43
+
44
+
45
+ Platform.OS === 'ios' ? RnBugfender.activateLogger(validatedOptions.appKey) : RnBugfender.init(validatedOptions.appKey, false);
46
+
47
+ if (typeof validatedOptions.apiURL !== 'undefined') {
48
+ RnBugfender.setApiUrl(validatedOptions.apiURL);
49
+ }
50
+
51
+ if (typeof validatedOptions.baseURL !== 'undefined') {
52
+ RnBugfender.setBaseUrl(validatedOptions.baseURL);
53
+ }
54
+
55
+ if (validatedOptions.enableLogcatLogging) {
56
+ RnBugfender.enableLogcatLogging();
57
+ }
58
+
59
+ if (validatedOptions.logUIEvents) {
60
+ RnBugfender.enableUIEventLogging();
61
+ }
62
+
63
+ if (validatedOptions.registerErrorHandler) {
64
+ RnBugfender.enableCrashReporting();
65
+ }
66
+
67
+ if (validatedOptions.overrideConsoleMethods) {
68
+ this.overrideConsoleMethods.init(this.stringFormatter);
69
+ }
70
+
71
+ this.printToConsole.init((_validatedOptions$pri = validatedOptions.printToConsole) !== null && _validatedOptions$pri !== void 0 ? _validatedOptions$pri : true);
72
+ this.initialized = true;
73
+ }
74
+ }
75
+ /**
76
+ * @returns Bugfender dashboard URL for the device
77
+ */
78
+
79
+
80
+ getDeviceURL() {
81
+ return RnBugfender.getDeviceUrl();
82
+ }
83
+ /**
84
+ * @returns Bugfender dashboard URL for the current session
85
+ */
86
+
87
+
88
+ getSessionURL() {
89
+ return RnBugfender.getSessionUrl();
90
+ }
91
+ /**
92
+ * Show a modal which asks for feedback. Once the user closes the modal or sends the feedback
93
+ * the returned promise resolves with the result.
94
+ *
95
+ * ```typescript
96
+ * Bugfender.getUserFeedback().then((result) => {
97
+ * if (result.isSent) {
98
+ * // User sent the feedback
99
+ * // `result.feedbackURL` contains the Bugfender feedback URL
100
+ * } else {
101
+ * // User closed the modal without sending the feedback
102
+ * }
103
+ * });
104
+ * ```
105
+ *
106
+ * @param options Options object to configure modal strings
107
+ * @returns Promise which resolves once the user closes the modal or sends the feedback
108
+ */
109
+
110
+
111
+ async getUserFeedback(options) {
112
+ return new Promise(resolve => {
113
+ var _options;
114
+
115
+ options = { ...new DefaultUserFeedbackOptions(),
116
+ ...((_options = options) !== null && _options !== void 0 ? _options : {})
117
+ };
118
+ return RnBugfender.showUserFeedback(options.title, options.hint, options.subjectPlaceholder, options.feedbackPlaceholder, options.submitLabel, options.closeLabel).then(value => {
119
+ resolve({
120
+ isSent: true,
121
+ feedbackURL: value
122
+ });
123
+ }, _ => {
124
+ resolve({
125
+ isSent: false
126
+ });
127
+ });
128
+ });
129
+ }
130
+ /**
131
+ * @param obj A JavaScript value to output
132
+ * @param objs List of optional JavaScript values to output
133
+ */
134
+
135
+
136
+ log() {
137
+ for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {
138
+ parameters[_key] = arguments[_key];
139
+ }
140
+
141
+ this.printToConsole.log(...parameters);
142
+ let message = this.stringFormatter.format([...parameters]);
143
+ RnBugfender.debug('', message);
144
+ }
145
+ /**
146
+ * @param obj A JavaScript value to output
147
+ * @param objs List of optional JavaScript values to output
148
+ */
149
+
150
+
151
+ warn() {
152
+ for (var _len2 = arguments.length, parameters = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
153
+ parameters[_key2] = arguments[_key2];
154
+ }
155
+
156
+ this.printToConsole.warn(...parameters);
157
+ let message = this.stringFormatter.format([...parameters]);
158
+ RnBugfender.warning('', message);
159
+ }
160
+ /**
161
+ * @param obj A JavaScript value to output
162
+ * @param objs List of optional JavaScript values to output
163
+ */
164
+
165
+
166
+ error() {
167
+ for (var _len3 = arguments.length, parameters = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
168
+ parameters[_key3] = arguments[_key3];
169
+ }
170
+
171
+ this.printToConsole.error(...parameters);
172
+ let message = this.stringFormatter.format([...parameters]);
173
+ RnBugfender.error('', message);
174
+ }
175
+ /**
176
+ * @param obj A JavaScript value to output
177
+ * @param objs List of optional JavaScript values to output
178
+ */
179
+
180
+
181
+ trace() {
182
+ for (var _len4 = arguments.length, parameters = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
183
+ parameters[_key4] = arguments[_key4];
184
+ }
185
+
186
+ this.printToConsole.trace(...parameters);
187
+ let message = this.stringFormatter.format([...parameters]);
188
+ RnBugfender.trace('', message);
189
+ }
190
+ /**
191
+ * @param obj A JavaScript value to output
192
+ * @param objs List of optional JavaScript values to output
193
+ */
194
+
195
+
196
+ info() {
197
+ for (var _len5 = arguments.length, parameters = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
198
+ parameters[_key5] = arguments[_key5];
199
+ }
200
+
201
+ this.printToConsole.info(...parameters);
202
+ let message = this.stringFormatter.format([...parameters]);
203
+ RnBugfender.info('', message);
204
+ }
205
+ /**
206
+ * @param obj A JavaScript value to output
207
+ * @param objs List of optional JavaScript values to output
208
+ */
209
+
210
+
211
+ fatal() {
212
+ for (var _len6 = arguments.length, parameters = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
213
+ parameters[_key6] = arguments[_key6];
214
+ }
215
+
216
+ this.printToConsole.error(...parameters);
217
+ let message = this.stringFormatter.format([...parameters]);
218
+ RnBugfender.fatal('', message);
219
+ }
220
+ /**
221
+ * Remove a device associated key-value pair. [Learn more](https://bugfender.com/blog/associated-device-information/).
222
+ *
223
+ * @param key Key identifier
224
+ */
225
+
226
+
227
+ removeDeviceKey(key) {
228
+ RnBugfender.removeDeviceKey(key);
229
+ this.printToConsole.info(`Device key "${key}" removed`);
230
+ }
231
+ /**
232
+ * Use this method if you need more control over the data sent while logging. See `ILogEntry` interface reference to see all the accepted properties.
233
+ *
234
+ * @param log Log object that complies with `ILogEntry` interface.
235
+ */
236
+
237
+
238
+ sendLog(log) {
239
+ var _log$line, _log$method, _log$file, _log$level, _log$tag, _log$text;
240
+
241
+ this.printToConsole.printLog(log);
242
+ RnBugfender.log((_log$line = log.line) !== null && _log$line !== void 0 ? _log$line : 0, (_log$method = log.method) !== null && _log$method !== void 0 ? _log$method : '', (_log$file = log.file) !== null && _log$file !== void 0 ? _log$file : '', (_log$level = log.level) !== null && _log$level !== void 0 ? _log$level : LogLevel.Debug, (_log$tag = log.tag) !== null && _log$tag !== void 0 ? _log$tag : '', (_log$text = log.text) !== null && _log$text !== void 0 ? _log$text : '');
243
+ }
244
+ /**
245
+ * Send an issue.
246
+ *
247
+ * @param title - Title
248
+ * @param text - Text content
249
+ * @returns Bugfender dashboard URL for the issue.
250
+ */
251
+
252
+
253
+ sendIssue(title, text) {
254
+ this.printToConsole.warn(`Issue: ${title}.\n${text}`);
255
+ return RnBugfender.sendIssue(title, text);
256
+ }
257
+ /**
258
+ * Send a crash report.
259
+ *
260
+ * @param title - Title
261
+ * @param text - Text content
262
+ * @returns Bugfender dashboard URL for the crash.
263
+ */
264
+
265
+
266
+ sendCrash(title, text) {
267
+ this.printToConsole.error(`Crash: ${title}.\n${text}`);
268
+ return RnBugfender.sendCrash(title, text);
269
+ }
270
+ /**
271
+ * Send an user feedback.
272
+ *
273
+ * @param title - Title/Subject
274
+ * @param text - Feedback text
275
+ * @returns Bugfender dashboard URL for the feedback.
276
+ */
277
+
278
+
279
+ sendUserFeedback(title, text) {
280
+ this.printToConsole.info(`User Feedback: ${title}.\n${text}`);
281
+ return RnBugfender.sendUserFeedback(title, text);
282
+ }
283
+ /**
284
+ * Set a device associated key-value pair. [Learn more](https://bugfender.com/blog/associated-device-information/).
285
+ *
286
+ * @param key Key identifier.
287
+ * @param value Value.
288
+ */
289
+
290
+
291
+ setDeviceKey(key, value) {
292
+ this.printToConsole.info(`Device key "${key}" set to "${value}"`);
293
+
294
+ if (typeof value === 'boolean') {
295
+ RnBugfender.setDeviceBoolean(key, value);
296
+ } else if (typeof value === 'string') {
297
+ RnBugfender.setDeviceString(key, value);
298
+ } else {
299
+ // typeof value === 'number'
300
+ if (Number.isInteger(value)) {
301
+ RnBugfender.setDeviceInteger(key, value);
302
+ } else {
303
+ RnBugfender.setDeviceFloat(key, value);
304
+ }
305
+ }
306
+ }
307
+ /**
308
+ * Synchronizes all logs and issues with the server once, regardless if this device is enabled or not.
309
+ *
310
+ * Logs and issues are synchronized only once. After that, the logs are again sent according to the enabled flag
311
+ * in the Bugfender Console.
312
+ */
313
+
314
+
315
+ forceSendOnce() {
316
+ this.printToConsole.info(`Force send once`);
317
+ RnBugfender.forceSendOnce();
318
+ }
319
+
320
+ }
321
+
322
+ export { BugfenderClass, RnBugfender };
323
+ //# sourceMappingURL=bugfender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["bugfender.ts"],"names":["NativeModules","Platform","DefaultUserFeedbackOptions","StringFormatter","LogLevel","OverrideConsoleMethods","PrintToConsole","SDKOptions","LINKING_ERROR","select","ios","default","RnBugfender","Proxy","get","Error","BugfenderClass","window","global","console","init","options","initialized","validatedOptions","sdkOptions","deviceName","overrideDeviceName","OS","activateLogger","appKey","apiURL","setApiUrl","baseURL","setBaseUrl","enableLogcatLogging","logUIEvents","enableUIEventLogging","registerErrorHandler","enableCrashReporting","overrideConsoleMethods","stringFormatter","printToConsole","getDeviceURL","getDeviceUrl","getSessionURL","getSessionUrl","getUserFeedback","Promise","resolve","showUserFeedback","title","hint","subjectPlaceholder","feedbackPlaceholder","submitLabel","closeLabel","then","value","isSent","feedbackURL","_","log","parameters","message","format","debug","warn","warning","error","trace","info","fatal","removeDeviceKey","key","sendLog","printLog","line","method","file","level","Debug","tag","text","sendIssue","sendCrash","sendUserFeedback","setDeviceKey","setDeviceBoolean","setDeviceString","Number","isInteger","setDeviceInteger","setDeviceFloat","forceSendOnce"],"mappings":"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","sourcesContent":["import { NativeModules, Platform } from 'react-native';\nimport type { ISDKOptions } from './types/sdk-options';\nimport type { UserFeedbackOptions, UserFeedbackResult } from './user-feedback';\nimport { DefaultUserFeedbackOptions } from './user-feedback';\nimport type { DeviceKeyValue } from './types/device';\nimport type { ILogEntry } from './types/log';\nimport { StringFormatter } from './string-formatter';\nimport { LogLevel } from \"./types/log\";\nimport { OverrideConsoleMethods } from \"./override-console-methods\";\nimport { PrintToConsole } from \"./print-to-console\";\nimport { SDKOptions } from \"./sdk-options\";\n\nconst LINKING_ERROR =\n `The package '@bugfender/rn-bugfender' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nconst RnBugfender = NativeModules.RnBugfender\n ? NativeModules.RnBugfender\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nclass BugfenderClass {\n private stringFormatter = new StringFormatter();\n private overrideConsoleMethods = new OverrideConsoleMethods(window);\n private printToConsole = new PrintToConsole(global.console);\n private sdkOptions: SDKOptions = new SDKOptions();\n private initialized = false;\n\n public async init(options: ISDKOptions): Promise<void> {\n if (!this.initialized) {\n const validatedOptions = this.sdkOptions.init(options);\n\n // Needs to be executed prior initialization\n if (typeof options.deviceName !== 'undefined') {\n RnBugfender.overrideDeviceName(options.deviceName);\n }\n\n // Library initialization\n Platform.OS === 'ios'\n ? RnBugfender.activateLogger(validatedOptions.appKey)\n : RnBugfender.init(validatedOptions.appKey, false);\n\n if (typeof validatedOptions.apiURL !== 'undefined') {\n RnBugfender.setApiUrl(validatedOptions.apiURL);\n }\n\n if (typeof validatedOptions.baseURL !== 'undefined') {\n RnBugfender.setBaseUrl(validatedOptions.baseURL);\n }\n\n if (validatedOptions.enableLogcatLogging) {\n RnBugfender.enableLogcatLogging();\n }\n\n if (validatedOptions.logUIEvents) {\n RnBugfender.enableUIEventLogging();\n }\n\n if (validatedOptions.registerErrorHandler) {\n RnBugfender.enableCrashReporting();\n }\n\n if (validatedOptions.overrideConsoleMethods) {\n this.overrideConsoleMethods.init(this.stringFormatter);\n }\n\n this.printToConsole.init(validatedOptions.printToConsole ?? true);\n\n this.initialized = true;\n }\n }\n\n /**\n * @returns Bugfender dashboard URL for the device\n */\n public getDeviceURL(): Promise<string> {\n return RnBugfender.getDeviceUrl();\n }\n\n /**\n * @returns Bugfender dashboard URL for the current session\n */\n public getSessionURL(): Promise<string> {\n return RnBugfender.getSessionUrl();\n }\n\n /**\n * Show a modal which asks for feedback. Once the user closes the modal or sends the feedback\n * the returned promise resolves with the result.\n *\n * ```typescript\n * Bugfender.getUserFeedback().then((result) => {\n * if (result.isSent) {\n * // User sent the feedback\n * // `result.feedbackURL` contains the Bugfender feedback URL\n * } else {\n * // User closed the modal without sending the feedback\n * }\n * });\n * ```\n *\n * @param options Options object to configure modal strings\n * @returns Promise which resolves once the user closes the modal or sends the feedback\n */\n public async getUserFeedback(\n options?: UserFeedbackOptions\n ): Promise<UserFeedbackResult> {\n return new Promise<UserFeedbackResult>((resolve) => {\n options = {\n ...new DefaultUserFeedbackOptions(),\n ...(options ?? {}),\n };\n\n return RnBugfender.showUserFeedback(\n options.title,\n options.hint,\n options.subjectPlaceholder,\n options.feedbackPlaceholder,\n options.submitLabel,\n options.closeLabel\n ).then(\n (value: string) => {\n resolve({\n isSent: true,\n feedbackURL: value,\n });\n },\n (_: any) => {\n resolve({\n isSent: false,\n });\n }\n );\n });\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public log(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public log(msg: string, ...subst: unknown[]): void;\n public log(...parameters: unknown[]): void {\n this.printToConsole.log(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.debug('', message);\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public warn(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public warn(msg: string, ...subst: unknown[]): void;\n public warn(...parameters: unknown[]): void {\n this.printToConsole.warn(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.warning('', message);\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public error(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public error(msg: string, ...subst: unknown[]): void;\n public error(...parameters: unknown[]): void {\n this.printToConsole.error(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.error('', message);\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public trace(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public trace(msg: string, ...subst: unknown[]): void;\n public trace(...parameters: unknown[]): void {\n this.printToConsole.trace(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.trace('', message);\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public info(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public info(msg: string, ...subst: unknown[]): void;\n public info(...parameters: unknown[]): void {\n this.printToConsole.info(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.info('', message);\n }\n\n /**\n * @param obj A JavaScript value to output\n * @param objs List of optional JavaScript values to output\n */\n public fatal(obj: unknown, ...objs: unknown[]): void;\n /**\n * String message with optional substitutions. This mimicks que the `window.console` template messages. [Learn more in MDN](https://developer.mozilla.org/en-US/docs/Web/API/console#Using_string_substitutions).\n *\n * @param msg Message with optional `%` placeholders\n * @param subst Optional substitutions list\n */\n public fatal(msg: string, ...subst: unknown[]): void;\n public fatal(...parameters: unknown[]): void {\n this.printToConsole.error(...parameters);\n\n let message = this.stringFormatter.format([...parameters]);\n RnBugfender.fatal('', message);\n }\n\n /**\n * Remove a device associated key-value pair. [Learn more](https://bugfender.com/blog/associated-device-information/).\n *\n * @param key Key identifier\n */\n public removeDeviceKey(key: string): void {\n RnBugfender.removeDeviceKey(key);\n this.printToConsole.info(`Device key \"${key}\" removed`);\n }\n\n /**\n * Use this method if you need more control over the data sent while logging. See `ILogEntry` interface reference to see all the accepted properties.\n *\n * @param log Log object that complies with `ILogEntry` interface.\n */\n public sendLog(log: ILogEntry): void {\n this.printToConsole.printLog(log);\n\n RnBugfender.log(\n log.line ?? 0,\n log.method ?? '',\n log.file ?? '',\n log.level ?? LogLevel.Debug,\n log.tag ?? '',\n log.text ?? ''\n );\n }\n\n /**\n * Send an issue.\n *\n * @param title - Title\n * @param text - Text content\n * @returns Bugfender dashboard URL for the issue.\n */\n public sendIssue(title: string, text: string): Promise<string> {\n this.printToConsole.warn(`Issue: ${title}.\\n${text}`);\n return RnBugfender.sendIssue(title, text);\n }\n\n /**\n * Send a crash report.\n *\n * @param title - Title\n * @param text - Text content\n * @returns Bugfender dashboard URL for the crash.\n */\n public sendCrash(title: string, text: string): Promise<string> {\n this.printToConsole.error(`Crash: ${title}.\\n${text}`);\n return RnBugfender.sendCrash(title, text);\n }\n\n /**\n * Send an user feedback.\n *\n * @param title - Title/Subject\n * @param text - Feedback text\n * @returns Bugfender dashboard URL for the feedback.\n */\n public sendUserFeedback(title: string, text: string): Promise<string> {\n this.printToConsole.info(`User Feedback: ${title}.\\n${text}`);\n return RnBugfender.sendUserFeedback(title, text);\n }\n\n /**\n * Set a device associated key-value pair. [Learn more](https://bugfender.com/blog/associated-device-information/).\n *\n * @param key Key identifier.\n * @param value Value.\n */\n public setDeviceKey(key: string, value: DeviceKeyValue): void {\n this.printToConsole.info(`Device key \"${key}\" set to \"${value}\"`);\n\n if (typeof value === 'boolean') {\n RnBugfender.setDeviceBoolean(key, value);\n } else if (typeof value === 'string') {\n RnBugfender.setDeviceString(key, value);\n } else {\n // typeof value === 'number'\n if (Number.isInteger(value)) {\n RnBugfender.setDeviceInteger(key, value);\n } else {\n RnBugfender.setDeviceFloat(key, value);\n }\n }\n }\n\n /**\n * Synchronizes all logs and issues with the server once, regardless if this device is enabled or not.\n *\n * Logs and issues are synchronized only once. After that, the logs are again sent according to the enabled flag\n * in the Bugfender Console.\n */\n public forceSendOnce(): void {\n this.printToConsole.info(`Force send once`);\n RnBugfender.forceSendOnce();\n }\n}\n\nexport {\n BugfenderClass, RnBugfender\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import { LogLevel } from './types/log';
2
+ import { SDKOptionsBuilder } from './types/sdk-options';
3
+ import { BugfenderClass } from './bugfender';
4
+ const Bugfender = new BugfenderClass();
5
+ export { Bugfender, LogLevel, SDKOptionsBuilder };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.tsx"],"names":["LogLevel","SDKOptionsBuilder","BugfenderClass","Bugfender"],"mappings":"AAAA,SAASA,QAAT,QAAyB,aAAzB;AACA,SAASC,iBAAT,QAAkC,qBAAlC;AACA,SAASC,cAAT,QAA+B,aAA/B;AAEA,MAAMC,SAAS,GAAG,IAAID,cAAJ,EAAlB;AAEA,SAASC,SAAT,EAAoBH,QAApB,EAA8BC,iBAA9B","sourcesContent":["import { LogLevel } from './types/log';\nimport { SDKOptionsBuilder } from './types/sdk-options';\nimport { BugfenderClass } from './bugfender';\n\nconst Bugfender = new BugfenderClass();\n\nexport { Bugfender, LogLevel, SDKOptionsBuilder };\n"]}
@@ -0,0 +1,5 @@
1
+ import { LogLevel } from './types/log';
2
+ import { SDKOptionsBuilder } from './types/sdk-options';
3
+ import { Bugfender } from '@bugfender/sdk';
4
+ export { Bugfender, LogLevel, SDKOptionsBuilder };
5
+ //# sourceMappingURL=index.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.web.tsx"],"names":["LogLevel","SDKOptionsBuilder","Bugfender"],"mappings":"AAAA,SAASA,QAAT,QAAyB,aAAzB;AACA,SAASC,iBAAT,QAAkC,qBAAlC;AACA,SAASC,SAAT,QAA0B,gBAA1B;AAEA,SAASA,SAAT,EAAoBF,QAApB,EAA8BC,iBAA9B","sourcesContent":["import { LogLevel } from './types/log';\nimport { SDKOptionsBuilder } from './types/sdk-options';\nimport { Bugfender } from '@bugfender/sdk';\n\nexport { Bugfender, LogLevel, SDKOptionsBuilder };\n"]}
@@ -0,0 +1,75 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { RnBugfender } from "./bugfender";
3
+
4
+ /**
5
+ * Overrides the `window.console` methods in order to execute the Bugfender equivalent logging
6
+ * methods while keeping the original browser functionality.
7
+ */
8
+ export class OverrideConsoleMethods {
9
+ constructor(window) {
10
+ this.window = window;
11
+ }
12
+
13
+ init(stringFormatter) {
14
+ this.window.console = function (console) {
15
+ return { ...console,
16
+ log: function () {
17
+ for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {
18
+ parameters[_key] = arguments[_key];
19
+ }
20
+
21
+ console.log(...parameters);
22
+ let message = stringFormatter.format([...parameters]);
23
+ RnBugfender.debug('', message);
24
+ },
25
+ debug: function () {
26
+ for (var _len2 = arguments.length, parameters = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
27
+ parameters[_key2] = arguments[_key2];
28
+ }
29
+
30
+ console.debug(...parameters);
31
+ let message = stringFormatter.format([...parameters]);
32
+ RnBugfender.debug('', message);
33
+ },
34
+ trace: function () {
35
+ for (var _len3 = arguments.length, parameters = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
36
+ parameters[_key3] = arguments[_key3];
37
+ }
38
+
39
+ console.trace(...parameters);
40
+ let message = stringFormatter.format([...parameters]);
41
+ RnBugfender.trace('', message);
42
+ },
43
+ info: function () {
44
+ for (var _len4 = arguments.length, parameters = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
45
+ parameters[_key4] = arguments[_key4];
46
+ }
47
+
48
+ console.info(...parameters);
49
+ let message = stringFormatter.format([...parameters]);
50
+ RnBugfender.info('', message);
51
+ },
52
+ warn: function () {
53
+ for (var _len5 = arguments.length, parameters = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
54
+ parameters[_key5] = arguments[_key5];
55
+ }
56
+
57
+ console.warn(...parameters);
58
+ let message = stringFormatter.format([...parameters]);
59
+ RnBugfender.warning('', message);
60
+ },
61
+ error: function () {
62
+ for (var _len6 = arguments.length, parameters = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
63
+ parameters[_key6] = arguments[_key6];
64
+ }
65
+
66
+ console.error(...parameters);
67
+ let message = stringFormatter.format([...parameters]);
68
+ RnBugfender.error('', message);
69
+ }
70
+ };
71
+ }(this.window.console);
72
+ }
73
+
74
+ }
75
+ //# sourceMappingURL=override-console-methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["override-console-methods.ts"],"names":["RnBugfender","OverrideConsoleMethods","constructor","window","init","stringFormatter","console","log","parameters","message","format","debug","trace","info","warn","warning","error"],"mappings":"AAAA;AACA,SAAQA,WAAR,QAA0B,aAA1B;;AAGA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAN,CAA6B;AAClCC,EAAAA,WAAW,CACCC,MADD,EAET;AAAA,SADUA,MACV,GADUA,MACV;AACD;;AAEMC,EAAAA,IAAI,CAACC,eAAD,EAAyC;AAEjD,SAAKF,MAAN,CAAqBG,OAArB,GAA+B,UAAUA,OAAV,EAA4B;AACzD,aAAO,EACL,GAAGA,OADE;AAELC,QAAAA,GAAG,EAAE,YAAoC;AAAA,4CAAvBC,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACvCF,UAAAA,OAAO,CAACC,GAAR,CAAY,GAAGC,UAAf;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACW,KAAZ,CAAkB,EAAlB,EAAsBF,OAAtB;AACD,SANI;AAOLE,QAAAA,KAAK,EAAE,YAAoC;AAAA,6CAAvBH,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACzCF,UAAAA,OAAO,CAACK,KAAR,CAAc,GAAGH,UAAjB;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACW,KAAZ,CAAkB,EAAlB,EAAsBF,OAAtB;AACD,SAXI;AAYLG,QAAAA,KAAK,EAAE,YAAoC;AAAA,6CAAvBJ,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACzCF,UAAAA,OAAO,CAACM,KAAR,CAAc,GAAGJ,UAAjB;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACY,KAAZ,CAAkB,EAAlB,EAAsBH,OAAtB;AACD,SAhBI;AAiBLI,QAAAA,IAAI,EAAE,YAAoC;AAAA,6CAAvBL,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACxCF,UAAAA,OAAO,CAACO,IAAR,CAAa,GAAGL,UAAhB;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACa,IAAZ,CAAiB,EAAjB,EAAqBJ,OAArB;AACD,SArBI;AAsBLK,QAAAA,IAAI,EAAE,YAAoC;AAAA,6CAAvBN,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACxCF,UAAAA,OAAO,CAACQ,IAAR,CAAa,GAAGN,UAAhB;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACe,OAAZ,CAAoB,EAApB,EAAwBN,OAAxB;AACD,SA1BI;AA2BLO,QAAAA,KAAK,EAAE,YAAoC;AAAA,6CAAvBR,UAAuB;AAAvBA,YAAAA,UAAuB;AAAA;;AACzCF,UAAAA,OAAO,CAACU,KAAR,CAAc,GAAGR,UAAjB;AACA,cAAIC,OAAO,GAAGJ,eAAe,CAACK,MAAhB,CAAuB,CAAC,GAAGF,UAAJ,CAAvB,CAAd;AACAR,UAAAA,WAAW,CAACgB,KAAZ,CAAkB,EAAlB,EAAsBP,OAAtB;AACD;AA/BI,OAAP;AAiCD,KAlC8B,CAkC5B,KAAKN,MAAN,CAAqBG,OAlCQ,CAA/B;AAmCD;;AA3CiC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {RnBugfender} from \"./bugfender\";\nimport type {StringFormatter} from \"./string-formatter\";\n\n/**\n * Overrides the `window.console` methods in order to execute the Bugfender equivalent logging\n * methods while keeping the original browser functionality.\n */\nexport class OverrideConsoleMethods {\n constructor(\n protected window: Window,\n ) {\n }\n\n public init(stringFormatter: StringFormatter): void {\n\n (this.window as any).console = function (console: Console) {\n return {\n ...console,\n log: function (...parameters: unknown[]) {\n console.log(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.debug('', message);\n },\n debug: function (...parameters: unknown[]) {\n console.debug(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.debug('', message);\n },\n trace: function (...parameters: unknown[]) {\n console.trace(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.trace('', message);\n },\n info: function (...parameters: unknown[]) {\n console.info(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.info('', message);\n },\n warn: function (...parameters: unknown[]) {\n console.warn(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.warning('', message);\n },\n error: function (...parameters: unknown[]) {\n console.error(...parameters);\n let message = stringFormatter.format([...parameters]);\n RnBugfender.error('', message);\n },\n };\n }((this.window as any).console);\n }\n}\n"]}
@@ -0,0 +1,67 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { format } from 'util';
4
+ import { LogLevel } from "./types/log";
5
+ export class PrintToConsole {
6
+ constructor(console) {
7
+ this.console = console;
8
+
9
+ _defineProperty(this, "printToConsole", false);
10
+ }
11
+
12
+ init(printToConsole) {
13
+ this.printToConsole = printToConsole;
14
+ }
15
+
16
+ error() {
17
+ if (this.printToConsole) {
18
+ this.console.error(...arguments);
19
+ }
20
+ }
21
+
22
+ info() {
23
+ if (this.printToConsole) {
24
+ this.console.info(...arguments);
25
+ }
26
+ }
27
+
28
+ log() {
29
+ if (this.printToConsole) {
30
+ this.console.log(...arguments);
31
+ }
32
+ }
33
+
34
+ debug() {
35
+ if (this.printToConsole) {
36
+ this.console.debug(...arguments);
37
+ }
38
+ }
39
+
40
+ trace() {
41
+ if (this.printToConsole) {
42
+ this.console.trace(...arguments);
43
+ }
44
+ }
45
+
46
+ warn() {
47
+ if (this.printToConsole) {
48
+ this.console.warn(...arguments);
49
+ }
50
+ }
51
+
52
+ printLog(log) {
53
+ if (this.printToConsole) {
54
+ // Log to browser console
55
+ // debug, warning, error, trace, info, fatal
56
+ const levelToMethod = ['log', 'warn', 'error', 'trace', 'info', 'error'];
57
+ const method = levelToMethod[log.level || LogLevel.Debug];
58
+ const tag = log.tag ? `[${log.tag}] ` : '';
59
+ const location = [log.file || '', log.method || '', log.line || ''].filter(p => p !== '').join(':');
60
+ const message = `${tag}${format(log.text)} ${location}`; // @ts-ignore
61
+
62
+ this.console[method](message);
63
+ }
64
+ }
65
+
66
+ }
67
+ //# sourceMappingURL=print-to-console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["print-to-console.ts"],"names":["format","LogLevel","PrintToConsole","constructor","console","init","printToConsole","error","info","log","debug","trace","warn","printLog","levelToMethod","method","level","Debug","tag","location","file","line","filter","p","join","message","text"],"mappings":";;AAAA,SAAQA,MAAR,QAAqB,MAArB;AAEA,SAAQC,QAAR,QAAuB,aAAvB;AAEA,OAAO,MAAMC,cAAN,CAAqB;AAG1BC,EAAAA,WAAW,CACUC,OADV,EAET;AAAA,SADmBA,OACnB,GADmBA,OACnB;;AAAA,4CAJkC,KAIlC;AACD;;AAEMC,EAAAA,IAAI,CAACC,cAAD,EAAgC;AACzC,SAAKA,cAAL,GAAsBA,cAAtB;AACD;;AAEMC,EAAAA,KAAK,GAAiC;AAC3C,QAAI,KAAKD,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaG,KAAb,CAAmB,YAAnB;AACD;AACF;;AAEMC,EAAAA,IAAI,GAAiC;AAC1C,QAAI,KAAKF,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaI,IAAb,CAAkB,YAAlB;AACD;AACF;;AAEMC,EAAAA,GAAG,GAAiC;AACzC,QAAI,KAAKH,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaK,GAAb,CAAiB,YAAjB;AACD;AACF;;AAEMC,EAAAA,KAAK,GAAiC;AAC3C,QAAI,KAAKJ,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaM,KAAb,CAAmB,YAAnB;AACD;AACF;;AAEMC,EAAAA,KAAK,GAAiC;AAC3C,QAAI,KAAKL,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaO,KAAb,CAAmB,YAAnB;AACD;AACF;;AAEMC,EAAAA,IAAI,GAAiC;AAC1C,QAAI,KAAKN,cAAT,EAAyB;AACvB,WAAKF,OAAL,CAAaQ,IAAb,CAAkB,YAAlB;AACD;AACF;;AAEMC,EAAAA,QAAQ,CAACJ,GAAD,EAAuB;AACpC,QAAI,KAAKH,cAAT,EAAyB;AACvB;AACA;AACA,YAAMQ,aAAa,GAAG,CAAC,KAAD,EAAQ,MAAR,EAAgB,OAAhB,EAAyB,OAAzB,EAAkC,MAAlC,EAA0C,OAA1C,CAAtB;AACA,YAAMC,MAAM,GAAGD,aAAa,CAACL,GAAG,CAACO,KAAJ,IAAaf,QAAQ,CAACgB,KAAvB,CAA5B;AACA,YAAMC,GAAG,GAAGT,GAAG,CAACS,GAAJ,GAAW,IAAGT,GAAG,CAACS,GAAI,IAAtB,GAA4B,EAAxC;AACA,YAAMC,QAAQ,GAAG,CAACV,GAAG,CAACW,IAAJ,IAAY,EAAb,EAAiBX,GAAG,CAACM,MAAJ,IAAc,EAA/B,EAAmCN,GAAG,CAACY,IAAJ,IAAY,EAA/C,EAAmDC,MAAnD,CAA0DC,CAAC,IAAIA,CAAC,KAAK,EAArE,EAAyEC,IAAzE,CAA8E,GAA9E,CAAjB;AACA,YAAMC,OAAO,GAAI,GAAEP,GAAI,GAAElB,MAAM,CAACS,GAAG,CAACiB,IAAL,CAAW,IAAGP,QAAS,EAAtD,CAPuB,CASvB;;AACA,WAAKf,OAAL,CAAaW,MAAb,EAAqBU,OAArB;AACD;AACF;;AA7DyB","sourcesContent":["import {format} from 'util';\nimport type {ILogEntry} from \"./types/log\";\nimport {LogLevel} from \"./types/log\";\n\nexport class PrintToConsole {\n protected printToConsole: boolean = false;\n\n constructor(\n protected readonly console: Console,\n ) {\n }\n\n public init(printToConsole: boolean): void {\n this.printToConsole = printToConsole;\n }\n\n public error(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.error(...parameters);\n }\n }\n\n public info(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.info(...parameters);\n }\n }\n\n public log(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.log(...parameters);\n }\n }\n\n public debug(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.debug(...parameters);\n }\n }\n\n public trace(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.trace(...parameters);\n }\n }\n\n public warn(...parameters: unknown[]): void {\n if (this.printToConsole) {\n this.console.warn(...parameters);\n }\n }\n\n public printLog(log: ILogEntry): void {\n if (this.printToConsole) {\n // Log to browser console\n // debug, warning, error, trace, info, fatal\n const levelToMethod = ['log', 'warn', 'error', 'trace', 'info', 'error'];\n const method = levelToMethod[log.level || LogLevel.Debug];\n const tag = log.tag ? `[${log.tag}] ` : '';\n const location = [log.file || '', log.method || '', log.line || ''].filter(p => p !== '').join(':');\n const message = `${tag}${format(log.text)} ${location}`;\n\n // @ts-ignore\n this.console[method](message);\n }\n }\n}\n"]}
@@ -0,0 +1,65 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { removeUndefinedAttributes } from "./utilities";
4
+ export class SDKOptions {
5
+ constructor() {
6
+ _defineProperty(this, "rules", {
7
+ appKey: ['required', 'string'],
8
+ apiURL: ['string', 'url'],
9
+ baseURL: ['string', 'url'],
10
+ overrideConsoleMethods: ['boolean'],
11
+ printToConsole: ['boolean'],
12
+ logBrowserEvents: ['boolean'],
13
+ logUIEvents: ['boolean'],
14
+ registerErrorHandler: ['boolean'],
15
+ version: ['string']
16
+ });
17
+ }
18
+
19
+ init(options) {
20
+ // Validate user provided options
21
+ this.validate(options);
22
+ options = { ...options
23
+ };
24
+ removeUndefinedAttributes(options); // Set default values if needed
25
+
26
+ return {
27
+ overrideConsoleMethods: true,
28
+ printToConsole: true,
29
+ logUIEvents: true,
30
+ registerErrorHandler: true,
31
+ enableLogcatLogging: false,
32
+ ...options
33
+ };
34
+ }
35
+
36
+ validate(options) {
37
+ const urlValidator = new RegExp(/^http(s)?:\/\//i);
38
+ Object.entries(this.rules).forEach(_ref => {
39
+ let [key, rules] = _ref;
40
+ // @ts-ignore
41
+ const value = options[key];
42
+ rules.forEach(rule => {
43
+ if (rule === 'required') {
44
+ if (typeof value === 'undefined') {
45
+ throw new Error(`Bugfender requires '${key}' option to initialize.`);
46
+ }
47
+ } else if (rule === 'string') {
48
+ if (!['string', 'undefined'].includes(typeof value)) {
49
+ throw new Error(`'${key}' option must be a string.`);
50
+ }
51
+ } else if (rule === 'url') {
52
+ if (typeof value !== 'undefined' && !urlValidator.test(value)) {
53
+ throw new Error(`'${key}' option must be a valid URL.`);
54
+ }
55
+ } else if (rule === 'boolean') {
56
+ if (!['boolean', 'undefined'].includes(typeof value)) {
57
+ throw new Error(`'${key}' option must be a boolean.`);
58
+ }
59
+ }
60
+ });
61
+ });
62
+ }
63
+
64
+ }
65
+ //# sourceMappingURL=sdk-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["sdk-options.ts"],"names":["removeUndefinedAttributes","SDKOptions","appKey","apiURL","baseURL","overrideConsoleMethods","printToConsole","logBrowserEvents","logUIEvents","registerErrorHandler","version","init","options","validate","enableLogcatLogging","urlValidator","RegExp","Object","entries","rules","forEach","key","value","rule","Error","includes","test"],"mappings":";;AACA,SAAQA,yBAAR,QAAwC,aAAxC;AAEA,OAAO,MAAMC,UAAN,CAAiB;AAAA;AAAA,mCACJ;AAChBC,MAAAA,MAAM,EAAE,CAAC,UAAD,EAAa,QAAb,CADQ;AAEhBC,MAAAA,MAAM,EAAE,CAAC,QAAD,EAAW,KAAX,CAFQ;AAGhBC,MAAAA,OAAO,EAAE,CAAC,QAAD,EAAW,KAAX,CAHO;AAIhBC,MAAAA,sBAAsB,EAAE,CAAC,SAAD,CAJR;AAKhBC,MAAAA,cAAc,EAAE,CAAC,SAAD,CALA;AAMhBC,MAAAA,gBAAgB,EAAE,CAAC,SAAD,CANF;AAOhBC,MAAAA,WAAW,EAAE,CAAC,SAAD,CAPG;AAQhBC,MAAAA,oBAAoB,EAAE,CAAC,SAAD,CARN;AAShBC,MAAAA,OAAO,EAAE,CAAC,QAAD;AATO,KADI;AAAA;;AAafC,EAAAA,IAAI,CAACC,OAAD,EAAoC;AAC7C;AACA,SAAKC,QAAL,CAAcD,OAAd;AAEAA,IAAAA,OAAO,GAAG,EAAE,GAAGA;AAAL,KAAV;AACAZ,IAAAA,yBAAyB,CAACY,OAAD,CAAzB,CAL6C,CAO7C;;AACA,WAAO;AACLP,MAAAA,sBAAsB,EAAE,IADnB;AAELC,MAAAA,cAAc,EAAE,IAFX;AAGLE,MAAAA,WAAW,EAAE,IAHR;AAILC,MAAAA,oBAAoB,EAAE,IAJjB;AAKLK,MAAAA,mBAAmB,EAAE,KALhB;AAML,SAAGF;AANE,KAAP;AAQD;;AAESC,EAAAA,QAAQ,CAACD,OAAD,EAA6B;AAC7C,UAAMG,YAAY,GAAG,IAAIC,MAAJ,CAAW,iBAAX,CAArB;AAEAC,IAAAA,MAAM,CAACC,OAAP,CAAe,KAAKC,KAApB,EAA2BC,OAA3B,CAAmC,QAAkB;AAAA,UAAjB,CAACC,GAAD,EAAMF,KAAN,CAAiB;AACnD;AACA,YAAMG,KAAK,GAAGV,OAAO,CAACS,GAAD,CAArB;AAEAF,MAAAA,KAAK,CAACC,OAAN,CAAcG,IAAI,IAAI;AACpB,YAAIA,IAAI,KAAK,UAAb,EAAyB;AACvB,cAAI,OAAOD,KAAP,KAAiB,WAArB,EAAkC;AAChC,kBAAM,IAAIE,KAAJ,CAAW,uBAAsBH,GAAI,yBAArC,CAAN;AACD;AACF,SAJD,MAIO,IAAIE,IAAI,KAAK,QAAb,EAAuB;AAC5B,cAAI,CAAC,CAAC,QAAD,EAAW,WAAX,EAAwBE,QAAxB,CAAiC,OAAOH,KAAxC,CAAL,EAAqD;AACnD,kBAAM,IAAIE,KAAJ,CAAW,IAAGH,GAAI,4BAAlB,CAAN;AACD;AACF,SAJM,MAIA,IAAIE,IAAI,KAAK,KAAb,EAAoB;AACzB,cAAI,OAAOD,KAAP,KAAiB,WAAjB,IAAgC,CAACP,YAAY,CAACW,IAAb,CAAkBJ,KAAlB,CAArC,EAA+D;AAC7D,kBAAM,IAAIE,KAAJ,CAAW,IAAGH,GAAI,+BAAlB,CAAN;AACD;AACF,SAJM,MAIA,IAAIE,IAAI,KAAK,SAAb,EAAwB;AAC7B,cAAI,CAAC,CAAC,SAAD,EAAY,WAAZ,EAAyBE,QAAzB,CAAkC,OAAOH,KAAzC,CAAL,EAAsD;AACpD,kBAAM,IAAIE,KAAJ,CAAW,IAAGH,GAAI,6BAAlB,CAAN;AACD;AACF;AACF,OAlBD;AAmBD,KAvBD;AAwBD;;AA1DqB","sourcesContent":["import type {ISDKOptions} from \"./types/sdk-options\";\nimport {removeUndefinedAttributes} from \"./utilities\";\n\nexport class SDKOptions {\n protected rules = {\n appKey: ['required', 'string'],\n apiURL: ['string', 'url'],\n baseURL: ['string', 'url'],\n overrideConsoleMethods: ['boolean'],\n printToConsole: ['boolean'],\n logBrowserEvents: ['boolean'],\n logUIEvents: ['boolean'],\n registerErrorHandler: ['boolean'],\n version: ['string'],\n };\n\n public init(options: ISDKOptions): ISDKOptions {\n // Validate user provided options\n this.validate(options);\n\n options = { ...options };\n removeUndefinedAttributes(options);\n\n // Set default values if needed\n return {\n overrideConsoleMethods: true,\n printToConsole: true,\n logUIEvents: true,\n registerErrorHandler: true,\n enableLogcatLogging: false,\n ...options,\n };\n }\n\n protected validate(options: ISDKOptions): void {\n const urlValidator = new RegExp(/^http(s)?:\\/\\//i);\n\n Object.entries(this.rules).forEach(([key, rules]) => {\n // @ts-ignore\n const value = options[key];\n\n rules.forEach(rule => {\n if (rule === 'required') {\n if (typeof value === 'undefined') {\n throw new Error(`Bugfender requires '${key}' option to initialize.`)\n }\n } else if (rule === 'string') {\n if (!['string', 'undefined'].includes(typeof value)) {\n throw new Error(`'${key}' option must be a string.`);\n }\n } else if (rule === 'url') {\n if (typeof value !== 'undefined' && !urlValidator.test(value)) {\n throw new Error(`'${key}' option must be a valid URL.`);\n }\n } else if (rule === 'boolean') {\n if (!['boolean', 'undefined'].includes(typeof value)) {\n throw new Error(`'${key}' option must be a boolean.`);\n }\n }\n })\n });\n }\n}\n"]}