@umituz/react-native-design-system 2.0.4 → 2.0.6

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@umituz/react-native-design-system",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
4
4
  "description": "Universal design system for React Native apps - Consolidated package with atoms, molecules, organisms, theme, typography, responsive and safe area utilities",
5
5
  "main": "./src/index.ts",
6
6
  "types": "./src/index.ts",
@@ -78,14 +78,14 @@
78
78
  "@eslint/js": "^9.39.2",
79
79
  "@expo/vector-icons": "^15.0.0",
80
80
  "@gorhom/bottom-sheet": "^5.0.0",
81
- "@react-native-async-storage/async-storage": "2.2.0",
82
- "@react-native-community/datetimepicker": "^8.4.4",
81
+ "@react-native-async-storage/async-storage": "^2.2.0",
82
+ "@react-native-community/datetimepicker": "^8.5.1",
83
83
  "@react-navigation/native": "^6.0.0",
84
84
  "@types/jest": "^30.0.0",
85
85
  "@types/react": "~19.1.0",
86
86
  "@typescript-eslint/eslint-plugin": "^8.50.0",
87
87
  "@typescript-eslint/parser": "^8.50.0",
88
- "@umituz/react-native-icons": "latest",
88
+ "@umituz/react-native-icons": "^1.1.2",
89
89
  "eslint": "^9.39.2",
90
90
  "eslint-plugin-react": "^7.37.5",
91
91
  "eslint-plugin-react-hooks": "^7.0.1",
@@ -16,7 +16,7 @@
16
16
  */
17
17
 
18
18
  import React from 'react';
19
- import { View, StyleSheet, ViewStyle, TouchableOpacity } from 'react-native';
19
+ import { View, ViewStyle, TouchableOpacity } from 'react-native';
20
20
  import { AtomicText } from './AtomicText';
21
21
  import { AtomicIcon } from './AtomicIcon';
22
22
  import { useAppDesignTokens } from '../theme';
@@ -40,7 +40,6 @@
40
40
  import React, { useState, useMemo } from 'react';
