pytech-ui 1.0.29 → 1.0.31

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 (234) 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 +47 -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/PytechUiModifiers.kt +93 -93
  23. package/android/src/main/java/expo/modules/pytechui/PytechUiModule.kt +168 -168
  24. package/android/src/main/java/expo/modules/pytechui/SearchBar.kt +213 -213
  25. package/android/src/main/java/expo/modules/pytechui/Section/SectionHost.kt +81 -81
  26. package/android/src/main/java/expo/modules/pytechui/Section/SectionHostView.kt +65 -65
  27. package/android/src/main/java/expo/modules/pytechui/TextField.kt +251 -251
  28. package/android/src/main/java/expo/modules/pytechui/TypographySlot/TypographySlotBridge.kt +120 -120
  29. package/android/src/main/java/expo/modules/pytechui/TypographySlot/constants.kt +47 -47
  30. package/android/src/main/java/expo/modules/pytechui/extended-theme/ExtendedThemeView.kt +19 -19
  31. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Colors/ExtendedColorBridge.kt +76 -76
  32. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Constants/Constants.kt +10 -10
  33. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarLargeFlexibleTokens.kt +20 -20
  34. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarLargeTokens.kt +19 -19
  35. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarMediumFlexibleTokens.kt +20 -20
  36. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarMediumTokens.kt +19 -19
  37. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarSmallTokens.kt +19 -19
  38. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AppBarTokens.kt +23 -23
  39. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/AssistChipTokens.kt +25 -25
  40. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BadgeTokens.kt +20 -20
  41. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BaselineButtonTokens.kt +26 -26
  42. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/BottomAppBarTokens.kt +19 -19
  43. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonGroupSmallTokens.kt +20 -20
  44. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonLargeTokens.kt +24 -24
  45. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonMediumTokens.kt +24 -24
  46. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonSmallTokens.kt +24 -24
  47. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonXLargeTokens.kt +24 -24
  48. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ButtonXSmallTokens.kt +24 -24
  49. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/CheckboxTokens.kt +35 -35
  50. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/CircularProgressIndicatorTokens.kt +25 -25
  51. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ConnectedButtonGroupSmallTokens.kt +21 -21
  52. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DateInputModalTokens.kt +22 -22
  53. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DatePickerModalTokens.kt +33 -33
  54. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DialogTokens.kt +19 -19
  55. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DividerTokens.kt +19 -19
  56. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DockedToolbarTokens.kt +23 -23
  57. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/DragHandleTokens.kt +25 -25
  58. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevatedButtonTokens.kt +19 -19
  59. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevatedCardTokens.kt +20 -20
  60. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ElevationTokens.kt +24 -24
  61. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExpressiveMotionTokens.kt +28 -28
  62. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabLargeTokens.kt +23 -23
  63. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabMediumTokens.kt +24 -24
  64. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabPrimaryTokens.kt +20 -20
  65. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ExtendedFabSmallTokens.kt +23 -23
  66. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabBaselineTokens.kt +21 -21
  67. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabLargeTokens.kt +21 -21
  68. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabMediumTokens.kt +22 -22
  69. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabMenuBaselineTokens.kt +28 -28
  70. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FabSmallTokens.kt +21 -21
  71. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledAutocompleteTokens.kt +31 -31
  72. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledButtonTokens.kt +19 -19
  73. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledCardTokens.kt +20 -20
  74. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledIconButtonTokens.kt +18 -18
  75. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTextFieldTokens.kt +31 -31
  76. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTonalButtonTokens.kt +23 -23
  77. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilledTonalIconButtonTokens.kt +18 -18
  78. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FilterChipTokens.kt +28 -28
  79. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/FloatingToolbarTokens.kt +23 -23
  80. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/IconButtonTokens.kt +17 -17
  81. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/InputChipTokens.kt +30 -30
  82. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LargeIconButtonTokens.kt +27 -27
  83. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LinearProgressIndicatorTokens.kt +28 -28
  84. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ListTokens.kt +57 -57
  85. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/LoadingIndicatorTokens.kt +21 -21
  86. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/MediumIconButtonTokens.kt +27 -27
  87. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/MotionTokens.kt +44 -44
  88. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarHorizontalItemTokens.kt +22 -22
  89. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarTokens.kt +23 -23
  90. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationBarVerticalItemTokens.kt +22 -22
  91. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationDrawerTokens.kt +23 -23
  92. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailBaselineItemTokens.kt +25 -25
  93. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailCollapsedTokens.kt +23 -23
  94. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailExpandedTokens.kt +22 -22
  95. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailHorizontalItemTokens.kt +24 -24
  96. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/NavigationRailVerticalItemTokens.kt +24 -24
  97. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedAutocompleteTokens.kt +30 -30
  98. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedButtonTokens.kt +19 -19
  99. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedCardTokens.kt +21 -21
  100. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedIconButtonTokens.kt +18 -18
  101. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedSegmentedButtonTokens.kt +24 -24
  102. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/OutlinedTextFieldTokens.kt +31 -31
  103. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/PrimaryNavigationTabTokens.kt +24 -24
  104. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/RadioButtonTokens.kt +22 -22
  105. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ScrimTokens.kt +17 -17
  106. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SearchBarTokens.kt +20 -20
  107. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SearchViewTokens.kt +20 -20
  108. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SecondaryNavigationTabTokens.kt +21 -21
  109. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SegmentedMenuTokens.kt +42 -42
  110. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/ShapeTokens.kt +74 -74
  111. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SheetBottomTokens.kt +20 -20
  112. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SliderTokens.kt +39 -39
  113. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SmallIconButtonTokens.kt +27 -27
  114. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SnackbarTokens.kt +21 -21
  115. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonLargeTokens.kt +26 -26
  116. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonMediumTokens.kt +26 -26
  117. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonSmallTokens.kt +26 -26
  118. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonXLargeTokens.kt +26 -26
  119. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SplitButtonXSmallTokens.kt +27 -27
  120. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StandardMenuTokens.kt +25 -25
  121. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StandardMotionTokens.kt +27 -27
  122. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/StateTokens.kt +20 -20
  123. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SuggestionChipTokens.kt +25 -25
  124. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/SwitchTokens.kt +37 -37
  125. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TextButtonTokens.kt +18 -18
  126. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TimeInputTokens.kt +24 -24
  127. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TimePickerTokens.kt +30 -30
  128. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TonalButtonTokens.kt +19 -19
  129. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/TypeScaleTokens.kt +72 -72
  130. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/VibrantMenuTokens.kt +26 -26
  131. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/XLargeIconButtonTokens.kt +27 -27
  132. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/assets/XSmallIconButtonTokens.kt +27 -27
  133. package/android/src/main/java/expo/modules/pytechui/extended-theme/assets/Tokens/index.kt +216 -216
  134. package/android/src/main/java/expo/modules/pytechui/extended-theme/index.kt +38 -38
  135. package/android/src/main/java/expo/modules/pytechui/utils/children.kt +126 -126
  136. package/android/src/main/java/expo/modules/pytechui/utils/modifiers.kt +44 -44
  137. package/build/constants/utils.d.ts +1 -1
  138. package/build/contexts/alert/components/Alert/index.js +16 -16
  139. package/build/contexts/alert/components/Button/index.js +5 -5
  140. package/build/contexts/alert/components/Provider/index.ios.js +2 -2
  141. package/build/contexts/alert/components/Provider/index.js +3 -3
  142. package/build/contexts/alert/context/provider.d.ts +1 -1
  143. package/build/contexts/alert/context/provider.js +1 -1
  144. package/build/contexts/app/context.d.ts +1 -1
  145. package/build/contexts/app/context.js +15 -15
  146. package/build/contexts/app/index.d.ts +2 -2
  147. package/build/contexts/app/index.js +2 -2
  148. package/build/contexts/app/src/Head/index.d.ts +1 -1
  149. package/build/contexts/app/src/Head/index.web.js +12 -12
  150. package/build/contexts/app/src/Wrapper/index.d.ts +1 -1
  151. package/build/contexts/app/src/Wrapper/index.js +2 -2
  152. package/build/contexts/app/src/styles.css +16 -16
  153. package/build/contexts/app/types.d.ts +1 -1
  154. package/build/contexts/router/index.d.ts +1 -1
  155. package/build/contexts/router/index.js +3 -3
  156. package/build/jetpack-compose/components/Columns/CommonColumn/index.js +2 -2
  157. package/build/jetpack-compose/components/Columns/CommonColumn/types.d.ts +1 -1
  158. package/build/jetpack-compose/components/Columns/CommonColumn/utils.d.ts +1 -1
  159. package/build/jetpack-compose/components/Columns/CommonColumn/utils.js +1 -1
  160. package/build/jetpack-compose/components/DropdownMenu/index.d.ts +1 -1
  161. package/build/jetpack-compose/components/DropdownMenu/index.js +3 -3
  162. package/build/jetpack-compose/components/DropdownPicker/Picker.d.ts +3 -3
  163. package/build/jetpack-compose/components/DropdownPicker/Picker.js +24 -24
  164. package/build/jetpack-compose/components/DropdownPicker/PickerItem.js +5 -5
  165. package/build/jetpack-compose/components/DropdownPicker/context.d.ts +4 -10
  166. package/build/jetpack-compose/components/ForEach/src/ForEach.d.ts +1 -1
  167. package/build/jetpack-compose/components/ForEach/src/ForEach.js +5 -5
  168. package/build/jetpack-compose/components/ForEach/src/ListItem.d.ts +1 -1
  169. package/build/jetpack-compose/components/ForEach/src/types.d.ts +1 -1
  170. package/build/jetpack-compose/components/Gradient/Gradient.js +1 -1
  171. package/build/jetpack-compose/components/Gradient/types.d.ts +1 -1
  172. package/build/jetpack-compose/components/Icon/Icon/Icon.js +1 -1
  173. package/build/jetpack-compose/components/Icon/index.d.ts +1 -1
  174. package/build/jetpack-compose/components/IconSection/IconSection.js +19 -19
  175. package/build/jetpack-compose/components/IconSection/types.d.ts +1 -1
  176. package/build/jetpack-compose/components/IconSection/utils.js +1 -1
  177. package/build/jetpack-compose/components/List/CommonColumn.js +3 -3
  178. package/build/jetpack-compose/components/List/index.d.ts +1 -1
  179. package/build/jetpack-compose/components/List/index.js +11 -11
  180. package/build/jetpack-compose/components/ListItem/SlotListItem.d.ts +2 -2
  181. package/build/jetpack-compose/components/ListItem/SlotListItem.js +9 -9
  182. package/build/jetpack-compose/components/Menu/src/components/Divider.js +2 -2
  183. package/build/jetpack-compose/components/Menu/src/components/Icon.d.ts +1 -1
  184. package/build/jetpack-compose/components/Menu/src/components/Icon.js +1 -1
  185. package/build/jetpack-compose/components/Menu/src/components/Item.d.ts +2 -3
  186. package/build/jetpack-compose/components/Menu/src/components/Item.js +26 -26
  187. package/build/jetpack-compose/components/Menu/src/components/Label.d.ts +4 -1
  188. package/build/jetpack-compose/components/Menu/src/components/Label.js +3 -3
  189. package/build/jetpack-compose/components/Menu/src/components/Menu.d.ts +2 -2
  190. package/build/jetpack-compose/components/Menu/src/components/Menu.js +26 -26
  191. package/build/jetpack-compose/components/Menu/src/components/Trigger.js +7 -7
  192. package/build/jetpack-compose/components/Menu/src/context.d.ts +8 -6
  193. package/build/jetpack-compose/components/Menu/src/utils.js +3 -3
  194. package/build/jetpack-compose/components/PagePicker/Item.js +11 -11
  195. package/build/jetpack-compose/components/PagePicker/Picker.js +5 -5
  196. package/build/jetpack-compose/components/PagePicker/context/index.d.ts +1 -1
  197. package/build/jetpack-compose/components/PagePicker/context/index.js +8 -8
  198. package/build/jetpack-compose/components/PullToRefreshBox.js +1 -1
  199. package/build/jetpack-compose/components/SearchBar.d.ts +1 -1
  200. package/build/jetpack-compose/components/SearchBar.js +1 -1
  201. package/build/jetpack-compose/components/Section/components/Column.d.ts +1 -1
  202. package/build/jetpack-compose/components/Section/components/Column.js +3 -3
  203. package/build/jetpack-compose/components/Section/components/Section.js +18 -18
  204. package/build/jetpack-compose/components/Section/components/Slot.d.ts +1 -1
  205. package/build/jetpack-compose/components/Section/components/Slot.js +3 -3
  206. package/build/jetpack-compose/components/SectionHost/index.d.ts +1 -1
  207. package/build/jetpack-compose/components/SectionHost/index.js +3 -3
  208. package/build/jetpack-compose/components/TextField.d.ts +1 -1
  209. package/build/jetpack-compose/components/TextField.js +1 -1
  210. package/build/jetpack-compose/components/TextSlot.js +2 -3
  211. package/build/jetpack-compose/extended-theme/assets/Colors/index.js +2 -2
  212. package/build/jetpack-compose/modifiers/flexWeight.d.ts +1 -1
  213. package/build/jetpack-compose/modifiers/heightIn.d.ts +1 -1
  214. package/build/swift-ui/Image.js +2 -2
  215. package/build/swift-ui/ListItem.js +2 -2
  216. package/build/swift-ui/Slot.js +2 -2
  217. package/build/swift-ui/Text.js +2 -2
  218. package/build/universal/Column/index.android.js +2 -2
  219. package/build/universal/Column/index.ios.js +2 -2
  220. package/build/universal/Column/index.js +2 -2
  221. package/build/universal/Host/index.ios.js +2 -2
  222. package/build/universal/Row/index.android.js +2 -2
  223. package/build/universal/Row/index.ios.js +2 -2
  224. package/build/universal/Row/index.js +2 -2
  225. package/expo-module.config.json +11 -11
  226. package/ios/ChevronForwardView.swift +21 -21
  227. package/ios/GradientView.swift +40 -40
  228. package/ios/ImageView.swift +32 -32
  229. package/ios/ListItem.swift +161 -161
  230. package/ios/PytechUi.podspec +24 -24
  231. package/ios/PytechUiModule.swift +15 -15
  232. package/ios/SlotView.swift +107 -107
  233. package/ios/_shared/utils.swift +58 -58
  234. package/package.json +19 -15
