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
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Matias Tobias Gutierrez
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Matias Tobias Gutierrez
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,40 +1,40 @@
1
- # pytech-ui
2
-
3
- Librería de componentes de UI nativos para apps **React Native** / **Expo** (Pytech).
4
-
5
- ## Instalación
6
-
7
- ```bash
8
- npx expo install pytech-ui
9
- npx expo install pytech-ui @expo/ui expo react react-native
10
- ```
11
-
12
- ## Uso
13
-
14
- Componentes SwiftUI (iOS):
15
-
16
- ```tsx
17
- import { Gradient, ListItem, List } from 'pytech-ui/swift-ui';
18
-
19
- export function Example() {
20
- return (
21
- <List>
22
- <ListItem onPress={() => {}}>
23
- <ListItem.Headline>Hola</ListItem.Headline>
24
- </ListItem>
25
- <Gradient systemImage="star.fill" colors={['#7580ba', '#b1c6e4']} />
26
- </List>
27
- );
28
- }
29
- ```
30
-
31
- ## Plataformas
32
-
33
- Los componentes de `pytech-ui/swift-ui` requieren **iOS** y dependen de `@expo/ui`.
34
- Los componentes de `pytech-ui/jetpack-compose` requieren **Android** y dependen de `@expo/ui`.
35
-
36
- Los componentes de `pytech-ui` son multiplataforma y dependen de `@expo/ui`.
37
-
38
- ## Licencia
39
-
40
- MIT — ver `LICENSE`.
1
+ # pytech-ui
2
+
3
+ Librería de componentes de UI nativos para apps **React Native** / **Expo** (Pytech).
4
+
5
+ ## Instalación
6
+
7
+ ```bash
8
+ npx expo install pytech-ui
9
+ npx expo install pytech-ui @expo/ui expo react react-native
10
+ ```
11
+
12
+ ## Uso
13
+
14
+ Componentes SwiftUI (iOS):
15
+
16
+ ```tsx
17
+ import { Gradient, ListItem, List } from 'pytech-ui/swift-ui';
18
+
19
+ export function Example() {
20
+ return (
21
+ <List>
22
+ <ListItem onPress={() => {}}>
23
+ <ListItem.Headline>Hola</ListItem.Headline>
24
+ </ListItem>
25
+ <Gradient systemImage="star.fill" colors={['#7580ba', '#b1c6e4']} />
26
+ </List>
27
+ );
28
+ }
29
+ ```
30
+
31
+ ## Plataformas
32
+
33
+ Los componentes de `pytech-ui/swift-ui` requieren **iOS** y dependen de `@expo/ui`.
34
+ Los componentes de `pytech-ui/jetpack-compose` requieren **Android** y dependen de `@expo/ui`.
35
+
36
+ Los componentes de `pytech-ui` son multiplataforma y dependen de `@expo/ui`.
37
+
38
+ ## Licencia
39
+
40
+ MIT — ver `LICENSE`.
@@ -1,2 +1,2 @@
1
- #Mon Sep 14 18:01:28 ART 2026
2
- gradle.version=8.9
1
+ #Mon Sep 14 18:01:28 ART 2026
2
+ gradle.version=8.9
@@ -1 +1 @@
1
- 277F12787C3C06CBD298FA21C831738A44C655A9122E1F7A1727D9220740B05B
1
+ 277F12787C3C06CBD298FA21C831738A44C655A9122E1F7A1727D9220740B05B
@@ -1,47 +1,48 @@
1
- buildscript {
2
- repositories {
3
- mavenCentral()
4
- }
5
- dependencies {
6
- classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:${kotlinVersion}")
7
- }
8
- }
9
-
10
- plugins {
11
- id 'com.android.library'
12
- id 'expo-module-gradle-plugin'
13
- }
14
- apply plugin: 'org.jetbrains.kotlin.plugin.compose'
15
-
16
- group = 'expo.modules.pytechui'
17
- version = '0.1.0'
18
-
19
- android {
20
- namespace "expo.modules.pytechui"
21
- defaultConfig {
22
- versionCode 1
23
- versionName "0.1.0"
24
- }
25
- buildFeatures {
26
- compose true
27
- }
28
- lintOptions {
29
- abortOnError false
30
- }
31
- }
32
-
33
- dependencies {
34
- implementation 'androidx.activity:activity-compose:1.10.1'
35
- implementation 'androidx.compose.foundation:foundation-android:1.10.6'
36
- implementation 'androidx.compose.ui:ui-android:1.10.6'
37
- implementation 'androidx.compose.material3:material3-android:1.5.0-alpha17'
38
- if (findProject(':expo-ui') != null) {
39
- implementation project(':expo-ui')
40
- } else {
41
- implementation 'expo.modules.ui:expo.modules.ui:+'
42
- }
43
-
44
- implementation 'androidx.compose.material:material-icons-extended:1.7.8'
45
- implementation 'com.squareup.okhttp3:okhttp:4.11.0'
46
- implementation 'org.jetbrains.kotlin:kotlin-reflect'
47
- }
1
+ buildscript {
2
+ repositories {
3
+ mavenCentral()
4
+ }
5
+ dependencies {
6
+ classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:${kotlinVersion}")
7
+ }
8
+ }
9
+
10
+ plugins {
11
+ id 'com.android.library'
12
+ id 'expo-module-gradle-plugin'
13
+ }
14
+ apply plugin: 'org.jetbrains.kotlin.plugin.compose'
15
+
16
+ group = 'expo.modules.pytechui'
17
+ version = '0.1.0'
18
+
19
+ android {
20
+ namespace "expo.modules.pytechui"
21
+ defaultConfig {
22
+ versionCode 1
23
+ versionName "0.1.0"
24
+ }
25
+ buildFeatures {
26
+ compose true
27
+ }
28
+ lintOptions {
29
+ abortOnError false
30
+ }
31
+ }
32
+
33
+ dependencies {
34
+ implementation 'androidx.activity:activity-compose:1.10.1'
35
+ implementation 'androidx.compose.foundation:foundation-android:1.10.6'
36
+ implementation 'androidx.compose.ui:ui-android:1.10.6'
37
+ implementation 'androidx.compose.material3:material3-android:1.5.0-alpha17'
38
+ implementation 'androidx.navigation:navigation-compose:2.10.2'
39
+ if (findProject(':expo-ui') != null) {
40
+ implementation project(':expo-ui')
41
+ } else {
42
+ implementation 'expo.modules.ui:expo.modules.ui:+'
43
+ }
44
+
45
+ implementation 'androidx.compose.material:material-icons-extended:1.7.8'
46
+ implementation 'com.squareup.okhttp3:okhttp:4.11.0'
47
+ implementation 'org.jetbrains.kotlin:kotlin-reflect'
48
+ }
@@ -1,2 +1,2 @@
1
- <manifest>
2
- </manifest>
1
+ <manifest>
2
+ </manifest>
@@ -1,39 +1,39 @@
1
- package expo.modules.pytechui
2
-
3
- import androidx.compose.runtime.Composable
4
- import androidx.compose.ui.window.Dialog
5
- import androidx.compose.ui.window.DialogProperties
6
- import expo.modules.kotlin.records.Field
7
- import expo.modules.kotlin.records.Record
8
- import expo.modules.kotlin.views.ComposeProps
9
- import expo.modules.kotlin.views.FunctionalComposableScope
10
- import expo.modules.kotlin.views.OptimizedComposeProps
11
- import expo.modules.ui.ExpoDialogProperties
12
- import java.io.Serializable
13
-
14
- data class DialogDismissEvent(
15
- @Field val dismissed: Boolean = true,
16
- ) : Record, Serializable
17
-
18
- @OptimizedComposeProps
19
- data class DialogProps(
20
- val properties: ExpoDialogProperties = ExpoDialogProperties(),
21
- ) : ComposeProps
22
-
23
- @Composable
24
- internal fun FunctionalComposableScope.DialogContent(
25
- props: DialogProps,
26
- onDismissRequest: () -> Unit,
27
- ) {
28
- Dialog(
29
- onDismissRequest = onDismissRequest,
30
- properties = DialogProperties(
31
- dismissOnBackPress = props.properties.dismissOnBackPress,
32
- dismissOnClickOutside = props.properties.dismissOnClickOutside,
33
- usePlatformDefaultWidth = props.properties.usePlatformDefaultWidth,
34
- decorFitsSystemWindows = props.properties.decorFitsSystemWindows,
35
- ),
36
- ) {
37
- Children()
38
- }
39
- }
1
+ package expo.modules.pytechui
2
+
3
+ import androidx.compose.runtime.Composable
4
+ import androidx.compose.ui.window.Dialog
5
+ import androidx.compose.ui.window.DialogProperties
6
+ import expo.modules.kotlin.records.Field
7
+ import expo.modules.kotlin.records.Record
8
+ import expo.modules.kotlin.views.ComposeProps
9
+ import expo.modules.kotlin.views.FunctionalComposableScope
10
+ import expo.modules.kotlin.views.OptimizedComposeProps
11
+ import expo.modules.ui.ExpoDialogProperties
12
+ import java.io.Serializable
13
+
14
+ data class DialogDismissEvent(
15
+ @Field val dismissed: Boolean = true,
16
+ ) : Record, Serializable
17
+
18
+ @OptimizedComposeProps
19
+ data class DialogProps(
20
+ val properties: ExpoDialogProperties = ExpoDialogProperties(),
21
+ ) : ComposeProps
22
+
23
+ @Composable
24
+ internal fun FunctionalComposableScope.DialogContent(
25
+ props: DialogProps,
26
+ onDismissRequest: () -> Unit,
27
+ ) {
28
+ Dialog(
29
+ onDismissRequest = onDismissRequest,
30
+ properties = DialogProperties(
31
+ dismissOnBackPress = props.properties.dismissOnBackPress,
32
+ dismissOnClickOutside = props.properties.dismissOnClickOutside,
33
+ usePlatformDefaultWidth = props.properties.usePlatformDefaultWidth,
34
+ decorFitsSystemWindows = props.properties.decorFitsSystemWindows,
35
+ ),
36
+ ) {
37
+ Children()
38
+ }
39
+ }
@@ -1,23 +1,23 @@
1
- package expo.modules.pytechui.foreach
2
-
3
- import expo.modules.kotlin.records.Field
4
- import expo.modules.kotlin.records.Record
5
- import expo.modules.kotlin.views.ComposeProps
6
- import expo.modules.kotlin.views.OptimizedComposeProps
7
- import expo.modules.pytechui.ListItem.ListItemDataRecord
8
- import expo.modules.ui.ModifierList
9
- import java.io.Serializable
10
-
11
- data class ForEachItemPressEvent(
12
- @Field val id: String = "",
13
- ) : Record, Serializable
14
-
15
- @OptimizedComposeProps
16
- data class ForEachProps(
17
- val data: List<ListItemDataRecord> = emptyList(),
18
- val contentPaddingStart: Double = 16.0,
19
- val contentPaddingEnd: Double = 16.0,
20
- val contentPaddingTop: Double = 0.0,
21
- val contentPaddingBottom: Double = 0.0,
22
- val modifiers: ModifierList = emptyList(),
23
- ) : ComposeProps
1
+ package expo.modules.pytechui.foreach
2
+
3
+ import expo.modules.kotlin.records.Field
4
+ import expo.modules.kotlin.records.Record
5
+ import expo.modules.kotlin.views.ComposeProps
6
+ import expo.modules.kotlin.views.OptimizedComposeProps
7
+ import expo.modules.pytechui.ListItem.ListItemDataRecord
8
+ import expo.modules.ui.ModifierList
9
+ import java.io.Serializable
10
+
11
+ data class ForEachItemPressEvent(
12
+ @Field val id: String = "",
13
+ ) : Record, Serializable
14
+
15
+ @OptimizedComposeProps
16
+ data class ForEachProps(
17
+ val data: List<ListItemDataRecord> = emptyList(),
18
+ val contentPaddingStart: Double = 16.0,
19
+ val contentPaddingEnd: Double = 16.0,
20
+ val contentPaddingTop: Double = 0.0,
21
+ val contentPaddingBottom: Double = 0.0,
22
+ val modifiers: ModifierList = emptyList(),
23
+ ) : ComposeProps
@@ -1,82 +1,82 @@
1
- package expo.modules.pytechui.foreach
2
-
3
- import androidx.compose.foundation.layout.PaddingValues
4
- import androidx.compose.foundation.layout.fillMaxWidth
5
- import androidx.compose.foundation.layout.padding
6
- import androidx.compose.foundation.lazy.LazyColumn
7
- import androidx.compose.foundation.lazy.itemsIndexed
8
- import androidx.compose.foundation.shape.RoundedCornerShape
9
- import androidx.compose.runtime.Composable
10
- import androidx.compose.ui.Modifier
11
- import androidx.compose.ui.draw.clip
12
- import androidx.compose.ui.unit.dp
13
- import expo.modules.kotlin.views.FunctionalComposableScope
14
- import expo.modules.pytechui.ListItem.ListItemFromData
15
- import expo.modules.pytechui.ListItem.toListItemProps
16
- import expo.modules.pytechui.findChildBySlotName
17
- import expo.modules.pytechui.theme.tokens.ShapeTokens
18
- import expo.modules.ui.ModifierRegistry
19
-
20
- @Composable
21
- fun FunctionalComposableScope.ForEachContent(
22
- props: ForEachProps,
23
- onItemPress: (String) -> Unit,
24
- ) {
25
- val headerSlot = findChildBySlotName("header")
26
- val footerSlot = findChildBySlotName("footer")
27
- val horizontalInset = props.contentPaddingStart.dp
28
-
29
- LazyColumn(
30
- modifier = ModifierRegistry.applyModifiers(
31
- props.modifiers,
32
- appContext,
33
- composableScope,
34
- globalEventDispatcher,
35
- )
36
- .fillMaxWidth()
37
- .padding(horizontal = horizontalInset)
38
- .clip(RoundedCornerShape(ShapeTokens.CornerValueExtraLarge)),
39
- contentPadding = PaddingValues(
40
- top = props.contentPaddingTop.dp,
41
- bottom = props.contentPaddingBottom.dp,
42
- ),
43
- ) {
44
- headerSlot?.let { slot ->
45
- item(key = "__foreach_header__") {
46
- with(composableScope) {
47
- with(slot) {
48
- Content()
49
- }
50
- }
51
- }
52
- }
53
-
54
- if (props.data.isNotEmpty()) {
55
- itemsIndexed(
56
- items = props.data,
57
- key = { _, item -> item.id },
58
- ) { index, item ->
59
- ListItemFromData(
60
-
61
- props = item.listItemProps.toListItemProps(
62
- isFirst = index == 0,
63
- isLast = index == props.data.lastIndex,
64
- ),
65
-
66
- content = item.content,
67
- onPress = { onItemPress(item.id) },
68
- )
69
- }
70
- }
71
-
72
- footerSlot?.let { slot ->
73
- item(key = "__foreach_footer__") {
74
- with(composableScope) {
75
- with(slot) {
76
- Content()
77
- }
78
- }
79
- }
80
- }
81
- }
82
- }
1
+ package expo.modules.pytechui.foreach
2
+
3
+ import androidx.compose.foundation.layout.PaddingValues
4
+ import androidx.compose.foundation.layout.fillMaxWidth
5
+ import androidx.compose.foundation.layout.padding
6
+ import androidx.compose.foundation.lazy.LazyColumn
7
+ import androidx.compose.foundation.lazy.itemsIndexed
8
+ import androidx.compose.foundation.shape.RoundedCornerShape
9
+ import androidx.compose.runtime.Composable
10
+ import androidx.compose.ui.Modifier
11
+ import androidx.compose.ui.draw.clip
12
+ import androidx.compose.ui.unit.dp
13
+ import expo.modules.kotlin.views.FunctionalComposableScope
14
+ import expo.modules.pytechui.ListItem.ListItemFromData
15
+ import expo.modules.pytechui.ListItem.toListItemProps
16
+ import expo.modules.pytechui.findChildBySlotName
17
+ import expo.modules.pytechui.theme.tokens.ShapeTokens
18
+ import expo.modules.ui.ModifierRegistry
19
+
20
+ @Composable
21
+ fun FunctionalComposableScope.ForEachContent(
22
+ props: ForEachProps,
23
+ onItemPress: (String) -> Unit,
24
+ ) {
25
+ val headerSlot = findChildBySlotName("header")
26
+ val footerSlot = findChildBySlotName("footer")
27
+ val horizontalInset = props.contentPaddingStart.dp
28
+
29
+ LazyColumn(
30
+ modifier = ModifierRegistry.applyModifiers(
31
+ props.modifiers,
32
+ appContext,
33
+ composableScope,
34
+ globalEventDispatcher,
35
+ )
36
+ .fillMaxWidth()
37
+ .padding(horizontal = horizontalInset)
38
+ .clip(RoundedCornerShape(ShapeTokens.CornerValueExtraLarge)),
39
+ contentPadding = PaddingValues(
40
+ top = props.contentPaddingTop.dp,
41
+ bottom = props.contentPaddingBottom.dp,
42
+ ),
43
+ ) {
44
+ headerSlot?.let { slot ->
45
+ item(key = "__foreach_header__") {
46
+ with(composableScope) {
47
+ with(slot) {
48
+ Content()
49
+ }
50
+ }
51
+ }
52
+ }
53
+
54
+ if (props.data.isNotEmpty()) {
55
+ itemsIndexed(
56
+ items = props.data,
57
+ key = { _, item -> item.id },
58
+ ) { index, item ->
59
+ ListItemFromData(
60
+
61
+ props = item.listItemProps.toListItemProps(
62
+ isFirst = index == 0,
63
+ isLast = index == props.data.lastIndex,
64
+ ),
65
+
66
+ content = item.content,
67
+ onPress = { onItemPress(item.id) },
68
+ )
69
+ }
70
+ }
71
+
72
+ footerSlot?.let { slot ->
73
+ item(key = "__foreach_footer__") {
74
+ with(composableScope) {
75
+ with(slot) {
76
+ Content()
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }