@umituz/react-native-design-system 1.5.8 → 1.5.9

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 (257) hide show
  1. package/package.json +3 -8
  2. package/lib/index.d.ts +0 -61
  3. package/lib/index.d.ts.map +0 -1
  4. package/lib/index.js +0 -101
  5. package/lib/index.js.map +0 -1
  6. package/lib/presentation/atoms/AtomicAvatar.d.ts +0 -48
  7. package/lib/presentation/atoms/AtomicAvatar.d.ts.map +0 -1
  8. package/lib/presentation/atoms/AtomicAvatar.js +0 -85
  9. package/lib/presentation/atoms/AtomicAvatar.js.map +0 -1
  10. package/lib/presentation/atoms/AtomicAvatarGroup.d.ts +0 -56
  11. package/lib/presentation/atoms/AtomicAvatarGroup.d.ts.map +0 -1
  12. package/lib/presentation/atoms/AtomicAvatarGroup.js +0 -83
  13. package/lib/presentation/atoms/AtomicAvatarGroup.js.map +0 -1
  14. package/lib/presentation/atoms/AtomicBadge.d.ts +0 -42
  15. package/lib/presentation/atoms/AtomicBadge.d.ts.map +0 -1
  16. package/lib/presentation/atoms/AtomicBadge.js +0 -168
  17. package/lib/presentation/atoms/AtomicBadge.js.map +0 -1
  18. package/lib/presentation/atoms/AtomicButton.d.ts +0 -21
  19. package/lib/presentation/atoms/AtomicButton.d.ts.map +0 -1
  20. package/lib/presentation/atoms/AtomicButton.js +0 -172
  21. package/lib/presentation/atoms/AtomicButton.js.map +0 -1
  22. package/lib/presentation/atoms/AtomicCard.d.ts +0 -15
  23. package/lib/presentation/atoms/AtomicCard.d.ts.map +0 -1
  24. package/lib/presentation/atoms/AtomicCard.js +0 -70
  25. package/lib/presentation/atoms/AtomicCard.js.map +0 -1
  26. package/lib/presentation/atoms/AtomicChip.d.ts +0 -53
  27. package/lib/presentation/atoms/AtomicChip.d.ts.map +0 -1
  28. package/lib/presentation/atoms/AtomicChip.js +0 -131
  29. package/lib/presentation/atoms/AtomicChip.js.map +0 -1
  30. package/lib/presentation/atoms/AtomicDatePicker.d.ts +0 -75
  31. package/lib/presentation/atoms/AtomicDatePicker.d.ts.map +0 -1
  32. package/lib/presentation/atoms/AtomicDatePicker.js +0 -246
  33. package/lib/presentation/atoms/AtomicDatePicker.js.map +0 -1
  34. package/lib/presentation/atoms/AtomicDivider.d.ts +0 -45
  35. package/lib/presentation/atoms/AtomicDivider.d.ts.map +0 -1
  36. package/lib/presentation/atoms/AtomicDivider.js +0 -58
  37. package/lib/presentation/atoms/AtomicDivider.js.map +0 -1
  38. package/lib/presentation/atoms/AtomicFab.d.ts +0 -37
  39. package/lib/presentation/atoms/AtomicFab.d.ts.map +0 -1
  40. package/lib/presentation/atoms/AtomicFab.js +0 -68
  41. package/lib/presentation/atoms/AtomicFab.js.map +0 -1
  42. package/lib/presentation/atoms/AtomicFilter.d.ts +0 -37
  43. package/lib/presentation/atoms/AtomicFilter.d.ts.map +0 -1
  44. package/lib/presentation/atoms/AtomicFilter.js +0 -104
  45. package/lib/presentation/atoms/AtomicFilter.js.map +0 -1
  46. package/lib/presentation/atoms/AtomicFormError.d.ts +0 -30
  47. package/lib/presentation/atoms/AtomicFormError.d.ts.map +0 -1
  48. package/lib/presentation/atoms/AtomicFormError.js +0 -64
  49. package/lib/presentation/atoms/AtomicFormError.js.map +0 -1
  50. package/lib/presentation/atoms/AtomicIcon.d.ts +0 -35
  51. package/lib/presentation/atoms/AtomicIcon.d.ts.map +0 -1
  52. package/lib/presentation/atoms/AtomicIcon.js +0 -30
  53. package/lib/presentation/atoms/AtomicIcon.js.map +0 -1
  54. package/lib/presentation/atoms/AtomicImage.d.ts +0 -40
  55. package/lib/presentation/atoms/AtomicImage.d.ts.map +0 -1
  56. package/lib/presentation/atoms/AtomicImage.js +0 -92
  57. package/lib/presentation/atoms/AtomicImage.js.map +0 -1
  58. package/lib/presentation/atoms/AtomicInput.d.ts +0 -71
  59. package/lib/presentation/atoms/AtomicInput.d.ts.map +0 -1
  60. package/lib/presentation/atoms/AtomicInput.js +0 -196
  61. package/lib/presentation/atoms/AtomicInput.js.map +0 -1
  62. package/lib/presentation/atoms/AtomicNumberInput.d.ts +0 -69
  63. package/lib/presentation/atoms/AtomicNumberInput.d.ts.map +0 -1
  64. package/lib/presentation/atoms/AtomicNumberInput.js +0 -125
  65. package/lib/presentation/atoms/AtomicNumberInput.js.map +0 -1
  66. package/lib/presentation/atoms/AtomicPicker.d.ts +0 -52
  67. package/lib/presentation/atoms/AtomicPicker.d.ts.map +0 -1
  68. package/lib/presentation/atoms/AtomicPicker.js +0 -299
  69. package/lib/presentation/atoms/AtomicPicker.js.map +0 -1
  70. package/lib/presentation/atoms/AtomicProgress.d.ts +0 -44
  71. package/lib/presentation/atoms/AtomicProgress.d.ts.map +0 -1
  72. package/lib/presentation/atoms/AtomicProgress.js +0 -80
  73. package/lib/presentation/atoms/AtomicProgress.js.map +0 -1
  74. package/lib/presentation/atoms/AtomicSearchBar.d.ts +0 -19
  75. package/lib/presentation/atoms/AtomicSearchBar.d.ts.map +0 -1
  76. package/lib/presentation/atoms/AtomicSearchBar.js +0 -46
  77. package/lib/presentation/atoms/AtomicSearchBar.js.map +0 -1
  78. package/lib/presentation/atoms/AtomicSort.d.ts +0 -72
  79. package/lib/presentation/atoms/AtomicSort.d.ts.map +0 -1
  80. package/lib/presentation/atoms/AtomicSort.js +0 -77
  81. package/lib/presentation/atoms/AtomicSort.js.map +0 -1
  82. package/lib/presentation/atoms/AtomicSwitch.d.ts +0 -43
  83. package/lib/presentation/atoms/AtomicSwitch.d.ts.map +0 -1
  84. package/lib/presentation/atoms/AtomicSwitch.js +0 -104
  85. package/lib/presentation/atoms/AtomicSwitch.js.map +0 -1
  86. package/lib/presentation/atoms/AtomicText.d.ts +0 -34
  87. package/lib/presentation/atoms/AtomicText.d.ts.map +0 -1
  88. package/lib/presentation/atoms/AtomicText.js +0 -59
  89. package/lib/presentation/atoms/AtomicText.js.map +0 -1
  90. package/lib/presentation/atoms/AtomicTextArea.d.ts +0 -85
  91. package/lib/presentation/atoms/AtomicTextArea.d.ts.map +0 -1
  92. package/lib/presentation/atoms/AtomicTextArea.js +0 -196
  93. package/lib/presentation/atoms/AtomicTextArea.js.map +0 -1
  94. package/lib/presentation/atoms/AtomicTouchable.d.ts +0 -77
  95. package/lib/presentation/atoms/AtomicTouchable.d.ts.map +0 -1
  96. package/lib/presentation/atoms/AtomicTouchable.js +0 -138
  97. package/lib/presentation/atoms/AtomicTouchable.js.map +0 -1
  98. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts +0 -23
  99. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts.map +0 -1
  100. package/lib/presentation/atoms/fab/styles/fabStyles.js +0 -63
  101. package/lib/presentation/atoms/fab/styles/fabStyles.js.map +0 -1
  102. package/lib/presentation/atoms/fab/types/index.d.ts +0 -71
  103. package/lib/presentation/atoms/fab/types/index.d.ts.map +0 -1
  104. package/lib/presentation/atoms/fab/types/index.js +0 -2
  105. package/lib/presentation/atoms/fab/types/index.js.map +0 -1
  106. package/lib/presentation/atoms/filter/styles/filterStyles.d.ts +0 -15
  107. package/lib/presentation/atoms/filter/styles/filterStyles.d.ts.map +0 -1
  108. package/lib/presentation/atoms/filter/styles/filterStyles.js +0 -29
  109. package/lib/presentation/atoms/filter/styles/filterStyles.js.map +0 -1
  110. package/lib/presentation/atoms/filter/types/index.d.ts +0 -76
  111. package/lib/presentation/atoms/filter/types/index.d.ts.map +0 -1
  112. package/lib/presentation/atoms/filter/types/index.js +0 -2
  113. package/lib/presentation/atoms/filter/types/index.js.map +0 -1
  114. package/lib/presentation/atoms/index.d.ts +0 -273
  115. package/lib/presentation/atoms/index.d.ts.map +0 -1
  116. package/lib/presentation/atoms/index.js +0 -146
  117. package/lib/presentation/atoms/index.js.map +0 -1
  118. package/lib/presentation/atoms/input/hooks/useInputState.d.ts +0 -7
  119. package/lib/presentation/atoms/input/hooks/useInputState.d.ts.map +0 -1
  120. package/lib/presentation/atoms/input/hooks/useInputState.js +0 -13
  121. package/lib/presentation/atoms/input/hooks/useInputState.js.map +0 -1
  122. package/lib/presentation/atoms/input/styles/inputStyles.d.ts +0 -13
  123. package/lib/presentation/atoms/input/styles/inputStyles.d.ts.map +0 -1
  124. package/lib/presentation/atoms/input/styles/inputStyles.js +0 -59
  125. package/lib/presentation/atoms/input/styles/inputStyles.js.map +0 -1
  126. package/lib/presentation/atoms/input/types/index.d.ts +0 -24
  127. package/lib/presentation/atoms/input/types/index.d.ts.map +0 -1
  128. package/lib/presentation/atoms/input/types/index.js +0 -2
  129. package/lib/presentation/atoms/input/types/index.js.map +0 -1
  130. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts +0 -85
  131. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts.map +0 -1
  132. package/lib/presentation/atoms/picker/styles/pickerStyles.js +0 -177
  133. package/lib/presentation/atoms/picker/styles/pickerStyles.js.map +0 -1
  134. package/lib/presentation/atoms/picker/types/index.d.ts +0 -38
  135. package/lib/presentation/atoms/picker/types/index.d.ts.map +0 -1
  136. package/lib/presentation/atoms/picker/types/index.js +0 -2
  137. package/lib/presentation/atoms/picker/types/index.js.map +0 -1
  138. package/lib/presentation/atoms/touchable/styles/touchableStyles.d.ts +0 -31
  139. package/lib/presentation/atoms/touchable/styles/touchableStyles.d.ts.map +0 -1
  140. package/lib/presentation/atoms/touchable/styles/touchableStyles.js +0 -54
  141. package/lib/presentation/atoms/touchable/styles/touchableStyles.js.map +0 -1
  142. package/lib/presentation/atoms/touchable/types/index.d.ts +0 -134
  143. package/lib/presentation/atoms/touchable/types/index.d.ts.map +0 -1
  144. package/lib/presentation/atoms/touchable/types/index.js +0 -2
  145. package/lib/presentation/atoms/touchable/types/index.js.map +0 -1
  146. package/lib/presentation/hooks/useResponsive.d.ts +0 -80
  147. package/lib/presentation/hooks/useResponsive.d.ts.map +0 -1
  148. package/lib/presentation/hooks/useResponsive.js +0 -82
  149. package/lib/presentation/hooks/useResponsive.js.map +0 -1
  150. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts +0 -73
  151. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts.map +0 -1
  152. package/lib/presentation/molecules/AtomicConfirmationModal.js +0 -154
  153. package/lib/presentation/molecules/AtomicConfirmationModal.js.map +0 -1
  154. package/lib/presentation/molecules/EmptyState.d.ts +0 -41
  155. package/lib/presentation/molecules/EmptyState.d.ts.map +0 -1
  156. package/lib/presentation/molecules/EmptyState.js +0 -68
  157. package/lib/presentation/molecules/EmptyState.js.map +0 -1
  158. package/lib/presentation/molecules/FormField.d.ts +0 -22
  159. package/lib/presentation/molecules/FormField.d.ts.map +0 -1
  160. package/lib/presentation/molecules/FormField.js +0 -76
  161. package/lib/presentation/molecules/FormField.js.map +0 -1
  162. package/lib/presentation/molecules/GridContainer.d.ts +0 -40
  163. package/lib/presentation/molecules/GridContainer.d.ts.map +0 -1
  164. package/lib/presentation/molecules/GridContainer.js +0 -77
  165. package/lib/presentation/molecules/GridContainer.js.map +0 -1
  166. package/lib/presentation/molecules/IconContainer.d.ts +0 -29
  167. package/lib/presentation/molecules/IconContainer.d.ts.map +0 -1
  168. package/lib/presentation/molecules/IconContainer.js +0 -60
  169. package/lib/presentation/molecules/IconContainer.js.map +0 -1
  170. package/lib/presentation/molecules/ListItem.d.ts +0 -5
  171. package/lib/presentation/molecules/ListItem.d.ts.map +0 -1
  172. package/lib/presentation/molecules/ListItem.js +0 -24
  173. package/lib/presentation/molecules/ListItem.js.map +0 -1
  174. package/lib/presentation/molecules/ScreenHeader.d.ts +0 -55
  175. package/lib/presentation/molecules/ScreenHeader.d.ts.map +0 -1
  176. package/lib/presentation/molecules/ScreenHeader.js +0 -94
  177. package/lib/presentation/molecules/ScreenHeader.js.map +0 -1
  178. package/lib/presentation/molecules/SearchBar.d.ts +0 -18
  179. package/lib/presentation/molecules/SearchBar.d.ts.map +0 -1
  180. package/lib/presentation/molecules/SearchBar.js +0 -47
  181. package/lib/presentation/molecules/SearchBar.js.map +0 -1
  182. package/lib/presentation/molecules/SectionCard.d.ts +0 -25
  183. package/lib/presentation/molecules/SectionCard.d.ts.map +0 -1
  184. package/lib/presentation/molecules/SectionCard.js +0 -47
  185. package/lib/presentation/molecules/SectionCard.js.map +0 -1
  186. package/lib/presentation/molecules/SectionContainer.d.ts +0 -33
  187. package/lib/presentation/molecules/SectionContainer.d.ts.map +0 -1
  188. package/lib/presentation/molecules/SectionContainer.js +0 -64
  189. package/lib/presentation/molecules/SectionContainer.js.map +0 -1
  190. package/lib/presentation/molecules/SectionHeader.d.ts +0 -37
  191. package/lib/presentation/molecules/SectionHeader.d.ts.map +0 -1
  192. package/lib/presentation/molecules/SectionHeader.js +0 -73
  193. package/lib/presentation/molecules/SectionHeader.js.map +0 -1
  194. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts +0 -50
  195. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts.map +0 -1
  196. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.js +0 -115
  197. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.js.map +0 -1
  198. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts +0 -86
  199. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts.map +0 -1
  200. package/lib/presentation/molecules/confirmation-modal/types/index.js +0 -7
  201. package/lib/presentation/molecules/confirmation-modal/types/index.js.map +0 -1
  202. package/lib/presentation/molecules/index.d.ts +0 -27
  203. package/lib/presentation/molecules/index.d.ts.map +0 -1
  204. package/lib/presentation/molecules/index.js +0 -17
  205. package/lib/presentation/molecules/index.js.map +0 -1
  206. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts +0 -12
  207. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts.map +0 -1
  208. package/lib/presentation/molecules/listitem/styles/listItemStyles.js +0 -15
  209. package/lib/presentation/molecules/listitem/styles/listItemStyles.js.map +0 -1
  210. package/lib/presentation/molecules/listitem/types/index.d.ts +0 -17
  211. package/lib/presentation/molecules/listitem/types/index.d.ts.map +0 -1
  212. package/lib/presentation/molecules/listitem/types/index.js +0 -2
  213. package/lib/presentation/molecules/listitem/types/index.js.map +0 -1
  214. package/lib/presentation/organisms/AppHeader.d.ts +0 -31
  215. package/lib/presentation/organisms/AppHeader.d.ts.map +0 -1
  216. package/lib/presentation/organisms/AppHeader.js +0 -78
  217. package/lib/presentation/organisms/AppHeader.js.map +0 -1
  218. package/lib/presentation/organisms/FormContainer.d.ts +0 -76
  219. package/lib/presentation/organisms/FormContainer.d.ts.map +0 -1
  220. package/lib/presentation/organisms/FormContainer.js +0 -127
  221. package/lib/presentation/organisms/FormContainer.js.map +0 -1
  222. package/lib/presentation/organisms/ScreenLayout.d.ts +0 -84
  223. package/lib/presentation/organisms/ScreenLayout.d.ts.map +0 -1
  224. package/lib/presentation/organisms/ScreenLayout.js +0 -69
  225. package/lib/presentation/organisms/ScreenLayout.js.map +0 -1
  226. package/lib/presentation/organisms/index.d.ts +0 -16
  227. package/lib/presentation/organisms/index.d.ts.map +0 -1
  228. package/lib/presentation/organisms/index.js +0 -14
  229. package/lib/presentation/organisms/index.js.map +0 -1
  230. package/lib/presentation/tokens/commonStyles.d.ts +0 -122
  231. package/lib/presentation/tokens/commonStyles.d.ts.map +0 -1
  232. package/lib/presentation/tokens/commonStyles.js +0 -220
  233. package/lib/presentation/tokens/commonStyles.js.map +0 -1
  234. package/lib/presentation/utils/platformConstants.d.ts +0 -100
  235. package/lib/presentation/utils/platformConstants.d.ts.map +0 -1
  236. package/lib/presentation/utils/platformConstants.js +0 -114
  237. package/lib/presentation/utils/platformConstants.js.map +0 -1
  238. package/lib/presentation/utils/responsive.d.ts +0 -218
  239. package/lib/presentation/utils/responsive.d.ts.map +0 -1
  240. package/lib/presentation/utils/responsive.js +0 -452
  241. package/lib/presentation/utils/responsive.js.map +0 -1
  242. package/lib/presentation/utils/variants/compound.d.ts +0 -10
  243. package/lib/presentation/utils/variants/compound.d.ts.map +0 -1
  244. package/lib/presentation/utils/variants/compound.js +0 -16
  245. package/lib/presentation/utils/variants/compound.js.map +0 -1
  246. package/lib/presentation/utils/variants/core.d.ts +0 -15
  247. package/lib/presentation/utils/variants/core.d.ts.map +0 -1
  248. package/lib/presentation/utils/variants/core.js +0 -23
  249. package/lib/presentation/utils/variants/core.js.map +0 -1
  250. package/lib/presentation/utils/variants/helpers.d.ts +0 -5
  251. package/lib/presentation/utils/variants/helpers.d.ts.map +0 -1
  252. package/lib/presentation/utils/variants/helpers.js +0 -10
  253. package/lib/presentation/utils/variants/helpers.js.map +0 -1
  254. package/lib/presentation/utils/variants.d.ts +0 -4
  255. package/lib/presentation/utils/variants.d.ts.map +0 -1
  256. package/lib/presentation/utils/variants.js +0 -4
  257. package/lib/presentation/utils/variants.js.map +0 -1
