react-native-acoustic-connect 19.0.9 → 19.0.28

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 (378) hide show
  1. package/CHANGELOG.md +91 -0
  2. package/ConnectConfig.example.json +1 -1
  3. package/README.md +390 -1
  4. package/android/build.gradle +86 -3
  5. package/android/config.gradle +137 -13
  6. package/android/src/main/assets/ConnectAdvancedConfig.json +1 -1
  7. package/android/src/main/java/com/acousticconnectrn/HybridAcousticConnectRN.kt +407 -34
  8. package/app.plugin.js +2 -2
  9. package/ios/AcousticConnectRNConfig.json +2 -2
  10. package/ios/ConnectRNParsing.swift +229 -0
  11. package/ios/HybridAcousticConnectRN.swift +290 -30
  12. package/lib/commonjs/TLTRN.js +116 -3
  13. package/lib/commonjs/TLTRN.js.map +1 -1
  14. package/lib/commonjs/components/Connect.js +145 -27
  15. package/lib/commonjs/components/Connect.js.map +1 -1
  16. package/lib/commonjs/index.js +3 -0
  17. package/lib/commonjs/index.js.map +1 -1
  18. package/lib/module/TLTRN.js +116 -3
  19. package/lib/module/TLTRN.js.map +1 -1
  20. package/lib/module/components/Connect.js +146 -28
  21. package/lib/module/components/Connect.js.map +1 -1
  22. package/lib/module/index.js +5 -0
  23. package/lib/module/index.js.map +1 -1
  24. package/lib/typescript/src/TLTRN.d.ts +85 -1
  25. package/lib/typescript/src/TLTRN.d.ts.map +1 -1
  26. package/lib/typescript/src/components/Connect.d.ts.map +1 -1
  27. package/lib/typescript/src/index.d.ts +1 -0
  28. package/lib/typescript/src/index.d.ts.map +1 -1
  29. package/lib/typescript/src/specs/react-native-acoustic-connect.nitro.d.ts +178 -10
  30. package/lib/typescript/src/specs/react-native-acoustic-connect.nitro.d.ts.map +1 -1
  31. package/nitrogen/generated/android/c++/JHybridAcousticConnectRNSpec.cpp +5 -9
  32. package/nitrogen/generated/android/c++/JHybridAcousticConnectRNSpec.hpp +1 -1
  33. package/nitrogen/generated/android/kotlin/com/margelo/nitro/acousticconnectrn/HybridAcousticConnectRNSpec.kt +2 -1
  34. package/nitrogen/generated/ios/AcousticConnectRN-Swift-Cxx-Umbrella.hpp +1 -0
  35. package/nitrogen/generated/ios/c++/HybridAcousticConnectRNSpecSwift.hpp +2 -1
  36. package/nitrogen/generated/ios/swift/HybridAcousticConnectRNSpec.swift +1 -1
  37. package/nitrogen/generated/ios/swift/HybridAcousticConnectRNSpec_cxx.swift +2 -25
  38. package/nitrogen/generated/shared/c++/HybridAcousticConnectRNSpec.hpp +2 -1
  39. package/package.json +4 -7
  40. package/plugin/build/withConnectAndroidConfig.d.ts +2 -2
  41. package/plugin/build/withConnectAndroidConfig.js +2 -2
  42. package/plugin/build/withConnectIosSigning.d.ts +1 -1
  43. package/plugin/build/withConnectIosSigning.js +1 -1
  44. package/plugin/src/withConnectAndroidConfig.ts +2 -2
  45. package/plugin/src/withConnectIosSigning.ts +1 -1
  46. package/scripts/gradleParser.js +1 -1
  47. package/src/TLTRN.ts +125 -4
  48. package/src/components/Connect.tsx +150 -27
  49. package/src/index.ts +5 -0
  50. package/src/specs/react-native-acoustic-connect.nitro.ts +180 -10
  51. package/Examples/SampleUI/.bundle/config +0 -2
  52. package/Examples/SampleUI/.detoxrc.js +0 -83
  53. package/Examples/SampleUI/.eslintrc.js +0 -4
  54. package/Examples/SampleUI/.prettierrc.js +0 -7
  55. package/Examples/SampleUI/.watchmanconfig +0 -1
  56. package/Examples/SampleUI/App.js +0 -1
  57. package/Examples/SampleUI/Gemfile +0 -10
  58. package/Examples/SampleUI/Gemfile.lock +0 -121
  59. package/Examples/SampleUI/README.md +0 -79
  60. package/Examples/SampleUI/__tests__/App.test.tsx +0 -17
  61. package/Examples/SampleUI/android/app/build.gradle +0 -129
  62. package/Examples/SampleUI/android/app/debug.keystore +0 -0
  63. package/Examples/SampleUI/android/app/proguard-rules.pro +0 -10
  64. package/Examples/SampleUI/android/app/src/debug/AndroidManifest.xml +0 -9
  65. package/Examples/SampleUI/android/app/src/main/AndroidManifest.xml +0 -31
  66. package/Examples/SampleUI/android/app/src/main/java/com/sampleui/MainActivity.kt +0 -30
  67. package/Examples/SampleUI/android/app/src/main/java/com/sampleui/MainApplication.kt +0 -53
  68. package/Examples/SampleUI/android/app/src/main/res/drawable/rn_edit_text_material.xml +0 -37
  69. package/Examples/SampleUI/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  70. package/Examples/SampleUI/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  71. package/Examples/SampleUI/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  72. package/Examples/SampleUI/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  73. package/Examples/SampleUI/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  74. package/Examples/SampleUI/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  75. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  76. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  77. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  78. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  79. package/Examples/SampleUI/android/app/src/main/res/values/strings.xml +0 -3
  80. package/Examples/SampleUI/android/app/src/main/res/values/styles.xml +0 -9
  81. package/Examples/SampleUI/android/build.gradle +0 -21
  82. package/Examples/SampleUI/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  83. package/Examples/SampleUI/android/gradle/wrapper/gradle-wrapper.properties +0 -7
  84. package/Examples/SampleUI/android/gradle.properties +0 -39
  85. package/Examples/SampleUI/android/gradlew +0 -252
  86. package/Examples/SampleUI/android/gradlew.bat +0 -94
  87. package/Examples/SampleUI/android/settings.gradle +0 -21
  88. package/Examples/SampleUI/app.json +0 -51
  89. package/Examples/SampleUI/assets/fonts/Abel-Regular.ttf +0 -0
  90. package/Examples/SampleUI/assets/fonts/NotoSans-Regular.ttf +0 -0
  91. package/Examples/SampleUI/assets/images/android-icon.png +0 -0
  92. package/Examples/SampleUI/assets/images/artist-1.jpg +0 -0
  93. package/Examples/SampleUI/assets/images/artist-2.jpg +0 -0
  94. package/Examples/SampleUI/assets/images/avatar.png +0 -0
  95. package/Examples/SampleUI/assets/images/beach.jpg +0 -0
  96. package/Examples/SampleUI/assets/images/bridge.jpg +0 -0
  97. package/Examples/SampleUI/assets/images/chameleon.jpg +0 -0
  98. package/Examples/SampleUI/assets/images/city.jpg +0 -0
  99. package/Examples/SampleUI/assets/images/email-icon.png +0 -0
  100. package/Examples/SampleUI/assets/images/favorite.png +0 -0
  101. package/Examples/SampleUI/assets/images/forest.jpg +0 -0
  102. package/Examples/SampleUI/assets/images/paper-icon.png +0 -0
  103. package/Examples/SampleUI/assets/images/players-2.jpg +0 -0
  104. package/Examples/SampleUI/assets/images/players.jpg +0 -0
  105. package/Examples/SampleUI/assets/images/restaurant-1.jpg +0 -0
  106. package/Examples/SampleUI/assets/images/restaurant-2.jpg +0 -0
  107. package/Examples/SampleUI/assets/images/song-1.jpg +0 -0
  108. package/Examples/SampleUI/assets/images/song-2.jpg +0 -0
  109. package/Examples/SampleUI/assets/images/splash.png +0 -0
  110. package/Examples/SampleUI/assets/images/strawberries.jpg +0 -0
  111. package/Examples/SampleUI/assets/images/wrecked-ship.jpg +0 -0
  112. package/Examples/SampleUI/assets/styles/fonts.css +0 -47
  113. package/Examples/SampleUI/babel.config.js +0 -22
  114. package/Examples/SampleUI/index.js +0 -9
  115. package/Examples/SampleUI/ios/.xcode.env +0 -11
  116. package/Examples/SampleUI/ios/Podfile +0 -71
  117. package/Examples/SampleUI/ios/Podfile.lock +0 -2276
  118. package/Examples/SampleUI/ios/SampleUI/AppDelegate.h +0 -7
  119. package/Examples/SampleUI/ios/SampleUI/AppDelegate.mm +0 -31
  120. package/Examples/SampleUI/ios/SampleUI/Images.xcassets/AppIcon.appiconset/Contents.json +0 -53
  121. package/Examples/SampleUI/ios/SampleUI/Images.xcassets/Contents.json +0 -6
  122. package/Examples/SampleUI/ios/SampleUI/Info.plist +0 -52
  123. package/Examples/SampleUI/ios/SampleUI/LaunchScreen.storyboard +0 -47
  124. package/Examples/SampleUI/ios/SampleUI/PrivacyInfo.xcprivacy +0 -48
  125. package/Examples/SampleUI/ios/SampleUI/main.m +0 -10
  126. package/Examples/SampleUI/ios/SampleUI.xcodeproj/project.pbxproj +0 -785
  127. package/Examples/SampleUI/ios/SampleUI.xcodeproj/xcshareddata/xcschemes/SampleUI.xcscheme +0 -105
  128. package/Examples/SampleUI/ios/SampleUI.xcworkspace/contents.xcworkspacedata +0 -10
  129. package/Examples/SampleUI/ios/SampleUITests/Info.plist +0 -24
  130. package/Examples/SampleUI/ios/SampleUITests/SampleUITests.m +0 -66
  131. package/Examples/SampleUI/jest.config.js +0 -3
  132. package/Examples/SampleUI/metro.config.js +0 -54
  133. package/Examples/SampleUI/package.json +0 -65
  134. package/Examples/SampleUI/scripts/integration-test-android.sh +0 -292
  135. package/Examples/SampleUI/src/DrawerItems.tsx +0 -322
  136. package/Examples/SampleUI/src/ExampleList.tsx +0 -175
  137. package/Examples/SampleUI/src/Examples/ActivityIndicatorExample.tsx +0 -73
  138. package/Examples/SampleUI/src/Examples/AnimatedFABExample/AnimatedFABExample.tsx +0 -220
  139. package/Examples/SampleUI/src/Examples/AnimatedFABExample/CustomFAB.tsx +0 -70
  140. package/Examples/SampleUI/src/Examples/AnimatedFABExample/CustomFABControls.tsx +0 -146
  141. package/Examples/SampleUI/src/Examples/AnimatedFABExample/index.ts +0 -1
  142. package/Examples/SampleUI/src/Examples/AppbarExample.tsx +0 -263
  143. package/Examples/SampleUI/src/Examples/AvatarExample.tsx +0 -76
  144. package/Examples/SampleUI/src/Examples/BadgeExample.tsx +0 -97
  145. package/Examples/SampleUI/src/Examples/BannerExample.tsx +0 -152
  146. package/Examples/SampleUI/src/Examples/BottomNavigationBarExample.tsx +0 -94
  147. package/Examples/SampleUI/src/Examples/BottomNavigationExample.tsx +0 -205
  148. package/Examples/SampleUI/src/Examples/ButtonExample.tsx +0 -405
  149. package/Examples/SampleUI/src/Examples/CardExample.tsx +0 -245
  150. package/Examples/SampleUI/src/Examples/CheckboxExample.tsx +0 -87
  151. package/Examples/SampleUI/src/Examples/CheckboxItemExample.tsx +0 -72
  152. package/Examples/SampleUI/src/Examples/ChipExample.tsx +0 -432
  153. package/Examples/SampleUI/src/Examples/DataTableExample.tsx +0 -128
  154. package/Examples/SampleUI/src/Examples/DialogExample.tsx +0 -217
  155. package/Examples/SampleUI/src/Examples/Dialogs/DialogTextComponent.tsx +0 -31
  156. package/Examples/SampleUI/src/Examples/Dialogs/DialogTrackingTest.tsx +0 -307
  157. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithCustomColors.tsx +0 -57
  158. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithDismissableBackButton.tsx +0 -38
  159. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithIcon.tsx +0 -42
  160. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithLoadingIndicator.tsx +0 -48
  161. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithLongText.tsx +0 -81
  162. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithRadioBtns.tsx +0 -111
  163. package/Examples/SampleUI/src/Examples/Dialogs/UndismissableDialog.tsx +0 -30
  164. package/Examples/SampleUI/src/Examples/Dialogs/index.tsx +0 -44
  165. package/Examples/SampleUI/src/Examples/DividerExample.tsx +0 -30
  166. package/Examples/SampleUI/src/Examples/FABExample.tsx +0 -226
  167. package/Examples/SampleUI/src/Examples/IconButtonExample.tsx +0 -230
  168. package/Examples/SampleUI/src/Examples/IconExample.tsx +0 -50
  169. package/Examples/SampleUI/src/Examples/ListAccordionExample.tsx +0 -65
  170. package/Examples/SampleUI/src/Examples/ListAccordionGroupExample.tsx +0 -80
  171. package/Examples/SampleUI/src/Examples/ListItemExample.tsx +0 -310
  172. package/Examples/SampleUI/src/Examples/ListSectionExample.tsx +0 -159
  173. package/Examples/SampleUI/src/Examples/MaterialBottomTabNavigatorExample.tsx +0 -87
  174. package/Examples/SampleUI/src/Examples/MenuExample.tsx +0 -211
  175. package/Examples/SampleUI/src/Examples/ProgressBarExample.tsx +0 -142
  176. package/Examples/SampleUI/src/Examples/RadioButtonExample.tsx +0 -104
  177. package/Examples/SampleUI/src/Examples/RadioButtonGroupExample.tsx +0 -67
  178. package/Examples/SampleUI/src/Examples/RadioButtonItemExample.tsx +0 -77
  179. package/Examples/SampleUI/src/Examples/SearchbarExample.tsx +0 -249
  180. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonCustomColorCheck.tsx +0 -93
  181. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonDefault.tsx +0 -49
  182. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonDisabled.tsx +0 -47
  183. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselect.tsx +0 -50
  184. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselectIcons.tsx +0 -49
  185. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselectRealCase.tsx +0 -114
  186. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonOnlyIcons.tsx +0 -40
  187. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonOnlyIconsWithCheck.tsx +0 -43
  188. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonRealCase.tsx +0 -97
  189. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonWithDensity.tsx +0 -47
  190. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonWithSelectedCheck.tsx +0 -52
  191. package/Examples/SampleUI/src/Examples/SegmentedButtons/index.ts +0 -9
  192. package/Examples/SampleUI/src/Examples/SegmentedButtonsExample.tsx +0 -57
  193. package/Examples/SampleUI/src/Examples/SnackbarExample.tsx +0 -141
  194. package/Examples/SampleUI/src/Examples/SurfaceExample.tsx +0 -130
  195. package/Examples/SampleUI/src/Examples/SwitchExample.tsx +0 -105
  196. package/Examples/SampleUI/src/Examples/TeamDetails.tsx +0 -291
  197. package/Examples/SampleUI/src/Examples/TeamsList.tsx +0 -57
  198. package/Examples/SampleUI/src/Examples/TextExample.tsx +0 -132
  199. package/Examples/SampleUI/src/Examples/TextInputExample.tsx +0 -914
  200. package/Examples/SampleUI/src/Examples/ThemeExample.tsx +0 -41
  201. package/Examples/SampleUI/src/Examples/ThemingWithReactNavigation.tsx +0 -75
  202. package/Examples/SampleUI/src/Examples/ToggleButtonExample.tsx +0 -128
  203. package/Examples/SampleUI/src/Examples/TooltipExample.tsx +0 -191
  204. package/Examples/SampleUI/src/Examples/TouchableRippleExample.tsx +0 -37
  205. package/Examples/SampleUI/src/RootNavigator.tsx +0 -95
  206. package/Examples/SampleUI/src/ScreenWrapper.tsx +0 -67
  207. package/Examples/SampleUI/src/components/ActivityIndicator.tsx +0 -254
  208. package/Examples/SampleUI/src/components/Appbar/Appbar.tsx +0 -364
  209. package/Examples/SampleUI/src/components/Appbar/AppbarAction.tsx +0 -132
  210. package/Examples/SampleUI/src/components/Appbar/AppbarBackAction.tsx +0 -77
  211. package/Examples/SampleUI/src/components/Appbar/AppbarBackIcon.tsx +0 -52
  212. package/Examples/SampleUI/src/components/Appbar/AppbarContent.tsx +0 -249
  213. package/Examples/SampleUI/src/components/Appbar/AppbarHeader.tsx +0 -174
  214. package/Examples/SampleUI/src/components/Appbar/index.ts +0 -22
  215. package/Examples/SampleUI/src/components/Appbar/utils.ts +0 -188
  216. package/Examples/SampleUI/src/components/Avatar/Avatar.tsx +0 -8
  217. package/Examples/SampleUI/src/components/Avatar/AvatarIcon.tsx +0 -87
  218. package/Examples/SampleUI/src/components/Avatar/AvatarImage.tsx +0 -128
  219. package/Examples/SampleUI/src/components/Avatar/AvatarText.tsx +0 -127
  220. package/Examples/SampleUI/src/components/Badge.tsx +0 -138
  221. package/Examples/SampleUI/src/components/Banner.tsx +0 -302
  222. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigation.tsx +0 -643
  223. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigationBar.tsx +0 -1039
  224. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigationRouteScreen.tsx +0 -31
  225. package/Examples/SampleUI/src/components/BottomNavigation/utils.ts +0 -70
  226. package/Examples/SampleUI/src/components/Button/Button.tsx +0 -503
  227. package/Examples/SampleUI/src/components/Button/utils.tsx +0 -272
  228. package/Examples/SampleUI/src/components/Card/Card.tsx +0 -373
  229. package/Examples/SampleUI/src/components/Card/CardActions.tsx +0 -74
  230. package/Examples/SampleUI/src/components/Card/CardContent.tsx +0 -99
  231. package/Examples/SampleUI/src/components/Card/CardCover.tsx +0 -96
  232. package/Examples/SampleUI/src/components/Card/CardTitle.tsx +0 -236
  233. package/Examples/SampleUI/src/components/Card/utils.tsx +0 -110
  234. package/Examples/SampleUI/src/components/Checkbox/Checkbox.tsx +0 -78
  235. package/Examples/SampleUI/src/components/Checkbox/CheckboxAndroid.tsx +0 -180
  236. package/Examples/SampleUI/src/components/Checkbox/CheckboxIOS.tsx +0 -104
  237. package/Examples/SampleUI/src/components/Checkbox/CheckboxItem.tsx +0 -236
  238. package/Examples/SampleUI/src/components/Checkbox/index.ts +0 -19
  239. package/Examples/SampleUI/src/components/Checkbox/utils.ts +0 -183
  240. package/Examples/SampleUI/src/components/Chip/Chip.tsx +0 -513
  241. package/Examples/SampleUI/src/components/Chip/helpers.tsx +0 -322
  242. package/Examples/SampleUI/src/components/CrossFadeIcon.tsx +0 -140
  243. package/Examples/SampleUI/src/components/DataTable/DataTable.tsx +0 -138
  244. package/Examples/SampleUI/src/components/DataTable/DataTableCell.tsx +0 -132
  245. package/Examples/SampleUI/src/components/DataTable/DataTableHeader.tsx +0 -82
  246. package/Examples/SampleUI/src/components/DataTable/DataTablePagination.tsx +0 -407
  247. package/Examples/SampleUI/src/components/DataTable/DataTableRow.tsx +0 -107
  248. package/Examples/SampleUI/src/components/DataTable/DataTableTitle.tsx +0 -208
  249. package/Examples/SampleUI/src/components/Dialog/Dialog.tsx +0 -191
  250. package/Examples/SampleUI/src/components/Dialog/DialogActions.tsx +0 -94
  251. package/Examples/SampleUI/src/components/Dialog/DialogContent.tsx +0 -54
  252. package/Examples/SampleUI/src/components/Dialog/DialogIcon.tsx +0 -100
  253. package/Examples/SampleUI/src/components/Dialog/DialogScrollArea.tsx +0 -88
  254. package/Examples/SampleUI/src/components/Dialog/DialogTitle.tsx +0 -94
  255. package/Examples/SampleUI/src/components/Divider.tsx +0 -102
  256. package/Examples/SampleUI/src/components/Drawer/Drawer.tsx +0 -8
  257. package/Examples/SampleUI/src/components/Drawer/DrawerCollapsedItem.tsx +0 -282
  258. package/Examples/SampleUI/src/components/Drawer/DrawerItem.tsx +0 -209
  259. package/Examples/SampleUI/src/components/Drawer/DrawerSection.tsx +0 -138
  260. package/Examples/SampleUI/src/components/FAB/AnimatedFAB.tsx +0 -619
  261. package/Examples/SampleUI/src/components/FAB/FAB.tsx +0 -371
  262. package/Examples/SampleUI/src/components/FAB/FABGroup.tsx +0 -532
  263. package/Examples/SampleUI/src/components/FAB/index.ts +0 -13
  264. package/Examples/SampleUI/src/components/FAB/utils.ts +0 -474
  265. package/Examples/SampleUI/src/components/HelperText/HelperText.tsx +0 -168
  266. package/Examples/SampleUI/src/components/HelperText/utils.ts +0 -30
  267. package/Examples/SampleUI/src/components/Icon.tsx +0 -170
  268. package/Examples/SampleUI/src/components/IconButton/IconButton.tsx +0 -234
  269. package/Examples/SampleUI/src/components/IconButton/utils.ts +0 -190
  270. package/Examples/SampleUI/src/components/List/List.tsx +0 -20
  271. package/Examples/SampleUI/src/components/List/ListAccordion.tsx +0 -391
  272. package/Examples/SampleUI/src/components/List/ListAccordionGroup.tsx +0 -88
  273. package/Examples/SampleUI/src/components/List/ListIcon.tsx +0 -79
  274. package/Examples/SampleUI/src/components/List/ListImage.tsx +0 -89
  275. package/Examples/SampleUI/src/components/List/ListItem.tsx +0 -313
  276. package/Examples/SampleUI/src/components/List/ListSection.tsx +0 -87
  277. package/Examples/SampleUI/src/components/List/ListSubheader.tsx +0 -79
  278. package/Examples/SampleUI/src/components/List/utils.ts +0 -113
  279. package/Examples/SampleUI/src/components/MaterialCommunityIcon.tsx +0 -121
  280. package/Examples/SampleUI/src/components/Menu/Menu.tsx +0 -711
  281. package/Examples/SampleUI/src/components/Menu/MenuItem.tsx +0 -257
  282. package/Examples/SampleUI/src/components/Menu/utils.ts +0 -110
  283. package/Examples/SampleUI/src/components/Modal.tsx +0 -245
  284. package/Examples/SampleUI/src/components/Portal/Portal.tsx +0 -69
  285. package/Examples/SampleUI/src/components/Portal/PortalConsumer.tsx +0 -44
  286. package/Examples/SampleUI/src/components/Portal/PortalHost.tsx +0 -143
  287. package/Examples/SampleUI/src/components/Portal/PortalManager.tsx +0 -54
  288. package/Examples/SampleUI/src/components/ProgressBar.tsx +0 -292
  289. package/Examples/SampleUI/src/components/RadioButton/RadioButton.tsx +0 -86
  290. package/Examples/SampleUI/src/components/RadioButton/RadioButtonAndroid.tsx +0 -202
  291. package/Examples/SampleUI/src/components/RadioButton/RadioButtonGroup.tsx +0 -67
  292. package/Examples/SampleUI/src/components/RadioButton/RadioButtonIOS.tsx +0 -130
  293. package/Examples/SampleUI/src/components/RadioButton/RadioButtonItem.tsx +0 -268
  294. package/Examples/SampleUI/src/components/RadioButton/index.ts +0 -22
  295. package/Examples/SampleUI/src/components/RadioButton/utils.ts +0 -37
  296. package/Examples/SampleUI/src/components/Searchbar.tsx +0 -459
  297. package/Examples/SampleUI/src/components/SegmentedButtons/SegmentedButtonItem.tsx +0 -271
  298. package/Examples/SampleUI/src/components/SegmentedButtons/SegmentedButtons.tsx +0 -197
  299. package/Examples/SampleUI/src/components/SegmentedButtons/utils.ts +0 -179
  300. package/Examples/SampleUI/src/components/Snackbar.tsx +0 -430
  301. package/Examples/SampleUI/src/components/Surface.tsx +0 -376
  302. package/Examples/SampleUI/src/components/Switch/Switch.tsx +0 -108
  303. package/Examples/SampleUI/src/components/Switch/utils.ts +0 -113
  304. package/Examples/SampleUI/src/components/TextInput/Addons/Outline.tsx +0 -64
  305. package/Examples/SampleUI/src/components/TextInput/Addons/Underline.tsx +0 -78
  306. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputAdornment.tsx +0 -208
  307. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputAffix.tsx +0 -212
  308. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputIcon.tsx +0 -195
  309. package/Examples/SampleUI/src/components/TextInput/Adornment/enums.tsx +0 -12
  310. package/Examples/SampleUI/src/components/TextInput/Adornment/types.tsx +0 -11
  311. package/Examples/SampleUI/src/components/TextInput/Adornment/utils.ts +0 -48
  312. package/Examples/SampleUI/src/components/TextInput/Label/InputLabel.tsx +0 -217
  313. package/Examples/SampleUI/src/components/TextInput/Label/LabelBackground.tsx +0 -100
  314. package/Examples/SampleUI/src/components/TextInput/TextInput.tsx +0 -572
  315. package/Examples/SampleUI/src/components/TextInput/TextInputFlat.tsx +0 -475
  316. package/Examples/SampleUI/src/components/TextInput/TextInputOutlined.tsx +0 -450
  317. package/Examples/SampleUI/src/components/TextInput/constants.tsx +0 -48
  318. package/Examples/SampleUI/src/components/TextInput/helpers.tsx +0 -612
  319. package/Examples/SampleUI/src/components/TextInput/types.tsx +0 -155
  320. package/Examples/SampleUI/src/components/ToggleButton/ToggleButton.tsx +0 -187
  321. package/Examples/SampleUI/src/components/ToggleButton/ToggleButtonGroup.tsx +0 -72
  322. package/Examples/SampleUI/src/components/ToggleButton/ToggleButtonRow.tsx +0 -107
  323. package/Examples/SampleUI/src/components/ToggleButton/index.ts +0 -16
  324. package/Examples/SampleUI/src/components/ToggleButton/utils.ts +0 -26
  325. package/Examples/SampleUI/src/components/Tooltip/Tooltip.tsx +0 -249
  326. package/Examples/SampleUI/src/components/Tooltip/utils.ts +0 -129
  327. package/Examples/SampleUI/src/components/TouchableRipple/Pressable.tsx +0 -41
  328. package/Examples/SampleUI/src/components/TouchableRipple/TouchableRipple.native.tsx +0 -145
  329. package/Examples/SampleUI/src/components/TouchableRipple/TouchableRipple.tsx +0 -317
  330. package/Examples/SampleUI/src/components/TouchableRipple/utils.ts +0 -66
  331. package/Examples/SampleUI/src/components/Typography/AnimatedText.tsx +0 -107
  332. package/Examples/SampleUI/src/components/Typography/Text.tsx +0 -184
  333. package/Examples/SampleUI/src/components/Typography/types.tsx +0 -5
  334. package/Examples/SampleUI/src/components/Typography/v2/Caption.tsx +0 -50
  335. package/Examples/SampleUI/src/components/Typography/v2/Headline.tsx +0 -52
  336. package/Examples/SampleUI/src/components/Typography/v2/Paragraph.tsx +0 -49
  337. package/Examples/SampleUI/src/components/Typography/v2/StyledText.tsx +0 -56
  338. package/Examples/SampleUI/src/components/Typography/v2/Subheading.tsx +0 -50
  339. package/Examples/SampleUI/src/components/Typography/v2/Text.tsx +0 -62
  340. package/Examples/SampleUI/src/components/Typography/v2/Title.tsx +0 -49
  341. package/Examples/SampleUI/src/components/Typography/v2/index.ts +0 -5
  342. package/Examples/SampleUI/src/core/PaperProvider.tsx +0 -122
  343. package/Examples/SampleUI/src/core/SafeAreaProviderCompat.tsx +0 -65
  344. package/Examples/SampleUI/src/core/settings.tsx +0 -23
  345. package/Examples/SampleUI/src/core/theming.tsx +0 -170
  346. package/Examples/SampleUI/src/index.native.tsx +0 -285
  347. package/Examples/SampleUI/src/index.tsx +0 -226
  348. package/Examples/SampleUI/src/react-navigation/index.tsx +0 -19
  349. package/Examples/SampleUI/src/react-navigation/navigators/createMaterialBottomTabNavigator.tsx +0 -72
  350. package/Examples/SampleUI/src/react-navigation/types.tsx +0 -126
  351. package/Examples/SampleUI/src/react-navigation/views/MaterialBottomTabView.tsx +0 -140
  352. package/Examples/SampleUI/src/styles/__tests__/fonts.test.js +0 -290
  353. package/Examples/SampleUI/src/styles/fonts.tsx +0 -143
  354. package/Examples/SampleUI/src/styles/overlay.tsx +0 -70
  355. package/Examples/SampleUI/src/styles/shadow.tsx +0 -109
  356. package/Examples/SampleUI/src/styles/themes/index.ts +0 -4
  357. package/Examples/SampleUI/src/styles/themes/v2/DarkTheme.tsx +0 -30
  358. package/Examples/SampleUI/src/styles/themes/v2/LightTheme.tsx +0 -30
  359. package/Examples/SampleUI/src/styles/themes/v2/colors.tsx +0 -277
  360. package/Examples/SampleUI/src/styles/themes/v3/DarkTheme.tsx +0 -66
  361. package/Examples/SampleUI/src/styles/themes/v3/LightTheme.tsx +0 -69
  362. package/Examples/SampleUI/src/styles/themes/v3/tokens.tsx +0 -230
  363. package/Examples/SampleUI/src/utils/BackHandler/BackHandler.native.tsx +0 -3
  364. package/Examples/SampleUI/src/utils/BackHandler/BackHandler.tsx +0 -11
  365. package/Examples/SampleUI/src/utils/addEventListener.tsx +0 -56
  366. package/Examples/SampleUI/src/utils/forwardRef.tsx +0 -23
  367. package/Examples/SampleUI/src/utils/getContrastingColor.tsx +0 -15
  368. package/Examples/SampleUI/src/utils/hasTouchHandler.tsx +0 -23
  369. package/Examples/SampleUI/src/utils/roundLayoutSize.ts +0 -2
  370. package/Examples/SampleUI/src/utils/splitStyles.ts +0 -60
  371. package/Examples/SampleUI/src/utils/useAnimatedValue.tsx +0 -9
  372. package/Examples/SampleUI/src/utils/useAnimatedValueArray.tsx +0 -13
  373. package/Examples/SampleUI/src/utils/useIsKeyboardShown.tsx +0 -55
  374. package/Examples/SampleUI/src/utils/useLayout.tsx +0 -29
  375. package/Examples/SampleUI/src/utils/useLazyRef.tsx +0 -11
  376. package/Examples/SampleUI/tsconfig.json +0 -3
  377. package/Examples/SampleUI/utils/index.ts +0 -1426
  378. package/cli/__tests__/doctor.test.mjs +0 -88
