@pagopa/io-app-design-system 4.3.0 → 4.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/lib/commonjs/components/Advice/__test__/__snapshots__/advice.test.tsx.snap +3 -3
  2. package/lib/commonjs/components/alert/Alert.js +34 -34
  3. package/lib/commonjs/components/alert/Alert.js.map +1 -1
  4. package/lib/commonjs/components/badge/Badge.js +16 -3
  5. package/lib/commonjs/components/badge/Badge.js.map +1 -1
  6. package/lib/commonjs/components/badge/__test__/__snapshots__/badge.test.tsx.snap +9 -5
  7. package/lib/commonjs/components/banner/Banner.js.map +1 -1
  8. package/lib/commonjs/components/banner/__test__/__snapshots__/banner.test.tsx.snap +6 -6
  9. package/lib/commonjs/components/buttons/ButtonLink.js +6 -1
  10. package/lib/commonjs/components/buttons/ButtonLink.js.map +1 -1
  11. package/lib/commonjs/components/buttons/ButtonOutline.js +11 -9
  12. package/lib/commonjs/components/buttons/ButtonOutline.js.map +1 -1
  13. package/lib/commonjs/components/buttons/ButtonSolid.js +10 -6
  14. package/lib/commonjs/components/buttons/ButtonSolid.js.map +1 -1
  15. package/lib/commonjs/components/buttons/IconButton.js +2 -0
  16. package/lib/commonjs/components/buttons/IconButton.js.map +1 -1
  17. package/lib/commonjs/components/buttons/IconButtonSolid.js +1 -0
  18. package/lib/commonjs/components/buttons/IconButtonSolid.js.map +1 -1
  19. package/lib/commonjs/components/buttons/__test__/__snapshots__/button.test.tsx.snap +27 -9
  20. package/lib/commonjs/components/checkbox/AnimatedCheckbox.js +23 -18
  21. package/lib/commonjs/components/checkbox/AnimatedCheckbox.js.map +1 -1
  22. package/lib/commonjs/components/checkbox/CheckboxLabel.js +13 -8
  23. package/lib/commonjs/components/checkbox/CheckboxLabel.js.map +1 -1
  24. package/lib/commonjs/components/common/AnimatedTick.js +7 -3
  25. package/lib/commonjs/components/common/AnimatedTick.js.map +1 -1
  26. package/lib/commonjs/components/common/LogoPaymentWithFallback.js +9 -3
  27. package/lib/commonjs/components/common/LogoPaymentWithFallback.js.map +1 -1
  28. package/lib/commonjs/components/featureInfo/FeatureInfo.js +9 -6
  29. package/lib/commonjs/components/featureInfo/FeatureInfo.js.map +1 -1
  30. package/lib/commonjs/components/icons/Icon.js +14 -7
  31. package/lib/commonjs/components/icons/Icon.js.map +1 -1
  32. package/lib/commonjs/components/layout/HeaderFirstLevel.js +7 -10
  33. package/lib/commonjs/components/layout/HeaderFirstLevel.js.map +1 -1
  34. package/lib/commonjs/components/layout/HeaderSecondLevel.js +8 -9
  35. package/lib/commonjs/components/layout/HeaderSecondLevel.js.map +1 -1
  36. package/lib/commonjs/components/listitems/ListItemAction.js +11 -7
  37. package/lib/commonjs/components/listitems/ListItemAction.js.map +1 -1
  38. package/lib/commonjs/components/listitems/ListItemAmount.js +13 -11
  39. package/lib/commonjs/components/listitems/ListItemAmount.js.map +1 -1
  40. package/lib/commonjs/components/listitems/ListItemCheckbox.js +12 -7
  41. package/lib/commonjs/components/listitems/ListItemCheckbox.js.map +1 -1
  42. package/lib/commonjs/components/listitems/ListItemHeader.js +9 -2
  43. package/lib/commonjs/components/listitems/ListItemHeader.js.map +1 -1
  44. package/lib/commonjs/components/listitems/ListItemInfo.js +14 -17
  45. package/lib/commonjs/components/listitems/ListItemInfo.js.map +1 -1
  46. package/lib/commonjs/components/listitems/ListItemInfoCopy.js +15 -13
  47. package/lib/commonjs/components/listitems/ListItemInfoCopy.js.map +1 -1
  48. package/lib/commonjs/components/listitems/ListItemNav.js +20 -17
  49. package/lib/commonjs/components/listitems/ListItemNav.js.map +1 -1
  50. package/lib/commonjs/components/listitems/ListItemNavAlert.js +19 -14
  51. package/lib/commonjs/components/listitems/ListItemNavAlert.js.map +1 -1
  52. package/lib/commonjs/components/listitems/ListItemRadio.js +24 -9
  53. package/lib/commonjs/components/listitems/ListItemRadio.js.map +1 -1
  54. package/lib/commonjs/components/listitems/ListItemRadioWithAmount.js +5 -0
  55. package/lib/commonjs/components/listitems/ListItemRadioWithAmount.js.map +1 -1
  56. package/lib/commonjs/components/listitems/ListItemSwitch.js +12 -14
  57. package/lib/commonjs/components/listitems/ListItemSwitch.js.map +1 -1
  58. package/lib/commonjs/components/listitems/ListItemTransaction.js +2 -0
  59. package/lib/commonjs/components/listitems/ListItemTransaction.js.map +1 -1
  60. package/lib/commonjs/components/listitems/__test__/__snapshots__/listitem.test.tsx.snap +435 -429
  61. package/lib/commonjs/components/modules/ModuleCredential.js +7 -2
  62. package/lib/commonjs/components/modules/ModuleCredential.js.map +1 -1
  63. package/lib/commonjs/components/modules/ModuleNavigation.js +5 -1
  64. package/lib/commonjs/components/modules/ModuleNavigation.js.map +1 -1
  65. package/lib/commonjs/components/numberpad/__test__/__snapshots__/NumberPad.test.tsx.snap +20 -20
  66. package/lib/commonjs/components/pictograms/Pictogram.js +17 -4
  67. package/lib/commonjs/components/pictograms/Pictogram.js.map +1 -1
  68. package/lib/commonjs/components/radio/AnimatedRadio.js +16 -15
  69. package/lib/commonjs/components/radio/AnimatedRadio.js.map +1 -1
  70. package/lib/commonjs/components/radio/RadioButtonLabel.js +9 -5
  71. package/lib/commonjs/components/radio/RadioButtonLabel.js.map +1 -1
  72. package/lib/commonjs/components/searchInput/SearchInput.js +4 -3
  73. package/lib/commonjs/components/searchInput/SearchInput.js.map +1 -1
  74. package/lib/commonjs/components/spacer/Spacer.js +13 -6
  75. package/lib/commonjs/components/spacer/Spacer.js.map +1 -1
  76. package/lib/commonjs/components/stack/Stack.js +19 -9
  77. package/lib/commonjs/components/stack/Stack.js.map +1 -1
  78. package/lib/commonjs/components/tag/Tag.js +21 -8
  79. package/lib/commonjs/components/tag/Tag.js.map +1 -1
  80. package/lib/commonjs/components/textInput/TextInput.js.map +1 -1
  81. package/lib/commonjs/components/textInput/TextInputBase.js +23 -10
  82. package/lib/commonjs/components/textInput/TextInputBase.js.map +1 -1
  83. package/lib/commonjs/components/typography/IOText.js +3 -6
  84. package/lib/commonjs/components/typography/IOText.js.map +1 -1
  85. package/lib/commonjs/components/typography/__test__/__snapshots__/ComposedBodyFromArray.test.tsx.snap +84 -84
  86. package/lib/commonjs/components/typography/__test__/__snapshots__/typography.test.tsx.snap +50 -50
  87. package/lib/commonjs/utils/accessibility.js +24 -1
  88. package/lib/commonjs/utils/accessibility.js.map +1 -1
  89. package/lib/commonjs/utils/fonts.js +3 -2
  90. package/lib/commonjs/utils/fonts.js.map +1 -1
  91. package/lib/module/components/Advice/__test__/__snapshots__/advice.test.tsx.snap +3 -3
  92. package/lib/module/components/alert/Alert.js +35 -35
  93. package/lib/module/components/alert/Alert.js.map +1 -1
  94. package/lib/module/components/badge/Badge.js +16 -3
  95. package/lib/module/components/badge/Badge.js.map +1 -1
  96. package/lib/module/components/badge/__test__/__snapshots__/badge.test.tsx.snap +9 -5
  97. package/lib/module/components/banner/Banner.js.map +1 -1
  98. package/lib/module/components/banner/__test__/__snapshots__/banner.test.tsx.snap +6 -6
  99. package/lib/module/components/buttons/ButtonLink.js +6 -1
  100. package/lib/module/components/buttons/ButtonLink.js.map +1 -1
  101. package/lib/module/components/buttons/ButtonOutline.js +11 -9
  102. package/lib/module/components/buttons/ButtonOutline.js.map +1 -1
  103. package/lib/module/components/buttons/ButtonSolid.js +10 -6
  104. package/lib/module/components/buttons/ButtonSolid.js.map +1 -1
  105. package/lib/module/components/buttons/IconButton.js +2 -0
  106. package/lib/module/components/buttons/IconButton.js.map +1 -1
  107. package/lib/module/components/buttons/IconButtonSolid.js +1 -0
  108. package/lib/module/components/buttons/IconButtonSolid.js.map +1 -1
  109. package/lib/module/components/buttons/__test__/__snapshots__/button.test.tsx.snap +27 -9
  110. package/lib/module/components/checkbox/AnimatedCheckbox.js +23 -18
  111. package/lib/module/components/checkbox/AnimatedCheckbox.js.map +1 -1
  112. package/lib/module/components/checkbox/CheckboxLabel.js +14 -9
  113. package/lib/module/components/checkbox/CheckboxLabel.js.map +1 -1
  114. package/lib/module/components/common/AnimatedTick.js +7 -3
  115. package/lib/module/components/common/AnimatedTick.js.map +1 -1
  116. package/lib/module/components/common/LogoPaymentWithFallback.js +9 -3
  117. package/lib/module/components/common/LogoPaymentWithFallback.js.map +1 -1
  118. package/lib/module/components/featureInfo/FeatureInfo.js +11 -8
  119. package/lib/module/components/featureInfo/FeatureInfo.js.map +1 -1
  120. package/lib/module/components/icons/Icon.js +15 -6
  121. package/lib/module/components/icons/Icon.js.map +1 -1
  122. package/lib/module/components/layout/HeaderFirstLevel.js +8 -11
  123. package/lib/module/components/layout/HeaderFirstLevel.js.map +1 -1
  124. package/lib/module/components/layout/HeaderSecondLevel.js +9 -10
  125. package/lib/module/components/layout/HeaderSecondLevel.js.map +1 -1
  126. package/lib/module/components/listitems/ListItemAction.js +11 -7
  127. package/lib/module/components/listitems/ListItemAction.js.map +1 -1
  128. package/lib/module/components/listitems/ListItemAmount.js +13 -11
  129. package/lib/module/components/listitems/ListItemAmount.js.map +1 -1
  130. package/lib/module/components/listitems/ListItemCheckbox.js +14 -9
  131. package/lib/module/components/listitems/ListItemCheckbox.js.map +1 -1
  132. package/lib/module/components/listitems/ListItemHeader.js +9 -2
  133. package/lib/module/components/listitems/ListItemHeader.js.map +1 -1
  134. package/lib/module/components/listitems/ListItemInfo.js +14 -17
  135. package/lib/module/components/listitems/ListItemInfo.js.map +1 -1
  136. package/lib/module/components/listitems/ListItemInfoCopy.js +15 -13
  137. package/lib/module/components/listitems/ListItemInfoCopy.js.map +1 -1
  138. package/lib/module/components/listitems/ListItemNav.js +22 -19
  139. package/lib/module/components/listitems/ListItemNav.js.map +1 -1
  140. package/lib/module/components/listitems/ListItemNavAlert.js +21 -16
  141. package/lib/module/components/listitems/ListItemNavAlert.js.map +1 -1
  142. package/lib/module/components/listitems/ListItemRadio.js +25 -10
  143. package/lib/module/components/listitems/ListItemRadio.js.map +1 -1
  144. package/lib/module/components/listitems/ListItemRadioWithAmount.js +6 -1
  145. package/lib/module/components/listitems/ListItemRadioWithAmount.js.map +1 -1
  146. package/lib/module/components/listitems/ListItemSwitch.js +12 -14
  147. package/lib/module/components/listitems/ListItemSwitch.js.map +1 -1
  148. package/lib/module/components/listitems/ListItemTransaction.js +2 -0
  149. package/lib/module/components/listitems/ListItemTransaction.js.map +1 -1
  150. package/lib/module/components/listitems/__test__/__snapshots__/listitem.test.tsx.snap +435 -429
  151. package/lib/module/components/modules/ModuleCredential.js +7 -2
  152. package/lib/module/components/modules/ModuleCredential.js.map +1 -1
  153. package/lib/module/components/modules/ModuleNavigation.js +5 -1
  154. package/lib/module/components/modules/ModuleNavigation.js.map +1 -1
  155. package/lib/module/components/numberpad/__test__/__snapshots__/NumberPad.test.tsx.snap +20 -20
  156. package/lib/module/components/pictograms/Pictogram.js +17 -4
  157. package/lib/module/components/pictograms/Pictogram.js.map +1 -1
  158. package/lib/module/components/radio/AnimatedRadio.js +16 -15
  159. package/lib/module/components/radio/AnimatedRadio.js.map +1 -1
  160. package/lib/module/components/radio/RadioButtonLabel.js +10 -6
  161. package/lib/module/components/radio/RadioButtonLabel.js.map +1 -1
  162. package/lib/module/components/searchInput/SearchInput.js +5 -4
  163. package/lib/module/components/searchInput/SearchInput.js.map +1 -1
  164. package/lib/module/components/spacer/Spacer.js +11 -5
  165. package/lib/module/components/spacer/Spacer.js.map +1 -1
  166. package/lib/module/components/stack/Stack.js +19 -9
  167. package/lib/module/components/stack/Stack.js.map +1 -1
  168. package/lib/module/components/tag/Tag.js +21 -8
  169. package/lib/module/components/tag/Tag.js.map +1 -1
  170. package/lib/module/components/textInput/TextInput.js.map +1 -1
  171. package/lib/module/components/textInput/TextInputBase.js +23 -10
  172. package/lib/module/components/textInput/TextInputBase.js.map +1 -1
  173. package/lib/module/components/typography/IOText.js +5 -8
  174. package/lib/module/components/typography/IOText.js.map +1 -1
  175. package/lib/module/components/typography/__test__/__snapshots__/ComposedBodyFromArray.test.tsx.snap +84 -84
  176. package/lib/module/components/typography/__test__/__snapshots__/typography.test.tsx.snap +50 -50
  177. package/lib/module/utils/accessibility.js +23 -1
  178. package/lib/module/utils/accessibility.js.map +1 -1
  179. package/lib/module/utils/fonts.js +1 -0
  180. package/lib/module/utils/fonts.js.map +1 -1
  181. package/lib/typescript/components/alert/Alert.d.ts.map +1 -1
  182. package/lib/typescript/components/badge/Badge.d.ts +2 -1
  183. package/lib/typescript/components/badge/Badge.d.ts.map +1 -1
  184. package/lib/typescript/components/banner/Banner.d.ts.map +1 -1
  185. package/lib/typescript/components/buttons/ButtonLink.d.ts +1 -1
  186. package/lib/typescript/components/buttons/ButtonLink.d.ts.map +1 -1
  187. package/lib/typescript/components/buttons/ButtonOutline.d.ts +1 -1
  188. package/lib/typescript/components/buttons/ButtonOutline.d.ts.map +1 -1
  189. package/lib/typescript/components/buttons/ButtonSolid.d.ts +1 -1
  190. package/lib/typescript/components/buttons/ButtonSolid.d.ts.map +1 -1
  191. package/lib/typescript/components/buttons/IconButton.d.ts.map +1 -1
  192. package/lib/typescript/components/buttons/IconButtonSolid.d.ts.map +1 -1
  193. package/lib/typescript/components/checkbox/AnimatedCheckbox.d.ts +2 -1
  194. package/lib/typescript/components/checkbox/AnimatedCheckbox.d.ts.map +1 -1
  195. package/lib/typescript/components/checkbox/CheckboxLabel.d.ts +2 -1
  196. package/lib/typescript/components/checkbox/CheckboxLabel.d.ts.map +1 -1
  197. package/lib/typescript/components/common/AnimatedTick.d.ts +4 -3
  198. package/lib/typescript/components/common/AnimatedTick.d.ts.map +1 -1
  199. package/lib/typescript/components/common/LogoPaymentWithFallback.d.ts.map +1 -1
  200. package/lib/typescript/components/featureInfo/FeatureInfo.d.ts.map +1 -1
  201. package/lib/typescript/components/icons/Icon.d.ts +5 -3
  202. package/lib/typescript/components/icons/Icon.d.ts.map +1 -1
  203. package/lib/typescript/components/layout/HeaderFirstLevel.d.ts.map +1 -1
  204. package/lib/typescript/components/layout/HeaderSecondLevel.d.ts.map +1 -1
  205. package/lib/typescript/components/listitems/ListItemAction.d.ts.map +1 -1
  206. package/lib/typescript/components/listitems/ListItemAmount.d.ts.map +1 -1
  207. package/lib/typescript/components/listitems/ListItemCheckbox.d.ts.map +1 -1
  208. package/lib/typescript/components/listitems/ListItemHeader.d.ts.map +1 -1
  209. package/lib/typescript/components/listitems/ListItemInfo.d.ts.map +1 -1
  210. package/lib/typescript/components/listitems/ListItemInfoCopy.d.ts.map +1 -1
  211. package/lib/typescript/components/listitems/ListItemNav.d.ts.map +1 -1
  212. package/lib/typescript/components/listitems/ListItemNavAlert.d.ts.map +1 -1
  213. package/lib/typescript/components/listitems/ListItemRadio.d.ts.map +1 -1
  214. package/lib/typescript/components/listitems/ListItemRadioWithAmount.d.ts.map +1 -1
  215. package/lib/typescript/components/listitems/ListItemSwitch.d.ts +2 -2
  216. package/lib/typescript/components/listitems/ListItemSwitch.d.ts.map +1 -1
  217. package/lib/typescript/components/listitems/ListItemTransaction.d.ts.map +1 -1
  218. package/lib/typescript/components/modules/ModuleCredential.d.ts.map +1 -1
  219. package/lib/typescript/components/modules/ModuleNavigation.d.ts.map +1 -1
  220. package/lib/typescript/components/pictograms/Pictogram.d.ts +5 -3
  221. package/lib/typescript/components/pictograms/Pictogram.d.ts.map +1 -1
  222. package/lib/typescript/components/pictograms/types.d.ts +1 -2
  223. package/lib/typescript/components/pictograms/types.d.ts.map +1 -1
  224. package/lib/typescript/components/radio/AnimatedRadio.d.ts +2 -1
  225. package/lib/typescript/components/radio/AnimatedRadio.d.ts.map +1 -1
  226. package/lib/typescript/components/radio/RadioButtonLabel.d.ts +2 -1
  227. package/lib/typescript/components/radio/RadioButtonLabel.d.ts.map +1 -1
  228. package/lib/typescript/components/searchInput/SearchInput.d.ts.map +1 -1
  229. package/lib/typescript/components/spacer/Spacer.d.ts +1 -0
  230. package/lib/typescript/components/spacer/Spacer.d.ts.map +1 -1
  231. package/lib/typescript/components/stack/Stack.d.ts +2 -1
  232. package/lib/typescript/components/stack/Stack.d.ts.map +1 -1
  233. package/lib/typescript/components/tag/Tag.d.ts +4 -2
  234. package/lib/typescript/components/tag/Tag.d.ts.map +1 -1
  235. package/lib/typescript/components/textInput/TextInput.d.ts +2 -1
  236. package/lib/typescript/components/textInput/TextInput.d.ts.map +1 -1
  237. package/lib/typescript/components/textInput/TextInputBase.d.ts.map +1 -1
  238. package/lib/typescript/components/typography/BodyMonospace.d.ts +1 -1
  239. package/lib/typescript/components/typography/ButtonText.d.ts +1 -1
  240. package/lib/typescript/components/typography/Caption.d.ts +1 -1
  241. package/lib/typescript/components/typography/H1.d.ts +1 -1
  242. package/lib/typescript/components/typography/H2.d.ts +4 -1
  243. package/lib/typescript/components/typography/H2.d.ts.map +1 -1
  244. package/lib/typescript/components/typography/H3.d.ts +1 -1
  245. package/lib/typescript/components/typography/H4.d.ts +1 -1
  246. package/lib/typescript/components/typography/H5.d.ts +1 -1
  247. package/lib/typescript/components/typography/H6.d.ts +1 -1
  248. package/lib/typescript/components/typography/Hero.d.ts +1 -1
  249. package/lib/typescript/components/typography/IOText.d.ts.map +1 -1
  250. package/lib/typescript/components/typography/markdown/MdH1.d.ts +1 -1
  251. package/lib/typescript/components/typography/markdown/MdH2.d.ts +1 -1
  252. package/lib/typescript/components/typography/markdown/MdH3.d.ts +1 -1
  253. package/lib/typescript/core/IOStyles.d.ts +7 -7
  254. package/lib/typescript/utils/accessibility.d.ts +10 -0
  255. package/lib/typescript/utils/accessibility.d.ts.map +1 -1
  256. package/lib/typescript/utils/fonts.d.ts +2 -1
  257. package/lib/typescript/utils/fonts.d.ts.map +1 -1
  258. package/package.json +1 -1
  259. package/src/components/Advice/__test__/__snapshots__/advice.test.tsx.snap +3 -3
  260. package/src/components/alert/Alert.tsx +43 -61
  261. package/src/components/badge/Badge.tsx +29 -4
  262. package/src/components/badge/__test__/__snapshots__/badge.test.tsx.snap +9 -5
  263. package/src/components/banner/Banner.tsx +0 -2
  264. package/src/components/banner/__test__/__snapshots__/banner.test.tsx.snap +6 -6
  265. package/src/components/buttons/ButtonLink.tsx +4 -0
  266. package/src/components/buttons/ButtonOutline.tsx +24 -25
  267. package/src/components/buttons/ButtonSolid.tsx +10 -9
  268. package/src/components/buttons/IconButton.tsx +2 -0
  269. package/src/components/buttons/IconButtonSolid.tsx +1 -0
  270. package/src/components/buttons/__test__/__snapshots__/button.test.tsx.snap +27 -9
  271. package/src/components/checkbox/AnimatedCheckbox.tsx +36 -18
  272. package/src/components/checkbox/CheckboxLabel.tsx +22 -10
  273. package/src/components/common/AnimatedTick.tsx +9 -3
  274. package/src/components/common/LogoPaymentWithFallback.tsx +27 -5
  275. package/src/components/featureInfo/FeatureInfo.tsx +13 -9
  276. package/src/components/icons/Icon.tsx +23 -7
  277. package/src/components/layout/HeaderFirstLevel.tsx +11 -21
  278. package/src/components/layout/HeaderSecondLevel.tsx +5 -14
  279. package/src/components/listitems/ListItemAction.tsx +19 -8
  280. package/src/components/listitems/ListItemAmount.tsx +16 -11
  281. package/src/components/listitems/ListItemCheckbox.tsx +29 -15
  282. package/src/components/listitems/ListItemHeader.tsx +12 -2
  283. package/src/components/listitems/ListItemInfo.tsx +27 -20
  284. package/src/components/listitems/ListItemInfoCopy.tsx +27 -16
  285. package/src/components/listitems/ListItemNav.tsx +44 -40
  286. package/src/components/listitems/ListItemNavAlert.tsx +30 -16
  287. package/src/components/listitems/ListItemRadio.tsx +46 -32
  288. package/src/components/listitems/ListItemRadioWithAmount.tsx +7 -2
  289. package/src/components/listitems/ListItemSwitch.tsx +21 -27
  290. package/src/components/listitems/ListItemTransaction.tsx +3 -0
  291. package/src/components/listitems/__test__/__snapshots__/listitem.test.tsx.snap +435 -429
  292. package/src/components/modules/ModuleCredential.tsx +5 -2
  293. package/src/components/modules/ModuleNavigation.tsx +3 -1
  294. package/src/components/numberpad/__test__/__snapshots__/NumberPad.test.tsx.snap +20 -20
  295. package/src/components/pictograms/Pictogram.tsx +24 -5
  296. package/src/components/pictograms/types.ts +1 -3
  297. package/src/components/radio/AnimatedRadio.tsx +31 -15
  298. package/src/components/radio/RadioButtonLabel.tsx +16 -8
  299. package/src/components/searchInput/SearchInput.tsx +10 -5
  300. package/src/components/spacer/Spacer.tsx +21 -6
  301. package/src/components/stack/Stack.tsx +25 -14
  302. package/src/components/tag/Tag.tsx +26 -8
  303. package/src/components/textInput/TextInput.tsx +2 -1
  304. package/src/components/textInput/TextInputBase.tsx +44 -11
  305. package/src/components/typography/IOText.tsx +5 -6
  306. package/src/components/typography/__test__/__snapshots__/ComposedBodyFromArray.test.tsx.snap +84 -84
  307. package/src/components/typography/__test__/__snapshots__/typography.test.tsx.snap +50 -50
  308. package/src/utils/accessibility.ts +29 -1
  309. package/src/utils/fonts.ts +1 -0
