@transferwise/components 0.0.0-experimental-fa9fbe9 → 0.0.0-experimental-00012dd

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 (500) 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/useResizeObserver.js +3 -3
  54. package/build/common/hooks/useResizeObserver.js.map +1 -1
  55. package/build/common/hooks/useResizeObserver.mjs +3 -3
  56. package/build/common/hooks/useResizeObserver.mjs.map +1 -1
  57. package/build/common/hooks/useScreenSize.js.map +1 -1
  58. package/build/common/hooks/useScreenSize.mjs.map +1 -1
  59. package/build/common/panel/Panel.js +1 -1
  60. package/build/common/panel/Panel.mjs +1 -1
  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 -4
  64. package/build/criticalBanner/CriticalCommsBanner.js.map +1 -1
  65. package/build/criticalBanner/CriticalCommsBanner.mjs +1 -4
  66. package/build/criticalBanner/CriticalCommsBanner.mjs.map +1 -1
  67. package/build/dateInput/DateInput.js +1 -1
  68. package/build/dateInput/DateInput.mjs +1 -1
  69. package/build/dateLookup/DateLookup.js +2 -2
  70. package/build/dateLookup/DateLookup.js.map +1 -1
  71. package/build/dateLookup/DateLookup.mjs +1 -1
  72. package/build/dateLookup/DateLookup.mjs.map +1 -1
  73. package/build/dateLookup/dateHeader/DateHeader.js +1 -1
  74. package/build/dateLookup/dateHeader/DateHeader.mjs +1 -1
  75. package/build/dateLookup/dateTrigger/DateTrigger.js +1 -1
  76. package/build/dateLookup/dateTrigger/DateTrigger.mjs +1 -1
  77. package/build/decision/Decision.js +3 -3
  78. package/build/decision/Decision.js.map +1 -1
  79. package/build/decision/Decision.mjs +1 -1
  80. package/build/decision/Decision.mjs.map +1 -1
  81. package/build/definitionList/DefinitionList.js +1 -1
  82. package/build/definitionList/DefinitionList.mjs +1 -1
  83. package/build/dimmer/Dimmer.js +1 -1
  84. package/build/dimmer/Dimmer.mjs +1 -1
  85. package/build/display/Display.js +1 -1
  86. package/build/display/Display.mjs +1 -1
  87. package/build/drawer/Drawer.js +1 -1
  88. package/build/drawer/Drawer.mjs +1 -1
  89. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.js +1 -1
  90. package/build/expressiveMoneyInput/currencySelector/CurrencySelector.mjs +1 -1
  91. package/build/field/Field.js +3 -4
  92. package/build/field/Field.js.map +1 -1
  93. package/build/field/Field.mjs +3 -4
  94. package/build/field/Field.mjs.map +1 -1
  95. package/build/flowNavigation/FlowNavigation.js +3 -3
  96. package/build/flowNavigation/FlowNavigation.js.map +1 -1
  97. package/build/flowNavigation/FlowNavigation.mjs +1 -1
  98. package/build/flowNavigation/FlowNavigation.mjs.map +1 -1
  99. package/build/header/Header.js +1 -1
  100. package/build/header/Header.mjs +1 -1
  101. package/build/i18n/en.json +0 -2
  102. package/build/i18n/en.json.js +0 -2
  103. package/build/i18n/en.json.js.map +1 -1
  104. package/build/i18n/en.json.mjs +0 -2
  105. package/build/i18n/en.json.mjs.map +1 -1
  106. package/build/image/Image.js +1 -1
  107. package/build/image/Image.mjs +1 -1
  108. package/build/index.js +2 -4
  109. package/build/index.js.map +1 -1
  110. package/build/index.mjs +1 -2
  111. package/build/index.mjs.map +1 -1
  112. package/build/info/Info.js +1 -1
  113. package/build/info/Info.mjs +1 -1
  114. package/build/inlineAlert/InlineAlert.js +1 -1
  115. package/build/inlineAlert/InlineAlert.mjs +1 -1
  116. package/build/inputs/SearchInput.js +1 -1
  117. package/build/inputs/SearchInput.mjs +1 -1
  118. package/build/inputs/SelectInput/SelectInput.js +2 -2
  119. package/build/inputs/SelectInput/SelectInput.js.map +1 -1
  120. package/build/inputs/SelectInput/SelectInput.mjs +1 -1
  121. package/build/inputs/SelectInput/SelectInput.mjs.map +1 -1
  122. package/build/instructionsList/InstructionsList.js +1 -1
  123. package/build/instructionsList/InstructionsList.mjs +1 -1
  124. package/build/link/Link.js +1 -1
  125. package/build/link/Link.mjs +1 -1
  126. package/build/listItem/AdditionalInfo/ListItemAdditionalInfo.js +1 -1
  127. package/build/listItem/AdditionalInfo/ListItemAdditionalInfo.mjs +1 -1
  128. package/build/listItem/ListItem.js +1 -1
  129. package/build/listItem/ListItem.mjs +1 -1
  130. package/build/listItem/Prompt/ListItemPrompt.js +3 -4
  131. package/build/listItem/Prompt/ListItemPrompt.js.map +1 -1
  132. package/build/listItem/Prompt/ListItemPrompt.mjs +3 -4
  133. package/build/listItem/Prompt/ListItemPrompt.mjs.map +1 -1
  134. package/build/loader/Loader.js +1 -1
  135. package/build/loader/Loader.mjs +1 -1
  136. package/build/logo/Logo.js +1 -1
  137. package/build/logo/Logo.js.map +1 -1
  138. package/build/logo/Logo.mjs +1 -1
  139. package/build/logo/Logo.mjs.map +1 -1
  140. package/build/main.css +330 -495
  141. package/build/markdown/Markdown.js +1 -1
  142. package/build/markdown/Markdown.mjs +1 -1
  143. package/build/modal/Modal.js +1 -1
  144. package/build/modal/Modal.mjs +1 -1
  145. package/build/moneyInput/MoneyInput.js +1 -1
  146. package/build/moneyInput/MoneyInput.mjs +1 -1
  147. package/build/navigationOption/NavigationOption.js +1 -1
  148. package/build/navigationOption/NavigationOption.mjs +1 -1
  149. package/build/nudge/Nudge.js +1 -1
  150. package/build/nudge/Nudge.mjs +1 -1
  151. package/build/overlayHeader/OverlayHeader.js +1 -1
  152. package/build/overlayHeader/OverlayHeader.mjs +1 -1
  153. package/build/phoneNumberInput/PhoneNumberInput.js +1 -1
  154. package/build/phoneNumberInput/PhoneNumberInput.mjs +1 -1
  155. package/build/popover/Popover.js +1 -1
  156. package/build/popover/Popover.mjs +1 -1
  157. package/build/processIndicator/ProcessIndicator.js +1 -1
  158. package/build/processIndicator/ProcessIndicator.mjs +1 -1
  159. package/build/progressBar/ProgressBar.js +1 -1
  160. package/build/progressBar/ProgressBar.mjs +1 -1
  161. package/build/promoCard/PromoCard.js +1 -1
  162. package/build/promoCard/PromoCard.mjs +1 -1
  163. package/build/promoCard/PromoCardIndicator.js +1 -1
  164. package/build/promoCard/PromoCardIndicator.mjs +1 -1
  165. package/build/prompt/ActionPrompt/ActionPrompt.js +42 -10
  166. package/build/prompt/ActionPrompt/ActionPrompt.js.map +1 -1
  167. package/build/prompt/ActionPrompt/ActionPrompt.mjs +41 -9
  168. package/build/prompt/ActionPrompt/ActionPrompt.mjs.map +1 -1
  169. package/build/prompt/InfoPrompt/InfoPrompt.js +1 -1
  170. package/build/prompt/InfoPrompt/InfoPrompt.mjs +1 -1
  171. package/build/prompt/InlinePrompt/InlinePrompt.js +1 -1
  172. package/build/prompt/InlinePrompt/InlinePrompt.mjs +1 -1
  173. package/build/prompt/PrimitivePrompt/PrimitivePrompt.js +4 -11
  174. package/build/prompt/PrimitivePrompt/PrimitivePrompt.js.map +1 -1
  175. package/build/prompt/PrimitivePrompt/PrimitivePrompt.mjs +4 -11
  176. package/build/prompt/PrimitivePrompt/PrimitivePrompt.mjs.map +1 -1
  177. package/build/provider/Provider.js +1 -1
  178. package/build/provider/Provider.mjs +1 -1
  179. package/build/radio/Radio.js +1 -1
  180. package/build/radio/Radio.mjs +1 -1
  181. package/build/segmentedControl/SegmentedControl.js +1 -1
  182. package/build/segmentedControl/SegmentedControl.mjs +1 -1
  183. package/build/select/Select.js +1 -1
  184. package/build/select/Select.mjs +1 -1
  185. package/build/select/option/Option.js +1 -1
  186. package/build/select/option/Option.mjs +1 -1
  187. package/build/statusIcon/StatusIcon.js +2 -2
  188. package/build/statusIcon/StatusIcon.js.map +1 -1
  189. package/build/statusIcon/StatusIcon.mjs +2 -2
  190. package/build/statusIcon/StatusIcon.mjs.map +1 -1
  191. package/build/stepper/Stepper.js +1 -1
  192. package/build/stepper/Stepper.mjs +1 -1
  193. package/build/sticky/Sticky.js +1 -1
  194. package/build/sticky/Sticky.mjs +1 -1
  195. package/build/styles/accordion/Accordion.css +1 -1
  196. package/build/styles/card/Card.css +2 -2
  197. package/build/styles/carousel/Carousel.css +5 -5
  198. package/build/styles/common/Option/Option.css +1 -1
  199. package/build/styles/common/baseCard/BaseCard.css +1 -1
  200. package/build/styles/container/Container.css +3 -3
  201. package/build/styles/criticalBanner/CriticalCommsBanner.css +1 -1
  202. package/build/styles/css/accordion.css +4 -4
  203. package/build/styles/css/button-groups.css +6 -6
  204. package/build/styles/css/buttons.css +1 -1
  205. package/build/styles/css/circles.css +1 -1
  206. package/build/styles/css/column-layout.css +4 -4
  207. package/build/styles/css/decision.css +4 -4
  208. package/build/styles/css/dropdowns.css +10 -10
  209. package/build/styles/css/droppable.css +8 -8
  210. package/build/styles/css/flex.css +14 -14
  211. package/build/styles/css/footer.css +3 -3
  212. package/build/styles/css/grid.css +19 -19
  213. package/build/styles/css/input-groups.css +12 -12
  214. package/build/styles/css/list-group.css +8 -8
  215. package/build/styles/css/modals.css +3 -3
  216. package/build/styles/css/navbar.css +62 -62
  217. package/build/styles/css/navs.css +2 -2
  218. package/build/styles/css/neptune.css +258 -258
  219. package/build/styles/css/panels.css +9 -9
  220. package/build/styles/css/popovers.css +13 -13
  221. package/build/styles/css/select.css +1 -1
  222. package/build/styles/css/sequences.css +6 -6
  223. package/build/styles/css/table.css +6 -6
  224. package/build/styles/css/utilities.css +4 -4
  225. package/build/styles/css/wells.css +4 -4
  226. package/build/styles/dateInput/DateInput.css +1 -1
  227. package/build/styles/definitionList/DefinitionList.css +2 -2
  228. package/build/styles/drawer/Drawer.css +1 -1
  229. package/build/styles/inputs/Input.css +3 -3
  230. package/build/styles/inputs/SelectInput/Options/SelectInputOptions.css +2 -2
  231. package/build/styles/inputs/SelectInput/SelectInput.css +2 -2
  232. package/build/styles/inputs/TextArea.css +3 -3
  233. package/build/styles/less/legacy-variables.less +34 -47
  234. package/build/styles/less/neptune-tokens.less +2 -2
  235. package/build/styles/logo/Logo.css +2 -2
  236. package/build/styles/main.css +330 -495
  237. package/build/styles/modal/Modal.css +5 -5
  238. package/build/styles/popover/Popover.css +3 -3
  239. package/build/styles/promoCard/PromoCard.css +1 -1
  240. package/build/styles/prompt/ActionPrompt/ActionPrompt.css +1 -1
  241. package/build/styles/prompt/PrimitivePrompt/PrimitivePrompt.css +1 -1
  242. package/build/styles/props/custom-media.css +23 -11
  243. package/build/styles/props/neptune-tokens.css +1 -1
  244. package/build/styles/snackbar/Snackbar.css +2 -2
  245. package/build/styles/stepper/Stepper.css +2 -2
  246. package/build/styles/styles/less/accordion.css +4 -4
  247. package/build/styles/styles/less/button-groups.css +6 -6
  248. package/build/styles/styles/less/buttons.css +1 -1
  249. package/build/styles/styles/less/circles.css +1 -1
  250. package/build/styles/styles/less/column-layout.css +4 -4
  251. package/build/styles/styles/less/decision.css +4 -4
  252. package/build/styles/styles/less/dropdowns.css +10 -10
  253. package/build/styles/styles/less/droppable.css +8 -8
  254. package/build/styles/styles/less/flex.css +14 -14
  255. package/build/styles/styles/less/footer.css +3 -3
  256. package/build/styles/styles/less/forms/bootstrap-forms.css +9 -9
  257. package/build/styles/styles/less/grid.css +19 -19
  258. package/build/styles/styles/less/input-groups.css +12 -12
  259. package/build/styles/styles/less/list-group.css +8 -8
  260. package/build/styles/styles/less/modals.css +3 -3
  261. package/build/styles/styles/less/navbar.css +62 -62
  262. package/build/styles/styles/less/navs.css +2 -2
  263. package/build/styles/styles/less/neptune.css +258 -258
  264. package/build/styles/styles/less/panels.css +9 -9
  265. package/build/styles/styles/less/popovers.css +13 -13
  266. package/build/styles/styles/less/select.css +1 -1
  267. package/build/styles/styles/less/sequences.css +6 -6
  268. package/build/styles/styles/less/table.css +6 -6
  269. package/build/styles/styles/less/utilities.css +4 -4
  270. package/build/styles/styles/less/wells.css +4 -4
  271. package/build/styles/styles/props/custom-media.css +1 -11
  272. package/build/styles/table/Table.css +1 -1
  273. package/build/styles/tabs/Tabs.css +2 -2
  274. package/build/styles/typeahead/Typeahead.css +1 -1
  275. package/build/summary/Summary.js +1 -1
  276. package/build/summary/Summary.mjs +1 -1
  277. package/build/table/Table.js +7 -6
  278. package/build/table/Table.js.map +1 -1
  279. package/build/table/Table.mjs +7 -6
  280. package/build/table/Table.mjs.map +1 -1
  281. package/build/table/TableRow.js +1 -1
  282. package/build/table/TableRow.mjs +1 -1
  283. package/build/table/TableStatusText.js +1 -1
  284. package/build/table/TableStatusText.mjs +1 -1
  285. package/build/tabs/Tabs.js +1 -1
  286. package/build/tabs/Tabs.mjs +1 -1
  287. package/build/tile/Tile.js +1 -1
  288. package/build/tile/Tile.mjs +1 -1
  289. package/build/title/Title.js +1 -1
  290. package/build/title/Title.mjs +1 -1
  291. package/build/tooltip/Tooltip.js +1 -1
  292. package/build/tooltip/Tooltip.mjs +1 -1
  293. package/build/typeahead/Typeahead.js +3 -4
  294. package/build/typeahead/Typeahead.js.map +1 -1
  295. package/build/typeahead/Typeahead.mjs +3 -4
  296. package/build/typeahead/Typeahead.mjs.map +1 -1
  297. package/build/types/circularButton/CircularButton.d.ts.map +1 -1
  298. package/build/types/common/bottomSheet/BottomSheet.d.ts.map +1 -1
  299. package/build/types/common/hooks/useResizeObserver.d.ts +1 -1
  300. package/build/types/common/hooks/useResizeObserver.d.ts.map +1 -1
  301. package/build/types/common/hooks/useScreenSize.d.ts +1 -1
  302. package/build/types/common/hooks/useScreenSize.d.ts.map +1 -1
  303. package/build/types/common/index.d.ts +1 -1
  304. package/build/types/common/index.d.ts.map +1 -1
  305. package/build/types/criticalBanner/CriticalCommsBanner.d.ts +0 -3
  306. package/build/types/criticalBanner/CriticalCommsBanner.d.ts.map +1 -1
  307. package/build/types/dateLookup/DateLookup.d.ts.map +1 -1
  308. package/build/types/decision/Decision.d.ts.map +1 -1
  309. package/build/types/flowNavigation/FlowNavigation.d.ts.map +1 -1
  310. package/build/types/index.d.ts +4 -3
  311. package/build/types/index.d.ts.map +1 -1
  312. package/build/types/logo/Logo.d.ts +1 -1
  313. package/build/types/prompt/ActionPrompt/ActionPrompt.d.ts +11 -2
  314. package/build/types/prompt/ActionPrompt/ActionPrompt.d.ts.map +1 -1
  315. package/build/types/prompt/PrimitivePrompt/PrimitivePrompt.d.ts +3 -35
  316. package/build/types/prompt/PrimitivePrompt/PrimitivePrompt.d.ts.map +1 -1
  317. package/build/types/prompt/index.d.ts +0 -2
  318. package/build/types/prompt/index.d.ts.map +1 -1
  319. package/build/types/statusIcon/StatusIcon.d.ts.map +1 -1
  320. package/build/types/table/Table.d.ts.map +1 -1
  321. package/build/types/test-utils/index.d.ts +0 -4
  322. package/build/types/test-utils/index.d.ts.map +1 -1
  323. package/build/upload/Upload.js +1 -1
  324. package/build/upload/Upload.mjs +1 -1
  325. package/build/upload/steps/completeStep/completeStep.js +1 -1
  326. package/build/upload/steps/completeStep/completeStep.mjs +1 -1
  327. package/build/upload/steps/processingStep/processingStep.js +1 -1
  328. package/build/upload/steps/processingStep/processingStep.mjs +1 -1
  329. package/build/upload/steps/uploadImageStep/uploadImageStep.js +1 -1
  330. package/build/upload/steps/uploadImageStep/uploadImageStep.mjs +1 -1
  331. package/build/uploadInput/UploadInput.js +1 -1
  332. package/build/uploadInput/UploadInput.mjs +1 -1
  333. package/build/uploadInput/uploadButton/UploadButton.js +1 -1
  334. package/build/uploadInput/uploadButton/UploadButton.mjs +1 -1
  335. package/build/uploadInput/uploadButton/defaults.js +1 -1
  336. package/build/uploadInput/uploadButton/defaults.mjs +1 -1
  337. package/build/uploadInput/uploadItem/UploadItem.js +1 -1
  338. package/build/uploadInput/uploadItem/UploadItem.mjs +1 -1
  339. package/build/withDisplayFormat/WithDisplayFormat.js +1 -1
  340. package/build/withDisplayFormat/WithDisplayFormat.mjs +1 -1
  341. package/package.json +3 -3
  342. package/src/accordion/Accordion.css +1 -1
  343. package/src/card/Card.css +2 -2
  344. package/src/carousel/Carousel.css +5 -5
  345. package/src/circularButton/CircularButton.tsx +3 -2
  346. package/src/common/Option/Option.css +1 -1
  347. package/src/common/baseCard/BaseCard.css +1 -1
  348. package/src/common/bottomSheet/BottomSheet.test.story.tsx +6 -5
  349. package/src/common/bottomSheet/BottomSheet.tsx +2 -2
  350. package/src/common/circle/Circle.tsx +2 -2
  351. package/src/common/hooks/useLayout/useLayout.ts +1 -1
  352. package/src/common/hooks/useResizeObserver.ts +2 -3
  353. package/src/common/hooks/useScreenSize.ts +1 -1
  354. package/src/common/index.ts +1 -1
  355. package/src/common/responsivePanel/ResponsivePanel.test.js +3 -2
  356. package/src/container/Container.css +3 -3
  357. package/src/criticalBanner/CriticalCommsBanner.css +1 -1
  358. package/src/criticalBanner/CriticalCommsBanner.story.tsx +0 -4
  359. package/src/criticalBanner/CriticalCommsBanner.test.story.tsx +1 -1
  360. package/src/criticalBanner/CriticalCommsBanner.tsx +0 -3
  361. package/src/dateInput/DateInput.css +1 -1
  362. package/src/dateLookup/DateLookup.tsx +1 -1
  363. package/src/decision/Decision.test.tsx +2 -1
  364. package/src/decision/Decision.tsx +2 -1
  365. package/src/definitionList/DefinitionList.css +2 -2
  366. package/src/definitionList/DefinitionList.less +2 -2
  367. package/src/drawer/Drawer.css +1 -1
  368. package/src/flowNavigation/FlowNavigation.test.js +1 -1
  369. package/src/flowNavigation/FlowNavigation.tsx +2 -1
  370. package/src/i18n/en.json +0 -2
  371. package/src/index.ts +3 -3
  372. package/src/inputs/Input.css +3 -3
  373. package/src/inputs/SelectInput/Options/SelectInputOptions.css +2 -2
  374. package/src/inputs/SelectInput/SelectInput.css +2 -2
  375. package/src/inputs/SelectInput/SelectInput.tsx +1 -1
  376. package/src/inputs/TextArea.css +3 -3
  377. package/src/logo/Logo.css +2 -2
  378. package/src/logo/Logo.story.tsx +3 -3
  379. package/src/logo/Logo.tsx +1 -1
  380. package/src/main.css +330 -495
  381. package/src/main.less +1 -3
  382. package/src/modal/Modal.css +5 -5
  383. package/src/popover/Popover.css +3 -3
  384. package/src/popover/Popover.test.tsx +2 -1
  385. package/src/promoCard/PromoCard.css +1 -1
  386. package/src/prompt/ActionPrompt/ActionPrompt.css +1 -1
  387. package/src/prompt/ActionPrompt/ActionPrompt.test.tsx +3 -3
  388. package/src/prompt/ActionPrompt/ActionPrompt.tsx +64 -10
  389. package/src/prompt/PrimitivePrompt/PrimitivePrompt.css +1 -1
  390. package/src/prompt/PrimitivePrompt/PrimitivePrompt.tsx +40 -56
  391. package/src/prompt/index.ts +0 -4
  392. package/src/section/Section.story.tsx +2 -8
  393. package/src/select/Select.test.tsx +1 -1
  394. package/src/sentimentSurface/SentimentSurface.story.tsx +17 -43
  395. package/src/snackbar/Snackbar.css +2 -2
  396. package/src/statusIcon/StatusIcon.test.tsx +0 -2
  397. package/src/statusIcon/StatusIcon.tsx +3 -2
  398. package/src/stepper/Stepper.css +2 -2
  399. package/src/styles/less/accordion.css +4 -4
  400. package/src/styles/less/button-groups.css +6 -6
  401. package/src/styles/less/buttons.css +1 -1
  402. package/src/styles/less/circles.css +1 -1
  403. package/src/styles/less/column-layout.css +4 -4
  404. package/src/styles/less/decision.css +4 -4
  405. package/src/styles/less/dropdowns.css +10 -10
  406. package/src/styles/less/droppable.css +8 -8
  407. package/src/styles/less/flex.css +14 -14
  408. package/src/styles/less/footer.css +3 -3
  409. package/src/styles/less/forms/bootstrap-forms.css +9 -9
  410. package/src/styles/less/forms/bootstrap-forms.less +1 -1
  411. package/src/styles/less/grid.css +19 -19
  412. package/src/styles/less/input-groups.css +12 -12
  413. package/src/styles/less/list-group.css +8 -8
  414. package/src/styles/less/modals.css +3 -3
  415. package/src/styles/less/navbar.css +62 -62
  416. package/src/styles/less/navbar.less +2 -2
  417. package/src/styles/less/navs.css +2 -2
  418. package/src/styles/less/neptune.bundle.less +1 -0
  419. package/src/styles/less/neptune.css +258 -258
  420. package/src/styles/less/panels.css +9 -9
  421. package/src/styles/less/popovers.css +13 -13
  422. package/src/styles/less/select.css +1 -1
  423. package/src/styles/less/sequences.css +6 -6
  424. package/src/styles/less/table.css +6 -6
  425. package/src/styles/less/table.less +1 -1
  426. package/src/styles/less/utilities.css +4 -4
  427. package/src/styles/less/wells.css +4 -4
  428. package/src/styles/props/custom-media.css +1 -11
  429. package/src/styles/variables/legacy-variables.less +4 -47
  430. package/src/table/Table.css +1 -1
  431. package/src/table/Table.story.tsx +1 -1
  432. package/src/table/Table.tsx +6 -5
  433. package/src/tabs/Tabs.css +2 -2
  434. package/src/typeahead/Typeahead.css +1 -1
  435. package/build/common/hooks/useContainerSize.js +0 -30
  436. package/build/common/hooks/useContainerSize.js.map +0 -1
  437. package/build/common/hooks/useContainerSize.mjs +0 -28
  438. package/build/common/hooks/useContainerSize.mjs.map +0 -1
  439. package/build/common/propsValues/breakpoint.js +0 -12
  440. package/build/common/propsValues/breakpoint.js.map +0 -1
  441. package/build/common/propsValues/breakpoint.mjs +0 -12
  442. package/build/common/propsValues/breakpoint.mjs.map +0 -1
  443. package/build/prompt/CriticalBanner/CriticalBanner.js +0 -142
  444. package/build/prompt/CriticalBanner/CriticalBanner.js.map +0 -1
  445. package/build/prompt/CriticalBanner/CriticalBanner.mjs +0 -140
  446. package/build/prompt/CriticalBanner/CriticalBanner.mjs.map +0 -1
  447. package/build/prompt/CriticalBanner/helpers.js +0 -29
  448. package/build/prompt/CriticalBanner/helpers.js.map +0 -1
  449. package/build/prompt/CriticalBanner/helpers.mjs +0 -26
  450. package/build/prompt/CriticalBanner/helpers.mjs.map +0 -1
  451. package/build/prompt/common/Expander/Expander.js +0 -35
  452. package/build/prompt/common/Expander/Expander.js.map +0 -1
  453. package/build/prompt/common/Expander/Expander.messages.js +0 -17
  454. package/build/prompt/common/Expander/Expander.messages.js.map +0 -1
  455. package/build/prompt/common/Expander/Expander.messages.mjs +0 -13
  456. package/build/prompt/common/Expander/Expander.messages.mjs.map +0 -1
  457. package/build/prompt/common/Expander/Expander.mjs +0 -33
  458. package/build/prompt/common/Expander/Expander.mjs.map +0 -1
  459. package/build/prompt/helpers/promptMedia.js +0 -52
  460. package/build/prompt/helpers/promptMedia.js.map +0 -1
  461. package/build/prompt/helpers/promptMedia.mjs +0 -50
  462. package/build/prompt/helpers/promptMedia.mjs.map +0 -1
  463. package/build/styles/prompt/CriticalBanner/CriticalBanner.css +0 -134
  464. package/build/styles/prompt/CriticalBanner/CriticalBanner.vars.css +0 -0
  465. package/build/styles/prompt/common/Expander/Expander.css +0 -8
  466. package/build/types/common/hooks/useContainerSize.d.ts +0 -14
  467. package/build/types/common/hooks/useContainerSize.d.ts.map +0 -1
  468. package/build/types/common/propsValues/breakpoint.d.ts +0 -9
  469. package/build/types/common/propsValues/breakpoint.d.ts.map +0 -1
  470. package/build/types/prompt/CriticalBanner/CriticalBanner.d.ts +0 -39
  471. package/build/types/prompt/CriticalBanner/CriticalBanner.d.ts.map +0 -1
  472. package/build/types/prompt/CriticalBanner/helpers.d.ts +0 -18
  473. package/build/types/prompt/CriticalBanner/helpers.d.ts.map +0 -1
  474. package/build/types/prompt/CriticalBanner/index.d.ts +0 -3
  475. package/build/types/prompt/CriticalBanner/index.d.ts.map +0 -1
  476. package/build/types/prompt/common/Expander/Expander.d.ts +0 -20
  477. package/build/types/prompt/common/Expander/Expander.d.ts.map +0 -1
  478. package/build/types/prompt/common/Expander/Expander.messages.d.ts +0 -14
  479. package/build/types/prompt/common/Expander/Expander.messages.d.ts.map +0 -1
  480. package/build/types/prompt/helpers/promptMedia.d.ts +0 -22
  481. package/build/types/prompt/helpers/promptMedia.d.ts.map +0 -1
  482. package/src/common/hooks/useContainerSize.test.tsx +0 -121
  483. package/src/common/hooks/useContainerSize.ts +0 -32
  484. package/src/common/propsValues/breakpoint.ts +0 -8
  485. package/src/prompt/CriticalBanner/CriticalBanner.accessibility.docs.mdx +0 -113
  486. package/src/prompt/CriticalBanner/CriticalBanner.css +0 -134
  487. package/src/prompt/CriticalBanner/CriticalBanner.less +0 -155
  488. package/src/prompt/CriticalBanner/CriticalBanner.story.tsx +0 -635
  489. package/src/prompt/CriticalBanner/CriticalBanner.test.story.tsx +0 -422
  490. package/src/prompt/CriticalBanner/CriticalBanner.tsx +0 -178
  491. package/src/prompt/CriticalBanner/CriticalBanner.vars.css +0 -0
  492. package/src/prompt/CriticalBanner/CriticalBanner.vars.less +0 -6
  493. package/src/prompt/CriticalBanner/helpers.ts +0 -39
  494. package/src/prompt/CriticalBanner/index.ts +0 -2
  495. package/src/prompt/common/Expander/Expander.css +0 -8
  496. package/src/prompt/common/Expander/Expander.less +0 -9
  497. package/src/prompt/common/Expander/Expander.messages.ts +0 -14
  498. package/src/prompt/common/Expander/Expander.test.tsx +0 -167
  499. package/src/prompt/common/Expander/Expander.tsx +0 -83
  500. package/src/prompt/helpers/promptMedia.tsx +0 -79