@@ -8,7 +8,7 @@ const Slot_1 = require("./Slot");
8
8
  Text con slot "text" para que vistas nativas (p. ej. ListItem) puedan
9
9
  detectar si el contenido es texto plano o una vista custom.
10
10
  */
11
- const Text = ({ modifiers, ...restProps }) => (<Slot_1.Slot name="text">
12
- <swift_ui_1.Text modifiers={modifiers} {...(modifiers ? (0, modifiers_1.createViewModifierEventListener)(modifiers) : undefined)} {...restProps}/>
11
+ const Text = ({ modifiers, ...restProps }) => (<Slot_1.Slot name="text">
12
+ <swift_ui_1.Text modifiers={modifiers} {...(modifiers ? (0, modifiers_1.createViewModifierEventListener)(modifiers) : undefined)} {...restProps}/>
13
13
  </Slot_1.Slot>);
14
14
  exports.Text = Text;
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const react_1 = require("react");
4
4
  const jetpack_compose_1 = require("@expo/ui/jetpack-compose");
5
5
  const modifiers_1 = require("@expo/ui/jetpack-compose/modifiers");
6
- exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<jetpack_compose_1.Column modifiers={[(0, modifiers_1.fillMaxWidth)()]} horizontalAlignment={alignment === 'center' ? 'center' : alignment === 'leading' ? 'start' : 'end'} verticalArrangement={spacing ? { spacedBy: spacing } : undefined}>
7
- {children}
6
+ exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<jetpack_compose_1.Column modifiers={[(0, modifiers_1.fillMaxWidth)()]} horizontalAlignment={alignment === 'center' ? 'center' : alignment === 'leading' ? 'start' : 'end'} verticalArrangement={spacing ? { spacedBy: spacing } : undefined}>
7
+ {children}
8
8
  </jetpack_compose_1.Column>));
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const react_1 = require("react");
4
4
  const swift_ui_1 = require("@expo/ui/swift-ui");