@@ -13,6 +13,7 @@ import {
13
13
  IOVisualCostants,
14
14
  useIOTheme
15
15
  } from "../../core";
16
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
16
17
  import { WithTestID } from "../../utils/types";
17
18
  import { Badge } from "../badge";
18
19
  import { IOIcons, Icon } from "../icons";
@@ -63,12 +64,14 @@ const ModuleCredentialContent = ({
63
64
  ...pressableProps
64
65
  }: WithTestID<ModuleCredentialProps>) => {
65
66
  const theme = useIOTheme();
67
+ const { hugeFontEnabled } = useIOFontDynamicScale();
66
68
 
67
- const iconComponent = icon && (
69
+ const iconComponent = icon && !hugeFontEnabled && (
68
70
  <Icon
71
+ allowFontScaling
69
72
  name={icon}
70
73
  size={IOSelectionListItemVisualParams.iconSize}
71
- color="grey-300"
74
+ color={theme["icon-decorative"]}
72
75
  />
73
76
  );
74
77
 
@@ -19,6 +19,7 @@ import { Badge } from "../badge";
19
19
  import { IOIcons, Icon } from "../icons";
20
20
  import { HStack, VStack } from "../stack";
21
21
  import { LabelMini, BodySmall } from "../typography";
22
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
22
23
  import { ModuleStatic } from "./ModuleStatic";
23
24
  import {
24
25
  PressableModuleBase,
@@ -45,6 +46,7 @@ type ModuleNavigationProps = LoadingProps | BaseProps;
45
46
 
46
47
  export const ModuleNavigation = (props: WithTestID<ModuleNavigationProps>) => {
47
48
  const theme = useIOTheme();
49
+ const { hugeFontEnabled } = useIOFontDynamicScale();
48
50
 
49
51
  if (props.isLoading) {
50
52
  return <ModuleNavigationSkeleton />;
@@ -53,7 +55,7 @@ export const ModuleNavigation = (props: WithTestID<ModuleNavigationProps>) => {
53
55
  const { icon, image, title, subtitle, onPress, badge, ...pressableProps } =
54
56
  props;
55
57
 
56
- const iconComponent = icon && (
58
+ const iconComponent = icon && !hugeFontEnabled && (
57
59
  <Icon
58
60
  name={icon}
59
61
  size={IOSelectionListItemVisualParams.iconSize}
@@ -92,9 +92,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
92
92
  }
93
93
  >
94
94
  <Text
95
- allowFontScaling={false}
95
+ allowFontScaling={true}
96
96
  dynamicTypeRamp="title2"
97
- maxFontSizeMultiplier={1.25}
97
+ maxFontSizeMultiplier={1.5}
98
98
  style={
99
99
  [
100
100
  {},
@@ -173,9 +173,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
173
173
  }
174
174
  >
175
175
  <Text
176
- allowFontScaling={false}
176
+ allowFontScaling={true}
177
177
  dynamicTypeRamp="title2"
178
- maxFontSizeMultiplier={1.25}
178
+ maxFontSizeMultiplier={1.5}
179
179
  style={
180
180
  [
181
181
  {},
@@ -254,9 +254,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
254
254
  }
255
255
  >
256
256
  <Text
257
- allowFontScaling={false}
257
+ allowFontScaling={true}
258
258
  dynamicTypeRamp="title2"
259
- maxFontSizeMultiplier={1.25}
259
+ maxFontSizeMultiplier={1.5}
260
260
  style={
261
261
  [
262
262
  {},
@@ -351,9 +351,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
351
351
  }
352
352
  >
353
353
  <Text
354
- allowFontScaling={false}
354
+ allowFontScaling={true}
355
355
  dynamicTypeRamp="title2"
356
- maxFontSizeMultiplier={1.25}
356
+ maxFontSizeMultiplier={1.5}
357
357
  style={
358
358
  [
359
359
  {},
@@ -432,9 +432,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
432
432
  }
433
433
  >
434
434
  <Text
435
- allowFontScaling={false}
435
+ allowFontScaling={true}
436
436
  dynamicTypeRamp="title2"
437
- maxFontSizeMultiplier={1.25}
437
+ maxFontSizeMultiplier={1.5}
438
438
  style={
439
439
  [
440
440
  {},
@@ -513,9 +513,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
513
513
  }
514
514
  >
515
515
  <Text
516
- allowFontScaling={false}
516
+ allowFontScaling={true}
517
517
  dynamicTypeRamp="title2"
518
- maxFontSizeMultiplier={1.25}
518
+ maxFontSizeMultiplier={1.5}
519
519
  style={
520
520
  [
521
521
  {},
@@ -610,9 +610,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
610
610
  }
611
611
  >
612
612
  <Text
613
- allowFontScaling={false}
613
+ allowFontScaling={true}
614
614
  dynamicTypeRamp="title2"
615
- maxFontSizeMultiplier={1.25}
615
+ maxFontSizeMultiplier={1.5}
616
616
  style={
617
617
  [
618
618
  {},
@@ -691,9 +691,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
691
691
  }
692
692
  >
693
693
  <Text
694
- allowFontScaling={false}
694
+ allowFontScaling={true}
695
695
  dynamicTypeRamp="title2"
696
- maxFontSizeMultiplier={1.25}
696
+ maxFontSizeMultiplier={1.5}
697
697
  style={
698
698
  [
699
699
  {},
@@ -772,9 +772,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
772
772
  }
773
773
  >
774
774
  <Text
775
- allowFontScaling={false}
775
+ allowFontScaling={true}
776
776
  dynamicTypeRamp="title2"
777
- maxFontSizeMultiplier={1.25}
777
+ maxFontSizeMultiplier={1.5}
778
778
  style={
779
779
  [
780
780
  {},
@@ -1010,9 +1010,9 @@ exports[`NumberPad Should match the snapshot 1`] = `
1010
1010
  }
1011
1011
  >
1012
1012
  <Text
1013
- allowFontScaling={false}
1013
+ allowFontScaling={true}
1014
1014
  dynamicTypeRamp="title2"
1015
- maxFontSizeMultiplier={1.25}
1015
+ maxFontSizeMultiplier={1.5}
1016
1016
  style={
1017
1017
  [
1018
1018
  {},
@@ -1,6 +1,7 @@
1
1
  import React, { useMemo } from "react";
2
2
  import { ColorValue } from "react-native";
3
3
  import { IOColors, IOThemeDark, IOThemeLight, useIOTheme } from "../../core";
4
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
4
5
 
5
6
  import PictogramAccessDenied from "./svg/PictogramAccessDenied";
6
7
  import PictogramActivate from "./svg/PictogramActivate";
@@ -113,7 +114,7 @@ import PictogramSmile from "./svg/PictogramSmile";
113
114
  import PictogramStar from "./svg/PictogramStar";
114
115
  import PictogramTiming from "./svg/PictogramTiming";
115
116
  import PictogramWalletDoc from "./svg/PictogramWalletDoc";
116
- import { IOPictogramSizeScale, SVGPictogramProps } from "./types";
117
+ import { SVGPictogramProps } from "./types";
117
118
 
118
119
  export const IOPictograms = {
119
120
  // Start legacy pictograms //
@@ -192,6 +193,8 @@ export const IOPictograms = {
192
193
 
193
194
  export type IOPictograms = keyof typeof IOPictograms;
194
195
 
196
+ export type IOPictogramSizeScale = 48 | 64 | 72 | 80 | 120 | 180;
197
+
195
198
  type IOPictogramsProps = {
196
199
  name: IOPictograms;
197
200
  color?: IOColors;
@@ -200,6 +203,7 @@ type IOPictogramsProps = {
200
203
  component props. */
201
204
  pictogramStyle?: "default" | "light-content" | "dark-content";
202
205
  size?: IOPictogramSizeScale | "100%";
206
+ allowFontScaling?: boolean;
203
207
  };
204
208
 
205
209
  type PictogramPalette = {
@@ -214,10 +218,18 @@ export const Pictogram = ({
214
218
  color = "aqua",
215
219
  pictogramStyle = "default",
216
220
  size = 120,
221
+ allowFontScaling = false,
217
222
  ...props
218
223
  }: IOPictogramsProps) => {
219
- const PictogramElement = IOPictograms[name];
220
224
  const theme = useIOTheme();
225
+ const { dynamicFontScale, spacingScaleMultiplier } = useIOFontDynamicScale();
226
+
227
+ const PictogramElement = IOPictograms[name];
228
+
229
+ const pictogramSize =
230
+ allowFontScaling && typeof size === "number"
231
+ ? size * dynamicFontScale * spacingScaleMultiplier
232
+ : size;
221
233
 
222
234
  const themeObj = useMemo(() => {
223
235
  switch (pictogramStyle) {
@@ -243,7 +255,7 @@ export const Pictogram = ({
243
255
  return (
244
256
  <PictogramElement
245
257
  {...props}
246
- size={size}
258
+ size={pictogramSize}
247
259
  color={IOColors[color]}
248
260
  colorValues={colorValues}
249
261
  />
@@ -356,11 +368,18 @@ export const PictogramBleed = ({
356
368
  color = "aqua",
357
369
  size = 80,
358
370
  pictogramStyle = "default",
371
+ allowFontScaling = false,
359
372
  ...props
360
373
  }: IOPictogramsProps) => {
374
+ const theme = useIOTheme();
375
+ const { dynamicFontScale, spacingScaleMultiplier } = useIOFontDynamicScale();
376
+
361
377
  const PictogramElement = IOPictogramsBleed[name as IOPictogramsBleed];
362
378
 
363
- const theme = useIOTheme();
379
+ const pictogramSize =
380
+ allowFontScaling && typeof size === "number"
381
+ ? size * dynamicFontScale * spacingScaleMultiplier
382
+ : size;
364
383
 
365
384
  const themeObj = useMemo(() => {
366
385
  switch (pictogramStyle) {
@@ -386,7 +405,7 @@ export const PictogramBleed = ({
386
405
  return (
387
406
  <PictogramElement
388
407
  {...props}
389
- size={size}
408
+ size={pictogramSize}
390
409
  color={IOColors[color]}
391
410
  colorValues={colorValues}
392
411
  />
@@ -1,9 +1,7 @@
1
1
  import { ColorValue } from "react-native";
2
2
 
3
- export type IOPictogramSizeScale = 48 | 64 | 72 | 80 | 120 | 180;
4
-
5
3
  export type SVGPictogramProps = {
6
- size: IOPictogramSizeScale | "100%";
4
+ size: number | "100%";
7
5
  color: ColorValue;
8
6
  colorValues: Record<string, ColorValue>;
9
7
  };
@@ -1,5 +1,11 @@
1
1
  import React, { useEffect } from "react";
2
- import { Pressable, PressableProps, StyleSheet, View } from "react-native";
2
+ import {
3
+ Pressable,
4
+ PressableProps,
5
+ StyleSheet,
6
+ View,
7
+ ViewStyle
8
+ } from "react-native";
3
9
  import Animated, {
4
10
  Easing,
5
11
  interpolate,
@@ -18,32 +24,23 @@ import {
18
24
  import { AnimatedTick } from "../common/AnimatedTick";
19
25
 
20
26
  type Props = {
27
+ size: number;
21
28
  checked?: boolean;
22
29
  };
23
30
 
24
31
  type OwnProps = Props & Pick<PressableProps, "disabled" | "onPress">;
25
32
 
26
33
  const styles = StyleSheet.create({
27
- radioWrapper: {
28
- width: IOSelectionTickVisualParams.size,
29
- height: IOSelectionTickVisualParams.size
30
- },
31
34
  radioBorder: {
32
35
  position: "absolute",
33
36
  left: 0,
34
37
  top: 0,
35
- width: IOSelectionTickVisualParams.size,
36
- height: IOSelectionTickVisualParams.size,
37
- borderWidth: IOSelectionTickVisualParams.borderWidth,
38
- borderRadius: IOSelectionTickVisualParams.size / 2
38
+ borderWidth: IOSelectionTickVisualParams.borderWidth
39
39
  },
40
40
  radioCircle: {
41
41
  position: "absolute",
42
42
  left: 0,
43
- top: 0,
44
- width: IOSelectionTickVisualParams.size,
45
- height: IOSelectionTickVisualParams.size,
46
- borderRadius: IOSelectionTickVisualParams.size / 2
43
+ top: 0
47
44
  }
48
45
  });
49
46
 
@@ -51,7 +48,12 @@ const styles = StyleSheet.create({
51
48
  * An animated checkbox. This can be used to implement a
52
49
  * standard {@link CheckBox} or other composite components.
53
50
  */
54
- export const AnimatedRadio = ({ checked, onPress, disabled }: OwnProps) => {
51
+ export const AnimatedRadio = ({
52
+ size,
53
+ checked,
54
+ onPress,
55
+ disabled
56
+ }: OwnProps) => {
55
57
  const isChecked = checked ?? false;
56
58
 
57
59
  const { isExperimental } = useIOExperimentalDesign();
@@ -76,6 +78,17 @@ export const AnimatedRadio = ({ checked, onPress, disabled }: OwnProps) => {
76
78
  const circleAnimationProgress = useSharedValue(checked ? 1 : 0);
77
79
  const tickAnimationProgress = useSharedValue(checked ? 1 : 0);
78
80
 
81
+ const radioButtonSizeStyle: ViewStyle = {
82
+ width: size,
83
+ height: size,
84
+ borderRadius: size / 2
85
+ };
86
+
87
+ const radioButtonWrapperSizeStyle: ViewStyle = {
88
+ width: size,
89
+ height: size
90
+ };
91
+
79
92
  useEffect(() => {
80
93
  // eslint-disable-next-line functional/immutable-data
81
94
  circleAnimationProgress.value = withSpring(
@@ -105,11 +118,12 @@ export const AnimatedRadio = ({ checked, onPress, disabled }: OwnProps) => {
105
118
  disabled={disabled}
106
119
  testID="AnimatedRadioInput"
107
120
  onPress={onPress}
108
- style={styles.radioWrapper}
121
+ style={radioButtonWrapperSizeStyle}
109
122
  >
110
123
  <View
111
124
  style={[
112
125
  styles.radioBorder,
126
+ radioButtonSizeStyle,
113
127
  {
114
128
  borderColor: borderColorProp
115
129
  }
@@ -118,6 +132,7 @@ export const AnimatedRadio = ({ checked, onPress, disabled }: OwnProps) => {
118
132
  <Animated.View
119
133
  style={[
120
134
  styles.radioCircle,
135
+ radioButtonSizeStyle,
121
136
  {
122
137
  backgroundColor: backgroundColorProp
123
138
  },
@@ -127,6 +142,7 @@ export const AnimatedRadio = ({ checked, onPress, disabled }: OwnProps) => {
127
142
  {isChecked && (
128
143
  <View>
129
144
  <AnimatedTick
145
+ size={size}
130
146
  progress={tickAnimationProgress}
131
147
  stroke={IOColors[IOSelectionTickVisualParams.tickColor]}
132
148
  />
@@ -1,10 +1,10 @@
1
1
  import * as React from "react";
2
- import { useState } from "react";
2
+ import { ComponentProps, useState } from "react";
3
3
  import { Pressable, View } from "react-native";
4
- import { useIOTheme } from "../../core";
4
+ import { IOSelectionTickVisualParams, useIOTheme } from "../../core";
5
5
  import { IOStyles } from "../../core/IOStyles";
6
6
  import { triggerHaptic } from "../../functions/haptic-feedback/hapticFeedback";
7
- import { HSpacer } from "../spacer/Spacer";
7
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
8
8
  import { H6 } from "../typography/H6";
9
9
  import { AnimatedRadio } from "./AnimatedRadio";
10
10
 
@@ -17,9 +17,9 @@ type Props = {
17
17
  const DISABLED_OPACITY = 0.5;
18
18
 
19
19
  type RadioButtonLabelProps = Props &
20
- Pick<React.ComponentProps<typeof AnimatedRadio>, "disabled" | "checked"> &
20
+ Pick<ComponentProps<typeof AnimatedRadio>, "disabled" | "checked"> &
21
21
  Pick<
22
- React.ComponentProps<typeof Pressable>,
22
+ ComponentProps<typeof Pressable>,
23
23
  "onPress" | "accessibilityLabel" | "accessibilityHint"
24
24
  >;
25
25
 
@@ -38,6 +38,7 @@ export const RadioButtonLabel = ({
38
38
  accessibilityLabel,
39
39
  accessibilityHint
40
40
  }: RadioButtonLabelProps) => {
41
+ const { dynamicFontScale, spacingScaleMultiplier } = useIOFontDynamicScale();
41
42
  const theme = useIOTheme();
42
43
 
43
44
  const [toggleValue, setToggleValue] = useState(checked ?? false);
@@ -70,7 +71,12 @@ export const RadioButtonLabel = ({
70
71
  <View
71
72
  style={[
72
73
  IOStyles.row,
73
- { alignItems: "flex-start", flexShrink: 1, width: "100%" }
74
+ {
75
+ alignItems: "flex-start",
76
+ flexShrink: 1,
77
+ width: "100%",
78
+ columnGap: 8 * dynamicFontScale * spacingScaleMultiplier
79
+ }
74
80
  ]}
75
81
  >
76
82
  <View
@@ -78,9 +84,11 @@ export const RadioButtonLabel = ({
78
84
  accessibilityElementsHidden
79
85
  importantForAccessibility="no-hide-descendants"
80
86
  >
81
- <AnimatedRadio checked={checked ?? toggleValue} />
87
+ <AnimatedRadio
88
+ size={IOSelectionTickVisualParams.size * dynamicFontScale}
89
+ checked={checked ?? toggleValue}
90
+ />
82
91
  </View>
83
- <HSpacer size={8} />
84
92
  <H6 style={{ flexShrink: 1 }} color={theme["textBody-default"]}>
85
93
  {label}
86
94
  </H6>
@@ -21,7 +21,7 @@ import {
21
21
  } from "react-native";
22
22
  import Animated, {
23
23
  Easing,
24
- Extrapolate,
24
+ Extrapolation,
25
25
  interpolate,
26
26
  interpolateColor,
27
27
  useAnimatedStyle,
@@ -173,7 +173,7 @@ export const SearchInput = forwardRef<SearchInputRef, SearchInputProps>(
173
173
  showCancelButton,
174
174
  [0, 1],
175
175
  [cancelButtonWidth + IOVisualCostants.appMarginDefault, 0],
176
- Extrapolate.CLAMP
176
+ Extrapolation.CLAMP
177
177
  )
178
178
  }
179
179
  ],
@@ -235,7 +235,12 @@ export const SearchInput = forwardRef<SearchInputRef, SearchInputProps>(
235
235
  pointerEvents={pressable ? "none" : "auto"}
236
236
  >
237
237
  <View style={styles.iconContainer}>
238
- <Icon name="search" size={iconSize} color={iconColor} />
238
+ <Icon
239
+ allowFontScaling
240
+ name="search"
241
+ size={iconSize}
242
+ color={iconColor}
243
+ />
239
244
  </View>
240
245
  <AnimatedTextInput
241
246
  testID={testID}
@@ -328,7 +333,7 @@ const styles = StyleSheet.create({
328
333
  inputFontSizePlaceholder,
329
334
  "Titillio",
330
335
  undefined,
331
- "Regular"
336
+ "Medium"
332
337
  )
333
338
  },
334
339
  placeholderLegacy: {
@@ -336,7 +341,7 @@ const styles = StyleSheet.create({
336
341
  inputFontSizePlaceholder,
337
342
  "TitilliumSansPro",
338
343
  undefined,
339
- "Regular"
344
+ "Semibold"
340
345
  )
341
346
  },
342
347
  cancelButton: {
@@ -1,14 +1,17 @@
1
- import React from "react";
1
+ import React, { useMemo } from "react";
2
2
  import { View } from "react-native";
3
3
  import { hexToRgba, IOColors, IOSpacer } from "../../core";
4
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
4
5
 
5
6
  type BaseSpacerProps = {
6
7
  orientation: "vertical" | "horizontal";
7
8
  size: IOSpacer;
9
+ allowScaleSpacing?: boolean;
8
10
  };
9
11
 
10
12
  type SpacerProps = {
11
13
  size?: IOSpacer;
14
+ allowScaleSpacing?: boolean;
12
15
  };
13
16
 
14
17
  const DEFAULT_SIZE: IOSpacer = 16;
@@ -22,20 +25,32 @@ Native `Spacer` component
22
25
  @param {string} orientation
23
26
  @param {IOSpacer} size
24
27
  */
25
- const Spacer = ({ orientation, size }: BaseSpacerProps) => {
26
- const style = React.useMemo(
28
+ const Spacer = ({ allowScaleSpacing, orientation, size }: BaseSpacerProps) => {
29
+ const { dynamicFontScale, spacingScaleMultiplier } = useIOFontDynamicScale();
30
+
31
+ const style = useMemo(
27
32
  () => ({
28
33
  ...(orientation === "vertical" && {
29
- height: size
34
+ height: allowScaleSpacing
35
+ ? size * dynamicFontScale * spacingScaleMultiplier
36
+ : size
30
37
  }),
31
38
  ...(orientation === "horizontal" && {
32
- width: size
39
+ width: allowScaleSpacing
40
+ ? size * dynamicFontScale * spacingScaleMultiplier
41
+ : size
33
42
  }),
34
43
  ...((debugMode as boolean) && {
35
44
  backgroundColor: debugBg
36
45
  })
37
46
  }),
38
- [orientation, size]
47
+ [
48
+ allowScaleSpacing,
49
+ dynamicFontScale,
50
+ orientation,
51
+ size,
52
+ spacingScaleMultiplier
53
+ ]
39
54
  );
40
55
 
41
56
  return <View style={style} />;
@@ -1,6 +1,7 @@
1
1
  import React, { PropsWithChildren } from "react";
2
2
  import { View, ViewProps, ViewStyle } from "react-native";
3
3
  import { IOSpacer } from "../../core";
4
+ import { useIOFontDynamicScale } from "../../utils/accessibility";
4
5
 
5
6
  type AllowedStyleProps = Pick<
6
7
  ViewStyle,
@@ -15,6 +16,7 @@ type A11YRelatedProps = Pick<
15
16
  type Stack = PropsWithChildren<{
16
17
  space?: IOSpacer;
17
18
  style?: AllowedStyleProps;
19
+ allowScaleSpacing?: boolean;
18
20
  }> &
19
21
  A11YRelatedProps;
20
22
 
@@ -22,30 +24,39 @@ type BaseStack = Stack & {
22
24
  orientation: "vertical" | "horizontal";
23
25
  };
24
26
 
27
+ const DEFAULT_SPACING_VALUE: IOSpacer = 16;
28
+
25
29
  /**
26
30
  Horizontal Stack component
27
31
  @param {IOSpacer} space
28
32
  */
29
33
 
30
34
  const Stack = ({
31
- space,
35
+ space = DEFAULT_SPACING_VALUE,
32
36
  style,
33
37
  orientation = "vertical",
38
+ allowScaleSpacing,
34
39
  children,
35
40
  ...props
36
- }: BaseStack) => (
37
- <View
38
- {...props}
39
- style={{
40
- display: "flex",
41
- flexDirection: orientation === "horizontal" ? "row" : "column",
42
- gap: space,
43
- ...style
44
- }}
45
- >
46
- {children}
47
- </View>
48
- );
41
+ }: BaseStack) => {
42
+ const { dynamicFontScale, spacingScaleMultiplier } = useIOFontDynamicScale();
43
+
44
+ return (
45
+ <View
46
+ {...props}
47
+ style={{
48
+ display: "flex",
49
+ flexDirection: orientation === "horizontal" ? "row" : "column",
50
+ gap: allowScaleSpacing
51
+ ? space * dynamicFontScale * spacingScaleMultiplier
52
+ : space,
53
+ ...style
54
+ }}
55
+ >
56
+ {children}
57
+ </View>
58
+ );
59
+ };
49
60
 
50
61
  export const HStack = ({ children, ...props }: Stack) => (
51
62
  <Stack orientation="horizontal" {...props}>