@@ -1,313 +0,0 @@
1
- import * as React from 'react';
2
- import {
3
- GestureResponderEvent,
4
- NativeSyntheticEvent,
5
- StyleProp,
6
- StyleSheet,
7
- TextLayoutEventData,
8
- TextStyle,
9
- View,
10
- ViewStyle,
11
- } from 'react-native';
12
-
13
- import color from 'color';
14
-
15
- import { Style, getLeftStyles, getRightStyles } from './utils';
16
- import { useInternalTheme } from '../../core/theming';
17
- import type { $RemoveChildren, EllipsizeProp, ThemeProp } from '../../types';
18
- import { forwardRef } from '../../utils/forwardRef';
19
- import TouchableRipple from '../TouchableRipple/TouchableRipple';
20
- import Text from '../Typography/Text';
21
-
22
- type Title =
23
- | React.ReactNode
24
- | ((props: {
25
- selectable: boolean;
26
- ellipsizeMode: EllipsizeProp | undefined;
27
- color: string;
28
- fontSize: number;
29
- }) => React.ReactNode);
30
-
31
- type Description =
32
- | React.ReactNode
33
- | ((props: {
34
- selectable: boolean;
35
- ellipsizeMode: EllipsizeProp | undefined;
36
- color: string;
37
- fontSize: number;
38
- }) => React.ReactNode);
39
-
40
- export type Props = $RemoveChildren<typeof TouchableRipple> & {
41
- /**
42
- * Title text for the list item.
43
- */
44
- title: Title;
45
- /**
46
- * Description text for the list item or callback which returns a React element to display the description.
47
- */
48
- description?: Description;
49
- /**
50
- * Callback which returns a React element to display on the left side.
51
- */
52
- left?: (props: { color: string; style: Style }) => React.ReactNode;
53
- /**
54
- * Callback which returns a React element to display on the right side.
55
- */
56
- right?: (props: { color: string; style?: Style }) => React.ReactNode;
57
- /**
58
- * Function to execute on press.
59
- */
60
- onPress?: (e: GestureResponderEvent) => void;
61
- /**
62
- * @optional
63
- */
64
- theme?: ThemeProp;
65
- /**
66
- * Style that is passed to the wrapping TouchableRipple element.
67
- */
68
- style?: StyleProp<ViewStyle>;
69
- /**
70
- * Style that is passed to the container wrapping title and descripton.
71
- */
72
- contentStyle?: StyleProp<ViewStyle>;
73
- /**
74
- * Style that is passed to Title element.
75
- */
76
- titleStyle?: StyleProp<TextStyle>;
77
- /**
78
- * Style that is passed to Description element.
79
- */
80
- descriptionStyle?: StyleProp<TextStyle>;
81
- /**
82
- * Truncate Title text such that the total number of lines does not
83
- * exceed this number.
84
- */
85
- titleNumberOfLines?: number;
86
- /**
87
- * Truncate Description text such that the total number of lines does not
88
- * exceed this number.
89
- */
90
- descriptionNumberOfLines?: number;
91
- /**
92
- * Ellipsize Mode for the Title. One of `'head'`, `'middle'`, `'tail'`, `'clip'`.
93
- *
94
- * See [`ellipsizeMode`](https://reactnative.dev/docs/text#ellipsizemode)
95
- */
96
- titleEllipsizeMode?: EllipsizeProp;
97
- /**
98
- * Ellipsize Mode for the Description. One of `'head'`, `'middle'`, `'tail'`, `'clip'`.
99
- *
100
- * See [`ellipsizeMode`](https://reactnative.dev/docs/text#ellipsizemode)
101
- */
102
- descriptionEllipsizeMode?: EllipsizeProp;
103
- /**
104
- * Specifies the largest possible scale a title font can reach.
105
- */
106
- titleMaxFontSizeMultiplier?: number;
107
- /**
108
- * Specifies the largest possible scale a description font can reach.
109
- */
110
- descriptionMaxFontSizeMultiplier?: number;
111
- /**
112
- * TestID used for testing purposes
113
- */
114
- testID?: string;
115
- };
116
-
117
- /**
118
- * A component to show tiles inside a List.
119
- *
120
- * ## Usage
121
- * ```js
122
- * import * as React from 'react';
123
- * import { List } from 'react-native-paper';
124
- *
125
- * const MyComponent = () => (
126
- * <List.Item
127
- * title="First Item"
128
- * description="Item description"
129
- * left={props => <List.Icon {...props} icon="folder" />}
130
- * />
131
- * );
132
- *
133
- * export default MyComponent;
134
- * ```
135
- *
136
- * @extends TouchableRipple props https://callstack.github.io/react-native-paper/docs/components/TouchableRipple
137
- */
138
- const ListItem = (
139
- {
140
- left,
141
- right,
142
- title,
143
- description,
144
- onPress,
145
- theme: themeOverrides,
146
- style,
147
- contentStyle,
148
- titleStyle,
149
- titleNumberOfLines = 1,
150
- descriptionNumberOfLines = 2,
151
- titleEllipsizeMode,
152
- descriptionEllipsizeMode,
153
- descriptionStyle,
154
- descriptionMaxFontSizeMultiplier,
155
- titleMaxFontSizeMultiplier,
156
- testID,
157
- ...rest
158
- }: Props,
159
- ref: React.ForwardedRef<View>
160
- ) => {
161
- const theme = useInternalTheme(themeOverrides);
162
- const [alignToTop, setAlignToTop] = React.useState(false);
163
-
164
- const onDescriptionTextLayout = (
165
- event: NativeSyntheticEvent<TextLayoutEventData>
166
- ) => {
167
- if (!theme.isV3) {
168
- return;
169
- }
170
- const { nativeEvent } = event;
171
- setAlignToTop(nativeEvent.lines.length >= 2);
172
- };
173
-
174
- const renderDescription = (
175
- descriptionColor: string,
176
- description?: Description | null
177
- ) => {
178
- return typeof description === 'function' ? (
179
- description({
180
- selectable: false,
181
- ellipsizeMode: descriptionEllipsizeMode,
182
- color: descriptionColor,
183
- fontSize: styles.description.fontSize,
184
- })
185
- ) : (
186
- <Text
187
- selectable={false}
188
- numberOfLines={descriptionNumberOfLines}
189
- ellipsizeMode={descriptionEllipsizeMode}
190
- style={[
191
- styles.description,
192
- { color: descriptionColor },
193
- descriptionStyle,
194
- ]}
195
- onTextLayout={onDescriptionTextLayout}
196
- maxFontSizeMultiplier={descriptionMaxFontSizeMultiplier}
197
- >
198
- {description}
199
- </Text>
200
- );
201
- };
202
-
203
- const renderTitle = () => {
204
- const titleColor = theme.isV3
205
- ? theme.colors.onSurface
206
- : color(theme.colors.text).alpha(0.87).rgb().string();
207
-
208
- return typeof title === 'function' ? (
209
- title({
210
- selectable: false,
211
- ellipsizeMode: titleEllipsizeMode,
212
- color: titleColor,
213
- fontSize: styles.title.fontSize,
214
- })
215
- ) : (
216
- <Text
217
- selectable={false}
218
- ellipsizeMode={titleEllipsizeMode}
219
- numberOfLines={titleNumberOfLines}
220
- style={[styles.title, { color: titleColor }, titleStyle]}
221
- maxFontSizeMultiplier={titleMaxFontSizeMultiplier}
222
- >
223
- {title}
224
- </Text>
225
- );
226
- };
227
-
228
- const descriptionColor = theme.isV3
229
- ? theme.colors.onSurfaceVariant
230
- : color(theme.colors.text).alpha(0.54).rgb().string();
231
-
232
- return (
233
- <TouchableRipple
234
- {...rest}
235
- ref={ref}
236
- style={[theme.isV3 ? styles.containerV3 : styles.container, style]}
237
- onPress={onPress}
238
- theme={theme}
239
- testID={testID}
240
- >
241
- <View style={theme.isV3 ? styles.rowV3 : styles.row}>
242
- {left
243
- ? left({
244
- color: descriptionColor,
245
- style: getLeftStyles(alignToTop, description, theme.isV3),
246
- })
247
- : null}
248
- <View
249
- style={[
250
- theme.isV3 ? styles.itemV3 : styles.item,
251
- styles.content,
252
- contentStyle,
253
- ]}
254
- testID={`${testID}-content`}
255
- >
256
- {renderTitle()}
257
-
258
- {description
259
- ? renderDescription(descriptionColor, description)
260
- : null}
261
- </View>
262
- {right
263
- ? right({
264
- color: descriptionColor,
265
- style: getRightStyles(alignToTop, description, theme.isV3),
266
- })
267
- : null}
268
- </View>
269
- </TouchableRipple>
270
- );
271
- };
272
-
273
- ListItem.displayName = 'List.Item';
274
- const Component = forwardRef(ListItem);
275
-
276
- const styles = StyleSheet.create({
277
- container: {
278
- padding: 8,
279
- },
280
- containerV3: {
281
- paddingVertical: 8,
282
- paddingRight: 24,
283
- },
284
- row: {
285
- width: '100%',
286
- flexDirection: 'row',
287
- },
288
- rowV3: {
289
- width: '100%',
290
- flexDirection: 'row',
291
- marginVertical: 6,
292
- },
293
- title: {
294
- fontSize: 16,
295
- },
296
- description: {
297
- fontSize: 14,
298
- },
299
- item: {
300
- marginVertical: 6,
301
- paddingLeft: 8,
302
- },
303
- itemV3: {
304
- paddingLeft: 16,
305
- },
306
- content: {
307
- flexShrink: 1,
308
- flexGrow: 1,
309
- justifyContent: 'center',
310
- },
311
- });
312
-
313
- export default Component;
@@ -1,87 +0,0 @@
1
- import * as React from 'react';
2
- import {
3
- StyleProp,
4
- StyleSheet,
5
- TextStyle,
6
- View,
7
- ViewStyle,
8
- } from 'react-native';
9
-
10
- import ListSubheader from './ListSubheader';
11
- import { useInternalTheme } from '../../core/theming';
12
- import type { ThemeProp } from '../../types';
13
-
14
- export type Props = React.ComponentPropsWithRef<typeof View> & {
15
- /**
16
- * Title text for the section.
17
- */
18
- title?: string;
19
- /**
20
- * Content of the section.
21
- */
22
- children: React.ReactNode;
23
- /**
24
- * @optional
25
- */
26
- theme?: ThemeProp;
27
- /**
28
- * Style that is passed to Title element.
29
- */
30
- titleStyle?: StyleProp<TextStyle>;
31
- style?: StyleProp<ViewStyle>;
32
- };
33
-
34
- /**
35
- * A component used to group list items.
36
- *
37
- * ## Usage
38
- * ```js
39
- * import * as React from 'react';
40
- * import { List, MD3Colors } from 'react-native-paper';
41
- *
42
- * const MyComponent = () => (
43
- * <List.Section>
44
- * <List.Subheader>Some title</List.Subheader>
45
- * <List.Item title="First Item" left={() => <List.Icon icon="folder" />} />
46
- * <List.Item
47
- * title="Second Item"
48
- * left={() => <List.Icon color={MD3Colors.tertiary70} icon="folder" />}
49
- * />
50
- * </List.Section>
51
- * );
52
- *
53
- * export default MyComponent;
54
- * ```
55
- */
56
- const ListSection = ({
57
- children,
58
- title,
59
- titleStyle,
60
- style,
61
- theme: themeOverrides,
62
- ...rest
63
- }: Props) => {
64
- const theme = useInternalTheme(themeOverrides);
65
- const viewProps = { ...rest, theme };
66
-
67
- return (
68
- <View {...viewProps} style={[styles.container, style]}>
69
- {title ? (
70
- <ListSubheader style={titleStyle} theme={theme}>
71
- {title}
72
- </ListSubheader>
73
- ) : null}
74
- {children}
75
- </View>
76
- );
77
- };
78
-
79
- ListSection.displayName = 'List.Section';
80
-
81
- const styles = StyleSheet.create({
82
- container: {
83
- marginVertical: 8,
84
- },
85
- });
86
-
87
- export default ListSection;
@@ -1,79 +0,0 @@
1
- import * as React from 'react';
2
- import { StyleProp, StyleSheet, TextStyle } from 'react-native';
3
-
4
- import color from 'color';
5
- import type { ThemeProp } from 'src/types';
6
-
7
- import { useInternalTheme } from '../../core/theming';
8
- import Text from '../Typography/Text';
9
-
10
- export type Props = React.ComponentProps<typeof Text> & {
11
- /**
12
- * @optional
13
- */
14
- theme?: ThemeProp;
15
- /**
16
- * Style that is passed to Text element.
17
- */
18
- style?: StyleProp<TextStyle>;
19
- /**
20
- * Specifies the largest possible scale a text font can reach.
21
- */
22
- maxFontSizeMultiplier?: number;
23
- };
24
-
25
- /**
26
- * A component used to display a header in lists.
27
- *
28
- * ## Usage
29
- * ```js
30
- * import * as React from 'react';
31
- * import { List } from 'react-native-paper';
32
- *
33
- * const MyComponent = () => <List.Subheader>My List Title</List.Subheader>;
34
- *
35
- * export default MyComponent;
36
- * ```
37
- */
38
- const ListSubheader = ({
39
- style,
40
- theme: overrideTheme,
41
- maxFontSizeMultiplier,
42
- ...rest
43
- }: Props) => {
44
- const theme = useInternalTheme(overrideTheme);
45
-
46
- const textColor = theme.isV3
47
- ? theme.colors.onSurfaceVariant
48
- : color(theme.colors.text).alpha(0.54).rgb().string();
49
-
50
- const font = theme.isV3 ? theme.fonts.bodyMedium : theme.fonts.medium;
51
-
52
- return (
53
- <Text
54
- variant="bodyMedium"
55
- numberOfLines={1}
56
- maxFontSizeMultiplier={maxFontSizeMultiplier}
57
- {...rest}
58
- style={[
59
- styles.container,
60
- {
61
- color: textColor,
62
- ...font,
63
- },
64
- style,
65
- ]}
66
- />
67
- );
68
- };
69
-
70
- ListSubheader.displayName = 'List.Subheader';
71
-
72
- const styles = StyleSheet.create({
73
- container: {
74
- paddingHorizontal: 16,
75
- paddingVertical: 13,
76
- },
77
- });
78
-
79
- export default ListSubheader;
@@ -1,113 +0,0 @@
1
- import { FlexAlignType, ColorValue, StyleSheet } from 'react-native';
2
-
3
- import color from 'color';
4
- import type { EllipsizeProp, InternalTheme } from 'src/types';
5
-
6
- type Description =
7
- | React.ReactNode
8
- | ((props: {
9
- selectable: boolean;
10
- ellipsizeMode: EllipsizeProp | undefined;
11
- color: string;
12
- fontSize: number;
13
- }) => React.ReactNode);
14
-
15
- export type Style = {
16
- marginLeft?: number;
17
- marginRight?: number;
18
- marginVertical?: number;
19
- alignSelf?: FlexAlignType;
20
- };
21
-
22
- export const getLeftStyles = (
23
- alignToTop: boolean,
24
- description: Description,
25
- isV3: boolean
26
- ) => {
27
- const stylesV3 = {
28
- marginRight: 0,
29
- marginLeft: 16,
30
- alignSelf: alignToTop ? 'flex-start' : 'center',
31
- };
32
-
33
- if (!description) {
34
- return {
35
- ...styles.iconMarginLeft,
36
- ...styles.marginVerticalNone,
37
- ...(isV3 && { ...stylesV3 }),
38
- };
39
- }
40
-
41
- if (!isV3) {
42
- return styles.iconMarginLeft;
43
- }
44
-
45
- return {
46
- ...styles.iconMarginLeft,
47
- ...stylesV3,
48
- };
49
- };
50
-
51
- export const getRightStyles = (
52
- alignToTop: boolean,
53
- description: Description,
54
- isV3: boolean
55
- ) => {
56
- const stylesV3 = {
57
- marginLeft: 16,
58
- alignSelf: alignToTop ? 'flex-start' : 'center',
59
- };
60
-
61
- if (!description) {
62
- return {
63
- ...styles.iconMarginRight,
64
- ...styles.marginVerticalNone,
65
- ...(isV3 && { ...stylesV3 }),
66
- };
67
- }
68
-
69
- if (!isV3) {
70
- return styles.iconMarginRight;
71
- }
72
-
73
- return {
74
- ...styles.iconMarginRight,
75
- ...stylesV3,
76
- };
77
- };
78
-
79
- const styles = StyleSheet.create({
80
- marginVerticalNone: { marginVertical: 0 },
81
- iconMarginLeft: { marginLeft: 0, marginRight: 16 },
82
- iconMarginRight: { marginRight: 0 },
83
- });
84
-
85
- export const getAccordionColors = ({
86
- theme,
87
- isExpanded,
88
- customRippleColor,
89
- }: {
90
- theme: InternalTheme;
91
- isExpanded?: boolean;
92
- customRippleColor?: ColorValue;
93
- }) => {
94
- const titleColor = theme.isV3
95
- ? theme.colors.onSurface
96
- : color(theme.colors.text).alpha(0.87).rgb().string();
97
-
98
- const descriptionColor = theme.isV3
99
- ? theme.colors.onSurfaceVariant
100
- : color(theme.colors.text).alpha(0.54).rgb().string();
101
-
102
- const titleTextColor = isExpanded ? theme.colors?.primary : titleColor;
103
-
104
- const rippleColor =
105
- customRippleColor || color(titleTextColor).alpha(0.12).rgb().string();
106
-
107
- return {
108
- titleColor,
109
- descriptionColor,
110
- titleTextColor,
111
- rippleColor,
112
- };
113
- };
@@ -1,121 +0,0 @@
1
- import * as React from 'react';
2
- import { StyleSheet, Text, Platform, ViewProps, Role } from 'react-native';
3
-
4
- import { black } from '../styles/themes/v2/colors';
5
-
6
- export type IconProps = {
7
- name: string;
8
- color?: string;
9
- size: number;
10
- direction: 'rtl' | 'ltr';
11
- allowFontScaling?: boolean;
12
- testID?: string;
13
- };
14
-
15
- type AccessibilityProps =
16
- | {
17
- role?: Role;
18
- focusable?: boolean;
19
- }
20
- | {
21
- accessibilityElementsHidden?: boolean;
22
- importantForAccessibility?: 'auto' | 'yes' | 'no' | 'no-hide-descendants';
23
- };
24
-
25
- let MaterialCommunityIcons: React.ComponentType<
26
- React.ComponentProps<
27
- typeof import('react-native-vector-icons/MaterialCommunityIcons').default
28
- > & {
29
- color: string;
30
- pointerEvents?: ViewProps['pointerEvents'];
31
- }
32
- >;
33
-
34
- try {
35
- // Optionally require vector-icons
36
- MaterialCommunityIcons =
37
- require('react-native-vector-icons/MaterialCommunityIcons').default;
38
- } catch (e) {
39
- let isErrorLogged = false;
40
-
41
- // Fallback component for icons
42
- MaterialCommunityIcons = ({ name, color, size, ...rest }) => {
43
- /* eslint-disable no-console */
44
- if (!isErrorLogged) {
45
- if (
46
- !/(Cannot find module|Module not found|Cannot resolve module)/.test(
47
- (e as any).message
48
- )
49
- ) {
50
- console.error(e);
51
- }
52
-
53
- console.warn(
54
- `Tried to use the icon '${name}' in a component from 'react-native-paper', but 'react-native-vector-icons/MaterialCommunityIcons' could not be loaded.`,
55
- `To remove this warning, try installing 'react-native-vector-icons' or use another method to specify icon: https://callstack.github.io/react-native-paper/docs/guides/icons`
56
- );
57
-
58
- isErrorLogged = true;
59
- }
60
-
61
- return (
62
- <Text
63
- {...rest}
64
- style={[styles.icon, { color, fontSize: size }]}
65
- // @ts-expect-error: Text doesn't support this, but it seems to affect TouchableNativeFeedback
66
- pointerEvents="none"
67
- selectable={false}
68
- >
69
- □
70
- </Text>
71
- );
72
- };
73
- }
74
-
75
- export const accessibilityProps: AccessibilityProps =
76
- Platform.OS === 'web'
77
- ? {
78
- role: 'img',
79
- focusable: false,
80
- }
81
- : {
82
- accessibilityElementsHidden: true,
83
- importantForAccessibility:
84
- 'no-hide-descendants' as 'no-hide-descendants',
85
- };
86
-
87
- const defaultIcon = ({
88
- name,
89
- color = black,
90
- size,
91
- direction,
92
- allowFontScaling,
93
- testID,
94
- }: IconProps) => (
95
- <MaterialCommunityIcons
96
- allowFontScaling={allowFontScaling}
97
- name={name}
98
- color={color}
99
- size={size}
100
- style={[
101
- {
102
- transform: [{ scaleX: direction === 'rtl' ? -1 : 1 }],
103
- lineHeight: size,
104
- },
105
- styles.icon,
106
- ]}
107
- pointerEvents="none"
108
- selectable={false}
109
- testID={testID}
110
- {...accessibilityProps}
111
- />
112
- );
113
-
114
- const styles = StyleSheet.create({
115
- // eslint-disable-next-line react-native/no-color-literals
116
- icon: {
117
- backgroundColor: 'transparent',
118
- },
119
- });
120
-
121
- export default defaultIcon;