@multiplatform.one/forms 7.8.0 → 7.10.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 (229) hide show
  1. package/dist/cjs/Button/index.cjs +1 -1
  2. package/dist/cjs/Button/index.native.js +5 -3
  3. package/dist/cjs/Button/index.native.js.map +1 -1
  4. package/dist/cjs/InputParts/index.cjs +11 -2
  5. package/dist/cjs/InputParts/index.native.js +11 -2
  6. package/dist/cjs/InputParts/index.native.js.map +1 -1
  7. package/dist/cjs/fields/FileUpload/index.cjs +6 -0
  8. package/dist/cjs/fields/FileUpload/index.native.js +6 -0
  9. package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
  10. package/dist/cjs/fields/Icon/drawnSet.cjs +3 -1
  11. package/dist/cjs/fields/Icon/drawnSet.native.js +3 -1
  12. package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -1
  13. package/dist/cjs/fields/RadioGroup/index.cjs +34 -5
  14. package/dist/cjs/fields/RadioGroup/index.native.js +49 -7
  15. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  16. package/dist/cjs/fields/ToggleGroup/index.cjs +35 -2
  17. package/dist/cjs/fields/ToggleGroup/index.native.js +42 -2
  18. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  19. package/dist/cjs/shared/nativeA11y.cjs +57 -0
  20. package/dist/cjs/shared/nativeA11y.native.js +61 -0
  21. package/dist/cjs/shared/nativeA11y.native.js.map +1 -0
  22. package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
  23. package/dist/esm/Button/index.mjs +1 -1
  24. package/dist/esm/Button/index.mjs.map +1 -1
  25. package/dist/esm/Button/index.native.js +5 -3
  26. package/dist/esm/Button/index.native.js.map +1 -1
  27. package/dist/esm/Chip/index.native.js.map +1 -1
  28. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  29. package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  30. package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  31. package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
  32. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  33. package/dist/esm/ControlGroup/index.native.js.map +1 -1
  34. package/dist/esm/DescriptionList/index.native.js.map +1 -1
  35. package/dist/esm/ErrorSummary.native.js.map +1 -1
  36. package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
  37. package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
  38. package/dist/esm/FieldDisplay/index.native.js.map +1 -1
  39. package/dist/esm/FieldGroup.native.js.map +1 -1
  40. package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
  41. package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  42. package/dist/esm/Form/index.native.js.map +1 -1
  43. package/dist/esm/Form/validateOn.native.js.map +1 -1
  44. package/dist/esm/FormGrid.native.js.map +1 -1
  45. package/dist/esm/FormSection.native.js.map +1 -1
  46. package/dist/esm/InputParts/index.mjs +11 -2
  47. package/dist/esm/InputParts/index.mjs.map +1 -1
  48. package/dist/esm/InputParts/index.native.js +11 -2
  49. package/dist/esm/InputParts/index.native.js.map +1 -1
  50. package/dist/esm/Label/index.native.js.map +1 -1
  51. package/dist/esm/Skeleton/index.native.js.map +1 -1
  52. package/dist/esm/Spinner/SpinnerGlyph.native.js.map +1 -1
  53. package/dist/esm/Spinner/spinnerSize.native.js.map +1 -1
  54. package/dist/esm/Table/index.native.js.map +1 -1
  55. package/dist/esm/Wheel/haptic.native.js.map +1 -1
  56. package/dist/esm/Wheel/index.native.js.map +1 -1
  57. package/dist/esm/actionLabel.native.js.map +1 -1
  58. package/dist/esm/fieldDefaults.native.js.map +1 -1
  59. package/dist/esm/fieldLayout.native.js.map +1 -1
  60. package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
  61. package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
  62. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  63. package/dist/esm/fields/Barcode/qr.native.js.map +1 -1
  64. package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
  65. package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
  66. package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  67. package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  68. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  69. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  70. package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  71. package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
  72. package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
  73. package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
  74. package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
  75. package/dist/esm/fields/Combobox/index.native.js.map +1 -1
  76. package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
  77. package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  78. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  79. package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
  80. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  81. package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
  82. package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  83. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  84. package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
  85. package/dist/esm/fields/Duration/durationMath.native.js.map +1 -1
  86. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  87. package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  88. package/dist/esm/fields/FileUpload/index.mjs +6 -0
  89. package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
  90. package/dist/esm/fields/FileUpload/index.native.js +6 -0
  91. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  92. package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  93. package/dist/esm/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  94. package/dist/esm/fields/Geolocation/geoValue.native.js.map +1 -1
  95. package/dist/esm/fields/Geolocation/geocoder.native.js.map +1 -1
  96. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  97. package/dist/esm/fields/Geolocation/mapMath.native.js.map +1 -1
  98. package/dist/esm/fields/Geolocation/mapTypes.native.js.map +1 -1
  99. package/dist/esm/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  100. package/dist/esm/fields/Icon/drawnSet.mjs +3 -1
  101. package/dist/esm/fields/Icon/drawnSet.mjs.map +1 -1
  102. package/dist/esm/fields/Icon/drawnSet.native.js +3 -1
  103. package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -1
  104. package/dist/esm/fields/Icon/index.native.js.map +1 -1
  105. package/dist/esm/fields/ImageField/index.native.js.map +1 -1
  106. package/dist/esm/fields/Input/index.native.js.map +1 -1
  107. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  108. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  109. package/dist/esm/fields/OTPInput/otpCellCss.native.js.map +1 -1
  110. package/dist/esm/fields/PhoneInput/dialCodes.native.js.map +1 -1
  111. package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
  112. package/dist/esm/fields/PhoneInput/phone.native.js.map +1 -1
  113. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  114. package/dist/esm/fields/RadioGroup/index.mjs +34 -5
  115. package/dist/esm/fields/RadioGroup/index.mjs.map +1 -1
  116. package/dist/esm/fields/RadioGroup/index.native.js +49 -7
  117. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  118. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  119. package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -1
  120. package/dist/esm/fields/Rating/types.native.js.map +1 -1
  121. package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
  122. package/dist/esm/fields/Select/index.native.js.map +1 -1
  123. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  124. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  125. package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
  126. package/dist/esm/fields/Stepper/index.native.js.map +1 -1
  127. package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  128. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  129. package/dist/esm/fields/TextArea/index.native.js.map +1 -1
  130. package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
  131. package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
  132. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  133. package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
  134. package/dist/esm/fields/ToggleGroup/index.mjs +35 -2
  135. package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
  136. package/dist/esm/fields/ToggleGroup/index.native.js +42 -2
  137. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  138. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  139. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  140. package/dist/esm/fields/nativeSelect.native.js.map +1 -1
  141. package/dist/esm/fields/selectedOrder.native.js.map +1 -1
  142. package/dist/esm/formSpacing.native.js.map +1 -1
  143. package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
  144. package/dist/esm/index.native.js.map +1 -1
  145. package/dist/esm/requiredMarking.native.js.map +1 -1
  146. package/dist/esm/shared/TimeColumn.native.js.map +1 -1
  147. package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
  148. package/dist/esm/shared/colorRamps.native.js.map +1 -1
  149. package/dist/esm/shared/devWarn.native.js.map +1 -1
  150. package/dist/esm/shared/floatingList.native.js.map +1 -1
  151. package/dist/esm/shared/focusManagement.native.js.map +1 -1
  152. package/dist/esm/shared/groupContext.native.js.map +1 -1
  153. package/dist/esm/shared/i18n.native.js.map +1 -1
  154. package/dist/esm/shared/nativeA11y.mjs +31 -0
  155. package/dist/esm/shared/nativeA11y.mjs.map +1 -0
  156. package/dist/esm/shared/nativeA11y.native.js +32 -0
  157. package/dist/esm/shared/nativeA11y.native.js.map +1 -0
  158. package/dist/esm/shared/pickerTriggerContract.native.js.map +1 -1
  159. package/dist/esm/shared/pressSlopProps.native.js.map +1 -1
  160. package/dist/esm/shared/t.native.js.map +1 -1
  161. package/dist/esm/shared/tableCellContext.native.js.map +1 -1
  162. package/dist/esm/shared/useDragScroll.native.js.map +1 -1
  163. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
  164. package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
  165. package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
  166. package/dist/esm/shared/utils.native.js.map +1 -1
  167. package/dist/esm/shared/zIndex.native.js.map +1 -1
  168. package/dist/esm/themedPrimitives.native.js.map +1 -1
  169. package/dist/esm/types.native.js.map +1 -1
  170. package/dist/esm/utils/LinkCell.native.js.map +1 -1
  171. package/dist/jsx/Button/index.mjs +1 -1
  172. package/dist/jsx/Button/index.mjs.map +1 -1
  173. package/dist/jsx/Button/index.native.js +5 -3
  174. package/dist/jsx/Button/index.native.js.map +1 -1
  175. package/dist/jsx/InputParts/index.mjs +11 -2
  176. package/dist/jsx/InputParts/index.mjs.map +1 -1
  177. package/dist/jsx/InputParts/index.native.js +11 -2
  178. package/dist/jsx/InputParts/index.native.js.map +1 -1
  179. package/dist/jsx/fields/FileUpload/index.mjs +6 -0
  180. package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
  181. package/dist/jsx/fields/FileUpload/index.native.js +6 -0
  182. package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
  183. package/dist/jsx/fields/Icon/drawnSet.mjs +3 -1
  184. package/dist/jsx/fields/Icon/drawnSet.mjs.map +1 -1
  185. package/dist/jsx/fields/Icon/drawnSet.native.js +3 -1
  186. package/dist/jsx/fields/Icon/drawnSet.native.js.map +1 -1
  187. package/dist/jsx/fields/RadioGroup/index.mjs +34 -5
  188. package/dist/jsx/fields/RadioGroup/index.mjs.map +1 -1
  189. package/dist/jsx/fields/RadioGroup/index.native.js +49 -7
  190. package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
  191. package/dist/jsx/fields/ToggleGroup/index.mjs +35 -2
  192. package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
  193. package/dist/jsx/fields/ToggleGroup/index.native.js +42 -2
  194. package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
  195. package/dist/jsx/shared/nativeA11y.mjs +31 -0
  196. package/dist/jsx/shared/nativeA11y.mjs.map +1 -0
  197. package/dist/jsx/shared/nativeA11y.native.js +61 -0
  198. package/dist/jsx/shared/nativeA11y.native.js.map +1 -0
  199. package/package.json +9 -8
  200. package/src/Button/Button.fontWeight.spec.tsx +75 -0
  201. package/src/Button/index.tsx +5 -3
  202. package/src/FieldGroup.stories.tsx +3 -7
  203. package/src/FieldLayout.stories.tsx +34 -12
  204. package/src/Fieldset.stories.tsx +3 -7
  205. package/src/FormGrid.stories.tsx +5 -11
  206. package/src/InputParts/InputButton.spec.tsx +16 -0
  207. package/src/InputParts/index.tsx +19 -2
  208. package/src/fieldFamilyStories.radius.spec.tsx +118 -0
  209. package/src/fields/Barcode/Barcode.spec.tsx +2 -0
  210. package/src/fields/FileUpload/FileUpload.spec.tsx +29 -0
  211. package/src/fields/FileUpload/index.tsx +6 -0
  212. package/src/fields/Icon/drawnSet.tsx +7 -2
  213. package/src/fields/RadioGroup/RadioGroup.native.spec.tsx +67 -0
  214. package/src/fields/RadioGroup/index.tsx +82 -8
  215. package/src/fields/ToggleGroup/ToggleGroup.native.spec.tsx +73 -0
  216. package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +49 -0
  217. package/src/fields/ToggleGroup/index.tsx +76 -1
  218. package/src/shared/nativeA11y.spec.ts +64 -0
  219. package/src/shared/nativeA11y.ts +80 -0
  220. package/types/Button/index.d.ts.map +1 -1
  221. package/types/InputParts/index.d.ts.map +1 -1
  222. package/types/fields/FileUpload/index.d.ts.map +1 -1
  223. package/types/fields/Icon/drawnSet.d.ts.map +1 -1
  224. package/types/fields/RadioGroup/index.d.ts +28 -1
  225. package/types/fields/RadioGroup/index.d.ts.map +1 -1
  226. package/types/fields/ToggleGroup/index.d.ts +30 -1
  227. package/types/fields/ToggleGroup/index.d.ts.map +1 -1
  228. package/types/shared/nativeA11y.d.ts +61 -0
  229. package/types/shared/nativeA11y.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","ToggleGroup_exports","ToggleGroup","module","exports","import_jsx_runtime","require","import_react","import_theme","import_tamagui","import_Skeleton","import_fieldLayout","import_colorRamps","import_devWarn","import_utils","ToggleItemFrame","styled","Item","unstyled","cursor","userSelect","display","alignItems","justifyContent","flexDirection","backgroundColor","borderColor","borderWidth","margin","outlineWidth","position","focusStyle","focusVisibleStyle","SEGMENT_MOTION_MS","bouncy","lazy","slow","medium","quick","tooltip","snappy","gentle","segmentFillState","props","ToggleItemWithElevation","param","elevationWrapperProps","groupedRadius","elevation","jsx","View","children","form","formProp","validators","label","labelProps","helperText","error","required","disabled","disabledReason","readOnly","size","id","idProp","type","defaultValue","onChange","onValueChange","onBlur","options","orientation","skeleton","compact","handleValueChange","handleValueChange2","val","resolvedForm","knobProps","control","text","disabledState","useFormField","selectedTint","useAccentTintedSurface","selectedFill","formButtonColors","border","active","onSelectedLabel","useReadableTextOn","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","resolvedValidators","useResolvedValidators","getElevationWrapperProps","segmentHitSlop","pressTargetHitSlop","height","motionMs","transition","segmentMotionStyle","className","style","transitionProperty","transitionDuration","transitionTimingFunction","warnBareDisabled","component","Boolean","skip","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","option","_option_disabledReason","err","return","resolvedHelperText","trim","uniqueItemReasons","Set","filter","o","_o_disabledReason","map","itemReasonIdFor","itemReasonIdFor2","reason","index","indexOf","optionDisabledByValue","optionDisabledByValue2","_options_find","find","_ref","optionCount","length","segmentH","segmentW","paddingHorizontal","FieldLayout","alignSelf","overflow","borderRadius","inputSurface","Array","_","i","Skeleton","variant","width","renderContent","renderContent2","resolvedValue","radius","count","isSelected","isSelected2","isArray","includes","focusedIdx","findIndex","firstSelectedEnabled","tabStopIndex","option2","stackRadiusProps","getGroupPosition","selected","nextSelected","itemDisabled","itemDescribedBy","isTabStop","showSeam","activeColors","hoverFill","hoverKnobProps","pressFill","pressKnobProps","jsxs","tabIndex","hitSlop","flexShrink","flexGrow","flexBasis","gap","selectedSurfaceKnobProps","surfaceKnobProps","pointerEvents","hoverStyle","background","hover","pressStyle","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur2","prev","icon","SizableText","controlType","body","color","textKnobProps","focusKnobProps","zIndex","hairline","vline","top","bottom","insetInlineEnd","hairlineWidth","line","insetInlineStart","renderToggleGroup","renderToggleGroup2","isControlled","handleChange","handleBlur","hasError","emptyValue","toggleProps","disableDeactivation","onValueChange2","prevArr","nextArr","toggled","v","sizeToken","Fragment","outlined","formInputColors","base","gridAutoFlow","gridAutoColumns"],"sources":["../../../../src/fields/ToggleGroup/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","ToggleGroup_exports","ToggleGroup","module","exports","import_jsx_runtime","require","import_react","import_theme","import_tamagui","import_Skeleton","import_fieldLayout","import_colorRamps","import_devWarn","import_nativeA11y","import_utils","ToggleItemFrame","styled","Item","unstyled","cursor","userSelect","display","alignItems","justifyContent","flexDirection","backgroundColor","borderColor","borderWidth","margin","outlineWidth","position","focusStyle","focusVisibleStyle","SEGMENT_MOTION_MS","bouncy","lazy","slow","medium","quick","tooltip","snappy","gentle","segmentFillState","props","ToggleItemWithElevation","param","elevationWrapperProps","groupedRadius","elevation","jsx","View","flexGrow","flexShrink","children","form","formProp","validators","label","labelProps","helperText","error","required","disabled","disabledReason","readOnly","size","id","idProp","type","defaultValue","onChange","onValueChange","onBlur","options","orientation","skeleton","compact","accessibilityLabel","accessibilityHint","ariaLabel","ariaLabelledBy","handleValueChange","handleValueChange2","val","groupA11yName","resolvedForm","knobProps","control","text","disabledState","useFormField","selectedTint","useAccentTintedSurface","selectedFill","formButtonColors","border","active","onSelectedLabel","useReadableTextOn","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","resolvedValidators","useResolvedValidators","getElevationWrapperProps","segmentHitSlop","pressTargetHitSlop","height","motionMs","transition","segmentMotionStyle","className","style","transitionProperty","transitionDuration","transitionTimingFunction","warnBareDisabled","component","Boolean","skip","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","option","_option_disabledReason","err","return","resolvedHelperText","trim","uniqueItemReasons","Set","filter","o","_o_disabledReason","map","itemReasonIdFor","itemReasonIdFor2","reason","index","indexOf","optionDisabledByValue","optionDisabledByValue2","_options_find","find","_ref","optionCount","length","segmentH","segmentW","paddingHorizontal","FieldLayout","alignSelf","overflow","borderRadius","inputSurface","Array","_","i","Skeleton","variant","width","renderContent","renderContent2","resolvedValue","radius","count","isSelected","isSelected2","isArray","includes","focusedIdx","findIndex","firstSelectedEnabled","tabStopIndex","option2","_option_accessibilityLabel","_option_accessibilityHint","stackRadiusProps","getGroupPosition","selected","nextSelected","itemDisabled","itemDescribedBy","isTabStop","showSeam","activeColors","hoverFill","hoverKnobProps","pressFill","pressKnobProps","jsxs","tabIndex","hitSlop","flexBasis","gap","selectedSurfaceKnobProps","surfaceKnobProps","pointerEvents","hoverStyle","background","hover","pressStyle","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur2","prev","choiceItemA11y","kind","composeA11yName","hint","icon","SizableText","controlType","body","color","textKnobProps","focusKnobProps","zIndex","hairline","vline","top","bottom","insetInlineEnd","hairlineWidth","line","insetInlineStart","renderToggleGroup","renderToggleGroup2","isControlled","handleChange","handleBlur","hasError","emptyValue","toggleProps","disableDeactivation","onValueChange2","prevArr","nextArr","toggled","v","sizeToken","accessibilityRole","Fragment","outlined","formInputColors","base"],"sources":["../../../../src/fields/ToggleGroup/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ const nativeChoiceRole = "button";