41
41
  import {
42
42
  View,
43
- Text,
44
43
  StyleSheet,
45
44
  Platform,
46
45
  type StyleProp,
@@ -1,4 +1,4 @@
1
- import React, { useMemo } from 'react';
1
+ import React from 'react';
2
2
  import { View, TextInput, Pressable, StyleSheet, StyleProp, ViewStyle, TextStyle } from 'react-native';
3
3
  import { useAppDesignTokens } from '../theme';
4
4
  import { AtomicIcon } from './AtomicIcon';
@@ -107,7 +107,7 @@ export const AtomicInput: React.FC<AtomicInputProps> = ({
107
107
  isFocused,
108
108
  isPasswordVisible,
109
109
  characterCount,
110
- isAtMaxLength,
110
+ isAtMaxLength: _isAtMaxLength,
111
111
  setIsFocused,
112
112
  handleTextChange,
113
113
  togglePasswordVisibility,
@@ -47,7 +47,7 @@ import {
47
47
  StyleSheet,
48
48
  } from 'react-native';
49
49
  import { useAppDesignTokens } from '../theme';
50
- import { AtomicPickerProps, PickerOption } from './picker/types';
50
+ import { AtomicPickerProps } from './picker/types';
51
51
  import { AtomicIcon } from './AtomicIcon';
52
52
  import { AtomicText } from './AtomicText';
53
53
  import { PickerModal } from './picker/components/PickerModal';
@@ -80,7 +80,7 @@ export const AtomicPicker: React.FC<AtomicPickerProps> = ({
80
80
  searchable = false,
81
81
  clearable = false,
82
82
  autoClose = true,
83
- color = 'primary',
83
+ color: _color = 'primary',
84
84
  size = 'md',
85
85
  modalTitle,
86
86
  emptyMessage = 'No options available',
@@ -143,10 +143,9 @@ export const AtomicPicker: React.FC<AtomicPickerProps> = ({
143
143
 
144
144
  if (multiple) {
145
145
  return selectedOptions.length === 1
146
- ? selectedOptions[0].label
146
+ ? selectedOptions[0]?.label || placeholder
147
147
  : `${selectedOptions.length} selected`;
148
148
  }
149
-
150
149
  return selectedOptions[0]?.label || placeholder;
151
150
  }, [selectedOptions, placeholder, multiple]);
152
151
 
@@ -201,7 +200,7 @@ export const AtomicPicker: React.FC<AtomicPickerProps> = ({
201
200
  /**
202
201
  * Check if option is selected
203
202
  */
204
- const isSelected = (optionValue: string): boolean => {
203
+ const _isSelected = (optionValue: string): boolean => {
205
204
  return selectedValues.includes(optionValue);
206
205
  };
207
206
 
@@ -16,7 +16,6 @@ import {
16
16
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
17
17
  import DateTimePicker, { DateTimePickerEvent } from '@react-native-community/datetimepicker';
18
18
  import { useAppDesignTokens } from '../../../theme';
19
- import { AtomicIcon } from '../../AtomicIcon';
20
19
  import { AtomicText } from '../../AtomicText';
21
20
 
22
21
  interface DatePickerModalProps {
@@ -28,6 +28,8 @@ export const useInputState = ({
28
28
  maxLength,
29
29
  showCharacterCount = false,
30
30
  }: UseInputStateProps = {}): UseInputStateReturn => {
31
+ void showPasswordToggle;
32
+ void showCharacterCount;
31
33
  const [localValue, setLocalValue] = useState(value);
32
34
  const [isFocused, setIsFocused] = useState(false);
33
35
  const [isPasswordVisible, setIsPasswordVisible] = useState(!secureTextEntry);
@@ -5,7 +5,7 @@
5
5
  * Extracted from AtomicInput for better separation of concerns.
6
6
  */
7
7
 
8
- import { ViewStyle, TextStyle } from 'react-native';
8
+ import { ViewStyle } from 'react-native';
9
9
  import { useAppDesignTokens } from '../../../theme';
10
10
  import type { AtomicInputVariant, AtomicInputSize } from '../../AtomicInput';
11
11
 
@@ -26,7 +26,7 @@ interface PickerChipsProps {
26
26
  export const PickerChips: React.FC<PickerChipsProps> = React.memo(({
27
27
  selectedOptions,
28
28
  onRemoveChip,
29
- testID,
29
+ testID: _testID,
30
30
  }) => {
31
31
  const tokens = useAppDesignTokens();
32
32
 
@@ -17,7 +17,6 @@ import {
17
17
  Modal,
18
18
  FlatList,
19
19
  TextInput,
20
- StyleSheet,
21
20
  TouchableOpacity,
22
21
  } from 'react-native';
23
22
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
@@ -60,7 +59,7 @@ interface PickerModalProps {
60
59
  export const PickerModal: React.FC<PickerModalProps> = React.memo(({
61
60
  visible,
62
61
  onClose,
63
- options,
62
+ options: _options,
64
63
  selectedValues,
65
64
  onSelect,
66
65
  title,
@@ -68,7 +67,7 @@ export const PickerModal: React.FC<PickerModalProps> = React.memo(({
68
67
  searchQuery,
69
68
  onSearchChange,
70
69
  filteredOptions,
71
- multiple = false,
70
+ multiple: _multiple = false,
72
71
  emptyMessage = 'No options available',
73
72
  searchPlaceholder = 'Search...',
74
73
  closeAccessibilityLabel = 'Close picker',
@@ -110,7 +110,7 @@ export const getPickerErrorStyles = (tokens: DesignTokens): TextStyle => ({
110
110
  });
111
111
 
112
112
  // Modal styles
113
- export const getModalOverlayStyles = (tokens: DesignTokens): ViewStyle => ({
113
+ export const getModalOverlayStyles = (_tokens: DesignTokens): ViewStyle => ({
114
114
  flex: 1,
115
115
  backgroundColor: 'rgba(0, 0, 0, 0.5)',
116
116
  justifyContent: 'flex-end',