@transferwise/components 0.0.0-experimental-9050641 → 0.0.0-experimental-ce05ccb

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 (425) hide show
  1. package/build/accordion/AccordionItem/AccordionItem.js +1 -1
  2. package/build/accordion/AccordionItem/AccordionItem.mjs +1 -1
  3. package/build/actionButton/ActionButton.js +1 -1
  4. package/build/actionButton/ActionButton.mjs +1 -1
  5. package/build/actionOption/ActionOption.js +1 -1
  6. package/build/actionOption/ActionOption.mjs +1 -1
  7. package/build/alert/Alert.js +1 -1
  8. package/build/alert/Alert.mjs +1 -1
  9. package/build/alert/inlineMarkdown/InlineMarkdown.js +1 -1
  10. package/build/alert/inlineMarkdown/InlineMarkdown.mjs +1 -1
  11. package/build/avatar/Avatar.js +1 -1
  12. package/build/avatar/Avatar.mjs +1 -1
  13. package/build/avatarLayout/AvatarLayout.js +1 -1
  14. package/build/avatarLayout/AvatarLayout.mjs +1 -1
  15. package/build/avatarView/AvatarView.js +1 -1
  16. package/build/avatarView/AvatarView.mjs +1 -1
  17. package/build/avatarWrapper/AvatarWrapper.js +1 -1
  18. package/build/avatarWrapper/AvatarWrapper.mjs +1 -1
  19. package/build/badge/Badge.js +1 -1
  20. package/build/badge/Badge.mjs +1 -1
  21. package/build/button/Button.js +1 -1
  22. package/build/button/Button.mjs +1 -1
  23. package/build/button/LegacyButton.js +1 -1
  24. package/build/button/LegacyButton.mjs +1 -1
  25. package/build/button/classMap.js +1 -1
  26. package/build/button/classMap.mjs +1 -1
  27. package/build/button/legacyUtils/legacyUtils.js +1 -1
  28. package/build/button/legacyUtils/legacyUtils.mjs +1 -1
  29. package/build/card/Card.js +1 -1
  30. package/build/card/Card.mjs +1 -1
  31. package/build/checkbox/Checkbox.js +1 -1
  32. package/build/checkbox/Checkbox.mjs +1 -1
  33. package/build/chevron/Chevron.js +1 -1
  34. package/build/chevron/Chevron.mjs +1 -1
  35. package/build/chips/Chip.js +1 -1
  36. package/build/chips/Chip.mjs +1 -1
  37. package/build/circularButton/CircularButton.js +2 -2
  38. package/build/circularButton/CircularButton.js.map +1 -1
  39. package/build/circularButton/CircularButton.mjs +2 -2
  40. package/build/circularButton/CircularButton.mjs.map +1 -1
  41. package/build/common/bottomSheet/BottomSheet.js +2 -2
  42. package/build/common/bottomSheet/BottomSheet.js.map +1 -1
  43. package/build/common/bottomSheet/BottomSheet.mjs +2 -2
  44. package/build/common/bottomSheet/BottomSheet.mjs.map +1 -1
  45. package/build/common/circle/Circle.js +2 -2
  46. package/build/common/circle/Circle.js.map +1 -1
  47. package/build/common/circle/Circle.mjs +2 -2
  48. package/build/common/circle/Circle.mjs.map +1 -1
  49. package/build/common/hooks/useLayout/useLayout.js +6 -6
  50. package/build/common/hooks/useLayout/useLayout.js.map +1 -1
  51. package/build/common/hooks/useLayout/useLayout.mjs +1 -1
  52. package/build/common/hooks/useLayout/useLayout.mjs.map +1 -1
  53. package/build/common/hooks/useScreenSize.js.map +1 -1
  54. package/build/common/hooks/useScreenSize.mjs.map +1 -1
  55. package/build/common/panel/Panel.js +1 -1
  56. package/build/common/panel/Panel.mjs +1 -1
  57. package/build/common/propsValues/breakpoint.js +12 -0
  58. package/build/common/propsValues/breakpoint.js.map +1 -0
  59. package/build/common/propsValues/breakpoint.mjs +12 -0
  60. package/build/common/propsValues/breakpoint.mjs.map +1 -0
  61. package/build/common/responsivePanel/ResponsivePanel.js +1 -1
  62. package/build/common/responsivePanel/ResponsivePanel.mjs +1 -1
  63. package/build/criticalBanner/CriticalCommsBanner.js +1 -1
  64. package/build/criticalBanner/CriticalCommsBanner.mjs +1 -1
  65. package/build/dateInput/DateInput.js +1 -1
  66. package/build/dateInput/DateInput.mjs +1 -1
  67. package/build/dateLookup/DateLookup.js +2 -2
  68. package/build/dateLookup/DateLookup.js.map +1 -1
  69. package/build/dateLookup/DateLookup.mjs +1 -1
  70. package/build/dateLookup/DateLookup.mjs.map +1 -1
  71. package/build/dateLookup/dateHeader/DateHeader.js +1 -1
  72. package/build/dateLookup/dateHeader/DateHeader.mjs +1 -1
  73. package/build/dateLookup/dateTrigger/DateTrigger.js +1 -1
  74. package/build/dateLookup/dateTrigger/DateTrigger.mjs +1 -1
  75. package/build/decision/Decision.js +3 -3
  76. package/build/decision/Decision.js.map +1 -1
  77. package/build/decision/Decision.mjs +1 -1
  78. package/build/decision/Decision.mjs.map +1 -1
  79. package/build/definitionList/DefinitionList.js +1 -1
  80. package/build/definitionList/DefinitionList.mjs +1 -1
  81. package/build/dimmer/Dimmer.js +1 -1
  82. package/build/dimmer/Dimmer.mjs +1 -1
  83. package/build/display/Display.js +1 -1
  84. package/build/display/Display.mjs +1 -1
  85. package/build/drawer/Drawer.js +1 -1
  86. package/build/drawer/Drawer.mjs +1 -1
  87. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.js +1 -1
  88. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.mjs +1 -1
  89. package/build/field/Field.js +1 -1
  90. package/build/field/Field.mjs +1 -1
  91. package/build/flowNavigation/FlowNavigation.js +3 -3
  92. package/build/flowNavigation/FlowNavigation.js.map +1 -1
  93. package/build/flowNavigation/FlowNavigation.mjs +1 -1
  94. package/build/flowNavigation/FlowNavigation.mjs.map +1 -1
  95. package/build/header/Header.js +1 -1
  96. package/build/header/Header.mjs +1 -1
  97. package/build/image/Image.js +1 -1
  98. package/build/image/Image.mjs +1 -1
  99. package/build/index.js +2 -2
  100. package/build/index.mjs +1 -1
  101. package/build/info/Info.js +1 -1
  102. package/build/info/Info.mjs +1 -1
  103. package/build/inlineAlert/InlineAlert.js +1 -1
  104. package/build/inlineAlert/InlineAlert.mjs +1 -1
  105. package/build/inputs/SearchInput.js +1 -1
  106. package/build/inputs/SearchInput.mjs +1 -1
  107. package/build/inputs/SelectInput/SelectInput.js +2 -2
  108. package/build/inputs/SelectInput/SelectInput.js.map +1 -1
  109. package/build/inputs/SelectInput/SelectInput.mjs +1 -1
  110. package/build/inputs/SelectInput/SelectInput.mjs.map +1 -1
  111. package/build/instructionsList/InstructionsList.js +1 -1
  112. package/build/instructionsList/InstructionsList.mjs +1 -1
  113. package/build/link/Link.js +1 -1
  114. package/build/link/Link.mjs +1 -1
  115. package/build/listItem/AdditionalInfo/ListItemAdditionalInfo.js +1 -1
  116. package/build/listItem/AdditionalInfo/ListItemAdditionalInfo.mjs +1 -1
  117. package/build/listItem/ListItem.js +1 -1
  118. package/build/listItem/ListItem.mjs +1 -1
  119. package/build/listItem/Prompt/ListItemPrompt.js +1 -1
  120. package/build/listItem/Prompt/ListItemPrompt.mjs +1 -1
  121. package/build/loader/Loader.js +1 -1
  122. package/build/loader/Loader.mjs +1 -1
  123. package/build/logo/Logo.js +3 -3
  124. package/build/logo/Logo.js.map +1 -1
  125. package/build/logo/Logo.mjs +2 -2
  126. package/build/logo/Logo.mjs.map +1 -1
  127. package/build/main.css +477 -319
  128. package/build/markdown/Markdown.js +1 -1
  129. package/build/markdown/Markdown.mjs +1 -1
  130. package/build/modal/Modal.js +3 -3
  131. package/build/modal/Modal.js.map +1 -1
  132. package/build/modal/Modal.mjs +3 -3
  133. package/build/modal/Modal.mjs.map +1 -1
  134. package/build/moneyInput/MoneyInput.js +1 -1
  135. package/build/moneyInput/MoneyInput.mjs +1 -1
  136. package/build/navigationOption/NavigationOption.js +1 -1
  137. package/build/navigationOption/NavigationOption.mjs +1 -1
  138. package/build/nudge/Nudge.js +1 -1
  139. package/build/nudge/Nudge.mjs +1 -1
  140. package/build/overlayHeader/OverlayHeader.js +1 -1
  141. package/build/overlayHeader/OverlayHeader.mjs +1 -1
  142. package/build/phoneNumberInput/PhoneNumberInput.js +1 -1
  143. package/build/phoneNumberInput/PhoneNumberInput.mjs +1 -1
  144. package/build/popover/Popover.js +1 -1
  145. package/build/popover/Popover.mjs +1 -1
  146. package/build/processIndicator/ProcessIndicator.js +1 -1
  147. package/build/processIndicator/ProcessIndicator.mjs +1 -1
  148. package/build/progressBar/ProgressBar.js +1 -1
  149. package/build/progressBar/ProgressBar.mjs +1 -1
  150. package/build/promoCard/PromoCard.js +1 -1
  151. package/build/promoCard/PromoCard.mjs +1 -1
  152. package/build/promoCard/PromoCardIndicator.js +1 -1
  153. package/build/promoCard/PromoCardIndicator.mjs +1 -1
  154. package/build/prompt/ActionPrompt/ActionPrompt.js +2 -2
  155. package/build/prompt/ActionPrompt/ActionPrompt.js.map +1 -1
  156. package/build/prompt/ActionPrompt/ActionPrompt.mjs +2 -2
  157. package/build/prompt/ActionPrompt/ActionPrompt.mjs.map +1 -1
  158. package/build/prompt/CriticalBanner/CriticalBanner.js +83 -70
  159. package/build/prompt/CriticalBanner/CriticalBanner.js.map +1 -1
  160. package/build/prompt/CriticalBanner/CriticalBanner.mjs +83 -70
  161. package/build/prompt/CriticalBanner/CriticalBanner.mjs.map +1 -1
  162. package/build/prompt/InfoPrompt/InfoPrompt.js +1 -1
  163. package/build/prompt/InfoPrompt/InfoPrompt.mjs +1 -1
  164. package/build/prompt/InlinePrompt/InlinePrompt.js +1 -1
  165. package/build/prompt/InlinePrompt/InlinePrompt.mjs +1 -1
  166. package/build/provider/Provider.js +1 -1
  167. package/build/provider/Provider.mjs +1 -1
  168. package/build/radio/Radio.js +1 -1
  169. package/build/radio/Radio.mjs +1 -1
  170. package/build/segmentedControl/SegmentedControl.js +1 -1
  171. package/build/segmentedControl/SegmentedControl.mjs +1 -1
  172. package/build/select/Select.js +1 -1
  173. package/build/select/Select.mjs +1 -1
  174. package/build/select/option/Option.js +1 -1
  175. package/build/select/option/Option.mjs +1 -1
  176. package/build/statusIcon/StatusIcon.js +2 -2
  177. package/build/statusIcon/StatusIcon.js.map +1 -1
  178. package/build/statusIcon/StatusIcon.mjs +2 -2
  179. package/build/statusIcon/StatusIcon.mjs.map +1 -1
  180. package/build/stepper/Stepper.js +1 -1
  181. package/build/stepper/Stepper.mjs +1 -1
  182. package/build/sticky/Sticky.js +1 -1
  183. package/build/sticky/Sticky.mjs +1 -1
  184. package/build/styles/accordion/Accordion.css +1 -1
  185. package/build/styles/card/Card.css +2 -2
  186. package/build/styles/carousel/Carousel.css +5 -5
  187. package/build/styles/common/Option/Option.css +4 -2
  188. package/build/styles/common/baseCard/BaseCard.css +1 -1
  189. package/build/styles/container/Container.css +3 -3
  190. package/build/styles/criticalBanner/CriticalCommsBanner.css +1 -1
  191. package/build/styles/css/accordion.css +4 -4
  192. package/build/styles/css/button-groups.css +6 -6
  193. package/build/styles/css/buttons.css +1 -1
  194. package/build/styles/css/circles.css +1 -1
  195. package/build/styles/css/column-layout.css +4 -4
  196. package/build/styles/css/decision.css +4 -4
  197. package/build/styles/css/dropdowns.css +10 -10
  198. package/build/styles/css/droppable.css +8 -8
  199. package/build/styles/css/flex.css +15 -13
  200. package/build/styles/css/footer.css +3 -3
  201. package/build/styles/css/grid.css +19 -19
  202. package/build/styles/css/input-groups.css +12 -12
  203. package/build/styles/css/list-group.css +8 -8
  204. package/build/styles/css/modals.css +6 -6
  205. package/build/styles/css/navbar.css +62 -62
  206. package/build/styles/css/navs.css +2 -2
  207. package/build/styles/css/neptune.css +338 -270
  208. package/build/styles/css/panels.css +9 -9
  209. package/build/styles/css/popovers.css +13 -13
  210. package/build/styles/css/select.css +1 -1
  211. package/build/styles/css/sequences.css +6 -6
  212. package/build/styles/css/table.css +6 -6
  213. package/build/styles/css/utilities.css +20 -8
  214. package/build/styles/css/wells.css +18 -4
  215. package/build/styles/dateInput/DateInput.css +1 -1
  216. package/build/styles/definitionList/DefinitionList.css +2 -2
  217. package/build/styles/drawer/Drawer.css +2 -2
  218. package/build/styles/flowNavigation/FlowNavigation.css +1 -1
  219. package/build/styles/inputs/Input.css +3 -3
  220. package/build/styles/inputs/SelectInput/Options/SelectInputOptions.css +2 -2
  221. package/build/styles/inputs/SelectInput/SelectInput.css +2 -2
  222. package/build/styles/inputs/TextArea.css +3 -3
  223. package/build/styles/less/legacy-variables.less +47 -34
  224. package/build/styles/less/neptune-tokens.less +2 -2
  225. package/build/styles/main.css +477 -319
  226. package/build/styles/modal/Modal.css +20 -7
  227. package/build/styles/overlayHeader/OverlayHeader.css +1 -1
  228. package/build/styles/popover/Popover.css +3 -3
  229. package/build/styles/promoCard/PromoCard.css +1 -1
  230. package/build/styles/prompt/ActionPrompt/ActionPrompt.css +1 -1
  231. package/build/styles/prompt/CriticalBanner/CriticalBanner.css +63 -1
  232. package/build/styles/prompt/PrimitivePrompt/PrimitivePrompt.css +1 -1
  233. package/build/styles/props/custom-media.css +11 -23
  234. package/build/styles/props/neptune-tokens.css +1 -1
  235. package/build/styles/snackbar/Snackbar.css +2 -2
  236. package/build/styles/stepper/Stepper.css +2 -2
  237. package/build/styles/styles/less/accordion.css +4 -4
  238. package/build/styles/styles/less/button-groups.css +6 -6
  239. package/build/styles/styles/less/buttons.css +1 -1
  240. package/build/styles/styles/less/circles.css +1 -1
  241. package/build/styles/styles/less/column-layout.css +4 -4
  242. package/build/styles/styles/less/decision.css +4 -4
  243. package/build/styles/styles/less/dropdowns.css +10 -10
  244. package/build/styles/styles/less/droppable.css +8 -8
  245. package/build/styles/styles/less/flex.css +15 -13
  246. package/build/styles/styles/less/footer.css +3 -3
  247. package/build/styles/styles/less/forms/bootstrap-forms.css +9 -9
  248. package/build/styles/styles/less/grid.css +19 -19
  249. package/build/styles/styles/less/input-groups.css +12 -12
  250. package/build/styles/styles/less/list-group.css +8 -8
  251. package/build/styles/styles/less/modals.css +6 -6
  252. package/build/styles/styles/less/navbar.css +62 -62
  253. package/build/styles/styles/less/navs.css +2 -2
  254. package/build/styles/styles/less/neptune.css +338 -270
  255. package/build/styles/styles/less/panels.css +9 -9
  256. package/build/styles/styles/less/popovers.css +13 -13
  257. package/build/styles/styles/less/select.css +1 -1
  258. package/build/styles/styles/less/sequences.css +6 -6
  259. package/build/styles/styles/less/table.css +6 -6
  260. package/build/styles/styles/less/utilities.css +20 -8
  261. package/build/styles/styles/less/wells.css +18 -4
  262. package/build/styles/styles/props/custom-media.css +11 -1
  263. package/build/styles/table/Table.css +1 -1
  264. package/build/styles/tabs/Tabs.css +2 -2
  265. package/build/styles/typeahead/Typeahead.css +1 -1
  266. package/build/summary/Summary.js +1 -1
  267. package/build/summary/Summary.mjs +1 -1
  268. package/build/table/Table.js +1 -1
  269. package/build/table/Table.mjs +1 -1
  270. package/build/table/TableRow.js +1 -1
  271. package/build/table/TableRow.mjs +1 -1
  272. package/build/table/TableStatusText.js +1 -1
  273. package/build/table/TableStatusText.mjs +1 -1
  274. package/build/tabs/Tabs.js +1 -1
  275. package/build/tabs/Tabs.mjs +1 -1
  276. package/build/tile/Tile.js +1 -1
  277. package/build/tile/Tile.mjs +1 -1
  278. package/build/title/Title.js +1 -1
  279. package/build/title/Title.mjs +1 -1
  280. package/build/tooltip/Tooltip.js +1 -1
  281. package/build/tooltip/Tooltip.mjs +1 -1
  282. package/build/typeahead/Typeahead.js +1 -1
  283. package/build/typeahead/Typeahead.mjs +1 -1
  284. package/build/types/circularButton/CircularButton.d.ts.map +1 -1
  285. package/build/types/common/bottomSheet/BottomSheet.d.ts.map +1 -1
  286. package/build/types/common/hooks/useScreenSize.d.ts +1 -1
  287. package/build/types/common/hooks/useScreenSize.d.ts.map +1 -1
  288. package/build/types/common/index.d.ts +1 -1
  289. package/build/types/common/index.d.ts.map +1 -1
  290. package/build/types/common/propsValues/breakpoint.d.ts +9 -0
  291. package/build/types/common/propsValues/breakpoint.d.ts.map +1 -0
  292. package/build/types/dateLookup/DateLookup.d.ts.map +1 -1
  293. package/build/types/decision/Decision.d.ts.map +1 -1
  294. package/build/types/flowNavigation/FlowNavigation.d.ts.map +1 -1
  295. package/build/types/index.d.ts +1 -2
  296. package/build/types/index.d.ts.map +1 -1
  297. package/build/types/logo/Logo.d.ts +1 -1
  298. package/build/types/prompt/ActionPrompt/ActionPrompt.d.ts.map +1 -1
  299. package/build/types/prompt/CriticalBanner/CriticalBanner.d.ts.map +1 -1
  300. package/build/types/statusIcon/StatusIcon.d.ts.map +1 -1
  301. package/build/upload/Upload.js +1 -1
  302. package/build/upload/Upload.mjs +1 -1
  303. package/build/upload/steps/completeStep/completeStep.js +1 -1
  304. package/build/upload/steps/completeStep/completeStep.mjs +1 -1
  305. package/build/upload/steps/processingStep/processingStep.js +1 -1
  306. package/build/upload/steps/processingStep/processingStep.mjs +1 -1
  307. package/build/upload/steps/uploadImageStep/uploadImageStep.js +1 -1
  308. package/build/upload/steps/uploadImageStep/uploadImageStep.mjs +1 -1
  309. package/build/uploadInput/UploadInput.js +1 -1
  310. package/build/uploadInput/UploadInput.mjs +1 -1
  311. package/build/uploadInput/uploadButton/UploadButton.js +1 -1
  312. package/build/uploadInput/uploadButton/UploadButton.mjs +1 -1
  313. package/build/uploadInput/uploadButton/defaults.js +1 -1
  314. package/build/uploadInput/uploadButton/defaults.mjs +1 -1
  315. package/build/uploadInput/uploadItem/UploadItem.js +1 -1
  316. package/build/uploadInput/uploadItem/UploadItem.mjs +1 -1
  317. package/build/withDisplayFormat/WithDisplayFormat.js +1 -1
  318. package/build/withDisplayFormat/WithDisplayFormat.mjs +1 -1
  319. package/package.json +3 -3
  320. package/src/accordion/Accordion.css +1 -1
  321. package/src/card/Card.css +2 -2
  322. package/src/carousel/Carousel.css +5 -5
  323. package/src/carousel/Carousel.less +3 -3
  324. package/src/circularButton/CircularButton.tsx +2 -3
  325. package/src/common/Option/Option.css +4 -2
  326. package/src/common/Option/Option.less +4 -2
  327. package/src/common/baseCard/BaseCard.css +1 -1
  328. package/src/common/bottomSheet/BottomSheet.tsx +2 -2
  329. package/src/common/circle/Circle.tsx +2 -2
  330. package/src/common/hooks/useLayout/useLayout.ts +1 -1
  331. package/src/common/hooks/useScreenSize.ts +1 -1
  332. package/src/common/index.ts +1 -1
  333. package/src/common/propsValues/breakpoint.ts +8 -0
  334. package/src/common/responsivePanel/ResponsivePanel.test.js +2 -3
  335. package/src/container/Container.css +3 -3
  336. package/src/criticalBanner/CriticalCommsBanner.css +1 -1
  337. package/src/dateInput/DateInput.css +1 -1
  338. package/src/dateLookup/DateLookup.tsx +1 -1
  339. package/src/decision/Decision.test.tsx +1 -2
  340. package/src/decision/Decision.tsx +1 -2
  341. package/src/definitionList/DefinitionList.css +2 -2
  342. package/src/definitionList/DefinitionList.less +2 -2
  343. package/src/drawer/Drawer.css +2 -2
  344. package/src/drawer/Drawer.less +3 -4
  345. package/src/flowNavigation/FlowNavigation.css +1 -1
  346. package/src/flowNavigation/FlowNavigation.less +1 -2
  347. package/src/flowNavigation/FlowNavigation.story.tsx +0 -3
  348. package/src/flowNavigation/FlowNavigation.test.js +1 -1
  349. package/src/flowNavigation/FlowNavigation.tsx +1 -2
  350. package/src/index.ts +1 -1
  351. package/src/inputs/Input.css +3 -3
  352. package/src/inputs/SelectInput/Options/SelectInputOptions.css +2 -2
  353. package/src/inputs/SelectInput/SelectInput.css +2 -2
  354. package/src/inputs/SelectInput/SelectInput.tsx +1 -1
  355. package/src/inputs/TextArea.css +3 -3
  356. package/src/logo/Logo.tsx +1 -1
  357. package/src/main.css +477 -319
  358. package/src/modal/Modal.css +20 -7
  359. package/src/modal/Modal.less +19 -7
  360. package/src/modal/Modal.tsx +2 -2
  361. package/src/overlayHeader/OverlayHeader.css +1 -1
  362. package/src/overlayHeader/OverlayHeader.less +2 -3
  363. package/src/popover/Popover.css +3 -3
  364. package/src/popover/Popover.test.tsx +1 -2
  365. package/src/promoCard/PromoCard.css +1 -1
  366. package/src/prompt/ActionPrompt/ActionPrompt.css +1 -1
  367. package/src/prompt/ActionPrompt/ActionPrompt.less +1 -1
  368. package/src/prompt/ActionPrompt/ActionPrompt.test.tsx +6 -37
  369. package/src/prompt/ActionPrompt/ActionPrompt.tsx +2 -3
  370. package/src/prompt/CriticalBanner/CriticalBanner.accessibility.docs.mdx +9 -0
  371. package/src/prompt/CriticalBanner/CriticalBanner.css +63 -1
  372. package/src/prompt/CriticalBanner/CriticalBanner.less +96 -2
  373. package/src/prompt/CriticalBanner/CriticalBanner.story.tsx +156 -169
  374. package/src/prompt/CriticalBanner/CriticalBanner.test.story.tsx +25 -6
  375. package/src/prompt/CriticalBanner/CriticalBanner.test.tsx +37 -0
  376. package/src/prompt/CriticalBanner/CriticalBanner.tsx +98 -81
  377. package/src/prompt/CriticalBanner/CriticalBanner.vars.less +1 -0
  378. package/src/prompt/PrimitivePrompt/PrimitivePrompt.css +1 -1
  379. package/src/prompt/PrimitivePrompt/PrimitivePrompt.less +1 -1
  380. package/src/select/Select.test.tsx +1 -1
  381. package/src/snackbar/Snackbar.css +2 -2
  382. package/src/statusIcon/StatusIcon.tsx +2 -3
  383. package/src/stepper/Stepper.css +2 -2
  384. package/src/styles/less/accordion.css +4 -4
  385. package/src/styles/less/addons/_display-utilities.less +27 -13
  386. package/src/styles/less/button-groups.css +6 -6
  387. package/src/styles/less/buttons.css +1 -1
  388. package/src/styles/less/circles.css +1 -1
  389. package/src/styles/less/column-layout.css +4 -4
  390. package/src/styles/less/core/_typography-utilities.less +22 -10
  391. package/src/styles/less/decision.css +4 -4
  392. package/src/styles/less/dropdowns.css +10 -10
  393. package/src/styles/less/droppable.css +8 -8
  394. package/src/styles/less/flex.css +15 -13
  395. package/src/styles/less/flex.less +3 -1
  396. package/src/styles/less/footer.css +3 -3
  397. package/src/styles/less/forms/bootstrap-forms.css +9 -9
  398. package/src/styles/less/forms/bootstrap-forms.less +1 -1
  399. package/src/styles/less/grid.css +19 -19
  400. package/src/styles/less/input-groups.css +12 -12
  401. package/src/styles/less/list-group.css +8 -8
  402. package/src/styles/less/modals.css +6 -6
  403. package/src/styles/less/modals.less +4 -4
  404. package/src/styles/less/navbar.css +62 -62
  405. package/src/styles/less/navbar.less +2 -2
  406. package/src/styles/less/navs.css +2 -2
  407. package/src/styles/less/neptune.bundle.less +0 -1
  408. package/src/styles/less/neptune.css +338 -270
  409. package/src/styles/less/panels.css +9 -9
  410. package/src/styles/less/popovers.css +13 -13
  411. package/src/styles/less/popovers.less +6 -6
  412. package/src/styles/less/select.css +1 -1
  413. package/src/styles/less/sequences.css +6 -6
  414. package/src/styles/less/table.css +6 -6
  415. package/src/styles/less/table.less +1 -1
  416. package/src/styles/less/utilities.css +20 -8
  417. package/src/styles/less/utilities.less +14 -6
  418. package/src/styles/less/wells.css +18 -4
  419. package/src/styles/less/wells.less +5 -3
  420. package/src/styles/props/custom-media.css +11 -1
  421. package/src/styles/variables/legacy-variables.less +47 -4
  422. package/src/table/Table.css +1 -1
  423. package/src/tabs/Tabs.css +2 -2
  424. package/src/typeahead/Typeahead.css +1 -1
  425. package/src/uploadInput/uploadItem/UploadItem.less +2 -2
