@umituz/react-native-design-system 1.7.1 → 1.7.3

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 (323) hide show
  1. package/README.md +2 -2
  2. package/package.json +61 -35
  3. package/src/index.ts +71 -271
  4. package/lib/index.d.ts +0 -59
  5. package/lib/index.d.ts.map +0 -1
  6. package/lib/index.js +0 -99
  7. package/lib/index.js.map +0 -1
  8. package/lib/presentation/atoms/AtomicAvatar.d.ts +0 -48
  9. package/lib/presentation/atoms/AtomicAvatar.d.ts.map +0 -1
  10. package/lib/presentation/atoms/AtomicAvatar.js +0 -85
  11. package/lib/presentation/atoms/AtomicAvatar.js.map +0 -1
  12. package/lib/presentation/atoms/AtomicAvatarGroup.d.ts +0 -56
  13. package/lib/presentation/atoms/AtomicAvatarGroup.d.ts.map +0 -1
  14. package/lib/presentation/atoms/AtomicAvatarGroup.js +0 -83
  15. package/lib/presentation/atoms/AtomicAvatarGroup.js.map +0 -1
  16. package/lib/presentation/atoms/AtomicBadge.d.ts +0 -42
  17. package/lib/presentation/atoms/AtomicBadge.d.ts.map +0 -1
  18. package/lib/presentation/atoms/AtomicBadge.js +0 -168
  19. package/lib/presentation/atoms/AtomicBadge.js.map +0 -1
  20. package/lib/presentation/atoms/AtomicButton.d.ts +0 -21
  21. package/lib/presentation/atoms/AtomicButton.d.ts.map +0 -1
  22. package/lib/presentation/atoms/AtomicButton.js +0 -172
  23. package/lib/presentation/atoms/AtomicButton.js.map +0 -1
  24. package/lib/presentation/atoms/AtomicCard.d.ts +0 -15
  25. package/lib/presentation/atoms/AtomicCard.d.ts.map +0 -1
  26. package/lib/presentation/atoms/AtomicCard.js +0 -70
  27. package/lib/presentation/atoms/AtomicCard.js.map +0 -1
  28. package/lib/presentation/atoms/AtomicChip.d.ts +0 -53
  29. package/lib/presentation/atoms/AtomicChip.d.ts.map +0 -1
  30. package/lib/presentation/atoms/AtomicChip.js +0 -131
  31. package/lib/presentation/atoms/AtomicChip.js.map +0 -1
  32. package/lib/presentation/atoms/AtomicDatePicker.d.ts +0 -75
  33. package/lib/presentation/atoms/AtomicDatePicker.d.ts.map +0 -1
  34. package/lib/presentation/atoms/AtomicDatePicker.js +0 -246
  35. package/lib/presentation/atoms/AtomicDatePicker.js.map +0 -1
  36. package/lib/presentation/atoms/AtomicDivider.d.ts +0 -45
  37. package/lib/presentation/atoms/AtomicDivider.d.ts.map +0 -1
  38. package/lib/presentation/atoms/AtomicDivider.js +0 -58
  39. package/lib/presentation/atoms/AtomicDivider.js.map +0 -1
  40. package/lib/presentation/atoms/AtomicFab.d.ts +0 -37
  41. package/lib/presentation/atoms/AtomicFab.d.ts.map +0 -1
  42. package/lib/presentation/atoms/AtomicFab.js +0 -68
  43. package/lib/presentation/atoms/AtomicFab.js.map +0 -1
  44. package/lib/presentation/atoms/AtomicFilter.d.ts +0 -37
  45. package/lib/presentation/atoms/AtomicFilter.d.ts.map +0 -1
  46. package/lib/presentation/atoms/AtomicFilter.js +0 -104
  47. package/lib/presentation/atoms/AtomicFilter.js.map +0 -1
  48. package/lib/presentation/atoms/AtomicFormError.d.ts +0 -30
  49. package/lib/presentation/atoms/AtomicFormError.d.ts.map +0 -1
  50. package/lib/presentation/atoms/AtomicFormError.js +0 -64
  51. package/lib/presentation/atoms/AtomicFormError.js.map +0 -1
  52. package/lib/presentation/atoms/AtomicIcon.d.ts +0 -35
  53. package/lib/presentation/atoms/AtomicIcon.d.ts.map +0 -1
  54. package/lib/presentation/atoms/AtomicIcon.js +0 -30
  55. package/lib/presentation/atoms/AtomicIcon.js.map +0 -1
  56. package/lib/presentation/atoms/AtomicImage.d.ts +0 -40
  57. package/lib/presentation/atoms/AtomicImage.d.ts.map +0 -1
  58. package/lib/presentation/atoms/AtomicImage.js +0 -92
  59. package/lib/presentation/atoms/AtomicImage.js.map +0 -1
  60. package/lib/presentation/atoms/AtomicInput.d.ts +0 -71
  61. package/lib/presentation/atoms/AtomicInput.d.ts.map +0 -1
  62. package/lib/presentation/atoms/AtomicInput.js +0 -196
  63. package/lib/presentation/atoms/AtomicInput.js.map +0 -1
  64. package/lib/presentation/atoms/AtomicNumberInput.d.ts +0 -69
  65. package/lib/presentation/atoms/AtomicNumberInput.d.ts.map +0 -1
  66. package/lib/presentation/atoms/AtomicNumberInput.js +0 -125
  67. package/lib/presentation/atoms/AtomicNumberInput.js.map +0 -1
  68. package/lib/presentation/atoms/AtomicPicker.d.ts +0 -52
  69. package/lib/presentation/atoms/AtomicPicker.d.ts.map +0 -1
  70. package/lib/presentation/atoms/AtomicPicker.js +0 -299
  71. package/lib/presentation/atoms/AtomicPicker.js.map +0 -1
  72. package/lib/presentation/atoms/AtomicProgress.d.ts +0 -44
  73. package/lib/presentation/atoms/AtomicProgress.d.ts.map +0 -1
  74. package/lib/presentation/atoms/AtomicProgress.js +0 -80
  75. package/lib/presentation/atoms/AtomicProgress.js.map +0 -1
  76. package/lib/presentation/atoms/AtomicSearchBar.d.ts +0 -19
  77. package/lib/presentation/atoms/AtomicSearchBar.d.ts.map +0 -1
  78. package/lib/presentation/atoms/AtomicSearchBar.js +0 -46
  79. package/lib/presentation/atoms/AtomicSearchBar.js.map +0 -1
  80. package/lib/presentation/atoms/AtomicSort.d.ts +0 -72
  81. package/lib/presentation/atoms/AtomicSort.d.ts.map +0 -1
  82. package/lib/presentation/atoms/AtomicSort.js +0 -77
  83. package/lib/presentation/atoms/AtomicSort.js.map +0 -1
  84. package/lib/presentation/atoms/AtomicSwitch.d.ts +0 -43
  85. package/lib/presentation/atoms/AtomicSwitch.d.ts.map +0 -1
  86. package/lib/presentation/atoms/AtomicSwitch.js +0 -104
  87. package/lib/presentation/atoms/AtomicSwitch.js.map +0 -1
  88. package/lib/presentation/atoms/AtomicText.d.ts +0 -14
  89. package/lib/presentation/atoms/AtomicText.d.ts.map +0 -1
  90. package/lib/presentation/atoms/AtomicText.js +0 -36
  91. package/lib/presentation/atoms/AtomicText.js.map +0 -1
  92. package/lib/presentation/atoms/AtomicTextArea.d.ts +0 -85
  93. package/lib/presentation/atoms/AtomicTextArea.d.ts.map +0 -1
  94. package/lib/presentation/atoms/AtomicTextArea.js +0 -196
  95. package/lib/presentation/atoms/AtomicTextArea.js.map +0 -1
  96. package/lib/presentation/atoms/AtomicTouchable.d.ts +0 -77
  97. package/lib/presentation/atoms/AtomicTouchable.d.ts.map +0 -1
  98. package/lib/presentation/atoms/AtomicTouchable.js +0 -138
  99. package/lib/presentation/atoms/AtomicTouchable.js.map +0 -1
  100. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts +0 -23
  101. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts.map +0 -1
  102. package/lib/presentation/atoms/fab/styles/fabStyles.js +0 -63
  103. package/lib/presentation/atoms/fab/styles/fabStyles.js.map +0 -1
  104. package/lib/presentation/atoms/fab/types/index.d.ts +0 -71
  105. package/lib/presentation/atoms/fab/types/index.d.ts.map +0 -1
  106. package/lib/presentation/atoms/fab/types/index.js +0 -2
  107. package/lib/presentation/atoms/fab/types/index.js.map +0 -1
  108. package/lib/presentation/atoms/filter/styles/filterStyles.d.ts +0 -15
  109. package/lib/presentation/atoms/filter/styles/filterStyles.d.ts.map +0 -1
  110. package/lib/presentation/atoms/filter/styles/filterStyles.js +0 -29
  111. package/lib/presentation/atoms/filter/styles/filterStyles.js.map +0 -1
  112. package/lib/presentation/atoms/filter/types/index.d.ts +0 -76
  113. package/lib/presentation/atoms/filter/types/index.d.ts.map +0 -1
  114. package/lib/presentation/atoms/filter/types/index.js +0 -2
  115. package/lib/presentation/atoms/filter/types/index.js.map +0 -1
  116. package/lib/presentation/atoms/index.d.ts +0 -273
  117. package/lib/presentation/atoms/index.d.ts.map +0 -1
  118. package/lib/presentation/atoms/index.js +0 -146
  119. package/lib/presentation/atoms/index.js.map +0 -1
  120. package/lib/presentation/atoms/input/hooks/useInputState.d.ts +0 -7
  121. package/lib/presentation/atoms/input/hooks/useInputState.d.ts.map +0 -1
  122. package/lib/presentation/atoms/input/hooks/useInputState.js +0 -13
  123. package/lib/presentation/atoms/input/hooks/useInputState.js.map +0 -1
  124. package/lib/presentation/atoms/input/styles/inputStyles.d.ts +0 -13
  125. package/lib/presentation/atoms/input/styles/inputStyles.d.ts.map +0 -1
  126. package/lib/presentation/atoms/input/styles/inputStyles.js +0 -59
  127. package/lib/presentation/atoms/input/styles/inputStyles.js.map +0 -1
  128. package/lib/presentation/atoms/input/types/index.d.ts +0 -24
  129. package/lib/presentation/atoms/input/types/index.d.ts.map +0 -1
  130. package/lib/presentation/atoms/input/types/index.js +0 -2
  131. package/lib/presentation/atoms/input/types/index.js.map +0 -1
  132. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts +0 -85
  133. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts.map +0 -1
  134. package/lib/presentation/atoms/picker/styles/pickerStyles.js +0 -177
  135. package/lib/presentation/atoms/picker/styles/pickerStyles.js.map +0 -1
  136. package/lib/presentation/atoms/picker/types/index.d.ts +0 -38
  137. package/lib/presentation/atoms/picker/types/index.d.ts.map +0 -1
  138. package/lib/presentation/atoms/picker/types/index.js +0 -2
  139. package/lib/presentation/atoms/picker/types/index.js.map +0 -1
  140. package/lib/presentation/atoms/touchable/styles/touchableStyles.d.ts +0 -31
  141. package/lib/presentation/atoms/touchable/styles/touchableStyles.d.ts.map +0 -1
  142. package/lib/presentation/atoms/touchable/styles/touchableStyles.js +0 -54
  143. package/lib/presentation/atoms/touchable/styles/touchableStyles.js.map +0 -1
  144. package/lib/presentation/atoms/touchable/types/index.d.ts +0 -134
  145. package/lib/presentation/atoms/touchable/types/index.d.ts.map +0 -1
  146. package/lib/presentation/atoms/touchable/types/index.js +0 -2
  147. package/lib/presentation/atoms/touchable/types/index.js.map +0 -1
  148. package/lib/presentation/hooks/useAppDesignTokens.d.ts +0 -13
  149. package/lib/presentation/hooks/useAppDesignTokens.d.ts.map +0 -1
  150. package/lib/presentation/hooks/useAppDesignTokens.js +0 -13
  151. package/lib/presentation/hooks/useAppDesignTokens.js.map +0 -1
  152. package/lib/presentation/hooks/useResponsive.d.ts +0 -80
  153. package/lib/presentation/hooks/useResponsive.d.ts.map +0 -1
  154. package/lib/presentation/hooks/useResponsive.js +0 -82
  155. package/lib/presentation/hooks/useResponsive.js.map +0 -1
  156. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts +0 -73
  157. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts.map +0 -1
  158. package/lib/presentation/molecules/AtomicConfirmationModal.js +0 -154
  159. package/lib/presentation/molecules/AtomicConfirmationModal.js.map +0 -1
  160. package/lib/presentation/molecules/EmptyState.d.ts +0 -41
  161. package/lib/presentation/molecules/EmptyState.d.ts.map +0 -1
  162. package/lib/presentation/molecules/EmptyState.js +0 -68
  163. package/lib/presentation/molecules/EmptyState.js.map +0 -1
  164. package/lib/presentation/molecules/FormField.d.ts +0 -22
  165. package/lib/presentation/molecules/FormField.d.ts.map +0 -1
  166. package/lib/presentation/molecules/FormField.js +0 -76
  167. package/lib/presentation/molecules/FormField.js.map +0 -1
  168. package/lib/presentation/molecules/GridContainer.d.ts +0 -40
  169. package/lib/presentation/molecules/GridContainer.d.ts.map +0 -1
  170. package/lib/presentation/molecules/GridContainer.js +0 -77
  171. package/lib/presentation/molecules/GridContainer.js.map +0 -1
  172. package/lib/presentation/molecules/IconContainer.d.ts +0 -29
  173. package/lib/presentation/molecules/IconContainer.d.ts.map +0 -1
  174. package/lib/presentation/molecules/IconContainer.js +0 -60
  175. package/lib/presentation/molecules/IconContainer.js.map +0 -1
  176. package/lib/presentation/molecules/ListItem.d.ts +0 -5
  177. package/lib/presentation/molecules/ListItem.d.ts.map +0 -1
  178. package/lib/presentation/molecules/ListItem.js +0 -24
  179. package/lib/presentation/molecules/ListItem.js.map +0 -1
  180. package/lib/presentation/molecules/ScreenHeader.d.ts +0 -55
  181. package/lib/presentation/molecules/ScreenHeader.d.ts.map +0 -1
  182. package/lib/presentation/molecules/ScreenHeader.js +0 -94
  183. package/lib/presentation/molecules/ScreenHeader.js.map +0 -1
  184. package/lib/presentation/molecules/SearchBar.d.ts +0 -18
  185. package/lib/presentation/molecules/SearchBar.d.ts.map +0 -1
  186. package/lib/presentation/molecules/SearchBar.js +0 -47
  187. package/lib/presentation/molecules/SearchBar.js.map +0 -1
  188. package/lib/presentation/molecules/SectionCard.d.ts +0 -25
  189. package/lib/presentation/molecules/SectionCard.d.ts.map +0 -1
  190. package/lib/presentation/molecules/SectionCard.js +0 -47
  191. package/lib/presentation/molecules/SectionCard.js.map +0 -1
  192. package/lib/presentation/molecules/SectionContainer.d.ts +0 -33
  193. package/lib/presentation/molecules/SectionContainer.d.ts.map +0 -1
  194. package/lib/presentation/molecules/SectionContainer.js +0 -64
  195. package/lib/presentation/molecules/SectionContainer.js.map +0 -1
  196. package/lib/presentation/molecules/SectionHeader.d.ts +0 -37
  197. package/lib/presentation/molecules/SectionHeader.d.ts.map +0 -1
  198. package/lib/presentation/molecules/SectionHeader.js +0 -73
  199. package/lib/presentation/molecules/SectionHeader.js.map +0 -1
  200. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts +0 -50
  201. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts.map +0 -1
  202. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.js +0 -115
  203. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.js.map +0 -1
  204. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts +0 -86
  205. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts.map +0 -1
  206. package/lib/presentation/molecules/confirmation-modal/types/index.js +0 -7
  207. package/lib/presentation/molecules/confirmation-modal/types/index.js.map +0 -1
  208. package/lib/presentation/molecules/index.d.ts +0 -27
  209. package/lib/presentation/molecules/index.d.ts.map +0 -1
  210. package/lib/presentation/molecules/index.js +0 -17
  211. package/lib/presentation/molecules/index.js.map +0 -1
  212. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts +0 -12
  213. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts.map +0 -1
  214. package/lib/presentation/molecules/listitem/styles/listItemStyles.js +0 -15
  215. package/lib/presentation/molecules/listitem/styles/listItemStyles.js.map +0 -1
  216. package/lib/presentation/molecules/listitem/types/index.d.ts +0 -17
  217. package/lib/presentation/molecules/listitem/types/index.d.ts.map +0 -1
  218. package/lib/presentation/molecules/listitem/types/index.js +0 -2
  219. package/lib/presentation/molecules/listitem/types/index.js.map +0 -1
  220. package/lib/presentation/organisms/AppHeader.d.ts +0 -31
  221. package/lib/presentation/organisms/AppHeader.d.ts.map +0 -1
  222. package/lib/presentation/organisms/AppHeader.js +0 -78
  223. package/lib/presentation/organisms/AppHeader.js.map +0 -1
  224. package/lib/presentation/organisms/FormContainer.d.ts +0 -76
  225. package/lib/presentation/organisms/FormContainer.d.ts.map +0 -1
  226. package/lib/presentation/organisms/FormContainer.js +0 -127
  227. package/lib/presentation/organisms/FormContainer.js.map +0 -1
  228. package/lib/presentation/organisms/ScreenLayout.d.ts +0 -84
  229. package/lib/presentation/organisms/ScreenLayout.d.ts.map +0 -1
  230. package/lib/presentation/organisms/ScreenLayout.js +0 -69
  231. package/lib/presentation/organisms/ScreenLayout.js.map +0 -1
  232. package/lib/presentation/organisms/index.d.ts +0 -16
  233. package/lib/presentation/organisms/index.d.ts.map +0 -1
  234. package/lib/presentation/organisms/index.js +0 -14
  235. package/lib/presentation/organisms/index.js.map +0 -1
  236. package/lib/presentation/tokens/commonStyles.d.ts +0 -122
  237. package/lib/presentation/tokens/commonStyles.d.ts.map +0 -1
  238. package/lib/presentation/tokens/commonStyles.js +0 -220
  239. package/lib/presentation/tokens/commonStyles.js.map +0 -1
  240. package/lib/presentation/utils/platformConstants.d.ts +0 -100
  241. package/lib/presentation/utils/platformConstants.d.ts.map +0 -1
  242. package/lib/presentation/utils/platformConstants.js +0 -114
  243. package/lib/presentation/utils/platformConstants.js.map +0 -1
  244. package/lib/presentation/utils/responsive.d.ts +0 -218
  245. package/lib/presentation/utils/responsive.d.ts.map +0 -1
  246. package/lib/presentation/utils/responsive.js +0 -452
  247. package/lib/presentation/utils/responsive.js.map +0 -1
  248. package/lib/presentation/utils/variants/compound.d.ts +0 -10
  249. package/lib/presentation/utils/variants/compound.d.ts.map +0 -1
  250. package/lib/presentation/utils/variants/compound.js +0 -16
  251. package/lib/presentation/utils/variants/compound.js.map +0 -1
  252. package/lib/presentation/utils/variants/core.d.ts +0 -15
  253. package/lib/presentation/utils/variants/core.d.ts.map +0 -1
  254. package/lib/presentation/utils/variants/core.js +0 -23
  255. package/lib/presentation/utils/variants/core.js.map +0 -1
  256. package/lib/presentation/utils/variants/helpers.d.ts +0 -5
  257. package/lib/presentation/utils/variants/helpers.d.ts.map +0 -1
  258. package/lib/presentation/utils/variants/helpers.js +0 -10
  259. package/lib/presentation/utils/variants/helpers.js.map +0 -1
  260. package/lib/presentation/utils/variants.d.ts +0 -4
  261. package/lib/presentation/utils/variants.d.ts.map +0 -1
  262. package/lib/presentation/utils/variants.js +0 -4
  263. package/lib/presentation/utils/variants.js.map +0 -1
  264. package/src/presentation/atoms/AtomicAvatar.tsx +0 -157
  265. package/src/presentation/atoms/AtomicAvatarGroup.tsx +0 -169
  266. package/src/presentation/atoms/AtomicBadge.tsx +0 -232
  267. package/src/presentation/atoms/AtomicButton.tsx +0 -236
  268. package/src/presentation/atoms/AtomicCard.tsx +0 -107
  269. package/src/presentation/atoms/AtomicChip.tsx +0 -223
  270. package/src/presentation/atoms/AtomicDatePicker.tsx +0 -354
  271. package/src/presentation/atoms/AtomicDivider.tsx +0 -114
  272. package/src/presentation/atoms/AtomicFab.tsx +0 -98
  273. package/src/presentation/atoms/AtomicFilter.tsx +0 -154
  274. package/src/presentation/atoms/AtomicFormError.tsx +0 -105
  275. package/src/presentation/atoms/AtomicIcon.tsx +0 -40
  276. package/src/presentation/atoms/AtomicImage.tsx +0 -149
  277. package/src/presentation/atoms/AtomicInput.tsx +0 -350
  278. package/src/presentation/atoms/AtomicNumberInput.tsx +0 -182
  279. package/src/presentation/atoms/AtomicPicker.tsx +0 -458
  280. package/src/presentation/atoms/AtomicProgress.tsx +0 -139
  281. package/src/presentation/atoms/AtomicSearchBar.tsx +0 -114
  282. package/src/presentation/atoms/AtomicSort.tsx +0 -145
  283. package/src/presentation/atoms/AtomicSwitch.tsx +0 -166
  284. package/src/presentation/atoms/AtomicText.tsx +0 -82
  285. package/src/presentation/atoms/AtomicTextArea.tsx +0 -313
  286. package/src/presentation/atoms/AtomicTouchable.tsx +0 -209
  287. package/src/presentation/atoms/fab/styles/fabStyles.ts +0 -69
  288. package/src/presentation/atoms/fab/types/index.ts +0 -82
  289. package/src/presentation/atoms/filter/styles/filterStyles.ts +0 -32
  290. package/src/presentation/atoms/filter/types/index.ts +0 -89
  291. package/src/presentation/atoms/index.ts +0 -366
  292. package/src/presentation/atoms/input/hooks/useInputState.ts +0 -15
  293. package/src/presentation/atoms/input/styles/inputStyles.ts +0 -66
  294. package/src/presentation/atoms/input/types/index.ts +0 -25
  295. package/src/presentation/atoms/picker/styles/pickerStyles.ts +0 -220
  296. package/src/presentation/atoms/picker/types/index.ts +0 -40
  297. package/src/presentation/atoms/touchable/styles/touchableStyles.ts +0 -62
  298. package/src/presentation/atoms/touchable/types/index.ts +0 -155
  299. package/src/presentation/hooks/useAppDesignTokens.ts +0 -13
  300. package/src/presentation/hooks/useResponsive.ts +0 -180
  301. package/src/presentation/molecules/AtomicConfirmationModal.tsx +0 -243
  302. package/src/presentation/molecules/EmptyState.tsx +0 -130
  303. package/src/presentation/molecules/FormField.tsx +0 -128
  304. package/src/presentation/molecules/GridContainer.tsx +0 -124
  305. package/src/presentation/molecules/IconContainer.tsx +0 -94
  306. package/src/presentation/molecules/ListItem.tsx +0 -36
  307. package/src/presentation/molecules/ScreenHeader.tsx +0 -140
  308. package/src/presentation/molecules/SearchBar.tsx +0 -85
  309. package/src/presentation/molecules/SectionCard.tsx +0 -74
  310. package/src/presentation/molecules/SectionContainer.tsx +0 -106
  311. package/src/presentation/molecules/SectionHeader.tsx +0 -125
  312. package/src/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.ts +0 -133
  313. package/src/presentation/molecules/confirmation-modal/types/index.ts +0 -105
  314. package/src/presentation/molecules/index.ts +0 -41
  315. package/src/presentation/molecules/listitem/styles/listItemStyles.ts +0 -19
  316. package/src/presentation/molecules/listitem/types/index.ts +0 -17
  317. package/src/presentation/organisms/AppHeader.tsx +0 -137
  318. package/src/presentation/organisms/FormContainer.tsx +0 -180
  319. package/src/presentation/organisms/ScreenLayout.tsx +0 -171
  320. package/src/presentation/organisms/index.ts +0 -25
  321. package/src/presentation/tokens/commonStyles.ts +0 -253
  322. package/src/presentation/utils/platformConstants.ts +0 -124
  323. package/src/presentation/utils/responsive.ts +0 -516
