@sincpro/mobile-ui 3.1.0 → 3.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.
@@ -1,8 +1,8 @@
1
1
  import { c as _c } from "react/compiler-runtime";
2
2
  import Pressable from "../primitives/Pressable.js";
3
3
  import { useTheme } from "../theme/index.js";
4
- import { useLayoutEffect, useSyncExternalStore } from "react";
5
- import { Platform, StyleSheet } from "react-native";
4
+ import { useLayoutEffect, useRef, useState, useSyncExternalStore } from "react";
5
+ import { Platform, StyleSheet, useWindowDimensions, View } from "react-native";
6
6
  import { KeyboardToolbar } from "react-native-keyboard-controller";
7
7
  import { jsx as _jsx } from "nativewind/jsx-runtime";
8
8
  /** keyboard-controller ships English labels; the app speaks Spanish. */
@@ -96,7 +96,7 @@ export function useKeyboardToolbarInset() {
96
96
  * Each KeyboardForm and each sheet is a group, so previous / next stay inside it.
97
97
  */
98
98
  export default function KeyboardToolbarHost(t0) {
99
- const $ = _c(13);
99
+ const $ = _c(21);
100
100
  const {
101
101
  doneLabel: t1,
102
102
  ios: t2,
@@ -107,67 +107,108 @@ export default function KeyboardToolbarHost(t0) {
107
107
  const android = t3 === undefined ? false : t3;
108
108
  const theme = useTheme();
109
109
  const enabled = Platform.OS === "ios" ? ios : Platform.OS === "android" ? android : false;
110
+ const {
111
+ height: windowHeight
112
+ } = useWindowDimensions();
113
+ const frame = useRef(null);
114
+ const [gap, setGap] = useState(0);
110
115
  let t4;
116
+ if ($[0] !== windowHeight) {
117
+ t4 = () => frame.current?.measureInWindow((_x, top, _width, height) => setGap(Math.max(0, windowHeight - top - height)));
118
+ $[0] = windowHeight;
119
+ $[1] = t4;
120
+ } else {
121
+ t4 = $[1];
122
+ }
123
+ const measureGap = t4;
111
124
  let t5;
112
- if ($[0] !== enabled) {
113
- t4 = () => {
125
+ let t6;
126
+ if ($[2] !== enabled) {
127
+ t5 = () => {
114
128
  publish(enabled ? TOOLBAR_HEIGHT : 0);
115
129
  return _temp;
116
130
  };
117
- t5 = [enabled];
118
- $[0] = enabled;
119
- $[1] = t4;
120
- $[2] = t5;
131
+ t6 = [enabled];
132
+ $[2] = enabled;
133
+ $[3] = t5;
134
+ $[4] = t6;
121
135
  } else {
122
- t4 = $[1];
123
- t5 = $[2];
136
+ t5 = $[3];
137
+ t6 = $[4];
124
138
  }
125
- useLayoutEffect(t4, t5);
139
+ useLayoutEffect(t5, t6);
126
140
  if (!enabled) {
127
141
  return null;
128
142
  }
129
- let t6;
130
- if ($[3] !== theme.bg.card || $[4] !== theme.bg.muted || $[5] !== theme.text.accent || $[6] !== theme.text.disabled) {
131
- t6 = {
143
+ let t7;
144
+ if ($[5] !== theme.bg.card || $[6] !== theme.bg.muted || $[7] !== theme.text.accent || $[8] !== theme.text.disabled) {
145
+ t7 = {
132
146
  primary: theme.text.accent,
133
147
  disabled: theme.text.disabled,
134
148
  background: theme.bg.card,
135
149
  ripple: theme.bg.muted
136
150
  };
137
- $[3] = theme.bg.card;
138
- $[4] = theme.bg.muted;
139
- $[5] = theme.text.accent;
140
- $[6] = theme.text.disabled;
141
- $[7] = t6;
151
+ $[5] = theme.bg.card;
152
+ $[6] = theme.bg.muted;
153
+ $[7] = theme.text.accent;
154
+ $[8] = theme.text.disabled;
155
+ $[9] = t7;
142
156
  } else {
143
- t6 = $[7];
157
+ t7 = $[9];
144
158
  }
145
- const colors = t6;
146
- let t7;
147
- if ($[8] !== colors) {
148
- t7 = {
159
+ const colors = t7;
160
+ let t8;
161
+ if ($[10] !== gap) {
162
+ t8 = {
163
+ opened: gap
164
+ };
165
+ $[10] = gap;
166
+ $[11] = t8;
167
+ } else {
168
+ t8 = $[11];
169
+ }
170
+ let t9;
171
+ if ($[12] !== colors) {
172
+ t9 = {
149
173
  light: colors,
150
174
  dark: colors
151
175
  };
152
- $[8] = colors;
153
- $[9] = t7;
176
+ $[12] = colors;
177
+ $[13] = t9;
154
178
  } else {
155
- t7 = $[9];
179
+ t9 = $[13];
156
180
  }
157
- let t8;
158
- if ($[10] !== doneLabel || $[11] !== t7) {
159
- t8 = _jsx(KeyboardToolbar, {
181
+ let t10;
182
+ if ($[14] !== doneLabel || $[15] !== t8 || $[16] !== t9) {
183
+ t10 = _jsx(KeyboardToolbar, {
160
184
  button: ToolbarButton,
161
185
  doneText: doneLabel,
162
- theme: t7
186
+ offset: t8,
187
+ theme: t9
188
+ });
189
+ $[14] = doneLabel;
190
+ $[15] = t8;
191
+ $[16] = t9;
192
+ $[17] = t10;
193
+ } else {
194
+ t10 = $[17];
195
+ }
196
+ let t11;
197
+ if ($[18] !== measureGap || $[19] !== t10) {
198
+ t11 = _jsx(View, {
199
+ onLayout: measureGap,
200
+ pointerEvents: "box-none",
201
+ ref: frame,
202
+ style: StyleSheet.absoluteFill,
203
+ children: t10
163
204
  });
164
- $[10] = doneLabel;
165
- $[11] = t7;
166
- $[12] = t8;
205
+ $[18] = measureGap;
206
+ $[19] = t10;
207
+ $[20] = t11;
167
208
  } else {
168
- t8 = $[12];
209
+ t11 = $[20];
169
210
  }
170
- return t8;
211
+ return t11;
171
212
  }
172
213
  function _temp() {
173
214
  return publish(0);
@@ -2,6 +2,7 @@ import { c as _c } from "react/compiler-runtime";
2
2
  import { FlashList } from "@shopify/flash-list";
3
3
  import Sheet from "../Dialog/Dialog.Sheet.js";
4
4
  import Icon from "../Display/Display.Icon.js";
5
+ import { ChoiceRow } from "./choice-row.js";
5
6
  import { inputTextStyle } from "./input-text.js";
6
7
  import Pressable from "../primitives/Pressable.js";
7
8
  import { useTheme } from "../theme/index.js";
@@ -19,7 +20,7 @@ const SEARCH_DELAY_MS = 250;
19
20
  * one virtualized list, the shared overlay sheet.
20
21
  */
21
22
  function PickerField(t0) {
22
- const $ = _c(100);
23
+ const $ = _c(99);
23
24
  const {
24
25
  label,
25
26
  value,
@@ -188,151 +189,127 @@ function PickerField(t0) {
188
189
  }
189
190
  const choose = t13;
190
191
  let t14;
191
- if ($[25] !== choose || $[26] !== theme.text.accent || $[27] !== value) {
192
+ if ($[25] !== choose || $[26] !== value) {
192
193
  t14 = t15 => {
193
194
  const {
194
195
  item
195
196
  } = t15;
196
- const selected = item.value === value;
197
- return _jsxs(Pressable, {
198
- accessibilityLabel: item.label,
199
- accessibilityRole: "button",
200
- accessibilityState: {
201
- selected
202
- },
203
- className: "flex-row items-center gap-3 border-b border-border-light py-3",
197
+ return _jsx(ChoiceRow, {
198
+ description: item.description,
199
+ label: item.label,
200
+ look: "list",
204
201
  onPress: () => choose(item),
205
- style: {
206
- minHeight: 48
207
- },
208
- children: [_jsxs(View, {
209
- style: {
210
- flex: 1
211
- },
212
- children: [_jsx(Typography.Text, {
213
- semibold: selected,
214
- children: item.label
215
- }), item.description ? _jsx(Typography.Text, {
216
- className: "text-text-tertiary",
217
- variant: "caption",
218
- children: item.description
219
- }) : null]
220
- }), selected ? _jsx(Icon, {
221
- color: theme.text.accent,
222
- name: "check",
223
- size: 18
224
- }) : null]
202
+ selected: item.value === value
225
203
  });
226
204
  };
227
205
  $[25] = choose;
228
- $[26] = theme.text.accent;
229
- $[27] = value;
230
- $[28] = t14;
206
+ $[26] = value;
207
+ $[27] = t14;
231
208
  } else {
232
- t14 = $[28];
209
+ t14 = $[27];
233
210
  }
234
211
  const renderOption = t14;
235
212
  let t15;
236
- if ($[29] !== className) {
213
+ if ($[28] !== className) {
237
214
  t15 = cn("gap-1", className);
238
- $[29] = className;
239
- $[30] = t15;
215
+ $[28] = className;
216
+ $[29] = t15;
240
217
  } else {
241
- t15 = $[30];
218
+ t15 = $[29];
242
219
  }
243
220
  let t16;
244
- if ($[31] !== label) {
221
+ if ($[30] !== label) {
245
222
  t16 = _jsx(Typography.Text, {
246
223
  className: "text-text-primary",
247
224
  semibold: true,
248
225
  variant: "bodySmall",
249
226
  children: label
250
227
  });
251
- $[31] = label;
252
- $[32] = t16;
228
+ $[30] = label;
229
+ $[31] = t16;
253
230
  } else {
254
- t16 = $[32];
231
+ t16 = $[31];
255
232
  }
256
233
  const t17 = `${label}: ${current ?? placeholder}`;
257
234
  let t18;
258
- if ($[33] !== disabled || $[34] !== open) {
235
+ if ($[32] !== disabled || $[33] !== open) {
259
236
  t18 = {
260
237
  disabled,
261
238
  expanded: open
262
239
  };
263
- $[33] = disabled;
264
- $[34] = open;
265
- $[35] = t18;
240
+ $[32] = disabled;
241
+ $[33] = open;
242
+ $[34] = t18;
266
243
  } else {
267
- t18 = $[35];
244
+ t18 = $[34];
268
245
  }
269
246
  let t19;
270
- if ($[36] !== startSearch) {
247
+ if ($[35] !== startSearch) {
271
248
  t19 = () => {
272
249
  setOpen(true);
273
250
  startSearch();
274
251
  };
275
- $[36] = startSearch;
276
- $[37] = t19;
252
+ $[35] = startSearch;
253
+ $[36] = t19;
277
254
  } else {
278
- t19 = $[37];
255
+ t19 = $[36];
279
256
  }
280
257
  let t20;
281
- if ($[38] === Symbol.for("react.memo_cache_sentinel")) {
258
+ if ($[37] === Symbol.for("react.memo_cache_sentinel")) {
282
259
  t20 = {
283
260
  minHeight: 48,
284
261
  minWidth: 48
285
262
  };
286
- $[38] = t20;
263
+ $[37] = t20;
287
264
  } else {
288
- t20 = $[38];
265
+ t20 = $[37];
289
266
  }
290
267
  const t21 = current ? "text-text-primary" : "text-text-tertiary";
291
268
  let t22;
292
- if ($[39] !== t21) {
269
+ if ($[38] !== t21) {
293
270
  t22 = cn("flex-1", t21);
294
- $[39] = t21;
295
- $[40] = t22;
271
+ $[38] = t21;
272
+ $[39] = t22;
296
273
  } else {
297
- t22 = $[40];
274
+ t22 = $[39];
298
275
  }
299
276
  let t23;
300
- if ($[41] === Symbol.for("react.memo_cache_sentinel")) {
277
+ if ($[40] === Symbol.for("react.memo_cache_sentinel")) {
301
278
  t23 = {
302
279
  paddingVertical: 12
303
280
  };
304
- $[41] = t23;
281
+ $[40] = t23;
305
282
  } else {
306
- t23 = $[41];
283
+ t23 = $[40];
307
284
  }
308
285
  const t24 = current ?? placeholder;
309
286
  let t25;
310
- if ($[42] !== t22 || $[43] !== t24) {
287
+ if ($[41] !== t22 || $[42] !== t24) {
311
288
  t25 = _jsx(Typography.Text, {
312
289
  className: t22,
313
290
  style: t23,
314
291
  children: t24
315
292
  });
316
- $[42] = t22;
317
- $[43] = t24;
318
- $[44] = t25;
293
+ $[41] = t22;
294
+ $[42] = t24;
295
+ $[43] = t25;
319
296
  } else {
320
- t25 = $[44];
297
+ t25 = $[43];
321
298
  }
322
299
  let t26;
323
- if ($[45] !== theme.icon.secondary) {
300
+ if ($[44] !== theme.icon.secondary) {
324
301
  t26 = _jsx(Icon, {
325
302
  color: theme.icon.secondary,
326
303
  name: "search",
327
304
  size: 18
328
305
  });
329
- $[45] = theme.icon.secondary;
330
- $[46] = t26;
306
+ $[44] = theme.icon.secondary;
307
+ $[45] = t26;
331
308
  } else {
332
- t26 = $[46];
309
+ t26 = $[45];
333
310
  }
334
311
  let t27;
335
- if ($[47] !== disabled || $[48] !== t17 || $[49] !== t18 || $[50] !== t19 || $[51] !== t25 || $[52] !== t26) {
312
+ if ($[46] !== disabled || $[47] !== t17 || $[48] !== t18 || $[49] !== t19 || $[50] !== t25 || $[51] !== t26) {
336
313
  t27 = _jsxs(Pressable, {
337
314
  accessibilityHint: "Abre la b\xFAsqueda de opciones",
338
315
  accessibilityLabel: t17,
@@ -344,69 +321,69 @@ function PickerField(t0) {
344
321
  style: t20,
345
322
  children: [t25, t26]
346
323
  });
347
- $[47] = disabled;
348
- $[48] = t17;
349
- $[49] = t18;
350
- $[50] = t19;
351
- $[51] = t25;
352
- $[52] = t26;
353
- $[53] = t27;
324
+ $[46] = disabled;
325
+ $[47] = t17;
326
+ $[48] = t18;
327
+ $[49] = t19;
328
+ $[50] = t25;
329
+ $[51] = t26;
330
+ $[52] = t27;
354
331
  } else {
355
- t27 = $[53];
332
+ t27 = $[52];
356
333
  }
357
334
  let t28;
358
- if ($[54] !== error) {
335
+ if ($[53] !== error) {
359
336
  t28 = error ? _jsx(Typography.Text, {
360
337
  accessibilityLiveRegion: "polite",
361
338
  className: "text-danger",
362
339
  children: error
363
340
  }) : null;
364
- $[54] = error;
365
- $[55] = t28;
341
+ $[53] = error;
342
+ $[54] = t28;
366
343
  } else {
367
- t28 = $[55];
344
+ t28 = $[54];
368
345
  }
369
346
  let t29;
370
- if ($[56] === Symbol.for("react.memo_cache_sentinel")) {
347
+ if ($[55] === Symbol.for("react.memo_cache_sentinel")) {
371
348
  t29 = ["90%"];
372
- $[56] = t29;
349
+ $[55] = t29;
373
350
  } else {
374
- t29 = $[56];
351
+ t29 = $[55];
375
352
  }
376
353
  const t30 = testID ? `${testID}-sheet` : undefined;
377
354
  const t31 = title ?? label;
378
355
  let t32;
379
- if ($[57] === Symbol.for("react.memo_cache_sentinel")) {
356
+ if ($[56] === Symbol.for("react.memo_cache_sentinel")) {
380
357
  t32 = {
381
358
  flex: 1,
382
359
  gap: 8
383
360
  };
384
- $[57] = t32;
361
+ $[56] = t32;
385
362
  } else {
386
- t32 = $[57];
363
+ t32 = $[56];
387
364
  }
388
365
  const t33 = theme.text.tertiary;
389
366
  const t34 = theme.primary;
390
367
  let t35;
391
- if ($[58] === Symbol.for("react.memo_cache_sentinel")) {
368
+ if ($[57] === Symbol.for("react.memo_cache_sentinel")) {
392
369
  t35 = inputTextStyle();
393
- $[58] = t35;
370
+ $[57] = t35;
394
371
  } else {
395
- t35 = $[58];
372
+ t35 = $[57];
396
373
  }
397
374
  let t36;
398
- if ($[59] !== theme.text.primary) {
375
+ if ($[58] !== theme.text.primary) {
399
376
  t36 = [t35, {
400
377
  color: theme.text.primary
401
378
  }];
402
- $[59] = theme.text.primary;
403
- $[60] = t36;
379
+ $[58] = theme.text.primary;
380
+ $[59] = t36;
404
381
  } else {
405
- t36 = $[60];
382
+ t36 = $[59];
406
383
  }
407
384
  const t37 = testID ? `${testID}-search` : undefined;
408
385
  let t38;
409
- if ($[61] !== query || $[62] !== searchPlaceholder || $[63] !== t36 || $[64] !== t37 || $[65] !== theme.primary || $[66] !== theme.text.tertiary || $[67] !== updateQuery) {
386
+ if ($[60] !== query || $[61] !== searchPlaceholder || $[62] !== t36 || $[63] !== t37 || $[64] !== theme.primary || $[65] !== theme.text.tertiary || $[66] !== updateQuery) {
410
387
  t38 = _jsx(TextInput, {
411
388
  accessibilityLabel: searchPlaceholder,
412
389
  autoCorrect: false,
@@ -421,72 +398,72 @@ function PickerField(t0) {
421
398
  underlineColorAndroid: "transparent",
422
399
  value: query
423
400
  });
424
- $[61] = query;
425
- $[62] = searchPlaceholder;
426
- $[63] = t36;
427
- $[64] = t37;
428
- $[65] = theme.primary;
429
- $[66] = theme.text.tertiary;
430
- $[67] = updateQuery;
431
- $[68] = t38;
401
+ $[60] = query;
402
+ $[61] = searchPlaceholder;
403
+ $[62] = t36;
404
+ $[63] = t37;
405
+ $[64] = theme.primary;
406
+ $[65] = theme.text.tertiary;
407
+ $[66] = updateQuery;
408
+ $[67] = t38;
432
409
  } else {
433
- t38 = $[68];
410
+ t38 = $[67];
434
411
  }
435
412
  let t39;
436
- if ($[69] !== loading || $[70] !== theme.primary) {
413
+ if ($[68] !== loading || $[69] !== theme.primary) {
437
414
  t39 = loading ? _jsx(ActivityIndicator, {
438
415
  color: theme.primary
439
416
  }) : null;
440
- $[69] = loading;
441
- $[70] = theme.primary;
442
- $[71] = t39;
417
+ $[68] = loading;
418
+ $[69] = theme.primary;
419
+ $[70] = t39;
443
420
  } else {
444
- t39 = $[71];
421
+ t39 = $[70];
445
422
  }
446
423
  let t40;
447
- if ($[72] !== failure) {
424
+ if ($[71] !== failure) {
448
425
  t40 = failure ? _jsx(Typography.Text, {
449
426
  accessibilityRole: "alert",
450
427
  className: "text-danger",
451
428
  children: failure
452
429
  }) : null;
453
- $[72] = failure;
454
- $[73] = t40;
430
+ $[71] = failure;
431
+ $[72] = t40;
455
432
  } else {
456
- t40 = $[73];
433
+ t40 = $[72];
457
434
  }
458
435
  let t41;
459
- if ($[74] !== emptyLabel || $[75] !== loading) {
436
+ if ($[73] !== emptyLabel || $[74] !== loading) {
460
437
  t41 = loading ? null : _jsx(Typography.Text, {
461
438
  className: "py-6 text-center text-text-tertiary",
462
439
  children: emptyLabel
463
440
  });
464
- $[74] = emptyLabel;
465
- $[75] = loading;
466
- $[76] = t41;
441
+ $[73] = emptyLabel;
442
+ $[74] = loading;
443
+ $[75] = t41;
467
444
  } else {
468
- t41 = $[76];
445
+ t41 = $[75];
469
446
  }
470
447
  let t42;
471
- if ($[77] === Symbol.for("react.memo_cache_sentinel")) {
448
+ if ($[76] === Symbol.for("react.memo_cache_sentinel")) {
472
449
  t42 = {
473
450
  disabled: true
474
451
  };
475
- $[77] = t42;
452
+ $[76] = t42;
476
453
  } else {
477
- t42 = $[77];
454
+ t42 = $[76];
478
455
  }
479
456
  let t43;
480
- if ($[78] === Symbol.for("react.memo_cache_sentinel")) {
457
+ if ($[77] === Symbol.for("react.memo_cache_sentinel")) {
481
458
  t43 = {
482
459
  flex: 1
483
460
  };
484
- $[78] = t43;
461
+ $[77] = t43;
485
462
  } else {
486
- t43 = $[78];
463
+ t43 = $[77];
487
464
  }
488
465
  let t44;
489
- if ($[79] !== renderOption || $[80] !== results || $[81] !== t41) {
466
+ if ($[78] !== renderOption || $[79] !== results || $[80] !== t41) {
490
467
  t44 = _jsx(FlashList, {
491
468
  data: results,
492
469
  keyboardDismissMode: "on-drag",
@@ -497,29 +474,29 @@ function PickerField(t0) {
497
474
  renderItem: renderOption,
498
475
  style: t43
499
476
  });
500
- $[79] = renderOption;
501
- $[80] = results;
502
- $[81] = t41;
503
- $[82] = t44;
477
+ $[78] = renderOption;
478
+ $[79] = results;
479
+ $[80] = t41;
480
+ $[81] = t44;
504
481
  } else {
505
- t44 = $[82];
482
+ t44 = $[81];
506
483
  }
507
484
  let t45;
508
- if ($[83] !== t38 || $[84] !== t39 || $[85] !== t40 || $[86] !== t44) {
485
+ if ($[82] !== t38 || $[83] !== t39 || $[84] !== t40 || $[85] !== t44) {
509
486
  t45 = _jsxs(View, {
510
487
  style: t32,
511
488
  children: [t38, t39, t40, t44]
512
489
  });
513
- $[83] = t38;
514
- $[84] = t39;
515
- $[85] = t40;
516
- $[86] = t44;
517
- $[87] = t45;
490
+ $[82] = t38;
491
+ $[83] = t39;
492
+ $[84] = t40;
493
+ $[85] = t44;
494
+ $[86] = t45;
518
495
  } else {
519
- t45 = $[87];
496
+ t45 = $[86];
520
497
  }
521
498
  let t46;
522
- if ($[88] !== open || $[89] !== t30 || $[90] !== t31 || $[91] !== t45) {
499
+ if ($[87] !== open || $[88] !== t30 || $[89] !== t31 || $[90] !== t45) {
523
500
  t46 = _jsx(Sheet, {
524
501
  onClose: close,
525
502
  scrollable: false,
@@ -529,30 +506,30 @@ function PickerField(t0) {
529
506
  visible: open,
530
507
  children: t45
531
508
  });
532
- $[88] = open;
533
- $[89] = t30;
534
- $[90] = t31;
535
- $[91] = t45;
536
- $[92] = t46;
509
+ $[87] = open;
510
+ $[88] = t30;
511
+ $[89] = t31;
512
+ $[90] = t45;
513
+ $[91] = t46;
537
514
  } else {
538
- t46 = $[92];
515
+ t46 = $[91];
539
516
  }
540
517
  let t47;
541
- if ($[93] !== t15 || $[94] !== t16 || $[95] !== t27 || $[96] !== t28 || $[97] !== t46 || $[98] !== testID) {
518
+ if ($[92] !== t15 || $[93] !== t16 || $[94] !== t27 || $[95] !== t28 || $[96] !== t46 || $[97] !== testID) {
542
519
  t47 = _jsxs(View, {
543
520
  className: t15,
544
521
  testID: testID,
545
522
  children: [t16, t27, t28, t46]
546
523
  });
547
- $[93] = t15;
548
- $[94] = t16;
549
- $[95] = t27;
550
- $[96] = t28;
551
- $[97] = t46;
552
- $[98] = testID;
553
- $[99] = t47;
554
- } else {
555
- t47 = $[99];
524
+ $[92] = t15;
525
+ $[93] = t16;
526
+ $[94] = t27;
527
+ $[95] = t28;
528
+ $[96] = t46;
529
+ $[97] = testID;
530
+ $[98] = t47;
531
+ } else {
532
+ t47 = $[98];
556
533
  }
557
534
  return t47;
558
535
  }
@@ -3,5 +3,6 @@ interface RadioButtonProps {
3
3
  selected: boolean;
4
4
  onPress: () => void;
5
5
  }
6
+ /** One option of a single-choice group: the same row Select and PickerField list. */
6
7
  declare function RadioButton({ label, selected, onPress }: RadioButtonProps): import("react").JSX.Element;
7
8
  export default RadioButton;