@terreno/ui 0.14.2 → 0.15.1

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 (67) hide show
  1. package/dist/Badge.js +1 -0
  2. package/dist/Badge.js.map +1 -1
  3. package/dist/Banner.d.ts +8 -0
  4. package/dist/Banner.js +2 -2
  5. package/dist/Banner.js.map +1 -1
  6. package/dist/Common.d.ts +1 -0
  7. package/dist/Common.js.map +1 -1
  8. package/dist/ConsentFormScreen.js +4 -2
  9. package/dist/ConsentFormScreen.js.map +1 -1
  10. package/dist/DismissButton.js +3 -2
  11. package/dist/DismissButton.js.map +1 -1
  12. package/dist/PickerSelect.js +6 -2
  13. package/dist/PickerSelect.js.map +1 -1
  14. package/dist/Signature.d.ts +9 -1
  15. package/dist/Signature.js +121 -18
  16. package/dist/Signature.js.map +1 -1
  17. package/dist/Signature.native.d.ts +16 -0
  18. package/dist/Signature.native.js +119 -23
  19. package/dist/Signature.native.js.map +1 -1
  20. package/dist/SignatureField.d.ts +1 -1
  21. package/dist/SignatureField.js +2 -2
  22. package/dist/SignatureField.js.map +1 -1
  23. package/dist/SignatureSizing.d.ts +3 -0
  24. package/dist/SignatureSizing.js +9 -0
  25. package/dist/SignatureSizing.js.map +1 -0
  26. package/dist/TapToEdit.js +1 -1
  27. package/dist/TapToEdit.js.map +1 -1
  28. package/dist/Toast.d.ts +4 -4
  29. package/dist/Toast.js.map +1 -1
  30. package/dist/index.d.ts +1 -1
  31. package/dist/index.js +1 -1
  32. package/dist/index.js.map +1 -1
  33. package/package.json +2 -4
  34. package/src/Badge.test.tsx +7 -0
  35. package/src/Badge.tsx +1 -0
  36. package/src/Banner.test.tsx +23 -3
  37. package/src/Banner.tsx +3 -3
  38. package/src/Common.ts +1 -0
  39. package/src/ConsentFormScreen.test.tsx +15 -0
  40. package/src/ConsentFormScreen.tsx +21 -4
  41. package/src/DateTimeField.test.tsx +226 -0
  42. package/src/DismissButton.tsx +4 -3
  43. package/src/Field.test.tsx +23 -0
  44. package/src/IconButton.tsx +2 -2
  45. package/src/PickerSelect.test.tsx +22 -0
  46. package/src/PickerSelect.tsx +24 -8
  47. package/src/Signature.native.test.tsx +9 -0
  48. package/src/Signature.native.tsx +152 -33
  49. package/src/Signature.test.tsx +324 -39
  50. package/src/Signature.tsx +171 -22
  51. package/src/SignatureField.test.tsx +0 -9
  52. package/src/SignatureField.tsx +2 -0
  53. package/src/SignatureSizing.ts +10 -0
  54. package/src/TapToEdit.test.tsx +33 -0
  55. package/src/TapToEdit.tsx +1 -1
  56. package/src/Toast.tsx +5 -3
  57. package/src/ToastNotifications.test.tsx +74 -1
  58. package/src/__snapshots__/CustomSelectField.test.tsx.snap +5 -4
  59. package/src/__snapshots__/DismissButton.test.tsx.snap +9 -3
  60. package/src/__snapshots__/Field.test.tsx.snap +379 -0
  61. package/src/__snapshots__/PickerSelect.test.tsx.snap +5 -4
  62. package/src/__snapshots__/SegmentedControl.test.tsx.snap +9 -0
  63. package/src/__snapshots__/SelectField.test.tsx.snap +5 -4
  64. package/src/__snapshots__/Signature.test.tsx.snap +15 -3
  65. package/src/__snapshots__/SignatureField.test.tsx.snap +12 -3
  66. package/src/bunSetup.ts +0 -15
  67. package/src/index.tsx +1 -1