@@ -41,7 +41,7 @@
41
41
  padding-bottom: 12px;
42
42
  padding-bottom: var(--size-12);
43
43
  }
44
- @media (min-width: 600px) {
44
+ @media (min-width: 576px) {
45
45
  .tw-modal .tw-modal-content .tw-modal-header,
46
46
  .tw-modal .tw-modal-content .tw-modal-footer {
47
47
  padding: 24px;
@@ -52,12 +52,12 @@
52
52
  padding: 0 var(--size-24);
53
53
  }
54
54
  }
55
- @media (min-width: 320.02px) {
55
+ @media (min-width: 480px) {
56
56
  .tw-modal-dialog.tw-modal-sm {
57
57
  width: 300px;
58
58
  }
59
59
  }
60
- @media (min-width: 600px) {
60
+ @media (min-width: 576px) {
61
61
  .tw-modal {
62
62
  padding: 40px;
63
63
  padding: var(--size-40);
@@ -67,16 +67,29 @@
67
67
  border-radius: var(--radius-small);
68
68
  }
69
69
  .tw-modal .tw-modal-dialog.tw-modal-md {
70
- width: 576px;
70
+ width: 540px;
71
71
  }
72
72
  }
73
- @media (min-width: 840px) {
73
+ @media (min-width: 768px) {
74
74
  .tw-modal-dialog.tw-modal-lg {
75
- width: 792px;
75
+ width: 720px;
76
76
  }
77
77
  }
78
- @media (min-width: 1160px) {
78
+ @media (min-width: 992px) {
79
79
  .tw-modal-dialog.tw-modal-xl {
80
80
  width: 1000px;
81
81
  }
82
82
  }
83
+ /* Internet explorer hack */
84
+ @media all and (-ms-high-contrast: none) {
85
+ /* IE11 */
86
+ /* stylelint-disable selector-no-vendor-prefix, selector-type-no-unknown */
87
+ _:-ms-fullscreen,
88
+ :root .tw-modal {
89
+ height: 100%;
90
+ }
91
+ _:-ms-fullscreen .tw-modal-dialog,
92
+ :root .tw-modal .tw-modal-dialog {
93
+ height: 100%;
94
+ }
95
+ }
@@ -1,6 +1,3 @@
1
- @import (reference) "@transferwise/neptune-tokens/breakpoints.less";
2
- @import (reference) "@transferwise/neptune-tokens/tokens.less";
3
-
4
1
  .tw-modal {
5
2
  &--scrollable {
6
3
  max-height: 100%;
@@ -71,7 +68,7 @@
71
68
  @media (--screen-xs) {
72
69
  .tw-modal-dialog {
73
70
  &.tw-modal-sm {
74
- width: (@screen-xs-min - 2 * @size-10);
71
+ width: 300px;
75
72
  }
76
73
  }
77
74
  }
@@ -86,7 +83,7 @@
86
83
  }
87
84
 
88
85
  &.tw-modal-md {
89
- width: (@screen-sm-min - @size-24);
86
+ width: 540px;
90
87
  }
91
88
  }
92
89
  }
@@ -95,7 +92,7 @@
95
92
  @media (--screen-md) {
96
93
  .tw-modal-dialog {
97
94
  &.tw-modal-lg {
98
- width: (@screen-md-min - @size-48);
95
+ width: 720px;
99
96
  }
100
97
  }
101
98
  }
@@ -103,7 +100,22 @@
103
100
  @media (--screen-lg) {
104
101
  .tw-modal-dialog {
105
102
  &.tw-modal-xl {
106
- width: (@size-40 * 25);
103
+ width: 1000px;
104
+ }
105
+ }
106
+ }
107
+
108
+ /* Internet explorer hack */
109
+ // In internet explorer 11 modal shows up always collapsed.
110
+ @media all and (-ms-high-contrast: none) {
111
+ /* IE11 */
112
+ /* stylelint-disable selector-no-vendor-prefix, selector-type-no-unknown */
113
+ _:-ms-fullscreen,
114
+ :root .tw-modal {
115
+ height: 100%;
116
+
117
+ .tw-modal-dialog {
118
+ height: 100%;
107
119
  }
108
120
  }
109
121
  }
@@ -63,14 +63,14 @@ const Modal = ({
63
63
  ...otherProps
64
64
  }: ModalProps) => {
65
65
  const intl = useIntl();
66
- const { isSmall } = useLayout();
66
+ const { isMedium } = useLayout();
67
67
 
68
68
  const contentReference = useRef<HTMLDivElement>(null);
69
69
  const titleId = useId();
70
70
 
71
71
  const overlayId = useContext(OverlayIdContext);
72
72
 
73
- return !isSmall ? (
73
+ return !isMedium ? (
74
74
  <Drawer
75
75
  open={open}
76
76
  className={className}
@@ -2,7 +2,7 @@
2
2
  min-height: 97px;
3
3
  width: 100%;
4
4
  min-width: 320px;
5
- max-width: calc(1160px - 36px);
5
+ max-width: 1164px;
6
6
  }
7
7
  .np-theme-personal .np-overlay-header {
8
8
  border-bottom: 1px solid rgba(0,0,0,0.10196);
@@ -1,4 +1,3 @@
1
- @import (reference) "@transferwise/neptune-tokens/breakpoints.less";
2
1
  @import (reference) "./../styles/less/addons/_spacing-utilities.less";
3
2
 
4
3
  .np-overlay-header {
@@ -6,8 +5,8 @@
6
5
  // Same height and width as in FlowNavigation
7
6
  min-height: 97px;
8
7
  width: 100%;
9
- min-width: @screen-xs-min;
10
- max-width: calc(@screen-lg-min - 36px);
8
+ min-width: 320px;
9
+ max-width: 1164px;
11
10
  }
12
11
 
13
12
  .np-theme-personal & {
@@ -41,12 +41,12 @@
41
41
  hyphens: auto;
42
42
  hyphenate-limit-chars: 7 3;
43
43
  }
44
- @media (min-width: 840px) {
44
+ @media (min-width: 768px) {
45
45
  .np-popover__container.np-bottom-sheet .np-popover__title {
46
46
  hyphenate-limit-chars: 8 3;
47
47
  }
48
48
  }
49
- @media (min-width: 1160px) {
49
+ @media (min-width: 992px) {
50
50
  .np-popover__container.np-bottom-sheet .np-popover__title {
51
51
  hyphenate-limit-chars: 10 4 3;
52
52
  }
@@ -58,7 +58,7 @@
58
58
  -webkit-hyphenate-limit-before: 3;
59
59
  -webkit-hyphenate-limit-after: 3;
60
60
  }
61
- @media (min-width: 1160px) {
61
+ @media (min-width: 992px) {
62
62
  .np-popover__container.np-bottom-sheet .np-popover__title {
63
63
  -webkit-hyphenate-limit-before: 4;
64
64
  }
@@ -1,5 +1,4 @@
1
- import { Breakpoint } from '@transferwise/neptune-tokens';
2
- import { Position } from '../common';
1
+ import { Breakpoint, Position } from '../common';
3
2
  import { render, screen, userEvent, mockMatchMedia } from '../test-utils';
4
3
 
5
4
  import Popover from './Popover';
@@ -176,7 +176,7 @@
176
176
  gap: var(--size-24);
177
177
  width: 100%;
178
178
  }
179
- @media (min-width: 840px) {
179
+ @media (min-width: 768px) {
180
180
  .np-CardGroup {
181
181
  flex-direction: row;
182
182
  }
@@ -12,7 +12,7 @@
12
12
  -o-object-fit: contain;
13
13
  object-fit: contain;
14
14
  }
15
- @media (max-width: 599.98px) {
15
+ @media (max-width: 767px) {
16
16
  .wds-action-prompt--with-two-actions .wds-prompt__actions-wrapper .wds-Button {
17
17
  flex: 1 1 calc(50% - (var(--Prompt-actions-gap) / 2));
18
18
  min-width: -moz-fit-content;
@@ -11,7 +11,7 @@
11
11
  }
12
12
 
13
13
  &--with-two-actions {
14
- @media (--screen-xs-max) {
14
+ @media (--screen-sm-max) {
15
15
  .wds-prompt__actions-wrapper {
16
16
  .wds-Button {
17
17
  flex: 1 1 calc(50% - (var(--Prompt-actions-gap) / 2));
@@ -1,7 +1,7 @@
1
- import { userEvent } from '@testing-library/user-event';
2
- import { Breakpoint } from '@transferwise/neptune-tokens';
1
+ import { Sentiment } from '../../common';
3
2
  import { mockMatchMedia, render, screen } from '../../test-utils';
4
3
  import { ActionPrompt, ActionPromptProps } from './ActionPrompt';
4
+ import { userEvent } from '@testing-library/user-event';
5
5
 
6
6
  mockMatchMedia();
7
7
 
@@ -224,9 +224,10 @@ describe('ActionPrompt', () => {
224
224
 
225
225
  describe('Responsive behavior', () => {
226
226
  it('renders buttons as block on mobile', () => {
227
+ // Mock mobile viewport
227
228
  const mockMatchMediaFn = window.matchMedia as jest.Mock;
228
229
  mockMatchMediaFn.mockImplementation((query: string) => ({
229
- matches: query !== `(min-width: ${Breakpoint.SMALL}px)`,
230
+ matches: query === '(max-width: 768px)',
230
231
  media: query,
231
232
  onchange: null,
232
233
  addListener: jest.fn(),
@@ -243,40 +244,8 @@ describe('ActionPrompt', () => {
243
244
  />,
244
245
  );
245
246
 
246
- expect(screen.getByRole('button', { name: 'Primary Action' })).toHaveClass(
247
- 'wds-Button--block',
248
- );
249
- expect(screen.getByRole('button', { name: 'Secondary' })).toHaveClass(
250
- 'wds-Button--block'
251
- );
252
- });
253
-
254
- it('renders buttons as inline on desktop', () => {
255
- const mockMatchMediaFn = window.matchMedia as jest.Mock;
256
- mockMatchMediaFn.mockImplementation((query: string) => ({
257
- matches: query === `(min-width: ${Breakpoint.SMALL}px)`,
258
- media: query,
259
- onchange: null,
260
- addListener: jest.fn(),
261
- removeListener: jest.fn(),
262
- addEventListener: jest.fn(),
263
- removeEventListener: jest.fn(),
264
- dispatchEvent: jest.fn(),
265
- }));
266
-
267
- render(
268
- <ActionPrompt
269
- {...defaultProps}
270
- actionSecondary={{ label: 'Secondary', onClick: jest.fn() }}
271
- />,
272
- );
273
-
274
- expect(screen.getByRole('button', { name: 'Primary Action' })).not.toHaveClass(
275
- 'wds-Button--block',
276
- );
277
- expect(screen.getByRole('button', { name: 'Secondary' })).not.toHaveClass(
278
- 'wds-Button--block',
279
- );
247
+ expect(screen.getByText('Primary Action')).toBeInTheDocument();
248
+ expect(screen.getByText('Secondary')).toBeInTheDocument();
280
249
  });
281
250
  });
282
251
  });
@@ -1,10 +1,9 @@
1
1
  import { AriaAttributes, ReactNode, useId } from 'react';
2
- import { Breakpoint } from '@transferwise/neptune-tokens';
3
2
  import { clsx } from 'clsx';
4
3
 
5
4
  import Body from '../../body';
6
5
  import Button from '../../button';
7
- import { Typography } from '../../common';
6
+ import { Breakpoint, Typography } from '../../common';
8
7
  import { ButtonProps } from '../../button/Button.types';
9
8
  import { PrimitivePrompt, PrimitivePromptProps } from '../PrimitivePrompt';
10
9
  import { useScreenSize } from '../../common/hooks/useScreenSize';
@@ -50,7 +49,7 @@ export const ActionPrompt = ({
50
49
  'data-testid': testId,
51
50
  'aria-label': ariaLabel,
52
51
  }: ActionPromptProps) => {
53
- const isMobile = !useScreenSize(Breakpoint.SMALL);
52
+ const isMobile = !useScreenSize(Breakpoint.MEDIUM);
54
53
 
55
54
  const mediaId = useId();
56
55
  const titleId = useId();
@@ -64,6 +64,15 @@ Screen readers announce the banner content whenever:
64
64
  - The user toggles between collapsed and expanded states
65
65
  - The content (title, description, or action labels) changes
66
66
 
67
+ ## Reduced Motion
68
+
69
+ `CriticalBanner` respects the user's reduced motion preference. When reduced motion is on, the component does not show:
70
+
71
+ - the entry animation that reveals the banner from above when it first appears
72
+ - the collapse and expand animation used when the user toggles the banner content
73
+
74
+ The same content is still rendered and announced. Reduced motion only removes the visual movement.
75
+
67
76
  ## Media
68
77
 
69
78
  Custom media icons should include their own accessibility attributes. Use the `title` prop on icons to provide accessible names for screen readers:
@@ -73,7 +73,7 @@
73
73
  padding-top: 0;
74
74
  }
75
75
  }
76
- @container (width < 320px) {
76
+ @container (max-width: 320px) {
77
77
  .wds-critical-banner__text-wrapper {
78
78
  padding-top: 0;
79
79
  }
@@ -124,6 +124,63 @@
124
124
  min-width: fit-content;
125
125
  }
126
126
  }
127
+ .wds-critical-banner-overhang {
128
+ --critical-banner-mobile-overhang-size: 32px;
129
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-negative);
130
+ position: relative;
131
+ }
132
+ .wds-critical-banner-overhang--warning {
133
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-warning);
134
+ }
135
+ .wds-critical-banner-overhang--negative {
136
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-negative);
137
+ }
138
+ .wds-critical-banner-overhang--neutral {
139
+ --critical-banner-mobile-overhang-color: var(--color-background-neutral);
140
+ }
141
+ .wds-critical-banner-overhang--success {
142
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-positive);
143
+ }
144
+ .wds-critical-banner-overhang-query {
145
+ container-name: critical-banner-overhang;
146
+ container-type: inline-size;
147
+ inline-size: 100%;
148
+ }
149
+ .wds-critical-banner__entry-mask {
150
+ display: grid;
151
+ grid-template-rows: 0fr;
152
+ overflow: hidden;
153
+ animation: wds-critical-banner-reveal-height 400ms cubic-bezier(0.3, 0, 0.1, 1) 500ms both;
154
+ }
155
+ @container critical-banner-overhang (max-width: 600px) {
156
+ .wds-critical-banner__entry-mask .wds-critical-banner-overhang {
157
+ margin-bottom: var(--critical-banner-mobile-overhang-size);
158
+ padding-bottom: var(--critical-banner-mobile-overhang-size);
159
+ }
160
+ .wds-critical-banner__entry-mask .wds-critical-banner-overhang::after {
161
+ content: "";
162
+ position: absolute;
163
+ right: 0;
164
+ bottom: 0;
165
+ left: 0;
166
+ height: var(--critical-banner-mobile-overhang-size);
167
+ pointer-events: none;
168
+ background: radial-gradient(circle at 100% 100%, transparent var(--critical-banner-mobile-overhang-size), var(--critical-banner-mobile-overhang-color) var(--critical-banner-mobile-overhang-size)) 0 0 / var(--critical-banner-mobile-overhang-size) var(--critical-banner-mobile-overhang-size) no-repeat, radial-gradient(circle at 0% 100%, transparent var(--critical-banner-mobile-overhang-size), var(--critical-banner-mobile-overhang-color) var(--critical-banner-mobile-overhang-size)) 100% 0 / var(--critical-banner-mobile-overhang-size) var(--critical-banner-mobile-overhang-size) no-repeat;
169
+ }
170
+ }
171
+ .wds-critical-banner__entry-track {
172
+ min-height: 0;
173
+ }
174
+ @keyframes wds-critical-banner-reveal-height {
175
+ from {
176
+ grid-template-rows: 0fr;
177
+ overflow: hidden;
178
+ }
179
+ to {
180
+ grid-template-rows: 1fr;
181
+ overflow: visible;
182
+ }
183
+ }
127
184
  @media (prefers-reduced-motion: reduce) {
128
185
  .wds-critical-banner__description,
129
186
  .wds-critical-banner__title,
@@ -131,4 +188,9 @@
131
188
  .wds-critical-banner__toggle {
132
189
  transition: none !important;
133
190
  }
191
+ .wds-critical-banner__entry-mask {
192
+ animation: none;
193
+ grid-template-rows: 1fr;
194
+ overflow: visible;
195
+ }
134
196
  }
@@ -1,4 +1,3 @@
1
- @import (reference) "@transferwise/neptune-tokens/breakpoints.less";
2
1
  @import (reference) "./CriticalBanner.vars.less";
3
2
 
4
3
  .wds-critical-banner {
@@ -84,7 +83,8 @@
84
83
  @media (--screen-400-zoom) {
85
84
  padding-top: 0;
86
85
  }
87
- @container (width < @screen-xs-min) {
86
+
87
+ @container (max-width: 320px) {
88
88
  padding-top: 0;
89
89
  }
90
90
  }
@@ -144,6 +144,94 @@
144
144
  }
145
145
  }
146
146
 
147
+ .wds-critical-banner-overhang {
148
+ --critical-banner-mobile-overhang-size: 32px;
149
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-negative);
150
+ position: relative;
151
+
152
+ &--warning {
153
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-warning);
154
+ }
155
+
156
+ &--negative {
157
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-negative);
158
+ }
159
+
160
+ &--neutral {
161
+ --critical-banner-mobile-overhang-color: var(--color-background-neutral);
162
+ }
163
+
164
+ &--success {
165
+ --critical-banner-mobile-overhang-color: var(--color-sentiment-positive);
166
+ }
167
+ }
168
+
169
+ // Entry animation: after a 500ms delay, reveal the already-positioned banner
170
+ // over 400ms. The mask clips only during the reveal, then becomes visible so the
171
+ // overhang and actions are not clipped after the animation.
172
+ .wds-critical-banner-overhang-query {
173
+ container-name: critical-banner-overhang;
174
+ container-type: inline-size;
175
+ inline-size: 100%;
176
+ }
177
+
178
+ .wds-critical-banner__entry-mask {
179
+ display: grid;
180
+ grid-template-rows: 0fr;
181
+ overflow: hidden;
182
+ animation: wds-critical-banner-reveal-height 400ms cubic-bezier(0.3, 0, 0.1, 1) 500ms both;
183
+
184
+ @container critical-banner-overhang (max-width: @wds-critical-banner-mobile-overhang-max) {
185
+ .wds-critical-banner-overhang {
186
+ margin-bottom: var(--critical-banner-mobile-overhang-size);
187
+ padding-bottom: var(--critical-banner-mobile-overhang-size);
188
+
189
+ &::after {
190
+ content: "";
191
+ position: absolute;
192
+ right: 0;
193
+ bottom: 0;
194
+ left: 0;
195
+ height: var(--critical-banner-mobile-overhang-size);
196
+ pointer-events: none;
197
+ background:
198
+ radial-gradient(
199
+ circle at 100% 100%,
200
+ transparent var(--critical-banner-mobile-overhang-size),
201
+ var(--critical-banner-mobile-overhang-color)
202
+ var(--critical-banner-mobile-overhang-size)
203
+ )
204
+ 0 0 / var(--critical-banner-mobile-overhang-size)
205
+ var(--critical-banner-mobile-overhang-size) no-repeat,
206
+ radial-gradient(
207
+ circle at 0% 100%,
208
+ transparent var(--critical-banner-mobile-overhang-size),
209
+ var(--critical-banner-mobile-overhang-color)
210
+ var(--critical-banner-mobile-overhang-size)
211
+ )
212
+ 100% 0 / var(--critical-banner-mobile-overhang-size)
213
+ var(--critical-banner-mobile-overhang-size) no-repeat;
214
+ }
215
+ }
216
+ }
217
+ }
218
+
219
+ .wds-critical-banner__entry-track {
220
+ min-height: 0;
221
+ }
222
+
223
+ @keyframes wds-critical-banner-reveal-height {
224
+ from {
225
+ grid-template-rows: 0fr;
226
+ overflow: hidden;
227
+ }
228
+
229
+ to {
230
+ grid-template-rows: 1fr;
231
+ overflow: visible;
232
+ }
233
+ }
234
+
147
235
  // Reduced motion support
148
236
  @media (prefers-reduced-motion: reduce) {
149
237
  .wds-critical-banner__description,
@@ -152,4 +240,10 @@
152
240
  .wds-critical-banner__toggle {
153
241
  transition: none !important;
154
242
  }
243
+
244
+ .wds-critical-banner__entry-mask {
245
+ animation: none;
246
+ grid-template-rows: 1fr;
247
+ overflow: visible;
248
+ }
155
249
  }