@@ -1,142 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
- var clsx = require('clsx');
5
- var Body = require('../../body/Body.js');
6
- var Button_resolver = require('../../button/Button.resolver.js');
7
- require('../../common/theme.js');
8
- require('../../common/direction.js');
9
- require('../../common/propsValues/control.js');
10
- var breakpoint = require('../../common/propsValues/breakpoint.js');
11
- require('../../common/propsValues/size.js');
12
- var typography = require('../../common/propsValues/typography.js');
13
- require('../../common/propsValues/width.js');
14
- require('../../common/propsValues/type.js');
15
- require('../../common/propsValues/dateMode.js');
16
- require('../../common/propsValues/monthFormat.js');
17
- require('../../common/propsValues/position.js');
18
- require('../../common/propsValues/layouts.js');
19
- require('../../common/propsValues/status.js');
20
- require('../../common/propsValues/sentiment.js');
21
- require('../../common/propsValues/profileType.js');
22
- require('../../common/propsValues/variant.js');
23
- require('../../common/propsValues/scroll.js');
24
- require('../../common/propsValues/markdownNodeType.js');
25
- require('../../common/fileType.js');
26
- require('@transferwise/formatting');
27
- require('@transferwise/icons');
28
- require('react-intl');
29
- require('../../common/closeButton/CloseButton.messages.js');
30
- var jsxRuntime = require('react/jsx-runtime');
31
- var LiveRegion = require('../../common/liveRegion/LiveRegion.js');
32
- var PrimitivePrompt = require('../PrimitivePrompt/PrimitivePrompt.js');
33
- var promptMedia = require('../helpers/promptMedia.js');
34
- var Expander = require('../common/Expander/Expander.js');
35
- var helpers = require('./helpers.js');
36
- var useContainerSize = require('../../common/hooks/useContainerSize.js');
37
-
38
- const CriticalBanner = ({
39
- sentiment = 'negative',
40
- title,
41
- description,
42
- media = {},
43
- action,
44
- actionSecondary,
45
- expanded: expandedProp,
46
- onToggle,
47
- id,
48
- className,
49
- 'data-testid': testId
50
- }) => {
51
- const [containerRef, isDesktop] = useContainerSize.useContainerSize(breakpoint.Breakpoint.MEDIUM);
52
- const [internalExpanded, setInternalExpanded] = React.useState(isDesktop ? true : onToggle && expandedProp !== undefined ? expandedProp : true);
53
- const resolvedExpanded = isDesktop ? true : expandedProp ?? internalExpanded;
54
- const handleToggle = onToggle ?? (() => setInternalExpanded(!internalExpanded));
55
- const hasActions = action ?? actionSecondary;
56
- const mediaId = React.useId();
57
- const titleId = React.useId();
58
- const descId = React.useId();
59
- const ariaLabelledByIds = [media['aria-hidden'] ? undefined : mediaId, !title ? undefined : titleId].filter(Boolean).join(' ');
60
- return /*#__PURE__*/jsxRuntime.jsx(LiveRegion.LiveRegion, {
61
- "aria-live": "assertive",
62
- announceOnChange: helpers.buildAnnouncementString({
63
- title,
64
- description,
65
- expanded: resolvedExpanded,
66
- actionLabel: action?.label,
67
- actionSecondaryLabel: actionSecondary?.label
68
- }),
69
- children: /*#__PURE__*/jsxRuntime.jsxs(PrimitivePrompt.PrimitivePrompt, {
70
- ref: containerRef,
71
- id: id,
72
- sentiment: sentiment,
73
- emphasis: sentiment === 'neutral' ? 'base' : 'elevated',
74
- "data-testid": testId,
75
- className: clsx.clsx('wds-critical-banner', {
76
- 'wds-critical-banner--collapsed': !resolvedExpanded,
77
- 'wds-critical-banner--with-two-actions': !!actionSecondary
78
- }, className),
79
- media: promptMedia.renderPromptMedia({
80
- media,
81
- sentiment,
82
- mediaId,
83
- imgClassName: 'wds-critical-banner--media-image'
84
- }),
85
- actions: hasActions ? /*#__PURE__*/jsxRuntime.jsxs("div", {
86
- "aria-hidden": !resolvedExpanded ? true : undefined,
87
- style: {
88
- display: 'contents'
89
- },
90
- children: [actionSecondary &&
91
- /*#__PURE__*/
92
- // @ts-expect-error onClick type mismatch
93
- jsxRuntime.jsx(Button_resolver.default, {
94
- v2: true,
95
- size: "md",
96
- priority: "secondary",
97
- href: actionSecondary.href,
98
- tabIndex: resolvedExpanded ? undefined : -1,
99
- onClick: actionSecondary?.onClick,
100
- children: actionSecondary.label
101
- }), action &&
102
- /*#__PURE__*/
103
- // @ts-expect-error onClick type mismatch
104
- jsxRuntime.jsx(Button_resolver.default, {
105
- v2: true,
106
- size: "md",
107
- priority: "primary",
108
- href: action.href,
109
- tabIndex: resolvedExpanded ? undefined : -1,
110
- onClick: action.onClick,
111
- children: action.label
112
- })]
113
- }) : undefined,
114
- role: "region",
115
- "aria-labelledby": ariaLabelledByIds,
116
- "aria-describedby": descId,
117
- children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
118
- className: "wds-critical-banner__text-wrapper",
119
- children: [title && /*#__PURE__*/jsxRuntime.jsx(Body.default, {
120
- id: titleId,
121
- type: typography.Typography.BODY_LARGE_BOLD,
122
- className: "wds-critical-banner__content wds-critical-banner__title",
123
- children: title
124
- }), description && /*#__PURE__*/jsxRuntime.jsx(Body.default, {
125
- id: descId,
126
- className: clsx.clsx('wds-critical-banner__content', 'wds-critical-banner__description', {
127
- 'wds-critical-banner__description--with-title': !!title
128
- }),
129
- children: description
130
- })]
131
- }), /*#__PURE__*/jsxRuntime.jsx(Expander.ExpanderToggle, {
132
- expanded: resolvedExpanded,
133
- size: 24,
134
- className: "wds-critical-banner__toggle",
135
- onToggle: handleToggle
136
- })]
137
- })
138
- });
139
- };
140
-
141
- exports.CriticalBanner = CriticalBanner;
142
- //# sourceMappingURL=CriticalBanner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CriticalBanner.js","sources":["../../../src/prompt/CriticalBanner/CriticalBanner.tsx"],"sourcesContent":["import { ReactNode, useEffect, useId, useState } from 'react';\nimport { clsx } from 'clsx';\n\nimport Body from '../../body';\nimport Button from '../../button';\nimport { Breakpoint, LiveRegion, Typography } from '../../common';\nimport { ButtonProps } from '../../button/Button.types';\nimport { PrimitivePrompt, PrimitivePromptProps } from '../PrimitivePrompt';\n\nimport { renderPromptMedia, PromptMedia } from '../helpers/promptMedia';\nimport { ExpanderToggle } from '../common/Expander/Expander';\nimport { buildAnnouncementString } from './helpers';\nimport { useContainerSize } from '../../common/hooks/useContainerSize';\n\nexport type CriticalBannerProps = {\n title?: ReactNode;\n description: ReactNode;\n media?: PromptMedia;\n action?: Pick<ButtonProps, 'onClick' | 'href' | 'target'> & {\n label: ButtonProps['children'];\n };\n actionSecondary?: Pick<ButtonProps, 'onClick' | 'href' | 'target'> & {\n label: ButtonProps['children'];\n };\n sentiment?: Exclude<PrimitivePromptProps['sentiment'], 'proposition'>;\n /**\n * Controls whether the description and actions are visible, as a controlled component.\n * When collapsed with a title, only the title is shown.\n * When collapsed without a title, the description is trimmed to 2 lines.\n *\n * Note: On desktop (container width >= 768px), the banner is always expanded\n * regardless of this prop value.\n */\n expanded?: boolean;\n /**\n * Called when the user clicks the chevron toggle.\n * If not provided, the component will manage expanded state internally.\n */\n onToggle?: () => void;\n} & Pick<PrimitivePromptProps, 'id' | 'className' | 'data-testid'>;\n\n/**\n * A full-width, non-dismissible banner for critical messages such as account blocks or\n * time-sensitive actions that require immediate user attention.\n\n * @see {@link https://wise.design/components/critical-banner Design Spec}\n */\nexport const CriticalBanner = ({\n sentiment = 'negative',\n title,\n description,\n media = {},\n action,\n actionSecondary,\n expanded: expandedProp,\n onToggle,\n id,\n className,\n 'data-testid': testId,\n}: CriticalBannerProps) => {\n const [containerRef, isDesktop] = useContainerSize(Breakpoint.MEDIUM);\n const [internalExpanded, setInternalExpanded] = useState(\n isDesktop ? true : onToggle && expandedProp !== undefined ? expandedProp : true,\n );\n const resolvedExpanded = isDesktop ? true : (expandedProp ?? internalExpanded);\n const handleToggle = onToggle ?? (() => setInternalExpanded(!internalExpanded));\n const hasActions = action ?? actionSecondary;\n const mediaId = useId();\n const titleId = useId();\n const descId = useId();\n\n const ariaLabelledByIds = [\n media['aria-hidden'] ? undefined : mediaId,\n !title ? undefined : titleId,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <LiveRegion\n aria-live=\"assertive\"\n announceOnChange={buildAnnouncementString({\n title,\n description,\n expanded: resolvedExpanded,\n actionLabel: action?.label,\n actionSecondaryLabel: actionSecondary?.label,\n })}\n >\n <PrimitivePrompt\n ref={containerRef}\n id={id}\n sentiment={sentiment}\n emphasis={sentiment === 'neutral' ? 'base' : 'elevated'}\n data-testid={testId}\n className={clsx(\n 'wds-critical-banner',\n {\n 'wds-critical-banner--collapsed': !resolvedExpanded,\n 'wds-critical-banner--with-two-actions': !!actionSecondary,\n },\n className,\n )}\n media={renderPromptMedia({\n media,\n sentiment,\n mediaId,\n imgClassName: 'wds-critical-banner--media-image',\n })}\n actions={\n hasActions ? (\n <div aria-hidden={!resolvedExpanded ? true : undefined} style={{ display: 'contents' }}>\n {actionSecondary && (\n // @ts-expect-error onClick type mismatch\n <Button\n v2\n size=\"md\"\n priority=\"secondary\"\n href={actionSecondary.href}\n tabIndex={resolvedExpanded ? undefined : -1}\n onClick={actionSecondary?.onClick}\n >\n {actionSecondary.label}\n </Button>\n )}\n {action && (\n // @ts-expect-error onClick type mismatch\n <Button\n v2\n size=\"md\"\n priority=\"primary\"\n href={action.href}\n tabIndex={resolvedExpanded ? undefined : -1}\n onClick={action.onClick}\n >\n {action.label}\n </Button>\n )}\n </div>\n ) : undefined\n }\n role=\"region\"\n aria-labelledby={ariaLabelledByIds}\n aria-describedby={descId}\n >\n <div className=\"wds-critical-banner__text-wrapper\">\n {title && (\n <Body\n id={titleId}\n type={Typography.BODY_LARGE_BOLD}\n className=\"wds-critical-banner__content wds-critical-banner__title\"\n >\n {title}\n </Body>\n )}\n {description && (\n <Body\n id={descId}\n className={clsx('wds-critical-banner__content', 'wds-critical-banner__description', {\n 'wds-critical-banner__description--with-title': !!title,\n })}\n >\n {description}\n </Body>\n )}\n </div>\n <ExpanderToggle\n expanded={resolvedExpanded}\n size={24}\n className=\"wds-critical-banner__toggle\"\n onToggle={handleToggle}\n />\n </PrimitivePrompt>\n </LiveRegion>\n );\n};\n\nexport default CriticalBanner;\n"],"names":["CriticalBanner","sentiment","title","description","media","action","actionSecondary","expanded","expandedProp","onToggle","id","className","testId","containerRef","isDesktop","useContainerSize","Breakpoint","MEDIUM","internalExpanded","setInternalExpanded","useState","undefined","resolvedExpanded","handleToggle","hasActions","mediaId","useId","titleId","descId","ariaLabelledByIds","filter","Boolean","join","_jsx","LiveRegion","announceOnChange","buildAnnouncementString","actionLabel","label","actionSecondaryLabel","children","_jsxs","PrimitivePrompt","ref","emphasis","clsx","renderPromptMedia","imgClassName","actions","style","display","Button","v2","size","priority","href","tabIndex","onClick","role","Body","type","Typography","BODY_LARGE_BOLD","ExpanderToggle"],"mappings":"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"}
@@ -1,140 +0,0 @@
1
- import { useState, useId } from 'react';
2
- import { clsx } from 'clsx';
3
- import Body from '../../body/Body.mjs';
4
- import Button from '../../button/Button.resolver.mjs';
5
- import '../../common/theme.mjs';
6
- import '../../common/direction.mjs';
7
- import '../../common/propsValues/control.mjs';
8
- import { Breakpoint } from '../../common/propsValues/breakpoint.mjs';
9
- import '../../common/propsValues/size.mjs';
10
- import { Typography } from '../../common/propsValues/typography.mjs';
11
- import '../../common/propsValues/width.mjs';
12
- import '../../common/propsValues/type.mjs';
13
- import '../../common/propsValues/dateMode.mjs';
14
- import '../../common/propsValues/monthFormat.mjs';
15
- import '../../common/propsValues/position.mjs';
16
- import '../../common/propsValues/layouts.mjs';
17
- import '../../common/propsValues/status.mjs';
18
- import '../../common/propsValues/sentiment.mjs';
19
- import '../../common/propsValues/profileType.mjs';
20
- import '../../common/propsValues/variant.mjs';
21
- import '../../common/propsValues/scroll.mjs';
22
- import '../../common/propsValues/markdownNodeType.mjs';
23
- import '../../common/fileType.mjs';
24
- import '@transferwise/formatting';
25
- import '@transferwise/icons';
26
- import 'react-intl';
27
- import '../../common/closeButton/CloseButton.messages.mjs';
28
- import { jsx, jsxs } from 'react/jsx-runtime';
29
- import { LiveRegion } from '../../common/liveRegion/LiveRegion.mjs';
30
- import { PrimitivePrompt } from '../PrimitivePrompt/PrimitivePrompt.mjs';
31
- import { renderPromptMedia } from '../helpers/promptMedia.mjs';
32
- import { ExpanderToggle } from '../common/Expander/Expander.mjs';
33
- import { buildAnnouncementString } from './helpers.mjs';
34
- import { useContainerSize } from '../../common/hooks/useContainerSize.mjs';
35
-
36
- const CriticalBanner = ({
37
- sentiment = 'negative',
38
- title,
39
- description,
40
- media = {},
41
- action,
42
- actionSecondary,
43
- expanded: expandedProp,
44
- onToggle,
45
- id,
46
- className,
47
- 'data-testid': testId
48
- }) => {
49
- const [containerRef, isDesktop] = useContainerSize(Breakpoint.MEDIUM);
50
- const [internalExpanded, setInternalExpanded] = useState(isDesktop ? true : onToggle && expandedProp !== undefined ? expandedProp : true);
51
- const resolvedExpanded = isDesktop ? true : expandedProp ?? internalExpanded;
52
- const handleToggle = onToggle ?? (() => setInternalExpanded(!internalExpanded));
53
- const hasActions = action ?? actionSecondary;
54
- const mediaId = useId();
55
- const titleId = useId();
56
- const descId = useId();
57
- const ariaLabelledByIds = [media['aria-hidden'] ? undefined : mediaId, !title ? undefined : titleId].filter(Boolean).join(' ');
58
- return /*#__PURE__*/jsx(LiveRegion, {
59
- "aria-live": "assertive",
60
- announceOnChange: buildAnnouncementString({
61
- title,
62
- description,
63
- expanded: resolvedExpanded,
64
- actionLabel: action?.label,
65
- actionSecondaryLabel: actionSecondary?.label
66
- }),
67
- children: /*#__PURE__*/jsxs(PrimitivePrompt, {
68
- ref: containerRef,
69
- id: id,
70
- sentiment: sentiment,
71
- emphasis: sentiment === 'neutral' ? 'base' : 'elevated',
72
- "data-testid": testId,
73
- className: clsx('wds-critical-banner', {
74
- 'wds-critical-banner--collapsed': !resolvedExpanded,
75
- 'wds-critical-banner--with-two-actions': !!actionSecondary
76
- }, className),
77
- media: renderPromptMedia({
78
- media,
79
- sentiment,
80
- mediaId,
81
- imgClassName: 'wds-critical-banner--media-image'
82
- }),
83
- actions: hasActions ? /*#__PURE__*/jsxs("div", {
84
- "aria-hidden": !resolvedExpanded ? true : undefined,
85
- style: {
86
- display: 'contents'
87
- },
88
- children: [actionSecondary &&
89
- /*#__PURE__*/
90
- // @ts-expect-error onClick type mismatch
91
- jsx(Button, {
92
- v2: true,
93
- size: "md",
94
- priority: "secondary",
95
- href: actionSecondary.href,
96
- tabIndex: resolvedExpanded ? undefined : -1,
97
- onClick: actionSecondary?.onClick,
98
- children: actionSecondary.label
99
- }), action &&
100
- /*#__PURE__*/
101
- // @ts-expect-error onClick type mismatch
102
- jsx(Button, {
103
- v2: true,
104
- size: "md",
105
- priority: "primary",
106
- href: action.href,
107
- tabIndex: resolvedExpanded ? undefined : -1,
108
- onClick: action.onClick,
109
- children: action.label
110
- })]
111
- }) : undefined,
112
- role: "region",
113
- "aria-labelledby": ariaLabelledByIds,
114
- "aria-describedby": descId,
115
- children: [/*#__PURE__*/jsxs("div", {
116
- className: "wds-critical-banner__text-wrapper",
117
- children: [title && /*#__PURE__*/jsx(Body, {
118
- id: titleId,
119
- type: Typography.BODY_LARGE_BOLD,
120
- className: "wds-critical-banner__content wds-critical-banner__title",
121
- children: title
122
- }), description && /*#__PURE__*/jsx(Body, {
123
- id: descId,
124
- className: clsx('wds-critical-banner__content', 'wds-critical-banner__description', {
125
- 'wds-critical-banner__description--with-title': !!title
126
- }),
127
- children: description
128
- })]
129
- }), /*#__PURE__*/jsx(ExpanderToggle, {
130
- expanded: resolvedExpanded,
131
- size: 24,
132
- className: "wds-critical-banner__toggle",
133
- onToggle: handleToggle
134
- })]
135
- })
136
- });
137
- };
138
-
139
- export { CriticalBanner };
140
- //# sourceMappingURL=CriticalBanner.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CriticalBanner.mjs","sources":["../../../src/prompt/CriticalBanner/CriticalBanner.tsx"],"sourcesContent":["import { ReactNode, useEffect, useId, useState } from 'react';\nimport { clsx } from 'clsx';\n\nimport Body from '../../body';\nimport Button from '../../button';\nimport { Breakpoint, LiveRegion, Typography } from '../../common';\nimport { ButtonProps } from '../../button/Button.types';\nimport { PrimitivePrompt, PrimitivePromptProps } from '../PrimitivePrompt';\n\nimport { renderPromptMedia, PromptMedia } from '../helpers/promptMedia';\nimport { ExpanderToggle } from '../common/Expander/Expander';\nimport { buildAnnouncementString } from './helpers';\nimport { useContainerSize } from '../../common/hooks/useContainerSize';\n\nexport type CriticalBannerProps = {\n title?: ReactNode;\n description: ReactNode;\n media?: PromptMedia;\n action?: Pick<ButtonProps, 'onClick' | 'href' | 'target'> & {\n label: ButtonProps['children'];\n };\n actionSecondary?: Pick<ButtonProps, 'onClick' | 'href' | 'target'> & {\n label: ButtonProps['children'];\n };\n sentiment?: Exclude<PrimitivePromptProps['sentiment'], 'proposition'>;\n /**\n * Controls whether the description and actions are visible, as a controlled component.\n * When collapsed with a title, only the title is shown.\n * When collapsed without a title, the description is trimmed to 2 lines.\n *\n * Note: On desktop (container width >= 768px), the banner is always expanded\n * regardless of this prop value.\n */\n expanded?: boolean;\n /**\n * Called when the user clicks the chevron toggle.\n * If not provided, the component will manage expanded state internally.\n */\n onToggle?: () => void;\n} & Pick<PrimitivePromptProps, 'id' | 'className' | 'data-testid'>;\n\n/**\n * A full-width, non-dismissible banner for critical messages such as account blocks or\n * time-sensitive actions that require immediate user attention.\n\n * @see {@link https://wise.design/components/critical-banner Design Spec}\n */\nexport const CriticalBanner = ({\n sentiment = 'negative',\n title,\n description,\n media = {},\n action,\n actionSecondary,\n expanded: expandedProp,\n onToggle,\n id,\n className,\n 'data-testid': testId,\n}: CriticalBannerProps) => {\n const [containerRef, isDesktop] = useContainerSize(Breakpoint.MEDIUM);\n const [internalExpanded, setInternalExpanded] = useState(\n isDesktop ? true : onToggle && expandedProp !== undefined ? expandedProp : true,\n );\n const resolvedExpanded = isDesktop ? true : (expandedProp ?? internalExpanded);\n const handleToggle = onToggle ?? (() => setInternalExpanded(!internalExpanded));\n const hasActions = action ?? actionSecondary;\n const mediaId = useId();\n const titleId = useId();\n const descId = useId();\n\n const ariaLabelledByIds = [\n media['aria-hidden'] ? undefined : mediaId,\n !title ? undefined : titleId,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <LiveRegion\n aria-live=\"assertive\"\n announceOnChange={buildAnnouncementString({\n title,\n description,\n expanded: resolvedExpanded,\n actionLabel: action?.label,\n actionSecondaryLabel: actionSecondary?.label,\n })}\n >\n <PrimitivePrompt\n ref={containerRef}\n id={id}\n sentiment={sentiment}\n emphasis={sentiment === 'neutral' ? 'base' : 'elevated'}\n data-testid={testId}\n className={clsx(\n 'wds-critical-banner',\n {\n 'wds-critical-banner--collapsed': !resolvedExpanded,\n 'wds-critical-banner--with-two-actions': !!actionSecondary,\n },\n className,\n )}\n media={renderPromptMedia({\n media,\n sentiment,\n mediaId,\n imgClassName: 'wds-critical-banner--media-image',\n })}\n actions={\n hasActions ? (\n <div aria-hidden={!resolvedExpanded ? true : undefined} style={{ display: 'contents' }}>\n {actionSecondary && (\n // @ts-expect-error onClick type mismatch\n <Button\n v2\n size=\"md\"\n priority=\"secondary\"\n href={actionSecondary.href}\n tabIndex={resolvedExpanded ? undefined : -1}\n onClick={actionSecondary?.onClick}\n >\n {actionSecondary.label}\n </Button>\n )}\n {action && (\n // @ts-expect-error onClick type mismatch\n <Button\n v2\n size=\"md\"\n priority=\"primary\"\n href={action.href}\n tabIndex={resolvedExpanded ? undefined : -1}\n onClick={action.onClick}\n >\n {action.label}\n </Button>\n )}\n </div>\n ) : undefined\n }\n role=\"region\"\n aria-labelledby={ariaLabelledByIds}\n aria-describedby={descId}\n >\n <div className=\"wds-critical-banner__text-wrapper\">\n {title && (\n <Body\n id={titleId}\n type={Typography.BODY_LARGE_BOLD}\n className=\"wds-critical-banner__content wds-critical-banner__title\"\n >\n {title}\n </Body>\n )}\n {description && (\n <Body\n id={descId}\n className={clsx('wds-critical-banner__content', 'wds-critical-banner__description', {\n 'wds-critical-banner__description--with-title': !!title,\n })}\n >\n {description}\n </Body>\n )}\n </div>\n <ExpanderToggle\n expanded={resolvedExpanded}\n size={24}\n className=\"wds-critical-banner__toggle\"\n onToggle={handleToggle}\n />\n </PrimitivePrompt>\n </LiveRegion>\n );\n};\n\nexport default CriticalBanner;\n"],"names":["CriticalBanner","sentiment","title","description","media","action","actionSecondary","expanded","expandedProp","onToggle","id","className","testId","containerRef","isDesktop","useContainerSize","Breakpoint","MEDIUM","internalExpanded","setInternalExpanded","useState","undefined","resolvedExpanded","handleToggle","hasActions","mediaId","useId","titleId","descId","ariaLabelledByIds","filter","Boolean","join","_jsx","LiveRegion","announceOnChange","buildAnnouncementString","actionLabel","label","actionSecondaryLabel","children","_jsxs","PrimitivePrompt","ref","emphasis","clsx","renderPromptMedia","imgClassName","actions","style","display","Button","v2","size","priority","href","tabIndex","onClick","role","Body","type","Typography","BODY_LARGE_BOLD","ExpanderToggle"],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Helper to extract string from ReactNode for announcements.
5
- * Complex ReactNodes (JSX elements) return empty string.
6
- */
7
- const getStringValue = node => {
8
- if (typeof node === 'string' || typeof node === 'number') {
9
- return String(node);
10
- }
11
- return '';
12
- };
13
- /**
14
- * Builds the announcement string from visible content only.
15
- * Content visibility depends on expanded state and presence of title.
16
- */
17
- const buildAnnouncementString = ({
18
- title,
19
- description,
20
- expanded,
21
- actionLabel,
22
- actionSecondaryLabel
23
- }) => {
24
- return [title ? getStringValue(title) : undefined, description && (expanded || !title) ? getStringValue(description) : undefined, expanded && actionLabel ? getStringValue(actionLabel) : undefined, expanded && actionSecondaryLabel ? getStringValue(actionSecondaryLabel) : undefined].filter(Boolean).join('|');
25
- };
26
-
27
- exports.buildAnnouncementString = buildAnnouncementString;
28
- exports.getStringValue = getStringValue;
29
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../src/prompt/CriticalBanner/helpers.ts"],"sourcesContent":["import { ReactNode } from 'react';\n\n/**\n * Helper to extract string from ReactNode for announcements.\n * Complex ReactNodes (JSX elements) return empty string.\n */\nexport const getStringValue = (node: ReactNode): string => {\n if (typeof node === 'string' || typeof node === 'number') {\n return String(node);\n }\n return '';\n};\n\n/**\n * Builds the announcement string from visible content only.\n * Content visibility depends on expanded state and presence of title.\n */\nexport const buildAnnouncementString = ({\n title,\n description,\n expanded,\n actionLabel,\n actionSecondaryLabel,\n}: {\n title?: ReactNode;\n description?: ReactNode;\n expanded: boolean;\n actionLabel?: ReactNode;\n actionSecondaryLabel?: ReactNode;\n}): string => {\n return [\n title ? getStringValue(title) : undefined,\n description && (expanded || !title) ? getStringValue(description) : undefined,\n expanded && actionLabel ? getStringValue(actionLabel) : undefined,\n expanded && actionSecondaryLabel ? getStringValue(actionSecondaryLabel) : undefined,\n ]\n .filter(Boolean)\n .join('|');\n};\n"],"names":["getStringValue","node","String","buildAnnouncementString","title","description","expanded","actionLabel","actionSecondaryLabel","undefined","filter","Boolean","join"],"mappings":";;AAEA;;;AAGG;AACI,MAAMA,cAAc,GAAIC,IAAe,IAAY;EACxD,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IACxD,OAAOC,MAAM,CAACD,IAAI,CAAC;AACrB,EAAA;AACA,EAAA,OAAO,EAAE;AACX;AAEA;;;AAGG;AACI,MAAME,uBAAuB,GAAGA,CAAC;EACtCC,KAAK;EACLC,WAAW;EACXC,QAAQ;EACRC,WAAW;AACXC,EAAAA;AAAoB,CAOrB,KAAY;EACX,OAAO,CACLJ,KAAK,GAAGJ,cAAc,CAACI,KAAK,CAAC,GAAGK,SAAS,EACzCJ,WAAW,KAAKC,QAAQ,IAAI,CAACF,KAAK,CAAC,GAAGJ,cAAc,CAACK,WAAW,CAAC,GAAGI,SAAS,EAC7EH,QAAQ,IAAIC,WAAW,GAAGP,cAAc,CAACO,WAAW,CAAC,GAAGE,SAAS,EACjEH,QAAQ,IAAIE,oBAAoB,GAAGR,cAAc,CAACQ,oBAAoB,CAAC,GAAGC,SAAS,CACpF,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;AACd;;;;;"}
@@ -1,26 +0,0 @@
1
- /**
2
- * Helper to extract string from ReactNode for announcements.
3
- * Complex ReactNodes (JSX elements) return empty string.
4
- */
5
- const getStringValue = node => {
6
- if (typeof node === 'string' || typeof node === 'number') {
7
- return String(node);
8
- }
9
- return '';
10
- };
11
- /**
12
- * Builds the announcement string from visible content only.
13
- * Content visibility depends on expanded state and presence of title.
14
- */
15
- const buildAnnouncementString = ({
16
- title,
17
- description,
18
- expanded,
19
- actionLabel,
20
- actionSecondaryLabel
21
- }) => {
22
- return [title ? getStringValue(title) : undefined, description && (expanded || !title) ? getStringValue(description) : undefined, expanded && actionLabel ? getStringValue(actionLabel) : undefined, expanded && actionSecondaryLabel ? getStringValue(actionSecondaryLabel) : undefined].filter(Boolean).join('|');
23
- };
24
-
25
- export { buildAnnouncementString, getStringValue };
26
- //# sourceMappingURL=helpers.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.mjs","sources":["../../../src/prompt/CriticalBanner/helpers.ts"],"sourcesContent":["import { ReactNode } from 'react';\n\n/**\n * Helper to extract string from ReactNode for announcements.\n * Complex ReactNodes (JSX elements) return empty string.\n */\nexport const getStringValue = (node: ReactNode): string => {\n if (typeof node === 'string' || typeof node === 'number') {\n return String(node);\n }\n return '';\n};\n\n/**\n * Builds the announcement string from visible content only.\n * Content visibility depends on expanded state and presence of title.\n */\nexport const buildAnnouncementString = ({\n title,\n description,\n expanded,\n actionLabel,\n actionSecondaryLabel,\n}: {\n title?: ReactNode;\n description?: ReactNode;\n expanded: boolean;\n actionLabel?: ReactNode;\n actionSecondaryLabel?: ReactNode;\n}): string => {\n return [\n title ? getStringValue(title) : undefined,\n description && (expanded || !title) ? getStringValue(description) : undefined,\n expanded && actionLabel ? getStringValue(actionLabel) : undefined,\n expanded && actionSecondaryLabel ? getStringValue(actionSecondaryLabel) : undefined,\n ]\n .filter(Boolean)\n .join('|');\n};\n"],"names":["getStringValue","node","String","buildAnnouncementString","title","description","expanded","actionLabel","actionSecondaryLabel","undefined","filter","Boolean","join"],"mappings":"AAEA;;;AAGG;AACI,MAAMA,cAAc,GAAIC,IAAe,IAAY;EACxD,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IACxD,OAAOC,MAAM,CAACD,IAAI,CAAC;AACrB,EAAA;AACA,EAAA,OAAO,EAAE;AACX;AAEA;;;AAGG;AACI,MAAME,uBAAuB,GAAGA,CAAC;EACtCC,KAAK;EACLC,WAAW;EACXC,QAAQ;EACRC,WAAW;AACXC,EAAAA;AAAoB,CAOrB,KAAY;EACX,OAAO,CACLJ,KAAK,GAAGJ,cAAc,CAACI,KAAK,CAAC,GAAGK,SAAS,EACzCJ,WAAW,KAAKC,QAAQ,IAAI,CAACF,KAAK,CAAC,GAAGJ,cAAc,CAACK,WAAW,CAAC,GAAGI,SAAS,EAC7EH,QAAQ,IAAIC,WAAW,GAAGP,cAAc,CAACO,WAAW,CAAC,GAAGE,SAAS,EACjEH,QAAQ,IAAIE,oBAAoB,GAAGR,cAAc,CAACQ,oBAAoB,CAAC,GAAGC,SAAS,CACpF,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;AACd;;;;"}
@@ -1,35 +0,0 @@
1
- 'use strict';
2
-
3
- require('react');
4
- var clsx = require('clsx');
5
- var icons = require('@transferwise/icons');
6
- var IconButton = require('../../../iconButton/IconButton.js');
7
- var reactIntl = require('react-intl');
8
- var Expander_messages = require('./Expander.messages.js');
9
- var jsxRuntime = require('react/jsx-runtime');
10
-
11
- // Reusable toggle button component
12
- const ExpanderToggle = ({
13
- expanded,
14
- onToggle,
15
- size = 24,
16
- className,
17
- 'data-testid': testId
18
- }) => {
19
- const intl = reactIntl.useIntl();
20
- return /*#__PURE__*/jsxRuntime.jsx(IconButton.default, {
21
- size: size,
22
- priority: "secondary",
23
- "aria-label": intl.formatMessage(expanded ? Expander_messages.default.collapseAriaLabel : Expander_messages.default.expandAriaLabel),
24
- "aria-expanded": expanded,
25
- className: clsx.clsx('wds-expander-toggle', {
26
- 'wds-expander-toggle--collapsed': !expanded
27
- }, className),
28
- "data-testid": testId,
29
- onClick: onToggle,
30
- children: /*#__PURE__*/jsxRuntime.jsx(icons.ChevronUp, {})
31
- });
32
- };
33
-
34
- exports.ExpanderToggle = ExpanderToggle;
35
- //# sourceMappingURL=Expander.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Expander.js","sources":["../../../../src/prompt/common/Expander/Expander.tsx"],"sourcesContent":["import { useState, useCallback } from 'react';\nimport { clsx } from 'clsx';\nimport { ChevronUp } from '@transferwise/icons';\nimport IconButton from '../../../iconButton';\nimport { useIntl } from 'react-intl';\nimport messages from './Expander.messages';\n\nexport type ExpanderState = {\n expanded: boolean;\n toggle: () => void;\n setExpanded: (expanded: boolean) => void;\n};\n\n// Hook for managing expander state\nexport function useExpanderState(initialExpanded = true): ExpanderState {\n const [expanded, setExpanded] = useState(initialExpanded);\n\n const toggle = useCallback(() => {\n setExpanded((prev) => !prev);\n }, []);\n\n return {\n expanded,\n toggle,\n setExpanded,\n };\n}\n\n// Helper for conditional rendering based on expanded state\nexport function shouldShowWhenExpanded({\n expanded,\n hasContent,\n alwaysShow = false,\n}: {\n expanded: boolean;\n hasContent: boolean;\n alwaysShow?: boolean;\n}): boolean {\n if (alwaysShow) {\n return hasContent;\n }\n\n return expanded && hasContent;\n}\n\nexport type ExpanderToggleProps = {\n expanded: boolean;\n onToggle?: () => void;\n size?: 16 | 24 | 32 | 40 | 48 | 56 | 72;\n className?: string;\n 'data-testid'?: string;\n};\n\n// Reusable toggle button component\nexport const ExpanderToggle = ({\n expanded,\n onToggle,\n size = 24,\n className,\n 'data-testid': testId,\n}: ExpanderToggleProps) => {\n const intl = useIntl();\n\n return (\n <IconButton\n size={size}\n priority=\"secondary\"\n aria-label={intl.formatMessage(\n expanded ? messages.collapseAriaLabel : messages.expandAriaLabel,\n )}\n aria-expanded={expanded}\n className={clsx(\n 'wds-expander-toggle',\n { 'wds-expander-toggle--collapsed': !expanded },\n className,\n )}\n data-testid={testId}\n onClick={onToggle}\n >\n <ChevronUp />\n </IconButton>\n );\n};\n"],"names":["ExpanderToggle","expanded","onToggle","size","className","testId","intl","useIntl","_jsx","IconButton","priority","formatMessage","messages","collapseAriaLabel","expandAriaLabel","clsx","onClick","children","ChevronUp"],"mappings":";;;;;;;;;;AAqDA;AACO,MAAMA,cAAc,GAAGA,CAAC;EAC7BC,QAAQ;EACRC,QAAQ;AACRC,EAAAA,IAAI,GAAG,EAAE;EACTC,SAAS;AACT,EAAA,aAAa,EAAEC;AAAM,CACD,KAAI;AACxB,EAAA,MAAMC,IAAI,GAAGC,iBAAO,EAAE;EAEtB,oBACEC,cAAA,CAACC,kBAAU,EAAA;AACTN,IAAAA,IAAI,EAAEA,IAAK;AACXO,IAAAA,QAAQ,EAAC,WAAW;AACpB,IAAA,YAAA,EAAYJ,IAAI,CAACK,aAAa,CAC5BV,QAAQ,GAAGW,yBAAQ,CAACC,iBAAiB,GAAGD,yBAAQ,CAACE,eAAe,CAChE;AACF,IAAA,eAAA,EAAeb,QAAS;AACxBG,IAAAA,SAAS,EAAEW,SAAI,CACb,qBAAqB,EACrB;AAAE,MAAA,gCAAgC,EAAE,CAACd;KAAU,EAC/CG,SAAS,CACT;AACF,IAAA,aAAA,EAAaC,MAAO;AACpBW,IAAAA,OAAO,EAAEd,QAAS;AAAAe,IAAAA,QAAA,eAElBT,cAAA,CAACU,eAAS,EAAA,EAAA;AACZ,GAAY,CAAC;AAEjB;;;;"}
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var reactIntl = require('react-intl');
6
-
7
- var messages = reactIntl.defineMessages({
8
- expandAriaLabel: {
9
- id: "neptune.Expander.expandAriaLabel"
10
- },
11
- collapseAriaLabel: {
12
- id: "neptune.Expander.collapseAriaLabel"
13
- }
14
- });
15
-
16
- exports.default = messages;
17
- //# sourceMappingURL=Expander.messages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Expander.messages.js","sources":["../../../../src/prompt/common/Expander/Expander.messages.ts"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nexport default defineMessages({\n expandAriaLabel: {\n id: 'neptune.Expander.expandAriaLabel',\n defaultMessage: 'Expand',\n description: 'Expand button for expander',\n },\n collapseAriaLabel: {\n id: 'neptune.Expander.collapseAriaLabel',\n defaultMessage: 'Collapse',\n description: 'Collapse button for expander',\n },\n});\n"],"names":["defineMessages","expandAriaLabel","id","collapseAriaLabel"],"mappings":";;;;;;AAEA,eAAeA,wBAAc,CAAC;AAC5BC,EAAAA,eAAe,EAAE;IACfC,EAAE,EAAA;GAGH;AACDC,EAAAA,iBAAiB,EAAE;IACjBD,EAAE,EAAA;AAGH;AACF,CAAA,CAAC;;;;"}
@@ -1,13 +0,0 @@
1
- import { defineMessages } from 'react-intl';
2
-
3
- var messages = defineMessages({
4
- expandAriaLabel: {
5
- id: "neptune.Expander.expandAriaLabel"
6
- },
7
- collapseAriaLabel: {
8
- id: "neptune.Expander.collapseAriaLabel"
9
- }
10
- });
11
-
12
- export { messages as default };
13
- //# sourceMappingURL=Expander.messages.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Expander.messages.mjs","sources":["../../../../src/prompt/common/Expander/Expander.messages.ts"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nexport default defineMessages({\n expandAriaLabel: {\n id: 'neptune.Expander.expandAriaLabel',\n defaultMessage: 'Expand',\n description: 'Expand button for expander',\n },\n collapseAriaLabel: {\n id: 'neptune.Expander.collapseAriaLabel',\n defaultMessage: 'Collapse',\n description: 'Collapse button for expander',\n },\n});\n"],"names":["defineMessages","expandAriaLabel","id","collapseAriaLabel"],"mappings":";;AAEA,eAAeA,cAAc,CAAC;AAC5BC,EAAAA,eAAe,EAAE;IACfC,EAAE,EAAA;GAGH;AACDC,EAAAA,iBAAiB,EAAE;IACjBD,EAAE,EAAA;AAGH;AACF,CAAA,CAAC;;;;"}
@@ -1,33 +0,0 @@
1
- import 'react';
2
- import { clsx } from 'clsx';
3
- import { ChevronUp } from '@transferwise/icons';
4
- import IconButton from '../../../iconButton/IconButton.mjs';
5
- import { useIntl } from 'react-intl';
6
- import messages from './Expander.messages.mjs';
7
- import { jsx } from 'react/jsx-runtime';
8
-
9
- // Reusable toggle button component
10
- const ExpanderToggle = ({
11
- expanded,
12
- onToggle,
13
- size = 24,
14
- className,
15
- 'data-testid': testId
16
- }) => {
17
- const intl = useIntl();
18
- return /*#__PURE__*/jsx(IconButton, {
19
- size: size,
20
- priority: "secondary",
21
- "aria-label": intl.formatMessage(expanded ? messages.collapseAriaLabel : messages.expandAriaLabel),
22
- "aria-expanded": expanded,
23
- className: clsx('wds-expander-toggle', {
24
- 'wds-expander-toggle--collapsed': !expanded
25
- }, className),
26
- "data-testid": testId,
27
- onClick: onToggle,
28
- children: /*#__PURE__*/jsx(ChevronUp, {})
29
- });
30
- };
31
-
32
- export { ExpanderToggle };
33
- //# sourceMappingURL=Expander.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Expander.mjs","sources":["../../../../src/prompt/common/Expander/Expander.tsx"],"sourcesContent":["import { useState, useCallback } from 'react';\nimport { clsx } from 'clsx';\nimport { ChevronUp } from '@transferwise/icons';\nimport IconButton from '../../../iconButton';\nimport { useIntl } from 'react-intl';\nimport messages from './Expander.messages';\n\nexport type ExpanderState = {\n expanded: boolean;\n toggle: () => void;\n setExpanded: (expanded: boolean) => void;\n};\n\n// Hook for managing expander state\nexport function useExpanderState(initialExpanded = true): ExpanderState {\n const [expanded, setExpanded] = useState(initialExpanded);\n\n const toggle = useCallback(() => {\n setExpanded((prev) => !prev);\n }, []);\n\n return {\n expanded,\n toggle,\n setExpanded,\n };\n}\n\n// Helper for conditional rendering based on expanded state\nexport function shouldShowWhenExpanded({\n expanded,\n hasContent,\n alwaysShow = false,\n}: {\n expanded: boolean;\n hasContent: boolean;\n alwaysShow?: boolean;\n}): boolean {\n if (alwaysShow) {\n return hasContent;\n }\n\n return expanded && hasContent;\n}\n\nexport type ExpanderToggleProps = {\n expanded: boolean;\n onToggle?: () => void;\n size?: 16 | 24 | 32 | 40 | 48 | 56 | 72;\n className?: string;\n 'data-testid'?: string;\n};\n\n// Reusable toggle button component\nexport const ExpanderToggle = ({\n expanded,\n onToggle,\n size = 24,\n className,\n 'data-testid': testId,\n}: ExpanderToggleProps) => {\n const intl = useIntl();\n\n return (\n <IconButton\n size={size}\n priority=\"secondary\"\n aria-label={intl.formatMessage(\n expanded ? messages.collapseAriaLabel : messages.expandAriaLabel,\n )}\n aria-expanded={expanded}\n className={clsx(\n 'wds-expander-toggle',\n { 'wds-expander-toggle--collapsed': !expanded },\n className,\n )}\n data-testid={testId}\n onClick={onToggle}\n >\n <ChevronUp />\n </IconButton>\n );\n};\n"],"names":["ExpanderToggle","expanded","onToggle","size","className","testId","intl","useIntl","_jsx","IconButton","priority","formatMessage","messages","collapseAriaLabel","expandAriaLabel","clsx","onClick","children","ChevronUp"],"mappings":";;;;;;;;AAqDA;AACO,MAAMA,cAAc,GAAGA,CAAC;EAC7BC,QAAQ;EACRC,QAAQ;AACRC,EAAAA,IAAI,GAAG,EAAE;EACTC,SAAS;AACT,EAAA,aAAa,EAAEC;AAAM,CACD,KAAI;AACxB,EAAA,MAAMC,IAAI,GAAGC,OAAO,EAAE;EAEtB,oBACEC,GAAA,CAACC,UAAU,EAAA;AACTN,IAAAA,IAAI,EAAEA,IAAK;AACXO,IAAAA,QAAQ,EAAC,WAAW;AACpB,IAAA,YAAA,EAAYJ,IAAI,CAACK,aAAa,CAC5BV,QAAQ,GAAGW,QAAQ,CAACC,iBAAiB,GAAGD,QAAQ,CAACE,eAAe,CAChE;AACF,IAAA,eAAA,EAAeb,QAAS;AACxBG,IAAAA,SAAS,EAAEW,IAAI,CACb,qBAAqB,EACrB;AAAE,MAAA,gCAAgC,EAAE,CAACd;KAAU,EAC/CG,SAAS,CACT;AACF,IAAA,aAAA,EAAaC,MAAO;AACpBW,IAAAA,OAAO,EAAEd,QAAS;AAAAe,IAAAA,QAAA,eAElBT,GAAA,CAACU,SAAS,EAAA,EAAA;AACZ,GAAY,CAAC;AAEjB;;;;"}
@@ -1,52 +0,0 @@
1
- 'use strict';
2
-
3
- var icons = require('@transferwise/icons');
4
- var AvatarView = require('../../avatarView/AvatarView.js');
5
- var Image = require('../../image/Image.js');
6
- var StatusIcon = require('../../statusIcon/StatusIcon.js');
7
- var jsxRuntime = require('react/jsx-runtime');
8
-
9
- function renderPromptMedia({
10
- media,
11
- sentiment,
12
- mediaId,
13
- imgClassName
14
- }) {
15
- if (media?.imgSrc) {
16
- return /*#__PURE__*/jsxRuntime.jsx(Image.default, {
17
- id: mediaId,
18
- src: media.imgSrc,
19
- className: imgClassName,
20
- alt: media['aria-label'] ?? ''
21
- });
22
- }
23
- if (media?.avatar) {
24
- const badge = media.avatar.badge ? media.avatar.badge : sentiment === 'proposition' ? {} : {
25
- status: sentiment
26
- };
27
- return /*#__PURE__*/jsxRuntime.jsx(AvatarView.default, {
28
- ...media.avatar,
29
- badge: badge,
30
- "aria-label": media['aria-label'],
31
- "aria-hidden": media['aria-hidden'],
32
- id: mediaId,
33
- size: 48,
34
- children: media.avatar.asset
35
- });
36
- }
37
- return sentiment === 'proposition' ? /*#__PURE__*/jsxRuntime.jsx(AvatarView.default, {
38
- id: mediaId,
39
- size: 48,
40
- "aria-label": media['aria-label'],
41
- "aria-hidden": media['aria-hidden'],
42
- children: /*#__PURE__*/jsxRuntime.jsx(icons.GiftBox, {})
43
- }) : /*#__PURE__*/jsxRuntime.jsx(StatusIcon.default, {
44
- id: mediaId,
45
- size: 48,
46
- sentiment: sentiment,
47
- iconLabel: media['aria-hidden'] ? null : media['aria-label']
48
- });
49
- }
50
-
51
- exports.renderPromptMedia = renderPromptMedia;
52
- //# sourceMappingURL=promptMedia.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promptMedia.js","sources":["../../../src/prompt/helpers/promptMedia.tsx"],"sourcesContent":["import { ReactNode } from 'react';\nimport { GiftBox } from '@transferwise/icons';\n\nimport AvatarView, { AvatarViewProps } from '../../avatarView';\nimport Image from '../../image';\nimport StatusIcon from '../../statusIcon';\nimport { BadgeAssetsProps } from '../../badge';\nimport { PrimitivePromptProps } from '../PrimitivePrompt';\n\nexport type PromptMedia = {\n imgSrc?: string;\n avatar?: Pick<AvatarViewProps, 'imgSrc' | 'profileName' | 'profileType'> & {\n asset?: AvatarViewProps['children'];\n badge?: Pick<BadgeAssetsProps, 'flagCode'>;\n };\n 'aria-label'?: string;\n 'aria-hidden'?: boolean;\n};\n\ntype RenderPromptMediaOptions = {\n media: PromptMedia;\n sentiment: PrimitivePromptProps['sentiment'];\n mediaId: string;\n imgClassName: string;\n};\n\nexport function renderPromptMedia({\n media,\n sentiment,\n mediaId,\n imgClassName,\n}: RenderPromptMediaOptions): ReactNode {\n if (media?.imgSrc) {\n return (\n <Image\n id={mediaId}\n src={media.imgSrc}\n className={imgClassName}\n alt={media['aria-label'] ?? ''}\n />\n );\n }\n if (media?.avatar) {\n const badge = media.avatar.badge\n ? media.avatar.badge\n : sentiment === 'proposition'\n ? {}\n : { status: sentiment };\n return (\n <AvatarView\n {...media.avatar}\n badge={badge}\n aria-label={media['aria-label']}\n aria-hidden={media['aria-hidden']}\n id={mediaId}\n size={48}\n >\n {media.avatar.asset}\n </AvatarView>\n );\n }\n return sentiment === 'proposition' ? (\n <AvatarView\n id={mediaId}\n size={48}\n aria-label={media['aria-label']}\n aria-hidden={media['aria-hidden']}\n >\n <GiftBox />\n </AvatarView>\n ) : (\n <StatusIcon\n id={mediaId}\n size={48}\n sentiment={sentiment}\n iconLabel={media['aria-hidden'] ? null : media['aria-label']}\n />\n );\n}\n"],"names":["renderPromptMedia","media","sentiment","mediaId","imgClassName","imgSrc","_jsx","Image","id","src","className","alt","avatar","badge","status","AvatarView","size","children","asset","GiftBox","StatusIcon","iconLabel"],"mappings":";;;;;;;;AA0BM,SAAUA,iBAAiBA,CAAC;EAChCC,KAAK;EACLC,SAAS;EACTC,OAAO;AACPC,EAAAA;AAAY,CACa,EAAA;EACzB,IAAIH,KAAK,EAAEI,MAAM,EAAE;IACjB,oBACEC,cAAA,CAACC,aAAK,EAAA;AACJC,MAAAA,EAAE,EAAEL,OAAQ;MACZM,GAAG,EAAER,KAAK,CAACI,MAAO;AAClBK,MAAAA,SAAS,EAAEN,YAAa;AACxBO,MAAAA,GAAG,EAAEV,KAAK,CAAC,YAAY,CAAC,IAAI;AAAG,KAAA,CAC/B;AAEN,EAAA;EACA,IAAIA,KAAK,EAAEW,MAAM,EAAE;IACjB,MAAMC,KAAK,GAAGZ,KAAK,CAACW,MAAM,CAACC,KAAK,GAC5BZ,KAAK,CAACW,MAAM,CAACC,KAAK,GAClBX,SAAS,KAAK,aAAa,GACzB,EAAE,GACF;AAAEY,MAAAA,MAAM,EAAEZ;KAAW;IAC3B,oBACEI,cAAA,CAACS,kBAAU,EAAA;MAAA,GACLd,KAAK,CAACW,MAAM;AAChBC,MAAAA,KAAK,EAAEA,KAAM;MACb,YAAA,EAAYZ,KAAK,CAAC,YAAY,CAAE;MAChC,aAAA,EAAaA,KAAK,CAAC,aAAa,CAAE;AAClCO,MAAAA,EAAE,EAAEL,OAAQ;AACZa,MAAAA,IAAI,EAAE,EAAG;AAAAC,MAAAA,QAAA,EAERhB,KAAK,CAACW,MAAM,CAACM;AAAK,KACT,CAAC;AAEjB,EAAA;AACA,EAAA,OAAOhB,SAAS,KAAK,aAAa,gBAChCI,cAAA,CAACS,kBAAU,EAAA;AACTP,IAAAA,EAAE,EAAEL,OAAQ;AACZa,IAAAA,IAAI,EAAE,EAAG;IACT,YAAA,EAAYf,KAAK,CAAC,YAAY,CAAE;IAChC,aAAA,EAAaA,KAAK,CAAC,aAAa,CAAE;AAAAgB,IAAAA,QAAA,eAElCX,cAAA,CAACa,aAAO,EAAA,EAAA;AACV,GAAY,CAAC,gBAEbb,cAAA,CAACc,kBAAU,EAAA;AACTZ,IAAAA,EAAE,EAAEL,OAAQ;AACZa,IAAAA,IAAI,EAAE,EAAG;AACTd,IAAAA,SAAS,EAAEA,SAAU;IACrBmB,SAAS,EAAEpB,KAAK,CAAC,aAAa,CAAC,GAAG,IAAI,GAAGA,KAAK,CAAC,YAAY;AAAE,GAAA,CAEhE;AACH;;;;"}