@@ -375,4 +375,37 @@ describe("TapToEdit - additional function coverage", () => {
375
375
  });
376
376
  expect(queryByText("Save")).toBeTruthy();
377
377
  });
378
+
379
+ it("renders textarea in editing mode with grow and row defaults", async () => {
380
+ const setValue = mock(() => {});
381
+ const {getByLabelText, queryByText} = renderWithTheme(
382
+ <TapToEdit setValue={setValue} title="Notes" type="textarea" value="Some notes" />
383
+ );
384
+ await act(async () => {
385
+ fireEvent.press(getByLabelText("Edit"));
386
+ });
387
+ expect(queryByText("Save")).toBeTruthy();
388
+ expect(queryByText("Cancel")).toBeTruthy();
389
+ });
390
+
391
+ it("hides helperText in title when onlyShowHelperTextWhileEditing is true (default)", () => {
392
+ const {queryByText} = renderWithTheme(
393
+ <TapToEdit
394
+ editable={false}
395
+ helperText="Should be hidden in title"
396
+ title="Field"
397
+ value="val"
398
+ />
399
+ );
400
+ expect(queryByText("Field")).toBeTruthy();
401
+ expect(queryByText("Should be hidden in title")).toBeNull();
402
+ });
403
+
404
+ it("renders non-editable textarea with display value below title", () => {
405
+ const {getByText} = renderWithTheme(
406
+ <TapToEdit editable={false} title="Bio" type="textarea" value="A long bio text" />
407
+ );
408
+ expect(getByText("Bio")).toBeTruthy();
409
+ expect(getByText("A long bio text")).toBeTruthy();
410
+ });
378
411
  });
package/src/TapToEdit.tsx CHANGED
@@ -116,7 +116,7 @@ export const TapToEdit: FC<TapToEditProps> = ({
116
116
  }
117
117
  : undefined
118
118
  }
119
- onChange={setValue ?? (() => {})}
119
+ onChange={setValue as NonNullable<typeof setValue>}
120
120
  row={fieldProps?.type === "textarea" ? 5 : undefined}
121
121
  type={(fieldProps?.type ?? "text") as NonNullable<FieldProps["type"]>}
122
122
  value={value}
package/src/Toast.tsx CHANGED
@@ -11,15 +11,17 @@ import {isAPIError, printAPIError} from "./Utilities";
11
11
 
12
12
  const TOAST_DURATION_MS = 3 * 1000;
13
13
 
14
- type UseToastVariantOptions = {
14
+ interface UseToastVariantOptions {
15
15
  persistent?: ToastProps["persistent"];
16
16
  secondary?: ToastProps["secondary"];
17
17
  size?: ToastProps["size"];
18
18
  onDismiss?: ToastProps["onDismiss"];
19
19
  subtitle?: ToastProps["subtitle"];
20
- };
20
+ }
21
21
 
22
- type UseToastOptions = {variant?: ToastProps["variant"]} & UseToastVariantOptions;
22
+ interface UseToastOptions extends UseToastVariantOptions {
23
+ variant?: ToastProps["variant"];
24
+ }
23
25
 
24
26
  export const useToast = (): {
25
27
  hide: (id: string) => void;
@@ -3,7 +3,7 @@ import {act, render, waitFor} from "@testing-library/react-native";
3
3
  import React from "react";
4
4
  import {Text} from "react-native";
5
5
 
6
- import {
6
+ import ToastContainer, {
7
7
  GlobalToast,
8
8
  type ToastContainerRef,
9
9
  type ToastOptions,
@@ -2260,4 +2260,77 @@ describe("ToastNotifications", () => {
2260
2260
  }
2261
2261
  });
2262
2262
  });
