@multiplatform.one/forms 7.68.0 → 7.69.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 (333) hide show
  1. package/dist/cjs/AdaptivePopup/index.native.js +2 -2
  2. package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
  3. package/dist/cjs/Button/IconButtonGroup.cjs +95 -0
  4. package/dist/cjs/Button/IconButtonGroup.native.js +101 -0
  5. package/dist/cjs/Button/IconButtonGroup.native.js.map +1 -0
  6. package/dist/cjs/Button/glass.cjs +4 -0
  7. package/dist/cjs/Button/glass.native.js +8 -0
  8. package/dist/cjs/Button/glass.native.js.map +1 -1
  9. package/dist/cjs/Button/iconButtonGroupContext.cjs +33 -0
  10. package/dist/cjs/Button/iconButtonGroupContext.native.js +36 -0
  11. package/dist/cjs/Button/iconButtonGroupContext.native.js.map +1 -0
  12. package/dist/cjs/Button/index.cjs +35 -20
  13. package/dist/cjs/Button/index.native.js +38 -22
  14. package/dist/cjs/Button/index.native.js.map +1 -1
  15. package/dist/cjs/Button/mediaPlate.cjs +31 -0
  16. package/dist/cjs/Button/mediaPlate.native.js +34 -0
  17. package/dist/cjs/Button/mediaPlate.native.js.map +1 -0
  18. package/dist/cjs/Chip/index.native.js.map +1 -1
  19. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +1 -1
  20. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  21. package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  22. package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  23. package/dist/cjs/ContextualSaveBar/index.native.js +3 -3
  24. package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -1
  25. package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  26. package/dist/cjs/ControlGroup/index.native.js +1 -1
  27. package/dist/cjs/ControlGroup/index.native.js.map +1 -1
  28. package/dist/cjs/DescriptionList/index.native.js +2 -2
  29. package/dist/cjs/DescriptionList/index.native.js.map +1 -1
  30. package/dist/cjs/ErrorSummary.native.js.map +1 -1
  31. package/dist/cjs/FieldDisplay/editMode.native.js.map +1 -1
  32. package/dist/cjs/FieldDisplay/formatters.native.js.map +1 -1
  33. package/dist/cjs/FieldDisplay/index.native.js +1 -1
  34. package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
  35. package/dist/cjs/FieldGroup.native.js.map +1 -1
  36. package/dist/cjs/FloatingPanel/RegularPanel.native.js.map +1 -1
  37. package/dist/cjs/FloatingPanel/compactFace.native.js.map +1 -1
  38. package/dist/cjs/FloatingPanel/containingBlock.native.js.map +1 -1
  39. package/dist/cjs/FloatingPanel/index.native.js +21 -16
  40. package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
  41. package/dist/cjs/FloatingPanel/nestedAction.native.js.map +1 -1
  42. package/dist/cjs/FloatingPanel/pointAnchor.native.js.map +1 -1
  43. package/dist/cjs/FloatingPanel/regularPlacement.native.js.map +1 -1
  44. package/dist/cjs/FloatingPanel/trailingAction.native.js +1 -1
  45. package/dist/cjs/FloatingPanel/trailingAction.native.js.map +1 -1
  46. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  47. package/dist/cjs/Form/index.native.js +1 -1
  48. package/dist/cjs/Form/index.native.js.map +1 -1
  49. package/dist/cjs/Form/submissionController.native.js.map +1 -1
  50. package/dist/cjs/Form/validateOn.native.js.map +1 -1
  51. package/dist/cjs/FormGrid.native.js.map +1 -1
  52. package/dist/cjs/FormSection.native.js.map +1 -1
  53. package/dist/cjs/InputParts/PasswordReveal.native.js.map +1 -1
  54. package/dist/cjs/InputParts/index.native.js.map +1 -1
  55. package/dist/cjs/Label/index.native.js.map +1 -1
  56. package/dist/cjs/MediaPicker/base64.native.js.map +1 -1
  57. package/dist/cjs/MediaPicker/payload.native.js.map +1 -1
  58. package/dist/cjs/MediaPicker/types.native.js.map +1 -1
  59. package/dist/cjs/MediaPicker/useMediaPicker.native.js.map +1 -1
  60. package/dist/cjs/Skeleton/index.native.js.map +1 -1
  61. package/dist/cjs/Spinner/SpinnerGlyph.native.js.map +1 -1
  62. package/dist/cjs/Spinner/spinnerSize.native.js.map +1 -1
  63. package/dist/cjs/Table/index.native.js.map +1 -1
  64. package/dist/cjs/Wheel/haptic.native.js.map +1 -1
  65. package/dist/cjs/Wheel/index.native.js.map +1 -1
  66. package/dist/cjs/Wheel/wheelShared.native.js.map +1 -1
  67. package/dist/cjs/actionLabel.native.js.map +1 -1
  68. package/dist/cjs/fieldDefaults.native.js.map +1 -1
  69. package/dist/cjs/fieldLayout.native.js +1 -1
  70. package/dist/cjs/fieldLayout.native.js.map +1 -1
  71. package/dist/cjs/fields/Barcode/BarcodePreview.native.js.map +1 -1
  72. package/dist/cjs/fields/Barcode/BarcodeScanner.native.js +1 -1
  73. package/dist/cjs/fields/Barcode/code128.native.js.map +1 -1
  74. package/dist/cjs/fields/Barcode/index.native.js +2 -2
  75. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  76. package/dist/cjs/fields/Barcode/qr.native.js.map +1 -1
  77. package/dist/cjs/fields/Barcode/scannerTypes.native.js.map +1 -1
  78. package/dist/cjs/fields/Checkbox/Checkbox.native.js +1 -1
  79. package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
  80. package/dist/cjs/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  81. package/dist/cjs/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  82. package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  83. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +1 -1
  84. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  85. package/dist/cjs/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  86. package/dist/cjs/fields/Checkbox/index.native.js.map +1 -1
  87. package/dist/cjs/fields/ColorPicker/SystemColorField.native.js.map +1 -1
  88. package/dist/cjs/fields/ColorPicker/index.native.js +2 -2
  89. package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
  90. package/dist/cjs/fields/ColorPicker/parts.native.js +2 -2
  91. package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
  92. package/dist/cjs/fields/ColorPicker/systemColorWell.gnome.native.js.map +1 -1
  93. package/dist/cjs/fields/Combobox/authorOptions.native.js.map +1 -1
  94. package/dist/cjs/fields/Combobox/index.native.js +5 -5
  95. package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
  96. package/dist/cjs/fields/DatePicker/Calendar.native.js.map +1 -1
  97. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +2 -2
  98. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  99. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +3 -3
  100. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  101. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +2 -2
  102. package/dist/cjs/fields/DatePicker/MonthPicker.native.js +2 -2
  103. package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
  104. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +2 -2
  105. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  106. package/dist/cjs/fields/DatePicker/catalog.native.js +2 -2
  107. package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
  108. package/dist/cjs/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  109. package/dist/cjs/fields/DatePicker/index.native.js +2 -2
  110. package/dist/cjs/fields/DatePicker/parts.native.js +2 -2
  111. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  112. package/dist/cjs/fields/DatePicker/utils.native.js.map +1 -1
  113. package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -1
  114. package/dist/cjs/fields/Duration/index.native.js +3 -3
  115. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  116. package/dist/cjs/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  117. package/dist/cjs/fields/FileUpload/index.cjs +4 -1
  118. package/dist/cjs/fields/FileUpload/index.native.js +6 -3
  119. package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
  120. package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  121. package/dist/cjs/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  122. package/dist/cjs/fields/Geolocation/geoValue.native.js.map +1 -1
  123. package/dist/cjs/fields/Geolocation/geocoder.native.js.map +1 -1
  124. package/dist/cjs/fields/Geolocation/geocoderContext.native.js.map +1 -1
  125. package/dist/cjs/fields/Geolocation/index.native.js +5 -5
  126. package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
  127. package/dist/cjs/fields/Geolocation/mapMath.native.js.map +1 -1
  128. package/dist/cjs/fields/Geolocation/mapTypes.native.js.map +1 -1
  129. package/dist/cjs/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  130. package/dist/cjs/fields/Geolocation/photonGeocoder.native.js.map +1 -1
  131. package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -1
  132. package/dist/cjs/fields/Icon/index.native.js +3 -3
  133. package/dist/cjs/fields/Icon/index.native.js.map +1 -1
  134. package/dist/cjs/fields/ImageField/index.native.js +2 -2
  135. package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
  136. package/dist/cjs/fields/Input/index.native.js +3 -3
  137. package/dist/cjs/fields/Input/index.native.js.map +1 -1
  138. package/dist/cjs/fields/MentionInput/index.native.js +3 -3
  139. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  140. package/dist/cjs/fields/OTPInput/index.native.js +3 -3
  141. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  142. package/dist/cjs/fields/OTPInput/otpCellCss.native.js.map +1 -1
  143. package/dist/cjs/fields/PhoneInput/dialCodes.native.js.map +1 -1
  144. package/dist/cjs/fields/PhoneInput/index.native.js +3 -3
  145. package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
  146. package/dist/cjs/fields/PhoneInput/phone.native.js.map +1 -1
  147. package/dist/cjs/fields/PhoneInput/regionNames.native.js.map +1 -1
  148. package/dist/cjs/fields/Progress/index.native.js +1 -1
  149. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  150. package/dist/cjs/fields/RadioGroup/index.native.js +1 -1
  151. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  152. package/dist/cjs/fields/Rating/index.native.js +1 -1
  153. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  154. package/dist/cjs/fields/Rating/ratingMath.native.js.map +1 -1
  155. package/dist/cjs/fields/Rating/types.native.js.map +1 -1
  156. package/dist/cjs/fields/SearchInput/index.native.js +2 -2
  157. package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
  158. package/dist/cjs/fields/Select/InlineChoices.native.js.map +1 -1
  159. package/dist/cjs/fields/Select/SheetPickerRow.native.js.map +1 -1
  160. package/dist/cjs/fields/Select/index.native.js +4 -4
  161. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  162. package/dist/cjs/fields/Select/shouldInlineChoices.native.js.map +1 -1
  163. package/dist/cjs/fields/Signature/index.native.js +2 -2
  164. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  165. package/dist/cjs/fields/Slider/index.native.js +1 -1
  166. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  167. package/dist/cjs/fields/Slider/jumpMotion.native.js.map +1 -1
  168. package/dist/cjs/fields/Stepper/index.native.js +2 -2
  169. package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
  170. package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  171. package/dist/cjs/fields/Switch/footprint.native.js.map +1 -1
  172. package/dist/cjs/fields/Switch/index.native.js +2 -2
  173. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  174. package/dist/cjs/fields/TextArea/index.native.js +2 -2
  175. package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
  176. package/dist/cjs/fields/TimePicker/catalog.native.js +3 -3
  177. package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
  178. package/dist/cjs/fields/TimePicker/index.native.js +2 -2
  179. package/dist/cjs/fields/TimePicker/parts.native.js +1 -1
  180. package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
  181. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  182. package/dist/cjs/fields/TimeRangeScrubber/index.native.js +2 -2
  183. package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -1
  184. package/dist/cjs/fields/ToggleGroup/index.native.js +1 -1
  185. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  186. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js +1 -1
  187. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  188. package/dist/cjs/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
  189. package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  190. package/dist/cjs/fields/nativeDateTime/sheetKeyboard.native.js.map +1 -1
  191. package/dist/cjs/fields/nativeSelect.native.js.map +1 -1
  192. package/dist/cjs/fields/selectedOrder.native.js.map +1 -1
  193. package/dist/cjs/formSpacing.native.js.map +1 -1
  194. package/dist/cjs/hooks/useFocusManagement.native.js.map +1 -1
  195. package/dist/cjs/index.cjs +3 -0
  196. package/dist/cjs/index.native.js +48 -45
  197. package/dist/cjs/index.native.js.map +1 -1
  198. package/dist/cjs/keyboard/KeyboardDoneBar.native.js +1 -1
  199. package/dist/cjs/keyboard/chain.native.js.map +1 -1
  200. package/dist/cjs/keyboard/index.native.js.map +1 -1
  201. package/dist/cjs/keyboard/types.native.js.map +1 -1
  202. package/dist/cjs/requiredMarking.native.js.map +1 -1
  203. package/dist/cjs/shared/TimeColumn.native.js +1 -1
  204. package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
  205. package/dist/cjs/shared/capabilityPreflight.native.js.map +1 -1
  206. package/dist/cjs/shared/choiceRowPress.native.js.map +1 -1
  207. package/dist/cjs/shared/colorRamps.native.js.map +1 -1
  208. package/dist/cjs/shared/devWarn.native.js.map +1 -1
  209. package/dist/cjs/shared/floatingList.native.js +1 -1
  210. package/dist/cjs/shared/floatingList.native.js.map +1 -1
  211. package/dist/cjs/shared/focusManagement.native.js.map +1 -1
  212. package/dist/cjs/shared/groupContext.native.js.map +1 -1
  213. package/dist/cjs/shared/i18n.native.js.map +1 -1
  214. package/dist/cjs/shared/instantMotion.native.js.map +1 -1
  215. package/dist/cjs/shared/nativeA11y.native.js.map +1 -1
  216. package/dist/cjs/shared/nativeAutoFocus.native.js.map +1 -1
  217. package/dist/cjs/shared/overlaySizeClass.native.js.map +1 -1
  218. package/dist/cjs/shared/overlayStack.native.js.map +1 -1
  219. package/dist/cjs/shared/panelPortal.native.js.map +1 -1
  220. package/dist/cjs/shared/pickerTriggerContract.native.js.map +1 -1
  221. package/dist/cjs/shared/pressSlopProps.native.js.map +1 -1
  222. package/dist/cjs/shared/restoreRetries.native.js.map +1 -1
  223. package/dist/cjs/shared/sheetNavigation.native.js.map +1 -1
  224. package/dist/cjs/shared/systemControlModules.gnome.native.js.map +1 -1
  225. package/dist/cjs/shared/systemControls.native.js.map +1 -1
  226. package/dist/cjs/shared/t.native.js.map +1 -1
  227. package/dist/cjs/shared/tableCellContext.native.js.map +1 -1
  228. package/dist/cjs/shared/touchWebPicker.native.js.map +1 -1
  229. package/dist/cjs/shared/useDragScroll.native.js.map +1 -1
  230. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
  231. package/dist/cjs/shared/useSheetEscapeDismiss.native.js.map +1 -1
  232. package/dist/cjs/shared/useWheelIncrement.native.js.map +1 -1
  233. package/dist/cjs/shared/utils.native.js +1 -1
  234. package/dist/cjs/shared/utils.native.js.map +1 -1
  235. package/dist/cjs/shared/zIndex.native.js.map +1 -1
  236. package/dist/cjs/standardActions.native.js.map +1 -1
  237. package/dist/cjs/themedPrimitives.native.js.map +1 -1
  238. package/dist/cjs/types.native.js.map +1 -1
  239. package/dist/cjs/utils/LinkCell.native.js.map +1 -1
  240. package/dist/esm/Button/IconButtonGroup.mjs +69 -0
  241. package/dist/esm/Button/IconButtonGroup.mjs.map +1 -0
  242. package/dist/esm/Button/IconButtonGroup.native.js +72 -0
  243. package/dist/esm/Button/IconButtonGroup.native.js.map +1 -0
  244. package/dist/esm/Button/glass.mjs +4 -1
  245. package/dist/esm/Button/glass.mjs.map +1 -1
  246. package/dist/esm/Button/glass.native.js +8 -1
  247. package/dist/esm/Button/glass.native.js.map +1 -1
  248. package/dist/esm/Button/iconButtonGroupContext.mjs +7 -0
  249. package/dist/esm/Button/iconButtonGroupContext.mjs.map +1 -0
  250. package/dist/esm/Button/iconButtonGroupContext.native.js +7 -0
  251. package/dist/esm/Button/iconButtonGroupContext.native.js.map +1 -0
  252. package/dist/esm/Button/index.mjs +32 -21
  253. package/dist/esm/Button/index.mjs.map +1 -1
  254. package/dist/esm/Button/index.native.js +33 -21
  255. package/dist/esm/Button/index.native.js.map +1 -1
  256. package/dist/esm/Button/mediaPlate.mjs +6 -0
  257. package/dist/esm/Button/mediaPlate.mjs.map +1 -0
  258. package/dist/esm/Button/mediaPlate.native.js +6 -0
  259. package/dist/esm/Button/mediaPlate.native.js.map +1 -0
  260. package/dist/esm/FloatingPanel/index.native.js +22 -17
  261. package/dist/esm/FloatingPanel/index.native.js.map +1 -1
  262. package/dist/esm/fields/FileUpload/index.mjs +5 -2
  263. package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
  264. package/dist/esm/fields/FileUpload/index.native.js +5 -2
  265. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  266. package/dist/esm/index.mjs +2 -2
  267. package/dist/esm/index.mjs.map +1 -1
  268. package/dist/esm/index.native.js +2 -2
  269. package/dist/esm/index.native.js.map +1 -1
  270. package/dist/jsx/Button/IconButtonGroup.mjs +69 -0
  271. package/dist/jsx/Button/IconButtonGroup.mjs.map +1 -0
  272. package/dist/jsx/Button/IconButtonGroup.native.js +101 -0
  273. package/dist/jsx/Button/IconButtonGroup.native.js.map +1 -0
  274. package/dist/jsx/Button/glass.mjs +4 -1
  275. package/dist/jsx/Button/glass.mjs.map +1 -1
  276. package/dist/jsx/Button/glass.native.js +8 -0
  277. package/dist/jsx/Button/glass.native.js.map +1 -1
  278. package/dist/jsx/Button/iconButtonGroupContext.mjs +7 -0
  279. package/dist/jsx/Button/iconButtonGroupContext.mjs.map +1 -0
  280. package/dist/jsx/Button/iconButtonGroupContext.native.js +36 -0
  281. package/dist/jsx/Button/iconButtonGroupContext.native.js.map +1 -0
  282. package/dist/jsx/Button/index.mjs +32 -21
  283. package/dist/jsx/Button/index.mjs.map +1 -1
  284. package/dist/jsx/Button/index.native.js +36 -20
  285. package/dist/jsx/Button/index.native.js.map +1 -1
  286. package/dist/jsx/Button/mediaPlate.mjs +6 -0
  287. package/dist/jsx/Button/mediaPlate.mjs.map +1 -0
  288. package/dist/jsx/Button/mediaPlate.native.js +34 -0
  289. package/dist/jsx/Button/mediaPlate.native.js.map +1 -0
  290. package/dist/jsx/FloatingPanel/index.native.js +21 -16
  291. package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
  292. package/dist/jsx/fields/FileUpload/index.mjs +5 -2
  293. package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
  294. package/dist/jsx/fields/FileUpload/index.native.js +4 -1
  295. package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
  296. package/dist/jsx/index.js +2 -2
  297. package/dist/jsx/index.js.map +1 -1
  298. package/dist/jsx/index.mjs +2 -2
  299. package/dist/jsx/index.mjs.map +1 -1
  300. package/dist/jsx/index.native.js +3 -0
  301. package/dist/jsx/index.native.js.map +1 -1
  302. package/package.json +8 -8
  303. package/src/Button/Button.iconButton.spec.tsx +76 -14
  304. package/src/Button/Button.stories.tsx +142 -21
  305. package/src/Button/IconButtonGroup.spec.tsx +126 -0
  306. package/src/Button/IconButtonGroup.tsx +87 -0
  307. package/src/Button/glass.native.ts +15 -2
  308. package/src/Button/glass.ts +16 -1
  309. package/src/Button/iconButtonGroupContext.ts +14 -0
  310. package/src/Button/index.tsx +82 -42
  311. package/src/Button/mediaPlate.ts +9 -0
  312. package/src/FloatingPanel/FloatingPanel.pointMenu.native.spec.tsx +69 -0
  313. package/src/FloatingPanel/index.native.tsx +25 -4
  314. package/src/fields/FileUpload/FileUpload.spec.tsx +11 -7
  315. package/src/fields/FileUpload/index.tsx +4 -2
  316. package/src/index.ts +9 -1
  317. package/types/Button/IconButtonGroup.d.ts +22 -0
  318. package/types/Button/IconButtonGroup.d.ts.map +1 -0
  319. package/types/Button/glass.d.ts +12 -1
  320. package/types/Button/glass.d.ts.map +1 -1
  321. package/types/Button/glass.native.d.ts +8 -2
  322. package/types/Button/glass.native.d.ts.map +1 -1
  323. package/types/Button/iconButtonGroupContext.d.ts +9 -0
  324. package/types/Button/iconButtonGroupContext.d.ts.map +1 -0
  325. package/types/Button/index.d.ts +18 -9
  326. package/types/Button/index.d.ts.map +1 -1
  327. package/types/Button/mediaPlate.d.ts +10 -0
  328. package/types/Button/mediaPlate.d.ts.map +1 -0
  329. package/types/FloatingPanel/index.native.d.ts +2 -1
  330. package/types/FloatingPanel/index.native.d.ts.map +1 -1
  331. package/types/fields/FileUpload/index.d.ts.map +1 -1
  332. package/types/index.d.ts +2 -2
  333. package/types/index.d.ts.map +1 -1
