@terreno/ui 0.6.0 → 0.7.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 (41) hide show
  1. package/README.md +5 -5
  2. package/dist/Common.d.ts +1 -0
  3. package/dist/CommonIconTypes.d.ts +1 -1
  4. package/dist/FlatList.js.map +1 -1
  5. package/dist/GPTChat.d.ts +2 -1
  6. package/dist/GPTChat.js +14 -4
  7. package/dist/GPTChat.js.map +1 -1
  8. package/dist/Page.js +2 -1
  9. package/dist/Page.js.map +1 -1
  10. package/dist/ScrollView.js.map +1 -1
  11. package/dist/TextField.js +2 -2
  12. package/dist/TextField.js.map +1 -1
  13. package/dist/login/LoginScreen.js +1 -1
  14. package/dist/login/LoginScreen.js.map +1 -1
  15. package/dist/signUp/SignUpScreen.js +1 -1
  16. package/dist/signUp/SignUpScreen.js.map +1 -1
  17. package/package.json +1 -1
  18. package/src/Common.ts +1 -0
  19. package/src/CommonIconTypes.ts +1 -1
  20. package/src/FlatList.tsx +1 -0
  21. package/src/GPTChat.tsx +40 -2
  22. package/src/Page.tsx +20 -9
  23. package/src/ScrollView.tsx +1 -0
  24. package/src/TextField.tsx +2 -0
  25. package/src/__snapshots__/AddressField.test.tsx.snap +4 -0
  26. package/src/__snapshots__/CustomSelectField.test.tsx.snap +1 -0
  27. package/src/__snapshots__/EmailField.test.tsx.snap +2 -0
  28. package/src/__snapshots__/Field.test.tsx.snap +12 -0
  29. package/src/__snapshots__/MobileAddressAutoComplete.test.tsx.snap +1 -0
  30. package/src/__snapshots__/NumberField.test.tsx.snap +1 -0
  31. package/src/__snapshots__/Page.test.tsx.snap +15 -20
  32. package/src/__snapshots__/PhoneNumberField.test.tsx.snap +5 -0
  33. package/src/__snapshots__/TapToEdit.test.tsx.snap +1 -0
  34. package/src/__snapshots__/TextArea.test.tsx.snap +5 -0
  35. package/src/__snapshots__/TextField.test.tsx.snap +5 -0
  36. package/src/__snapshots__/UnifiedAddressAutoComplete.test.tsx.snap +4 -0
  37. package/src/__snapshots__/WebAddressAutocomplete.test.tsx.snap +3 -0
  38. package/src/login/LoginScreen.tsx +1 -0
  39. package/src/login/__snapshots__/LoginScreen.test.tsx.snap +2 -0
  40. package/src/signUp/SignUpScreen.tsx +1 -0
  41. package/src/signUp/__snapshots__/SignUpScreen.test.tsx.snap +3 -0
package/src/GPTChat.tsx CHANGED
@@ -103,6 +103,7 @@ export interface GPTChatProps {
103
103
  onSubmit: (prompt: string) => void;
104
104
  onUpdateTitle?: (id: string, title: string) => void;
105
105
  selectedModel?: string;
106
+ suggestedPrompts?: string[];
106
107
  systemMemory?: string;
107
108
  testID?: string;
108
109
  }
