@chem-po/react-native 0.0.15 → 0.0.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/lib/commonjs/components/form/Field.js +4 -2
- package/lib/commonjs/components/form/Field.js.map +1 -1
- package/lib/commonjs/components/form/Form.js +20 -7
- package/lib/commonjs/components/form/Form.js.map +1 -1
- package/lib/commonjs/components/form/input/Editable.js +24 -7
- package/lib/commonjs/components/form/input/Editable.js.map +1 -1
- package/lib/commonjs/components/form/input/common/InputClearButton.js +10 -5
- package/lib/commonjs/components/form/input/common/InputClearButton.js.map +1 -1
- package/lib/commonjs/components/form/input/date/index.js +23 -15
- package/lib/commonjs/components/form/input/date/index.js.map +1 -1
- package/lib/commonjs/components/form/input/datetime/index.js +22 -18
- package/lib/commonjs/components/form/input/datetime/index.js.map +1 -1
- package/lib/commonjs/components/form/input/hooks/index.js +4 -4
- package/lib/commonjs/components/form/input/hooks/index.js.map +1 -1
- package/lib/commonjs/components/form/input/hooks/useInputStyles.js +111 -0
- package/lib/commonjs/components/form/input/hooks/useInputStyles.js.map +1 -0
- package/lib/commonjs/components/form/input/input.js +49 -11
- package/lib/commonjs/components/form/input/input.js.map +1 -1
- package/lib/commonjs/components/form/input/multipleSelect/index.js +162 -44
- package/lib/commonjs/components/form/input/multipleSelect/index.js.map +1 -1
- package/lib/commonjs/components/form/input/number/index.js +10 -5
- package/lib/commonjs/components/form/input/number/index.js.map +1 -1
- package/lib/commonjs/components/form/input/select/index.js +84 -173
- package/lib/commonjs/components/form/input/select/index.js.map +1 -1
- package/lib/commonjs/components/form/input/text/index.js +7 -5
- package/lib/commonjs/components/form/input/text/index.js.map +1 -1
- package/lib/commonjs/components/form/input/text/textarea.js +10 -5
- package/lib/commonjs/components/form/input/text/textarea.js.map +1 -1
- package/lib/commonjs/components/form/input/time/index.js +22 -13
- package/lib/commonjs/components/form/input/time/index.js.map +1 -1
- package/lib/commonjs/components/form/view/file.js +18 -4
- package/lib/commonjs/components/form/view/file.js.map +1 -1
- package/lib/commonjs/components/form/view/index.js +24 -23
- package/lib/commonjs/components/form/view/index.js.map +1 -1
- package/lib/commonjs/components/form/view/multipleSelect.js +38 -10
- package/lib/commonjs/components/form/view/multipleSelect.js.map +1 -1
- package/lib/commonjs/components/form/view/select.js +24 -9
- package/lib/commonjs/components/form/view/select.js.map +1 -1
- package/lib/commonjs/components/form/view/styles.js +21 -0
- package/lib/commonjs/components/form/view/styles.js.map +1 -0
- package/lib/module/components/form/Field.js +4 -2
- package/lib/module/components/form/Field.js.map +1 -1
- package/lib/module/components/form/Form.js +20 -7
- package/lib/module/components/form/Form.js.map +1 -1
- package/lib/module/components/form/input/Editable.js +24 -7
- package/lib/module/components/form/input/Editable.js.map +1 -1
- package/lib/module/components/form/input/common/InputClearButton.js +11 -6
- package/lib/module/components/form/input/common/InputClearButton.js.map +1 -1
- package/lib/module/components/form/input/date/index.js +23 -15
- package/lib/module/components/form/input/date/index.js.map +1 -1
- package/lib/module/components/form/input/datetime/index.js +22 -18
- package/lib/module/components/form/input/datetime/index.js.map +1 -1
- package/lib/module/components/form/input/hooks/index.js +1 -1
- package/lib/module/components/form/input/hooks/index.js.map +1 -1
- package/lib/module/components/form/input/hooks/useInputStyles.js +104 -0
- package/lib/module/components/form/input/hooks/useInputStyles.js.map +1 -0
- package/lib/module/components/form/input/input.js +51 -13
- package/lib/module/components/form/input/input.js.map +1 -1
- package/lib/module/components/form/input/multipleSelect/index.js +163 -46
- package/lib/module/components/form/input/multipleSelect/index.js.map +1 -1
- package/lib/module/components/form/input/number/index.js +10 -5
- package/lib/module/components/form/input/number/index.js.map +1 -1
- package/lib/module/components/form/input/select/index.js +86 -175
- package/lib/module/components/form/input/select/index.js.map +1 -1
- package/lib/module/components/form/input/text/index.js +7 -5
- package/lib/module/components/form/input/text/index.js.map +1 -1
- package/lib/module/components/form/input/text/textarea.js +11 -6
- package/lib/module/components/form/input/text/textarea.js.map +1 -1
- package/lib/module/components/form/input/time/index.js +22 -13
- package/lib/module/components/form/input/time/index.js.map +1 -1
- package/lib/module/components/form/view/file.js +18 -4
- package/lib/module/components/form/view/file.js.map +1 -1
- package/lib/module/components/form/view/index.js +25 -24
- package/lib/module/components/form/view/index.js.map +1 -1
- package/lib/module/components/form/view/multipleSelect.js +38 -10
- package/lib/module/components/form/view/multipleSelect.js.map +1 -1
- package/lib/module/components/form/view/select.js +23 -9
- package/lib/module/components/form/view/select.js.map +1 -1
- package/lib/module/components/form/view/styles.js +15 -0
- package/lib/module/components/form/view/styles.js.map +1 -0
- package/lib/typescript/components/form/Field.d.ts +2 -1
- package/lib/typescript/components/form/Field.d.ts.map +1 -1
- package/lib/typescript/components/form/Form.d.ts +7 -4
- package/lib/typescript/components/form/Form.d.ts.map +1 -1
- package/lib/typescript/components/form/input/Editable.d.ts +1 -1
- package/lib/typescript/components/form/input/Editable.d.ts.map +1 -1
- package/lib/typescript/components/form/input/common/InputClearButton.d.ts +4 -2
- package/lib/typescript/components/form/input/common/InputClearButton.d.ts.map +1 -1
- package/lib/typescript/components/form/input/date/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/datetime/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/hooks/index.d.ts +1 -1
- package/lib/typescript/components/form/input/hooks/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/hooks/useInputStyles.d.ts +61 -0
- package/lib/typescript/components/form/input/hooks/useInputStyles.d.ts.map +1 -0
- package/lib/typescript/components/form/input/input.d.ts.map +1 -1
- package/lib/typescript/components/form/input/multipleSelect/index.d.ts +6 -1
- package/lib/typescript/components/form/input/multipleSelect/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/number/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/select/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/text/index.d.ts.map +1 -1
- package/lib/typescript/components/form/input/text/textarea.d.ts.map +1 -1
- package/lib/typescript/components/form/input/time/index.d.ts.map +1 -1
- package/lib/typescript/components/form/view/file.d.ts +3 -1
- package/lib/typescript/components/form/view/file.d.ts.map +1 -1
- package/lib/typescript/components/form/view/index.d.ts +3 -1
- package/lib/typescript/components/form/view/index.d.ts.map +1 -1
- package/lib/typescript/components/form/view/multipleSelect.d.ts +5 -3
- package/lib/typescript/components/form/view/multipleSelect.d.ts.map +1 -1
- package/lib/typescript/components/form/view/select.d.ts +4 -1
- package/lib/typescript/components/form/view/select.d.ts.map +1 -1
- package/lib/typescript/components/form/view/styles.d.ts +14 -0
- package/lib/typescript/components/form/view/styles.d.ts.map +1 -0
- package/package.json +5 -4
- package/src/components/form/Field.tsx +3 -2
- package/src/components/form/Form.tsx +41 -11
- package/src/components/form/input/Editable.tsx +23 -6
- package/src/components/form/input/common/InputClearButton.tsx +12 -4
- package/src/components/form/input/date/index.tsx +23 -12
- package/src/components/form/input/datetime/index.tsx +27 -14
- package/src/components/form/input/hooks/index.ts +1 -1
- package/src/components/form/input/hooks/useInputStyles.ts +124 -0
- package/src/components/form/input/input.tsx +57 -25
- package/src/components/form/input/multipleSelect/index.tsx +189 -60
- package/src/components/form/input/number/index.tsx +5 -4
- package/src/components/form/input/select/index.tsx +88 -166
- package/src/components/form/input/text/index.tsx +4 -9
- package/src/components/form/input/text/textarea.tsx +18 -16
- package/src/components/form/input/time/index.tsx +31 -11
- package/src/components/form/view/file.tsx +19 -4
- package/src/components/form/view/index.tsx +36 -22
- package/src/components/form/view/multipleSelect.tsx +42 -15
- package/src/components/form/view/select.tsx +28 -11
- package/src/components/form/view/styles.ts +15 -0
- package/lib/commonjs/components/form/input/hooks/useInputStyle.js +0 -50
- package/lib/commonjs/components/form/input/hooks/useInputStyle.js.map +0 -1
- package/lib/commonjs/components/form/input/styles.js +0 -17
- package/lib/commonjs/components/form/input/styles.js.map +0 -1
- package/lib/module/components/form/input/hooks/useInputStyle.js +0 -43
- package/lib/module/components/form/input/hooks/useInputStyle.js.map +0 -1
- package/lib/module/components/form/input/styles.js +0 -11
- package/lib/module/components/form/input/styles.js.map +0 -1
- package/lib/typescript/components/form/input/hooks/useInputStyle.d.ts +0 -9
- package/lib/typescript/components/form/input/hooks/useInputStyle.d.ts.map +0 -1
- package/lib/typescript/components/form/input/styles.d.ts +0 -10
- package/lib/typescript/components/form/input/styles.d.ts.map +0 -1
- package/src/components/form/input/hooks/useInputStyle.ts +0 -40
- package/src/components/form/input/styles.ts +0 -11
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
import { useBackgroundColor, useBorderColor, useIconColor, usePlaceholderColor } from '@chem-po/react';
|
|
2
2
|
import { Ionicons } from '@expo/vector-icons';
|
|
3
|
-
import React, { forwardRef, useImperativeHandle,
|
|
4
|
-
import {
|
|
3
|
+
import React, { forwardRef, useImperativeHandle, useRef } from 'react';
|
|
4
|
+
import { StyleSheet, View } from 'react-native';
|
|
5
|
+
import { Dropdown } from 'react-native-element-dropdown';
|
|
5
6
|
import { Txt } from '../../../text/Txt';
|
|
6
7
|
import { InputClearButton } from '../common/InputClearButton';
|
|
7
|
-
import {
|
|
8
|
+
import { useInputStyles } from '../hooks/useInputStyles';
|
|
8
9
|
const BaseSelectComponent = ({
|
|
9
10
|
field,
|
|
10
11
|
input,
|
|
11
|
-
meta
|
|
12
|
+
meta,
|
|
13
|
+
formSize,
|
|
14
|
+
inEditable
|
|
12
15
|
}, ref) => {
|
|
13
16
|
const {
|
|
14
17
|
placeholder,
|
|
15
18
|
options,
|
|
16
19
|
renderOption: RenderOption,
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
optional,
|
|
21
|
+
searchable,
|
|
22
|
+
searchPlaceholder
|
|
19
23
|
} = field;
|
|
20
24
|
const {
|
|
21
25
|
onChange,
|
|
@@ -26,68 +30,32 @@ const BaseSelectComponent = ({
|
|
|
26
30
|
const {
|
|
27
31
|
active
|
|
28
32
|
} = meta;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return options.find(o => {
|
|
39
|
-
if (getOptionKey) {
|
|
40
|
-
const key1 = getOptionKey(o);
|
|
41
|
-
const key2 = getOptionKey(value);
|
|
42
|
-
return key1 === key2;
|
|
43
|
-
}
|
|
44
|
-
return o === value;
|
|
45
|
-
});
|
|
46
|
-
}, [value, options, getOptionKey]);
|
|
33
|
+
const inputRef = useRef(null);
|
|
34
|
+
const {
|
|
35
|
+
container: inputStyles,
|
|
36
|
+
iconSize,
|
|
37
|
+
text,
|
|
38
|
+
size,
|
|
39
|
+
clearButtonSize,
|
|
40
|
+
buttonContainer
|
|
41
|
+
} = useInputStyles(inEditable, field.size, formSize);
|
|
47
42
|
useImperativeHandle(ref, () => ({
|
|
48
43
|
focus: () => {
|
|
49
|
-
|
|
50
|
-
|
|
44
|
+
var _inputRef$current;
|
|
45
|
+
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.open();
|
|
51
46
|
},
|
|
52
47
|
blur: () => {
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
var _inputRef$current2;
|
|
49
|
+
(_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.close();
|
|
55
50
|
}
|
|
56
51
|
}));
|
|
57
|
-
const handleButtonLayout = () => {
|
|
58
|
-
var _buttonRef$current;
|
|
59
|
-
(_buttonRef$current = buttonRef.current) === null || _buttonRef$current === void 0 || _buttonRef$current.measure((_x, _y, width, height, pageX, pageY) => {
|
|
60
|
-
setButtonLayout({
|
|
61
|
-
x: pageX,
|
|
62
|
-
y: pageY,
|
|
63
|
-
width,
|
|
64
|
-
height
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
52
|
const RenderOptionText = props => {
|
|
69
53
|
if (typeof RenderOption === 'function') {
|
|
70
|
-
return RenderOption(
|
|
71
|
-
...props,
|
|
72
|
-
value: props.value ?? ''
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
if (typeof props.value === 'object') {
|
|
76
|
-
return /*#__PURE__*/React.createElement(Txt, null, JSON.stringify(props.value));
|
|
77
|
-
}
|
|
78
|
-
return /*#__PURE__*/React.createElement(Txt, null, String(props.value));
|
|
79
|
-
};
|
|
80
|
-
const getKey = option => {
|
|
81
|
-
if (getOptionKey) {
|
|
82
|
-
const key = getOptionKey(option);
|
|
83
|
-
return typeof key === 'object' ? JSON.stringify(key) : String(key);
|
|
54
|
+
return RenderOption(props);
|
|
84
55
|
}
|
|
85
|
-
return
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
onChange(option);
|
|
89
|
-
onBlur();
|
|
90
|
-
// setIsOpen(false)
|
|
56
|
+
return /*#__PURE__*/React.createElement(Txt, {
|
|
57
|
+
style: styles.defaultOption
|
|
58
|
+
}, props.option.label);
|
|
91
59
|
};
|
|
92
60
|
const iconColor = useIconColor();
|
|
93
61
|
const placeholderColor = usePlaceholderColor();
|
|
@@ -96,132 +64,75 @@ const BaseSelectComponent = ({
|
|
|
96
64
|
const borderColor = useBorderColor();
|
|
97
65
|
return /*#__PURE__*/React.createElement(View, {
|
|
98
66
|
style: styles.wrapper
|
|
99
|
-
}, /*#__PURE__*/React.createElement(
|
|
100
|
-
ref:
|
|
101
|
-
|
|
102
|
-
style: styles.container
|
|
103
|
-
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
104
|
-
style: [styles.button, inputStyles.input],
|
|
105
|
-
onPress: () => {
|
|
106
|
-
if (active) {
|
|
107
|
-
onBlur();
|
|
108
|
-
} else {
|
|
109
|
-
onFocus();
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
113
|
-
style: styles.buttonTextContainer
|
|
114
|
-
}, selected ? /*#__PURE__*/React.createElement(RenderOptionText, {
|
|
115
|
-
value: selected,
|
|
116
|
-
colorMode: "light",
|
|
117
|
-
isSelected: true
|
|
118
|
-
}) : /*#__PURE__*/React.createElement(Text, {
|
|
119
|
-
style: [styles.placeholder, {
|
|
120
|
-
color: placeholderColor
|
|
121
|
-
}]
|
|
122
|
-
}, placeholder)), /*#__PURE__*/React.createElement(Ionicons, {
|
|
123
|
-
name: active ? 'chevron-up' : 'chevron-down',
|
|
124
|
-
size: 20,
|
|
125
|
-
color: iconColor,
|
|
126
|
-
style: styles.icon
|
|
127
|
-
}), optional && value ? /*#__PURE__*/React.createElement(InputClearButton, {
|
|
128
|
-
onPress: () => onChange(null),
|
|
129
|
-
isActive: !!value
|
|
130
|
-
}) : null)), /*#__PURE__*/React.createElement(Modal, {
|
|
131
|
-
visible: active,
|
|
132
|
-
transparent: true,
|
|
133
|
-
animationType: "fade",
|
|
134
|
-
onRequestClose: () => onBlur()
|
|
135
|
-
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
136
|
-
style: styles.modalOverlay,
|
|
137
|
-
activeOpacity: 1,
|
|
138
|
-
onPress: () => onBlur()
|
|
139
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
140
|
-
style: [styles.dropdownContainer, {
|
|
141
|
-
position: 'absolute',
|
|
142
|
-
top: buttonLayout.y + buttonLayout.height + 4,
|
|
143
|
-
left: buttonLayout.x,
|
|
144
|
-
width: buttonLayout.width,
|
|
145
|
-
backgroundColor: menuBg,
|
|
67
|
+
}, /*#__PURE__*/React.createElement(Dropdown, {
|
|
68
|
+
ref: inputRef,
|
|
69
|
+
style: [inputStyles, {
|
|
146
70
|
borderColor
|
|
147
|
-
}]
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
71
|
+
}],
|
|
72
|
+
placeholderStyle: [text, {
|
|
73
|
+
color: placeholderColor
|
|
74
|
+
}],
|
|
75
|
+
selectedTextStyle: text,
|
|
76
|
+
inputSearchStyle: [styles.inputSearch, text],
|
|
77
|
+
iconStyle: styles.iconStyle,
|
|
78
|
+
data: options,
|
|
79
|
+
search: searchable,
|
|
80
|
+
searchField: searchable ? 'label' : undefined,
|
|
81
|
+
maxHeight: 300,
|
|
82
|
+
labelField: "label",
|
|
83
|
+
valueField: "value",
|
|
84
|
+
placeholder: placeholder,
|
|
85
|
+
searchPlaceholder: searchPlaceholder ?? placeholder,
|
|
86
|
+
value: value,
|
|
87
|
+
onChange: item => {
|
|
88
|
+
onChange(item.value);
|
|
89
|
+
},
|
|
90
|
+
activeColor: selectedOptionBg
|
|
91
|
+
// onFocus={onFocus}
|
|
92
|
+
// onBlur={onBlur}
|
|
93
|
+
,
|
|
94
|
+
renderItem: (item, selected) => /*#__PURE__*/React.createElement(View, {
|
|
95
|
+
style: {
|
|
96
|
+
backgroundColor: selected ? selectedOptionBg : menuBg
|
|
97
|
+
}
|
|
98
|
+
}, /*#__PURE__*/React.createElement(RenderOptionText, {
|
|
99
|
+
value: item.value,
|
|
100
|
+
option: item,
|
|
163
101
|
colorMode: "light",
|
|
164
|
-
isSelected:
|
|
165
|
-
|
|
166
|
-
|
|
102
|
+
isSelected: !!selected,
|
|
103
|
+
size: size
|
|
104
|
+
})),
|
|
105
|
+
renderRightIcon: () => /*#__PURE__*/React.createElement(View, {
|
|
106
|
+
style: buttonContainer
|
|
107
|
+
}, /*#__PURE__*/React.createElement(Ionicons, {
|
|
108
|
+
name: active ? 'chevron-up' : 'chevron-down',
|
|
109
|
+
size: iconSize,
|
|
110
|
+
color: iconColor
|
|
111
|
+
}), optional && value ? /*#__PURE__*/React.createElement(InputClearButton, {
|
|
112
|
+
size: clearButtonSize,
|
|
113
|
+
onPress: () => {
|
|
114
|
+
onChange(null);
|
|
115
|
+
},
|
|
116
|
+
isActive: !!value
|
|
117
|
+
}) : null)
|
|
118
|
+
}));
|
|
167
119
|
};
|
|
168
120
|
export const SelectComponent = /*#__PURE__*/forwardRef(BaseSelectComponent);
|
|
169
121
|
const styles = StyleSheet.create({
|
|
170
122
|
wrapper: {
|
|
171
123
|
width: '100%'
|
|
172
124
|
},
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
},
|
|
176
|
-
button: {
|
|
177
|
-
flexDirection: 'row',
|
|
178
|
-
alignItems: 'center',
|
|
179
|
-
justifyContent: 'space-between',
|
|
180
|
-
backgroundColor: 'transparent',
|
|
181
|
-
borderRadius: 4
|
|
182
|
-
},
|
|
183
|
-
buttonTextContainer: {
|
|
184
|
-
flex: 1
|
|
185
|
-
},
|
|
186
|
-
buttonText: {
|
|
187
|
-
fontSize: 16
|
|
188
|
-
},
|
|
189
|
-
modalOverlay: {
|
|
190
|
-
flex: 1,
|
|
191
|
-
backgroundColor: 'rgba(0, 0, 0, 0.5)'
|
|
192
|
-
},
|
|
193
|
-
dropdownContainer: {
|
|
194
|
-
backgroundColor: 'white',
|
|
195
|
-
borderWidth: 1,
|
|
196
|
-
borderColor: '#ddd',
|
|
197
|
-
borderRadius: 4,
|
|
198
|
-
maxHeight: 200,
|
|
199
|
-
elevation: 3,
|
|
200
|
-
shadowColor: '#000',
|
|
201
|
-
shadowOffset: {
|
|
202
|
-
width: 0,
|
|
203
|
-
height: 2
|
|
204
|
-
},
|
|
205
|
-
shadowOpacity: 0.1,
|
|
206
|
-
shadowRadius: 2,
|
|
207
|
-
padding: 0
|
|
208
|
-
},
|
|
209
|
-
dropdown: {
|
|
210
|
-
maxHeight: 200
|
|
211
|
-
},
|
|
212
|
-
option: {
|
|
213
|
-
paddingVertical: 12,
|
|
214
|
-
paddingHorizontal: 16,
|
|
215
|
-
borderBottomWidth: 1
|
|
216
|
-
},
|
|
217
|
-
optionText: {
|
|
218
|
-
fontSize: 16
|
|
125
|
+
defaultOption: {
|
|
126
|
+
padding: 10
|
|
219
127
|
},
|
|
220
|
-
|
|
221
|
-
|
|
128
|
+
iconStyle: {
|
|
129
|
+
width: 20,
|
|
130
|
+
height: 20
|
|
222
131
|
},
|
|
223
|
-
|
|
224
|
-
|
|
132
|
+
inputSearch: {
|
|
133
|
+
height: 40,
|
|
134
|
+
fontSize: 16,
|
|
135
|
+
outlineWidth: 0
|
|
225
136
|
}
|
|
226
137
|
});
|
|
227
138
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useBackgroundColor","useBorderColor","useIconColor","usePlaceholderColor","Ionicons","React","forwardRef","useImperativeHandle","
|
|
1
|
+
{"version":3,"names":["useBackgroundColor","useBorderColor","useIconColor","usePlaceholderColor","Ionicons","React","forwardRef","useImperativeHandle","useRef","StyleSheet","View","Dropdown","Txt","InputClearButton","useInputStyles","BaseSelectComponent","field","input","meta","formSize","inEditable","ref","placeholder","options","renderOption","RenderOption","optional","searchable","searchPlaceholder","onChange","value","onFocus","onBlur","active","inputRef","container","inputStyles","iconSize","text","size","clearButtonSize","buttonContainer","focus","_inputRef$current","current","open","blur","_inputRef$current2","close","RenderOptionText","props","createElement","style","styles","defaultOption","option","label","iconColor","placeholderColor","menuBg","selectedOptionBg","borderColor","wrapper","placeholderStyle","color","selectedTextStyle","inputSearchStyle","inputSearch","iconStyle","data","search","searchField","undefined","maxHeight","labelField","valueField","item","activeColor","renderItem","selected","backgroundColor","colorMode","isSelected","renderRightIcon","name","onPress","isActive","SelectComponent","create","width","padding","height","fontSize","outlineWidth"],"sourceRoot":"..\\..\\..\\..\\..\\..\\src","sources":["components/form/input/select/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,14 +3,15 @@ import { usePlaceholderColor, useTextColor } from '@chem-po/react';
|
|
|
3
3
|
import { Ionicons } from '@expo/vector-icons';
|
|
4
4
|
import React, { forwardRef, useImperativeHandle, useRef, useState } from 'react';
|
|
5
5
|
import { StyleSheet, TextInput, TouchableOpacity, View } from 'react-native';
|
|
6
|
-
import {
|
|
6
|
+
import { useInputStyles } from '../hooks/useInputStyles';
|
|
7
7
|
import { TextAreaComponent } from './textarea';
|
|
8
8
|
export const TextComponent = /*#__PURE__*/forwardRef(({
|
|
9
9
|
input,
|
|
10
10
|
inEditable,
|
|
11
11
|
meta,
|
|
12
12
|
field,
|
|
13
|
-
style
|
|
13
|
+
style,
|
|
14
|
+
formSize
|
|
14
15
|
}, ref) => {
|
|
15
16
|
const {
|
|
16
17
|
placeholder,
|
|
@@ -23,6 +24,9 @@ export const TextComponent = /*#__PURE__*/forwardRef(({
|
|
|
23
24
|
...inputProps
|
|
24
25
|
} = input;
|
|
25
26
|
const inputRef = useRef(null);
|
|
27
|
+
const {
|
|
28
|
+
container: inputStyles
|
|
29
|
+
} = useInputStyles(inEditable, field.size, formSize);
|
|
26
30
|
useImperativeHandle(ref, () => ({
|
|
27
31
|
focus: () => {
|
|
28
32
|
var _inputRef$current;
|
|
@@ -42,9 +46,7 @@ export const TextComponent = /*#__PURE__*/forwardRef(({
|
|
|
42
46
|
meta: meta
|
|
43
47
|
}) : /*#__PURE__*/React.createElement(TextInput, _extends({
|
|
44
48
|
ref: inputRef,
|
|
45
|
-
style: [inputStyles
|
|
46
|
-
// inEditable && styles.inEditable,
|
|
47
|
-
type === 'password' && styles.passwordInput, {
|
|
49
|
+
style: [inputStyles, {
|
|
48
50
|
color
|
|
49
51
|
}, style],
|
|
50
52
|
secureTextEntry: isHidden,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["usePlaceholderColor","useTextColor","Ionicons","React","forwardRef","useImperativeHandle","useRef","useState","StyleSheet","TextInput","TouchableOpacity","View","
|
|
1
|
+
{"version":3,"names":["usePlaceholderColor","useTextColor","Ionicons","React","forwardRef","useImperativeHandle","useRef","useState","StyleSheet","TextInput","TouchableOpacity","View","useInputStyles","TextAreaComponent","TextComponent","input","inEditable","meta","field","style","formSize","ref","placeholder","type","isHidden","setIsHidden","value","onChange","inputProps","inputRef","container","inputStyles","size","focus","_inputRef$current","current","blur","_inputRef$current2","placeholderColor","color","body","createElement","_extends","secureTextEntry","placeholderTextColor","onChangeText","styles","passwordContainer","eyeIcon","onPress","name","displayName","create","passwordInput","paddingRight","width","flexDirection","alignItems","position","right","padding"],"sourceRoot":"..\\..\\..\\..\\..\\..\\src","sources":["components/form/input/text/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
2
|
import { usePlaceholderColor, useTextColor } from '@chem-po/react';
|
|
3
3
|
import React, { forwardRef, useImperativeHandle, useRef } from 'react';
|
|
4
|
-
import { StyleSheet, TextInput } from 'react-native';
|
|
4
|
+
import { StyleSheet, TextInput, View } from 'react-native';
|
|
5
|
+
import { useInputStyles } from '../hooks/useInputStyles';
|
|
5
6
|
export const TextAreaComponent = /*#__PURE__*/forwardRef(({
|
|
6
7
|
input,
|
|
7
8
|
field,
|
|
8
|
-
inEditable
|
|
9
|
+
inEditable,
|
|
10
|
+
formSize
|
|
9
11
|
}, ref) => {
|
|
10
12
|
const inputRef = useRef(null);
|
|
13
|
+
const {
|
|
14
|
+
container: inputStyles
|
|
15
|
+
} = useInputStyles(inEditable, field.size, formSize);
|
|
11
16
|
const {
|
|
12
17
|
value,
|
|
13
18
|
onChange,
|
|
@@ -25,7 +30,9 @@ export const TextAreaComponent = /*#__PURE__*/forwardRef(({
|
|
|
25
30
|
}));
|
|
26
31
|
const placeholderColor = usePlaceholderColor();
|
|
27
32
|
const color = useTextColor();
|
|
28
|
-
return /*#__PURE__*/React.createElement(
|
|
33
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
34
|
+
style: inputStyles
|
|
35
|
+
}, /*#__PURE__*/React.createElement(TextInput, _extends({
|
|
29
36
|
ref: inputRef,
|
|
30
37
|
style: [styles.textarea, inEditable && styles.inEditable, {
|
|
31
38
|
color
|
|
@@ -37,15 +44,13 @@ export const TextAreaComponent = /*#__PURE__*/forwardRef(({
|
|
|
37
44
|
textAlignVertical: "top",
|
|
38
45
|
value: value ?? '',
|
|
39
46
|
onChangeText: onChange
|
|
40
|
-
}, inputProps));
|
|
47
|
+
}, inputProps)));
|
|
41
48
|
});
|
|
42
49
|
TextAreaComponent.displayName = 'TextAreaComponent';
|
|
43
50
|
const styles = StyleSheet.create({
|
|
44
51
|
textarea: {
|
|
45
52
|
width: '100%',
|
|
46
53
|
minHeight: 80,
|
|
47
|
-
paddingHorizontal: 12,
|
|
48
|
-
paddingVertical: 8,
|
|
49
54
|
backgroundColor: 'transparent',
|
|
50
55
|
textAlignVertical: 'top'
|
|
51
56
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["usePlaceholderColor","useTextColor","React","forwardRef","useImperativeHandle","useRef","StyleSheet","TextInput","TextAreaComponent","input","field","inEditable","ref","inputRef","value","onChange","inputProps","focus","_inputRef$current","current","blur","_inputRef$current2","placeholderColor","color","createElement","
|
|
1
|
+
{"version":3,"names":["usePlaceholderColor","useTextColor","React","forwardRef","useImperativeHandle","useRef","StyleSheet","TextInput","View","useInputStyles","TextAreaComponent","input","field","inEditable","formSize","ref","inputRef","container","inputStyles","size","value","onChange","inputProps","focus","_inputRef$current","current","blur","_inputRef$current2","placeholderColor","color","createElement","style","_extends","styles","textarea","placeholder","placeholderTextColor","multiline","maxLength","textAlignVertical","onChangeText","displayName","create","width","minHeight","backgroundColor","paddingHorizontal","paddingVertical"],"sourceRoot":"..\\..\\..\\..\\..\\..\\src","sources":["components/form/input/text/textarea.tsx"],"mappings":";AACA,SAAoBA,mBAAmB,EAAEC,YAAY,QAAQ,gBAAgB;AAC7E,OAAOC,KAAK,IAAIC,UAAU,EAAEC,mBAAmB,EAAEC,MAAM,QAAQ,OAAO;AACtE,SAASC,UAAU,EAAEC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AAE1D,SAASC,cAAc,QAAQ,yBAAyB;AAExD,OAAO,MAAMC,iBAAiB,gBAAGP,UAAU,CACzC,CAAC;EAAEQ,KAAK;EAAEC,KAAK;EAAEC,UAAU;EAAEC;AAAS,CAAC,EAAEC,GAAG,KAAK;EAC/C,MAAMC,QAAQ,GAAGX,MAAM,CAAY,IAAI,CAAC;EACxC,MAAM;IAAEY,SAAS,EAAEC;EAAY,CAAC,GAAGT,cAAc,CAACI,UAAU,EAAED,KAAK,CAACO,IAAI,EAAEL,QAAQ,CAAC;EACnF,MAAM;IAAEM,KAAK;IAAEC,QAAQ;IAAE,GAAGC;EAAW,CAAC,GAAGX,KAAK;EAEhDP,mBAAmB,CAACW,GAAG,EAAE,OAAO;IAC9BQ,KAAK,EAAEA,CAAA,KAAM;MAAA,IAAAC,iBAAA;MACX,CAAAA,iBAAA,GAAAR,QAAQ,CAACS,OAAO,cAAAD,iBAAA,eAAhBA,iBAAA,CAAkBD,KAAK,CAAC,CAAC;IAC3B,CAAC;IACDG,IAAI,EAAEA,CAAA,KAAM;MAAA,IAAAC,kBAAA;MACV,CAAAA,kBAAA,GAAAX,QAAQ,CAACS,OAAO,cAAAE,kBAAA,eAAhBA,kBAAA,CAAkBD,IAAI,CAAC,CAAC;IAC1B;EACF,CAAC,CAAC,CAAC;EAEH,MAAME,gBAAgB,GAAG5B,mBAAmB,CAAC,CAAC;EAC9C,MAAM6B,KAAK,GAAG5B,YAAY,CAAC,CAAC;EAE5B,oBACEC,KAAA,CAAA4B,aAAA,CAACtB,IAAI;IAACuB,KAAK,EAAEb;EAAY,gBACvBhB,KAAA,CAAA4B,aAAA,CAACvB,SAAS,EAAAyB,QAAA;IACRjB,GAAG,EAAEC,QAAS;IACde,KAAK,EAAE,CAACE,MAAM,CAACC,QAAQ,EAAErB,UAAU,IAAIoB,MAAM,CAACpB,UAAU,EAAE;MAAEgB;IAAM,CAAC,CAAE;IACrEM,WAAW,EAAEvB,KAAK,CAACuB,WAAY;IAC/BC,oBAAoB,EAAER,gBAAiB;IACvCS,SAAS;IACTC,SAAS,EAAE,GAAI;IACfC,iBAAiB,EAAC,KAAK;IACvBnB,KAAK,EAAEA,KAAK,IAAI,EAAG;IACnBoB,YAAY,EAAEnB;EAAS,GACnBC,UAAU,CACf,CACG,CAAC;AAEX,CACF,CAAC;AAEDZ,iBAAiB,CAAC+B,WAAW,GAAG,mBAAmB;AAEnD,MAAMR,MAAM,GAAG3B,UAAU,CAACoC,MAAM,CAAC;EAC/BR,QAAQ,EAAE;IACRS,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE,EAAE;IACbC,eAAe,EAAE,aAAa;IAC9BN,iBAAiB,EAAE;EACrB,CAAC;EACD1B,UAAU,EAAE;IACViC,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE;EACnB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ import { Portal } from 'react-native-paper';
|
|
|
7
7
|
import { TimePickerModal } from 'react-native-paper-dates';
|
|
8
8
|
import { DateInputClearButton } from '../common/InputClearButton';
|
|
9
9
|
import { useInputColor } from '../hooks/useInputColor';
|
|
10
|
-
import {
|
|
10
|
+
import { useInputStyles } from '../hooks/useInputStyles';
|
|
11
11
|
export const TimeInput = /*#__PURE__*/forwardRef(({
|
|
12
12
|
input: {
|
|
13
13
|
onChange,
|
|
@@ -17,10 +17,20 @@ export const TimeInput = /*#__PURE__*/forwardRef(({
|
|
|
17
17
|
},
|
|
18
18
|
field: {
|
|
19
19
|
placeholder,
|
|
20
|
-
optional
|
|
21
|
-
|
|
20
|
+
optional,
|
|
21
|
+
size
|
|
22
|
+
},
|
|
23
|
+
formSize,
|
|
24
|
+
inEditable
|
|
22
25
|
}, ref) => {
|
|
23
26
|
const [visible, setVisible] = useState(false);
|
|
27
|
+
const {
|
|
28
|
+
container: inputStyles,
|
|
29
|
+
iconSize,
|
|
30
|
+
text,
|
|
31
|
+
clearButtonSize,
|
|
32
|
+
buttonContainer
|
|
33
|
+
} = useInputStyles(inEditable, size, formSize);
|
|
24
34
|
useImperativeHandle(ref, () => ({
|
|
25
35
|
focus: () => {
|
|
26
36
|
setVisible(true);
|
|
@@ -70,24 +80,26 @@ export const TimeInput = /*#__PURE__*/forwardRef(({
|
|
|
70
80
|
return /*#__PURE__*/React.createElement(View, {
|
|
71
81
|
style: styles.container
|
|
72
82
|
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
73
|
-
style: [styles.button, inputStyles
|
|
83
|
+
style: [styles.button, inputStyles],
|
|
74
84
|
onPress: () => {
|
|
75
85
|
setVisible(true);
|
|
76
86
|
onFocus();
|
|
77
87
|
}
|
|
78
88
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
79
|
-
style: [styles.text, {
|
|
89
|
+
style: [styles.text, text, {
|
|
80
90
|
color: inputColor
|
|
81
91
|
}]
|
|
82
|
-
}, formattedValue ?? placeholder), /*#__PURE__*/React.createElement(
|
|
92
|
+
}, formattedValue ?? placeholder), /*#__PURE__*/React.createElement(View, {
|
|
93
|
+
style: buttonContainer
|
|
94
|
+
}, /*#__PURE__*/React.createElement(Ionicons, {
|
|
83
95
|
name: "time",
|
|
84
|
-
size:
|
|
85
|
-
color: iconColor
|
|
86
|
-
style: styles.icon
|
|
96
|
+
size: iconSize,
|
|
97
|
+
color: iconColor
|
|
87
98
|
}), optional && value ? /*#__PURE__*/React.createElement(DateInputClearButton, {
|
|
99
|
+
size: clearButtonSize,
|
|
88
100
|
onPress: () => onChange(null),
|
|
89
101
|
isActive: !!value
|
|
90
|
-
}) : null), /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement(TimePickerModal, {
|
|
102
|
+
}) : null)), /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement(TimePickerModal, {
|
|
91
103
|
visible: visible,
|
|
92
104
|
onDismiss: handleDismiss,
|
|
93
105
|
onConfirm: handleTimeChange,
|
|
@@ -109,9 +121,6 @@ const styles = StyleSheet.create({
|
|
|
109
121
|
text: {
|
|
110
122
|
fontSize: 16,
|
|
111
123
|
flex: 1
|
|
112
|
-
},
|
|
113
|
-
icon: {
|
|
114
|
-
marginRight: 10
|
|
115
124
|
}
|
|
116
125
|
});
|
|
117
126
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["padZeros","useIconColor","Ionicons","React","forwardRef","useImperativeHandle","useMemo","useState","StyleSheet","Text","TouchableOpacity","View","Portal","TimePickerModal","DateInputClearButton","useInputColor","
|
|
1
|
+
{"version":3,"names":["padZeros","useIconColor","Ionicons","React","forwardRef","useImperativeHandle","useMemo","useState","StyleSheet","Text","TouchableOpacity","View","Portal","TimePickerModal","DateInputClearButton","useInputColor","useInputStyles","TimeInput","input","onChange","value","onFocus","onBlur","field","placeholder","optional","size","formSize","inEditable","ref","visible","setVisible","container","inputStyles","iconSize","text","clearButtonSize","buttonContainer","focus","blur","handleTimeChange","hours","minutes","timeString","handleDismiss","formattedValue","split","map","Number","amPm","formattedHours","h","m","iconColor","inputColor","createElement","style","styles","button","onPress","color","name","isActive","onDismiss","onConfirm","displayName","create","width","flexDirection","alignItems","justifyContent","fontSize","flex"],"sourceRoot":"..\\..\\..\\..\\..\\..\\src","sources":["components/form/input/time/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,20 +20,34 @@ const styles = StyleSheet.create({
|
|
|
20
20
|
padding: 4
|
|
21
21
|
}
|
|
22
22
|
});
|
|
23
|
+
const getFileSizeHeight = size => {
|
|
24
|
+
switch (size) {
|
|
25
|
+
case 'sm':
|
|
26
|
+
return 80;
|
|
27
|
+
case 'md':
|
|
28
|
+
return 120;
|
|
29
|
+
case 'lg':
|
|
30
|
+
return 150;
|
|
31
|
+
default:
|
|
32
|
+
return 120;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
23
35
|
export const FileFieldView = ({
|
|
24
36
|
field,
|
|
25
37
|
value,
|
|
26
38
|
noLabel,
|
|
27
|
-
style
|
|
39
|
+
style,
|
|
40
|
+
size: sizeProp
|
|
28
41
|
}) => {
|
|
29
42
|
const {
|
|
30
43
|
imageOptions,
|
|
31
|
-
placeholder
|
|
44
|
+
placeholder,
|
|
45
|
+
size
|
|
32
46
|
} = field;
|
|
33
47
|
const options = useMemo(() => ({
|
|
34
|
-
height:
|
|
48
|
+
height: getFileSizeHeight(size ?? sizeProp ?? 'md'),
|
|
35
49
|
...imageOptions
|
|
36
|
-
}), [imageOptions]);
|
|
50
|
+
}), [imageOptions, size, sizeProp]);
|
|
37
51
|
return /*#__PURE__*/React.createElement(View, {
|
|
38
52
|
style: [value ? styles.container : styles.rowContainer, style]
|
|
39
53
|
}, !noLabel && /*#__PURE__*/React.createElement(Text, {
|