pytech-ui 1.0.30 → 1.0.32

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 (243) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +40 -40
  3. package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
  4. package/android/.gradle/nb-cache/trust/8732A504261C070E1F639E78DF65F8E6DC6FFC865B3D7178A7609BB57105805F +1 -1
  5. package/android/build.gradle +48 -47
  6. package/android/src/main/AndroidManifest.xml +2 -2
  7. package/android/src/main/java/expo/modules/pytechui/Dialog.kt +39 -39
  8. package/android/src/main/java/expo/modules/pytechui/ForEach/ForEachRecords.kt +23 -23
  9. package/android/src/main/java/expo/modules/pytechui/ForEach/index.kt +82 -82
  10. package/android/src/main/java/expo/modules/pytechui/Gradient/GradientView.kt +124 -124
  11. package/android/src/main/java/expo/modules/pytechui/Icon/index.kt +36 -36
  12. package/android/src/main/java/expo/modules/pytechui/Icon/utils.kt +42 -42
  13. package/android/src/main/java/expo/modules/pytechui/ListItem/Data/ListItemDataRecords.kt +84 -84
  14. package/android/src/main/java/expo/modules/pytechui/ListItem/Data/ListItemFromData.kt +127 -127
  15. package/android/src/main/java/expo/modules/pytechui/ListItem/Slots/ListItemFromSlots.kt +60 -60
  16. package/android/src/main/java/expo/modules/pytechui/ListItem/Slots/types.kt +42 -42
  17. package/android/src/main/java/expo/modules/pytechui/ListItem/_shared/Decorator/Decorator.kt +79 -79
  18. package/android/src/main/java/expo/modules/pytechui/ListItem/_shared/Decorator/Divider.kt +36 -36
  19. package/android/src/main/java/expo/modules/pytechui/ListItem/_shared/Decorator/utilsDecorator.kt +19 -19
  20. package/android/src/main/java/expo/modules/pytechui/ListItem/_shared/Dynamic/Dynamic.kt +163 -163
  21. package/android/src/main/java/expo/modules/pytechui/ListItem/_shared/Dynamic/Row.kt +136 -136
  22. package/android/src/main/java/expo/modules/pytechui/Navigation/NavigationWrapperView.kt +80 -0
  23. package/android/src/main/java/expo/modules/pytechui/PytechUiModifiers.kt +93 -93
  24. package/android/src/main/java/expo/modules/pytechui/PytechUiModule.kt +186 -168
  25. package/android/src/main/java/expo/modules/pytechui/SearchBar.kt +213 -213
  26. package/android/src/main/java/expo/modules/pytechui/Section/SectionHost.kt +81 -81
  27. package/android/src/main/java/expo/modules/pytechui/Section/SectionHostView.kt +65 -65
  28. package/android/src/main/java/expo/modules/pytechui/TextField.kt +251 -251
  29. package/android/src/main/java/expo/modules/pytechui/TypographySlot/TypographySlotBridge.kt +120 -120
  30. package/android/src/main/java/expo/modules/pytechui/TypographySlot/constants.kt +47 -47
  31. package/android/src/main/java/expo/modules/pytechui/extended-theme/ExtendedThemeView.kt +19 -19
  32. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Colors/ExtendedColorBridge.kt +76 -76
  33. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Constants/Constants.kt +10 -10
  34. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarLargeFlexibleTokens.kt +20 -20
  35. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarLargeTokens.kt +19 -19
  36. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarMediumFlexibleTokens.kt +20 -20
  37. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarMediumTokens.kt +19 -19
  38. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarSmallTokens.kt +19 -19
  39. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarTokens.kt +23 -23
  40. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AssistChipTokens.kt +25 -25
  41. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BadgeTokens.kt +20 -20
  42. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BaselineButtonTokens.kt +26 -26
  43. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BottomAppBarTokens.kt +19 -19
  44. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonGroupSmallTokens.kt +20 -20
  45. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonLargeTokens.kt +24 -24
  46. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonMediumTokens.kt +24 -24
  47. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonSmallTokens.kt +24 -24
  48. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonXLargeTokens.kt +24 -24
  49. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonXSmallTokens.kt +24 -24
  50. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/CheckboxTokens.kt +35 -35
  51. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/CircularProgressIndicatorTokens.kt +25 -25
  52. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ConnectedButtonGroupSmallTokens.kt +21 -21
  53. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DateInputModalTokens.kt +22 -22
  54. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DatePickerModalTokens.kt +33 -33
  55. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DialogTokens.kt +19 -19
  56. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DividerTokens.kt +19 -19
  57. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DockedToolbarTokens.kt +23 -23
  58. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DragHandleTokens.kt +25 -25
  59. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevatedButtonTokens.kt +19 -19
  60. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevatedCardTokens.kt +20 -20
  61. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevationTokens.kt +24 -24
  62. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExpressiveMotionTokens.kt +28 -28
  63. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabLargeTokens.kt +23 -23
  64. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabMediumTokens.kt +24 -24
  65. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabPrimaryTokens.kt +20 -20
  66. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabSmallTokens.kt +23 -23
  67. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabBaselineTokens.kt +21 -21
  68. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabLargeTokens.kt +21 -21
  69. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabMediumTokens.kt +22 -22
  70. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabMenuBaselineTokens.kt +28 -28
  71. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabSmallTokens.kt +21 -21
  72. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledAutocompleteTokens.kt +31 -31
  73. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledButtonTokens.kt +19 -19
  74. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledCardTokens.kt +20 -20
  75. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledIconButtonTokens.kt +18 -18
  76. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTextFieldTokens.kt +31 -31
  77. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTonalButtonTokens.kt +23 -23
  78. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTonalIconButtonTokens.kt +18 -18
  79. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilterChipTokens.kt +28 -28
  80. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FloatingToolbarTokens.kt +23 -23
  81. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/IconButtonTokens.kt +17 -17
  82. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/InputChipTokens.kt +30 -30
  83. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LargeIconButtonTokens.kt +27 -27
  84. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LinearProgressIndicatorTokens.kt +28 -28
  85. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ListTokens.kt +57 -57
  86. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LoadingIndicatorTokens.kt +21 -21
  87. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/MediumIconButtonTokens.kt +27 -27
  88. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/MotionTokens.kt +44 -44
  89. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarHorizontalItemTokens.kt +22 -22
  90. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarTokens.kt +23 -23
  91. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarVerticalItemTokens.kt +22 -22
  92. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationDrawerTokens.kt +23 -23
  93. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailBaselineItemTokens.kt +25 -25
  94. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailCollapsedTokens.kt +23 -23
  95. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailExpandedTokens.kt +22 -22
  96. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailHorizontalItemTokens.kt +24 -24
  97. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailVerticalItemTokens.kt +24 -24
  98. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedAutocompleteTokens.kt +30 -30
  99. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedButtonTokens.kt +19 -19
  100. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedCardTokens.kt +21 -21
  101. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedIconButtonTokens.kt +18 -18
  102. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedSegmentedButtonTokens.kt +24 -24
  103. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedTextFieldTokens.kt +31 -31
  104. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/PrimaryNavigationTabTokens.kt +24 -24
  105. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/RadioButtonTokens.kt +22 -22
  106. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ScrimTokens.kt +17 -17
  107. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SearchBarTokens.kt +20 -20
  108. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SearchViewTokens.kt +20 -20
  109. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SecondaryNavigationTabTokens.kt +21 -21
  110. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SegmentedMenuTokens.kt +42 -42
  111. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ShapeTokens.kt +74 -74
  112. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SheetBottomTokens.kt +20 -20
  113. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SliderTokens.kt +39 -39
  114. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SmallIconButtonTokens.kt +27 -27
  115. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SnackbarTokens.kt +21 -21
  116. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonLargeTokens.kt +26 -26
  117. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonMediumTokens.kt +26 -26
  118. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonSmallTokens.kt +26 -26
  119. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonXLargeTokens.kt +26 -26
  120. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonXSmallTokens.kt +27 -27
  121. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StandardMenuTokens.kt +25 -25
  122. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StandardMotionTokens.kt +27 -27
  123. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StateTokens.kt +20 -20
  124. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SuggestionChipTokens.kt +25 -25
  125. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SwitchTokens.kt +37 -37
  126. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TextButtonTokens.kt +18 -18
  127. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TimeInputTokens.kt +24 -24
  128. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TimePickerTokens.kt +30 -30
  129. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TonalButtonTokens.kt +19 -19
  130. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TypeScaleTokens.kt +72 -72
  131. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/VibrantMenuTokens.kt +26 -26
  132. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/XLargeIconButtonTokens.kt +27 -27
  133. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/XSmallIconButtonTokens.kt +27 -27
  134. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/index.kt +216 -216
  135. package/android/src/main/java/expo/modules/pytechui/extended-theme/index.kt +38 -38
  136. package/android/src/main/java/expo/modules/pytechui/utils/children.kt +126 -126
  137. package/android/src/main/java/expo/modules/pytechui/utils/modifiers.kt +44 -44
  138. package/build/constants/utils.d.ts +1 -1
  139. package/build/contexts/alert/components/Alert/index.js +16 -16
  140. package/build/contexts/alert/components/Button/index.js +5 -5
  141. package/build/contexts/alert/components/Provider/index.ios.js +2 -2
  142. package/build/contexts/alert/components/Provider/index.js +3 -3
  143. package/build/contexts/alert/context/provider.d.ts +1 -1
  144. package/build/contexts/alert/context/provider.js +1 -1
  145. package/build/contexts/app/context.d.ts +1 -1
  146. package/build/contexts/app/context.js +15 -15
  147. package/build/contexts/app/index.d.ts +2 -2
  148. package/build/contexts/app/index.js +2 -2
  149. package/build/contexts/app/src/Head/index.d.ts +1 -1
  150. package/build/contexts/app/src/Head/index.web.js +12 -12
  151. package/build/contexts/app/src/Wrapper/index.d.ts +1 -1
  152. package/build/contexts/app/src/Wrapper/index.js +2 -2
  153. package/build/contexts/app/src/styles.css +16 -16
  154. package/build/contexts/app/types.d.ts +1 -1
  155. package/build/contexts/router/index.d.ts +1 -1
  156. package/build/contexts/router/index.js +3 -3
  157. package/build/jetpack-compose/components/Columns/CommonColumn/index.js +2 -2
  158. package/build/jetpack-compose/components/Columns/CommonColumn/types.d.ts +1 -1
  159. package/build/jetpack-compose/components/Columns/CommonColumn/utils.d.ts +1 -1
  160. package/build/jetpack-compose/components/Columns/CommonColumn/utils.js +1 -1
  161. package/build/jetpack-compose/components/DropdownMenu/index.d.ts +1 -1
  162. package/build/jetpack-compose/components/DropdownMenu/index.js +3 -3
  163. package/build/jetpack-compose/components/DropdownPicker/Picker.d.ts +3 -3
  164. package/build/jetpack-compose/components/DropdownPicker/Picker.js +24 -24
  165. package/build/jetpack-compose/components/DropdownPicker/PickerItem.js +5 -5
  166. package/build/jetpack-compose/components/DropdownPicker/context.d.ts +4 -10
  167. package/build/jetpack-compose/components/ForEach/src/ForEach.d.ts +1 -1
  168. package/build/jetpack-compose/components/ForEach/src/ForEach.js +5 -5
  169. package/build/jetpack-compose/components/ForEach/src/ListItem.d.ts +1 -1
  170. package/build/jetpack-compose/components/ForEach/src/types.d.ts +1 -1
  171. package/build/jetpack-compose/components/Gradient/Gradient.js +1 -1
  172. package/build/jetpack-compose/components/Gradient/types.d.ts +1 -1
  173. package/build/jetpack-compose/components/Host.d.ts +4 -3
  174. package/build/jetpack-compose/components/Host.js +6 -2
  175. package/build/jetpack-compose/components/Icon/Icon/Icon.js +1 -1
  176. package/build/jetpack-compose/components/Icon/index.d.ts +1 -1
  177. package/build/jetpack-compose/components/IconSection/IconSection.js +19 -19
  178. package/build/jetpack-compose/components/IconSection/types.d.ts +1 -1
  179. package/build/jetpack-compose/components/IconSection/utils.js +1 -1
  180. package/build/jetpack-compose/components/List/CommonColumn.js +3 -3
  181. package/build/jetpack-compose/components/List/index.d.ts +1 -1
  182. package/build/jetpack-compose/components/List/index.js +11 -11
  183. package/build/jetpack-compose/components/ListItem/SlotListItem.d.ts +2 -2
  184. package/build/jetpack-compose/components/ListItem/SlotListItem.js +9 -9
  185. package/build/jetpack-compose/components/Menu/src/components/Divider.js +2 -2
  186. package/build/jetpack-compose/components/Menu/src/components/Icon.d.ts +1 -1
  187. package/build/jetpack-compose/components/Menu/src/components/Icon.js +1 -1
  188. package/build/jetpack-compose/components/Menu/src/components/Item.d.ts +2 -3
  189. package/build/jetpack-compose/components/Menu/src/components/Item.js +26 -26
  190. package/build/jetpack-compose/components/Menu/src/components/Label.d.ts +4 -1
  191. package/build/jetpack-compose/components/Menu/src/components/Label.js +3 -3
  192. package/build/jetpack-compose/components/Menu/src/components/Menu.d.ts +2 -2
  193. package/build/jetpack-compose/components/Menu/src/components/Menu.js +26 -26
  194. package/build/jetpack-compose/components/Menu/src/components/Trigger.js +7 -7
  195. package/build/jetpack-compose/components/Menu/src/context.d.ts +8 -6
  196. package/build/jetpack-compose/components/Menu/src/utils.js +3 -3
  197. package/build/jetpack-compose/components/NavigationButton.d.ts +7 -0
  198. package/build/jetpack-compose/components/NavigationButton.js +16 -0
  199. package/build/jetpack-compose/components/NavigationWrapper.d.ts +10 -0
  200. package/build/jetpack-compose/components/NavigationWrapper.js +16 -0
  201. package/build/jetpack-compose/components/PagePicker/Item.js +11 -11
  202. package/build/jetpack-compose/components/PagePicker/Picker.js +5 -5
  203. package/build/jetpack-compose/components/PagePicker/context/index.d.ts +1 -1
  204. package/build/jetpack-compose/components/PagePicker/context/index.js +8 -8
  205. package/build/jetpack-compose/components/PullToRefreshBox.js +1 -1
  206. package/build/jetpack-compose/components/SearchBar.d.ts +1 -1
  207. package/build/jetpack-compose/components/SearchBar.js +1 -1
  208. package/build/jetpack-compose/components/Section/components/Column.d.ts +1 -1
  209. package/build/jetpack-compose/components/Section/components/Column.js +3 -3
  210. package/build/jetpack-compose/components/Section/components/Section.js +18 -18
  211. package/build/jetpack-compose/components/Section/components/Slot.d.ts +1 -1
  212. package/build/jetpack-compose/components/Section/components/Slot.js +3 -3
  213. package/build/jetpack-compose/components/SectionHost/index.d.ts +1 -1
  214. package/build/jetpack-compose/components/SectionHost/index.js +3 -3
  215. package/build/jetpack-compose/components/TextField.d.ts +1 -1
  216. package/build/jetpack-compose/components/TextField.js +1 -1
  217. package/build/jetpack-compose/components/TextSlot.js +2 -3
  218. package/build/jetpack-compose/extended-theme/assets/Colors/index.js +2 -2
  219. package/build/jetpack-compose/index.d.ts +2 -0
  220. package/build/jetpack-compose/index.js +2 -0
  221. package/build/jetpack-compose/modifiers/flexWeight.d.ts +1 -1
  222. package/build/jetpack-compose/modifiers/heightIn.d.ts +1 -1
  223. package/build/swift-ui/Image.js +2 -2
  224. package/build/swift-ui/ListItem.js +2 -2
  225. package/build/swift-ui/Slot.js +2 -2
  226. package/build/swift-ui/Text.js +2 -2
  227. package/build/universal/Column/index.android.js +2 -2
  228. package/build/universal/Column/index.ios.js +2 -2
  229. package/build/universal/Column/index.js +2 -2
  230. package/build/universal/Host/index.ios.js +2 -2
  231. package/build/universal/Row/index.android.js +2 -2
  232. package/build/universal/Row/index.ios.js +2 -2
  233. package/build/universal/Row/index.js +2 -2
  234. package/expo-module.config.json +11 -11
  235. package/ios/ChevronForwardView.swift +21 -21
  236. package/ios/GradientView.swift +40 -40
  237. package/ios/ImageView.swift +32 -32
  238. package/ios/ListItem.swift +161 -161
  239. package/ios/PytechUi.podspec +24 -24
  240. package/ios/PytechUiModule.swift +15 -15
  241. package/ios/SlotView.swift +107 -107
  242. package/ios/_shared/utils.swift +58 -58
  243. package/package.json +19 -15
