rn-inputforge 0.1.1 → 0.2.0

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 (47) hide show
  1. package/README.md +44 -0
  2. package/lib/commonjs/components/FieldFlowDropdown/FieldFlowDropdown.js +288 -0
  3. package/lib/commonjs/components/FieldFlowDropdown/FieldFlowDropdown.js.map +1 -0
  4. package/lib/commonjs/components/FieldFlowDropdown/index.js +13 -0
  5. package/lib/commonjs/components/FieldFlowDropdown/index.js.map +1 -0
  6. package/lib/commonjs/components/FieldFlowDropdown/styles.js +199 -0
  7. package/lib/commonjs/components/FieldFlowDropdown/styles.js.map +1 -0
  8. package/lib/commonjs/components/FieldFlowDropdown/types.js +6 -0
  9. package/lib/commonjs/components/FieldFlowDropdown/types.js.map +1 -0
  10. package/lib/commonjs/icons/Icon.js +35 -0
  11. package/lib/commonjs/icons/Icon.js.map +1 -1
  12. package/lib/commonjs/index.js +7 -0
  13. package/lib/commonjs/index.js.map +1 -1
  14. package/lib/module/components/FieldFlowDropdown/FieldFlowDropdown.js +283 -0
  15. package/lib/module/components/FieldFlowDropdown/FieldFlowDropdown.js.map +1 -0
  16. package/lib/module/components/FieldFlowDropdown/index.js +4 -0
  17. package/lib/module/components/FieldFlowDropdown/index.js.map +1 -0
  18. package/lib/module/components/FieldFlowDropdown/styles.js +195 -0
  19. package/lib/module/components/FieldFlowDropdown/styles.js.map +1 -0
  20. package/lib/module/components/FieldFlowDropdown/types.js +4 -0
  21. package/lib/module/components/FieldFlowDropdown/types.js.map +1 -0
  22. package/lib/module/icons/Icon.js +35 -0
  23. package/lib/module/icons/Icon.js.map +1 -1
  24. package/lib/module/index.js +1 -0
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/typescript/components/FieldFlowDropdown/FieldFlowDropdown.d.ts +4 -0
  27. package/lib/typescript/components/FieldFlowDropdown/FieldFlowDropdown.d.ts.map +1 -0
  28. package/lib/typescript/components/FieldFlowDropdown/index.d.ts +3 -0
  29. package/lib/typescript/components/FieldFlowDropdown/index.d.ts.map +1 -0
  30. package/lib/typescript/components/FieldFlowDropdown/styles.d.ts +188 -0
  31. package/lib/typescript/components/FieldFlowDropdown/styles.d.ts.map +1 -0
  32. package/lib/typescript/components/FieldFlowDropdown/types.d.ts +51 -0
  33. package/lib/typescript/components/FieldFlowDropdown/types.d.ts.map +1 -0
  34. package/lib/typescript/icons/Icon.d.ts +1 -1
  35. package/lib/typescript/icons/Icon.d.ts.map +1 -1
  36. package/lib/typescript/index.d.ts +3 -1
  37. package/lib/typescript/index.d.ts.map +1 -1
  38. package/lib/typescript/types/index.d.ts +7 -0
  39. package/lib/typescript/types/index.d.ts.map +1 -1
  40. package/package.json +2 -2
  41. package/src/components/FieldFlowDropdown/FieldFlowDropdown.tsx +353 -0
  42. package/src/components/FieldFlowDropdown/index.ts +7 -0
  43. package/src/components/FieldFlowDropdown/styles.ts +193 -0
  44. package/src/components/FieldFlowDropdown/types.ts +57 -0
  45. package/src/icons/Icon.tsx +26 -0
  46. package/src/index.ts +9 -0
  47. package/src/types/index.ts +8 -0
package/README.md CHANGED
@@ -141,6 +141,49 @@ See `example/App.tsx` for a complete multi-field form wired end to end.
141
141
 
142
142
  ---
143
143
 
