@expo/ui 55.0.2 → 55.0.4

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 (232) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/ui/AnimatedVisibilityView.kt +130 -0
  4. package/android/src/main/java/expo/modules/ui/BottomSheetView.kt +91 -13
  5. package/android/src/main/java/expo/modules/ui/CardView.kt +138 -34
  6. package/android/src/main/java/expo/modules/ui/CheckboxView.kt +98 -0
  7. package/android/src/main/java/expo/modules/ui/ChipView.kt +267 -142
  8. package/android/src/main/java/expo/modules/ui/DatePickerView.kt +258 -70
  9. package/android/src/main/java/expo/modules/ui/ExpoUIModule.kt +209 -61
  10. package/android/src/main/java/expo/modules/ui/ModifierRegistry.kt +44 -1
  11. package/android/src/main/java/expo/modules/ui/ProgressView.kt +189 -89
  12. package/android/src/main/java/expo/modules/ui/RadioButtonView.kt +3 -7
  13. package/android/src/main/java/expo/modules/ui/SegmentedButtonView.kt +115 -0
  14. package/android/src/main/java/expo/modules/ui/SegmentedControlView.kt +35 -0
  15. package/android/src/main/java/expo/modules/ui/SliderView.kt +70 -12
  16. package/android/src/main/java/expo/modules/ui/SwitchView.kt +53 -161
  17. package/android/src/main/java/expo/modules/ui/TextInputView.kt +39 -15
  18. package/android/src/main/java/expo/modules/ui/ToggleButtonView.kt +95 -57
  19. package/android/src/main/java/expo/modules/ui/button/Button.kt +117 -158
  20. package/android/src/main/java/expo/modules/ui/button/FloatingActionButton.kt +92 -0
  21. package/android/src/main/java/expo/modules/ui/button/IconButton.kt +73 -86
  22. package/android/src/main/java/expo/modules/ui/menu/DropdownMenu.kt +39 -0
  23. package/android/src/main/java/expo/modules/ui/menu/DropdownMenuItem.kt +70 -0
  24. package/android/src/main/java/expo/modules/ui/menu/DropdownMenuRecords.kt +18 -0
  25. package/build/datetime-picker/DateTimePicker.android.d.ts +3 -0
  26. package/build/datetime-picker/DateTimePicker.android.d.ts.map +1 -0
  27. package/build/datetime-picker/DateTimePicker.d.ts +3 -0
  28. package/build/datetime-picker/DateTimePicker.d.ts.map +1 -0
  29. package/build/datetime-picker/DateTimePicker.web.d.ts +3 -0
  30. package/build/datetime-picker/DateTimePicker.web.d.ts.map +1 -0
  31. package/build/datetime-picker/index.d.ts +5 -0
  32. package/build/datetime-picker/index.d.ts.map +1 -0
  33. package/build/datetime-picker/types.d.ts +128 -0
  34. package/build/datetime-picker/types.d.ts.map +1 -0
  35. package/build/jetpack-compose/AnimatedVisibility/index.d.ts +134 -0
  36. package/build/jetpack-compose/AnimatedVisibility/index.d.ts.map +1 -0
  37. package/build/jetpack-compose/AnimatedVisibility/symbols.d.ts +3 -0
  38. package/build/jetpack-compose/AnimatedVisibility/symbols.d.ts.map +1 -0
  39. package/build/jetpack-compose/Button/index.d.ts +65 -51
  40. package/build/jetpack-compose/Button/index.d.ts.map +1 -1
  41. package/build/jetpack-compose/Card/index.d.ts +72 -14
  42. package/build/jetpack-compose/Card/index.d.ts.map +1 -1
  43. package/build/jetpack-compose/Checkbox/index.d.ts +73 -0
  44. package/build/jetpack-compose/Checkbox/index.d.ts.map +1 -0
  45. package/build/jetpack-compose/Chip/index.d.ts +247 -27
  46. package/build/jetpack-compose/Chip/index.d.ts.map +1 -1
  47. package/build/jetpack-compose/DatePicker/index.d.ts +38 -3
  48. package/build/jetpack-compose/DatePicker/index.d.ts.map +1 -1
  49. package/build/jetpack-compose/DropdownMenu/DropdownMenuItem.d.ts +70 -0
  50. package/build/jetpack-compose/DropdownMenu/DropdownMenuItem.d.ts.map +1 -0
  51. package/build/jetpack-compose/DropdownMenu/index.d.ts +68 -0
  52. package/build/jetpack-compose/DropdownMenu/index.d.ts.map +1 -0
  53. package/build/jetpack-compose/FloatingActionButton/index.d.ts +150 -0
  54. package/build/jetpack-compose/FloatingActionButton/index.d.ts.map +1 -0
  55. package/build/jetpack-compose/HorizontalFloatingToolbar/index.d.ts +2 -2
  56. package/build/jetpack-compose/HorizontalFloatingToolbar/index.d.ts.map +1 -1
  57. package/build/jetpack-compose/IconButton/index.d.ts +45 -29
  58. package/build/jetpack-compose/IconButton/index.d.ts.map +1 -1
  59. package/build/jetpack-compose/ModalBottomSheet/index.d.ts +65 -13
  60. package/build/jetpack-compose/ModalBottomSheet/index.d.ts.map +1 -1
  61. package/build/jetpack-compose/MultiChoiceSegmentedButtonRow/index.d.ts +17 -0
  62. package/build/jetpack-compose/MultiChoiceSegmentedButtonRow/index.d.ts.map +1 -0
  63. package/build/jetpack-compose/Progress/index.d.ts +78 -35
  64. package/build/jetpack-compose/Progress/index.d.ts.map +1 -1
  65. package/build/jetpack-compose/RadioButton/index.d.ts +2 -2
  66. package/build/jetpack-compose/RadioButton/index.d.ts.map +1 -1
  67. package/build/jetpack-compose/SegmentedButton/index.d.ts +74 -0
  68. package/build/jetpack-compose/SegmentedButton/index.d.ts.map +1 -0
  69. package/build/jetpack-compose/SingleChoiceSegmentedButtonRow/index.d.ts +17 -0
  70. package/build/jetpack-compose/SingleChoiceSegmentedButtonRow/index.d.ts.map +1 -0
  71. package/build/jetpack-compose/Slider/index.d.ts +34 -10
  72. package/build/jetpack-compose/Slider/index.d.ts.map +1 -1
  73. package/build/jetpack-compose/Switch/index.d.ts +10 -50
  74. package/build/jetpack-compose/Switch/index.d.ts.map +1 -1
  75. package/build/jetpack-compose/TextInput/index.d.ts +9 -0
  76. package/build/jetpack-compose/TextInput/index.d.ts.map +1 -1
  77. package/build/jetpack-compose/ToggleButton/index.d.ts +60 -32
  78. package/build/jetpack-compose/ToggleButton/index.d.ts.map +1 -1
  79. package/build/jetpack-compose/index.d.ts +5 -4
  80. package/build/jetpack-compose/index.d.ts.map +1 -1
  81. package/build/jetpack-compose/modifiers/index.d.ts +18 -1
  82. package/build/jetpack-compose/modifiers/index.d.ts.map +1 -1
  83. package/build/swift-ui/Link/index.d.ts +36 -0
  84. package/build/swift-ui/Link/index.d.ts.map +1 -0
  85. package/build/swift-ui/ProgressView/index.d.ts +1 -5
  86. package/build/swift-ui/ProgressView/index.d.ts.map +1 -1
  87. package/build/swift-ui/Stepper/index.d.ts +3 -3
  88. package/build/swift-ui/Stepper/index.d.ts.map +1 -1
  89. package/build/swift-ui/Text/index.d.ts +33 -1
  90. package/build/swift-ui/Text/index.d.ts.map +1 -1
  91. package/build/swift-ui/index.d.ts +1 -0
  92. package/build/swift-ui/index.d.ts.map +1 -1
  93. package/build/swift-ui/modifiers/environment.d.ts +16 -1
  94. package/build/swift-ui/modifiers/environment.d.ts.map +1 -1
  95. package/build/swift-ui/modifiers/index.d.ts +24 -7
  96. package/build/swift-ui/modifiers/index.d.ts.map +1 -1
  97. package/build/swift-ui/modifiers/shapes/index.d.ts +2 -2
  98. package/build/swift-ui/modifiers/widgets.d.ts +14 -0
  99. package/build/swift-ui/modifiers/widgets.d.ts.map +1 -0
  100. package/build/swift-ui/types.d.ts +7 -0
  101. package/build/swift-ui/types.d.ts.map +1 -1
  102. package/expo-module.config.json +1 -1
  103. package/ios/BottomSheetView.swift +1 -6
  104. package/ios/ClosedRangeDateRecord.swift +10 -0
  105. package/ios/ColorPickerView.swift +9 -8
  106. package/ios/ConfirmationDialog/ConfirmationDialog.swift +4 -6
  107. package/ios/DatePickerView.swift +7 -5
  108. package/ios/DisclosureGroupView.swift +5 -7
  109. package/ios/ExpoUIModule.swift +1 -0
  110. package/ios/LinkView.swift +29 -0
  111. package/ios/ListView.swift +6 -14
  112. package/ios/Modifiers/DefaultScrollAnchorForRoleModifier.swift +32 -0
  113. package/ios/Modifiers/DefaultScrollAnchorModifier.swift +16 -0
  114. package/ios/Modifiers/EnvironmentModifier.swift +14 -0
  115. package/ios/Modifiers/ViewModifierRegistry.swift +12 -0
  116. package/ios/Modifiers/WidgetModifiers.swift +12 -0
  117. package/ios/Picker/PickerView.swift +6 -10
  118. package/ios/Popover/PopoverView.swift +3 -5
  119. package/ios/ProgressView.swift +0 -5
  120. package/ios/SectionView.swift +3 -5
  121. package/ios/SliderView.swift +8 -6
  122. package/ios/StepperView.swift +12 -16
  123. package/ios/TextView.swift +37 -1
  124. package/ios/Toggle/ToggleView.swift +5 -7
  125. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4-sources.jar +0 -0
  126. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4-sources.jar.md5 +1 -0
  127. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4-sources.jar.sha1 +1 -0
  128. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4-sources.jar.sha256 +1 -0
  129. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4-sources.jar.sha512 +1 -0
  130. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.aar +0 -0
  131. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.aar.md5 +1 -0
  132. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.aar.sha1 +1 -0
  133. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.aar.sha256 +1 -0
  134. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.aar.sha512 +1 -0
  135. package/local-maven-repo/expo/modules/ui/expo.modules.ui/{55.0.2/expo.modules.ui-55.0.2.module → 55.0.4/expo.modules.ui-55.0.4.module} +22 -22
  136. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.module.md5 +1 -0
  137. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.module.sha1 +1 -0
  138. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.module.sha256 +1 -0
  139. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.module.sha512 +1 -0
  140. package/local-maven-repo/expo/modules/ui/expo.modules.ui/{55.0.2/expo.modules.ui-55.0.2.pom → 55.0.4/expo.modules.ui-55.0.4.pom} +1 -1
  141. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.pom.md5 +1 -0
  142. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.pom.sha1 +1 -0
  143. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.pom.sha256 +1 -0
  144. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.4/expo.modules.ui-55.0.4.pom.sha512 +1 -0
  145. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml +4 -4
  146. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.md5 +1 -1
  147. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha1 +1 -1
  148. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha256 +1 -1
  149. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha512 +1 -1
  150. package/package.json +9 -2
  151. package/src/datetime-picker/DateTimePicker.android.tsx +126 -0
  152. package/src/datetime-picker/DateTimePicker.tsx +94 -0
  153. package/src/datetime-picker/DateTimePicker.web.tsx +5 -0
  154. package/src/datetime-picker/index.tsx +11 -0
  155. package/src/datetime-picker/types.tsx +147 -0
  156. package/src/jetpack-compose/AnimatedVisibility/index.tsx +206 -0
  157. package/src/jetpack-compose/AnimatedVisibility/symbols.ts +8 -0
  158. package/src/jetpack-compose/Button/index.tsx +69 -92
  159. package/src/jetpack-compose/Card/index.tsx +105 -29
  160. package/src/jetpack-compose/Checkbox/index.tsx +126 -0
  161. package/src/jetpack-compose/Chip/index.tsx +391 -51
  162. package/src/jetpack-compose/DatePicker/index.tsx +112 -7
  163. package/src/jetpack-compose/DropdownMenu/DropdownMenuItem.tsx +126 -0
  164. package/src/jetpack-compose/DropdownMenu/index.tsx +107 -0
  165. package/src/jetpack-compose/FloatingActionButton/index.tsx +207 -0
  166. package/src/jetpack-compose/HorizontalFloatingToolbar/index.tsx +4 -2
  167. package/src/jetpack-compose/IconButton/index.tsx +49 -56
  168. package/src/jetpack-compose/ModalBottomSheet/index.tsx +85 -15
  169. package/src/jetpack-compose/MultiChoiceSegmentedButtonRow/index.tsx +34 -0
  170. package/src/jetpack-compose/Progress/index.tsx +120 -62
  171. package/src/jetpack-compose/RadioButton/index.tsx +8 -9
  172. package/src/jetpack-compose/SegmentedButton/index.tsx +109 -0
  173. package/src/jetpack-compose/SingleChoiceSegmentedButtonRow/index.tsx +34 -0
  174. package/src/jetpack-compose/Slider/index.tsx +76 -29
  175. package/src/jetpack-compose/Switch/index.tsx +17 -87
  176. package/src/jetpack-compose/TextInput/index.tsx +10 -0
  177. package/src/jetpack-compose/ToggleButton/index.tsx +67 -43
  178. package/src/jetpack-compose/index.ts +5 -4
  179. package/src/jetpack-compose/modifiers/index.ts +26 -2
  180. package/src/swift-ui/Link/index.tsx +52 -0
  181. package/src/swift-ui/ProgressView/index.tsx +1 -3
  182. package/src/swift-ui/Stepper/index.tsx +7 -7
  183. package/src/swift-ui/Text/index.tsx +66 -2
  184. package/src/swift-ui/index.tsx +1 -0
  185. package/src/swift-ui/modifiers/environment.ts +17 -4
  186. package/src/swift-ui/modifiers/index.ts +44 -10
  187. package/src/swift-ui/modifiers/widgets.ts +18 -0
  188. package/src/swift-ui/types.ts +5 -0
  189. package/android/src/main/java/expo/modules/ui/FilterChipView.kt +0 -59
  190. package/android/src/main/java/expo/modules/ui/PickerView.kt +0 -161
  191. package/android/src/main/java/expo/modules/ui/TextButtonView.kt +0 -33
  192. package/android/src/main/java/expo/modules/ui/menu/ContextMenu.kt +0 -183
  193. package/android/src/main/java/expo/modules/ui/menu/ContextMenuRecords.kt +0 -64
  194. package/build/jetpack-compose/Button/types.d.ts +0 -5
  195. package/build/jetpack-compose/Button/types.d.ts.map +0 -1
  196. package/build/jetpack-compose/ContextMenu/Submenu.d.ts +0 -17
  197. package/build/jetpack-compose/ContextMenu/Submenu.d.ts.map +0 -1
  198. package/build/jetpack-compose/ContextMenu/index.d.ts +0 -65
  199. package/build/jetpack-compose/ContextMenu/index.d.ts.map +0 -1
  200. package/build/jetpack-compose/ContextMenu/utils.d.ts +0 -24
  201. package/build/jetpack-compose/ContextMenu/utils.d.ts.map +0 -1
  202. package/build/jetpack-compose/FilterChip/index.d.ts +0 -49
  203. package/build/jetpack-compose/FilterChip/index.d.ts.map +0 -1
  204. package/build/jetpack-compose/Picker/index.d.ts +0 -62
  205. package/build/jetpack-compose/Picker/index.d.ts.map +0 -1
  206. package/build/jetpack-compose/TextButton/index.d.ts +0 -29
  207. package/build/jetpack-compose/TextButton/index.d.ts.map +0 -1
  208. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2-sources.jar +0 -0
  209. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2-sources.jar.md5 +0 -1
  210. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2-sources.jar.sha1 +0 -1
  211. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2-sources.jar.sha256 +0 -1
  212. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2-sources.jar.sha512 +0 -1
  213. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.aar +0 -0
  214. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.aar.md5 +0 -1
  215. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.aar.sha1 +0 -1
  216. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.aar.sha256 +0 -1
  217. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.aar.sha512 +0 -1
  218. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.module.md5 +0 -1
  219. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.module.sha1 +0 -1
  220. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.module.sha256 +0 -1
  221. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.module.sha512 +0 -1
  222. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.pom.md5 +0 -1
  223. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.pom.sha1 +0 -1
  224. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.pom.sha256 +0 -1
  225. package/local-maven-repo/expo/modules/ui/expo.modules.ui/55.0.2/expo.modules.ui-55.0.2.pom.sha512 +0 -1
  226. package/src/jetpack-compose/Button/types.ts +0 -57
  227. package/src/jetpack-compose/ContextMenu/Submenu.tsx +0 -21
  228. package/src/jetpack-compose/ContextMenu/index.tsx +0 -149
  229. package/src/jetpack-compose/ContextMenu/utils.ts +0 -144
  230. package/src/jetpack-compose/FilterChip/index.tsx +0 -89
  231. package/src/jetpack-compose/Picker/index.tsx +0 -90
  232. package/src/jetpack-compose/TextButton/index.tsx +0 -55