@@ -1,36 +1,36 @@
1
- package expo.modules.pytechui.ListItem
2
-
3
- import androidx.compose.foundation.layout.fillMaxWidth
4
- import androidx.compose.foundation.layout.padding
5
- import androidx.compose.material3.HorizontalDivider
6
- import androidx.compose.runtime.Composable
7
- import androidx.compose.ui.Modifier
8
- import androidx.compose.ui.unit.Dp
9
- import androidx.compose.ui.unit.dp
10
-
11
- import expo.modules.pytechui.theme.ExtendedTheme
12
- import expo.modules.pytechui.theme.tokens.ListTokens
13
-
14
-
15
-
16
- /* Crea el divider segun el leadingWidth */
17
-
18
- @Composable
19
- internal fun ListItemDivider(leadingWidth: Dp) {
20
- val leadingInset = if (leadingWidth > 0.dp) {
21
- leadingWidth + ListTokens.ItemBetweenSpace + 4.dp // +4.dp porque tiene que dar 16.dp
22
- } else {
23
- 0.dp
24
- }
25
-
26
- HorizontalDivider(
27
- modifier = Modifier
28
- .fillMaxWidth()
29
- .padding(
30
- start = ListTokens.DividerLeadingSpace + leadingInset,
31
- end = ListTokens.DividerTrailingSpace,
32
- ),
33
- color = ExtendedTheme.colorScheme.separator.copy(alpha = 0.4f),
34
- thickness = 1.dp,
35
- )
36
- }
1
+ package expo.modules.pytechui.ListItem
2
+
3
+ import androidx.compose.foundation.layout.fillMaxWidth
4
+ import androidx.compose.foundation.layout.padding
5
+ import androidx.compose.material3.HorizontalDivider
6
+ import androidx.compose.runtime.Composable
7
+ import androidx.compose.ui.Modifier
8
+ import androidx.compose.ui.unit.Dp
9
+ import androidx.compose.ui.unit.dp
10
+
11
+ import expo.modules.pytechui.theme.ExtendedTheme
12
+ import expo.modules.pytechui.theme.tokens.ListTokens
13
+
14
+
15
+
16
+ /* Crea el divider segun el leadingWidth */
17
+
18
+ @Composable
19
+ internal fun ListItemDivider(leadingWidth: Dp) {
20
+ val leadingInset = if (leadingWidth > 0.dp) {
21
+ leadingWidth + ListTokens.ItemBetweenSpace + 4.dp // +4.dp porque tiene que dar 16.dp
22
+ } else {
23
+ 0.dp
24
+ }
25
+
26
+ HorizontalDivider(
27
+ modifier = Modifier
28
+ .fillMaxWidth()
29
+ .padding(
30
+ start = ListTokens.DividerLeadingSpace + leadingInset,
31
+ end = ListTokens.DividerTrailingSpace,
32
+ ),
33
+ color = ExtendedTheme.colorScheme.separator.copy(alpha = 0.4f),
34
+ thickness = 1.dp,
35
+ )
36
+ }
@@ -1,19 +1,19 @@
1
- package expo.modules.pytechui.ListItem
2
-
3
- import androidx.compose.foundation.shape.RoundedCornerShape
4
- import androidx.compose.ui.unit.dp
5
-
6
- import expo.modules.pytechui.theme.tokens.ShapeTokens
7
-
8
-
9
-
10
- private val GroupCornerRadius = ShapeTokens.CornerValueExtraLarge
11
-
12
- internal fun itemClipShape(isFirst: Boolean, isLast: Boolean): RoundedCornerShape {
13
- return RoundedCornerShape(
14
- topStart = if (isFirst) GroupCornerRadius else 0.dp,
15
- topEnd = if (isFirst) GroupCornerRadius else 0.dp,
16
- bottomStart = if (isLast) GroupCornerRadius else 0.dp,
17
- bottomEnd = if (isLast) GroupCornerRadius else 0.dp,
18
- )
19
- }
1
+ package expo.modules.pytechui.ListItem
2
+
3
+ import androidx.compose.foundation.shape.RoundedCornerShape
4
+ import androidx.compose.ui.unit.dp
5
+
6
+ import expo.modules.pytechui.theme.tokens.ShapeTokens
7
+
8
+
9
+
10
+ private val GroupCornerRadius = ShapeTokens.CornerValueExtraLarge
11
+
12
+ internal fun itemClipShape(isFirst: Boolean, isLast: Boolean): RoundedCornerShape {
13
+ return RoundedCornerShape(
14
+ topStart = if (isFirst) GroupCornerRadius else 0.dp,
15
+ topEnd = if (isFirst) GroupCornerRadius else 0.dp,
16
+ bottomStart = if (isLast) GroupCornerRadius else 0.dp,
17
+ bottomEnd = if (isLast) GroupCornerRadius else 0.dp,
18
+ )
19
+ }
@@ -1,163 +1,163 @@
1
- package expo.modules.pytechui.ListItem
2
-
3
- import androidx.compose.foundation.layout.Box
4
- import androidx.compose.foundation.layout.fillMaxWidth
5
- import androidx.compose.foundation.layout.size
6
- import androidx.compose.material.icons.Icons
7
- import androidx.compose.material.icons.rounded.ArrowForwardIos
8
- import androidx.compose.material3.Icon
9
- import androidx.compose.material3.ListItem as ListItemMaterial
10
- import androidx.compose.material3.ListItemDefaults
11
- import androidx.compose.material3.Surface
12
- import androidx.compose.runtime.Composable
13
- import androidx.compose.ui.Alignment
14
- import androidx.compose.ui.Modifier
15
- import androidx.compose.ui.graphics.Color
16
- import androidx.compose.ui.graphics.Color as ComposeColor
17
- import androidx.compose.ui.layout.onSizeChanged
18
- import androidx.compose.ui.platform.LocalDensity
19
- import androidx.compose.ui.unit.dp
20
- import expo.modules.ui.composeOrNull
21
-
22
- import expo.modules.pytechui.TypographySlot.SlotTypography
23
- import expo.modules.pytechui.theme.ExtendedTheme
24
-
25
-
26
-
27
- /*
28
-
29
- ListItemDynamic es el componente que se encarga de la logica interna del ListItem
30
-
31
- Se encarga de poner visualmente:
32
-
33
- - LeadingContent
34
- - HeadlineContent
35
- - TrailingContent
36
- - OverlineContent
37
- - SupportingContent
38
-
39
- */
40
-
41
- @Composable
42
- internal fun ListItemDynamic(
43
- props: ListItemProps = ListItemProps(),
44
- modifier: Modifier = Modifier,
45
- innerProps: ListItemInnerProps = ListItemInnerProps(),
46
- leadingContent: (@Composable () -> Unit)? = null,
47
- headlineContent: (@Composable () -> Unit)? = null,
48
- trailingContent: (@Composable () -> Unit)? = null,
49
- overlineContent: (@Composable () -> Unit)? = null,
50
- supportingContent: (@Composable () -> Unit)? = null,
51
- ) {
52
- val density = LocalDensity.current
53
-
54
- val colors = listItemColors(props)
55
-
56
- ListItemMaterial(
57
- modifier = modifier,
58
- colors = colors,
59
- tonalElevation = props.tonalElevation?.dp ?: ListItemDefaults.Elevation,
60
- shadowElevation = props.shadowElevation?.dp ?: ListItemDefaults.Elevation,
61
- supportingContent = supportingContent?.let { content ->
62
- { StyledSlotContent("supportingcontent", colors.supportingContentColor, content) }
63
- },
64
- leadingContent = leadingContent?.let { content ->
65
- {
66
- val styledContent: @Composable () -> Unit = {
67
- StyledSlotContent("leadingcontent", colors.leadingContentColor, content)
68
- }
69
- val onLeadingWidthChanged = innerProps.onLeadingWidthChanged
70
- if (onLeadingWidthChanged != null) {
71
- Box(
72
- modifier = Modifier.onSizeChanged { size ->
73
- onLeadingWidthChanged(with(density) { size.width.toDp() })
74
- },
75
- ) {
76
- styledContent()
77
- }
78
- } else {
79
- styledContent()
80
- }
81
- }
82
- },
83
- overlineContent = overlineContent?.let { content ->
84
- { StyledSlotContent("overlinecontent", colors.overlineContentColor, content) }
85
- },
86
- headlineContent = {
87
- when {
88
- headlineContent == null && trailingContent == null -> Unit
89
- trailingContent == null -> {
90
- Box(modifier = Modifier.fillMaxWidth()) {
91
- headlineContent?.let { content ->
92
- StyledSlotContent("headlinecontent", colors.contentColor, content)
93
- }
94
- }
95
- }
96
- headlineContent == null -> {
97
- Box(
98
- modifier = Modifier.fillMaxWidth(),
99
- contentAlignment = Alignment.CenterEnd,
100
- ) {
101
- StyledSlotContent("trailingcontent", colors.trailingContentColor, trailingContent)
102
- }
103
- }
104
- else -> {
105
- DynamicRow(
106
- first = { StyledSlotContent("headlinecontent", colors.contentColor, headlineContent) },
107
- second = { StyledSlotContent("trailingcontent", colors.trailingContentColor, trailingContent) },
108
- )
109
- }
110
- }
111
- },
112
- trailingContent = if (props.hasNavigationLink == true) {
113
- {
114
- Icon(
115
- imageVector = Icons.Rounded.ArrowForwardIos,
116
- contentDescription = null,
117
- tint = ExtendedTheme.colorScheme.tertiaryLabel,
118
- modifier = Modifier.size(17.dp),
119
- )
120
- }
121
- } else {
122
- null
123
- },
124
- )
125
- }
126
-
127
-
128
- @Composable
129
- internal fun listItemColors(props: ListItemProps) = ListItemDefaults.colors(
130
- containerColor = props.colors?.containerColor.composeOrNull ?: ComposeColor.Transparent,
131
- contentColor = props.colors?.contentColor.composeOrNull ?: ExtendedTheme.colorScheme.label,
132
- leadingContentColor = props.colors?.leadingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.link,
133
- trailingContentColor = props.colors?.trailingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
134
- supportingContentColor = props.colors?.supportingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
135
- overlineContentColor = props.colors?.overlineContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
136
- )
137
-
138
- @Composable
139
- private fun SlotContentColor(
140
- contentColor: Color?,
141
- content: @Composable () -> Unit,
142
- ) {
143
- if (contentColor != null) {
144
- Surface(color = Color.Transparent, contentColor = contentColor) {
145
- content()
146
- }
147
- } else {
148
- content()
149
- }
150
- }
151
-
152
- @Composable
153
- private fun StyledSlotContent(
154
- slotName: String,
155
- contentColor: Color?,
156
- content: @Composable () -> Unit,
157
- ) {
158
- SlotContentColor(contentColor) {
159
- SlotTypography(slotName) {
160
- content()
161
- }
162
- }
163
- }
1
+ package expo.modules.pytechui.ListItem
2
+
3
+ import androidx.compose.foundation.layout.Box
4
+ import androidx.compose.foundation.layout.fillMaxWidth
5
+ import androidx.compose.foundation.layout.size
6
+ import androidx.compose.material.icons.Icons
7
+ import androidx.compose.material.icons.rounded.ArrowForwardIos
8
+ import androidx.compose.material3.Icon
9
+ import androidx.compose.material3.ListItem as ListItemMaterial
10
+ import androidx.compose.material3.ListItemDefaults
11
+ import androidx.compose.material3.Surface
12
+ import androidx.compose.runtime.Composable
13
+ import androidx.compose.ui.Alignment
14
+ import androidx.compose.ui.Modifier
15
+ import androidx.compose.ui.graphics.Color
16
+ import androidx.compose.ui.graphics.Color as ComposeColor
17
+ import androidx.compose.ui.layout.onSizeChanged
18
+ import androidx.compose.ui.platform.LocalDensity
19
+ import androidx.compose.ui.unit.dp
20
+ import expo.modules.ui.composeOrNull
21
+
22
+ import expo.modules.pytechui.TypographySlot.SlotTypography
23
+ import expo.modules.pytechui.theme.ExtendedTheme
24
+
25
+
26
+
27
+ /*
28
+
29
+ ListItemDynamic es el componente que se encarga de la logica interna del ListItem
30
+
31
+ Se encarga de poner visualmente:
32
+
33
+ - LeadingContent
34
+ - HeadlineContent
35
+ - TrailingContent
36
+ - OverlineContent
37
+ - SupportingContent
38
+
39
+ */
40
+
41
+ @Composable
42
+ internal fun ListItemDynamic(
43
+ props: ListItemProps = ListItemProps(),
44
+ modifier: Modifier = Modifier,
45
+ innerProps: ListItemInnerProps = ListItemInnerProps(),
46
+ leadingContent: (@Composable () -> Unit)? = null,
47
+ headlineContent: (@Composable () -> Unit)? = null,
48
+ trailingContent: (@Composable () -> Unit)? = null,
49
+ overlineContent: (@Composable () -> Unit)? = null,
50
+ supportingContent: (@Composable () -> Unit)? = null,
51
+ ) {
52
+ val density = LocalDensity.current
53
+
54
+ val colors = listItemColors(props)
55
+
56
+ ListItemMaterial(
57
+ modifier = modifier,
58
+ colors = colors,
59
+ tonalElevation = props.tonalElevation?.dp ?: ListItemDefaults.Elevation,
60
+ shadowElevation = props.shadowElevation?.dp ?: ListItemDefaults.Elevation,
61
+ supportingContent = supportingContent?.let { content ->
62
+ { StyledSlotContent("supportingcontent", colors.supportingContentColor, content) }
63
+ },
64
+ leadingContent = leadingContent?.let { content ->
65
+ {
66
+ val styledContent: @Composable () -> Unit = {
67
+ StyledSlotContent("leadingcontent", colors.leadingContentColor, content)
68
+ }
69
+ val onLeadingWidthChanged = innerProps.onLeadingWidthChanged
70
+ if (onLeadingWidthChanged != null) {
71
+ Box(
72
+ modifier = Modifier.onSizeChanged { size ->
73
+ onLeadingWidthChanged(with(density) { size.width.toDp() })
74
+ },
75
+ ) {
76
+ styledContent()
77
+ }
78
+ } else {
79
+ styledContent()
80
+ }
81
+ }
82
+ },
83
+ overlineContent = overlineContent?.let { content ->
84
+ { StyledSlotContent("overlinecontent", colors.overlineContentColor, content) }
85
+ },
86
+ headlineContent = {
87
+ when {
88
+ headlineContent == null && trailingContent == null -> Unit
89
+ trailingContent == null -> {
90
+ Box(modifier = Modifier.fillMaxWidth()) {
91
+ headlineContent?.let { content ->
92
+ StyledSlotContent("headlinecontent", colors.contentColor, content)
93
+ }
94
+ }
95
+ }
96
+ headlineContent == null -> {
97
+ Box(
98
+ modifier = Modifier.fillMaxWidth(),
99
+ contentAlignment = Alignment.CenterEnd,
100
+ ) {
101
+ StyledSlotContent("trailingcontent", colors.trailingContentColor, trailingContent)
102
+ }
103
+ }
104
+ else -> {
105
+ DynamicRow(
106
+ first = { StyledSlotContent("headlinecontent", colors.contentColor, headlineContent) },
107
+ second = { StyledSlotContent("trailingcontent", colors.trailingContentColor, trailingContent) },
108
+ )
109
+ }
110
+ }
111
+ },
112
+ trailingContent = if (props.hasNavigationLink == true) {
113
+ {
114
+ Icon(
115
+ imageVector = Icons.Rounded.ArrowForwardIos,
116
+ contentDescription = null,
117
+ tint = ExtendedTheme.colorScheme.tertiaryLabel,
118
+ modifier = Modifier.size(17.dp),
119
+ )
120
+ }
121
+ } else {
122
+ null
123
+ },
124
+ )
125
+ }
126
+
127
+
128
+ @Composable
129
+ internal fun listItemColors(props: ListItemProps) = ListItemDefaults.colors(
130
+ containerColor = props.colors?.containerColor.composeOrNull ?: ComposeColor.Transparent,
131
+ contentColor = props.colors?.contentColor.composeOrNull ?: ExtendedTheme.colorScheme.label,
132
+ leadingContentColor = props.colors?.leadingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.link,
133
+ trailingContentColor = props.colors?.trailingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
134
+ supportingContentColor = props.colors?.supportingContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
135
+ overlineContentColor = props.colors?.overlineContentColor.composeOrNull ?: ExtendedTheme.colorScheme.secondaryLabel,
136
+ )
137
+
138
+ @Composable
139
+ private fun SlotContentColor(
140
+ contentColor: Color?,
141
+ content: @Composable () -> Unit,
142
+ ) {
143
+ if (contentColor != null) {
144
+ Surface(color = Color.Transparent, contentColor = contentColor) {
145
+ content()
146
+ }
147
+ } else {
148
+ content()
149
+ }
150
+ }
151
+
152
+ @Composable
153
+ private fun StyledSlotContent(
154
+ slotName: String,
155
+ contentColor: Color?,
156
+ content: @Composable () -> Unit,
157
+ ) {
158
+ SlotContentColor(contentColor) {
159
+ SlotTypography(slotName) {
160
+ content()
161
+ }
162
+ }
163
+ }