@thecb/components 12.0.0-beta.0 → 12.0.0-beta.2

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 (421) hide show
  1. package/README.md +33 -11
  2. package/ai-docs/architecture.md +71 -0
  3. package/ai-docs/components.md +167 -0
  4. package/ai-docs/conventions.md +162 -0
  5. package/ai-docs/figma-mcp.md +66 -0
  6. package/ai-docs/integration-guidelines.md +142 -0
  7. package/dist/index.cjs.js +27805 -25779
  8. package/dist/index.cjs.js.map +1 -1
  9. package/dist/index.d.ts +286 -12
  10. package/dist/index.esm.js +26589 -24593
  11. package/dist/index.esm.js.map +1 -1
  12. package/package.json +17 -8
  13. package/src/components/atoms/alert/Alert.js +10 -1
  14. package/src/components/atoms/alert/Alert.mdx +19 -0
  15. package/src/components/atoms/alert/Alert.stories.js +150 -0
  16. package/src/components/atoms/badge/Badge.js +39 -25
  17. package/src/components/atoms/badge/Badge.mdx +27 -0
  18. package/src/components/atoms/badge/Badge.stories.js +168 -0
  19. package/src/components/atoms/badge/Badge.theme.js +49 -1
  20. package/src/components/atoms/badge/index.d.ts +11 -0
  21. package/src/components/atoms/breadcrumb/Breadcrumb.mdx +21 -0
  22. package/src/components/atoms/breadcrumb/Breadcrumb.stories.js +47 -0
  23. package/src/components/atoms/button-with-action/ButtonWithAction.js +3 -29
  24. package/src/components/atoms/button-with-action/ButtonWithAction.stories.js +14 -1
  25. package/src/components/atoms/button-with-action/ButtonWithAction.theme.js +97 -56
  26. package/src/components/atoms/button-with-action/index.d.ts +1 -0
  27. package/src/components/atoms/button-with-link/ButtonWithLink.mdx +21 -0
  28. package/src/components/atoms/button-with-link/ButtonWithLink.stories.js +161 -0
  29. package/src/components/atoms/card/Card.js +22 -1
  30. package/src/components/atoms/card/Card.mdx +41 -0
  31. package/src/components/atoms/card/Card.stories.js +360 -0
  32. package/src/components/atoms/card/Card.theme.js +2 -0
  33. package/src/components/atoms/card/CardText.js +39 -11
  34. package/src/components/atoms/card/index.d.ts +8 -1
  35. package/src/components/atoms/card-type/CardType.js +55 -0
  36. package/src/components/atoms/card-type/CardType.stories.js +86 -0
  37. package/src/components/atoms/card-type/index.js +3 -0
  38. package/src/components/atoms/checkbox/Checkbox.js +121 -93
  39. package/src/components/atoms/checkbox/Checkbox.mdx +15 -0
  40. package/src/components/atoms/checkbox/Checkbox.oldstories.js +17 -13
  41. package/src/components/atoms/checkbox/Checkbox.stories.js +149 -0
  42. package/src/components/atoms/checkbox/Checkbox.theme.js +6 -2
  43. package/src/components/atoms/country-dropdown/CountryDropdown.mdx +36 -0
  44. package/src/components/atoms/country-dropdown/CountryDropdown.stories.js +76 -0
  45. package/src/components/atoms/detail/Detail.js +0 -26
  46. package/src/components/atoms/detail/Detail.mdx +32 -0
  47. package/src/components/atoms/detail/Detail.stories.js +156 -0
  48. package/src/components/atoms/display-box/DisplayBox.mdx +11 -0
  49. package/src/components/atoms/display-box/DisplayBox.stories.js +69 -0
  50. package/src/components/atoms/dropdown/Dropdown.js +17 -5
  51. package/src/components/atoms/dropdown/Dropdown.mdx +65 -0
  52. package/src/components/atoms/dropdown/Dropdown.stories.js +128 -0
  53. package/src/components/atoms/dropdown/Dropdown.theme.js +6 -6
  54. package/src/components/atoms/dropdown/DropdownIcon.js +1 -0
  55. package/src/components/atoms/dropdown/DropdownIconV2.js +50 -0
  56. package/src/components/atoms/dropdown/index.d.ts +59 -0
  57. package/src/components/atoms/form-layouts/FormInput.js +105 -61
  58. package/src/components/atoms/form-layouts/FormInput.mdx +38 -0
  59. package/src/components/atoms/form-layouts/FormInput.stories.js +219 -0
  60. package/src/components/atoms/form-layouts/FormTextarea.js +207 -0
  61. package/src/components/atoms/form-layouts/FormTextarea.mdx +48 -0
  62. package/src/components/atoms/form-layouts/FormTextarea.stories.js +265 -0
  63. package/src/components/atoms/form-layouts/index.d.ts +34 -1
  64. package/src/components/atoms/form-layouts/index.js +3 -1
  65. package/src/components/atoms/form-select/FormSelect.js +5 -3
  66. package/src/components/atoms/form-select/FormSelect.mdx +42 -0
  67. package/src/components/atoms/form-select/FormSelect.stories.js +76 -0
  68. package/src/components/atoms/form-select/FormSelect.styled.js +2 -2
  69. package/src/components/atoms/form-select/FormSelect.theme.js +6 -3
  70. package/src/components/atoms/form-select/index.d.ts +3 -0
  71. package/src/components/atoms/formatted-address/FormattedAddress.mdx +13 -0
  72. package/src/components/atoms/formatted-address/FormattedAddress.stories.js +138 -0
  73. package/src/components/atoms/formatted-bank-account/FormattedBankAccount.js +2 -2
  74. package/src/components/atoms/formatted-bank-account/FormattedBankAccount.mdx +17 -0
  75. package/src/components/atoms/formatted-bank-account/FormattedBankAccount.stories.js +57 -0
  76. package/src/components/atoms/formatted-bank-account/FormattedBankAccount.theme.js +2 -2
  77. package/src/components/atoms/formatted-credit-card/FormattedCreditCard.js +14 -10
  78. package/src/components/atoms/formatted-credit-card/FormattedCreditCard.mdx +40 -0
  79. package/src/components/atoms/formatted-credit-card/FormattedCreditCard.stories.js +74 -0
  80. package/src/components/atoms/formatted-credit-card/FormattedCreditCard.theme.js +2 -2
  81. package/src/components/atoms/icons/AgencyIcon.js +24 -0
  82. package/src/components/atoms/icons/AmExLargeIcon.js +54 -0
  83. package/src/components/atoms/icons/AmExSmallIcon.js +54 -0
  84. package/src/components/atoms/icons/AutopayIcon.js +9 -1
  85. package/src/components/atoms/icons/BankGenericSmallIcon.js +48 -0
  86. package/src/components/atoms/icons/CaretArrowDown.d.ts +9 -0
  87. package/src/components/atoms/icons/CaretArrowDown.js +22 -0
  88. package/src/components/atoms/icons/CaretArrowUp.d.ts +9 -0
  89. package/src/components/atoms/icons/CaretArrowUp.js +22 -0
  90. package/src/components/atoms/icons/CarrotIcon.js +2 -0
  91. package/src/components/atoms/icons/CashSmallIcon.js +21 -0
  92. package/src/components/atoms/icons/CashieringImage.d.ts +1 -0
  93. package/src/components/atoms/icons/CashieringImage.js +254 -0
  94. package/src/components/atoms/icons/CheckboxCheckmarkIcon.js +45 -0
  95. package/src/components/atoms/icons/CustomerSearchIcon.js +30 -79
  96. package/src/components/atoms/icons/DiscoverLargeIcon.js +137 -0
  97. package/src/components/atoms/icons/DiscoverSmallIcon.js +137 -0
  98. package/src/components/atoms/icons/ExternalLinkIcon.js +10 -2
  99. package/src/components/atoms/icons/GenericCardLarge.js +1 -1
  100. package/src/components/atoms/icons/GenericSmallIcon.js +27 -0
  101. package/src/components/atoms/icons/GuidedCheckoutImage.js +105 -26
  102. package/src/components/atoms/icons/IconAdd.js +2 -2
  103. package/src/components/atoms/icons/Icons.mdx +40 -0
  104. package/src/components/atoms/icons/Icons.stories.js +343 -0
  105. package/src/components/atoms/icons/KioskImage.js +223 -338
  106. package/src/components/atoms/icons/MasterCardLargeIcon.js +35 -0
  107. package/src/components/atoms/icons/MasterCardSmallIcon.js +35 -0
  108. package/src/components/atoms/icons/{NoCustomerResultsIcon.js → NoResultsIcon.js} +10 -6
  109. package/src/components/atoms/icons/NotFoundIcon.js +70 -333
  110. package/src/components/atoms/icons/OverageIcon.js +27 -0
  111. package/src/components/atoms/icons/PaydotImage.d.ts +1 -0
  112. package/src/components/atoms/icons/PaydotImage.js +46 -0
  113. package/src/components/atoms/icons/PaymentSearchIcon.js +7 -42
  114. package/src/components/atoms/icons/PaymentStatusIcon.d.ts +1 -0
  115. package/src/components/atoms/icons/PaymentStatusIcon.js +28 -0
  116. package/src/components/atoms/icons/PeriscopeFailedIcon.js +2 -2
  117. package/src/components/atoms/icons/PersonIcon.d.ts +1 -0
  118. package/src/components/atoms/icons/PersonIcon.js +28 -0
  119. package/src/components/atoms/icons/ProfileImage.js +58 -37
  120. package/src/components/atoms/icons/RevenueManagementImage.js +138 -393
  121. package/src/components/atoms/icons/ReversalNeededIcon.js +27 -0
  122. package/src/components/atoms/icons/SearchIcon.js +4 -3
  123. package/src/components/atoms/icons/ShortageIcon.js +21 -0
  124. package/src/components/atoms/icons/StandardCheckoutImage.js +105 -336
  125. package/src/components/atoms/icons/SuccessfulIconMedium.js +3 -2
  126. package/src/components/atoms/icons/VisaLargeIcon.js +40 -0
  127. package/src/components/atoms/icons/VisaSmallIcon.js +40 -0
  128. package/src/components/atoms/icons/WireSmallIcon.js +22 -0
  129. package/src/components/atoms/icons/icons.oldstories.js +47 -31
  130. package/src/components/atoms/icons/index.d.ts +4 -1
  131. package/src/components/atoms/icons/index.js +47 -7
  132. package/src/components/atoms/index.d.ts +4 -0
  133. package/src/components/atoms/index.js +3 -1
  134. package/src/components/atoms/jumbo/Jumbo.js +18 -3
  135. package/src/components/atoms/labeled-amount/LabeledAmount.mdx +23 -0
  136. package/src/components/atoms/labeled-amount/LabeledAmount.stories.js +118 -0
  137. package/src/components/atoms/layouts/Box.styled.js +34 -22
  138. package/src/components/atoms/layouts/Center.styled.js +2 -0
  139. package/src/components/atoms/layouts/Motion.js +25 -6
  140. package/src/components/atoms/layouts/Motion.styled.js +36 -0
  141. package/src/components/atoms/layouts/Stack.js +2 -0
  142. package/src/components/atoms/layouts/Stack.styled.js +2 -0
  143. package/src/components/atoms/line-item/LineItem.mdx +28 -0
  144. package/src/components/atoms/line-item/LineItem.stories.js +95 -0
  145. package/src/components/atoms/link/ExternalLink.d.ts +1 -0
  146. package/src/components/atoms/link/ExternalLink.js +37 -19
  147. package/src/components/atoms/link/ExternalLink.styled.js +2 -0
  148. package/src/components/atoms/link/InternalLink.js +11 -1
  149. package/src/components/atoms/link/InternalLink.styled.js +22 -2
  150. package/src/components/atoms/link/Link.mdx +19 -0
  151. package/src/components/atoms/link/Link.stories.js +183 -0
  152. package/src/components/atoms/loading/Loading.mdx +13 -0
  153. package/src/components/atoms/loading/Loading.stories.js +22 -0
  154. package/src/components/atoms/loading-line/LoadingLine.js +23 -11
  155. package/src/components/atoms/loading-line/LoadingLine.mdx +15 -0
  156. package/src/components/atoms/loading-line/LoadingLine.stories.js +132 -0
  157. package/src/components/atoms/loading-line/LoadingPill.styled.js +7 -6
  158. package/src/components/atoms/nav-footer/NavFooter.mdx +15 -0
  159. package/src/components/atoms/nav-footer/NavFooter.stories.js +244 -0
  160. package/src/components/atoms/nav-header/NavHeader.mdx +13 -0
  161. package/src/components/atoms/nav-header/NavHeader.stories.js +130 -0
  162. package/src/components/atoms/nav-tabs/NavTabs.mdx +30 -0
  163. package/src/components/atoms/nav-tabs/NavTabs.stories.js +49 -0
  164. package/src/components/atoms/password-requirements/PasswordRequirements.js +3 -3
  165. package/src/components/atoms/password-requirements/PasswordRequirements.mdx +39 -0
  166. package/src/components/atoms/password-requirements/PasswordRequirements.stories.js +139 -0
  167. package/src/components/atoms/placeholder/Placeholder.mdx +19 -0
  168. package/src/components/atoms/placeholder/Placeholder.stories.js +170 -0
  169. package/src/components/atoms/radio-button-with-label/RadioButtonWithLabel.js +13 -7
  170. package/src/components/atoms/radio-button-with-label/RadioButtonWithLabel.theme.js +9 -3
  171. package/src/components/atoms/search/Search.js +123 -0
  172. package/src/components/atoms/search/Search.oldstories.js +58 -0
  173. package/src/components/atoms/search/Search.theme.js +9 -0
  174. package/src/components/atoms/search/index.d.ts +27 -0
  175. package/src/components/atoms/search/index.js +3 -0
  176. package/src/components/atoms/searchable-select/SearchableSelect.mdx +44 -0
  177. package/src/components/atoms/searchable-select/SearchableSelect.stories.js +137 -0
  178. package/src/components/atoms/sortable-table-heading/SortableTableHeading.js +47 -0
  179. package/src/components/atoms/sortable-table-heading/SortableTableHeading.oldstories.js +19 -0
  180. package/src/components/atoms/sortable-table-heading/SortableTableHeading.theme.js +9 -0
  181. package/src/components/atoms/sortable-table-heading/index.d.ts +15 -0
  182. package/src/components/atoms/sortable-table-heading/index.js +3 -0
  183. package/src/components/atoms/spinner/Spinner.js +2 -1
  184. package/src/components/atoms/state-province-dropdown/StateProvinceDropdown.mdx +36 -0
  185. package/src/components/atoms/state-province-dropdown/StateProvinceDropdown.stories.js +78 -0
  186. package/src/components/atoms/state-province-dropdown/options.js +4 -1
  187. package/src/components/atoms/tab/Tab.js +2 -2
  188. package/src/components/atoms/table/Table.mdx +71 -0
  189. package/src/components/atoms/table/Table.oldstories.js +84 -0
  190. package/src/components/atoms/table/Table.stories.js +65 -0
  191. package/src/components/atoms/table/TableRow.js +1 -0
  192. package/src/components/atoms/title/Title.js +0 -23
  193. package/src/components/atoms/title/Title.mdx +26 -0
  194. package/src/components/atoms/title/Title.stories.js +144 -0
  195. package/src/components/atoms/title/Title.theme.js +3 -0
  196. package/src/components/atoms/toggle-switch/ToggleSwitch.js +66 -48
  197. package/src/components/atoms/toggle-switch/ToggleSwitch.mdx +17 -0
  198. package/src/components/atoms/toggle-switch/ToggleSwitch.stories.js +111 -0
  199. package/src/components/atoms/toggle-switch/ToggleSwitch.theme.js +8 -5
  200. package/src/components/atoms/typeahead-input/TypeaheadInput.mdx +13 -0
  201. package/src/components/atoms/typeahead-input/TypeaheadInput.stories.js +63 -0
  202. package/src/components/atoms/wallet-name/WalletName.js +6 -4
  203. package/src/components/atoms/wallet-name/WalletName.oldstories.js +26 -1
  204. package/src/components/atoms/wallet-name/index.d.ts +2 -0
  205. package/src/components/molecules/address-form/AddressForm.mdx +18 -0
  206. package/src/components/molecules/address-form/AddressForm.stories.js +224 -0
  207. package/src/components/molecules/banner/Banner.mdx +23 -0
  208. package/src/components/molecules/banner/Banner.stories.js +125 -0
  209. package/src/components/molecules/change-password-form/ChangePasswordForm.mdx +15 -0
  210. package/src/components/molecules/change-password-form/ChangePasswordForm.stories.js +206 -0
  211. package/src/components/molecules/collapsible-section/CollapsibleSection.js +1 -1
  212. package/src/components/molecules/collapsible-section/CollapsibleSection.mdx +15 -0
  213. package/src/components/molecules/collapsible-section/CollapsibleSection.stories.js +217 -0
  214. package/src/components/molecules/collapsible-section/index.d.ts +2 -2
  215. package/src/components/molecules/contact-card/ContactCard.js +157 -0
  216. package/src/components/molecules/contact-card/ContactCard.stories.js +80 -0
  217. package/src/components/molecules/contact-card/ContactCard.styled.js +44 -0
  218. package/src/components/molecules/contact-card/index.d.ts +16 -0
  219. package/src/components/molecules/contact-card/index.js +3 -0
  220. package/src/components/molecules/edit-name-form/EditNameForm.mdx +13 -0
  221. package/src/components/molecules/edit-name-form/EditNameForm.stories.js +117 -0
  222. package/src/components/molecules/editable-list/EditableList.js +6 -1
  223. package/src/components/molecules/email-form/EmailForm.js +9 -1
  224. package/src/components/molecules/email-form/EmailForm.state.js +1 -1
  225. package/src/components/molecules/email-form/EmailForm.stories.js +210 -0
  226. package/src/components/molecules/forgot-password-form/ForgotPasswordForm.js +2 -1
  227. package/src/components/molecules/hero-image/HeroImage.js +135 -0
  228. package/src/components/molecules/hero-image/HeroImage.mdx +15 -0
  229. package/src/components/molecules/hero-image/HeroImage.stories.js +149 -0
  230. package/src/components/molecules/hero-image/HeroImage.styled.js +83 -0
  231. package/src/components/molecules/hero-image/HeroImage.theme.js +109 -0
  232. package/src/components/molecules/hero-image/index.js +3 -0
  233. package/src/components/molecules/idle-modal/IdleModal.js +101 -0
  234. package/src/components/molecules/idle-modal/IdleModal.mdx +17 -0
  235. package/src/components/molecules/idle-modal/IdleModal.stories.js +180 -0
  236. package/src/components/molecules/idle-modal/index.d.ts +16 -0
  237. package/src/components/molecules/idle-modal/index.js +3 -0
  238. package/src/components/molecules/index.d.ts +1 -0
  239. package/src/components/molecules/index.js +7 -0
  240. package/src/components/molecules/link-card/LinkCard.js +31 -20
  241. package/src/components/molecules/link-card/LinkCard.mdx +17 -0
  242. package/src/components/molecules/link-card/LinkCard.stories.js +528 -0
  243. package/src/components/molecules/link-card/LinkCard.styled.js +28 -21
  244. package/src/components/molecules/link-card/LinkCard.theme.js +6 -4
  245. package/src/components/molecules/link-card/index.d.ts +3 -1
  246. package/src/components/molecules/login-form/LoginForm.js +2 -1
  247. package/src/components/molecules/login-form/LoginForm.mdx +16 -0
  248. package/src/components/molecules/login-form/LoginForm.stories.js +120 -0
  249. package/src/components/molecules/modal/Modal.mdx +17 -0
  250. package/src/components/molecules/modal/Modal.stories.js +362 -0
  251. package/src/components/molecules/modal/ModalControlV1.js +3 -0
  252. package/src/components/molecules/modal/ModalControlV2.js +2 -0
  253. package/src/components/molecules/modal/__private__/CloseButton.js +2 -1
  254. package/src/components/molecules/module/Module.mdx +17 -0
  255. package/src/components/molecules/module/Module.stories.js +273 -0
  256. package/src/components/molecules/multiple-select-filter/MultipleSelectFilter.js +229 -0
  257. package/src/components/molecules/multiple-select-filter/MultipleSelectFilter.oldstories.js +74 -0
  258. package/src/components/molecules/multiple-select-filter/MultipleSelectFilter.styled.js +65 -0
  259. package/src/components/molecules/multiple-select-filter/MultipleSelectFilter.theme.js +13 -0
  260. package/src/components/molecules/multiple-select-filter/__private__/ActionLinkButton.js +27 -0
  261. package/src/components/molecules/multiple-select-filter/__private__/FilterButton.js +97 -0
  262. package/src/components/molecules/multiple-select-filter/__private__/FilterDropdown.js +27 -0
  263. package/src/components/molecules/multiple-select-filter/__private__/FilterableList.js +146 -0
  264. package/src/components/molecules/multiple-select-filter/__private__/FilterableListItem.js +78 -0
  265. package/src/components/molecules/multiple-select-filter/__private__/SearchBox.js +41 -0
  266. package/src/components/molecules/multiple-select-filter/__private__/useKeyboardNavigation.js +84 -0
  267. package/src/components/molecules/multiple-select-filter/__private__/util.js +44 -0
  268. package/src/components/molecules/multiple-select-filter/index.d.ts +34 -0
  269. package/src/components/molecules/multiple-select-filter/index.js +3 -0
  270. package/src/components/molecules/nav-menu/NavMenuMobile.js +27 -29
  271. package/src/components/molecules/nav-menu/NavMenuMobile.mdx +21 -0
  272. package/src/components/molecules/nav-menu/NavMenuMobile.stories.js +100 -0
  273. package/src/components/molecules/obligation/Obligation.js +141 -3
  274. package/src/components/molecules/obligation/Obligation.mdx +23 -0
  275. package/src/components/molecules/obligation/Obligation.stories.js +642 -0
  276. package/src/components/molecules/obligation/icons/PropertyBusinessIcon.js +2 -2
  277. package/src/components/molecules/obligation/icons/PropertyCarIcon.js +2 -2
  278. package/src/components/molecules/obligation/icons/PropertyCommercialVehicleIcon.js +2 -2
  279. package/src/components/molecules/obligation/icons/PropertyGarageIcon.js +2 -2
  280. package/src/components/molecules/obligation/icons/PropertyLandIcon.js +2 -2
  281. package/src/components/molecules/obligation/icons/PropertyMotorcycleIcon.js +2 -2
  282. package/src/components/molecules/obligation/icons/PropertyPersonalIcon.js +2 -2
  283. package/src/components/molecules/obligation/icons/PropertyStorefrontIcon.js +2 -2
  284. package/src/components/molecules/obligation/modules/AmountModule.js +64 -38
  285. package/src/components/molecules/obligation/modules/AutopayModalModule.js +37 -12
  286. package/src/components/molecules/obligation/modules/InactiveControlsModule.js +56 -12
  287. package/src/components/molecules/obligation/modules/InactiveTitleModule.js +1 -1
  288. package/src/components/molecules/obligation/modules/PaymentDetailsActions.js +42 -10
  289. package/src/components/molecules/obligation/modules/RemoveAccountModalModule.js +4 -1
  290. package/src/components/molecules/pagination/Pagination.mdx +15 -0
  291. package/src/components/molecules/pagination/Pagination.stories.js +181 -0
  292. package/src/components/molecules/partial-amount-form/PartialAmountField.js +68 -29
  293. package/src/components/molecules/partial-amount-form/PartialAmountField.theme.js +7 -0
  294. package/src/components/molecules/payment-button-bar/PaymentButtonBar.js +15 -8
  295. package/src/components/molecules/payment-details/PaymentDetails.js +1 -2
  296. package/src/components/molecules/payment-details/PaymentDetails.oldstories.js +0 -1
  297. package/src/components/molecules/payment-form-ach/PaymentFormACH.js +2 -0
  298. package/src/components/molecules/payment-form-ach/PaymentFormACH.state.js +2 -2
  299. package/src/components/molecules/payment-form-card/PaymentFormCard.js +6 -2
  300. package/src/components/molecules/payment-form-card/PaymentFormCard.state.js +2 -1
  301. package/src/components/molecules/phone-form/PhoneForm.js +7 -1
  302. package/src/components/molecules/phone-form/PhoneForm.state.js +1 -1
  303. package/src/components/molecules/popover/Popover.js +1 -15
  304. package/src/components/molecules/popover/Popover.mdx +15 -0
  305. package/src/components/molecules/popover/Popover.stories.js +220 -0
  306. package/src/components/molecules/radio-group/RadioGroup.js +8 -3
  307. package/src/components/molecules/radio-group/index.d.ts +1 -0
  308. package/src/components/molecules/radio-section/InnerRadioSection.js +3 -3
  309. package/src/components/molecules/radio-section/RadioSection.js +87 -44
  310. package/src/components/molecules/radio-section/RadioSection.stories.js +142 -0
  311. package/src/components/molecules/radio-section/radio-button/RadioButton.js +9 -5
  312. package/src/components/molecules/registration-banner/RegistrationBanner.js +115 -0
  313. package/src/components/molecules/registration-banner/RegistrationBanner.mdx +15 -0
  314. package/src/components/molecules/registration-banner/RegistrationBanner.stories.js +80 -0
  315. package/src/components/molecules/registration-banner/RegistrationBanner.styled.js +46 -0
  316. package/src/components/molecules/registration-banner/RegistrationBanner.theme.js +6 -0
  317. package/src/components/molecules/registration-banner/index.d.ts +15 -0
  318. package/src/components/molecules/registration-banner/index.js +3 -0
  319. package/src/components/molecules/registration-form/RegistrationForm.js +2 -1
  320. package/src/components/molecules/tab-sidebar/TabSidebar.js +5 -3
  321. package/src/components/molecules/tabs/Tabs.js +25 -9
  322. package/src/components/molecules/tabs/Tabs.mdx +17 -0
  323. package/src/components/molecules/tabs/Tabs.stories.js +149 -0
  324. package/src/components/molecules/tabs/index.d.ts +21 -0
  325. package/src/components/molecules/terms-and-conditions-modal/TermsAndConditionsModal.js +1 -1
  326. package/src/components/molecules/terms-and-conditions-modal/TermsAndConditionsModal.stories.js +110 -0
  327. package/src/components/molecules/toast-notification/Toast.mdx +15 -0
  328. package/src/components/molecules/toast-notification/Toast.stories.js +183 -0
  329. package/src/components/molecules/toast-notification/ToastNotification.js +74 -43
  330. package/src/components/molecules/tooltip/Tooltip.js +269 -0
  331. package/src/components/molecules/tooltip/Tooltip.mdx +25 -0
  332. package/src/components/molecules/tooltip/Tooltip.stories.js +287 -0
  333. package/src/components/molecules/tooltip/Tooltip.theme.js +18 -0
  334. package/src/components/molecules/tooltip/index.d.ts +34 -0
  335. package/src/components/molecules/tooltip/index.js +3 -0
  336. package/src/components/molecules/turnstile-widget/TurnstileWidget.js +183 -0
  337. package/src/components/molecules/turnstile-widget/index.js +3 -0
  338. package/src/components/templates/sidebar-stack-content/SidebarStackContent.js +1 -1
  339. package/src/constants/colors.d.ts +4 -0
  340. package/src/constants/colors.js +8 -1
  341. package/src/constants/regex_constants.js +1 -1
  342. package/src/constants/style_constants.js +13 -0
  343. package/src/deprecated/spinner/Spinner.js +8 -20
  344. package/src/hooks/index.js +2 -0
  345. package/src/hooks/use-conditionally-add-validator/index.js +20 -0
  346. package/src/hooks/use-outside-click/index.js +4 -5
  347. package/src/hooks/use-turnstile-script/index.js +49 -0
  348. package/src/util/formats.js +6 -3
  349. package/src/util/general.js +67 -4
  350. package/src/util/idleTimerUtils.js +36 -0
  351. package/src/util/index.js +3 -1
  352. package/src/util/themeUtils.js +24 -14
  353. package/src/.DS_Store +0 -0
  354. package/src/components/.DS_Store +0 -0
  355. package/src/components/atoms/alert/Alert.oldstories.js +0 -28
  356. package/src/components/atoms/badge/Badge.oldstories.js +0 -33
  357. package/src/components/atoms/breadcrumb/Breadcrumb.oldstories.js +0 -38
  358. package/src/components/atoms/button-with-action/ButtonWithAction.oldstories.js +0 -56
  359. package/src/components/atoms/button-with-link/ButtonWithLink.oldstories.js +0 -32
  360. package/src/components/atoms/country-dropdown/CountryDropdown.oldstories.js +0 -42
  361. package/src/components/atoms/display-box/DisplayBox.oldstories.js +0 -25
  362. package/src/components/atoms/display-card/DisplayCard.js +0 -88
  363. package/src/components/atoms/display-card/DisplayCard.oldstories.js +0 -24
  364. package/src/components/atoms/display-card/index.js +0 -3
  365. package/src/components/atoms/dropdown/Dropdown.oldstories.js +0 -47
  366. package/src/components/atoms/form-select/FormSelect.oldstories.js +0 -50
  367. package/src/components/atoms/formatted-address/FormattedAddress.oldstories.js +0 -32
  368. package/src/components/atoms/icons/NoPaymentResultsIcon.js +0 -54
  369. package/src/components/atoms/icons/PointOfSaleImage.d.ts +0 -1
  370. package/src/components/atoms/icons/PointOfSaleImage.js +0 -439
  371. package/src/components/atoms/labeled-amount/LabeledAmount.oldstories.js +0 -42
  372. package/src/components/atoms/line-item/LineItem.oldstories.js +0 -28
  373. package/src/components/atoms/link/Link.oldstories.js +0 -57
  374. package/src/components/atoms/loading-line/LoadingLine.oldstories.js +0 -28
  375. package/src/components/atoms/nav-footer/NavFooter.oldstories.js +0 -31
  376. package/src/components/atoms/nav-header/NavHeader.oldstories.js +0 -29
  377. package/src/components/atoms/password-requirements/PasswordRequirements.oldstories.js +0 -75
  378. package/src/components/atoms/placeholder/Placeholder.oldstories.js +0 -42
  379. package/src/components/atoms/searchable-select/SearchableSelect.oldstories.js +0 -62
  380. package/src/components/atoms/state-province-dropdown/StateProvinceDropdown.oldstories.js +0 -53
  381. package/src/components/atoms/toggle-switch/ToggleSwitch.oldstories.js +0 -28
  382. package/src/components/molecules/.DS_Store +0 -0
  383. package/src/components/molecules/address-form/AddressForm.oldstories.js +0 -21
  384. package/src/components/molecules/banner/Banner.oldstories.js +0 -29
  385. package/src/components/molecules/change-password-form/ChangePasswordForm.oldstories.js +0 -22
  386. package/src/components/molecules/collapsible-section/CollapsibleSection.oldstories.js +0 -68
  387. package/src/components/molecules/edit-name-form/EdidNameForm.oldstories.js +0 -24
  388. package/src/components/molecules/link-card/LinkCard.oldstories.js +0 -87
  389. package/src/components/molecules/login-form/LoginForm.oldstories.js +0 -24
  390. package/src/components/molecules/modal/Modal.oldstories.js +0 -139
  391. package/src/components/molecules/module/Module.oldstories.js +0 -31
  392. package/src/components/molecules/obligation/.DS_Store +0 -0
  393. package/src/components/molecules/pagination/Pagination.oldstories.js +0 -32
  394. package/src/components/molecules/tabs/Tabs.oldstories.js +0 -241
  395. package/src/components/molecules/toast-notification/ToastNotification.oldstories.js +0 -105
  396. package/src/stories/Button.stories.ts +0 -53
  397. package/src/stories/Button.tsx +0 -48
  398. package/src/stories/Configure.mdx +0 -364
  399. package/src/stories/Header.stories.ts +0 -33
  400. package/src/stories/Header.tsx +0 -56
  401. package/src/stories/Page.stories.ts +0 -32
  402. package/src/stories/Page.tsx +0 -73
  403. package/src/stories/assets/accessibility.png +0 -0
  404. package/src/stories/assets/accessibility.svg +0 -5
  405. package/src/stories/assets/addon-library.png +0 -0
  406. package/src/stories/assets/assets.png +0 -0
  407. package/src/stories/assets/avif-test-image.avif +0 -0
  408. package/src/stories/assets/context.png +0 -0
  409. package/src/stories/assets/discord.svg +0 -15
  410. package/src/stories/assets/docs.png +0 -0
  411. package/src/stories/assets/figma-plugin.png +0 -0
  412. package/src/stories/assets/github.svg +0 -3
  413. package/src/stories/assets/share.png +0 -0
  414. package/src/stories/assets/styling.png +0 -0
  415. package/src/stories/assets/testing.png +0 -0
  416. package/src/stories/assets/theming.png +0 -0
  417. package/src/stories/assets/tutorials.svg +0 -12
  418. package/src/stories/assets/youtube.svg +0 -4
  419. package/src/stories/button.css +0 -30
  420. package/src/stories/header.css +0 -32
  421. package/src/stories/page.css +0 -69