@@ -0,0 +1,68 @@
1
+ import { ReactNode } from 'react';
2
+ import { StyleProp, ViewStyle, type ColorValue } from 'react-native';
3
+ import { ModifierConfig } from '../../types';
4
+ /**
5
+ * Props of the `DropdownMenu` component.
6
+ */
7
+ export type DropdownMenuProps = {
8
+ /**
9
+ * The contents of the submenu are used as an anchor for the dropdown menu.
10
+ * The children will be wrapped in a pressable element, which triggers opening of the dropdown menu.
11
+ */
12
+ children: ReactNode;
13
+ /**
14
+ * Whether the dropdown menu is expanded (visible).
15
+ */
16
+ expanded?: boolean;
17
+ /**
18
+ * Callback fired when the menu requests to be dismissed (e.g. tapping outside).
19
+ * Must be provided when `expanded` is `true` to allow the menu to close.
20
+ */
21
+ onDismissRequest?: () => void;
22
+ /**
23
+ * The color of the container holding the dropdown menu items.
24
+ */
25
+ color?: ColorValue;
26
+ /**
27
+ * Optional styles to apply to the `DropdownMenu`.
28
+ */
29
+ style?: StyleProp<ViewStyle>;
30
+ /**
31
+ * Modifiers for the component.
32
+ */
33
+ modifiers?: ModifierConfig[];
34
+ };
35
+ /**
36
+ * Container for items displayed in the dropdown menu.
37
+ * Children should be `DropdownMenuItem` components or other native views.
38
+ */
39
+ export declare function Items(props: {
40
+ children: ReactNode;
41
+ }): import("react").JSX.Element;
42
+ export declare namespace Items {
43
+ var tag: string;
44
+ }
45
+ /**
46
+ * Container for the trigger element that opens the dropdown menu.
47
+ */
48
+ export declare function Trigger(props: {
49
+ children: ReactNode;
50
+ }): import("react").JSX.Element;
51
+ export declare namespace Trigger {
52
+ var tag: string;
53
+ }
54
+ /**
55
+ * Preview content shown during long press (iOS only).
56
+ */
57
+ export declare function Preview(props: {
58
+ children: ReactNode;
59
+ }): import("react").JSX.Element;
60
+ declare function DropdownMenu(props: DropdownMenuProps): import("react").JSX.Element;
61
+ declare namespace DropdownMenu {
62
+ var Trigger: typeof import(".").Trigger;
63
+ var Preview: typeof import(".").Preview;
64
+ var Items: typeof import(".").Items;
65
+ }
66
+ export { DropdownMenu };
67
+ export { DropdownMenuItem } from './DropdownMenuItem';
68
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/DropdownMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAc7C;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAWF;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAEnD;yBAFe,KAAK;;;AAKrB;;GAEG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAErD;yBAFe,OAAO;;;AAKvB;;GAEG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAErD;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAW7C;kBAXQ,YAAY;;;;;AAiBrB,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,150 @@
1
+ import { type ColorValue } from 'react-native';
2
+ import { ModifierConfig } from '../../types';
3
+ type SlotChildProps = {
4
+ children: React.ReactNode;
5
+ };
6
+ /**
7
+ * Props shared by all `FloatingActionButton` variants.
8
+ */
9
+ export type FloatingActionButtonProps = {
10
+ /**
11
+ * Slot-based children (use `.Icon` sub-component).
12
+ */
13
+ children: React.ReactNode;
14
+ /**
15
+ * The background color of the button container.
16
+ * Defaults to `FloatingActionButtonDefaults.containerColor` (primary container).
17
+ */
18
+ containerColor?: ColorValue;
19
+ /**
20
+ * Callback invoked when the button is clicked.
21
+ */
22
+ onClick?: () => void;
23
+ /**
24
+ * Modifiers for the component.
25
+ */
26
+ modifiers?: ModifierConfig[];
27
+ };
28
+ /**
29
+ * Props for the `SmallFloatingActionButton` component.
30
+ * Same as {@link FloatingActionButtonProps}.
31
+ */
32
+ export type SmallFloatingActionButtonProps = FloatingActionButtonProps;
33
+ /**
34
+ * Props for the `LargeFloatingActionButton` component.
35
+ * Same as {@link FloatingActionButtonProps}.
36
+ */
37
+ export type LargeFloatingActionButtonProps = FloatingActionButtonProps;
38
+ /**
39
+ * Props for the `ExtendedFloatingActionButton` component.
40
+ */
41
+ export type ExtendedFloatingActionButtonProps = FloatingActionButtonProps & {
42
+ /**
43
+ * Slot-based children (use `.Icon` and `.Text` sub-components).
44
+ */
45
+ children: React.ReactNode;
46
+ /**
47
+ * Controls whether the label is shown (expanded) or hidden (collapsed).
48
+ * @default true
49
+ */
50
+ expanded?: boolean;
51
+ };
52
+ declare function FABIcon(props: SlotChildProps): import("react").JSX.Element;
53
+ declare function FABText(props: SlotChildProps): import("react").JSX.Element;
54
+ /**
55
+ * Renders a Material Design 3 small `FloatingActionButton`.
56
+ *
57
+ * Wraps [`SmallFloatingActionButton`](https://developer.android.com/reference/kotlin/androidx/compose/material3/package-summary#SmallFloatingActionButton(kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.material3.FloatingActionButtonElevation,androidx.compose.foundation.interaction.MutableInteractionSource,kotlin.Function0)).
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * import { SmallFloatingActionButton, Host, Icon } from '@expo/ui/jetpack-compose';
62
+ *
63
+ * <Host matchContents>
64
+ * <SmallFloatingActionButton onClick={() => console.log('pressed')}>
65
+ * <SmallFloatingActionButton.Icon>
66
+ * <Icon source={require('./assets/add.xml')} />
67
+ * </SmallFloatingActionButton.Icon>
68
+ * </SmallFloatingActionButton>
69
+ * </Host>
70
+ * ```
71
+ */
72
+ declare function SmallFloatingActionButtonComponent(props: SmallFloatingActionButtonProps): import("react").JSX.Element;
73
+ declare namespace SmallFloatingActionButtonComponent {
74
+ var Icon: typeof FABIcon;
75
+ }
76
+ export { SmallFloatingActionButtonComponent as SmallFloatingActionButton };
77
+ /**
78
+ * Renders a Material Design 3 standard `FloatingActionButton`.
79
+ *
80
+ * Wraps [`FloatingActionButton`](https://developer.android.com/reference/kotlin/androidx/compose/material3/package-summary#FloatingActionButton(kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.material3.FloatingActionButtonElevation,androidx.compose.foundation.interaction.MutableInteractionSource,kotlin.Function0)).
81
+ *
82
+ * @example
83
+ * ```tsx
84
+ * import { FloatingActionButton, Host, Icon } from '@expo/ui/jetpack-compose';
85
+ *
86
+ * <Host matchContents>
87
+ * <FloatingActionButton onClick={() => console.log('pressed')}>
88
+ * <FloatingActionButton.Icon>
89
+ * <Icon source={require('./assets/add.xml')} />
90
+ * </FloatingActionButton.Icon>
91
+ * </FloatingActionButton>
92
+ * </Host>
93
+ * ```
94
+ */
95
+ declare function FloatingActionButtonComponent(props: FloatingActionButtonProps): import("react").JSX.Element;
96
+ declare namespace FloatingActionButtonComponent {
97
+ var Icon: typeof FABIcon;
98
+ }
99
+ export { FloatingActionButtonComponent as FloatingActionButton };
100
+ /**
101
+ * Renders a Material Design 3 large `FloatingActionButton`.
102
+ *
103
+ * Wraps [`LargeFloatingActionButton`](https://developer.android.com/reference/kotlin/androidx/compose/material3/package-summary#LargeFloatingActionButton(kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.material3.FloatingActionButtonElevation,androidx.compose.foundation.interaction.MutableInteractionSource,kotlin.Function0)).
104
+ *
105
+ * @example
106
+ * ```tsx
107
+ * import { LargeFloatingActionButton, Host, Icon } from '@expo/ui/jetpack-compose';
108
+ *
109
+ * <Host matchContents>
110
+ * <LargeFloatingActionButton onClick={() => console.log('pressed')}>
111
+ * <LargeFloatingActionButton.Icon>
112
+ * <Icon source={require('./assets/add.xml')} />
113
+ * </LargeFloatingActionButton.Icon>
114
+ * </LargeFloatingActionButton>
115
+ * </Host>
116
+ * ```
117
+ */
118
+ declare function LargeFloatingActionButtonComponent(props: LargeFloatingActionButtonProps): import("react").JSX.Element;
119
+ declare namespace LargeFloatingActionButtonComponent {
120
+ var Icon: typeof FABIcon;
121
+ }
122
+ export { LargeFloatingActionButtonComponent as LargeFloatingActionButton };
123
+ /**
124
+ * Renders a Material Design 3 `ExtendedFloatingActionButton` with animated label expansion.
125
+ *
126
+ * Wraps [`ExtendedFloatingActionButton`](https://developer.android.com/reference/kotlin/androidx/compose/material3/package-summary#ExtendedFloatingActionButton(kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.material3.FloatingActionButtonElevation,androidx.compose.foundation.interaction.MutableInteractionSource,kotlin.Function1)).
127
+ *
128
+ * @example
129
+ * ```tsx
130
+ * import { ExtendedFloatingActionButton, Host, Icon, Text } from '@expo/ui/jetpack-compose';
131
+ *
132
+ * <Host matchContents>
133
+ * <ExtendedFloatingActionButton expanded={true} onClick={() => console.log('pressed')}>
134
+ * <ExtendedFloatingActionButton.Icon>
135
+ * <Icon source={require('./assets/edit.xml')} />
136
+ * </ExtendedFloatingActionButton.Icon>
137
+ * <ExtendedFloatingActionButton.Text>
138
+ * <Text>Edit</Text>
139
+ * </ExtendedFloatingActionButton.Text>
140
+ * </ExtendedFloatingActionButton>
141
+ * </Host>
142
+ * ```
143
+ */
144
+ declare function ExtendedFloatingActionButtonComponent(props: ExtendedFloatingActionButtonProps): import("react").JSX.Element;
145
+ declare namespace ExtendedFloatingActionButtonComponent {
146
+ var Icon: typeof FABIcon;
147
+ var Text: typeof FABText;
148
+ }
149
+ export { ExtendedFloatingActionButtonComponent as ExtendedFloatingActionButton };
150
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/FloatingActionButton/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAa,MAAM,aAAa,CAAC;AAGxD,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAOF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;;OAGG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;IAE5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,yBAAyB,GAAG;IAC1E;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAmBF,iBAAS,OAAO,CAAC,KAAK,EAAE,cAAc,+BAErC;AAED,iBAAS,OAAO,CAAC,KAAK,EAAE,cAAc,+BAErC;AAgBD;;;;;;;;;;;;;;;;;GAiBG;AACH,iBAAS,kCAAkC,CAAC,KAAK,EAAE,8BAA8B,+BAEhF;kBAFQ,kCAAkC;;;AAI3C,OAAO,EAAE,kCAAkC,IAAI,yBAAyB,EAAE,CAAC;AAE3E;;;;;;;;;;;;;;;;;GAiBG;AACH,iBAAS,6BAA6B,CAAC,KAAK,EAAE,yBAAyB,+BAEtE;kBAFQ,6BAA6B;;;AAItC,OAAO,EAAE,6BAA6B,IAAI,oBAAoB,EAAE,CAAC;AAEjE;;;;;;;;;;;;;;;;;GAiBG;AACH,iBAAS,kCAAkC,CAAC,KAAK,EAAE,8BAA8B,+BAEhF;kBAFQ,kCAAkC;;;AAI3C,OAAO,EAAE,kCAAkC,IAAI,yBAAyB,EAAE,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,qCAAqC,CAAC,KAAK,EAAE,iCAAiC,+BAEtF;kBAFQ,qCAAqC;;;;AAK9C,OAAO,EAAE,qCAAqC,IAAI,4BAA4B,EAAE,CAAC"}
@@ -14,7 +14,7 @@ export type HorizontalFloatingToolbarProps = {
14
14
  */
15
15
  modifiers?: ExpoModifier[];
16
16
  };