2263
+
2264
+ describe("update map callback with toast in state", () => {
2265
+ it("should invoke the map callback inside update when toasts exist", async () => {
2266
+ let toastRef: ToastType | null = null;
2267
+
2268
+ const TestComponent = () => {
2269
+ const toast = useToastNotifications();
2270
+ toastRef = toast;
2271
+ return <Text>Test</Text>;
2272
+ };
2273
+
2274
+ render(
2275
+ <ToastProvider swipeEnabled={false}>
2276
+ <TestComponent />
2277
+ </ToastProvider>
2278
+ );
2279
+
2280
+ await waitFor(() => {
2281
+ expect(toastRef?.show).toBeDefined();
2282
+ });
2283
+
2284
+ await act(async () => {
2285
+ toastRef?.show("Original", {duration: 0, id: "update-map-test"});
2286
+ });
2287
+
2288
+ // Flush RAF so the toast is actually in state before calling update
2289
+ for (let i = 0; i < 5; i++) {
2290
+ await act(async () => {
2291
+ await new Promise((resolve) => setTimeout(resolve, 50));
2292
+ });
2293
+ }
2294
+
2295
+ // Now update — the map callback will iterate over the non-empty toasts array
2296
+ await act(async () => {
2297
+ toastRef?.update("update-map-test", "Updated");
2298
+ });
2299
+
2300
+ await act(async () => {
2301
+ await new Promise((resolve) => setTimeout(resolve, 50));
2302
+ });
2303
+ });
2304
+ });
2305
+
2306
+ describe("isOpen some callback with toast in state", () => {
2307
+ it("should invoke the some callback inside isOpen when toasts exist", async () => {
2308
+ // Use ToastContainer directly via ref to get the latest isOpen closure
2309
+ // (the context-based ref from ToastProvider captures stale toasts)
2310
+ const containerRef = React.createRef<ToastContainerRef>();
2311
+
2312
+ render(<ToastContainer ref={containerRef} />);
2313
+
2314
+ await waitFor(() => {
2315
+ expect(containerRef.current?.show).toBeDefined();
2316
+ });
2317
+
2318
+ await act(async () => {
2319
+ containerRef.current?.show("IsOpen test", {duration: 0, id: "isopen-some-test"});
2320
+ });
2321
+
2322
+ // Flush RAF so the toast is actually in state
2323
+ for (let i = 0; i < 5; i++) {
2324
+ await act(async () => {
2325
+ await new Promise((resolve) => setTimeout(resolve, 50));
2326
+ });
2327
+ }
2328
+
2329
+ // Now isOpen — the some callback will iterate over the non-empty toasts array.
2330
+ // Using the ref directly ensures we get the latest isOpen with updated toasts.
2331
+ await waitFor(() => {
2332
+ expect(containerRef.current?.isOpen("isopen-some-test")).toBe(true);
2333
+ });
2334
+ });
2335
+ });
2263
2336
  });
@@ -1710,16 +1710,17 @@ exports[`CustomSelectField renders disabled state 1`] = `
1710
1710
  "children": [
1711
1711
  {
1712
1712
  "$$typeof": Symbol(react.test.json),
1713
- "children": null,
1713
+ "children": [
1714
+ "Option A",
1715
+ ],
1714
1716
  "props": {
1715
- "readOnly": true,
1716
1717
  "style": {
1717
1718
  "color": "#686868",
1719
+ "flex": 1,
1718
1720
  },
1719
1721
  "testID": "text_input",
1720
- "value": "Option A",
1721
1722
  },
1722
- "type": "TextInput",
1723
+ "type": "Text",
1723
1724
  },
1724
1725
  {
1725
1726
  "$$typeof": Symbol(react.test.json),
@@ -8,7 +8,9 @@ exports[`DismissButton renders correctly with default props 1`] = `
8
8
  "$$typeof": Symbol(react.test.json),
9
9
  "children": null,