2
+ function composeA11yName(groupName, ownName) {
3
+ const group = groupName?.trim();
4
+ return group ? `${group}, ${ownName}` : ownName;
5
+ }
6
+ function choiceItemA11y({
7
+ name,
8
+ selected,
9
+ disabled,
10
+ hint
11
+ }) {
12
+ return {
13
+ accessible: true,
14
+ role: nativeChoiceRole,
15
+ accessibilityRole: nativeChoiceRole,
16
+ accessibilityLabel: name,
17
+ // `selected` is what a reader announces for a segment, `checked` what it
18
+ // announces for a radio; the iOS tree surfaces them as `selected: true`
19
+ // and `value: "checked"`. Both are set so one shape serves both controls.
20
+ accessibilityState: {
21
+ disabled,
22
+ selected,
23
+ checked: selected
24
+ },
25
+ ...(hint ? {
26
+ accessibilityHint: hint
27
+ } : void 0)
28
+ };
29
+ }
30
+ export { choiceItemA11y, composeA11yName };
31
+ //# sourceMappingURL=nativeA11y.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nativeChoiceRole","composeA11yName","groupName","ownName","group","trim","choiceItemA11y","name","selected","disabled","hint","accessible","role","accessibilityRole","accessibilityLabel","accessibilityState","checked","accessibilityHint"],"sources":["../../../src/shared/nativeA11y.ts"],"sourcesContent":[null],"mappings":"AAiCA,MAAMA,gBAAA,GAAmB;AAiBlB,SAASC,gBAAgBC,SAAA,EAA+BC,OAAA,EAAyB;EACtF,MAAMC,KAAA,GAAQF,SAAA,EAAWG,IAAA,CAAK;EAC9B,OAAOD,KAAA,GAAQ,GAAGA,KAAK,KAAKD,OAAO,KAAKA,OAAA;AAC1C;AAEO,SAASG,eAAe;EAC7BC,IAAA;EACAC,QAAA;EACAC,QAAA;EACAC;AACF,GAOoB;EAClB,OAAO;IACLC,UAAA,EAAY;IACZC,IAAA,EAAMZ,gBAAA;IACNa,iBAAA,EAAmBb,gBAAA;IACnBc,kBAAA,EAAoBP,IAAA;IAAA;IAAA;IAAA;IAIpBQ,kBAAA,EAAoB;MAAEN,QAAA;MAAUD,QAAA;MAAUQ,OAAA,EAASR;IAAS;IAC5D,IAAIE,IAAA,GAAO;MAAEO,iBAAA,EAAmBP;IAAK,IAAI;EAC3C;AACF","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var nativeA11y_exports = {};
26
+ __export(nativeA11y_exports, {
27
+ choiceItemA11y: () => choiceItemA11y,
28
+ composeA11yName: () => composeA11yName
29
+ });
30
+ module.exports = __toCommonJS(nativeA11y_exports);
31
+ var nativeChoiceRole = "button";
32
+ function composeA11yName(groupName, ownName) {
33
+ var group = groupName === null || groupName === void 0 ? void 0 : groupName.trim();
34
+ return group ? `${group}, ${ownName}` : ownName;
35
+ }
36
+ function choiceItemA11y(param) {
37
+ var {
38
+ name,
39
+ selected,
40
+ disabled,
41
+ hint
42
+ } = param;
43
+ return {
44
+ accessible: true,
45
+ role: nativeChoiceRole,
46
+ accessibilityRole: nativeChoiceRole,
47
+ accessibilityLabel: name,
48
+ // `selected` is what a reader announces for a segment, `checked` what it
49
+ // announces for a radio; the iOS tree surfaces them as `selected: true`
50
+ // and `value: "checked"`. Both are set so one shape serves both controls.
51
+ accessibilityState: {
52
+ disabled,
53
+ selected,
54
+ checked: selected
55
+ },
56
+ ...(hint ? {
57
+ accessibilityHint: hint
58
+ } : void 0)
59
+ };
60
+ }
61
+ //# sourceMappingURL=nativeA11y.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","nativeA11y_exports","choiceItemA11y","composeA11yName"],"sources":["../../../src/shared/nativeA11y.ts"],"sourcesContent":[null],"mappings":"AAiCA,YAAM;;AAiBC,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAA+C;AAC7D,IAAAC,gBAAc,GAAAF,MAAW,CAAAG,wBAAK;AAC9B,IAAAC,iBAAkB,GAAAJ,MAAU,CAAAK,mBAAY;AAC1C,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAEO,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAeC,GAAA;EAC7B,SAAAC,IAAA,IAAAD,GAAA,EACAZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IACAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EACF,IAOoBF,IAAA,WAAAA,IAAA,wBAAAA,IAAA;IAClB,KAAO,IAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACL,KAAAX,YAAY,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACZnB,SAAM,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAAA;EACa,OACnBE,EAAA;AAAoB;AAAA,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IAAAE,kBAAA;AAAAhB,QAIpB,CAAAgB,kBAAsB;EAAsCC,cAC/C,EAAAA,CAAA,KAAAA,cAAmB;EAClCC,eAAA,EAAAA,CAAA,KAAAA;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplatform.one/forms",
3
- "version": "7.8.0",
3
+ "version": "7.10.0",
4
4
  "description": "Cross-platform form components with URL state management",