@@ -1,17 +0,0 @@
1
- import { ViewStyle } from 'react-native';
2
-
3
- /**
4
- * ListItem component props
5
- *
6
- * leftIcon/rightIcon: Any MaterialIcons name
7
- * @see https://fonts.google.com/icons
8
- */
9
- export interface ListItemProps {
10
- title: string;
11
- subtitle?: string;
12
- leftIcon?: string; // MaterialIcons name
13
- rightIcon?: string; // MaterialIcons name
14
- onPress?: () => void;
15
- disabled?: boolean;
16
- style?: ViewStyle;
17
- }
@@ -1,137 +0,0 @@
1
- /**
2
- * AppHeader Organism - Application Header Component
3
- *
4
- * Complex header combining atoms and molecules
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: ORGANISM
8
- * Composition: AtomicIcon + AtomicText + AtomicButton + SearchBar
9
- */
10
-
11
- import React from 'react';
12
- import { View, ViewStyle, SafeAreaView } from 'react-native';
13
- import { useAppDesignTokens } from '../hooks/useAppDesignTokens';
14
- import { AtomicText } from '../atoms/AtomicText';
15
- import { AtomicButton } from '../atoms/AtomicButton';
16
- import { AtomicIcon } from '../atoms/AtomicIcon';
17
- import type { IconName } from '@umituz/react-native-icon';
18
-
19
- // =============================================================================
20
- // TYPE DEFINITIONS
21
- // =============================================================================
22
-
23
- /**
24
- * AppHeader component props
25
- *
26
- * leftIcon/rightIcon: Any MaterialIcons name
27
- * @see https://fonts.google.com/icons
28
- */
29
- export interface AppHeaderProps {
30
- title: string;
31
- subtitle?: string;
32
- leftIcon?: IconName; // Icon name
33
- onLeftPress?: () => void;
34
- rightIcon?: IconName; // Icon name
35
- onRightPress?: () => void;
36
- showShadow?: boolean;
37
- backgroundColor?: string;
38
- style?: ViewStyle;
39
- }
40
-
41
- // =============================================================================
42
- // COMPONENT IMPLEMENTATION
43
- // =============================================================================
44
-
45
- export const AppHeader: React.FC<AppHeaderProps> = ({
46
- title,
47
- subtitle,
48
- leftIcon,
49
- onLeftPress,
50
- rightIcon,
51
- onRightPress,
52
- showShadow = true,
53
- backgroundColor,
54
- style,
55
- }) => {
56
- const tokens = useAppDesignTokens();
57
- const bgColor = backgroundColor || tokens.colors.surface;
58
- const styles = getStyles(tokens);
59
-
60
- return (
61
- <SafeAreaView style={[styles.safeArea, { backgroundColor: bgColor }]}>
62
- <View style={[styles.container, { backgroundColor: bgColor }, style]}>
63
- {/* Left Action */}
64
- <View style={styles.leftContainer}>
65
- {leftIcon && onLeftPress && (
66
- <AtomicButton
67
- variant="text"
68
- size="sm"
69
- onPress={onLeftPress}
70
- icon={leftIcon}
71
- />
72
- )}
73
- </View>
74
-
75
- {/* Title Section */}
76
- <View style={styles.titleContainer}>
77
- <AtomicText type="titleLarge" color="primary" numberOfLines={1}>
78
- {title}
79
- </AtomicText>
80
- {subtitle && (
81
- <AtomicText type="bodySmall" color="secondary" numberOfLines={1}>
82
- {subtitle}
83
- </AtomicText>
84
- )}
85
- </View>
86
-
87
- {/* Right Action */}
88
- <View style={styles.rightContainer}>
89
- {rightIcon && onRightPress && (
90
- <AtomicButton
91
- variant="text"
92
- size="sm"
93
- onPress={onRightPress}
94
- icon={rightIcon}
95
- />
96
- )}
97
- </View>
98
- </View>
99
- </SafeAreaView>
100
- );
101
- };
102
-
103
- // =============================================================================
104
- // STYLES
105
- // =============================================================================
106
-
107
- const getStyles = (tokens: ReturnType<typeof useAppDesignTokens>) => ({
108
- safeArea: {
109
- backgroundColor: tokens.colors.surface,
110
- } as ViewStyle,
111
- container: {
112
- flexDirection: 'row' as const,
113
- alignItems: 'center' as const,
114
- justifyContent: 'space-between' as const,
115
- paddingHorizontal: tokens.spacing.md,
116
- paddingVertical: tokens.spacing.sm,
117
- minHeight: tokens.iconSizes.xl + tokens.spacing.md,
118
- } as ViewStyle,
119
- leftContainer: {
120
- width: tokens.iconSizes.xl + tokens.spacing.sm,
121
- alignItems: 'flex-start' as const,
122
- } as ViewStyle,
123
- titleContainer: {
124
- flex: 1,
125
- alignItems: 'center' as const,
126
- paddingHorizontal: tokens.spacing.sm,
127
- } as ViewStyle,
128
- rightContainer: {
129
- width: tokens.iconSizes.xl + tokens.spacing.sm,
130
- alignItems: 'flex-start' as const,
131
- } as ViewStyle,
132
- });
133
-
134
- // =============================================================================
135
- // EXPORTS
136
- // =============================================================================
137
-
@@ -1,180 +0,0 @@
1
- /**
2
- * FormContainer Component
3
- *
4
- * A reusable container for forms with proper keyboard handling and responsive layout.
5
- *
6
- * Features:
7
- * - Pure React Native implementation (no Paper dependency)
8
- * - Universal keyboard handling (no platform-specific code)
9
- * - ScrollView with automatic content padding
10
- * - Safe area insets for bottom tab navigation overlap
11
- * - Responsive max width for large screens (tablets)
12
- * - Consistent vertical spacing between form elements
13
- * - Theme-aware surface colors
14
- * - Optimized performance with memoized styles
15
- *
16
- * Usage:
17
- * ```tsx
18
- * <FormContainer>
19
- * <AtomicInput label="Name" value={name} onChangeText={setName} />
20
- * <AtomicTextArea label="Description" value={desc} onChangeText={setDesc} />
21
- * <AtomicButton variant="primary" onPress={handleSubmit}>
22
- * Submit
23
- * </AtomicButton>
24
- * </FormContainer>
25
- * ```
26
- *
27
- * Why This Component:
28
- * - Prevents keyboard from covering input fields (universal solution)
29
- * - Handles safe area (notch, bottom tabs) automatically
30
- * - Consistent form layout across all 100+ generated apps
31
- * - Responsive design for tablets (max 700px) and phones (full width)
32
- * - Automatic vertical spacing between form elements (no manual marginBottom)
33
- * - Reduces boilerplate in form screens
34
- * - Universal code - no platform checks, works on iOS, Android, Web
35
- *
36
- * Technical Details:
37
- * - Uses ScrollView with contentContainerStyle for keyboard handling
38
- * - Pure React Native View for surface (lightweight)
39
- * - Vertical spacing via Children.map() wrapping (universal compatibility)
40
- * - Safe area insets from react-native-safe-area-context
41
- * - Responsive values from useResponsive hook
42
- *
43
- * @module FormContainer
44
- */
45
-
46
- import React, { useMemo, Children } from 'react';
47
- import {
48
- ScrollView,
49
- StyleSheet,
50
- View,
51
- StyleProp,
52
- ViewStyle,
53
- } from 'react-native';
54
- import { useSafeAreaInsets } from 'react-native-safe-area-context';
55
- import { useAppDesignTokens } from '../hooks/useAppDesignTokens';
56
- import { useResponsive } from '../hooks/useResponsive';
57
-
58
- /**
59
- * Props for FormContainer component
60
- */
61
- export interface FormContainerProps {
62
- /** Form content (inputs, buttons, etc.) */
63
- children: React.ReactNode;
64
- /** Container style override (for outer View) */
65
- containerStyle?: StyleProp<ViewStyle>;
66
- /** Content container style override (for ScrollView content) */
67
- contentContainerStyle?: StyleProp<ViewStyle>;
68
- /** Show vertical scroll indicator */
69
- showsVerticalScrollIndicator?: boolean;
70
- /** Optional test ID for E2E testing */
71
- testID?: string;
72
- /** Show surface border (default: true) */
73
- showBorder?: boolean;
74
- }
75
-
76
- /**
77
- * FormContainer - Universal form wrapper component
78
- *
79
- * Wraps forms with:
80
- * - Pure React Native surface
81
- * - Universal keyboard handling (no platform checks)
82
- * - ScrollView for content overflow
83
- * - Safe area insets (bottom tabs, notch)
84
- * - Responsive max width (tablets)
85
- * - Theme integration
86
- */
87
- export const FormContainer: React.FC<FormContainerProps> = ({
88
- children,
89
- containerStyle,
90
- contentContainerStyle,
91
- showsVerticalScrollIndicator = false,
92
- testID,
93
- showBorder = true,
94
- }) => {
95
- const tokens = useAppDesignTokens();
96
- const insets = useSafeAreaInsets();
97
- const { formContentWidth, formBottomPadding, formElementSpacing } = useResponsive();
98
-
99
- // Memoize styles to prevent recreation on every render
100
- // Only recreate when theme colors or responsive values change
101
- const styles = useMemo(
102
- () =>
103
- StyleSheet.create({
104
- container: {
105
- flex: 1,
106
- backgroundColor: tokens.colors.backgroundPrimary,
107
- },
108
- surface: {
109
- flex: 1,
110
- backgroundColor: tokens.colors.surface,
111
- borderWidth: showBorder ? 1 : 0,
112
- borderColor: tokens.colors.border,
113
- borderRadius: tokens.borders.radius.md,
114
- },
115
- scrollView: {
116
- flex: 1,
117
- },
118
- contentContainer: {
119
- flexGrow: 1,
120
- padding: tokens.spacing.lg,
121
- paddingTop: tokens.spacing.xl,
122
- // Bottom padding: base + safe area insets for tab bar
123
- paddingBottom: formBottomPadding + insets.bottom,
124
- // Responsive max width (undefined for phones, 700px for tablets)
125
- maxWidth: formContentWidth,
126
- alignSelf: 'center',
127
- width: '100%',
128
- },
129
- // Wrapper for each form element to add vertical spacing
130
- // This is the universal replacement for CSS gap property
131
- formElementWrapper: {
132
- marginBottom: formElementSpacing,
133
- },
134
- }),
135
- [
136
- tokens.colors.backgroundPrimary,
137
- tokens.colors.surface,
138
- tokens.colors.border,
139
- tokens.borders.radius.md,
140
- tokens.spacing.lg,
141
- tokens.spacing.xl,
142
- formBottomPadding,
143
- formContentWidth,
144
- formElementSpacing,
145
- insets.bottom,
146
- showBorder,
147
- ]
148
- );
149
-
150
- // Wrap each child with spacing View (universal gap replacement)
151
- // Children.map() handles arrays, fragments, single elements correctly
152
- const childrenWithSpacing = useMemo(() => {
153
- const childArray = Children.toArray(children);
154
- return childArray.map((child, index) => (
155
- <View
156
- key={index}
157
- style={index < childArray.length - 1 ? styles.formElementWrapper : undefined}
158
- >
159
- {child}
160
- </View>
161
- ));
162
- }, [children, styles.formElementWrapper]);
163
-
164
- return (
165
- <View style={[styles.container, containerStyle]} testID={testID}>
166
- <View style={styles.surface}>
167
- <ScrollView
168
- style={styles.scrollView}
169
- contentContainerStyle={[styles.contentContainer, contentContainerStyle]}
170
- keyboardShouldPersistTaps="handled"
171
- keyboardDismissMode="on-drag"
172
- showsVerticalScrollIndicator={showsVerticalScrollIndicator}
173
- testID={testID ? `${testID}-scroll` : undefined}
174
- >
175
- {childrenWithSpacing}
176
- </ScrollView>
177
- </View>
178
- </View>
179
- );
180
- };
@@ -1,171 +0,0 @@
1
- /**
2
- * ScreenLayout - Universal Screen Container Component
3
- *
4
- * Provides consistent layout structure for all screens:
5
- * - SafeAreaView with configurable edges
6
- * - Optional ScrollView for content
7
- * - Theme-aware background colors
8
- * - Optional header/footer slots
9
- * - Consistent spacing and padding
10
- *
11
- * Usage:
12
- * <ScreenLayout>
13
- * <View>Your content here</View>
14
- * </ScreenLayout>
15
- *
16
- * Advanced:
17
- * <ScreenLayout
18
- * scrollable={false}
19
- * edges={['top', 'bottom']}
20
- * header={<CustomHeader />}
21
- * >
22
- * <View>Content</View>
23
- * </ScreenLayout>
24
- */
25
-
26
- import React, { useMemo } from 'react';
27
- import { View, ScrollView, StyleSheet, ViewStyle } from 'react-native';
28
- import { SafeAreaView, Edge } from 'react-native-safe-area-context';
29
- import { useAppDesignTokens } from '../hooks/useAppDesignTokens';
30
-
31
- export interface ScreenLayoutProps {
32
- /**
33
- * Content to render inside the layout
34
- */
35
- children: React.ReactNode;
36
-
37
- /**
38
- * Enable scrolling (default: true)
39
- * Set to false for screens with custom scroll logic
40
- */
41
- scrollable?: boolean;
42
-
43
- /**
44
- * Safe area edges to apply (default: ['top'])
45
- * Common values:
46
- * - ['top'] - For screens with bottom tabs
47
- * - ['top', 'bottom'] - For modal screens
48
- * - [] - No safe area (use cautiously)
49
- */
50
- edges?: Edge[];
51
-
52
- /**
53
- * Optional header component
54
- * Rendered above scrollable content
55
- */
56
- header?: React.ReactNode;
57
-
58
- /**
59
- * Optional footer component
60
- * Rendered below scrollable content
61
- */
62
- footer?: React.ReactNode;
63
-
64
- /**
65
- * Override background color
66
- * If not provided, uses theme's backgroundPrimary
67
- */
68
- backgroundColor?: string;
69
-
70
- /**
71
- * Custom container style
72
- */
73
- containerStyle?: ViewStyle;
74
-
75
- /**
76
- * Custom content container style (for ScrollView)
77
- */
78
- contentContainerStyle?: ViewStyle;
79
-
80
- /**
81
- * Test ID for automation
82
- */
83
- testID?: string;
84
-
85
- /**
86
- * Hide vertical scroll indicator (default: false)
87
- */
88
- hideScrollIndicator?: boolean;
89
-
90
- /**
91
- * Enable keyboard avoiding behavior (default: false)
92
- * Useful for screens with inputs
93
- */
94
- keyboardAvoiding?: boolean;
95
-
96
- }
97
-
98
- export const ScreenLayout: React.FC<ScreenLayoutProps> = ({
99
- children,
100
- scrollable = true,
101
- edges = ['top'],
102
- header,
103
- footer,
104
- backgroundColor,
105
- containerStyle,
106
- contentContainerStyle,
107
- testID,
108
- hideScrollIndicator = false,
109
- keyboardAvoiding = false,
110
- }) => {
111
- // Automatically uses current theme from global store
112
- const tokens = useAppDesignTokens();
113
- const styles = useMemo(() => getStyles(tokens), [tokens]);
114
-
115
- const bgColor = backgroundColor || tokens.colors.backgroundPrimary;
116
-
117
- // Non-scrollable layout
118
- if (!scrollable) {
119
- return (
120
- <SafeAreaView
121
- style={[styles.container, { backgroundColor: bgColor }, containerStyle]}
122
- edges={edges}
123
- testID={testID}
124
- >
125
- {header}
126
- <View style={[styles.content, contentContainerStyle]}>
127
- {children}
128
- </View>
129
- {footer}
130
- </SafeAreaView>
131
- );
132
- }
133
-
134
- // Scrollable layout (default)
135
- return (
136
- <SafeAreaView
137
- style={[styles.container, { backgroundColor: bgColor }, containerStyle]}
138
- edges={edges}
139
- testID={testID}
140
- >
141
- {header}
142
- <ScrollView
143
- style={styles.scrollView}
144
- contentContainerStyle={[styles.scrollContent, contentContainerStyle]}
145
- showsVerticalScrollIndicator={!hideScrollIndicator}
146
- keyboardShouldPersistTaps={keyboardAvoiding ? 'handled' : 'never'}
147
- >
148
- {children}
149
- </ScrollView>
150
- {footer}
151
- </SafeAreaView>
152
- );
153
- };
154
-
155
- const getStyles = (tokens: ReturnType<typeof useAppDesignTokens>) =>
156
- StyleSheet.create({
157
- container: {
158
- flex: 1,
159
- },
160
- content: {
161
- flex: 1,
162
- },
163
- scrollView: {
164
- flex: 1,
165
- },
166
- scrollContent: {
167
- flexGrow: 1,
168
- paddingHorizontal: tokens.spacing.md,
169
- paddingBottom: tokens.spacing.lg,
170
- },
171
- });
@@ -1,25 +0,0 @@
1
- /**
2
- * Organism Components Export Index
3
- *
4
- * Organisms are complex components composed of molecules and atoms
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: ORGANISMS
8
- */
9
-
10
- // Component exports
11
- // AppHeader - Main application header with navigation
12
- export { AppHeader } from './AppHeader';
13
-
14
- // ScreenLayout - Universal screen container with consistent layout
15
- export { ScreenLayout } from './ScreenLayout';
16
-
17
- // Type exports
18
- export type { AppHeaderProps } from './AppHeader';
19
- export type { ScreenLayoutProps } from './ScreenLayout';
20
-
21
- // Union type for all organism props (used for type narrowing)
22
- import type { AppHeaderProps } from './AppHeader';
23
- import type { ScreenLayoutProps } from './ScreenLayout';
24
-
25
- export type OrganismComponentProps = AppHeaderProps | ScreenLayoutProps;