17
- export type FloatingActionButtonProps = {
17
+ export type HorizontalFloatingToolbarFloatingActionButtonProps = {
18
18
  /**
19
19
  * A callback that is called when the button is pressed.
20
20
  */
@@ -28,7 +28,7 @@ export type FloatingActionButtonProps = {
28
28
  * FloatingActionButton component for HorizontalFloatingToolbar.
29
29
  * This component marks its children to be rendered in the FAB slot.
30
30
  */
31
- export declare function HorizontalFloatingToolbarFloatingActionButton(props: FloatingActionButtonProps): import("react").JSX.Element;
31
+ export declare function HorizontalFloatingToolbarFloatingActionButton(props: HorizontalFloatingToolbarFloatingActionButtonProps): import("react").JSX.Element;
32
32
  /**
33
33
  * Renders a `HorizontalFloatingToolbar` component.
34
34
  * A horizontal toolbar that floats above content, typically used for action buttons.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/HorizontalFloatingToolbar/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;;OAGG;IACH,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAEjC;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAmBF;;;GAGG;AACH,wBAAgB,6CAA6C,CAAC,KAAK,EAAE,yBAAyB,+BAM7F;AAaD;;;GAGG;AACH,iBAAS,yBAAyB,CAAC,KAAK,EAAE,8BAA8B,+BAMvE;kBANQ,yBAAyB;;;AAUlC,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/HorizontalFloatingToolbar/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,MAAM,8BAA8B,GAAG;IAC3C;;;OAGG;IACH,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAEjC;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,kDAAkD,GAAG;IAC/D;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAmBF;;;GAGG;AACH,wBAAgB,6CAA6C,CAC3D,KAAK,EAAE,kDAAkD,+BAO1D;AAaD;;;GAGG;AACH,iBAAS,yBAAyB,CAAC,KAAK,EAAE,8BAA8B,+BAMvE;kBANQ,yBAAyB;;;AAUlC,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
@@ -1,53 +1,69 @@
1
1
  import { type ColorValue } from 'react-native';
2
- import { ExpoModifier, ViewEvent } from '../../types';
3
- import { ButtonElementColors } from '../Button';
4
- import { ShapeJSXElement, ShapeRecordProps } from '../Shape';
2
+ import type { ModifierConfig } from '../../types';
3
+ import { type ShapeJSXElement } from '../Shape';
5
4
  /**
6
- * The built-in button styles available on Android.
7
- * - `outlined` - A button with an outline.
8
- * - `elevated` - A filled button with a shadow.
5
+ * Colors for icon button elements.
9
6
  */
10
- export type IconButtonVariant = 'default' | 'bordered' | 'outlined';
7
+ export type IconButtonColors = {
8
+ containerColor?: ColorValue;
9
+ contentColor?: ColorValue;
10
+ disabledContainerColor?: ColorValue;
11
+ disabledContentColor?: ColorValue;
12
+ };
11
13
  export type IconButtonProps = {
12
14
  /**
13
- * A callback that is called when the button is pressed.
14
- */
15
- onPress?: () => void;
16
- /**
17
- * The button variant.
15
+ * Callback that is called when the icon button is clicked.
18
16
  */
19
- variant?: IconButtonVariant;
17
+ onClick?: () => void;
20
18
  /**
21
- * The text to display inside the button.
19
+ * Whether the icon button is enabled for user interaction.
20
+ * @default true
22
21
  */
23
- children?: React.JSX.Element;
22
+ enabled?: boolean;
24
23
  /**
25
- * Colors for button's core elements.
24
+ * Colors for icon button elements.
26
25
  * @platform android
27
26
  */
28
- elementColors?: ButtonElementColors;
27
+ colors?: IconButtonColors;
29
28
  /**
30
- * Button color.
29
+ * The shape of the icon button.
31
30
  */
32
- color?: ColorValue;
33
31
  shape?: ShapeJSXElement;
34
32
  /**
35
- * Disabled state of the button.
33
+ * Modifiers for the component.
36
34
  */
37
- disabled?: boolean;
35
+ modifiers?: ModifierConfig[];
38
36
  /**
39
- * Modifiers for the component.
37
+ * Content to display inside the icon button.
40
38
  */
41
- modifiers?: ExpoModifier[];
39
+ children: React.ReactNode;
42
40
  };
43
41
  /**
44
- * @hidden
42
+ * A standard icon button with no background.
45
43
  */
46
- export type NativeIconButtonProps = Omit<IconButtonProps, 'role' | 'onPress' | 'shape'> & {
47
- shape?: ShapeRecordProps;
48
- } & ViewEvent<'onButtonPressed', void>;
44
+ export declare const IconButton: {
45
+ (props: IconButtonProps): import("react").JSX.Element;
46
+ displayName: string;
47
+ };
49
48
  /**
50
- * Displays a native button component.
49
+ * A filled icon button with a solid background.
51
50
  */
52
- export declare function IconButton(props: IconButtonProps): import("react").JSX.Element;
51
+ export declare const FilledIconButton: {
52
+ (props: IconButtonProps): import("react").JSX.Element;
53
+ displayName: string;
54
+ };
55
+ /**
56
+ * A filled tonal icon button with a muted background.
57
+ */
58
+ export declare const FilledTonalIconButton: {
59
+ (props: IconButtonProps): import("react").JSX.Element;
60
+ displayName: string;
61
+ };
62
+ /**
63
+ * An outlined icon button with a border and no fill.
64
+ */
65
+ export declare const OutlinedIconButton: {
66
+ (props: IconButtonProps): import("react").JSX.Element;
67
+ displayName: string;
68
+ };
53
69
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/IconButton/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAiB,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG5E;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;IAC7B;;;OAGG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG;IACxF,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,GAAG,SAAS,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;AA4BvC;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,+BAEhD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/IconButton/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,UAAU,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,sBAAsB,CAAC,EAAE,UAAU,CAAC;IACpC,oBAAoB,CAAC,EAAE,UAAU,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAkBF;;GAEG;AACH,eAAO,MAAM,UAAU;YAXK,eAAe;;CAWsB,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,gBAAgB;YAhBD,eAAe;;CAgBkC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,qBAAqB;YArBN,eAAe;;CAqB4C,CAAC;AAExF;;GAEG;AACH,eAAO,MAAM,kBAAkB;YA1BH,eAAe;;CA0BsC,CAAC"}
@@ -1,12 +1,38 @@
1
- import React from 'react';
2
- import { type ExpoModifier } from '../../types';
1
+ import React, { Ref } from 'react';
2
+ import { type ColorValue } from 'react-native';
3
+ import { type ModifierConfig } from '../../types';
4
+ export type ModalBottomSheetRef = {
5
+ /**
6
+ * Programmatically hides the bottom sheet with an animation.
7
+ * The returned promise resolves after the dismiss animation completes.
8
+ */
9
+ hide: () => Promise<void>;
10
+ };
11
+ export type ModalBottomSheetProperties = {
12
+ /**
13
+ * Whether the bottom sheet can be dismissed by pressing the back button.
14
+ * @default true
15
+ */
16
+ shouldDismissOnBackPress?: boolean;
17
+ /**
18
+ * Whether the bottom sheet can be dismissed by clicking outside (on the scrim).
19
+ * @default true
20
+ */
21
+ shouldDismissOnClickOutside?: boolean;
22
+ };
3
23
  export type ModalBottomSheetProps = {
4
24
  /**
5
25
  * The children of the `ModalBottomSheet` component.
26
+ * Can include a `ModalBottomSheet.DragHandle` slot for a custom drag handle.
6
27
  */
7
28
  children: React.ReactNode;
8
29
  /**
9
- * Callback function that is called when the bottom sheet is dismissed.
30
+ * Can be used to imperatively hide the bottom sheet with an animation.
31
+ */
32
+ ref?: Ref<ModalBottomSheetRef>;
33
+ /**
34
+ * Callback function that is called when the user dismisses the bottom sheet
35
+ * (via swipe, back press, or tapping outside the scrim).
10
36
  */
11
37
  onDismissRequest: () => void;
12
38
  /**
@@ -14,21 +40,47 @@ export type ModalBottomSheetProps = {
14
40
  * @default false
15
41
  */
16
42
  skipPartiallyExpanded?: boolean;
43
+ /**
44
+ * The background color of the bottom sheet.
45
+ */
46
+ containerColor?: ColorValue;
47
+ /**
48
+ * The preferred color of the content inside the bottom sheet.
49
+ */
50
+ contentColor?: ColorValue;
51
+ /**
52
+ * The color of the scrim overlay behind the bottom sheet.
53
+ */
54
+ scrimColor?: ColorValue;
55
+ /**
56
+ * Whether to show the default drag handle at the top of the bottom sheet.
57
+ * Ignored if a custom `ModalBottomSheet.DragHandle` slot is provided.
58
+ * @default true
59
+ */
60
+ showDragHandle?: boolean;
61
+ /**
62
+ * Whether gestures (swipe to dismiss) are enabled on the bottom sheet.
63
+ * @default true
64
+ */
65
+ sheetGesturesEnabled?: boolean;
66
+ /**
67
+ * Properties for the modal window behavior.
68
+ */
69
+ properties?: ModalBottomSheetProperties;
17
70
  /**
18
71
  * Modifiers for the component.
19
72
  */
20
- modifiers?: ExpoModifier[];
73
+ modifiers?: ModifierConfig[];
21
74
  };
22
75
  /**
23
76
  * A Material Design modal bottom sheet.
24
77
  */
25
- export declare function ModalBottomSheet(props: ModalBottomSheetProps): React.JSX.Element;
26
- /**
27
- * @deprecated Use `ModalBottomSheet` instead.
28
- */
29
- export declare const BottomSheet: typeof ModalBottomSheet;
30
- /**
31
- * @deprecated Use `ModalBottomSheetProps` instead.
32
- */
33
- export type BottomSheetProps = ModalBottomSheetProps;
78
+ declare function ModalBottomSheetComponent(props: ModalBottomSheetProps): React.JSX.Element;
79
+ declare namespace ModalBottomSheetComponent {
80
+ var DragHandle: (props: {
81
+ children: React.ReactNode;
82
+ }) => React.JSX.Element;
83
+ }
84
+ export declare const ModalBottomSheet: typeof ModalBottomSheetComponent;
85
+ export {};
34
86
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/ModalBottomSheet/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,aAAa,CAAC;AAGhE,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAqBF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,qBAE5D;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,yBAAmB,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/ModalBottomSheet/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAalD,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;OAGG;IACH,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,GAAG,CAAC,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC/B;;;OAGG;IACH,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;OAEG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;OAEG;IACH,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAgCF;;GAEG;AACH,iBAAS,yBAAyB,CAAC,KAAK,EAAE,qBAAqB,qBAE9D;kBAFQ,yBAAyB;4BAPP;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;;AAaxD,eAAO,MAAM,gBAAgB,kCAA4B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type ModifierConfig } from '../../types';
2
+ export type MultiChoiceSegmentedButtonRowProps = {
3
+ /**
4
+ * SegmentedButton children.
5
+ */
6
+ children: React.ReactNode;
7
+ /**
8
+ * Modifiers for the component.
9
+ */
10
+ modifiers?: ModifierConfig[];
11
+ };
12
+ /**
13
+ * A row container for multi-choice `SegmentedButton` children.
14
+ * Maps to Material 3 `MultiChoiceSegmentedButtonRow`.
15
+ */
16
+ export declare function MultiChoiceSegmentedButtonRow(props: MultiChoiceSegmentedButtonRowProps): import("react").JSX.Element;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/MultiChoiceSegmentedButtonRow/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,MAAM,MAAM,kCAAkC,GAAG;IAC/C;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAKF;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,kCAAkC,+BAUtF"}
@@ -1,65 +1,108 @@
1
- import { ColorValue } from 'react-native';
2
- import { ExpoModifier } from '../../types';
3
- export type ProgressElementColors = {
4
- /**
5
- * Track color.
6
- *
7
- * @platform android
8
- */
9
- trackColor?: ColorValue;
10
- };
11
- export type CircularProgressProps = {
1
+ import { type ColorValue } from 'react-native';
2
+ import { type ModifierConfig } from '../../types';
3
+ /**
4
+ * Stroke cap style for progress indicators.
5
+ */
6
+ export type StrokeCap = 'round' | 'butt' | 'square';
7
+ /**
8
+ * Common props shared by all progress indicator variants.
9
+ */
10
+ type BaseProgressProps = {
12
11
  /**
13
- * The current progress value of the slider. This is a number between `0` and `1`.
12
+ * The current progress value between `0` and `1`. Omit for indeterminate.
14
13
  */
15
14
  progress?: number | null;
16
15
  /**
17
- * Progress color.
16
+ * Progress indicator color.
18
17
  */
19
18
  color?: ColorValue;
20
19
  /**
21
- * Colors for switch's core elements.
22
- * @platform android
20
+ * Track (background) color.
23
21
  */
24
- elementColors?: ProgressElementColors;
22
+ trackColor?: ColorValue;
25
23
  /**
26
24
  * Modifiers for the component.
27
25
  */
28
- modifiers?: ExpoModifier[];
26
+ modifiers?: ModifierConfig[];
29
27
  };
30
- export type LinearProgressProps = {
28
+ /**
29
+ * Configuration for the stop indicator dot at the end of the determinate linear progress track.
30
+ * When provided, draws a stop indicator with the given options. Omit to use the Compose default.
31
+ */
32
+ export type DrawStopIndicatorConfig = {
31
33
  /**
32
- * The current progress value of the slider. This is a number between `0` and `1`.
34
+ * Color of the stop indicator. Defaults to the indicator's color.
33
35
  */
34
- progress?: number | null;
36
+ color?: ColorValue;
35
37
  /**
36
- * Progress color.
38
+ * Stroke cap style for the stop indicator. Defaults to the indicator's strokeCap.
37
39
  */
38
- color?: ColorValue;
40
+ strokeCap?: StrokeCap;
41
+ /**
42
+ * Size of the stop indicator in dp. Defaults to the Material 3 default.
43
+ */
44
+ stopSize?: number;
45
+ };
46
+ export type LinearProgressIndicatorProps = BaseProgressProps & {
39
47
  /**
40
- * Colors for switch's core elements.
41
- * @platform android
48
+ * Stroke cap style for the indicator ends.
49
+ * @default 'round'
42
50
  */
43
- elementColors?: ProgressElementColors;
51
+ strokeCap?: StrokeCap;
44
52
  /**
45
- * Modifiers for the component.
53
+ * Gap size between the indicator and track in dp.
54
+ */
55
+ gapSize?: number;
56
+ /**
57
+ * Configuration for the stop indicator dot at the end of the determinate progress track.
46
58
  */
47
- modifiers?: ExpoModifier[];
59
+ drawStopIndicator?: DrawStopIndicatorConfig;
48
60
  };
49
61
  /**
50
- * Renders a `CircularProgress` component.
62
+ * A linear progress indicator that displays progress in a horizontal bar.
63
+ *
64
+ * Matches the Jetpack Compose `LinearProgressIndicator`.
51
65
  */
52
- export declare function CircularProgress(props: CircularProgressProps): import("react").JSX.Element;
66
+ export declare const LinearProgressIndicator: import("react").ComponentType<LinearProgressIndicatorProps>;
67
+ export type CircularProgressIndicatorProps = BaseProgressProps & {
68
+ /**
69
+ * Width of the circular stroke in dp.
70
+ */
71
+ strokeWidth?: number;
72
+ /**
73
+ * Stroke cap style for the indicator ends.
74
+ * @default 'round'
75
+ */
76
+ strokeCap?: StrokeCap;
77
+ /**
78
+ * Gap size between the indicator and track in dp.
79
+ */
80
+ gapSize?: number;
81
+ };
53
82
  /**
54
- * Renders a `LinearProgress` component.
83
+ * A circular progress indicator that displays progress in a circular format.
84
+ *
85
+ * Matches the Jetpack Compose `CircularProgressIndicator`.
55
86
  */
56
- export declare function LinearProgress(props: LinearProgressProps): import("react").JSX.Element;
87
+ export declare const CircularProgressIndicator: import("react").ComponentType<CircularProgressIndicatorProps>;
88
+ export type LinearWavyProgressIndicatorProps = BaseProgressProps & {
89
+ /**
90
+ * Size of the stop indicator in dp at the end of the determinate progress track.
91
+ */
92
+ stopSize?: number;
93
+ };
57
94
  /**
58
- * Renders a `CircularWavyProgress` component with wavy animation.
95
+ * A linear progress indicator with wavy animation style.
96
+ *
97
+ * Matches the Jetpack Compose `LinearWavyProgressIndicator`.
59
98
  */
60
- export declare function CircularWavyProgress(props: CircularProgressProps): import("react").JSX.Element;
99
+ export declare const LinearWavyProgressIndicator: import("react").ComponentType<LinearWavyProgressIndicatorProps>;
100
+ export type CircularWavyProgressIndicatorProps = BaseProgressProps;
61
101
  /**
62
- * Renders a `LinearWavyProgress` component with wavy animation.
102
+ * A circular progress indicator with wavy animation style.
103
+ *
104
+ * Matches the Jetpack Compose `CircularWavyProgressIndicator`.
63
105
  */
64
- export declare function LinearWavyProgress(props: LinearProgressProps): import("react").JSX.Element;
106
+ export declare const CircularWavyProgressIndicator: import("react").ComponentType<BaseProgressProps>;
107
+ export {};
65
108
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/Progress/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;OAIG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B,CAAC;AAsBF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,+BAE5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,+BAExD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,+BAEhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,+BAE5D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/Progress/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEpD;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B,CAAC;AAsBF;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,iBAAiB,GAAG;IAC7D;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;CAC7C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,6DAEnC,CAAC;AAMF,MAAM,MAAM,8BAA8B,GAAG,iBAAiB,GAAG;IAC/D;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,+DAErC,CAAC;AAMF,MAAM,MAAM,gCAAgC,GAAG,iBAAiB,GAAG;IACjE;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,iEACsD,CAAC;AAM/F,MAAM,MAAM,kCAAkC,GAAG,iBAAiB,CAAC;AAEnE;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,kDACwD,CAAC"}