5
5
  "keywords": [
6
6
  "cross-platform",
@@ -64,16 +64,17 @@
64
64
  "@tamagui/roving-focus": "2.7.6",
65
65
  "@tamagui/web": "2.7.6",
66
66
  "@tanstack/react-form": "^1.29.1",
67
+ "@tanstack/react-store": "0.9.2",
67
68
  "expo-camera": "~55.0.18",
68
69
  "expo-linear-gradient": "~55.0.13",
69
70
  "html5-qrcode": "^2.3.8",
70
71
  "perfect-freehand": "^1.2.3",
71
72
  "react-native-svg": "15.15.4",
72
73
  "tamagui": "2.7.6",
73
- "@multiplatform.one/platform": "7.8.0",
74
- "@multiplatform.one/router": "7.8.0",
75
- "@multiplatform.one/table-primitives": "7.8.0",
76
- "@multiplatform.one/theme": "7.8.0"
74
+ "@multiplatform.one/platform": "7.10.0",
75
+ "@multiplatform.one/theme": "7.10.0",
76
+ "@multiplatform.one/table-primitives": "7.10.0",
77
+ "@multiplatform.one/router": "7.10.0"
77
78
  },
78
79
  "devDependencies": {
79
80
  "@tamagui/build": "2.7.6",
@@ -95,9 +96,9 @@
95
96
  "react-i18next": "^16.6.6",
96
97
  "react-native-web": "^0.21.2",
97
98
  "vitest": "^4.1.5",
98
- "@multiplatform.one/test-utils": "7.8.0",
99
- "@multiplatform.one/storybook": "7.8.0",
100
- "@multiplatform.one/config": "7.8.0"
99
+ "@multiplatform.one/config": "7.10.0",
100
+ "@multiplatform.one/test-utils": "7.10.0",
101
+ "@multiplatform.one/storybook": "7.10.0"
101
102
  },
