@umituz/react-native-design-system 1.5.14 → 1.5.16

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.
package/package.json CHANGED
@@ -1,9 +1,15 @@
1
1
  {
2
2
  "name": "@umituz/react-native-design-system",
3
- "version": "1.5.14",
3
+ "version": "1.5.16",
4
4
  "description": "Universal design system for React Native apps - Domain-Driven Design architecture with Material Design 3 components",
5
5
  "main": "./src/index.ts",
6
6
  "types": "./src/index.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./src/index.ts",
10
+ "default": "./src/index.ts"
11
+ }
12
+ },
7
13
  "scripts": {
8
14
  "typecheck": "tsc --noEmit",
9
15
  "lint": "tsc --noEmit",
@@ -27,16 +33,17 @@
27
33
  "url": "https://github.com/umituz/react-native-design-system"
28
34
  },
29
35
  "peerDependencies": {
36
+ "@expo/vector-icons": ">=14.0.0",
37
+ "@react-native-community/datetimepicker": "^8.5.0",
38
+ "@react-navigation/native": "^6.0.0",
39
+ "@umituz/react-native-icon": "*",
40
+ "expo-linear-gradient": "^15.0.7",
41
+ "lucide-react-native": ">=0.468.0",
30
42
  "react": ">=18.2.0 || ^19.0.0",
31
43
  "react-native": ">=0.74.0",
32
44
  "react-native-reanimated": "~3.10.1",
33
45
  "react-native-svg": ">=13.0.0",
34
- "@react-native-community/datetimepicker": "8.0.1",
35
- "@expo/vector-icons": ">=14.0.0",
36
- "lucide-react-native": ">=0.468.0",
37
- "zustand": "^5.0.2",
38
- "expo-linear-gradient": "~13.0.2",
39
- "@react-navigation/native": "^6.0.0"
46
+ "zustand": "^5.0.2"
40
47
  },
41
48
  "peerDependenciesMeta": {
42
49
  "expo-linear-gradient": {
@@ -50,20 +57,21 @@
50
57
  }
51
58
  },
52
59
  "devDependencies": {
53
- "typescript": "^5.3.3",
60
+ "@expo/vector-icons": ">=14.0.0",
61
+ "@react-native-community/datetimepicker": "^8.5.0",
62
+ "@react-navigation/native": "^6.0.0",
54
63
  "@types/react": "^18.2.45",
55
64
  "@types/react-native": "^0.73.0",
65
+ "@umituz/react-native-icon": "^1.0.1",
66
+ "expo-linear-gradient": "^15.0.7",
67
+ "lucide-react-native": ">=0.468.0",
56
68
  "react": ">=18.2.0 || ^19.0.0",
57
69
  "react-native": ">=0.74.0",
58
70
  "react-native-reanimated": "~3.10.1",
71
+ "react-native-safe-area-context": "^5.6.2",
59
72
  "react-native-svg": "^15.0.0",
60
- "@expo/vector-icons": ">=14.0.0",
61
- "lucide-react-native": ">=0.468.0",
62
- "zustand": "^5.0.2",
63
- "react-native-safe-area-context": "^4.8.0",
64
- "@react-native-community/datetimepicker": "8.0.1",
65
- "expo-linear-gradient": "~13.0.2",
66
- "@react-navigation/native": "^6.0.0"
73
+ "typescript": "^5.3.3",
74
+ "zustand": "^5.0.2"
67
75
  },
68
76
  "publishConfig": {
69
77
  "access": "public"
@@ -72,5 +80,9 @@
72
80
  "src",
73
81
  "README.md",
74
82
  "LICENSE"
75
- ]
83
+ ],
84
+ "dependencies": {
85
+ "@react-native-async-storage/async-storage": "^2.2.0",
86
+ "@umituz/react-native-theme": "^1.2.4"
87
+ }
76
88
  }
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react';
2
- import { View, TextInput, Pressable, StyleSheet, StyleProp, ViewStyle, TextStyle } from 'react-native';
2
+ import { View, TextInput, Pressable, StyleSheet, StyleProp, ViewStyle, TextStyle, Platform } from 'react-native';
3
3
  import { useAppDesignTokens } from '@umituz/react-native-theme';
4
4
  import { AtomicIcon } from './AtomicIcon';
5
5
  import { AtomicText } from './AtomicText';
@@ -192,9 +192,11 @@ export const AtomicInput: React.FC<AtomicInputProps> = ({
192
192
  styles.container,
193
193
  getVariantStyle(),
194
194
  {
195
- paddingVertical: config.paddingVertical,
195
+ paddingTop: config.paddingVertical,
196
+ paddingBottom: config.paddingVertical,
196
197
  paddingHorizontal: config.paddingHorizontal,
197
198
  minHeight: config.minHeight,
199
+ justifyContent: 'center',
198
200
  opacity: isDisabled ? 0.5 : 1,
199
201
  },
200
202
  style,
@@ -203,8 +205,10 @@ export const AtomicInput: React.FC<AtomicInputProps> = ({
203
205
  const textInputStyle: StyleProp<TextStyle> = [
204
206
  styles.input,
205
207
  {
206
- fontSize: config.fontSize,
208
+ fontSize: config.fontSize || tokens.typography.bodyMedium.fontSize || 16,
209
+ lineHeight: (config.fontSize || tokens.typography.bodyMedium.fontSize || 16) * 1.5, // Ensure text is fully visible
207
210
  color: getTextColor(),
211
+ paddingVertical: 0, // Remove vertical padding to prevent clipping
208
212
  },
209
213
  leadingIcon ? { paddingLeft: config.iconSize + 8 } : undefined,
210
214
  (trailingIcon || showPasswordToggle) ? { paddingRight: config.iconSize + 8 } : undefined,
@@ -246,6 +250,8 @@ export const AtomicInput: React.FC<AtomicInputProps> = ({
246
250
  autoCorrect={autoCorrect}
247
251
  editable={!isDisabled}
248
252
  style={textInputStyle}
253
+ textAlignVertical="center"
254
+ {...(Platform.OS === 'android' && { includeFontPadding: false })}
249
255
  onBlur={() => {
250
256
  setIsFocused(false);
251
257
  onBlur?.();
@@ -320,6 +326,8 @@ const styles = StyleSheet.create({
320
326
  },
321
327
  input: {
322
328
  flex: 1,
329
+ margin: 0,
330
+ padding: 0,
323
331
  },
324
332
  label: {
325
333
  marginBottom: 4,
@@ -70,7 +70,7 @@ export const IconContainer: React.FC<IconContainerProps> = ({
70
70
  if (gradient) {
71
71
  return (
72
72
  <LinearGradient
73
- colors={gradient}
73
+ colors={gradient as unknown as readonly [string, string, ...string[]]}
74
74
  style={containerStyle}
75
75
  testID={testID}
76
76
  >