@@ -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","index_exports","AdaptivePopup","import_AdaptivePopup","Barcode","import_Barcode","BarcodePreview","import_BarcodePreview","Button","import_Button","Calendar","import_DatePicker","Checkbox","import_Checkbox","CheckboxGroup","Checkboxes","Chip","import_Chip","ChipFrame","ChipText","ColorPicker","import_ColorPicker","Combobox","import_Combobox","ContextualSaveBar","import_ContextualSaveBar","ControlGroup","import_ControlGroup","DRAWN_ICON_NAMES","import_Icon","DURATION_PRESET_SIZE","import_Duration","DatePicker","DateRangePicker","DatetimePicker","DescriptionList","import_DescriptionList","DescriptionListSlotProvider","import_FieldDisplay","DrawnIcon","Duration","ErrorSummary","import_ErrorSummary","FIELD_EDIT_MODE","import_editMode","FIELD_WIDTH_BY_PURPOSE","import_fieldDefaults","FORM_GRID_COLLAPSE_WIDTH","import_FormGrid","Field","import_fieldLayout","FieldDisplay","FieldGroup","import_FieldGroup","FieldLayout","FieldTrailingOverlay","import_InputParts3","Fieldset","import_FormSection","FileUpload","import_FileUpload","FloatingPanel","import_FloatingPanel","FocusContext","import_InputParts2","Form","import_Form","FormActions","FormGrid","FormSaveModeContext","FormSection","FormSectionStack","FormValidateContext","GeocoderProvider","import_geocoderContext","Geolocation","import_Geolocation","HIDE_PASSWORD","import_PasswordReveal","ICON_BUTTON_GLYPH_PX","ICON_BUTTON_NEUTRAL_GLYPH_PX","ICON_BUTTON_PRESS_OPACITY","INPUT_MODE_TO_KEYBOARD","Icon","IconButton","ImageField","import_ImageField","Input","import_Input","InputContainerFrame","InputContext","InputFieldMeta","InputIconFrame","InputInfo","InputLabel","InputParts","import_InputParts","KEYBOARD_TO_INPUT_MODE","KeyboardChain","import_keyboard","KeyboardChainContext","KeyboardChainScope","KeyboardDoneBar","LABEL_COLUMN_MAX_CH","LABEL_COLUMN_WIDTH","Label","import_Label","MediaPickerError","import_types","MentionInput","import_MentionInput","MonthPicker","MultiDatePicker","OTPInput","import_OTPInput","OverlayStackProvider","import_overlayStack","OverlayWindow","import_OverlayWindow","PanelPortal","import_PanelPortal","PasswordReveal","PhoneInput","import_PhoneInput","PresetSwatches","import_parts","Progress","import_Progress","PropertyList","RadioGroup","import_RadioGroup","Rating","import_Rating","RequiredMarkingContext","import_requiredMarking","SHEET_PANEL_WIDTH","import_overlaySizeClass","SHOW_PASSWORD","SearchInput","import_SearchInput","Select","import_Select","SheetNavigationProvider","import_sheetNavigation","Signature","import_Signature","Skeleton","import_Skeleton","SkeletonCircle","SkeletonGroup","SkeletonText","Slider","import_Slider","Spinner","import_Spinner","Stepper","import_Stepper","Switch","import_Switch","Table","import_Table","TableCellContext","import_tableCellContext","TextArea","import_TextArea","TimePicker","import_TimePicker","TimeRangeScrubber","import_TimeRangeScrubber","ToggleGroup","import_ToggleGroup","Wheel","import_Wheel","chipIconSize","clampRadiusForControl","import_utils","clampRadiusForLargeComponent","clampRadiusInStateProps","clientKnownIdentity","collectFormFieldErrors","commitImmediateField","computeRequiredMarkMode","containsAcrossPanels","import_panelPortal","createPhotonGeocoder","import_photonGeocoder","createSheetNavigationStore","defaultInputGroupStyles","fieldWidthStyle","filterDrawnIcons","focusFieldTarget","import_useFocusManagement","focusFirstInvalid","formCommonColors","import_colorRamps","formDropzoneColors","formFieldGap","import_formSpacing","formReadableMaxWidth","formSectionGap","formSelectedColors","formSelectionColors","formatActionLabel","import_actionLabel","formatDateText","import_formatters","formatFieldError","formatNumericText","formatRequiredMarkSuffix","getEditMode","getFieldError","inputSizeVariant","isDrawnIconName","isFieldPurpose","mapHouseRequiredMarking","mapInputModeToKeyboardType","mapKeyboardTypeToInputMode","mergeFieldHandler","normalizeFieldError","orderOptionsBySelected","import_selectedOrder","overlaySizeClass","overlayStackStep","panelAnimationDuration","panelGrowDuration","panelTransition","panelViewportPadding","parseIconOptions","pickAdaptivePopupFace","pressSlopOutsetProps","import_pressSlopProps","pressSlopProps","readingOrder","remapValidatorsForTiming","resolveEffectiveValidateOn","resolveFieldPurpose","resolveFieldWidth","resolveGeocoder","import_geocoder","resolveIconCatalog","resolveStepperPlacement","import_resolveStepperPlacement","sheetPanelWidth","signatureValueToSvg","stackedOverlayZIndex","standardActionWords","import_standardActions","standardActions","useControlGrouped","import_groupContext","useEffectiveValidateOn","useFloatingPanel","useFocusManagement","useForm","import_react_form","useFormContext","useFormField","useFormSaveMode","useFormValidate","useForwardFocus","useGeocoder","useIsInDescriptionList","useIsInTableCell","useKeyboardChain","useMediaPicker","import_useMediaPicker","useOverlayParentZIndex","useOverlaySizeClass","useOverlayZIndex"],"sources":["../../src/index.ts"],"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","index_exports","AdaptivePopup","import_AdaptivePopup","Barcode","import_Barcode","BarcodePreview","import_BarcodePreview","Button","import_Button","Calendar","import_DatePicker","Checkbox","import_Checkbox","CheckboxGroup","Checkboxes","Chip","import_Chip","ChipFrame","ChipText","ColorPicker","import_ColorPicker","Combobox","import_Combobox","ContextualSaveBar","import_ContextualSaveBar","ControlGroup","import_ControlGroup","DRAWN_ICON_NAMES","import_Icon","DURATION_PRESET_SIZE","import_Duration","DatePicker","DateRangePicker","DatetimePicker","DescriptionList","import_DescriptionList","DescriptionListSlotProvider","import_FieldDisplay","DrawnIcon","Duration","ErrorSummary","import_ErrorSummary","FIELD_EDIT_MODE","import_editMode","FIELD_WIDTH_BY_PURPOSE","import_fieldDefaults","FORM_GRID_COLLAPSE_WIDTH","import_FormGrid","Field","import_fieldLayout","FieldDisplay","FieldGroup","import_FieldGroup","FieldLayout","FieldTrailingOverlay","import_InputParts3","Fieldset","import_FormSection","FileUpload","import_FileUpload","FloatingPanel","import_FloatingPanel","FocusContext","import_InputParts2","Form","import_Form","FormActions","FormGrid","FormSaveModeContext","FormSection","FormSectionStack","FormValidateContext","GeocoderProvider","import_geocoderContext","Geolocation","import_Geolocation","HIDE_PASSWORD","import_PasswordReveal","ICON_BUTTON_GLASS_MERGE_PX","ICON_BUTTON_GLYPH_PX","ICON_BUTTON_NEUTRAL_GLYPH_PX","ICON_BUTTON_PRESS_OPACITY","INPUT_MODE_TO_KEYBOARD","Icon","IconButton","IconButtonGroup","ImageField","import_ImageField","Input","import_Input","InputContainerFrame","InputContext","InputFieldMeta","InputIconFrame","InputInfo","InputLabel","InputParts","import_InputParts","KEYBOARD_TO_INPUT_MODE","KeyboardChain","import_keyboard","KeyboardChainContext","KeyboardChainScope","KeyboardDoneBar","LABEL_COLUMN_MAX_CH","LABEL_COLUMN_WIDTH","Label","import_Label","MediaPickerError","import_types","MentionInput","import_MentionInput","MonthPicker","MultiDatePicker","OTPInput","import_OTPInput","OverlayStackProvider","import_overlayStack","OverlayWindow","import_OverlayWindow","PanelPortal","import_PanelPortal","PasswordReveal","PhoneInput","import_PhoneInput","PresetSwatches","import_parts","Progress","import_Progress","PropertyList","RadioGroup","import_RadioGroup","Rating","import_Rating","RequiredMarkingContext","import_requiredMarking","SHEET_PANEL_WIDTH","import_overlaySizeClass","SHOW_PASSWORD","SearchInput","import_SearchInput","Select","import_Select","SheetNavigationProvider","import_sheetNavigation","Signature","import_Signature","Skeleton","import_Skeleton","SkeletonCircle","SkeletonGroup","SkeletonText","Slider","import_Slider","Spinner","import_Spinner","Stepper","import_Stepper","Switch","import_Switch","Table","import_Table","TableCellContext","import_tableCellContext","TextArea","import_TextArea","TimePicker","import_TimePicker","TimeRangeScrubber","import_TimeRangeScrubber","ToggleGroup","import_ToggleGroup","Wheel","import_Wheel","chipIconSize","clampRadiusForControl","import_utils","clampRadiusForLargeComponent","clampRadiusInStateProps","clientKnownIdentity","collectFormFieldErrors","commitImmediateField","computeRequiredMarkMode","containsAcrossPanels","import_panelPortal","createPhotonGeocoder","import_photonGeocoder","createSheetNavigationStore","defaultInputGroupStyles","fieldWidthStyle","filterDrawnIcons","focusFieldTarget","import_useFocusManagement","focusFirstInvalid","formCommonColors","import_colorRamps","formDropzoneColors","formFieldGap","import_formSpacing","formReadableMaxWidth","formSectionGap","formSelectedColors","formSelectionColors","formatActionLabel","import_actionLabel","formatDateText","import_formatters","formatFieldError","formatNumericText","formatRequiredMarkSuffix","getEditMode","getFieldError","iconButtonGlyphPx","inputSizeVariant","isDrawnIconName","isFieldPurpose","mapHouseRequiredMarking","mapInputModeToKeyboardType","mapKeyboardTypeToInputMode","mergeFieldHandler","normalizeFieldError","orderOptionsBySelected","import_selectedOrder","overlaySizeClass","overlayStackStep","panelAnimationDuration","panelGrowDuration","panelTransition","panelViewportPadding","parseIconOptions","pickAdaptivePopupFace","pressSlopOutsetProps","import_pressSlopProps","pressSlopProps","readingOrder","remapValidatorsForTiming","resolveEffectiveValidateOn","resolveFieldPurpose","resolveFieldWidth","resolveGeocoder","import_geocoder","resolveIconCatalog","resolveStepperPlacement","import_resolveStepperPlacement","sheetPanelWidth","signatureValueToSvg","stackedOverlayZIndex","standardActionWords","import_standardActions","standardActions","useControlGrouped","import_groupContext","useEffectiveValidateOn","useFloatingPanel","useFocusManagement","useForm","import_react_form","useFormContext","useFormField","useFormSaveMode","useFormValidate","useForwardFocus","useGeocoder","useIsInDescriptionList","useIsInTableCell","useKeyboardChain","useMediaPicker","import_useMediaPicker","useOverlayParentZIndex","useOverlaySizeClass","useOverlayZIndex"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplatform.one/forms",
3
- "version": "7.68.0",
3
+ "version": "7.69.0",
4
4
  "description": "Cross-platform form components with URL state management",