102
103
  "peerDependencies": {
103
104
  "@react-native-community/datetimepicker": ">=8.0.1",
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @vitest-environment jsdom
3
+ *
4
+ * MPO-125: the `fontWeight` knob must reach the Button LABEL. A literal
5
+ * `fontWeight="400"` sat after the `knobProps.body` spread and pinned the
6
+ * label at 400 in both schemes, while Input and Select moved to 700 off the
7
+ * same knob. `docs/design/knob-laws.md` § Family rules already says
8
+ * `button | ... | fonts honour`, so the render was the thing that was wrong.
9
+ *
10
+ * The weight is read off the TEXT NODE, not the frame — the frame reported
11
+ * 400 either way, which is how the defect survived. jsdom cannot cascade
12
+ * Tamagui CSS, so the rendered value is the atomic class the text node emits
13
+ * (`_fow-700`); it exists only when the prop survived the merge, which is the
14
+ * thing under test. Same measurement Button.labelInk.spec.tsx uses.
15
+ */
16
+
17
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
18
+ import { Preset } from "@multiplatform.one/theme";
19
+ import { cleanup, screen } from "@testing-library/react";
20
+ import { Theme } from "tamagui";
21
+ import { afterEach, describe, expect, it } from "vitest";
22
+ import { Button } from "./index";
23
+
24
+ afterEach(cleanup);
25
+
26
+ const SCHEMES = ["light", "dark"] as const;
27
+
28
+ function inkWeight(el: HTMLElement): string {
29
+ const inline = el.style.fontWeight;
30
+ if (inline) return String(inline);
31
+ for (const cls of String(el.className ?? "").split(/\s+/)) {
32
+ const match = cls.match(/^_fow-(\d+)$/);
33
+ if (match) return match[1];
34
+ }
35
+ return "";
36
+ }
37
+
38
+ function labelNode(
39
+ fontWeight: "regular" | "bold",
40
+ scheme: (typeof SCHEMES)[number],
41
+ label: string,
42
+ ): HTMLElement {
43
+ renderWithProviders(
44
+ <Theme name={scheme}>
45
+ <Preset overrides={{ fontWeight }}>
46
+ <Button>{label}</Button>
47
+ </Preset>
48
+ </Theme>,
49
+ );
50
+ const node = screen.getByText(label) as HTMLElement;
51
+ expect(node.tagName).not.toBe("BUTTON");
52
+ return node;
53
+ }
54
+
55
+ describe("Button MPO-125 fontWeight knob", () => {
56
+ it.each(SCHEMES)("%s: bold takes the label to 700", (scheme) => {
57
+ const node = labelNode("bold", scheme, `bold-${scheme}`);
58
+ expect(inkWeight(node)).toBe("700");
59
+ expect(node.className).not.toMatch(/_fow-400\b/);
60
+ });
61
+
62
+ it.each(SCHEMES)("%s: regular keeps the label at 400", (scheme) => {
63
+ const node = labelNode("regular", scheme, `regular-${scheme}`);
64
+ expect(inkWeight(node)).toBe("400");
65
+ expect(node.className).not.toMatch(/_fow-700\b/);
66
+ });
67
+
68
+ it.each(SCHEMES)("%s: the size variant never leaks 500/600 at either stop", (scheme) => {
69
+ for (const stop of ["regular", "bold"] as const) {
70
+ const node = labelNode(stop, scheme, `leak-${stop}-${scheme}`);
71
+ expect(node.className).not.toMatch(/_fow-500\b/);
72
+ expect(node.className).not.toMatch(/_fow-600\b/);
73
+ }
74
+ });
75
+ });
@@ -545,9 +545,11 @@ export function Button({
545
545
  // LC-40: on the washed disabled chrome the label leaves the on-fill
546
546
  // foreground and pins to the lowest AA tier (keepLabel keeps >=4.5:1).
547
547
  {...(isDisabled ? disabledState.textKnobProps : undefined)}
548
- // Boards measure ink.weight on the TEXT NODE, never the frame.
549
- // Regular 400 — SizableText size variants otherwise leak 500/600.
550
- fontWeight="400"
548
+ // Boards measure ink.weight on the TEXT NODE, never the frame. The
549
+ // prop is restated after the spreads because SizableText's size
550
+ // variant otherwise leaks 500/600 over it (MPO-125: a literal 400
551
+ // here pinned the label and swallowed the fontWeight knob).
552
+ fontWeight={knobProps.body.fontWeight}
551
553
  transition={knobProps.transition}
552
554
  >
553
555
  {label}
@@ -1,8 +1,8 @@
1
1
  import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
2
- import { Input as TamaguiInput, YStack } from "tamagui";
2
+ import { YStack } from "tamagui";
3
3
  import { FieldGroup } from "./FieldGroup";
4
4
  import { FormSection, FormSectionStack } from "./FormSection";
5
- import { FieldLayout } from "./fieldLayout";
5
+ import { Input } from "./fields/Input";
6
6
 
7
7
  const meta: Meta<typeof FieldGroup> = {
8
8
  title: "Forms/FieldGroup",
@@ -18,11 +18,7 @@ export default meta;
18
18
  type Story = StoryObj<typeof FieldGroup>;
19
19
 
20
20
  function Field({ id, label }: { id: string; label: string }) {
21
- return (
22
- <FieldLayout id={id} label={label}>
23
- <TamaguiInput id={id} placeholder={label} />
24
- </FieldLayout>
25
- );
21
+ return <Input id={id} label={label} placeholder={label} />;
26
22
  }
27
23
 
28
24
  export const Basic: Story = {
@@ -3,13 +3,35 @@ import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
3
3
  import { useForm } from "@tanstack/react-form";
4
4
  import { useState } from "react";
5
5
  import { Preset } from "@multiplatform.one/theme";
6
- import { Input as TamaguiInput, Paragraph, YStack, XStack } from "tamagui";
6
+ import { Paragraph, YStack, XStack } from "tamagui";
7
7
  import { Button } from "./Button";
8
8
  import { Form } from "./Form";
9
9
  import { Field, FieldLayout } from "./fieldLayout";
10
10
  import { Input } from "./fields/Input";
11
+ import { Input as InputParts } from "./InputParts";
11
12
  import { Checkbox } from "./fields/Checkbox";
12
13
 
14
+ /**
15
+ * FieldLayout wraps a CONTROL, so these stories cannot mount the house `Input`
16
+ * field — it brings its own FieldLayout. `InputParts.Box` is the house chrome
17
+ * underneath that field, and it is the part that consumes the knobs.
18
+ */
19
+ function Control(props: {
20
+ id?: string;
21
+ placeholder?: string;
22
+ value?: string;
23
+ onChangeText?: (text: string) => void;
24
+ secureTextEntry?: boolean;
25
+ }) {
26
+ return (
27
+ <InputParts>
28
+ <InputParts.Box>
29
+ <InputParts.Area {...props} />
30
+ </InputParts.Box>
31
+ </InputParts>
32
+ );
33
+ }
34
+
13
35
  const meta: Meta<typeof FieldLayout> = {
14
36
  title: "Forms/FieldLayout",
15
37
  component: FieldLayout,
@@ -37,7 +59,7 @@ export const Basic: Story = {
37
59
  render: (args) => (
38
60
  <YStack maxWidth={360}>
39
61
  <FieldLayout {...args}>
40
- <TamaguiInput id={args.id} placeholder="you@example.com" />
62
+ <Control id={args.id} placeholder="you@example.com" />
41
63
  </FieldLayout>
42
64
  </YStack>
43
65
  ),
@@ -90,7 +112,7 @@ export const ErrorStates: Story = {
90
112
  // DG-COPY-02: error copy states the rule broken — never "invalid"/"please"/"error".
91
113
  error="Value must use letters only"
92
114
  >
93
- <TamaguiInput id="fl-err-string" />
115
+ <Control id="fl-err-string" />
94
116
  </FieldLayout>
95
117
  <FieldLayout
96
118
  id="fl-err-bool"
@@ -98,7 +120,7 @@ export const ErrorStates: Story = {
98
120
  helperText="Helper should remain visible"
99
121
  error={true}
100
122
  >
101
- <TamaguiInput id="fl-err-bool" />
123
+ <Control id="fl-err-bool" />
102
124
  </FieldLayout>
103
125
  <FieldLayout
104
126
  id="fl-err-empty"
@@ -106,7 +128,7 @@ export const ErrorStates: Story = {
106
128
  helperText="Empty string should act as no message"
107
129
  error=""
108
130
  >
109
- <TamaguiInput id="fl-err-empty" />
131
+ <Control id="fl-err-empty" />
110
132
  </FieldLayout>
111
133
  </YStack>
112
134
  ),
@@ -116,13 +138,13 @@ export const AnatomyEdgeCases: Story = {
116
138
  render: () => (
117
139
  <YStack gap="$6" maxWidth={360}>
118
140
  <FieldLayout id="fl-required" label="Required field" required>
119
- <TamaguiInput id="fl-required" />
141
+ <Control id="fl-required" />
120
142
  </FieldLayout>
121
143
  <FieldLayout id="fl-nolabel" helperText="No label means compact $1 gap">
122
- <TamaguiInput id="fl-nolabel" />
144
+ <Control id="fl-nolabel" />
123
145
  </FieldLayout>
124
146
  <FieldLayout id="fl-compact" label="Compact spacing" compactSpacing helperText="Compact gap">
125
- <TamaguiInput id="fl-compact" />
147
+ <Control id="fl-compact" />
126
148
  </FieldLayout>
127
149
  <FieldLayout
128
150
  id="fl-node-label"
@@ -133,14 +155,14 @@ export const AnatomyEdgeCases: Story = {
133
155
  </XStack>
134
156
  }
135
157
  >
136
- <TamaguiInput id="fl-node-label" />
158
+ <Control id="fl-node-label" />
137
159
  </FieldLayout>
138
160
  <FieldLayout
139
161
  id="fl-long"
140
162
  label="Long messages"
141
163
  error="This validation message is extremely long and keeps going to make sure long validation copy wraps correctly under the control without pushing the layout sideways or clipping any of its content at narrow widths"
142
164
  >
143
- <TamaguiInput id="fl-long" />
165
+ <Control id="fl-long" />
144
166
  </FieldLayout>
145
167
  </YStack>
146
168
  ),
@@ -166,7 +188,7 @@ export const FieldWrapper: Story = {
166
188
  helperText="TanStack Field wrapper"
167
189
  field={field as any}
168
190
  >
169
- <TamaguiInput
191
+ <Control
170
192
  id="field-username"
171
193
  value={String(field.state.value ?? "")}
172
194
  onChangeText={(text) => field.handleChange(text)}
@@ -208,7 +230,7 @@ export const FieldRequiredValidator: Story = {
208
230
  >
209
231
  {(field) => (
210
232
  <FieldLayout id="field-nickname" label="Nickname" required field={field as any}>
211
- <TamaguiInput
233
+ <Control
212
234
  id="field-nickname"
213
235
  value={String(field.state.value ?? "")}
214
236
  onChangeText={(text) => field.handleChange(text)}
@@ -1,14 +1,10 @@
1
1
  import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
2
- import { Input as TamaguiInput, YStack } from "tamagui";
3
- import { FieldLayout } from "./fieldLayout";
2
+ import { YStack } from "tamagui";
4
3
  import { Fieldset, FormSectionStack } from "./FormSection";
4
+ import { Input } from "./fields/Input";
5
5
 
6
6
  function Field({ id, label, ...rest }: { id: string; label: string; secureTextEntry?: boolean }) {
7
- return (
8
- <FieldLayout id={id} label={label}>
9
- <TamaguiInput id={id} placeholder={label} {...rest} />
10
- </FieldLayout>
11
- );
7
+ return <Input id={id} label={label} placeholder={label} {...rest} />;
12
8
  }
13
9
 
14
10
  const meta: Meta<typeof Fieldset> = {
@@ -1,9 +1,9 @@
1
1
  import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
2
- import { Input as TamaguiInput, Paragraph, YStack } from "tamagui";
2
+ import { Paragraph, YStack } from "tamagui";
3
3
  import { FieldGroup } from "./FieldGroup";
4
4
  import { FormGrid } from "./FormGrid";
5
5
  import { FormSection, FormSectionStack } from "./FormSection";
6
- import { FieldLayout } from "./fieldLayout";
6
+ import { Input } from "./fields/Input";
7
7
 
8
8
  const meta: Meta<typeof FormGrid> = {
9
9
  title: "Forms/FormGrid",
@@ -24,11 +24,7 @@ export default meta;
24
24
  type Story = StoryObj<typeof FormGrid>;
25
25
 
26
26
  function GridField({ id, label }: { id: string; label: string }) {
27
- return (
28
- <FieldLayout id={id} label={label}>
29
- <TamaguiInput id={id} placeholder={label} />
30
- </FieldLayout>
31
- );
27
+ return <Input id={id} label={label} placeholder={label} />;
32
28
  }
33
29
 
34
30
  export const Basic: Story = {
@@ -99,13 +95,11 @@ export const LongErrors: Story = {
99
95
  render: () => (
100
96
  <YStack maxWidth={640}>
101
97
  <FormGrid columns={2}>
102
- <FieldLayout
98
+ <Input
103
99
  id="fge-a"
104
100
  label="With long error"
105
101
  error="This validation message is extremely long and should wrap inside its own grid cell without breaking the neighbouring column alignment or overflowing the grid container"
106
- >
107
- <TamaguiInput id="fge-a" />
108
- </FieldLayout>
102
+ />
109
103
  <GridField id="fge-b" label="Neighbour" />
110
104
  </FormGrid>
111
105
  </YStack>
@@ -40,6 +40,22 @@ describe("Input.Button", () => {
40
40
  expect(btn.contains(ring)).toBe(true);
41
41
  });
42
42
 
43
+ it("a bare string child is a LABEL, not an icon type to createElement", () => {
44
+ const result = renderWithProviders(
45
+ <Input size="$4">
46
+ <Input.Box size="$4">
47
+ <Input.Button size="$4" aria-label="cap">
48
+ Scan
49
+ </Input.Button>
50
+ </Input.Box>
51
+ </Input>,
52
+ );
53
+ const btn = result.container.querySelector("[aria-label='cap']") as HTMLElement;
54
+ expect(btn).not.toBeNull();
55
+ expect(btn.textContent).toContain("Scan");
56
+ expect(result.container.querySelector("scan")).toBeNull();
57
+ });
58
+
43
59
  it("end-cap square is generated from the size recipe at every token", () => {
44
60
  for (const token of SIZE_RECIPE_TOKENS) {
45
61
  if (token === "$true") continue;
@@ -1035,6 +1035,23 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
1035
1035
  size: knobProps.controlIcon.width,
1036
1036
  color: paint as never,
1037
1037
  });
1038
+ // A string/number child is a LABEL, not an icon. `getThemedIcon` treats an
1039
+ // un-elemented child as a component TYPE and `createElement`s it, so "Scan"
1040
+ // becomes an invented `<scan>` element that paints nothing (MPO-208); a bare
1041
+ // string under the glyphRing View is the same category error on native.
1042
+ const textChild =
1043
+ typeof children === "string" || typeof children === "number" ? (
1044
+ <Text
1045
+ {...knobProps.controlType}
1046
+ fontFamily={knobProps.body.fontFamily}
1047
+ fontWeight={knobProps.body.fontWeight}
1048
+ color={paint as never}
1049
+ numberOfLines={1}
1050
+ userSelect="none"
1051
+ >
1052
+ {children}
1053
+ </Text>
1054
+ ) : null;
1038
1055
  const decorativeRef = useCallback(
1039
1056
  (node: TamaguiElement | null) => {
1040
1057
  // Tamagui 2.7.6 Button stamps tabIndex=0 after consumer props.
@@ -1078,7 +1095,7 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
1078
1095
  alignItems="center"
1079
1096
  justifyContent="center"
1080
1097
  >
1081
- {children}
1098
+ {textChild ?? children}
1082
1099
  </View>
1083
1100
  </InputGlyphButton>
1084
1101
  );
@@ -1101,7 +1118,7 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
1101
1118
  data-end-cap={square}
1102
1119
  {...props}
1103
1120
  >
1104
- {getThemedIcon(children)}
1121
+ {textChild ?? getThemedIcon(children)}
1105
1122
  </InputButton>
1106
1123
  );
1107
1124
  });