5
- exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<swift_ui_1.VStack spacing={spacing} alignment={alignment}>
6
- {children}
5
+ exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<swift_ui_1.VStack spacing={spacing} alignment={alignment}>
6
+ {children}
7
7
  </swift_ui_1.VStack>));
@@ -8,8 +8,8 @@ exports.default = (0, react_1.memo)(({ children, spacing = 10, alignment = 'cent
8
8
  gap: spacing,
9
9
  alignItems: alignment === 'center' ? 'center' : alignment === 'leading' ? 'flex-start' : 'flex-end',
10
10
  }
11
- ]}>
12
- {children}
11
+ ]}>
12
+ {children}
13
13
  </react_native_1.View>));
14
14
  const styles = react_native_1.StyleSheet.create({
15
15
  container: {
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const react_1 = require("react");
4
4
  const swift_ui_1 = require("@expo/ui/swift-ui");
5
- exports.default = (0, react_1.memo)(({ children }) => (<swift_ui_1.Host style={{ flex: 1 }}>
6
- {children}
5
+ exports.default = (0, react_1.memo)(({ children }) => (<swift_ui_1.Host style={{ flex: 1 }}>
6
+ {children}
7
7
  </swift_ui_1.Host>));
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const react_1 = require("react");
4
4
  const jetpack_compose_1 = require("@expo/ui/jetpack-compose");
5
5
  const modifiers_1 = require("@expo/ui/jetpack-compose/modifiers");
6
- exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<jetpack_compose_1.Row modifiers={[(0, modifiers_1.fillMaxWidth)()]} horizontalAlignment={alignment === 'center' ? 'center' : alignment === 'top' ? 'start' : 'end'} verticalArrangement={spacing ? { spacedBy: spacing } : undefined}>
7
- {children}
6
+ exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<jetpack_compose_1.Row modifiers={[(0, modifiers_1.fillMaxWidth)()]} horizontalAlignment={alignment === 'center' ? 'center' : alignment === 'top' ? 'start' : 'end'} verticalArrangement={spacing ? { spacedBy: spacing } : undefined}>
7
+ {children}
8
8
  </jetpack_compose_1.Row>));
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const react_1 = require("react");
4
4
  const swift_ui_1 = require("@expo/ui/swift-ui");
5
- exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<swift_ui_1.HStack spacing={spacing} alignment={alignment}>
6
- {children}
5
+ exports.default = (0, react_1.memo)(({ children, spacing, alignment = 'center' }) => (<swift_ui_1.HStack spacing={spacing} alignment={alignment}>
6
+ {children}
7
7
  </swift_ui_1.HStack>));
@@ -8,8 +8,8 @@ exports.default = (0, react_1.memo)(({ children, spacing = 10, alignment = 'cent
8
8
  gap: spacing,
9
9
  justifyContent: alignment === 'center' ? 'center' : alignment === 'top' ? 'flex-start' : 'flex-end',
10
10
  }
11
- ]}>
12
- {children}
11
+ ]}>
12
+ {children}
13
13
  </react_native_1.View>));