10
10
  "props": {
11
- "style": undefined,
11
+ "onPointerEnter": [Function: AsyncFunction],
12
+ "onPointerLeave": [Function: AsyncFunction],
13
+ "style": {},
12
14
  "testID": undefined,
13
15
  },
14
16
  "type": "View",
@@ -38,7 +40,9 @@ exports[`DismissButton renders with primary color (default) 1`] = `
38
40
  "$$typeof": Symbol(react.test.json),
39
41
  "children": null,
40
42
  "props": {
41
- "style": undefined,
43
+ "onPointerEnter": [Function: AsyncFunction],
44
+ "onPointerLeave": [Function: AsyncFunction],
45
+ "style": {},
42
46
  "testID": undefined,
43
47
  },
44
48
  "type": "View",
@@ -68,7 +72,9 @@ exports[`DismissButton renders with inverted color 1`] = `
68
72
  "$$typeof": Symbol(react.test.json),
69
73
  "children": null,
70
74
  "props": {
71
- "style": undefined,
75
+ "onPointerEnter": [Function: AsyncFunction],
76
+ "onPointerLeave": [Function: AsyncFunction],
77
+ "style": {},
72
78
  "testID": undefined,
73
79
  },
74
80
  "type": "View",
@@ -4666,3 +4666,382 @@ exports[`Field renders phoneNumber field 1`] = `
4666
4666
  "type": "View",
4667
4667
  }
4668
4668
  `;