144
+ ## Dropdown / select (single & multiple)
145
+
146
+ ```tsx
147
+ import { FieldFlowDropdown } from 'rn-inputforge';
148
+
149
+ // Single select — slides up from the bottom by default
150
+ <FieldFlowDropdown
151
+ label="Country"
152
+ placeholder="Select your country"
153
+ options={[
154
+ { label: 'United States', value: 'us' },
155
+ { label: 'Pakistan', value: 'pk' },
156
+ { label: 'United Kingdom', value: 'uk' },
157
+ ]}
158
+ value={country}
159
+ onChange={setCountry}
160
+ clearable
161
+ required
162
+ />
163
+
164
+ // Multi select — centered popup modal, with search, confirmed via a "Done" button
165
+ <FieldFlowDropdown
166
+ multiple
167
+ label="Skills"
168
+ presentation="popup"
169
+ options={skillOptions}
170
+ values={skills}
171
+ onChangeMulti={setSkills}
172
+ searchable
173
+ />
174
+ ```
175
+
176
+ **Presentation modes** (`presentation` prop):
177
+ - `"bottomSheet"` (default) — slides up from the bottom, dismiss by tapping the backdrop
178
+ - `"popup"` — fades in, centered on screen
179
+ - `"inline"` — drops down directly under the field itself (flips upward automatically if there isn't room below)
180
+
181
+ **Single vs multiple select:** pass `value` + `onChange` for single select, or `multiple` + `values` + `onChangeMulti` for multi-select. In multi-select, selections are staged until the user taps the confirm button (`confirmLabel`, default `"Done"`) — pass `closeOnSelect` if you'd rather commit immediately on each tap instead.
182
+
183
+ Search is shown automatically once there are more than `searchThreshold` options (default 6) — set `searchable` explicitly to force it on or off. Every option can carry a `description` (shown as a second line) and can be individually `disabled`. Like every other FieldFlow component, it accepts `theme`, `label`, `helperText`, `errorText`, and `disabled` for consistency with the rest of your form.
184
+
185
+ ---
186
+
144
187
  ## Description fields
145
188
 
146
189
  ```tsx
@@ -223,6 +266,7 @@ rn-inputforge/
223
266
  │ │ ├── FieldFlowInput/ core input (all field types, icons, states)
224
267
  │ │ ├── DescriptionField/ auto-growing multiline field
225
268
  │ │ ├── ChatInput/ chat composer + attachment toolbar
269
+ │ │ ├── FieldFlowDropdown/ single/multi select — bottom sheet, popup, or inline
226
270
  │ │ └── KeyboardAwareFormWrapper/
227
271
  │ ├── hooks/ useFieldFlowForm, useKeyboardManager, useFieldState
228
272
  │ ├── theme/ ThemeProvider + default/dark themes
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FieldFlowDropdown = FieldFlowDropdown;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _ThemeProvider = require("../../theme/ThemeProvider");
10
+ var _defaultTheme = require("../../theme/defaultTheme");
11
+ var _useFieldState = require("../../hooks/useFieldState");
12
+ var _Icon = require("../../icons/Icon");
13
+ var _styles = require("./styles");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ function FieldFlowDropdown(props) {
17
+ const {
18
+ options,
19
+ label,
20
+ placeholder = 'Select...',
21
+ helperText,
22
+ errorText,
23
+ hasError,
24
+ disabled,
25
+ required,
26
+ title,
27
+ presentation = 'bottomSheet',
28
+ searchable,
29
+ searchThreshold = 6,
30
+ searchPlaceholder = 'Search...',
31
+ emptyText = 'No options found',
32
+ maxModalHeight,
33
+ clearable,
34
+ containerStyle,
35
+ triggerStyle,
36
+ labelStyle,
37
+ theme: themeOverride,
38
+ testID,
39
+ multiple
40
+ } = props;
41
+ const contextTheme = (0, _ThemeProvider.useFieldFlowTheme)();
42
+ const theme = (0, _react.useMemo)(() => themeOverride ? (0, _ThemeProvider.mergeDeep)(contextTheme ?? _defaultTheme.defaultTheme, themeOverride) : contextTheme ?? _defaultTheme.defaultTheme, [contextTheme, themeOverride]);
43
+ const [isOpen, setIsOpen] = (0, _react.useState)(false);
44
+ const [query, setQuery] = (0, _react.useState)('');
45
+ const [draftValues, setDraftValues] = (0, _react.useState)(multiple ? props.values ?? [] : []);
46
+ const [anchorLayout, setAnchorLayout] = (0, _react.useState)(null);
47
+ const triggerRef = (0, _react.useRef)(null);
48
+ const resolvedError = errorText;
49
+ const state = (0, _useFieldState.useFieldState)({
50
+ isFocused: isOpen,
51
+ hasError: Boolean(hasError || resolvedError),
52
+ disabled
53
+ });
54
+ const styles = (0, _react.useMemo)(() => (0, _styles.createDropdownStyles)(theme, state), [theme, state]);
55
+ const selectedValues = multiple ? props.values ?? [] : props.value ? [props.value] : [];
56
+ const shouldShowSearch = searchable ?? options.length > searchThreshold;
57
+ const filteredOptions = (0, _react.useMemo)(() => {
58
+ if (!query.trim()) return options;
59
+ const q = query.trim().toLowerCase();
60
+ return options.filter(o => o.label.toLowerCase().includes(q));
61
+ }, [options, query]);
62
+ const openDropdown = () => {
63
+ if (disabled) return;
64
+ if (multiple) setDraftValues(props.values ?? []);
65
+ setQuery('');
66
+ if (presentation === 'inline') {
67
+ triggerRef.current?.measureInWindow((x, y, width, height) => {
68
+ setAnchorLayout({
69
+ x,
70
+ y,
71
+ width,
72
+ height
73
+ });
74
+ setIsOpen(true);
75
+ });
76
+ } else {
77
+ setIsOpen(true);
78
+ }
79
+ };
80
+ const closeDropdown = () => setIsOpen(false);
81
+ const commitSingle = value => {
82
+ if (!multiple) {
83
+ props.onChange(value);
84
+ if (props.closeOnSelect ?? true) closeDropdown();
85
+ }
86
+ };
87
+ const toggleMultiDraft = value => {
88
+ setDraftValues(prev => prev.includes(value) ? prev.filter(v => v !== value) : [...prev, value]);
89
+ if (multiple && (props.closeOnSelect ?? false)) {
90
+ const next = draftValues.includes(value) ? draftValues.filter(v => v !== value) : [...draftValues, value];
91
+ props.onChangeMulti(next);
92
+ }
93
+ };
94
+ const confirmMulti = () => {
95
+ if (multiple) {
96
+ props.onChangeMulti(draftValues);
97
+ }
98
+ closeDropdown();
99
+ };
100
+ const clearSelection = () => {
101
+ if (multiple) {
102
+ props.onChangeMulti([]);
103
+ setDraftValues([]);
104
+ } else {
105
+ props.onChange(null);
106
+ }
107
+ };
108
+ const triggerLabel = (0, _react.useMemo)(() => {
109
+ if (selectedValues.length === 0) return null;
110
+ const labels = options.filter(o => selectedValues.includes(o.value)).map(o => o.label);
111
+ if (!multiple) return labels[0] ?? null;
112
+ const maxShown = props.maxLabelsShown ?? 2;
113
+ if (labels.length <= maxShown) return labels.join(', ');
114
+ return `${labels.slice(0, maxShown).join(', ')} +${labels.length - maxShown} more`;
115
+ }, [selectedValues, options, multiple, props]);
116
+ const renderOption = ({
117
+ item
118
+ }) => {
119
+ const isSelected = multiple ? draftValues.includes(item.value) : props.value === item.value;
120
+ const handlePress = () => {
121
+ if (item.disabled) return;
122
+ multiple ? toggleMultiDraft(item.value) : commitSingle(item.value);
123
+ };
124
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
125
+ onPress: handlePress,
126
+ disabled: item.disabled,
127
+ style: styles.optionRow,
128
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
129
+ style: {
130
+ flex: 1
131
+ },
132
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
133
+ style: [styles.optionLabel, isSelected && styles.optionLabelSelected, item.disabled && styles.optionLabelDisabled],
134
+ children: item.label
135
+ }), item.description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
136
+ style: styles.optionDescription,
137
+ children: item.description
138
+ }) : null]
139
+ }), multiple ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
140
+ style: [styles.checkbox, isSelected && styles.checkboxChecked],
141
+ children: isSelected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.FieldFlowIcon, {
142
+ name: "check",
143
+ size: 12,
144
+ color: "#FFFFFF"
145
+ }) : null
146
+ }) : isSelected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.FieldFlowIcon, {
147
+ name: "check",
148
+ size: 16,
149
+ color: theme.colors.borderFocused
150
+ }) : null]
151
+ });
152
+ };
153
+ const listContent = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
154
+ children: [shouldShowSearch ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
155
+ style: styles.searchWrapper,
156
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
157
+ value: query,
158
+ onChangeText: setQuery,
159
+ placeholder: searchPlaceholder,
160
+ placeholderTextColor: theme.colors.placeholder,
161
+ style: styles.searchInput
162
+ })
163
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.FlatList, {
164
+ data: filteredOptions,
165
+ keyExtractor: item => item.value,
166
+ renderItem: renderOption,
167
+ keyboardShouldPersistTaps: "handled",
168
+ style: {
169
+ maxHeight: maxModalHeight ?? 360
170
+ },
171
+ ListEmptyComponent: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
172
+ style: styles.emptyText,
173
+ children: emptyText
174
+ })
175
+ }), multiple ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
176
+ style: styles.confirmButton,
177
+ onPress: confirmMulti,
178
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
179
+ style: styles.confirmButtonText,
180
+ children: props.confirmLabel ?? 'Done'
181
+ })
182
+ }) : null]
183
+ });
184
+ const header = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
185
+ style: styles.modalHeader,
186
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
187
+ style: styles.modalTitle,
188
+ children: title ?? label ?? 'Select'
189
+ }), clearable && selectedValues.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
190
+ onPress: clearSelection,
191
+ hitSlop: 8,
192
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
193
+ style: styles.modalClearButton,
194
+ children: "Clear"
195
+ })
196
+ }) : null]
197
+ });
198
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
199
+ style: [styles.wrapper, containerStyle],
200
+ testID: testID,
201
+ children: [label ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
202
+ style: [styles.label, labelStyle],
203
+ children: [label, required ? ' *' : '']
204
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
205
+ ref: triggerRef,
206
+ collapsable: false,
207
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
208
+ onPress: openDropdown,
209
+ disabled: disabled,
210
+ style: [styles.trigger, triggerStyle],
211
+ children: [triggerLabel ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
212
+ style: styles.triggerText,
213
+ numberOfLines: 1,
214
+ children: triggerLabel
215
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
216
+ style: styles.placeholderText,
217
+ numberOfLines: 1,
218
+ children: placeholder
219
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.FieldFlowIcon, {
220
+ name: "chevronDown",
221
+ size: 16,
222
+ color: theme.colors.icon
223
+ })]
224
+ })
225
+ }), (helperText || resolvedError) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
226
+ style: styles.footerRow,
227
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
228
+ style: {
229
+ flex: 1
230
+ },
231
+ children: resolvedError ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
232
+ style: styles.errorText,
233
+ children: resolvedError
234
+ }) : helperText ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
235
+ style: styles.helperText,
236
+ children: helperText
237
+ }) : null
238
+ })
239
+ }), presentation === 'inline' ? isOpen && anchorLayout ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
240
+ transparent: true,
241
+ visible: true,
242
+ animationType: "fade",
243
+ onRequestClose: closeDropdown,
244
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
245
+ style: {
246
+ flex: 1
247
+ },
248
+ onPress: closeDropdown,
249
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
250
+ style: [styles.inlineDropdown, inlinePosition(anchorLayout)],
251
+ children: listContent
252
+ })
253
+ })
254
+ }) : null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
255
+ transparent: true,
256
+ visible: isOpen,
257
+ animationType: presentation === 'popup' ? 'fade' : 'slide',
258
+ onRequestClose: closeDropdown,
259
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
260
+ style: presentation === 'popup' ? styles.popupWrapper : styles.bottomSheetWrapper,
261
+ onPress: closeDropdown,
262
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
263
+ style: presentation === 'popup' ? styles.popupCard : styles.sheetCard,
264
+ onPress: e => e.stopPropagation(),
265
+ children: [presentation === 'bottomSheet' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
266
+ style: styles.dragHandle
267
+ }) : null, header, listContent]
268
+ })
269
+ })
270
+ })]
271
+ });
272
+ }
273
+ function inlinePosition(anchor) {
274
+ const screenHeight = _reactNative.Dimensions.get('window').height;
275
+ const spaceBelow = screenHeight - (anchor.y + anchor.height);
276
+ const openUpward = spaceBelow < 260;
277
+ return {
278
+ left: anchor.x,
279
+ width: anchor.width,
280
+ maxHeight: 300,
281
+ ...(openUpward ? {
282
+ bottom: screenHeight - anchor.y + 4
283
+ } : {
284
+ top: anchor.y + anchor.height + 4
285
+ })
286
+ };
287
+ }
288
+ //# sourceMappingURL=FieldFlowDropdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_ThemeProvider","_defaultTheme","_useFieldState","_Icon","_styles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FieldFlowDropdown","props","options","label","placeholder","helperText","errorText","hasError","disabled","required","title","presentation","searchable","searchThreshold","searchPlaceholder","emptyText","maxModalHeight","clearable","containerStyle","triggerStyle","labelStyle","theme","themeOverride","testID","multiple","contextTheme","useFieldFlowTheme","useMemo","mergeDeep","defaultTheme","isOpen","setIsOpen","useState","query","setQuery","draftValues","setDraftValues","values","anchorLayout","setAnchorLayout","triggerRef","useRef","resolvedError","state","useFieldState","isFocused","Boolean","styles","createDropdownStyles","selectedValues","value","shouldShowSearch","length","filteredOptions","trim","q","toLowerCase","filter","includes","openDropdown","current","measureInWindow","x","y","width","height","closeDropdown","commitSingle","onChange","closeOnSelect","toggleMultiDraft","prev","v","next","onChangeMulti","confirmMulti","clearSelection","triggerLabel","labels","map","maxShown","maxLabelsShown","join","slice","renderOption","item","isSelected","handlePress","jsxs","Pressable","onPress","style","optionRow","children","View","flex","jsx","Text","optionLabel","optionLabelSelected","optionLabelDisabled","description","optionDescription","checkbox","checkboxChecked","FieldFlowIcon","name","size","color","colors","borderFocused","listContent","Fragment","searchWrapper","TextInput","onChangeText","placeholderTextColor","searchInput","FlatList","data","keyExtractor","renderItem","keyboardShouldPersistTaps","maxHeight","ListEmptyComponent","confirmButton","confirmButtonText","confirmLabel","header","modalHeader","modalTitle","hitSlop","modalClearButton","wrapper","ref","collapsable","trigger","triggerText","numberOfLines","placeholderText","icon","footerRow","Modal","transparent","visible","animationType","onRequestClose","inlineDropdown","inlinePosition","popupWrapper","bottomSheetWrapper","popupCard","sheetCard","stopPropagation","dragHandle","anchor","screenHeight","Dimensions","spaceBelow","openUpward","left","bottom","top"],"sourceRoot":"../../../../src","sources":["components/FieldFlowDropdown/FieldFlowDropdown.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "FieldFlowDropdown", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _FieldFlowDropdown.FieldFlowDropdown;
10
+ }
11
+ });
12
+ var _FieldFlowDropdown = require("./FieldFlowDropdown");
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_FieldFlowDropdown","require"],"sourceRoot":"../../../../src","sources":["components/FieldFlowDropdown/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDropdownStyles = createDropdownStyles;
7
+ var _reactNative = require("react-native");
8
+ var _styles = require("../FieldFlowInput/styles");
9
+ function createDropdownStyles(theme, state) {
10
+ return _reactNative.StyleSheet.create({
11
+ wrapper: {
12
+ marginBottom: theme.spacing.gap * 2
13
+ },
14
+ label: {
15
+ fontSize: theme.typography.labelFontSize,
16
+ marginBottom: theme.spacing.gap / 1.5,
17
+ color: (0, _styles.labelColorFor)(theme, state),
18
+ fontWeight: '500'
19
+ },
20
+ trigger: {
21
+ flexDirection: 'row',
22
+ alignItems: 'center',
23
+ backgroundColor: state === 'disabled' ? theme.colors.backgroundDisabled : theme.colors.background,
24
+ borderRadius: theme.spacing.borderRadius,
25
+ borderWidth: state === 'focused' ? theme.spacing.borderWidthFocused : theme.spacing.borderWidth,
26
+ borderColor: (0, _styles.borderColorFor)(theme, state),
27
+ paddingHorizontal: theme.spacing.paddingHorizontal,
28
+ minHeight: theme.spacing.paddingVertical * 2 + theme.typography.fontSize + 6
29
+ },
30
+ triggerText: {
31
+ flex: 1,
32
+ fontSize: theme.typography.fontSize,
33
+ color: theme.colors.text
34
+ },
35
+ placeholderText: {
36
+ flex: 1,
37
+ fontSize: theme.typography.fontSize,
38
+ color: theme.colors.placeholder
39
+ },
40
+ footerRow: {
41
+ flexDirection: 'row',
42
+ justifyContent: 'space-between',
43
+ marginTop: theme.spacing.gap / 1.5
44
+ },
45
+ errorText: {
46
+ fontSize: theme.typography.helperFontSize,
47
+ color: theme.colors.error,
48
+ flexShrink: 1
49
+ },
50
+ helperText: {
51
+ fontSize: theme.typography.helperFontSize,
52
+ color: theme.colors.label,
53
+ flexShrink: 1
54
+ },
55
+ // Modal
56
+ backdrop: {
57
+ flex: 1,
58
+ backgroundColor: 'rgba(0,0,0,0.4)'
59
+ },
60
+ bottomSheetWrapper: {
61
+ flex: 1,
62
+ justifyContent: 'flex-end'
63
+ },
64
+ popupWrapper: {
65
+ flex: 1,
66
+ justifyContent: 'center',
67
+ alignItems: 'center',
68
+ paddingHorizontal: 24
69
+ },
70
+ sheetCard: {
71
+ backgroundColor: theme.colors.background,
72
+ borderTopLeftRadius: theme.spacing.borderRadius * 1.6,
73
+ borderTopRightRadius: theme.spacing.borderRadius * 1.6,
74
+ paddingTop: theme.spacing.gap,
75
+ paddingBottom: theme.spacing.paddingVertical
76
+ },
77
+ popupCard: {
78
+ width: '100%',
79
+ backgroundColor: theme.colors.background,
80
+ borderRadius: theme.spacing.borderRadius * 1.4,
81
+ paddingTop: theme.spacing.gap,
82
+ paddingBottom: theme.spacing.paddingVertical,
83
+ maxHeight: '80%'
84
+ },
85
+ dragHandle: {
86
+ alignSelf: 'center',
87
+ width: 36,
88
+ height: 4,
89
+ borderRadius: 2,
90
+ backgroundColor: theme.colors.border,
91
+ marginBottom: theme.spacing.gap
92
+ },
93
+ modalHeader: {
94
+ flexDirection: 'row',
95
+ alignItems: 'center',
96
+ justifyContent: 'space-between',
97
+ paddingHorizontal: theme.spacing.paddingHorizontal,
98
+ paddingBottom: theme.spacing.gap,
99
+ borderBottomWidth: theme.spacing.borderWidth,
100
+ borderBottomColor: theme.colors.border,
101
+ marginBottom: theme.spacing.gap
102
+ },
103
+ modalTitle: {
104
+ fontSize: theme.typography.fontSize + 1,
105
+ fontWeight: '600',
106
+ color: theme.colors.text
107
+ },
108
+ modalClearButton: {
109
+ fontSize: theme.typography.helperFontSize,
110
+ color: theme.colors.borderFocused
111
+ },
112
+ searchWrapper: {
113
+ paddingHorizontal: theme.spacing.paddingHorizontal,
114
+ marginBottom: theme.spacing.gap
115
+ },
116
+ searchInput: {
117
+ backgroundColor: theme.colors.backgroundDisabled,
118
+ borderRadius: theme.spacing.borderRadius,
119
+ paddingHorizontal: theme.spacing.paddingHorizontal,
120
+ paddingVertical: theme.spacing.paddingVertical * 0.6,
121
+ fontSize: theme.typography.fontSize,
122
+ color: theme.colors.text
123
+ },
124
+ optionRow: {
125
+ flexDirection: 'row',
126
+ alignItems: 'center',
127
+ justifyContent: 'space-between',
128
+ paddingHorizontal: theme.spacing.paddingHorizontal,
129
+ paddingVertical: theme.spacing.paddingVertical * 0.9
130
+ },
131
+ optionLabel: {
132
+ fontSize: theme.typography.fontSize,
133
+ color: theme.colors.text
134
+ },
135
+ optionLabelSelected: {
136
+ color: theme.colors.borderFocused,
137
+ fontWeight: '600'
138
+ },
139
+ optionLabelDisabled: {
140
+ color: theme.colors.placeholder
141
+ },
142
+ optionDescription: {
143
+ fontSize: theme.typography.helperFontSize,
144
+ color: theme.colors.placeholder,
145
+ marginTop: 2
146
+ },
147
+ checkbox: {
148
+ width: 20,
149
+ height: 20,
150
+ borderRadius: 5,
151
+ borderWidth: theme.spacing.borderWidth,
152
+ borderColor: theme.colors.border,
153
+ alignItems: 'center',
154
+ justifyContent: 'center'
155
+ },
156
+ checkboxChecked: {
157
+ backgroundColor: theme.colors.borderFocused,
158
+ borderColor: theme.colors.borderFocused
159
+ },
160
+ emptyText: {
161
+ textAlign: 'center',
162
+ paddingVertical: theme.spacing.paddingVertical * 2,
163
+ color: theme.colors.placeholder,
164
+ fontSize: theme.typography.fontSize
165
+ },
166
+ confirmButton: {
167
+ marginHorizontal: theme.spacing.paddingHorizontal,
168
+ marginTop: theme.spacing.gap,
169
+ backgroundColor: theme.colors.borderFocused,
170
+ borderRadius: theme.spacing.borderRadius,
171
+ paddingVertical: theme.spacing.paddingVertical * 0.8,
172
+ alignItems: 'center'
173
+ },
174
+ confirmButtonText: {
175
+ color: '#FFFFFF',
176
+ fontSize: theme.typography.fontSize,
177
+ fontWeight: '600'
178
+ },
179
+ // Inline presentation
180
+ inlineDropdown: {
181
+ position: 'absolute',
182
+ backgroundColor: theme.colors.background,
183
+ borderRadius: theme.spacing.borderRadius,
184
+ borderWidth: theme.spacing.borderWidth,
185
+ borderColor: theme.colors.border,
186
+ shadowColor: '#000',
187
+ shadowOffset: {
188
+ width: 0,
189
+ height: 4
190
+ },
191
+ shadowOpacity: 0.15,
192
+ shadowRadius: 8,
193
+ elevation: 6,
194
+ overflow: 'hidden',
195
+ zIndex: 50
196
+ }
197
+ });
198
+ }
199
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_styles","createDropdownStyles","theme","state","StyleSheet","create","wrapper","marginBottom","spacing","gap","label","fontSize","typography","labelFontSize","color","labelColorFor","fontWeight","trigger","flexDirection","alignItems","backgroundColor","colors","backgroundDisabled","background","borderRadius","borderWidth","borderWidthFocused","borderColor","borderColorFor","paddingHorizontal","minHeight","paddingVertical","triggerText","flex","text","placeholderText","placeholder","footerRow","justifyContent","marginTop","errorText","helperFontSize","error","flexShrink","helperText","backdrop","bottomSheetWrapper","popupWrapper","sheetCard","borderTopLeftRadius","borderTopRightRadius","paddingTop","paddingBottom","popupCard","width","maxHeight","dragHandle","alignSelf","height","border","modalHeader","borderBottomWidth","borderBottomColor","modalTitle","modalClearButton","borderFocused","searchWrapper","searchInput","optionRow","optionLabel","optionLabelSelected","optionLabelDisabled","optionDescription","checkbox","checkboxChecked","emptyText","textAlign","confirmButton","marginHorizontal","confirmButtonText","inlineDropdown","position","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","overflow","zIndex"],"sourceRoot":"../../../../src","sources":["components/FieldFlowDropdown/styles.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["components/FieldFlowDropdown/types.ts"],"mappings":"","ignoreList":[]}
@@ -345,6 +345,41 @@ function FieldFlowIcon({
345
345
  })
346
346
  })
347
347
  });
348
+ case 'chevronDown':
349
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
350
+ style: [box, style],
351
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
352
+ style: {
353
+ width: size * 0.55,
354
+ height: stroke,
355
+ backgroundColor: color,
356
+ borderRadius: stroke,
357
+ transform: [{
358
+ rotate: '45deg'
359
+ }, {
360
+ translateX: -size * 0.13
361
+ }, {
362
+ translateY: -size * 0.02
363
+ }],
364
+ position: 'absolute'
365
+ }
366
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
367
+ style: {
368
+ width: size * 0.55,
369
+ height: stroke,
370
+ backgroundColor: color,
371
+ borderRadius: stroke,
372
+ transform: [{
373
+ rotate: '-45deg'
374
+ }, {
375
+ translateX: size * 0.13
376
+ }, {
377
+ translateY: -size * 0.02
378
+ }],
379
+ position: 'absolute'
380
+ }
381
+ })]
382
+ });
348
383
  default:
349
384
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
350
385
  style: [box, style]