14
14
  const styles = react_native_1.StyleSheet.create({
15
15
  container: {
@@ -1,11 +1,11 @@
1
- {
2
- "name": "pytech-ui",
3
- "platforms": ["apple", "android"],
4
- "coreFeatures": ["swiftui", "compose"],
5
- "apple": {
6
- "modules": ["PytechUiModule"]
7
- },
8
- "android": {
9
- "modules": ["expo.modules.pytechui.PytechUiModule"]
10
- }
11
- }
1
+ {
2
+ "name": "pytech-ui",
3
+ "platforms": ["apple", "android"],
4
+ "coreFeatures": ["swiftui", "compose"],
5
+ "apple": {
6
+ "modules": ["PytechUiModule"]
7
+ },
8
+ "android": {
9
+ "modules": ["expo.modules.pytechui.PytechUiModule"]
10
+ }
11
+ }
@@ -1,21 +1,21 @@
1
- import SwiftUI
2
- import ExpoModulesCore
3
- import ExpoUI
4
-
5
- struct ChevronForward: View {
6
- var body: some View {
7
- Image(systemName: "chevron.forward")
8
- .font(.footnote.weight(.bold))
9
- .foregroundStyle(Color(.tertiaryLabel))
10
- }
11
- }
12
-
13
- public final class ChevronForwardViewProps: UIBaseViewProps {}
14
-
15
- struct ChevronForwardView: ExpoSwiftUI.View {
16
- @ObservedObject var props: ChevronForwardViewProps
17
-
18
- var body: some View {
19
- ChevronForward()
20
- }
21
- }
1
+ import SwiftUI
2
+ import ExpoModulesCore
3
+ import ExpoUI
4
+
5
+ struct ChevronForward: View {
6
+ var body: some View {
7
+ Image(systemName: "chevron.forward")
8
+ .font(.footnote.weight(.bold))
9
+ .foregroundStyle(Color(.tertiaryLabel))
10
+ }
11
+ }
12
+
13
+ public final class ChevronForwardViewProps: UIBaseViewProps {}
14
+
15
+ struct ChevronForwardView: ExpoSwiftUI.View {
16
+ @ObservedObject var props: ChevronForwardViewProps
17
+
18
+ var body: some View {
19
+ ChevronForward()
20
+ }
21
+ }
@@ -1,40 +1,40 @@
1
- import SwiftUI
2
- import ExpoModulesCore
3
- import ExpoUI
4
-
5
-
6
- final class GradientViewProps: UIBaseViewProps {
7
- @Field var text: String?
8
- @Field var systemImage: String?
9
- @Field var colors: [Color]
10
- }
11
-
12
- struct GradientView: ExpoSwiftUI.View {
13
- @ObservedObject public var props: GradientViewProps
14
-
15
- public init(props: GradientViewProps) {
16
- self.props = props
17
- }
18
-
19
- public var body: some View {
20
- Circle()
21
- .fill(
22
- LinearGradient(
23
- colors: props.colors,
24
- startPoint: .top,
25
- endPoint: .bottom
26
- )
27
- )
28
- .overlay {
29
- if let text = props.text {
30
- Text(String(text.prefix(3)).uppercased())
31
- .fontWeight(.bold)
32
- .kerning(-0.5)
33
- .foregroundStyle(.white)
34
- } else if let systemImage = props.systemImage {
35
- Image(systemName: systemImage)
36
- .foregroundStyle(.white)
37
- }
38
- }
39
- }
40
- }
1
+ import SwiftUI
2
+ import ExpoModulesCore
3
+ import ExpoUI
4
+
5
+
6
+ final class GradientViewProps: UIBaseViewProps {
7
+ @Field var text: String?
8
+ @Field var systemImage: String?
9
+ @Field var colors: [Color]
10
+ }
11
+
12
+ struct GradientView: ExpoSwiftUI.View {
13
+ @ObservedObject public var props: GradientViewProps
14
+
15
+ public init(props: GradientViewProps) {
16
+ self.props = props
17
+ }
18
+
19
+ public var body: some View {
20
+ Circle()
21
+ .fill(
22
+ LinearGradient(
23
+ colors: props.colors,
24
+ startPoint: .top,
25
+ endPoint: .bottom
26
+ )
27
+ )
28
+ .overlay {
29
+ if let text = props.text {
30
+ Text(String(text.prefix(3)).uppercased())
31
+ .fontWeight(.bold)
32
+ .kerning(-0.5)
33
+ .foregroundStyle(.white)
34
+ } else if let systemImage = props.systemImage {
35
+ Image(systemName: systemImage)
36
+ .foregroundStyle(.white)
37
+ }
38
+ }
39
+ }
40
+ }
@@ -1,32 +1,32 @@
1
- import SwiftUI
2
- import ExpoModulesCore
3
- import ExpoUI
4
-
5
- public final class ImageViewProps: UIBaseViewProps {
6
- @Field var systemName: String = ""
7
- @Field var color: Color?
8
- @Field var size: Double?
9
- }
10
-
11
- struct ImageView: ExpoSwiftUI.View {
12
- @ObservedObject var props: ImageViewProps
13
-
14
- var body: some View {
15
- styledImage(Image(systemName: props.systemName))
16
- }
17
-
18
- @ViewBuilder
19
- private func styledImage(_ image: Image) -> some View {
20
- if let size = props.size, let color = props.color {
21
- image
22
- .font(.system(size: size))
23
- .foregroundStyle(color)
24
- } else if let size = props.size {
25
- image.font(.system(size: size))
26
- } else if let color = props.color {
27
- image.foregroundStyle(color)
28
- } else {
29
- image
30
- }
31
- }
32
- }
1
+ import SwiftUI
2
+ import ExpoModulesCore
3
+ import ExpoUI
4
+
5
+ public final class ImageViewProps: UIBaseViewProps {
6
+ @Field var systemName: String = ""
7
+ @Field var color: Color?
8
+ @Field var size: Double?
9
+ }
10
+
11
+ struct ImageView: ExpoSwiftUI.View {
12
+ @ObservedObject var props: ImageViewProps
13
+
14
+ var body: some View {
15
+ styledImage(Image(systemName: props.systemName))
16
+ }
17
+
18
+ @ViewBuilder
19
+ private func styledImage(_ image: Image) -> some View {
20
+ if let size = props.size, let color = props.color {
21
+ image
22
+ .font(.system(size: size))
23
+ .foregroundStyle(color)
24
+ } else if let size = props.size {
25
+ image.font(.system(size: size))
26
+ } else if let color = props.color {
27
+ image.foregroundStyle(color)
28
+ } else {
29
+ image
30
+ }
31
+ }
32
+ }
@@ -1,161 +1,161 @@
1
- import SwiftUI
2
- import ExpoModulesCore
3
- import ExpoUI
4
-
5
- struct ListItemInsetsRecord: Record {
6
- @Field var horizontal: Double?
7
- @Field var vertical: Double?
8
- @Field var top: Double?
9
- @Field var bottom: Double?
10
- @Field var leading: Double?
11
- @Field var trailing: Double?
12
- }
13
-
14
- extension ListItemInsetsRecord: ListRowInsetsProviding {}
15
-
16
- enum ListItemButtonRole: String, Enumerable {
17
- case cancel
18
- case destructive
19
-
20
- var swiftUIRole: SwiftUI.ButtonRole {
21
- switch self {
22
- case .cancel:
23
- return .cancel
24
- case .destructive:
25
- return .destructive
26
- }
27
- }
28
- }
29
-
30
- public final class ListItemViewProps: UIBaseViewProps {
31
- @Field var hasNavigationLink: Bool = false
32
- @Field var insets: ListItemInsetsRecord?
33
- @Field var hasOnPress: Bool = false
34
- @Field var buttonRole: ListItemButtonRole?
35
- var onListItemPress = EventDispatcher()
36
- }
37
-
38
- struct ListItemView: ExpoSwiftUI.View {
39
- @ObservedObject var props: ListItemViewProps
40
-
41
- // Si se le pasan insets, y tiene una versión mínima de iOS 26, se aplican al item
42
- var body: some View {
43
- if #available(iOS 26.0, *) {
44
- applyInsets(to: pressableRowContent)
45
- } else {
46
- pressableRowContent
47
- }
48
- }
49
-
50
- // Si se le envia un onPress sin navigation link, se coloca un Button sobre toda la row.
51
- @ViewBuilder
52
- private var pressableRowContent: some View {
53
- if props.hasOnPress && !props.hasNavigationLink {
54
- listItemButton {
55
- rowContent
56
- }
57
- } else {
58
- rowContent
59
- }
60
- }
61
-
62
- @ViewBuilder
63
- private var rowContent: some View {
64
- if props.children?.slot("trailingContent") != nil || props.hasNavigationLink {
65
- HStack {
66
- if props.hasOnPress && props.hasNavigationLink {
67
- SwiftUI.Button(action: {
68
- props.onListItemPress()
69
- }){
70
- mainLabel
71
- }
72
- .foregroundStyle(.primary)
73
- }
74
-
75
- Spacer()
76
-
77
- slotContent(in: props.children, named: "trailingContent", secondary: true)
78
-
79
- if props.hasNavigationLink {
80
- ChevronForward()
81
- }
82
- }
83
- } else {
84
- mainLabel
85
- }
86
- }
87
-
88
- // Es para aplicar los insets al item. Los ejes se aplican primero; top/bottom/leading/trailing los sobrescriben.
89
- @available(iOS 26.0, *)
90
- @ViewBuilder
91
- private func applyInsets(to content: some View) -> some View {
92
- if let insets = props.insets {
93
- applyEdgeInsets(to: content, insets: insets)
94
- } else {
95
- content
96
- }
97
- }
98
-
99
- // Button con role aplicado.
100
- @ViewBuilder
101
- private func listItemButton<Label: View>(@ViewBuilder label: () -> Label) -> some View {
102
- if let buttonRole = props.buttonRole {
103
- Button(role: buttonRole.swiftUIRole) {
104
- props.onListItemPress()
105
- } label: {
106
- label()
107
- }
108
- } else {
109
- Button {
110
- props.onListItemPress()
111
- } label: {
112
- label()
113
- }
114
- }
115
- }
116
-
117
- // Renderiza el leading, headline y supporting content.
118
- @ViewBuilder
119
- private var mainLabel: some View {
120
- let leading = props.children?.slot("leadingContent")
121
- let hasImage = leading?.props.children?.slot("image") != nil
122
-
123
- if let leading {
124
- if hasImage {
125
- Label {
126
- titleContent // Label ya apila título + subtítulo
127
- } icon: {
128
- leading.foregroundStyle(.blue)
129
- }
130
- } else {
131
- HStack {
132
- leading
133
- alignedTitleContent
134
- }
135
- }
136
- } else {
137
- alignedTitleContent
138
- }
139
- }
140
-
141
- // Se fija si tiene que llevar un VStack o no.
142
- @ViewBuilder
143
- private var alignedTitleContent: some View {
144
- let hasSupporting = props.children?.slot("supportingContent") != nil
145
-
146
- if hasSupporting {
147
- VStack(alignment: .leading) {
148
- titleContent
149
- }
150
- } else {
151
- slotContent(in: props.children, named: "headlineContent")
152
- }
153
- }
154
-
155
- // Renderiza el headline y supporting content dentro de Label o VStack.
156
- @ViewBuilder
157
- private var titleContent: some View {
158
- slotContent(in: props.children, named: "headlineContent")
159
- slotContent(in: props.children, named: "supportingContent", font: .subheadline, secondary: true)
160
- }
161
- }
1
+ import SwiftUI
2
+ import ExpoModulesCore
3
+ import ExpoUI
4
+
5
+ struct ListItemInsetsRecord: Record {
6
+ @Field var horizontal: Double?
7
+ @Field var vertical: Double?
8
+ @Field var top: Double?
9
+ @Field var bottom: Double?
10
+ @Field var leading: Double?
11
+ @Field var trailing: Double?
12
+ }
13
+
14
+ extension ListItemInsetsRecord: ListRowInsetsProviding {}
15
+
16
+ enum ListItemButtonRole: String, Enumerable {
17
+ case cancel
18
+ case destructive
19
+
20
+ var swiftUIRole: SwiftUI.ButtonRole {
21
+ switch self {
22
+ case .cancel:
23
+ return .cancel
24
+ case .destructive:
25
+ return .destructive
26
+ }
27
+ }
28
+ }
29
+
30
+ public final class ListItemViewProps: UIBaseViewProps {
31
+ @Field var hasNavigationLink: Bool = false
32
+ @Field var insets: ListItemInsetsRecord?
33
+ @Field var hasOnPress: Bool = false
34
+ @Field var buttonRole: ListItemButtonRole?
35
+ var onListItemPress = EventDispatcher()
36
+ }
37
+
38
+ struct ListItemView: ExpoSwiftUI.View {
39
+ @ObservedObject var props: ListItemViewProps
40
+
41
+ // Si se le pasan insets, y tiene una versión mínima de iOS 26, se aplican al item
42
+ var body: some View {
43
+ if #available(iOS 26.0, *) {
44
+ applyInsets(to: pressableRowContent)
45
+ } else {
46
+ pressableRowContent
47
+ }
48
+ }
49
+
50
+ // Si se le envia un onPress sin navigation link, se coloca un Button sobre toda la row.
51
+ @ViewBuilder
52
+ private var pressableRowContent: some View {
53
+ if props.hasOnPress && !props.hasNavigationLink {
54
+ listItemButton {
55
+ rowContent
56
+ }
57
+ } else {
58
+ rowContent
59
+ }
60
+ }
61
+
62
+ @ViewBuilder
63
+ private var rowContent: some View {
64
+ if props.children?.slot("trailingContent") != nil || props.hasNavigationLink {
65
+ HStack {
66
+ if props.hasOnPress && props.hasNavigationLink {
67
+ SwiftUI.Button(action: {
68
+ props.onListItemPress()
69
+ }){
70
+ mainLabel
71
+ }
72
+ .foregroundStyle(.primary)
73
+ }
74
+
75
+ Spacer()
76
+
77
+ slotContent(in: props.children, named: "trailingContent", secondary: true)
78
+
79
+ if props.hasNavigationLink {
80
+ ChevronForward()
81
+ }
82
+ }
83
+ } else {
84
+ mainLabel
85
+ }
86
+ }
87
+
88
+ // Es para aplicar los insets al item. Los ejes se aplican primero; top/bottom/leading/trailing los sobrescriben.
89
+ @available(iOS 26.0, *)
90
+ @ViewBuilder
91
+ private func applyInsets(to content: some View) -> some View {
92
+ if let insets = props.insets {
93
+ applyEdgeInsets(to: content, insets: insets)
94
+ } else {
95
+ content
96
+ }
97
+ }
98
+
99
+ // Button con role aplicado.
100
+ @ViewBuilder
101
+ private func listItemButton<Label: View>(@ViewBuilder label: () -> Label) -> some View {
102
+ if let buttonRole = props.buttonRole {
103
+ Button(role: buttonRole.swiftUIRole) {
104
+ props.onListItemPress()
105
+ } label: {
106
+ label()
107
+ }
108
+ } else {
109
+ Button {
110
+ props.onListItemPress()
111
+ } label: {
112
+ label()
113
+ }
114
+ }
115
+ }
116
+
117
+ // Renderiza el leading, headline y supporting content.
118
+ @ViewBuilder
119
+ private var mainLabel: some View {
120
+ let leading = props.children?.slot("leadingContent")
121
+ let hasImage = leading?.props.children?.slot("image") != nil
122
+
123
+ if let leading {
124
+ if hasImage {
125
+ Label {
126
+ titleContent // Label ya apila título + subtítulo
127
+ } icon: {
128
+ leading.foregroundStyle(.blue)
129
+ }
130
+ } else {
131
+ HStack {
132
+ leading
133
+ alignedTitleContent
134
+ }
135
+ }
136
+ } else {
137
+ alignedTitleContent
138
+ }
139
+ }
140
+
141
+ // Se fija si tiene que llevar un VStack o no.
142
+ @ViewBuilder
143
+ private var alignedTitleContent: some View {
144
+ let hasSupporting = props.children?.slot("supportingContent") != nil
145
+
146
+ if hasSupporting {
147
+ VStack(alignment: .leading) {
148
+ titleContent
149
+ }
150
+ } else {
151
+ slotContent(in: props.children, named: "headlineContent")
152
+ }
153
+ }
154
+
155
+ // Renderiza el headline y supporting content dentro de Label o VStack.
156
+ @ViewBuilder
157
+ private var titleContent: some View {
158
+ slotContent(in: props.children, named: "headlineContent")
159
+ slotContent(in: props.children, named: "supportingContent", font: .subheadline, secondary: true)
160
+ }
161
+ }
@@ -1,24 +1,24 @@
1
- Pod::Spec.new do |s|
2
- s.name = 'PytechUi'
3
- s.version = '1.0.3'
4
- s.summary = 'Native SwiftUI components for pytech-ui'
5
- s.description = 'Native SwiftUI components for pytech-ui'
6
- s.author = 'Matias Tobias Gutierrez'
7
- s.homepage = 'https://github.com/MatiTobi/UI#readme'
8
- s.license = { :type => 'MIT' }
9
- s.platforms = {
10
- :ios => '16.4',
11
- :tvos => '16.4'
12
- }
13
- s.source = { git: 'https://github.com/MatiTobi/UI.git' }
14
- s.static_framework = true
15
-
16
- s.dependency 'ExpoModulesCore'
17
- s.dependency 'ExpoUI'
18
-
19
- s.pod_target_xcconfig = {
20
- 'DEFINES_MODULE' => 'YES',
21
- }
22
-
23
- s.source_files = '**/*.{h,m,mm,swift,hpp,cpp}'
24
- end
1
+ Pod::Spec.new do |s|
2
+ s.name = 'PytechUi'
3
+ s.version = '1.0.3'
4
+ s.summary = 'Native SwiftUI components for pytech-ui'
5
+ s.description = 'Native SwiftUI components for pytech-ui'
6
+ s.author = 'Matias Tobias Gutierrez'
7
+ s.homepage = 'https://github.com/MatiTobi/UI#readme'
8
+ s.license = { :type => 'MIT' }
9
+ s.platforms = {
10
+ :ios => '16.4',
11
+ :tvos => '16.4'
12
+ }
13
+ s.source = { git: 'https://github.com/MatiTobi/UI.git' }
14
+ s.static_framework = true
15
+
16
+ s.dependency 'ExpoModulesCore'
17
+ s.dependency 'ExpoUI'
18
+
19
+ s.pod_target_xcconfig = {
20
+ 'DEFINES_MODULE' => 'YES',
21
+ }
22
+
23
+ s.source_files = '**/*.{h,m,mm,swift,hpp,cpp}'
24
+ end