@@ -1,82 +0,0 @@
1
- /**
2
- * useResponsive Hook
3
- *
4
- * React Hook for accessing responsive utilities with real-time dimension updates
5
- * and safe area insets integration.
6
- *
7
- * Usage:
8
- * ```tsx
9
- * const { logoSize, inputHeight, fabPosition, isSmallDevice } = useResponsive();
10
- * ```
11
- */
12
- import { useWindowDimensions } from 'react-native';
13
- import { useSafeAreaInsets } from 'react-native-safe-area-context';
14
- import { getResponsiveLogoSize, getResponsiveInputHeight, getResponsiveHorizontalPadding, getResponsiveBottomPosition, getResponsiveFABPosition, getResponsiveModalMaxHeight, getResponsiveMinModalHeight, getResponsiveIconContainerSize, getResponsiveGridColumns, getResponsiveMaxWidth, getResponsiveFontSize, isSmallPhone, isTablet, isLandscape, getDeviceType, getMinTouchTargetSize, getSpacingMultiplier, getOnboardingIconMarginTop, getOnboardingIconMarginBottom, getOnboardingTitleMarginBottom, getOnboardingTextPadding, getOnboardingDescriptionMarginTop, getOnboardingIconSize, getFormBottomPadding, getInputIconSize, getFormContentWidth, getFormElementSpacing, } from '../utils/responsive';
15
- /**
16
- * Hook for responsive design utilities
17
- * Automatically updates when screen dimensions or orientation changes
18
- */
19
- export const useResponsive = () => {
20
- const { width, height } = useWindowDimensions();
21
- const insets = useSafeAreaInsets();
22
- return {
23
- // Device info
24
- width,
25
- height,
26
- isSmallDevice: isSmallPhone(),
27
- isTabletDevice: isTablet(),
28
- isLandscapeMode: isLandscape(),
29
- deviceType: getDeviceType(),
30
- // Safe area insets
31
- insets,
32
- // Responsive sizes (with default values)
33
- logoSize: getResponsiveLogoSize(),
34
- inputHeight: getResponsiveInputHeight(),
35
- iconContainerSize: getResponsiveIconContainerSize(),
36
- maxContentWidth: getResponsiveMaxWidth(),
37
- minTouchTarget: getMinTouchTargetSize(),
38
- // Responsive positioning
39
- horizontalPadding: getResponsiveHorizontalPadding(16, insets),
40
- bottomPosition: getResponsiveBottomPosition(32, insets),
41
- fabPosition: getResponsiveFABPosition(insets),
42
- // Responsive layout
43
- modalMaxHeight: getResponsiveModalMaxHeight(),
44
- modalMinHeight: getResponsiveMinModalHeight(),
45
- gridColumns: getResponsiveGridColumns(),
46
- spacingMultiplier: getSpacingMultiplier(),
47
- // Onboarding-specific spacing (pre-calculated, no component calculations)
48
- onboardingIconMarginTop: getOnboardingIconMarginTop(),
49
- onboardingIconMarginBottom: getOnboardingIconMarginBottom(),
50
- onboardingIconSize: getOnboardingIconSize(),
51
- onboardingTitleMarginBottom: getOnboardingTitleMarginBottom(),
52
- onboardingTextPadding: getOnboardingTextPadding(),
53
- onboardingDescriptionMarginTop: getOnboardingDescriptionMarginTop(),
54
- // Form-specific spacing (pre-calculated, universal)
55
- formBottomPadding: getFormBottomPadding(insets.bottom),
56
- inputIconSize: getInputIconSize(),
57
- formContentWidth: getFormContentWidth(),
58
- formElementSpacing: getFormElementSpacing(),
59
- // Utility functions (allow custom base values)
60
- getLogoSize: (baseSize) => getResponsiveLogoSize(baseSize),
61
- getInputHeight: (baseHeight) => getResponsiveInputHeight(baseHeight),
62
- getIconSize: (baseSize) => getResponsiveIconContainerSize(baseSize),
63
- getMaxWidth: (baseWidth) => getResponsiveMaxWidth(baseWidth),
64
- getFontSize: (baseFontSize) => getResponsiveFontSize(baseFontSize),
65
- getGridCols: (mobile, tablet) => getResponsiveGridColumns(mobile, tablet),
66
- };
67
- };
68
- /**
69
- * Shorthand hook for just responsive sizes
70
- */
71
- export const useResponsiveSizes = () => {
72
- const { logoSize, inputHeight, iconContainerSize, maxContentWidth } = useResponsive();
73
- return { logoSize, inputHeight, iconContainerSize, maxContentWidth };
74
- };
75
- /**
76
- * Shorthand hook for just device type checks
77
- */
78
- export const useDeviceType = () => {
79
- const { isSmallDevice, isTabletDevice, deviceType } = useResponsive();
80
- return { isSmallDevice, isTabletDevice, deviceType };
81
- };
82
- //# sourceMappingURL=useResponsive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useResponsive.js","sourceRoot":"","sources":["../../../src/presentation/hooks/useResponsive.ts"],"names":[],"mappings":"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"}
@@ -1,73 +0,0 @@
1
- /**
2
- * AtomicConfirmationModal - Universal Confirmation Dialog
3
- *
4
- * A reusable confirmation modal for destructive and important actions.
5
- * Follows Material Design 3 dialog patterns and accessibility guidelines.
6
- *
7
- * Features:
8
- * - Multiple variants (default, destructive, warning, success)
9
- * - Configurable text and icons
10
- * - Backdrop dismissal
11
- * - Full keyboard and screen reader support
12
- * - Theme-aware styling
13
- *
14
- * @example
15
- * ```tsx
16
- * // Destructive confirmation (delete)
17
- * <AtomicConfirmationModal
18
- * visible={showDeleteModal}
19
- * variant="destructive"
20
- * title="Delete Item?"
21
- * message="This action cannot be undone. All data will be permanently deleted."
22
- * confirmText="Delete"
23
- * cancelText="Cancel"
24
- * onConfirm={handleDelete}
25
- * onCancel={() => setShowDeleteModal(false)}
26
- * />
27
- *
28
- * // Generic confirmation
29
- * <AtomicConfirmationModal
30
- * visible={showConfirmModal}
31
- * variant="default"
32
- * title="Confirm Action"
33
- * message="Are you sure you want to proceed?"
34
- * onConfirm={handleConfirm}
35
- * onCancel={() => setShowConfirmModal(false)}
36
- * />
37
- * ```
38
- */
39
- import React from 'react';
40
- import { AtomicConfirmationModalProps, ConfirmationModalVariant } from './confirmation-modal/types';
41
- export type { AtomicConfirmationModalProps };
42
- export type { ConfirmationModalVariant };
43
- export declare const AtomicConfirmationModal: React.FC<AtomicConfirmationModalProps>;
44
- /**
45
- * Hook for managing confirmation modal state
46
- *
47
- * @example
48
- * ```tsx
49
- * const { showConfirmation, confirmationProps } = useConfirmationModal({
50
- * title: 'Delete Item?',
51
- * message: 'This cannot be undone',
52
- * variant: 'destructive',
53
- * onConfirm: handleDelete,
54
- * });
55
- *
56
- * // In JSX
57
- * <AtomicConfirmationModal {...confirmationProps} />
58
- * <Button onPress={showConfirmation}>Delete</Button>
59
- * ```
60
- */
61
- export declare const useConfirmationModal: (config: {
62
- title: string;
63
- message: string;
64
- variant?: ConfirmationModalVariant;
65
- confirmText: string;
66
- cancelText: string;
67
- onConfirm: () => void;
68
- }) => {
69
- showConfirmation: () => void;
70
- hideConfirmation: () => void;
71
- confirmationProps: AtomicConfirmationModalProps;
72
- };
73
- //# sourceMappingURL=AtomicConfirmationModal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AtomicConfirmationModal.d.ts","sourceRoot":"","sources":["../../../src/presentation/molecules/AtomicConfirmationModal.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAapC,YAAY,EAAE,4BAA4B,EAAE,CAAC;AAC7C,YAAY,EAAE,wBAAwB,EAAE,CAAC;AAEzC,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CA6H1E,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,wBAAwB,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;;;;CA2BA,CAAC"}
@@ -1,154 +0,0 @@
1
- /**
2
- * AtomicConfirmationModal - Universal Confirmation Dialog
3
- *
4
- * A reusable confirmation modal for destructive and important actions.
5
- * Follows Material Design 3 dialog patterns and accessibility guidelines.
6
- *
7
- * Features:
8
- * - Multiple variants (default, destructive, warning, success)
9
- * - Configurable text and icons
10
- * - Backdrop dismissal
11
- * - Full keyboard and screen reader support
12
- * - Theme-aware styling
13
- *
14
- * @example
15
- * ```tsx
16
- * // Destructive confirmation (delete)
17
- * <AtomicConfirmationModal
18
- * visible={showDeleteModal}
19
- * variant="destructive"
20
- * title="Delete Item?"
21
- * message="This action cannot be undone. All data will be permanently deleted."
22
- * confirmText="Delete"
23
- * cancelText="Cancel"
24
- * onConfirm={handleDelete}
25
- * onCancel={() => setShowDeleteModal(false)}
26
- * />
27
- *
28
- * // Generic confirmation
29
- * <AtomicConfirmationModal
30
- * visible={showConfirmModal}
31
- * variant="default"
32
- * title="Confirm Action"
33
- * message="Are you sure you want to proceed?"
34
- * onConfirm={handleConfirm}
35
- * onCancel={() => setShowConfirmModal(false)}
36
- * />
37
- * ```
38
- */
39
- import React from 'react';
40
- import { View, Modal, TouchableOpacity } from 'react-native';
41
- import { useAppDesignTokens } from '@umituz/react-native-theme';
42
- import { AtomicText } from '../atoms/AtomicText';
43
- import { AtomicButton } from '../atoms/AtomicButton';
44
- import { AtomicIcon } from '../atoms/AtomicIcon';
45
- import { getVariantConfig, getModalOverlayStyle, getBackdropStyle, getModalContainerStyle, getIconContainerStyle, getTitleContainerStyle, getMessageContainerStyle, getButtonContainerStyle, getButtonStyle, } from './confirmation-modal/styles/confirmationModalStyles';
46
- export const AtomicConfirmationModal = ({ visible, title, message, variant = 'default', confirmText, cancelText, icon, onConfirm, onCancel, showBackdrop = true, backdropDismissible = true, style, testID = 'atomic-confirmation-modal', }) => {
47
- const tokens = useAppDesignTokens();
48
- // Get variant-specific configuration (icon and color only)
49
- const variantConfig = getVariantConfig(variant, tokens);
50
- // Determine final icon
51
- const finalIcon = icon || variantConfig.icon;
52
- // Handle backdrop press
53
- const handleBackdropPress = () => {
54
- if (backdropDismissible) {
55
- onCancel();
56
- }
57
- };
58
- return (<Modal visible={visible} transparent animationType="fade" onRequestClose={onCancel} statusBarTranslucent testID={testID}>
59
- <View style={getModalOverlayStyle(tokens)}>
60
- {/* Backdrop - Tap to dismiss if enabled */}
61
- {showBackdrop && (<TouchableOpacity style={getBackdropStyle()} activeOpacity={1} onPress={handleBackdropPress} testID={`${testID}-backdrop`}/>)}
62
-
63
- {/* Modal Container */}
64
- <View style={[getModalContainerStyle(tokens), style]}>
65
- {/* Icon */}
66
- <View style={getIconContainerStyle(tokens)}>
67
- <AtomicIcon name={finalIcon} size="xl" color={variantConfig.iconColor} testID={`${testID}-icon`}/>
68
- </View>
69
-
70
- {/* Title */}
71
- <View style={getTitleContainerStyle(tokens)}>
72
- <AtomicText type="titleLarge" style={{
73
- color: tokens.colors.textPrimary,
74
- textAlign: 'center',
75
- fontWeight: tokens.typography.bold,
76
- }} testID={`${testID}-title`}>
77
- {title}
78
- </AtomicText>
79
- </View>
80
-
81
- {/* Message */}
82
- <View style={getMessageContainerStyle(tokens)}>
83
- <AtomicText type="bodyMedium" style={{
84
- color: tokens.colors.textSecondary,
85
- textAlign: 'center',
86
- lineHeight: tokens.typography.bodyMedium.lineHeight,
87
- }} testID={`${testID}-message`}>
88
- {message}
89
- </AtomicText>
90
- </View>
91
-
92
- {/* Action Buttons */}
93
- <View style={getButtonContainerStyle(tokens)}>
94
- {/* Cancel Button */}
95
- <AtomicButton variant="outline" size="md" onPress={onCancel} style={getButtonStyle()} testID={`${testID}-cancel-button`}>
96
- {cancelText}
97
- </AtomicButton>
98
-
99
- {/* Confirm Button */}
100
- <AtomicButton variant={variant === 'destructive' ? 'primary' : 'primary'} size="md" onPress={onConfirm} style={[
101
- getButtonStyle(),
102
- ...(variant === 'destructive' ? [{ backgroundColor: tokens.colors.error }] : []),
103
- ...(variant === 'warning' ? [{ backgroundColor: tokens.colors.warning }] : []),
104
- ...(variant === 'success' ? [{ backgroundColor: tokens.colors.success }] : []),
105
- ]} testID={`${testID}-confirm-button`}>
106
- {confirmText}
107
- </AtomicButton>
108
- </View>
109
- </View>
110
- </View>
111
- </Modal>);
112
- };
113
- /**
114
- * Hook for managing confirmation modal state
115
- *
116
- * @example
117
- * ```tsx
118
- * const { showConfirmation, confirmationProps } = useConfirmationModal({
119
- * title: 'Delete Item?',
120
- * message: 'This cannot be undone',
121
- * variant: 'destructive',
122
- * onConfirm: handleDelete,
123
- * });
124
- *
125
- * // In JSX
126
- * <AtomicConfirmationModal {...confirmationProps} />
127
- * <Button onPress={showConfirmation}>Delete</Button>
128
- * ```
129
- */
130
- export const useConfirmationModal = (config) => {
131
- const [visible, setVisible] = React.useState(false);
132
- const showConfirmation = () => setVisible(true);
133
- const hideConfirmation = () => setVisible(false);
134
- const handleConfirm = () => {
135
- config.onConfirm();
136
- hideConfirmation();
137
- };
138
- const confirmationProps = {
139
- visible,
140
- title: config.title,
141
- message: config.message,
142
- variant: config.variant || 'default',
143
- confirmText: config.confirmText,
144
- cancelText: config.cancelText,
145
- onConfirm: handleConfirm,
146
- onCancel: hideConfirmation,
147
- };
148
- return {
149
- showConfirmation,
150
- hideConfirmation,
151
- confirmationProps,
152
- };
153
- };
154
- //# sourceMappingURL=AtomicConfirmationModal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AtomicConfirmationModal.js","sourceRoot":"","sources":["../../../src/presentation/molecules/AtomicConfirmationModal.tsx"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * EmptyState Molecule - Universal Empty State Display
3
- *
4
- * Displays icon, title, and subtitle for empty data scenarios
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: MOLECULE
8
- * Composition: Icon + AtomicText + Layout
9
- *
10
- * Usage:
11
- * - Empty lists
12
- * - Empty grids
13
- * - No search results
14
- * - No data states
15
- */
16
- import React from 'react';
17
- import { ViewStyle, TextStyle } from 'react-native';
18
- export interface EmptyStateProps {
19
- /** Material icon name */
20
- icon: string;
21
- /** Icon size (default: xl) */
22
- iconSize?: 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
23
- /** Main heading text */
24
- title: string;
25
- /** Descriptive subtitle text */
26
- subtitle?: string;
27
- /** Custom icon color (default: textTertiary) */
28
- iconColor?: string;
29
- /** Custom title color (default: textPrimary) */
30
- titleColor?: string;
31
- /** Custom subtitle color (default: textSecondary) */
32
- subtitleColor?: string;
33
- /** Container style override */
34
- style?: ViewStyle;
35
- /** Title style override */
36
- titleStyle?: TextStyle;
37
- /** Subtitle style override */
38
- subtitleStyle?: TextStyle;
39
- }
40
- export declare const EmptyState: React.FC<EmptyStateProps>;
41
- //# sourceMappingURL=EmptyState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../src/presentation/molecules/EmptyState.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAQtE,MAAM,WAAW,eAAe;IAC9B,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;IAC7C,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2BAA2B;IAC3B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,SAAS,CAAC;CAC3B;AAMD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA8ChD,CAAC"}
@@ -1,68 +0,0 @@
1
- /**
2
- * EmptyState Molecule - Universal Empty State Display
3
- *
4
- * Displays icon, title, and subtitle for empty data scenarios
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: MOLECULE
8
- * Composition: Icon + AtomicText + Layout
9
- *
10
- * Usage:
11
- * - Empty lists
12
- * - Empty grids
13
- * - No search results
14
- * - No data states
15
- */
16
- import React from 'react';
17
- import { View, StyleSheet } from 'react-native';
18
- import { AtomicText, AtomicIcon } from '../atoms';
19
- import { useAppDesignTokens } from '@umituz/react-native-theme';
20
- // =============================================================================
21
- // COMPONENT IMPLEMENTATION
22
- // =============================================================================
23
- export const EmptyState = ({ icon, iconSize = 'xl', title, subtitle, iconColor, titleColor, subtitleColor, style, titleStyle, subtitleStyle, }) => {
24
- const tokens = useAppDesignTokens();
25
- const styles = getStyles(tokens);
26
- return (<View style={[styles.container, style]}>
27
- <AtomicIcon name={icon} size={iconSize} customColor={iconColor || tokens.colors.textSecondary}/>
28
- <AtomicText type="headlineMedium" color={titleColor || tokens.colors.textPrimary} style={StyleSheet.flatten([
29
- styles.title,
30
- titleStyle,
31
- ])}>
32
- {title}
33
- </AtomicText>
34
- {subtitle && (<AtomicText type="bodyMedium" color={subtitleColor || tokens.colors.textSecondary} style={StyleSheet.flatten([
35
- styles.subtitle,
36
- subtitleStyle,
37
- ])}>
38
- {subtitle}
39
- </AtomicText>)}
40
- </View>);
41
- };
42
- // =============================================================================
43
- // STYLES
44
- // =============================================================================
45
- const getStyles = (tokens) => StyleSheet.create({
46
- container: {
47
- flex: 1,
48
- justifyContent: 'center',
49
- alignItems: 'center',
50
- paddingVertical: tokens.spacing.xl,
51
- paddingHorizontal: tokens.spacing.lg,
52
- },
53
- title: {
54
- fontSize: tokens.typography.headingMedium.fontSize,
55
- fontWeight: tokens.typography.headingMedium.fontWeight,
56
- marginTop: tokens.spacing.md,
57
- textAlign: 'center',
58
- },
59
- subtitle: {
60
- fontSize: tokens.typography.bodySmall.fontSize,
61
- marginTop: tokens.spacing.xs,
62
- textAlign: 'center',
63
- },
64
- });
65
- // =============================================================================
66
- // EXPORTS
67
- // =============================================================================
68
- //# sourceMappingURL=EmptyState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyState.js","sourceRoot":"","sources":["../../../src/presentation/molecules/EmptyState.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAwB,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AA6BhE,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF,MAAM,CAAC,MAAM,UAAU,GAA8B,CAAC,EACpD,IAAI,EACJ,QAAQ,GAAG,IAAI,EACf,KAAK,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EACV,aAAa,EACb,KAAK,EACL,UAAU,EACV,aAAa,GACd,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,UAAU,CACT,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,IAAI,CAAC,CAAC,QAAQ,CAAC,CACf,WAAW,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAExD;MAAA,CAAC,UAAU,CACT,IAAI,CAAC,gBAAgB,CACrB,KAAK,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAC/C,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;YACxB,MAAM,CAAC,KAAK;YACZ,UAAU;SACX,CAAC,CAAC,CAEH;QAAA,CAAC,KAAK,CACR;MAAA,EAAE,UAAU,CACZ;MAAA,CAAC,QAAQ,IAAI,CACX,CAAC,UAAU,CACT,IAAI,CAAC,YAAY,CACjB,KAAK,CAAC,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CACpD,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;gBACxB,MAAM,CAAC,QAAQ;gBACf,aAAa;aACd,CAAC,CAAC,CAEH;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,UAAU,CAAC,CACd,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF,MAAM,SAAS,GAAG,CAAC,MAA6C,EAAE,EAAE,CAClE,UAAU,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;QACpB,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QAClC,iBAAiB,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACrC;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ;QAClD,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU;QACtD,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QAC5B,SAAS,EAAE,QAAQ;KACpB;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ;QAC9C,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QAC5B,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC,CAAC;AAEL,gFAAgF;AAChF,UAAU;AACV,gFAAgF"}
@@ -1,22 +0,0 @@
1
- /**
2
- * FormField Molecule - Complete Form Input with Label and Error
3
- *
4
- * Combines AtomicText (label/error) + AtomicInput (field)
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: MOLECULE
8
- * Composition: AtomicText + AtomicInput
9
- */
10
- import React from 'react';
11
- import { ViewStyle } from 'react-native';
12
- import { AtomicInputProps } from '../atoms/AtomicInput';
13
- export interface FormFieldProps extends Omit<AtomicInputProps, 'state' | 'label'> {
14
- label?: string;
15
- error?: string;
16
- helperText?: string;
17
- required?: boolean;
18
- containerStyle?: ViewStyle;
19
- style?: ViewStyle;
20
- }
21
- export declare const FormField: React.FC<FormFieldProps>;
22
- //# sourceMappingURL=FormField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/presentation/molecules/FormField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,SAAS,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAe,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAMrE,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAMD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA8D9C,CAAC"}
@@ -1,76 +0,0 @@
1
- /**
2
- * FormField Molecule - Complete Form Input with Label and Error
3
- *
4
- * Combines AtomicText (label/error) + AtomicInput (field)
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: MOLECULE
8
- * Composition: AtomicText + AtomicInput
9
- */
10
- import React from 'react';
11
- import { View } from 'react-native';
12
- import { useAppDesignTokens } from '@umituz/react-native-theme';
13
- import { AtomicText } from '../atoms/AtomicText';
14
- import { AtomicInput } from '../atoms/AtomicInput';
15
- // =============================================================================
16
- // COMPONENT IMPLEMENTATION
17
- // =============================================================================
18
- export const FormField = ({ label, error, helperText, required = false, containerStyle, style, // Accept both style and containerStyle
19
- ...inputProps }) => {
20
- const tokens = useAppDesignTokens();
21
- const inputState = error ? 'error' : 'default';
22
- const styles = getStyles(tokens);
23
- return (<View style={[styles.container, containerStyle || style]}>
24
- {/* Label */}
25
- {label && (<View style={styles.labelContainer}>
26
- <AtomicText type="labelMedium" color="primary" style={styles.label}>
27
- {label}
28
- </AtomicText>
29
- {required && (<AtomicText type="labelMedium" color="error">
30
- {' *'}
31
- </AtomicText>)}
32
- </View>)}
33
-
34
- {/* Input Field */}
35
- <AtomicInput {...inputProps} label={label || ''} state={inputState}/>
36
-
37
- {/* Error Message */}
38
- {error && (<AtomicText type="bodySmall" color="error" style={styles.errorText}>
39
- {error}
40
- </AtomicText>)}
41
-
42
- {/* Helper Text */}
43
- {!error && helperText && (<AtomicText type="bodySmall" color="secondary" style={styles.helperText}>
44
- {helperText}
45
- </AtomicText>)}
46
- </View>);
47
- };
48
- // =============================================================================
49
- // STYLES
50
- // =============================================================================
51
- const getStyles = (tokens) => ({
52
- container: {
53
- marginBottom: tokens.spacing.md,
54
- },
55
- labelContainer: {
56
- flexDirection: 'row',
57
- marginBottom: tokens.spacing.sm,
58
- },
59
- label: {
60
- fontWeight: tokens.typography.labelMedium.fontWeight,
61
- color: tokens.colors.textPrimary,
62
- },
63
- inputError: {
64
- borderColor: tokens.colors.error,
65
- },
66
- errorText: {
67
- marginTop: tokens.spacing.xs,
68
- },
69
- helperText: {
70
- marginTop: tokens.spacing.xs,
71
- },
72
- });
73
- // =============================================================================
74
- // EXPORTS
75
- // =============================================================================
76
- //# sourceMappingURL=FormField.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../src/presentation/molecules/FormField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAa,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAoB,MAAM,sBAAsB,CAAC;AAerE,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF,MAAM,CAAC,MAAM,SAAS,GAA6B,CAAC,EAClD,KAAK,EACL,KAAK,EACL,UAAU,EACV,QAAQ,GAAG,KAAK,EAChB,cAAc,EACd,KAAK,EAAE,uCAAuC;AAC9C,GAAG,UAAU,EACd,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,IAAI,KAAK,CAAC,CAAC,CACvD;MAAA,CAAC,WAAW,CACZ;MAAA,CAAC,KAAK,IAAI,CACR,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CACjC;UAAA,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACjE;YAAA,CAAC,KAAK,CACR;UAAA,EAAE,UAAU,CACZ;UAAA,CAAC,QAAQ,IAAI,CACX,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAC1C;cAAA,CAAC,IAAI,CACP;YAAA,EAAE,UAAU,CAAC,CACd,CACH;QAAA,EAAE,IAAI,CAAC,CACR,CAED;;MAAA,CAAC,iBAAiB,CAClB;MAAA,CAAC,WAAW,CACV,IAAI,UAAU,CAAC,CACf,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CACnB,KAAK,CAAC,CAAC,UAAU,CAAC,EAGpB;;MAAA,CAAC,mBAAmB,CACpB;MAAA,CAAC,KAAK,IAAI,CACR,CAAC,UAAU,CACT,IAAI,CAAC,WAAW,CAEhB,KAAK,CAAC,OAAO,CACb,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAExB;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,UAAU,CAAC,CACd,CAED;;MAAA,CAAC,iBAAiB,CAClB;MAAA,CAAC,CAAC,KAAK,IAAI,UAAU,IAAI,CACvB,CAAC,UAAU,CACT,IAAI,CAAC,WAAW,CAEhB,KAAK,CAAC,WAAW,CACjB,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAEzB;UAAA,CAAC,UAAU,CACb;QAAA,EAAE,UAAU,CAAC,CACd,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF,MAAM,SAAS,GAAG,CAAC,MAA6C,EAAE,EAAE,CAAC,CAAC;IACpE,SAAS,EAAE;QACT,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACnB;IACd,cAAc,EAAE;QACd,aAAa,EAAE,KAAK;QACpB,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACnB;IACd,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU;QACpD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;KACpB;IACd,UAAU,EAAE;QACV,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;KACpB;IACd,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KAChB;IACd,UAAU,EAAE;QACV,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KAChB;CACf,CAAC,CAAC;AAEH,gFAAgF;AAChF,UAAU;AACV,gFAAgF"}
@@ -1,40 +0,0 @@
1
- /**
2
- * GridContainer Molecule - Responsive Grid Layout
3
- *
4
- * Provides flexible grid layout with configurable columns and gap
5
- * Theme: {{THEME_NAME}} ({{CATEGORY}} category)
6
- *
7
- * Atomic Design Level: MOLECULE
8
- * Composition: View + Responsive Layout
9
- *
10
- * Usage:
11
- * - Stats grids (2 columns)
12
- * - Action grids (2 columns)
13
- * - Product grids (2-3 columns)
14
- * - Gallery grids (3-4 columns)
15
- */
16
- import React from 'react';
17
- import { ViewStyle } from 'react-native';
18
- export interface GridContainerProps {
19
- /** Number of columns (default: 2) */
20
- columns?: 2 | 3 | 4;
21
- /** Gap between items in pixels (default: 8) */
22
- gap?: number;
23
- /** Container style override */
24
- style?: ViewStyle;
25
- /** Grid items to render */
26
- children: React.ReactNode;
27
- }
28
- export interface GridItemProps {
29
- /** Item content */
30
- children: React.ReactNode;
31
- /** Item style override */
32
- style?: ViewStyle;
33
- }
34
- declare const GridContainerComponent: React.FC<GridContainerProps>;
35
- export declare const GridItem: React.FC<GridItemProps>;
36
- export declare const GridContainer: typeof GridContainerComponent & {
37
- Item: typeof GridItem;
38
- };
39
- export {};
40
- //# sourceMappingURL=GridContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GridContainer.d.ts","sourceRoot":"","sources":["../../../src/presentation/molecules/GridContainer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoB,SAAS,EAAkB,MAAM,cAAc,CAAC;AAM3E,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2BAA2B;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,mBAAmB;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,0BAA0B;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAMD,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAsBxD,CAAC;AAMF,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAE5C,CAAC;AAGF,eAAO,MAAM,aAAa,EAA6B,OAAO,sBAAsB,GAAG;IACrF,IAAI,EAAE,OAAO,QAAQ,CAAC;CACvB,CAAC"}