@@ -706,6 +707,7 @@ export const GPTChat = ({
706
707
  onSubmit,
707
708
  onUpdateTitle,
708
709
  selectedModel,
710
+ suggestedPrompts,
709
711
  systemMemory,
710
712
  testID,
711
713
  }: GPTChatProps): React.ReactElement => {
@@ -730,7 +732,7 @@ export const GPTChat = ({
730
732
  setInputValue("");
731
733
  }, [inputValue, isStreaming, onSubmit]);
732
734
 
733
- // On web, intercept Enter key in the chat input to submit (Shift+Enter for newline)
735
+ // On web: Enter sends, Cmd+Enter inserts a new line
734
736
  const handleSubmitRef = useRef(handleSubmit);
735
737
  handleSubmitRef.current = handleSubmit;
736
738
  useEffect(() => {
@@ -738,7 +740,7 @@ export const GPTChat = ({
738
740
  return;
739
741
  }
740
742
  const handler = (e: KeyboardEvent) => {
741
- if (e.key !== "Enter" || e.shiftKey) {
743
+ if (e.key !== "Enter") {
742
744
  return;
743
745
  }
744
746
  const target = e.target as HTMLElement | null;
@@ -746,6 +748,10 @@ export const GPTChat = ({
746
748
  if (testId !== "gpt-input") {
747
749
  return;
748
750
  }
751
+ if (e.metaKey || e.shiftKey) {
752
+ // Cmd+Enter or Shift+Enter: allow default (new line)
753
+ return;
754
+ }
749
755
  e.preventDefault();
750
756
  handleSubmitRef.current();
751
757
  };
@@ -830,6 +836,16 @@ export const GPTChat = ({
830
836
  setEditingTitle("");
831
837
  }, [editingHistoryId, editingTitle, onUpdateTitle]);
832
838
 
839
+ const handleSuggestedPrompt = useCallback(
840
+ (prompt: string) => {
841
+ if (isStreaming) {
842
+ return;
843
+ }
844
+ onSubmit(prompt);
845
+ },
846
+ [isStreaming, onSubmit]
847
+ );
848
+
833
849
  const handleOpenApiKeyModal = useCallback(() => {
834
850
  setApiKeyDraft(geminiApiKey ?? "");
835
851
  setIsApiKeyModalVisible(true);
@@ -917,6 +933,28 @@ export const GPTChat = ({
917
933
  <Box flex="grow" marginBottom={3} onLayout={handleViewportLayout}>
918
934
  <Box flex="grow" gap={3} onScroll={handleScroll} scroll={true} scrollRef={scrollViewRef}>
919
935
  <Box gap={3} onLayout={handleContentLayout}>
936
+ {currentMessages.length === 0 && suggestedPrompts && suggestedPrompts.length > 0 && (
937
+ <Box alignItems="center" gap={2} paddingY={4}>
938
+ <Text color="secondaryDark" size="sm">
939
+ Try asking...
940
+ </Text>
941
+ <Box direction="row" gap={2} wrap={true}>
942
+ {suggestedPrompts.map((prompt) => (
943
+ <Box
944
+ accessibilityHint="Send this suggested prompt"
945
+ accessibilityLabel={prompt}
946
+ border="default"
947
+ key={prompt}
948
+ onClick={() => handleSuggestedPrompt(prompt)}
949
+ padding={2}
950
+ rounding="lg"
951
+ >
952
+ <Text size="sm">{prompt}</Text>
953
+ </Box>
954
+ ))}
955
+ </Box>
956
+ </Box>
957
+ )}
920
958
  {currentMessages.map((message, index) => {
921
959
  // Tool call/result messages
922
960
  if (message.role === "tool-call" && message.toolCall) {
package/src/Page.tsx CHANGED
@@ -8,6 +8,7 @@ import {ErrorBoundary} from "./ErrorBoundary";
8
8
  import {Heading} from "./Heading";
9
9
  import {IconButton} from "./IconButton";
10
10
  import {Spinner} from "./Spinner";
11
+ import {Text} from "./Text";
11
12
 
12
13
  export class Page extends React.Component<PageProps, {}> {
13
14
  actionSheetRef: React.RefObject<any> = React.createRef();
@@ -74,15 +75,25 @@ export class Page extends React.Component<PageProps, {}> {
74
75
  width="100%"
75
76
  >
76
77
  {this.renderHeader()}
77
- {this.props.loading === true && <Spinner />}
78
- {/* <KeyboardAccessoryNavigation
79
- avoidKeyboard
80
- doneButton={true}
81
- nextButton={true}
82
- previousButton={true}
83
- /> */}
84
-
85
- {this.props.children}
78
+ {this.props.loading ? (
79
+ <Box
80
+ alignItems="center"
81
+ direction="column"
82
+ display="flex"
83
+ flex="grow"
84
+ justifyContent="center"
85
+ marginTop={8}
86
+ >
87
+ <Spinner />
88
+ {Boolean(this.props.loadingText) && (
89
+ <Box marginTop={2}>
90
+ <Text color="secondaryDark">{this.props.loadingText}</Text>
91
+ </Box>
92
+ )}
93
+ </Box>
94
+ ) : (
95
+ this.props.children
96
+ )}
86
97
  </Box>
87
98
  {Boolean(this.props.footer) && (
88
99
  <Box
@@ -1,2 +1,3 @@
1
1
  import {ScrollView} from "react-native";
2
+
2
3
  export {ScrollView};
package/src/TextField.tsx CHANGED
@@ -78,6 +78,7 @@ export const TextField: FC<TextFieldProps> = ({
78
78
  onEnter,
79
79
  onSubmitEditing,
80
80
  testID,
81
+ id,
81
82
  }) => {
82
83
  const {theme} = useTheme();
83
84
 
@@ -167,6 +168,7 @@ export const TextField: FC<TextFieldProps> = ({
167
168
  enterKeyHint={returnKeyType}
168
169
  keyboardType={keyboardType as KeyboardTypeOptions}
169
170
  multiline={multiline}
171
+ nativeID={id}
170
172
  numberOfLines={rows || 4}
171
173
  onBlur={() => {
172
174
  if (disabled) return;
@@ -41,6 +41,7 @@ exports[`AddressField renders correctly with default props 1`] = `
41
41
  "enterKeyHint": undefined,
42
42
  "keyboardType": "default",
43
43
  "multiline": undefined,
44
+ "nativeID": undefined,
44
45
  "numberOfLines": 1,
45
46
  "onBlur": [Function],
46
47
  "onChangeText": [Function],
@@ -144,6 +145,7 @@ exports[`AddressField renders correctly with default props 1`] = `
144
145
  "enterKeyHint": undefined,
145
146
  "keyboardType": "default",
146
147
  "multiline": undefined,
148
+ "nativeID": "address2",
147
149
  "numberOfLines": 1,
148
150
  "onBlur": [Function],
149
151
  "onChangeText": [Function],
@@ -247,6 +249,7 @@ exports[`AddressField renders correctly with default props 1`] = `
247
249
  "enterKeyHint": undefined,
248
250
  "keyboardType": "default",
249
251
  "multiline": undefined,
252
+ "nativeID": "city",
250
253
  "numberOfLines": 1,
251
254
  "onBlur": [Function],
252
255
  "onChangeText": [Function],
@@ -1129,6 +1132,7 @@ exports[`AddressField renders correctly with default props 1`] = `
1129
1132
  "enterKeyHint": undefined,
1130
1133
  "keyboardType": "default",
1131
1134
  "multiline": undefined,
1135
+ "nativeID": "zipcode",
1132
1136
  "numberOfLines": 1,
1133
1137
  "onBlur": [Function],
1134
1138
  "onChangeText": [Function],
@@ -1590,6 +1590,7 @@ exports[`CustomSelectField renders with custom value (not in options) 1`] = `
1590
1590
  "enterKeyHint": undefined,
1591
1591
  "keyboardType": "default",
1592
1592
  "multiline": undefined,
1593
+ "nativeID": "customOptions",
1593
1594
  "numberOfLines": 1,
1594
1595
  "onBlur": [Function],
1595
1596
  "onChangeText": [Function],
@@ -22,6 +22,7 @@ exports[`EmailField renders correctly with default props 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "email-address",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [Function],
@@ -101,6 +102,7 @@ exports[`EmailField renders with icon 1`] = `
101
102
  "enterKeyHint": undefined,
102
103
  "keyboardType": "email-address",
103
104
  "multiline": undefined,
105
+ "nativeID": undefined,
104
106
  "numberOfLines": 1,
105
107
  "onBlur": [Function],
106
108
  "onChangeText": [Function],
@@ -22,6 +22,7 @@ exports[`Field renders text field by default 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "default",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [Function],
@@ -101,6 +102,7 @@ exports[`Field renders text field with type text 1`] = `
101
102
  "enterKeyHint": undefined,
102
103
  "keyboardType": "default",
103
104
  "multiline": undefined,
105
+ "nativeID": undefined,
104
106
  "numberOfLines": 1,
105
107
  "onBlur": [Function],
106
108
  "onChangeText": [Function],
@@ -180,6 +182,7 @@ exports[`Field renders password field 1`] = `
180
182
  "enterKeyHint": undefined,
181
183
  "keyboardType": "default",
182
184
  "multiline": undefined,
185
+ "nativeID": undefined,
183
186
  "numberOfLines": 1,
184
187
  "onBlur": [Function],
185
188
  "onChangeText": [Function],
@@ -259,6 +262,7 @@ exports[`Field renders email field 1`] = `
259
262
  "enterKeyHint": undefined,
260
263
  "keyboardType": "email-address",
261
264
  "multiline": undefined,
265
+ "nativeID": undefined,
262
266
  "numberOfLines": 1,
263
267
  "onBlur": [Function],
264
268
  "onChangeText": [Function],
@@ -338,6 +342,7 @@ exports[`Field renders url field 1`] = `
338
342
  "enterKeyHint": undefined,
339
343
  "keyboardType": "url",
340
344
  "multiline": undefined,
345
+ "nativeID": undefined,
341
346
  "numberOfLines": 1,
342
347
  "onBlur": [Function],
343
348
  "onChangeText": [Function],
@@ -417,6 +422,7 @@ exports[`Field renders number field 1`] = `
417
422
  "enterKeyHint": undefined,
418
423
  "keyboardType": "default",
419
424
  "multiline": undefined,
425
+ "nativeID": undefined,
420
426
  "numberOfLines": 1,
421
427
  "onBlur": [Function],
422
428
  "onChangeText": [Function],
@@ -496,6 +502,7 @@ exports[`Field renders textarea field 1`] = `
496
502
  "enterKeyHint": undefined,
497
503
  "keyboardType": "default",
498
504
  "multiline": true,
505
+ "nativeID": undefined,
499
506
  "numberOfLines": 1,
500
507
  "onBlur": [Function],
501
508
  "onChangeText": [Function],
@@ -3275,6 +3282,7 @@ exports[`Field renders address field 1`] = `
3275
3282
  "enterKeyHint": undefined,
3276
3283
  "keyboardType": "default",
3277
3284
  "multiline": undefined,
3285
+ "nativeID": undefined,
3278
3286
  "numberOfLines": 1,
3279
3287
  "onBlur": [Function],
3280
3288
  "onChangeText": [Function],
@@ -3378,6 +3386,7 @@ exports[`Field renders address field 1`] = `
3378
3386
  "enterKeyHint": undefined,
3379
3387
  "keyboardType": "default",
3380
3388
  "multiline": undefined,
3389
+ "nativeID": "address2",
3381
3390
  "numberOfLines": 1,
3382
3391
  "onBlur": [Function],
3383
3392
  "onChangeText": [Function],
@@ -3481,6 +3490,7 @@ exports[`Field renders address field 1`] = `
3481
3490
  "enterKeyHint": undefined,
3482
3491
  "keyboardType": "default",
3483
3492
  "multiline": undefined,
3493
+ "nativeID": "city",
3484
3494
  "numberOfLines": 1,
3485
3495
  "onBlur": [Function],
3486
3496
  "onChangeText": [Function],
@@ -4363,6 +4373,7 @@ exports[`Field renders address field 1`] = `
4363
4373
  "enterKeyHint": undefined,
4364
4374
  "keyboardType": "default",
4365
4375
  "multiline": undefined,
4376
+ "nativeID": "zipcode",
4366
4377
  "numberOfLines": 1,
4367
4378
  "onBlur": [Function],
4368
4379
  "onChangeText": [Function],
@@ -4452,6 +4463,7 @@ exports[`Field renders phoneNumber field 1`] = `
4452
4463
  "enterKeyHint": undefined,
4453
4464
  "keyboardType": "number-pad",
4454
4465
  "multiline": undefined,
4466
+ "nativeID": undefined,
4455
4467
  "numberOfLines": 1,
4456
4468
  "onBlur": [Function],
4457
4469
  "onChangeText": [Function],
@@ -72,6 +72,7 @@ exports[`MobileAddressAutocomplete renders TextField fallback without Google API
72
72
  "enterKeyHint": undefined,
73
73
  "keyboardType": "default",
74
74
  "multiline": undefined,
75
+ "nativeID": "address1",
75
76
  "numberOfLines": 1,
76
77
  "onBlur": [Function],
77
78
  "onChangeText": [Function],
@@ -22,6 +22,7 @@ exports[`NumberField renders correctly with default props 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "default",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [Function],
@@ -937,27 +937,22 @@ exports[`Page renders loading state 1`] = `
937
937
  "children": [
938
938
  {
939
939
  "$$typeof": Symbol(react.test.json),
940
- "children": [
941
- {
942
- "$$typeof": Symbol(react.test.json),
943
- "children": [
944
- "Content",
945
- ],
946
- "props": {
947
- "numberOfLines": 0,
948
- "selectable": undefined,
949
- "style": {
950
- "color": "#1C1C1C",
951
- "fontFamily": "text-regular",
952
- "fontSize": 14,
953
- "textAlign": "left",
954
- },
955
- "testID": undefined,
956
- },
957
- "type": "Text",
940
+ "children": null,
941
+ "props": {
942
+ "onPointerEnter": [Function: AsyncFunction],
943
+ "onPointerLeave": [Function: AsyncFunction],
944
+ "style": {
945
+ "alignItems": "center",
946
+ "display": "flex",
947
+ "flex": undefined,
948
+ "flexDirection": "column",
949
+ "flexGrow": 1,
950
+ "flexShrink": 1,
951
+ "justifyContent": "center",
952
+ "marginTop": 48,
958
953
  },
959
- ],
960
- "props": {},
954
+ "testID": undefined,
955
+ },
961
956
  "type": "View",
962
957
  },
963
958
  ],
@@ -22,6 +22,7 @@ exports[`PhoneNumberField renders correctly with default props 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "number-pad",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [Function],
@@ -101,6 +102,7 @@ exports[`PhoneNumberField formats phone number as user types 1`] = `
101
102
  "enterKeyHint": undefined,
102
103
  "keyboardType": "number-pad",
103
104
  "multiline": undefined,
105
+ "nativeID": undefined,
104
106
  "numberOfLines": 1,
105
107
  "onBlur": [Function],
106
108
  "onChangeText": [Function],
@@ -180,6 +182,7 @@ exports[`PhoneNumberField renders with icon 1`] = `
180
182
  "enterKeyHint": undefined,
181
183
  "keyboardType": "number-pad",
182
184
  "multiline": undefined,
185
+ "nativeID": undefined,
183
186
  "numberOfLines": 1,
184
187
  "onBlur": [Function],
185
188
  "onChangeText": [Function],
@@ -268,6 +271,7 @@ exports[`PhoneNumberField uses US as default country code 1`] = `
268
271
  "enterKeyHint": undefined,
269
272
  "keyboardType": "number-pad",
270
273
  "multiline": undefined,
274
+ "nativeID": undefined,
271
275
  "numberOfLines": 1,
272
276
  "onBlur": [Function],
273
277
  "onChangeText": [Function],
@@ -347,6 +351,7 @@ exports[`PhoneNumberField accepts custom country code 1`] = `
347
351
  "enterKeyHint": undefined,
348
352
  "keyboardType": "number-pad",
349
353
  "multiline": undefined,
354
+ "nativeID": undefined,
350
355
  "numberOfLines": 1,
351
356
  "onBlur": [Function],
352
357
  "onChangeText": [Function],
@@ -462,6 +462,7 @@ exports[`TapToEdit shows editing mode when isEditing is true 1`] = `
462
462
  "enterKeyHint": undefined,
463
463
  "keyboardType": "default",
464
464
  "multiline": undefined,
465
+ "nativeID": undefined,
465
466
  "numberOfLines": 1,
466
467
  "onBlur": [Function],
467
468
  "onChangeText": [Function],
@@ -22,6 +22,7 @@ exports[`TextArea snapshots should match snapshot with default props 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "default",
24
24
  "multiline": true,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [class Function],
@@ -116,6 +117,7 @@ exports[`TextArea snapshots should match snapshot with all props 1`] = `
116
117
  "enterKeyHint": undefined,
117
118
  "keyboardType": "default",
118
119
  "multiline": true,
120
+ "nativeID": undefined,
119
121
  "numberOfLines": 5,
120
122
  "onBlur": [Function],
121
123
  "onChangeText": [class Function],
@@ -236,6 +238,7 @@ exports[`TextArea snapshots should match snapshot when disabled 1`] = `
236
238
  "enterKeyHint": undefined,
237
239
  "keyboardType": "default",
238
240
  "multiline": true,
241
+ "nativeID": undefined,
239
242
  "numberOfLines": 1,
240
243
  "onBlur": [Function],
241
244
  "onChangeText": [class Function],
@@ -369,6 +372,7 @@ exports[`TextArea snapshots should match snapshot with error state 1`] = `
369
372
  "enterKeyHint": undefined,
370
373
  "keyboardType": "default",
371
374
  "multiline": true,
375
+ "nativeID": undefined,
372
376
  "numberOfLines": 1,
373
377
  "onBlur": [Function],
374
378
  "onChangeText": [class Function],
@@ -463,6 +467,7 @@ exports[`TextArea snapshots should match snapshot with multiline content 1`] = `
463
467
  "enterKeyHint": undefined,
464
468
  "keyboardType": "default",
465
469
  "multiline": true,
470
+ "nativeID": undefined,
466
471
  "numberOfLines": 4,
467
472
  "onBlur": [Function],
468
473
  "onChangeText": [class Function],
@@ -22,6 +22,7 @@ exports[`TextField snapshots should match snapshot with default props 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "default",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [class Function],
@@ -155,6 +156,7 @@ exports[`TextField snapshots should match snapshot with all props 1`] = `
155
156
  "enterKeyHint": undefined,
156
157
  "keyboardType": "default",
157
158
  "multiline": false,
159
+ "nativeID": undefined,
158
160
  "numberOfLines": 1,
159
161
  "onBlur": [Function],
160
162
  "onChangeText": [class Function],
@@ -284,6 +286,7 @@ exports[`TextField snapshots should match snapshot when disabled 1`] = `
284
286
  "enterKeyHint": undefined,
285
287
  "keyboardType": "default",
286
288
  "multiline": undefined,
289
+ "nativeID": undefined,
287
290
  "numberOfLines": 1,
288
291
  "onBlur": [Function],
289
292
  "onChangeText": [class Function],
@@ -378,6 +381,7 @@ exports[`TextField snapshots should match snapshot with multiline 1`] = `
378
381
  "enterKeyHint": undefined,
379
382
  "keyboardType": "default",
380
383
  "multiline": true,
384
+ "nativeID": undefined,
381
385
  "numberOfLines": 3,
382
386
  "onBlur": [Function],
383
387
  "onChangeText": [class Function],
@@ -511,6 +515,7 @@ exports[`TextField snapshots should match snapshot with error state 1`] = `
511
515
  "enterKeyHint": undefined,
512
516
  "keyboardType": "default",
513
517
  "multiline": undefined,
518
+ "nativeID": undefined,
514
519
  "numberOfLines": 1,
515
520
  "onBlur": [Function],
516
521
  "onChangeText": [class Function],
@@ -37,6 +37,7 @@ exports[`UnifiedAddressAutoCompleteField renders correctly without Google API ke
37
37
  "enterKeyHint": undefined,
38
38
  "keyboardType": "default",
39
39
  "multiline": undefined,
40
+ "nativeID": undefined,
40
41
  "numberOfLines": 1,
41
42
  "onBlur": [Function],
42
43
  "onChangeText": [Function],
@@ -131,6 +132,7 @@ exports[`UnifiedAddressAutoCompleteField renders with input value 1`] = `
131
132
  "enterKeyHint": undefined,
132
133
  "keyboardType": "default",
133
134
  "multiline": undefined,
135
+ "nativeID": undefined,
134
136
  "numberOfLines": 1,
135
137
  "onBlur": [Function],
136
138
  "onChangeText": [Function],
@@ -225,6 +227,7 @@ exports[`UnifiedAddressAutoCompleteField renders disabled state 1`] = `
225
227
  "enterKeyHint": undefined,
226
228
  "keyboardType": "default",
227
229
  "multiline": undefined,
230
+ "nativeID": undefined,
228
231
  "numberOfLines": 1,
229
232
  "onBlur": [Function],
230
233
  "onChangeText": [Function],
@@ -319,6 +322,7 @@ exports[`UnifiedAddressAutoCompleteField renders with invalid Google API key (fa
319
322
  "enterKeyHint": undefined,
320
323
  "keyboardType": "default",
321
324
  "multiline": undefined,
325
+ "nativeID": undefined,
322
326
  "numberOfLines": 1,
323
327
  "onBlur": [Function],
324
328
  "onChangeText": [Function],
@@ -22,6 +22,7 @@ exports[`WebAddressAutocomplete renders correctly without Google API key 1`] = `
22
22
  "enterKeyHint": undefined,
23
23
  "keyboardType": "default",
24
24
  "multiline": undefined,
25
+ "nativeID": undefined,
25
26
  "numberOfLines": 1,
26
27
  "onBlur": [Function],
27
28
  "onChangeText": [Function],
@@ -101,6 +102,7 @@ exports[`WebAddressAutocomplete renders with input value 1`] = `
101
102
  "enterKeyHint": undefined,
102
103
  "keyboardType": "default",
103
104
  "multiline": undefined,
105
+ "nativeID": undefined,
104
106
  "numberOfLines": 1,
105
107
  "onBlur": [Function],
106
108
  "onChangeText": [Function],
@@ -180,6 +182,7 @@ exports[`WebAddressAutocomplete renders disabled state 1`] = `
180
182
  "enterKeyHint": undefined,
181
183
  "keyboardType": "default",
182
184
  "multiline": undefined,
185
+ "nativeID": undefined,
183
186
  "numberOfLines": 1,
184
187
  "onBlur": [Function],
185
188
  "onChangeText": [Function],
@@ -91,6 +91,7 @@ export const LoginScreen: FC<LoginScreenProps> = ({
91
91
  <TextField
92
92
  autoComplete={field.autoComplete}
93
93
  disabled={loading}
94
+ id={`${testID}-${field.name}-input`}
94
95
  key={field.name}
95
96
  onChange={(value: string) => handleFieldChange(field.name, value)}
96
97
  placeholder={field.placeholder ?? field.label}
@@ -85,6 +85,7 @@ exports[`LoginScreen renders correctly with all props 1`] = `
85
85
  "enterKeyHint": undefined,
86
86
  "keyboardType": "email-address",
87
87
  "multiline": undefined,
88
+ "nativeID": "login-screen-email-input",
88
89
  "numberOfLines": 1,
89
90
  "onBlur": [Function],
90
91
  "onChangeText": [Function],
@@ -176,6 +177,7 @@ exports[`LoginScreen renders correctly with all props 1`] = `
176
177
  "enterKeyHint": undefined,
177
178
  "keyboardType": "default",
178
179
  "multiline": undefined,
180
+ "nativeID": "login-screen-password-input",
179
181
  "numberOfLines": 1,
180
182
  "onBlur": [Function],
181
183
  "onChangeText": [Function],
@@ -108,6 +108,7 @@ export const SignUpScreen: FC<SignUpScreenProps> = ({
108
108
  <TextField
109
109
  autoComplete={field.autoComplete}
110
110
  disabled={loading}
111
+ id={`${testID}-${field.name}-input`}
111
112
  key={field.name}
112
113
  onChange={(value: string) => handleFieldChange(field.name, value)}
113
114
  placeholder={field.placeholder ?? field.label}
@@ -85,6 +85,7 @@ exports[`SignUpScreen renders correctly with all props 1`] = `
85
85
  "enterKeyHint": undefined,
86
86
  "keyboardType": "default",
87
87
  "multiline": undefined,
88
+ "nativeID": "signup-screen-name-input",
88
89
  "numberOfLines": 1,
89
90
  "onBlur": [Function],
90
91
  "onChangeText": [Function],
@@ -176,6 +177,7 @@ exports[`SignUpScreen renders correctly with all props 1`] = `
176
177
  "enterKeyHint": undefined,
177
178
  "keyboardType": "email-address",
178
179
  "multiline": undefined,
180
+ "nativeID": "signup-screen-email-input",
179
181
  "numberOfLines": 1,
180
182
  "onBlur": [Function],
181
183
  "onChangeText": [Function],
@@ -267,6 +269,7 @@ exports[`SignUpScreen renders correctly with all props 1`] = `
267
269
  "enterKeyHint": undefined,
268
270
  "keyboardType": "default",
269
271
  "multiline": undefined,
272
+ "nativeID": "signup-screen-password-input",
270
273
  "numberOfLines": 1,
271
274
  "onBlur": [Function],
272
275
  "onChangeText": [Function],