@@ -0,0 +1,40 @@
1
+ import React from "react";
2
+
3
+ const VisaSmallIcon = () => {
4
+ return (
5
+ <svg
6
+ width="24"
7
+ height="16"
8
+ viewBox="0 0 24 16"
9
+ fill="none"
10
+ xmlns="http://www.w3.org/2000/svg"
11
+ role="img"
12
+ aria-label="Visa"
13
+ >
14
+ <path
15
+ fillRule="evenodd"
16
+ clipRule="evenodd"
17
+ d="M23.2387 16H0.761973C0.340958 16 0 15.6492 0 15.2168V0.783232C0 0.3508 0.340958 0 0.761973 0H23.2387C23.6598 0 24 0.3508 24 0.783232V15.2168C24 15.6492 23.6598 16 23.2387 16Z"
18
+ fill="#F6F6F9"
19
+ />
20
+ <g clipPath="url(#clip0_3693_1186)">
21
+ <path
22
+ d="M10.075 5.09143L7.98023 10.0892H6.61357L5.58274 6.10076C5.52016 5.8551 5.46574 5.7651 5.27541 5.6616C4.96466 5.49301 4.4515 5.33485 4 5.23668L4.03067 5.09143H6.23057C6.51099 5.09143 6.76307 5.2781 6.82674 5.60101L7.37115 8.493L8.71664 5.09135H10.075V5.09143ZM15.4298 8.45758C15.4353 7.13851 13.6058 7.06584 13.6184 6.47659C13.6223 6.29726 13.793 6.10659 14.1668 6.05793C14.352 6.03368 14.8624 6.01518 15.4414 6.28159L15.6684 5.22177C15.3574 5.10885 14.9571 5.00018 14.4591 5.00018C13.1812 5.00018 12.2819 5.67951 12.2743 6.65226C12.266 7.37175 12.9162 7.77325 13.406 8.01233C13.9099 8.25717 14.079 8.4145 14.0771 8.6335C14.0735 8.96875 13.6752 9.11675 13.303 9.12258C12.6531 9.13258 12.276 8.94675 11.9755 8.807L11.7411 9.90191C12.0432 10.0405 12.6008 10.1614 13.1789 10.1675C14.5371 10.1675 15.4256 9.49658 15.4298 8.45758ZM18.8043 10.0893H20L18.9563 5.09143H17.8526C17.6044 5.09143 17.3951 5.23593 17.3024 5.4581L15.3624 10.0892H16.7199L16.9894 9.34274H18.6482L18.8043 10.0892V10.0893ZM17.3617 8.3185L18.0422 6.44201L18.4338 8.3185H17.3617ZM11.9222 5.09143L10.8531 10.0892H9.5603L10.6298 5.09143H11.9222Z"
23
+ fill="#1434CB"
24
+ />
25
+ </g>
26
+ <defs>
27
+ <clipPath id="clip0_3693_1186">
28
+ <rect
29
+ width="16"
30
+ height="5.16731"
31
+ fill="white"
32
+ transform="translate(4 5)"
33
+ />
34
+ </clipPath>
35
+ </defs>
36
+ </svg>
37
+ );
38
+ };
39
+
40
+ export default VisaSmallIcon;
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+
3
+ const WireSmallIcon = () => {
4
+ return (
5
+ <svg
6
+ width="24"
7
+ height="16"
8
+ viewBox="0 0 24 16"
9
+ fill="none"
10
+ xmlns="http://www.w3.org/2000/svg"
11
+ >
12
+ <rect x="0.5" y="0.5" width="23" height="15" rx="1.5" fill="#E4F4FD" />
13
+ <rect x="0.5" y="0.5" width="23" height="15" rx="1.5" stroke="#15749D" />
14
+ <path
15
+ d="M12.667 7.33324V10.6662H14V7.33324H12.667ZM10 10.6662H11.333V7.33324H10V10.6662ZM15.333 10.6662H15.75C15.888 10.6662 15.9999 10.7783 16 10.9162V11.7502C15.9998 11.8881 15.8879 12.0002 15.75 12.0002H8.25C8.11206 12.0002 8.00021 11.8881 8 11.7502V10.9162C8.00015 10.7783 8.11202 10.6662 8.25 10.6662H8.66699V7.33324H8.25C8.11195 7.33324 8.00003 7.22128 8 7.08324V6.15453C8 6.05983 8.05398 5.97324 8.13867 5.93089L11.8887 4.05589C11.9589 4.02092 12.0411 4.02092 12.1113 4.05589L15.8613 5.93089C15.946 5.97324 16 6.05983 16 6.15453V7.08324C16 7.22128 15.8881 7.33324 15.75 7.33324H15.333V10.6662Z"
16
+ fill="#15749D"
17
+ />
18
+ </svg>
19
+ );
20
+ };
21
+
22
+ export default WireSmallIcon;
@@ -4,6 +4,8 @@ import page from "../../../../.storybook/page";
4
4
  import {
5
5
  AccountsIcon,
6
6
  AccountsAddIcon,
7
+ CaretArrowDown,
8
+ CaretArrowUp,
7
9
  ForgotPasswordIcon,
8
10
  GoToEmailIcon,
9
11
  VerifiedEmailIcon,
@@ -42,11 +44,17 @@ import {
42
44
  AutopayIcon,
43
45
  KebabMenuIcon,
44
46
  MultiCartIcon,
47
+ NoResultsIcon,
45
48
  CloseIcon,
46
49
  TrashIconV2,
47
50
  DisabledPropertiesAddIcon,
48
51
  DisabledAccountsAddIcon,
49
- DisabledPaymentMethodsAddIcon
52
+ DisabledPaymentMethodsAddIcon,
53
+ ReversalNeededIcon,
54
+ OverageIcon,
55
+ ShortageIcon,
56
+ PersonIcon,
57
+ PaymentStatusIcon
50
58
  } from "./index";
51
59
 
52
60
  const story = page({
@@ -55,50 +63,58 @@ const story = page({
55
63
  });
56
64
  export default story;
57
65
 
58
- export const accountsIcon = () => <AccountsIcon />;
66
+ export const accountNumberImage = () => <AccountNumberImage />;
59
67
  export const accountsAddIcon = () => <AccountsAddIcon />;
60
- export const forgotPasswordIcon = () => <ForgotPasswordIcon />;
61
- export const goToEmailIcon = () => <GoToEmailIcon />;
62
- export const plusCircleIcon = () => <PlusCircleIcon />;
63
- export const verifiedEmailIcon = () => <VerifiedEmailIcon />;
64
- export const paymentMethodIcon = () => <PaymentMethodIcon />;
68
+ export const accountsIcon = () => <AccountsIcon />;
65
69
  export const accountsIconSmall = () => <AccountsIconSmall />;
66
- export const paymentsIconSmall = () => <PaymentsIconSmall />;
67
- export const profileIconSmall = () => <ProfileIconSmall />;
68
- export const settingsIconSmall = () => <SettingsIconSmall />;
69
- export const chevronIcon = () => <ChevronIcon />;
70
- export const propertiesAddIcon = () => <PropertiesAddIcon />;
71
- export const propertiesIconSmall = () => <PropertiesIconSmall />;
72
- export const accountNumberImage = () => <AccountNumberImage />;
73
- export const routingNumberImage = () => <RoutingNumberImage />;
74
- export const checkmarkIcon = () => <CheckmarkIcon />;
75
- export const bankIcon = () => <BankIcon />;
76
- export const genericCard = () => <GenericCard />;
77
- export const autopayOnIcon = () => <AutopayOnIcon />;
78
- export const searchIcon = () => <SearchIcon />;
79
70
  export const achReturnIcon = () => <AchReturnIcon />;
80
71
  export const allocatedIcon = () => <AllocatedIcon />;
72
+ export const autopayIcon = () => <AutopayIcon />;
73
+ export const autopayOnIcon = () => <AutopayOnIcon />;
74
+ export const bankIcon = () => <BankIcon />;
81
75
  export const calendarIcon = () => <CalendarIcon />;
76
+ export const caretArrowDown = () => <CaretArrowDown />;
77
+ export const caretArrowUp = () => <CaretArrowUp />;
82
78
  export const chargebackIcon = () => <ChargebackIcon />;
83
79
  export const chargebackReversalIcon = () => <ChargebackReversalIcon />;
80
+ export const checkmarkIcon = () => <CheckmarkIcon />;
81
+ export const chevronIcon = () => <ChevronIcon />;
82
+ export const closeIcon = () => <CloseIcon />;
83
+ export const disabledAccountsAddIcon = () => <DisabledAccountsAddIcon />;
84
+ export const disabledPaymentMethodsAddIcon = () => (
85
+ <DisabledPaymentMethodsAddIcon />
86
+ );
87
+ export const disabledPropertiesAddIcon = () => <DisabledPropertiesAddIcon />;
84
88
  export const duplicateIcon = () => <DuplicateIcon />;
85
89
  export const erroredIcon = () => <ErroredIcon />;
86
90
  export const failedIcon = () => <FailedIcon />;
91
+ export const forgotPasswordIcon = () => <ForgotPasswordIcon />;
92
+ export const genericCard = () => <GenericCard />;
93
+ export const goToEmailIcon = () => <GoToEmailIcon />;
94
+ export const kebabMenuIcon = () => <KebabMenuIcon />;
95
+ export const multiCartIcon = () => <MultiCartIcon />;
96
+ export const noResultsIcon = () => <NoResultsIcon />;
97
+ export const overageIcon = () => <OverageIcon />;
98
+ export const paymentMethodIcon = () => <PaymentMethodIcon />;
99
+ export const paymentsIconSmall = () => <PaymentsIconSmall />;
87
100
  export const pencilIcon = () => <PencilIcon />;
88
101
  export const pendingIcon = () => <PendingIcon />;
102
+ export const plusCircleIcon = () => <PlusCircleIcon />;
103
+ export const profileIconSmall = () => <ProfileIconSmall />;
104
+ export const propertiesAddIcon = () => <PropertiesAddIcon />;
105
+ export const propertiesIconSmall = () => <PropertiesIconSmall />;
89
106
  export const refundIcon = () => <RefundIcon />;
90
107
  export const rejectedIcon = () => <RejectedIcon />;
91
108
  export const rejectedVelocityIcon = () => <RejectedVelocityIcon />;
92
- export const successfulIcon = () => <SuccessfulIcon />;
93
- export const voidedIcon = () => <VoidedIcon />;
109
+ export const reversalNeededIcon = () => <ReversalNeededIcon />;
110
+ export const routingNumberImage = () => <RoutingNumberImage />;
111
+ export const searchIcon = () => <SearchIcon />;
112
+ export const settingsIconSmall = () => <SettingsIconSmall />;
113
+ export const shortageIcon = () => <ShortageIcon />;
94
114
  export const statusUnknownIcon = () => <StatusUnknownIcon />;
95
- export const autopayIcon = () => <AutopayIcon />;
96
- export const kebabMenuIcon = () => <KebabMenuIcon />;
97
- export const multiCartIcon = () => <MultiCartIcon />;
98
- export const closeIcon = () => <CloseIcon />;
115
+ export const successfulIcon = () => <SuccessfulIcon />;
99
116
  export const trashIconV2 = () => <TrashIconV2 />;
100
- export const disabledPropertiesAddIcon = () => <DisabledPropertiesAddIcon />;
101
- export const disabledAccountsAddIcon = () => <DisabledAccountsAddIcon />;
102
- export const disabledPaymentMethodsAddIcon = () => (
103
- <DisabledPaymentMethodsAddIcon />
104
- );
117
+ export const verifiedEmailIcon = () => <VerifiedEmailIcon />;
118
+ export const voidedIcon = () => <VoidedIcon />;
119
+ export const personIcon = () => <PersonIcon />;
120
+ export const paymentStatusIcon = () => <PaymentStatusIcon />;
@@ -4,6 +4,8 @@ export * from "./ArrowLeftCircleIconSmall";
4
4
  export * from "./ArrowRightCircleIconSmall";
5
5
  export * from "./ArrowUpCircleIconSmall";
6
6
  export * from "./BankIconLarge";
7
+ export * from "./CaretArrowDown";
8
+ export * from "./CaretArrowUp";
7
9
  export * from "./ChargebackIconMedium";
8
10
  export * from "./ChargebackIconSmall";
9
11
  export * from "./ChargebackReversalIconMedium";
@@ -16,7 +18,7 @@ export * from "./RefundIconSmall";
16
18
  export * from "./RevenueManagementImage";
17
19
  export * from "./StandardCheckoutImage";
18
20
  export * from "./KioskImage";
19
- export * from "./PointOfSaleImage";
21
+ export * from "./CashieringImage";
20
22
  export * from "./SuccessfulIconMedium";
21
23
  export * from "./SuccessfulIconSmall";
22
24
  export * from "./XCircleIconMedium";
@@ -25,3 +27,4 @@ export * from "./KebabMenuIcon";
25
27
  export * from "./MultiCartIcon";
26
28
  export * from "./CloseIcon";
27
29
  export * from "./TrashIconV2";
30
+ export * from "./PaydotImage";
@@ -45,6 +45,8 @@ import RejectedVelocityIcon from "./RejectedVelocityIcon";
45
45
  import SuccessfulIcon from "./SuccessfulIcon";
46
46
  import VoidedIcon from "./VoidedIcon";
47
47
  import StatusUnknownIcon from "./StatusUnknownIcon";
48
+ import CaretArrowDown from "./CaretArrowDown";
49
+ import CaretArrowUp from "./CaretArrowUp";
48
50
  import CarrotIcon from "./CarrotIcon";
49
51
  import ProfileIcon from "./ProfileIcon";
50
52
  import GenericCardLarge from "./GenericCardLarge";
@@ -52,8 +54,6 @@ import EmptyCartIcon from "./EmptyCartIcon";
52
54
  import EmptyCartIconV2 from "./EmptyCartIconV2";
53
55
  import ShoppingCartIcon from "./ShoppingCartIcon";
54
56
  import TrashIcon from "./TrashIcon";
55
- import NoCustomerResultsIcon from "./NoCustomerResultsIcon";
56
- import NoPaymentResultsIcon from "./NoPaymentResultsIcon";
57
57
  import CustomerSearchIcon from "./CustomerSearchIcon";
58
58
  import PaymentSearchIcon from "./PaymentSearchIcon";
59
59
  import ResetPasswordIcon from "./ResetPasswordIcon";
@@ -67,7 +67,7 @@ import GuidedCheckoutImage from "./GuidedCheckoutImage";
67
67
  import ProfileImage from "./ProfileImage";
68
68
  import RevenueManagementImage from "./RevenueManagementImage";
69
69
  import KioskImage from "./KioskImage";
70
- import PointOfSaleImage from "./PointOfSaleImage";
70
+ import CashieringImage from "./CashieringImage";
71
71
  import FindIconSmall from "./FindIconSmall";
72
72
  import HistoryIconSmall from "./HistoryIconSmall";
73
73
  import ChargebackIconSmall from "./ChargebackIconSmall";
@@ -94,6 +94,26 @@ import TrashIconV2 from "./TrashIconV2";
94
94
  import DisabledAccountsAddIcon from "./DisabledAccountsAddIcon";
95
95
  import DisabledPropertiesAddIcon from "./DisabledPropertiesAddIcon";
96
96
  import DisabledPaymentMethodsAddIcon from "./DisabledPaymentMethodsAddIcon";
97
+ import ReversalNeededIcon from "./ReversalNeededIcon";
98
+ import OverageIcon from "./OverageIcon";
99
+ import ShortageIcon from "./ShortageIcon";
100
+ import NoResultsIcon from "./NoResultsIcon";
101
+ import AgencyIcon from "./AgencyIcon";
102
+ import PersonIcon from "./PersonIcon";
103
+ import PaymentStatusIcon from "./PaymentStatusIcon";
104
+ import PaydotImage from "./PaydotImage";
105
+ import VisaSmallIcon from "./VisaSmallIcon";
106
+ import AmExSmallIcon from "./AmExSmallIcon";
107
+ import BankGenericSmallIcon from "./BankGenericSmallIcon";
108
+ import CashSmallIcon from "./CashSmallIcon";
109
+ import DiscoverSmallIcon from "./DiscoverSmallIcon";
110
+ import GenericSmallIcon from "./GenericSmallIcon";
111
+ import MasterCardSmallIcon from "./MasterCardSmallIcon";
112
+ import WireSmallIcon from "./WireSmallIcon";
113
+ import VisaLargeIcon from "./VisaLargeIcon";
114
+ import AmExLargeIcon from "./AmExLargeIcon";
115
+ import DiscoverLargeIcon from "./DiscoverLargeIcon";
116
+ import MasterCardLargeIcon from "./MasterCardLargeIcon";
97
117
 
98
118
  export {
99
119
  AccountsIcon,
@@ -143,6 +163,8 @@ export {
143
163
  SuccessfulIcon,
144
164
  VoidedIcon,
145
165
  StatusUnknownIcon,
166
+ CaretArrowDown,
167
+ CaretArrowUp,
146
168
  CarrotIcon,
147
169
  ProfileIcon,
148
170
  GenericCardLarge,
@@ -150,8 +172,6 @@ export {
150
172
  EmptyCartIconV2,
151
173
  ShoppingCartIcon,
152
174
  TrashIcon,
153
- NoCustomerResultsIcon,
154
- NoPaymentResultsIcon,
155
175
  CustomerSearchIcon,
156
176
  PaymentSearchIcon,
157
177
  ResetPasswordIcon,
@@ -165,7 +185,7 @@ export {
165
185
  ProfileImage,
166
186
  RevenueManagementImage,
167
187
  KioskImage,
168
- PointOfSaleImage,
188
+ CashieringImage,
169
189
  FindIconSmall,
170
190
  HistoryIconSmall,
171
191
  ChargebackIconSmall,
@@ -191,5 +211,25 @@ export {
191
211
  TrashIconV2,
192
212
  DisabledAccountsAddIcon,
193
213
  DisabledPropertiesAddIcon,
194
- DisabledPaymentMethodsAddIcon
214
+ DisabledPaymentMethodsAddIcon,
215
+ ReversalNeededIcon,
216
+ OverageIcon,
217
+ ShortageIcon,
218
+ NoResultsIcon,
219
+ AgencyIcon,
220
+ PersonIcon,
221
+ PaymentStatusIcon,
222
+ PaydotImage,
223
+ VisaSmallIcon,
224
+ AmExSmallIcon,
225
+ BankGenericSmallIcon,
226
+ CashSmallIcon,
227
+ DiscoverSmallIcon,
228
+ GenericSmallIcon,
229
+ MasterCardSmallIcon,
230
+ WireSmallIcon,
231
+ VisaLargeIcon,
232
+ AmExLargeIcon,
233
+ DiscoverLargeIcon,
234
+ MasterCardLargeIcon
195
235
  };
@@ -1,7 +1,10 @@
1
1
  export * from "./alert";
2
+ export * from "./badge";
2
3
  export * from "./button-with-action";
3
4
  export * from "./button-with-link";
4
5
  export * from "./card";
6
+ export * from "./dropdown";
7
+ export * from "./sortable-table-heading";
5
8
  export * from "./form-layouts";
6
9
  export * from "./form-select";
7
10
  export * from "./icons";
@@ -12,6 +15,7 @@ export * from "./nav-footer";
12
15
  export * from "./nav-header";
13
16
  export * from "./nav-tabs";
14
17
  export * from "./paragraph";
18
+ export * from "./search";
15
19
  export * from "./searchable-select";
16
20
  export * from "./spinner";
17
21
  export * from "./table";
@@ -9,10 +9,10 @@ export { default as ButtonWithLink } from "./button-with-link";
9
9
  export { default as cardRegistry } from "./card-registry";
10
10
  export { default as Checkbox } from "./checkbox";
11
11
  export { default as CheckboxList } from "./checkbox-list";
12
+ export { default as SortableTableHeading } from "./sortable-table-heading";
12
13
  export { default as CountryDropdown } from "./country-dropdown";
13
14
  export { default as Detail } from "./detail";
14
15
  export { default as DisplayBox } from "./display-box";
15
- export { default as DisplayCard } from "./display-card";
16
16
  export { default as Dropdown } from "./dropdown";
17
17
  export * from "./form-layouts";
18
18
  export { default as FormSelect } from "./form-select";
@@ -37,6 +37,7 @@ export { default as Placeholder } from "./placeholder";
37
37
  export { default as ProcessingFee } from "./processing-fee";
38
38
  export { default as RadioButtonWithLabel } from "./radio-button-with-label";
39
39
  export { default as RadioButton } from "../molecules/radio-section/radio-button/RadioButton";
40
+ export { default as Search } from "./search";
40
41
  export { default as SearchableSelect } from "./searchable-select";
41
42
  export { default as SolidDivider } from "./solid-divider";
42
43
  export { default as Spinner } from "./spinner";
@@ -46,6 +47,7 @@ export { default as Title } from "./title";
46
47
  export { default as ToggleSwitch } from "./toggle-switch";
47
48
  export { default as TypeaheadInput } from "./typeahead-input";
48
49
  export { default as Card } from "./card";
50
+ export { default as CardType } from "./card-type";
49
51
  export { default as NavTabs } from "./nav-tabs";
50
52
  export { default as LoadingLine } from "./loading-line";
51
53
  export { default as WalletName } from "./wallet-name";
@@ -2,14 +2,17 @@ import React, { useContext } from "react";
2
2
  import { ThemeContext } from "styled-components";
3
3
 
4
4
  import ButtonWithLink from "../button-with-link";
5
+ import Spinner from "../spinner";
5
6
  import { Box, Cluster, Center, Cover, Switcher } from "../layouts";
6
7
  import Heading from "../heading";
7
8
  import Title from "../title";
8
9
  import withWindowSize from "../../withWindowSize";
10
+ import { WHITE } from "../../../constants/colors";
9
11
 
10
12
  const Jumbo = ({
11
13
  showButton,
12
14
  heading,
15
+ isHeadingLoading = false,
13
16
  buttonLink,
14
17
  subHeading,
15
18
  buttonText,
@@ -55,16 +58,28 @@ const Jumbo = ({
55
58
  <Title
56
59
  variant={isMobile ? "small" : "large"}
57
60
  as="h1"
58
- color="#ffffff"
61
+ color={WHITE}
59
62
  className="themeJumboHeading"
60
63
  extraStyles={showCartStatus && isMobile && `max-width: 60%;`}
61
64
  >
62
- {heading}
65
+ {isHeadingLoading ? (
66
+ <Spinner
67
+ size="50"
68
+ cx="25"
69
+ cy="25"
70
+ radius="12.5"
71
+ strokeWidth="3"
72
+ centerSpinner
73
+ color={WHITE}
74
+ />
75
+ ) : (
76
+ heading
77
+ )}
63
78
  </Title>
64
79
  {subHeading && (
65
80
  <Heading
66
81
  variant={isMobile ? "h6" : "h2"}
67
- color="#ffffff"
82
+ color={WHITE}
68
83
  className="themeJumboSubheading"
69
84
  >
70
85
  {subHeading}
@@ -0,0 +1,23 @@
1
+ import { Canvas, Meta, Title, Story, Controls } from '@storybook/blocks';
2
+
3
+ import * as LabeledAmountStories from './LabeledAmount.stories.js';
4
+
5
+ <Meta of={LabeledAmountStories} />
6
+
7
+ <Title />
8
+
9
+ The LabeledAmount component is a component that combines a text label with a formatted money string, for use in checkout experiences (payment details, receipts, etc). The wrapping container for the text elements is styled using flexbox, by default using the `space-between` value for the `justify-content` property. This can be changed by passing an override using the `extraStyles` prop like so:
10
+
11
+ ```
12
+ <LabeledAmount extraStyles={`justify-content: space-around`} />
13
+ ```
14
+
15
+ Currently, there are two versions of this component: LabeledAmountV1 and LabeledAmountV2. While both versions are in active use in the codebase, LabeledAmountV1 is deprecated and should not be used in new code. The difference between the two is that LabeledAmountV2 has been updated to decouple the component's rendered HTML element from its theme size variant. This allows for arbitrary HTML elements (any heading size, paragraph, span) to be used as the underlying element regardless of the component size specified in the design, preserving proper HTML semantics and accessibility.
16
+
17
+ LabeledAmountV2 takes the following props:
18
+
19
+ <Controls />
20
+
21
+ <div style={{ marginBottom: "2em"}}>
22
+ <Story />
23
+ </div>
@@ -0,0 +1,118 @@
1
+ import LabeledAmount from "./LabeledAmount";
2
+ import { Box } from "../layouts";
3
+
4
+ const meta = {
5
+ title: "Atoms/LabeledAmount",
6
+ component: LabeledAmount,
7
+ parameters: {
8
+ layout: "centered"
9
+ },
10
+ tags: ["!autodocs"],
11
+ args: {
12
+ version: "v2",
13
+ variant: "regular",
14
+ label: "Subtotal:",
15
+ amount: "$102.55",
16
+ as: "h3",
17
+ extraStyles: undefined
18
+ },
19
+ argTypes: {
20
+ version: {
21
+ description:
22
+ "The verison (v1 or v2) of the LabeledAmount component to use",
23
+ table: {
24
+ type: { summary: "string" },
25
+ defaultValue: { summary: "v1" }
26
+ }
27
+ },
28
+ variant: {
29
+ description:
30
+ "The variant (regular, extraSmall, small, large) of the LabeledAmount component to use",
31
+ table: {
32
+ type: { summary: "string" },
33
+ defaultValue: { summary: "regular" }
34
+ }
35
+ },
36
+ label: {
37
+ description: "The label to place before the amount",
38
+ table: {
39
+ type: { summary: "string" },
40
+ defaultValue: { summary: undefined }
41
+ }
42
+ },
43
+ amount: {
44
+ description: "The formatted amount value to display, as a money string",
45
+ table: {
46
+ type: { summary: "string" },
47
+ defaultValue: { summary: undefined }
48
+ }
49
+ },
50
+ as: {
51
+ description:
52
+ "The HTML element to render the component as, generally h or p element",
53
+ table: {
54
+ type: { summary: "string" },
55
+ defaultValue: { summary: "p" }
56
+ }
57
+ },
58
+ extraStyles: {
59
+ description: "Extra styles used for wrapping container",
60
+ table: {
61
+ type: { summary: "string" },
62
+ defaultvalue: { summary: undefined }
63
+ }
64
+ }
65
+ }
66
+ };
67
+
68
+ export default meta;
69
+
70
+ export const LabeledAmountDefault = {
71
+ render: args => (
72
+ <Box minWidth="300px" padding="0">
73
+ <LabeledAmount {...args} />
74
+ </Box>
75
+ )
76
+ };
77
+
78
+ export const LabeledAmountHeading = {
79
+ render: args => (
80
+ <Box minWidth="450px" padding="0">
81
+ <LabeledAmount {...args} />
82
+ </Box>
83
+ ),
84
+ args: {
85
+ as: "h3",
86
+ label: "Total paid:",
87
+ amount: "$626.93",
88
+ variant: "large"
89
+ }
90
+ };
91
+
92
+ export const ExtraSmallLabeledAmount = {
93
+ render: args => (
94
+ <Box minWidth="150px" padding="0">
95
+ <LabeledAmount {...args} />
96
+ </Box>
97
+ ),
98
+ args: {
99
+ as: "h6",
100
+ label: "Fees:",
101
+ amount: "$2.50",
102
+ variant: "extraSmall"
103
+ }
104
+ };
105
+
106
+ export const SmallLabeledAmount = {
107
+ render: args => (
108
+ <Box minWidth="150px" padding="0">
109
+ <LabeledAmount {...args} />
110
+ </Box>
111
+ ),
112
+ args: {
113
+ as: "h4",
114
+ label: "Tax:",
115
+ amount: "$20.75",
116
+ variant: "small"
117
+ }
118
+ };
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import React, { forwardRef } from "react";
2
2
  import styled, { css } from "styled-components";
3
3
  import { ROYAL_BLUE } from "../../../constants/colors";
4
4
  /*
@@ -11,27 +11,39 @@ import { ROYAL_BLUE } from "../../../constants/colors";
11
11
 
12
12
  /* eslint-disable no-unused-vars */
13
13
  export const BoxWrapper = styled(
14
- ({
15
- activeStyles,
16
- focusStyles,
17
- hoverStyles,
18
- disabledStyles,
19
- extraStyles,
20
- borderSize,
21
- borderColor,
22
- borderWidthOverride,
23
- borderRadius,
24
- textAlign,
25
- boxShadow,
26
- minHeight,
27
- minWidth,
28
- maxWidth,
29
- padding,
30
- hiddenStyles,
31
- ariaControls,
32
- ariaLabel,
33
- ...props
34
- }) => <div aria-controls={ariaControls} aria-label={ariaLabel} {...props} />
14
+ forwardRef(
15
+ (
16
+ {
17
+ activeStyles,
18
+ focusStyles,
19
+ hoverStyles,
20
+ disabledStyles,
21
+ extraStyles,
22
+ borderSize,
23
+ borderColor,
24
+ borderWidthOverride,
25
+ borderRadius,
26
+ textAlign,
27
+ boxShadow,
28
+ minHeight,
29
+ minWidth,
30
+ maxWidth,
31
+ padding,
32
+ hiddenStyles,
33
+ ariaControls,
34
+ ariaLabel,
35
+ ...props
36
+ },
37
+ ref
38
+ ) => (
39
+ <div
40
+ ref={ref}
41
+ aria-controls={ariaControls}
42
+ aria-label={ariaLabel}
43
+ {...props}
44
+ />
45
+ )
46
+ )
35
47
  )`
36
48
  position: relative;
37
49
  box-sizing: border-box;
@@ -4,6 +4,7 @@ export const CenterWrapper = styled.div`
4
4
  box-sizing: content-box;
5
5
  margin-left: auto;
6
6
  margin-right: auto;
7
+ width: ${({ width }) => width || "auto"};
7
8
  max-width: ${({ maxWidth }) => maxWidth};
8
9
  padding-left: ${({ gutters }) => gutters};
9
10
  padding-right: ${({ gutters }) => gutters};
@@ -15,4 +16,5 @@ export const CenterWrapper = styled.div`
15
16
  align-items: center;
16
17
  `
17
18
  : ``};
19
+ ${({ extraStyles }) => extraStyles}
18
20
  `;
@@ -1,5 +1,5 @@
1
1
  import React, { Fragment, forwardRef } from "react";
2
- import { MotionWrapper } from "./Motion.styled";
2
+ import { MotionWrapper, MotionSpanWrapper } from "./Motion.styled";
3
3
  import { safeChildren } from "../../../util/general";
4
4
 
5
5
  /*
@@ -38,11 +38,30 @@ import { safeChildren } from "../../../util/general";
38
38
  */
39
39
 
40
40
  export const Motion = forwardRef(
41
- ({ position = "relative", padding = "0", children, ...rest }, ref) => (
42
- <MotionWrapper position={position} padding={padding} ref={ref} {...rest}>
43
- {safeChildren(children, <Fragment />)}
44
- </MotionWrapper>
45
- )
41
+ (
42
+ {
43
+ position = "relative",
44
+ padding = "0",
45
+ children,
46
+ useSpan = false,
47
+ ...rest
48
+ },
49
+ ref
50
+ ) =>
51
+ useSpan ? (
52
+ <MotionSpanWrapper
53
+ position={position}
54
+ padding={padding}
55
+ ref={ref}
56
+ {...rest}
57
+ >
58
+ {safeChildren(children, <Fragment />)}
59
+ </MotionSpanWrapper>
60
+ ) : (
61
+ <MotionWrapper position={position} padding={padding} ref={ref} {...rest}>
62
+ {safeChildren(children, <Fragment />)}
63
+ </MotionWrapper>
64
+ )
46
65
  );
47
66
 
48
67
  export default Motion;