5
5
  "keywords": [
6
6
  "cross-platform",
@@ -57,10 +57,10 @@
57
57
  },
58
58
  "dependencies": {
59
59
  "@floating-ui/react": "^0.27.20",
60
- "@multiplatform.one/platform": "^7.68.0",
61
- "@multiplatform.one/router": "^7.68.0",
62
- "@multiplatform.one/table-primitives": "^7.68.0",
63
- "@multiplatform.one/theme": "^7.68.0",
60
+ "@multiplatform.one/platform": "^7.69.0",
61
+ "@multiplatform.one/router": "^7.69.0",
62
+ "@multiplatform.one/table-primitives": "^7.69.0",
63
+ "@multiplatform.one/theme": "^7.69.0",
64
64
  "@phosphor-icons/react": "^2.1.10",
65
65
  "@tamagui/get-font-sized": "2.7.6",
66
66
  "@tamagui/get-token": "2.7.6",
@@ -80,9 +80,9 @@
80
80
  },
81
81
  "devDependencies": {
82
82
  "@expo/ui": "~55.0.17",
83
- "@multiplatform.one/config": "7.68.0",
84
- "@multiplatform.one/storybook": "7.68.0",
85
- "@multiplatform.one/test-utils": "7.68.0",
83
+ "@multiplatform.one/config": "7.69.0",
84
+ "@multiplatform.one/storybook": "7.69.0",
85
+ "@multiplatform.one/test-utils": "7.69.0",
86
86
  "@tamagui/build": "2.7.6",
87
87
  "@tamagui/config": "2.7.6",
88
88
  "@tamagui/vite-plugin": "2.7.6",
@@ -18,12 +18,21 @@ import { createDefaultThemeConfig, Surface } from "@multiplatform.one/theme";
18
18
  import type { ReactElement } from "react";
19
19
  import { TamaguiProvider, YStack } from "tamagui";
20
20
  import { afterEach, describe, expect, it, vi } from "vitest";
21
- import { Button, ICON_BUTTON_GLYPH_PX, ICON_BUTTON_NEUTRAL_GLYPH_PX, IconButton } from "./index";
21
+ import {
22
+ Button,
23
+ ICON_BUTTON_CIRCLE_GLYPH_RATIO,
24
+ ICON_BUTTON_GLYPH_PX,
25
+ ICON_BUTTON_NEUTRAL_GLYPH_PX,
26
+ IconButton,
27
+ iconButtonGlyphPx,
28
+ labelLinePx,
29
+ } from "./index";
22
30
 
23
31
  const glass = vi.hoisted(() => ({ available: false }));
24
32
  vi.mock("./glass", () => ({
25
33
  loadGlassView: () =>
26
34
  glass.available ? (props: object) => <div data-glass="" {...props} /> : null,
35
+ loadGlassContainer: () => null,
27
36
  }));
28
37
 
29
38
  afterEach(() => {
@@ -110,6 +119,51 @@ describe("LC-176: an icon-only Button is a bare glyph", () => {
110
119
  expect(screen.getByLabelText(label).hasAttribute("data-mp-icon-button")).toBe(false);
111
120
  });
112
121
 
122
+ it.each(SCHEMES)(
123
+ "%s: circular chromeless paints no plate, so it is an icon button too",
124
+ (scheme) => {
125
+ // The SHC console's add (+) and copy buttons, written before LC-176.
126
+ houseRender(
127
+ <>
128
+ <Button size="$3" circular chromeless accentInk icon={Glyph} aria-label="Add" />
129
+ <Button size="$3" chromeless accentInk icon={Glyph} aria-label="Bare" />
130
+ </>,
131
+ scheme,
132
+ );
133
+ const add = screen.getByLabelText("Add");
134
+ expect(add.getAttribute("data-mp-icon-button")).toBe("glyph");
135
+ expect(rest(add, "_bg-")).toEqual(rest(screen.getByLabelText("Bare"), "_bg-"));
136
+ expect(rest(add, "_col-")).toEqual(rest(screen.getByLabelText("Bare"), "_col-"));
137
+ expect(glyphOf("Add").getAttribute("data-weight")).toBe("bold");
138
+ expect(Number(glyphOf("Add").getAttribute("width"))).toBe(
139
+ Number(glyphOf("Bare").getAttribute("width")),
140
+ );
141
+ // A pointer toolbar keeps its token box (LC-54), so the floor is the
142
+ // glyph the box holds, never the recipe's small label icon.
143
+ expect(Number(glyphOf("Add").getAttribute("width"))).toBeGreaterThan(16);
144
+ },
145
+ );
146
+
147
+ it.each(["$3", "$4"] as const)(
148
+ "%s: a circle the caller asks for carries its glyph at the Settings ratio, bold",
149
+ (size) => {
150
+ // Clay, IMG_1926 on FZ-8020: the SHC Updates rows drew a ~12pt glyph in
151
+ // a 44pt `circular outlined` plate.
152
+ houseRender(
153
+ <Button size={size} circular outlined icon={Glyph} aria-label="Update" />,
154
+ "dark",
155
+ );
156
+ const update = screen.getByLabelText("Update");
157
+ expect(update.hasAttribute("data-mp-icon-button")).toBe(false);
158
+ const circle = Number(update.getAttribute("data-mp-button-height"));
159
+ const glyph = Number(glyphOf("Update").getAttribute("width"));
160
+ expect(glyph).toBe(Math.round(circle * ICON_BUTTON_CIRCLE_GLYPH_RATIO));
161
+ expect(glyph / circle).toBeGreaterThanOrEqual(0.55);
162
+ expect(glyph / circle).toBeLessThanOrEqual(0.6);
163
+ expect(glyphOf("Update").getAttribute("data-weight")).toBe("bold");
164
+ },
165
+ );
166
+
113
167
  it("a selected icon toggle keeps the LC-131 selected fill", () => {
114
168
  houseRender(<Button icon={Glyph} aria-label="Shuffle" selected />, "light");
115
169
  expect(screen.getByLabelText("Shuffle").getAttribute("data-mp-selected")).toBe("true");
@@ -156,9 +210,9 @@ describe("LC-176: an icon-only Button is a bare glyph", () => {
156
210
  expect(Number(glyphOf("Neutral").getAttribute("width"))).toBeGreaterThanOrEqual(
157
211
  ICON_BUTTON_NEUTRAL_GLYPH_PX,
158
212
  );
159
- // An intent keeps its own on-page ink and the regular stroke.
213
+ // An intent keeps its own on-page ink; the stroke stays bold.
160
214
  expect(screen.getByLabelText("Delete").getAttribute("data-mp-icon-button")).toBe("glyph");
161
- expect(glyphOf("Delete").getAttribute("data-weight")).toBe("regular");
215
+ expect(glyphOf("Delete").getAttribute("data-weight")).toBe("bold");
162
216
  },
163
217
  );
164
218
 
@@ -177,7 +231,7 @@ describe("LC-176: an icon-only Button is a bare glyph", () => {
177
231
  const search = screen.getByLabelText("Search");
178
232
  expect(search.getAttribute("data-mp-icon-button")).toBe("glass");
179
233
  expect(search.querySelector("[data-glass]")).not.toBeNull();
180
- expect(glyphOf("Search").getAttribute("data-weight")).toBe("regular");
234
+ expect(glyphOf("Search").getAttribute("data-weight")).toBe("bold");
181
235
  // Glass is the bar button; content and inline glyphs never float on it.
182
236
  expect(screen.getByLabelText("Content").querySelector("[data-glass]")).toBeNull();
183
237
  expect(screen.getByLabelText("InlineInBar").querySelector("[data-glass]")).toBeNull();
@@ -209,29 +263,32 @@ describe("LC-176: an icon-only Button is a bare glyph", () => {
209
263
  expect(rest(named, "_bg-")).toEqual(rest(plain, "_bg-"));
210
264
  });
211
265
 
212
- it("a bar glyph carries the weight: 22pt or more, Phosphor regular, in its box", () => {
266
+ it("a bar glyph is as tall in ink as the row's text line, Phosphor bold, in its box", () => {
213
267
  houseRender(
214
268
  <Surface bar>
215
269
  <Button size="$2" icon={Glyph} aria-label="Small" />
216
270
  <Button icon={Glyph} aria-label="Default" />
217
- <IconButton glyphWeight="bold" icon={Glyph} aria-label="Bold" />
271
+ <IconButton glyphWeight="regular" icon={Glyph} aria-label="Regular" />
218
272
  <Button size="$2" icon={Glyph}>
219
273
  Label
220
274
  </Button>
221
275
  </Surface>,
222
276
  "light",
223
277
  );
224
- expect(ICON_BUTTON_GLYPH_PX).toBeGreaterThanOrEqual(22);
225
- expect(Number(glyphOf("Default").getAttribute("width"))).toBeGreaterThanOrEqual(
226
- ICON_BUTTON_GLYPH_PX,
227
- );
278
+ expect(ICON_BUTTON_GLYPH_PX).toBeGreaterThanOrEqual(24);
279
+ const line = labelLinePx("$body");
280
+ expect(line).toBeDefined();
281
+ const glyphPx = Number(glyphOf("Default").getAttribute("width"));
282
+ expect(glyphPx).toBeGreaterThanOrEqual(iconButtonGlyphPx(line));
283
+ // Phosphor inks ~208 of 256 units: the glyph's ink meets the text line.
284
+ expect(Math.abs((iconButtonGlyphPx(line) * 208) / 256 - line!)).toBeLessThanOrEqual(1);
228
285
  for (const label of ["Small", "Default"]) {
229
286
  const glyph = glyphOf(label);
230
- expect(glyph.getAttribute("data-weight")).toBe("regular");
287
+ expect(glyph.getAttribute("data-weight")).toBe("bold");
231
288
  const box = Number(screen.getByLabelText(label).getAttribute("data-mp-button-height"));
232
289
  expect(box).toBeGreaterThanOrEqual(Number(glyph.getAttribute("width")));
233
290
  }
234
- expect(glyphOf("Bold").getAttribute("data-weight")).toBe("bold");
291
+ expect(glyphOf("Regular").getAttribute("data-weight")).toBe("regular");
235
292
  const labelled = screen.getByText("Label").closest("[role=button]")!;
236
293
  const labelGlyph = labelled.querySelector("[data-glyph]")!;
237
294
  expect(Number(labelGlyph.getAttribute("width"))).toBeLessThan(ICON_BUTTON_GLYPH_PX);
@@ -252,20 +309,25 @@ describe("LC-176: an icon-only Button is a bare glyph", () => {
252
309
  const bar = Number(glyphOf("Bar").getAttribute("width"));
253
310
  for (const label of ["Remove photo", "Done"]) {
254
311
  expect(Number(glyphOf(label).getAttribute("width"))).toBe(bar);
255
- expect(glyphOf(label).getAttribute("data-weight")).toBe("regular");
312
+ expect(glyphOf(label).getAttribute("data-weight")).toBe("bold");
256
313
  }
257
314
  });
258
315
 
259
- it("an inline glyph is the text's size, 8pt after the value, bold in content", () => {
316
+ it("an inline glyph is the text's size, 8pt after the value, bold and tinted in content", () => {
260
317
  houseRender(
261
318
  <>
262
319
  <IconButton inline icon={Glyph} aria-label="Copy" />
263
320
  <IconButton icon={Glyph} aria-label="Bar" />
321
+ <IconButton accentInk icon={Glyph} aria-label="Tinted" />
264
322
  </>,
265
323
  "light",
266
324
  );
267
325
  const copy = screen.getByLabelText("Copy");
268
326
  expect(copy.getAttribute("data-mp-icon-button")).toBe("inline");
327
+ // Clay on the SHC Nodes screen (FZ-8020): the copy beside "shc node join"
328
+ // read as untinted text. It takes the identity ink, not the text colour.
329
+ expect(rest(copy, "_col-")).toEqual(rest(screen.getByLabelText("Tinted"), "_col-"));
330
+ expect(rest(copy, "_col-")).not.toEqual(rest(screen.getByLabelText("Bar"), "_col-"));
269
331
  const size = Number(glyphOf("Copy").getAttribute("width"));
270
332
  expect(size).toBeGreaterThan(12);
271
333
  expect(size).toBeLessThan(ICON_BUTTON_GLYPH_PX);
@@ -1,6 +1,6 @@
1
1
  import { action } from "@multiplatform.one/storybook";
2
2
  import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
3
- import { Activity, Airplay, Copy, Download, Trash } from "@tamagui/lucide-icons-2";
3
+ import { Activity, Airplay, Download, Trash } from "@tamagui/lucide-icons-2";
4
4
  import {
5
5
  FOCUS_RING_CLIPPED_OFFSET,
6
6
  FOCUS_RING_MIN_CONTRAST,
@@ -9,7 +9,21 @@ import {
9
9
  Surface,
10
10
  } from "@multiplatform.one/theme";
11
11
  import { Button as TamaguiButton, XStack, YStack, useTheme } from "tamagui";
12
- import { Button, IconButton, type ButtonProps } from "./index";
12
+ import {
13
+ ArchiveIcon,
14
+ ArrowCircleUpIcon,
15
+ ArrowsClockwiseIcon,
16
+ CaretLeftIcon,
17
+ CopyIcon,
18
+ DotsThreeIcon,
19
+ DownloadSimpleIcon,
20
+ EnvelopeSimpleIcon,
21
+ HeartIcon,
22
+ PlusIcon,
23
+ TrashIcon,
24
+ XIcon,
25
+ } from "@phosphor-icons/react";
26
+ import { Button, IconButton, IconButtonGroup, type ButtonProps } from "./index";
13
27
  import { useState } from "react";
14
28
 
15
29
  const pressed = (name: string) => () => action(name)();
@@ -432,26 +446,55 @@ export const IconButtons: Story = {
432
446
  return (
433
447
  <YStack gap="$4" padding="$4" backgroundColor="$background">
434
448
  <Surface bar>
435
- <XStack gap="$1" alignItems="center" data-testid="icon-button-toolbar">
436
- <IconButton icon={Activity} aria-label="Activity" onPress={pressed("activity")} />
437
- <IconButton icon={Airplay} aria-label="Cast" onPress={pressed("cast")} />
438
- <IconButton icon={Download} aria-label="Download" onPress={pressed("download")} />
439
- <IconButton icon={Download} aria-label="Download (nothing to download)" disabled />
440
- <IconButton
441
- icon={Airplay}
442
- aria-label="Toggle cast"
443
- selected={on}
444
- onPress={() => setOn((v) => !v)}
445
- />
449
+ <XStack alignItems="center" data-testid="icon-button-bar">
450
+ <IconButton icon={CaretLeftIcon} aria-label="Back" onPress={pressed("back")} />
451
+ <Paragraph flex={1} fontWeight="600">
452
+ Inbox
453
+ </Paragraph>
454
+ <IconButtonGroup data-testid="icon-button-toolbar">
455
+ <IconButton icon={ArchiveIcon} aria-label="Archive" onPress={pressed("archive")} />
456
+ <IconButton icon={TrashIcon} aria-label="Delete" onPress={pressed("delete")} />
457
+ <IconButton
458
+ icon={EnvelopeSimpleIcon}
459
+ aria-label="Mark unread"
460
+ selected={on}
461
+ onPress={() => setOn((v) => !v)}
462
+ />
463
+ <IconButton icon={DotsThreeIcon} aria-label="More" onPress={pressed("more")} />
464
+ </IconButtonGroup>
446
465
  </XStack>
447
466
  </Surface>
448
- <XStack gap="$1" alignItems="center" data-testid="icon-button-content">
449
- <IconButton icon={Download} aria-label="Download" onPress={pressed("download")} />
450
- <IconButton icon={Trash} error aria-label="Delete" onPress={pressed("delete")} />
467
+ <Surface bar>
468
+ <XStack alignItems="center" data-testid="icon-button-bar-disabled">
469
+ <Paragraph flex={1}>Downloads</Paragraph>
470
+ <IconButtonGroup>
471
+ <IconButton
472
+ icon={DownloadSimpleIcon}
473
+ aria-label="Download"
474
+ onPress={pressed("download")}
475
+ />
476
+ <IconButton
477
+ icon={DownloadSimpleIcon}
478
+ aria-label="Download (nothing to download)"
479
+ disabled
480
+ />
481
+ </IconButtonGroup>
482
+ </XStack>
483
+ </Surface>
484
+ <XStack alignItems="center" data-testid="icon-button-content">
485
+ <Paragraph flex={1}>A row in content</Paragraph>
486
+ <IconButtonGroup>
487
+ <IconButton
488
+ icon={DownloadSimpleIcon}
489
+ aria-label="Download"
490
+ onPress={pressed("download")}
491
+ />
492
+ <IconButton icon={TrashIcon} error aria-label="Delete" onPress={pressed("delete")} />
493
+ </IconButtonGroup>
451
494
  </XStack>
452
495
  <XStack alignItems="center" data-testid="icon-button-inline">
453
496
  <Paragraph>shc node join</Paragraph>
454
- <IconButton inline icon={Copy} aria-label="Copy" onPress={pressed("copy")} />
497
+ <IconButton inline icon={CopyIcon} aria-label="Copy" onPress={pressed("copy")} />
455
498
  </XStack>
456
499
  <YStack
457
500
  position="relative"
@@ -461,16 +504,94 @@ export const IconButtons: Story = {
461
504
  borderRadius="$4"
462
505
  data-testid="icon-button-media"
463
506
  >
464
- <YStack position="absolute" top="$2" right="$2">
507
+ <YStack position="absolute" top="$2" left="$2">
465
508
  <IconButton
466
509
  plate="media"
467
- icon={Trash}
468
- aria-label="Remove photo"
469
- onPress={pressed("remove")}
510
+ icon={HeartIcon}
511
+ aria-label="Favourite"
512
+ onPress={pressed("favourite")}
470
513
  />
471
514
  </YStack>
515
+ <YStack position="absolute" top="$2" right="$2">
516
+ <IconButtonGroup plate="media">
517
+ <IconButton
518
+ plate="media"
519
+ icon={ArrowsClockwiseIcon}
520
+ aria-label="Replace photo"
521
+ onPress={pressed("replace")}
522
+ />
523
+ <IconButton
524
+ plate="media"
525
+ icon={XIcon}
526
+ aria-label="Remove photo"
527
+ onPress={pressed("remove")}
528
+ />
529
+ </IconButtonGroup>
530
+ </YStack>
472
531
  </YStack>
473
532
  </YStack>
474
533
  );
475
534
  },
476
535
  };
536
+
537
+ // The SHC console's call sites as written (features/console place.tsx and
538
+ // CopyButton.tsx), spread so the design lint's `circular` finding stays on
539
+ // SHC's own code rather than this reproduction.
540
+ const shcRoundGlyph = { circular: true, chromeless: true, accentInk: true } as const;
541
+
542
+ /** Clay's SHC Nodes screen (IMG_1925 on FZ-8020): the add and the copy. */
543
+ export const ShcNodesScreen: Story = {
544
+ render: () => (
545
+ <YStack gap="$4" padding="$4" backgroundColor="$background" data-testid="shc-nodes">
546
+ <XStack alignItems="center" gap="$2">
547
+ <Paragraph flex={1} size="$9" fontWeight="700">
548
+ Nodes
549
+ </Paragraph>
550
+ <Button size="$3" {...shcRoundGlyph} icon={PlusIcon} aria-label="Add node" />
551
+ </XStack>
552
+ <XStack alignItems="center" gap="$2">
553
+ <Paragraph fontFamily="$mono">shc node join</Paragraph>
554
+ <Button size="$2" {...shcRoundGlyph} icon={CopyIcon} aria-label="Copy" />
555
+ </XStack>
556
+ <XStack alignItems="center">
557
+ <Paragraph fontFamily="$mono">shc node join</Paragraph>
558
+ <IconButton inline icon={CopyIcon} aria-label="Copy (inline)" />
559
+ </XStack>
560
+ </YStack>
561
+ ),
562
+ };
563
+
564
+ // SHC features/console manage/app/UpdatesPane.tsx as written.
565
+ const shcUpdatePlate = { circular: true, outlined: true } as const;
566
+
567
+ /**
568
+ * Clay's SHC Updates rows (IMG_1926 on FZ-8020): the plate SHC asks for, its
569
+ * glyph now at the circle ratio, above the bare tinted glyph LC-176 wants.
570
+ */
571
+ export const ShcUpdateRows: Story = {
572
+ render: () => (
573
+ <YStack gap="$2" padding="$4" backgroundColor="$background" data-testid="shc-update-rows">
574
+ {(["$3", "$4"] as const).map((size) => (
575
+ <XStack key={size} alignItems="center" gap="$3" minHeight="$5">
576
+ <YStack flex={1}>
577
+ <Paragraph fontWeight="600">pokemon</Paragraph>
578
+ <Paragraph color="$color11">1.2.0+34</Paragraph>
579
+ </YStack>
580
+ <Button
581
+ size={size}
582
+ {...shcUpdatePlate}
583
+ icon={ArrowCircleUpIcon}
584
+ aria-label={`Update pokemon (plate ${size})`}
585
+ />
586
+ </XStack>
587
+ ))}
588
+ <XStack alignItems="center" gap="$3" minHeight="$5">
589
+ <YStack flex={1}>
590
+ <Paragraph fontWeight="600">pokemon</Paragraph>
591
+ <Paragraph color="$color11">1.2.0+34</Paragraph>
592
+ </YStack>
593
+ <IconButton accentInk icon={ArrowCircleUpIcon} aria-label="Update pokemon" />
594
+ </XStack>
595
+ </YStack>
596
+ ),
597
+ };
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @vitest-environment jsdom
3
+ *
4
+ * LC-176 (FZ-8020): icon buttons side by side share one ground, never a row
5
+ * of separate circles. Clay: "they'd actually group together, like you know
6
+ * how water bubbles all kind of group together."
7
+ */
8
+
9
+ import { cleanup, render, screen } from "@testing-library/react";
10
+ import { createDefaultThemeConfig, Surface } from "@multiplatform.one/theme";
11
+ import type { ReactElement } from "react";
12
+ import { TamaguiProvider } from "tamagui";
13
+ import { afterEach, describe, expect, it, vi } from "vitest";
14
+ import { IconButton, IconButtonGroup } from "./index";
15
+
16
+ const glass = vi.hoisted(() => ({ available: false, containerLoads: 0 }));
17
+ vi.mock("./glass", () => ({
18
+ loadGlassView: () =>
19
+ glass.available ? (props: object) => <div data-glass="" {...props} /> : null,
20
+ loadGlassContainer: () => {
21
+ glass.containerLoads += 1;
22
+ return glass.available
23
+ ? ({ children, spacing }: { children?: unknown; spacing?: number }) => (
24
+ <div data-glass-container={spacing}>{children as never}</div>
25
+ )
26
+ : null;
27
+ },
28
+ }));
29
+
30
+ afterEach(() => {
31
+ cleanup();
32
+ glass.available = false;
33
+ glass.containerLoads = 0;
34
+ });
35
+
36
+ const houseConfig = createDefaultThemeConfig();
37
+
38
+ function Glyph({ size, weight }: { size?: number; weight?: string }) {
39
+ return <svg data-glyph="" data-weight={weight} width={size} height={size} />;
40
+ }
41
+
42
+ function houseRender(ui: ReactElement) {
43
+ return render(
44
+ <TamaguiProvider config={houseConfig.tamagui} defaultTheme="light" disableInjectCSS>
45
+ {ui}
46
+ </TamaguiProvider>,
47
+ );
48
+ }
49
+
50
+ describe("LC-176: IconButtonGroup", () => {
51
+ it("over media, the group is one capsule and its buttons draw their glyphs alone", () => {
52
+ houseRender(
53
+ <>
54
+ <IconButtonGroup plate="media">
55
+ <IconButton plate="media" icon={Glyph} aria-label="Replace" />
56
+ <IconButton plate="media" icon={Glyph} aria-label="Remove" />
57
+ </IconButtonGroup>
58
+ <IconButton plate="media" icon={Glyph} aria-label="Lone" />
59
+ </>,
60
+ );
61
+ const capsules = document.querySelectorAll('[data-mp-icon-button-group="media"]');
62
+ expect(capsules).toHaveLength(1);
63
+ for (const label of ["Replace", "Remove"]) {
64
+ const button = screen.getByLabelText(label);
65
+ expect(capsules[0]!.contains(button)).toBe(true);
66
+ expect(button.getAttribute("data-mp-icon-button")).not.toBe("media");
67
+ expect(button.querySelector("[data-glyph]")!.getAttribute("data-weight")).toBe("bold");
68
+ }
69
+ // A lone button keeps its own circle.
70
+ expect(screen.getByLabelText("Lone").getAttribute("data-mp-icon-button")).toBe("media");
71
+ });
72
+
73
+ it("in a bar with Liquid Glass, the group is one glass capsule and its buttons draw their glyphs alone (FZ-8158)", () => {
74
+ glass.available = true;
75
+ houseRender(
76
+ <Surface bar>
77
+ <IconButtonGroup>
78
+ <IconButton icon={Glyph} aria-label="Archive" />
79
+ <IconButton icon={Glyph} aria-label="Delete" />
80
+ </IconButtonGroup>
81
+ <IconButton icon={Glyph} aria-label="Back" />
82
+ </Surface>,
83
+ );
84
+ const group = document.querySelector('[data-mp-icon-button-group="glass"]')!;
85
+ expect(group).not.toBeNull();
86
+ const capsules = document.querySelectorAll("[data-glass]");
87
+ expect(capsules).toHaveLength(2);
88
+ const capsule = capsules[0]!;
89
+ expect(capsule.parentElement!.contains(group)).toBe(true);
90
+ expect(document.querySelector("[data-glass-container]")).toBeNull();
91
+ for (const label of ["Archive", "Delete"]) {
92
+ const button = screen.getByLabelText(label);
93
+ expect(group.contains(button)).toBe(true);
94
+ expect(button.getAttribute("data-mp-icon-button")).toBe("glyph");
95
+ expect(button.querySelector("[data-glass]")).toBeNull();
96
+ }
97
+ // A lone button keeps its own circle.
98
+ expect(screen.getByLabelText("Back").getAttribute("data-mp-icon-button")).toBe("glass");
99
+ });
100
+
101
+ it("without the glass module the bar group is a bare row", () => {
102
+ houseRender(
103
+ <Surface bar>
104
+ <IconButtonGroup>
105
+ <IconButton icon={Glyph} aria-label="Search" />
106
+ <IconButton icon={Glyph} aria-label="More" />
107
+ </IconButtonGroup>
108
+ </Surface>,
109
+ );
110
+ expect(document.querySelector("[data-glass-container]")).toBeNull();
111
+ expect(document.querySelector('[data-mp-icon-button-group="bar"]')).not.toBeNull();
112
+ expect(screen.getByLabelText("Search").getAttribute("data-mp-icon-button")).toBe("glyph");
113
+ });
114
+
115
+ it("outside a bar it never loads the glass", () => {
116
+ glass.available = true;
117
+ houseRender(
118
+ <IconButtonGroup>
119
+ <IconButton icon={Glyph} aria-label="Copy" />
120
+ </IconButtonGroup>,
121
+ );
122
+ expect(glass.containerLoads).toBe(0);
123
+ expect(document.querySelector("[data-glass]")).toBeNull();
124
+ expect(document.querySelector('[data-mp-icon-button-group="row"]')).not.toBeNull();
125
+ });
126
+ });