4669
+
4670
+ exports[`Field renders customSelect field 1`] = `
4671
+ {
4672
+ "$$typeof": Symbol(react.test.json),
4673
+ "children": [
4674
+ {
4675
+ "$$typeof": Symbol(react.test.json),
4676
+ "children": [
4677
+ {
4678
+ "$$typeof": Symbol(react.test.json),
4679
+ "children": [
4680
+ {
4681
+ "$$typeof": Symbol(react.test.json),
4682
+ "children": [
4683
+ {
4684
+ "$$typeof": Symbol(react.test.json),
4685
+ "children": [
4686
+ {
4687
+ "$$typeof": Symbol(react.test.json),
4688
+ "children": [
4689
+ {
4690
+ "$$typeof": Symbol(react.test.json),
4691
+ "children": null,
4692
+ "props": {
4693
+ "readOnly": true,
4694
+ "style": {
4695
+ "color": "#1C1C1C",
4696
+ },
4697
+ "testID": "text_input",
4698
+ "value": "Option A",
4699
+ },
4700
+ "type": "TextInput",
4701
+ },
4702
+ {
4703
+ "$$typeof": Symbol(react.test.json),
4704
+ "children": null,
4705
+ "props": {
4706
+ "style": {
4707
+ "pointerEvents": "none",
4708
+ },
4709
+ "testID": "icon_container",
4710
+ },
4711
+ "type": "View",
4712
+ },
4713
+ ],
4714
+ "props": {
4715
+ "style": {
4716
+ "flexDirection": "row",
4717
+ "justifyContent": "space-between",
4718
+ "pointerEvents": "box-only",
4719
+ "width": "100%",
4720
+ },
4721
+ "testID": undefined,
4722
+ },
4723
+ "type": "View",
4724
+ },
4725
+ ],
4726
+ "props": {
4727
+ "onPress": [Function],
4728
+ "style": {
4729
+ "alignItems": "center",
4730
+ "flexDirection": "row",
4731
+ "justifyContent": "center",
4732
+ "minHeight": 40,
4733
+ "width": "95%",
4734
+ },
4735
+ "testID": "ios_touchable_wrapper",
4736
+ },
4737
+ "type": "Pressable",
4738
+ },
4739
+ {
4740
+ "$$typeof": Symbol(react.test.json),
4741
+ "children": [
4742
+ {
4743
+ "$$typeof": Symbol(react.test.json),
4744
+ "children": null,
4745
+ "props": {
4746
+ "aria-role": "button",
4747
+ "onPress": [Function],
4748
+ "style": {
4749
+ "flex": 1,
4750
+ },
4751
+ "testID": "ios_modal_top",
4752
+ },
4753
+ "type": "Pressable",
4754
+ },
4755
+ {
4756
+ "$$typeof": Symbol(react.test.json),
4757
+ "children": [
4758
+ {
4759
+ "$$typeof": Symbol(react.test.json),
4760
+ "children": null,
4761
+ "props": {
4762
+ "style": {
4763
+ "flexDirection": "row",
4764
+ },
4765
+ "testID": undefined,
4766
+ },
4767
+ "type": "View",
4768
+ },
4769
+ {
4770
+ "$$typeof": Symbol(react.test.json),
4771
+ "children": [
4772
+ {
4773
+ "$$typeof": Symbol(react.test.json),
4774
+ "children": [
4775
+ {
4776
+ "$$typeof": Symbol(react.test.json),
4777
+ "children": [
4778
+ "Done",
4779
+ ],
4780
+ "props": {
4781
+ "allowFontScaling": false,
4782
+ "style": [
4783
+ {
4784
+ "color": "#007aff",
4785
+ "fontSize": 17,
4786
+ "fontWeight": "600",
4787
+ "paddingRight": 11,
4788
+ "paddingTop": 1,
4789
+ },
4790
+ {},
4791
+ ],
4792
+ "testID": "done_text",
4793
+ },
4794
+ "type": "Text",
4795
+ },
4796
+ ],
4797
+ "props": {
4798
+ "style": undefined,
4799
+ "testID": "needed_for_touchable",
4800
+ },
4801
+ "type": "View",
4802
+ },
4803
+ ],
4804
+ "props": {
4805
+ "hitSlop": {
4806
+ "bottom": 4,
4807
+ "left": 4,
4808
+ "right": 4,
4809
+ "top": 4,
4810
+ },
4811
+ "onPress": [Function],
4812
+ "onPressIn": [Function],
4813
+ "onPressOut": [Function],
4814
+ "testID": "done_button",
4815
+ },
4816
+ "type": "Pressable",
4817
+ },
4818
+ ],
4819
+ "props": {
4820
+ "style": {
4821
+ "alignItems": "center",
4822
+ "backgroundColor": "#f8f8f8",
4823
+ "borderTopColor": "#dedede",
4824
+ "borderTopWidth": 1,
4825
+ "flexDirection": "row",
4826
+ "height": 45,
4827
+ "justifyContent": "space-between",
4828
+ "paddingHorizontal": 10,
4829
+ "zIndex": 2,
4830
+ },
4831
+ "testID": "input_accessory_view",
4832
+ },
4833
+ "type": "View",
4834
+ },
4835
+ {
4836
+ "$$typeof": Symbol(react.test.json),
4837
+ "children": [
4838
+ {
4839
+ "$$typeof": Symbol(react.test.json),
4840
+ "children": [
4841
+ {
4842
+ "$$typeof": Symbol(react.test.json),
4843
+ "children": null,
4844
+ "props": {
4845
+ "color": undefined,
4846
+ "label": "Please select an option.",
4847
+ "value": "",
4848
+ },
4849
+ "type": "Picker.Item",
4850
+ },
4851
+ {
4852
+ "$$typeof": Symbol(react.test.json),
4853
+ "children": null,
4854
+ "props": {
4855
+ "color": undefined,
4856
+ "label": "Option A",
4857
+ "value": "a",
4858
+ },
4859
+ "type": "Picker.Item",
4860
+ },
4861
+ {
4862
+ "$$typeof": Symbol(react.test.json),
4863
+ "children": null,
4864
+ "props": {
4865
+ "color": undefined,
4866
+ "label": "Option B",
4867
+ "value": "b",
4868
+ },
4869
+ "type": "Picker.Item",
4870
+ },
4871
+ {
4872
+ "$$typeof": Symbol(react.test.json),
4873
+ "children": null,
4874
+ "props": {
4875
+ "color": undefined,
4876
+ "label": "Custom",
4877
+ "value": "custom",
4878
+ },
4879
+ "type": "Picker.Item",
4880
+ },
4881
+ ],
4882
+ "props": {
4883
+ "onValueChange": [Function],
4884
+ "selectedValue": "a",
4885
+ "testID": "ios_picker",
4886
+ },
4887
+ "type": "Picker",
4888
+ },
4889
+ ],
4890
+ "props": {
4891
+ "style": [
4892
+ {
4893
+ "backgroundColor": "#d0d4da",
4894
+ "justifyContent": "center",
4895
+ },
4896
+ {
4897
+ "height": 215,
4898
+ },
4899
+ ],
4900
+ "testID": undefined,
4901
+ },
4902
+ "type": "View",
4903
+ },
4904
+ ],
4905
+ "props": {
4906
+ "animationType": undefined,
4907
+ "onOrientationChange": [Function],
4908
+ "supportedOrientations": [
4909
+ "portrait",
4910
+ "landscape",
4911
+ ],
4912
+ "testID": "ios_modal",
4913
+ "transparent": true,
4914
+ "visible": false,
4915
+ },
4916
+ "type": "Modal",
4917
+ },
4918
+ ],
4919
+ "props": {
4920
+ "style": [
4921
+ {
4922
+ "alignItems": "center",
4923
+ "alignSelf": "stretch",
4924
+ "borderRadius": 4,
4925
+ "borderWidth": 1,
4926
+ "flexDirection": "row",
4927
+ "justifyContent": "center",
4928
+ "minHeight": 40,
4929
+ "width": "100%",
4930
+ },
4931
+ {
4932
+ "backgroundColor": "#FFFFFF",
4933
+ "borderColor": "#9A9A9A",
4934
+ },
4935
+ false,
4936
+ ],
4937
+ "testID": undefined,
4938
+ },
4939
+ "type": "View",
4940
+ },
4941
+ ],
4942
+ "props": {
4943
+ "style": {
4944
+ "width": "100%",
4945
+ },
4946
+ "testID": undefined,
4947
+ },
4948
+ "type": "View",
4949
+ },
4950
+ ],
4951
+ "props": {
4952
+ "accessibilityHint": "Opens a dropdown menu. Select an option, or select custom to trigger popup to input a custom value",
4953
+ "aria-label": "Select dropdown",
4954
+ "aria-role": "button",
4955
+ "style": undefined,
4956
+ "testID": undefined,
4957
+ },
4958
+ "type": "View",
4959
+ },
4960
+ ],
4961
+ "props": {
4962
+ "accessibilityHint": "Select an option or input a custom value",
4963
+ "aria-label": "Select dropdown with popup text input field",
4964
+ "aria-role": "combobox",
4965
+ "style": {
4966
+ "width": "100%",
4967
+ },
4968
+ "testID": undefined,
4969
+ },
4970
+ "type": "View",
4971
+ }
4972
+ `;
4973
+
4974
+ exports[`Field renders signature field 1`] = `
4975
+ {
4976
+ "$$typeof": Symbol(react.test.json),
4977
+ "children": [
4978
+ {
4979
+ "$$typeof": Symbol(react.test.json),
4980
+ "children": [
4981
+ {
4982
+ "$$typeof": Symbol(react.test.json),
4983
+ "children": null,
4984
+ "props": {
4985
+ "height": 180,
4986
+ "onPointerDown": [Function],
4987
+ "onPointerLeave": [Function],
4988
+ "onPointerMove": [Function],
4989
+ "onPointerUp": [Function],
4990
+ "ref": {
4991
+ "current": null,
4992
+ },
4993
+ "style": {
4994
+ "display": "block",
4995
+ "height": 180,
4996
+ "maxWidth": "100%",
4997
+ "touchAction": "none",
4998
+ "width": "100%",
4999
+ },
5000
+ "width": 300,
5001
+ },
5002
+ "type": "canvas",
5003
+ },
5004
+ ],
5005
+ "props": {
5006
+ "style": {
5007
+ "borderColor": "#9A9A9A",
5008
+ "borderWidth": 1,
5009
+ "maxWidth": 300,
5010
+ "width": "100%",
5011
+ },
5012
+ "testID": undefined,
5013
+ },
5014
+ "type": "View",
5015
+ },
5016
+ {
5017
+ "$$typeof": Symbol(react.test.json),
5018
+ "children": [
5019
+ {
5020
+ "$$typeof": Symbol(react.test.json),
5021
+ "children": [
5022
+ "Clear",
5023
+ ],
5024
+ "props": {
5025
+ "onPress": [Function],
5026
+ "style": {
5027
+ "color": "#0A7092",
5028
+ "textDecorationLine": "underline",
5029
+ },
5030
+ },
5031
+ "type": "Text",
5032
+ },
5033
+ ],
5034
+ "props": {
5035
+ "style": undefined,
5036
+ "testID": undefined,
5037
+ },
5038
+ "type": "View",
5039
+ },
5040
+ ],
5041
+ "props": {
5042
+ "style": undefined,
5043
+ "testID": undefined,
5044
+ },
5045
+ "type": "View",
5046
+ }
5047
+ `;
@@ -540,16 +540,17 @@ exports[`PickerSelect renders disabled state 1`] = `
540
540
  "children": [
541
541
  {
542
542
  "$$typeof": Symbol(react.test.json),
543
- "children": null,
543
+ "children": [
544
+ "Select an option",
545
+ ],
544
546
  "props": {
545
- "readOnly": true,
546
547
  "style": {
547
548
  "color": "#686868",
549
+ "flex": 1,
548
550
  },
549
551
  "testID": "text_input",
550
- "value": "Select an option",
551
552
  },
552
- "type": "TextInput",
553
+ "type": "Text",
553
554
  },
554
555
  {
555
556
  "$$typeof": Symbol(react.test.json),
@@ -768,6 +768,9 @@ exports[`SegmentedControl renders with badges 1`] = `
768
768
  "paddingVertical": 4,
769
769
  "width": "auto",
770
770
  },
771
+ {
772
+ "minWidth": 20,
773
+ },
771
774
  false,
772
775
  false,
773
776
  ],
@@ -859,6 +862,9 @@ exports[`SegmentedControl renders with badges 1`] = `
859
862
  "paddingVertical": 4,
860
863
  "width": "auto",
861
864
  },
865
+ {
866
+ "minWidth": 20,
867
+ },
862
868
  false,
863
869
  false,
864
870
  ],
@@ -950,6 +956,9 @@ exports[`SegmentedControl renders with badges 1`] = `
950
956
  "paddingVertical": 4,
951
957
  "width": "auto",
952
958
  },
959
+ {
960
+ "minWidth": 20,
961
+ },
953
962
  false,
954
963
  false,
955
964
  ],
@@ -1134,16 +1134,17 @@ exports[`SelectField renders disabled state 1`] = `
1134
1134
  "children": [
1135
1135
  {
1136
1136
  "$$typeof": Symbol(react.test.json),
1137
- "children": null,
1137
+ "children": [
1138
+ "Please select an option.",
1139
+ ],
1138
1140
  "props": {
1139
- "readOnly": true,
1140
1141
  "style": {
1141
1142
  "color": "#686868",
1143
+ "flex": 1,
1142
1144
  },
1143
1145
  "testID": "text_input",
1144
- "value": "Please select an option.",
1145
1146
  },
1146
- "type": "TextInput",
1147
+ "type": "Text",
1147
1148
  },
1148
1149
  {
1149
1150
  "$$typeof": Symbol(react.test.json),