@economic/taco 0.0.14-alpha.0 → 0.0.15-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/README.md +84 -84
  2. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  3. package/dist/esm/components/Backdrop/Backdrop.js +1 -1
  4. package/dist/esm/components/Backdrop/Backdrop.js.map +1 -1
  5. package/dist/esm/components/Badge/Badge.js.map +1 -1
  6. package/dist/esm/components/Banner/Banner.js.map +1 -1
  7. package/dist/esm/components/Banner/util.js +1 -1
  8. package/dist/esm/components/Banner/util.js.map +1 -1
  9. package/dist/esm/components/Button/Button.js +15 -1
  10. package/dist/esm/components/Button/Button.js.map +1 -1
  11. package/dist/esm/components/Button/util.js +23 -48
  12. package/dist/esm/components/Button/util.js.map +1 -1
  13. package/dist/esm/components/Calendar/Calendar.js +3 -1
  14. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  15. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  16. package/dist/esm/components/Combobox/Combobox.js.map +1 -1
  17. package/dist/esm/components/Combobox/useCombobox.js +84 -64
  18. package/dist/esm/components/Combobox/useCombobox.js.map +1 -1
  19. package/dist/esm/components/Datepicker/Datepicker.js.map +1 -1
  20. package/dist/esm/components/Datepicker/useDatepicker.js +34 -27
  21. package/dist/esm/components/Datepicker/useDatepicker.js.map +1 -1
  22. package/dist/esm/components/Dialog/Context.js +3 -3
  23. package/dist/esm/components/Dialog/Context.js.map +1 -1
  24. package/dist/esm/components/Dialog/Dialog.js +4 -2
  25. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  26. package/dist/esm/components/Dialog/components/Content.js +44 -39
  27. package/dist/esm/components/Dialog/components/Content.js.map +1 -1
  28. package/dist/esm/components/Dialog/components/Drawer.js +3 -3
  29. package/dist/esm/components/Dialog/components/Drawer.js.map +1 -1
  30. package/dist/esm/components/Dialog/components/Extra.js +2 -2
  31. package/dist/esm/components/Dialog/components/Extra.js.map +1 -1
  32. package/dist/esm/components/Dialog/components/Trigger.js +2 -2
  33. package/dist/esm/components/Dialog/components/Trigger.js.map +1 -1
  34. package/dist/esm/components/Field/Field.js.map +1 -1
  35. package/dist/esm/components/Form/Form.js.map +1 -1
  36. package/dist/esm/components/Group/Group.js.map +1 -1
  37. package/dist/esm/components/Hanger/Hanger.js.map +1 -1
  38. package/dist/esm/components/Icon/Icon.js.map +1 -1
  39. package/dist/esm/components/Icon/components/AccountPreview.js.map +1 -1
  40. package/dist/esm/components/Icon/components/Accounting.js.map +1 -1
  41. package/dist/esm/components/Icon/components/AccountingYear.js.map +1 -1
  42. package/dist/esm/components/Icon/components/AccountingYearCancel.js.map +1 -1
  43. package/dist/esm/components/Icon/components/ArrowBottom.js.map +1 -1
  44. package/dist/esm/components/Icon/components/ArrowDown.js.map +1 -1
  45. package/dist/esm/components/Icon/components/ArrowEnd.js.map +1 -1
  46. package/dist/esm/components/Icon/components/ArrowLeft.js.map +1 -1
  47. package/dist/esm/components/Icon/components/ArrowRight.js.map +1 -1
  48. package/dist/esm/components/Icon/components/ArrowStart.js.map +1 -1
  49. package/dist/esm/components/Icon/components/ArrowTop.js.map +1 -1
  50. package/dist/esm/components/Icon/components/ArrowUp.js.map +1 -1
  51. package/dist/esm/components/Icon/components/Attach.js.map +1 -1
  52. package/dist/esm/components/Icon/components/AttachAuto.js.map +1 -1
  53. package/dist/esm/components/Icon/components/AttachCancel.js.map +1 -1
  54. package/dist/esm/components/Icon/components/Autotext.js.map +1 -1
  55. package/dist/esm/components/Icon/components/AutotextInsert.js.map +1 -1
  56. package/dist/esm/components/Icon/components/Basic.js.map +1 -1
  57. package/dist/esm/components/Icon/components/BasicTabs.js.map +1 -1
  58. package/dist/esm/components/Icon/components/BellSolid.js.map +1 -1
  59. package/dist/esm/components/Icon/components/Book.js.map +1 -1
  60. package/dist/esm/components/Icon/components/Booking.js.map +1 -1
  61. package/dist/esm/components/Icon/components/Budget.js.map +1 -1
  62. package/dist/esm/components/Icon/components/Calendar.js.map +1 -1
  63. package/dist/esm/components/Icon/components/CashAccount.js.map +1 -1
  64. package/dist/esm/components/Icon/components/CashReports.js.map +1 -1
  65. package/dist/esm/components/Icon/components/Chat.js.map +1 -1
  66. package/dist/esm/components/Icon/components/ChatSolid.js.map +1 -1
  67. package/dist/esm/components/Icon/components/ChevronDown.js.map +1 -1
  68. package/dist/esm/components/Icon/components/ChevronDownDouble.js.map +1 -1
  69. package/dist/esm/components/Icon/components/ChevronDownSolid.js.map +1 -1
  70. package/dist/esm/components/Icon/components/ChevronLeft.js.map +1 -1
  71. package/dist/esm/components/Icon/components/ChevronLeftDouble.js.map +1 -1
  72. package/dist/esm/components/Icon/components/ChevronRight.js.map +1 -1
  73. package/dist/esm/components/Icon/components/ChevronRightDouble.js.map +1 -1
  74. package/dist/esm/components/Icon/components/ChevronUp.js.map +1 -1
  75. package/dist/esm/components/Icon/components/ChevronUpDouble.js.map +1 -1
  76. package/dist/esm/components/Icon/components/ChevronUpSolid.js.map +1 -1
  77. package/dist/esm/components/Icon/components/Clamp.js.map +1 -1
  78. package/dist/esm/components/Icon/components/ClampOpen.js.map +1 -1
  79. package/dist/esm/components/Icon/components/Close.js.map +1 -1
  80. package/dist/esm/components/Icon/components/ConnectionEnable.js.map +1 -1
  81. package/dist/esm/components/Icon/components/ConnectionRevoke.js.map +1 -1
  82. package/dist/esm/components/Icon/components/Contacts.js.map +1 -1
  83. package/dist/esm/components/Icon/components/Copy.js.map +1 -1
  84. package/dist/esm/components/Icon/components/Courses.js.map +1 -1
  85. package/dist/esm/components/Icon/components/Credit.js.map +1 -1
  86. package/dist/esm/components/Icon/components/Delete.js.map +1 -1
  87. package/dist/esm/components/Icon/components/DeletePermanently.js.map +1 -1
  88. package/dist/esm/components/Icon/components/Depecriate.js.map +1 -1
  89. package/dist/esm/components/Icon/components/Developer.js.map +1 -1
  90. package/dist/esm/components/Icon/components/DistributionTemplate.js.map +1 -1
  91. package/dist/esm/components/Icon/components/Document.js.map +1 -1
  92. package/dist/esm/components/Icon/components/DocumentApprove.js.map +1 -1
  93. package/dist/esm/components/Icon/components/DocumentCreateEntry.js.map +1 -1
  94. package/dist/esm/components/Icon/components/DocumentCut.js.map +1 -1
  95. package/dist/esm/components/Icon/components/DocumentError.js.map +1 -1
  96. package/dist/esm/components/Icon/components/DocumentIsolatePage.js.map +1 -1
  97. package/dist/esm/components/Icon/components/DocumentMerge.js.map +1 -1
  98. package/dist/esm/components/Icon/components/DocumentMove.js.map +1 -1
  99. package/dist/esm/components/Icon/components/DocumentPreview.js.map +1 -1
  100. package/dist/esm/components/Icon/components/DocumentReceived.js.map +1 -1
  101. package/dist/esm/components/Icon/components/DocumentRejectedRequest.js.map +1 -1
  102. package/dist/esm/components/Icon/components/DocumentSplit.js.map +1 -1
  103. package/dist/esm/components/Icon/components/DocumentTime.js.map +1 -1
  104. package/dist/esm/components/Icon/components/Download.js.map +1 -1
  105. package/dist/esm/components/Icon/components/Drag.js.map +1 -1
  106. package/dist/esm/components/Icon/components/ECopedia.js.map +1 -1
  107. package/dist/esm/components/Icon/components/ESignature.js.map +1 -1
  108. package/dist/esm/components/Icon/components/Edit.js.map +1 -1
  109. package/dist/esm/components/Icon/components/EllipsisHorizontal.js.map +1 -1
  110. package/dist/esm/components/Icon/components/EllipsisVertical.js.map +1 -1
  111. package/dist/esm/components/Icon/components/EntriesOnAccount.js.map +1 -1
  112. package/dist/esm/components/Icon/components/EntriesOpen.js.map +1 -1
  113. package/dist/esm/components/Icon/components/EntriesWarning.js.map +1 -1
  114. package/dist/esm/components/Icon/components/EntryTypeCustomerInvoice.js.map +1 -1
  115. package/dist/esm/components/Icon/components/EntryTypeCustomerPayment.js.map +1 -1
  116. package/dist/esm/components/Icon/components/EntryTypeJournalEntry.js.map +1 -1
  117. package/dist/esm/components/Icon/components/EntryTypeManualCustomerInvoice.js.map +1 -1
  118. package/dist/esm/components/Icon/components/EntryTypeSupplierInvoice.js.map +1 -1
  119. package/dist/esm/components/Icon/components/EntryTypeSupplierPayment.js.map +1 -1
  120. package/dist/esm/components/Icon/components/Envelope.js.map +1 -1
  121. package/dist/esm/components/Icon/components/EnvelopeApproved.js.map +1 -1
  122. package/dist/esm/components/Icon/components/ExpandView.js.map +1 -1
  123. package/dist/esm/components/Icon/components/Expenses.js.map +1 -1
  124. package/dist/esm/components/Icon/components/Export.js.map +1 -1
  125. package/dist/esm/components/Icon/components/ExportToExcel.js.map +1 -1
  126. package/dist/esm/components/Icon/components/ExportToExcelCopy.js.map +1 -1
  127. package/dist/esm/components/Icon/components/Filter.js.map +1 -1
  128. package/dist/esm/components/Icon/components/FilterSolid.js.map +1 -1
  129. package/dist/esm/components/Icon/components/GraphSolid.js.map +1 -1
  130. package/dist/esm/components/Icon/components/Hash.js.map +1 -1
  131. package/dist/esm/components/Icon/components/Home.js.map +1 -1
  132. package/dist/esm/components/Icon/components/Images.js.map +1 -1
  133. package/dist/esm/components/Icon/components/Import.js.map +1 -1
  134. package/dist/esm/components/Icon/components/Inbox.js.map +1 -1
  135. package/dist/esm/components/Icon/components/InboxSmart.js.map +1 -1
  136. package/dist/esm/components/Icon/components/Info.js.map +1 -1
  137. package/dist/esm/components/Icon/components/Inventory.js.map +1 -1
  138. package/dist/esm/components/Icon/components/InventoryMatrix.js.map +1 -1
  139. package/dist/esm/components/Icon/components/JournalPro.js.map +1 -1
  140. package/dist/esm/components/Icon/components/Layout.js.map +1 -1
  141. package/dist/esm/components/Icon/components/LayoutBoth.js.map +1 -1
  142. package/dist/esm/components/Icon/components/LayoutFirst.js.map +1 -1
  143. package/dist/esm/components/Icon/components/LayoutLast.js.map +1 -1
  144. package/dist/esm/components/Icon/components/LayoutNone.js.map +1 -1
  145. package/dist/esm/components/Icon/components/LedgerCard.js.map +1 -1
  146. package/dist/esm/components/Icon/components/LedgerCardCustomerReminder.js.map +1 -1
  147. package/dist/esm/components/Icon/components/LedgerCardManualCustomerInvoice.js.map +1 -1
  148. package/dist/esm/components/Icon/components/LedgerCardObsoleteStock.js.map +1 -1
  149. package/dist/esm/components/Icon/components/LedgerCardOpeningEntry.js.map +1 -1
  150. package/dist/esm/components/Icon/components/LedgerCardReservedEntry.js.map +1 -1
  151. package/dist/esm/components/Icon/components/LedgerCardShrinkagePilferage.js.map +1 -1
  152. package/dist/esm/components/Icon/components/LedgerCardStockAdjustment.js.map +1 -1
  153. package/dist/esm/components/Icon/components/LedgerCardTransferredOpeningEntry.js.map +1 -1
  154. package/dist/esm/components/Icon/components/Lightbulb.js.map +1 -1
  155. package/dist/esm/components/Icon/components/Line.js.map +1 -1
  156. package/dist/esm/components/Icon/components/List.js.map +1 -1
  157. package/dist/esm/components/Icon/components/ListBulleted.js.map +1 -1
  158. package/dist/esm/components/Icon/components/ListSearch.js.map +1 -1
  159. package/dist/esm/components/Icon/components/LockOpen.js.map +1 -1
  160. package/dist/esm/components/Icon/components/Log.js.map +1 -1
  161. package/dist/esm/components/Icon/components/Market.js.map +1 -1
  162. package/dist/esm/components/Icon/components/MatchAmount.js.map +1 -1
  163. package/dist/esm/components/Icon/components/MatchEntries.js.map +1 -1
  164. package/dist/esm/components/Icon/components/Mileage.js.map +1 -1
  165. package/dist/esm/components/Icon/components/Minus.js.map +1 -1
  166. package/dist/esm/components/Icon/components/ModalResize.js.map +1 -1
  167. package/dist/esm/components/Icon/components/ModalShrink.js.map +1 -1
  168. package/dist/esm/components/Icon/components/More.js.map +1 -1
  169. package/dist/esm/components/Icon/components/MoreSolid.js.map +1 -1
  170. package/dist/esm/components/Icon/components/Move.js.map +1 -1
  171. package/dist/esm/components/Icon/components/NavigationList.js.map +1 -1
  172. package/dist/esm/components/Icon/components/Note.js.map +1 -1
  173. package/dist/esm/components/Icon/components/NoteFollowUp.js.map +1 -1
  174. package/dist/esm/components/Icon/components/NoteRead.js.map +1 -1
  175. package/dist/esm/components/Icon/components/PartnerApi.js.map +1 -1
  176. package/dist/esm/components/Icon/components/Period.js.map +1 -1
  177. package/dist/esm/components/Icon/components/PersonChange.js.map +1 -1
  178. package/dist/esm/components/Icon/components/PersonMinus.js.map +1 -1
  179. package/dist/esm/components/Icon/components/PersonPlus.js.map +1 -1
  180. package/dist/esm/components/Icon/components/PersonTick.js.map +1 -1
  181. package/dist/esm/components/Icon/components/Play.js.map +1 -1
  182. package/dist/esm/components/Icon/components/PlusCircle.js.map +1 -1
  183. package/dist/esm/components/Icon/components/PlusMinus.js.map +1 -1
  184. package/dist/esm/components/Icon/components/Print.js.map +1 -1
  185. package/dist/esm/components/Icon/components/ProcessPayment.js.map +1 -1
  186. package/dist/esm/components/Icon/components/ProductLedgerCard.js.map +1 -1
  187. package/dist/esm/components/Icon/components/ProjectCards.js.map +1 -1
  188. package/dist/esm/components/Icon/components/Projects.js.map +1 -1
  189. package/dist/esm/components/Icon/components/Quicklinks.js.map +1 -1
  190. package/dist/esm/components/Icon/components/RatingBankruptcy.js.map +1 -1
  191. package/dist/esm/components/Icon/components/RatingPaymentProblems.js.map +1 -1
  192. package/dist/esm/components/Icon/components/Reconciled.js.map +1 -1
  193. package/dist/esm/components/Icon/components/Refresh.js.map +1 -1
  194. package/dist/esm/components/Icon/components/Report.js.map +1 -1
  195. package/dist/esm/components/Icon/components/ReportSolid.js.map +1 -1
  196. package/dist/esm/components/Icon/components/Restore.js.map +1 -1
  197. package/dist/esm/components/Icon/components/RotateLeft.js.map +1 -1
  198. package/dist/esm/components/Icon/components/RotateRight.js.map +1 -1
  199. package/dist/esm/components/Icon/components/Sales.js.map +1 -1
  200. package/dist/esm/components/Icon/components/Search.js.map +1 -1
  201. package/dist/esm/components/Icon/components/SearchBold.js.map +1 -1
  202. package/dist/esm/components/Icon/components/Secure.js.map +1 -1
  203. package/dist/esm/components/Icon/components/SecureTick.js.map +1 -1
  204. package/dist/esm/components/Icon/components/Settings.js.map +1 -1
  205. package/dist/esm/components/Icon/components/SettingsSolid.js.map +1 -1
  206. package/dist/esm/components/Icon/components/Shortcuts.js.map +1 -1
  207. package/dist/esm/components/Icon/components/ShowAll.js.map +1 -1
  208. package/dist/esm/components/Icon/components/ShowLess.js.map +1 -1
  209. package/dist/esm/components/Icon/components/ShowMore.js.map +1 -1
  210. package/dist/esm/components/Icon/components/ShowTemplate.js.map +1 -1
  211. package/dist/esm/components/Icon/components/Sliders.js.map +1 -1
  212. package/dist/esm/components/Icon/components/Smartpay.js.map +1 -1
  213. package/dist/esm/components/Icon/components/SortBy.js.map +1 -1
  214. package/dist/esm/components/Icon/components/Spinner.js.map +1 -1
  215. package/dist/esm/components/Icon/components/Star.js.map +1 -1
  216. package/dist/esm/components/Icon/components/StarSolid.js.map +1 -1
  217. package/dist/esm/components/Icon/components/Subscriptions.js.map +1 -1
  218. package/dist/esm/components/Icon/components/SystemEntries.js.map +1 -1
  219. package/dist/esm/components/Icon/components/Tag.js.map +1 -1
  220. package/dist/esm/components/Icon/components/TemplateOverride.js.map +1 -1
  221. package/dist/esm/components/Icon/components/Templates.js.map +1 -1
  222. package/dist/esm/components/Icon/components/Thumb.js.map +1 -1
  223. package/dist/esm/components/Icon/components/ThumbBoth.js.map +1 -1
  224. package/dist/esm/components/Icon/components/ThumbDown.js.map +1 -1
  225. package/dist/esm/components/Icon/components/ThumbDownSolid.js.map +1 -1
  226. package/dist/esm/components/Icon/components/ThumbUpSolid.js.map +1 -1
  227. package/dist/esm/components/Icon/components/Tick.js.map +1 -1
  228. package/dist/esm/components/Icon/components/TickCircle.js.map +1 -1
  229. package/dist/esm/components/Icon/components/Time.js.map +1 -1
  230. package/dist/esm/components/Icon/components/Transfer.js.map +1 -1
  231. package/dist/esm/components/Icon/components/TransferCancel.js.map +1 -1
  232. package/dist/esm/components/Icon/components/TransferLocked.js.map +1 -1
  233. package/dist/esm/components/Icon/components/Undock.js.map +1 -1
  234. package/dist/esm/components/Icon/components/Unreconciled.js.map +1 -1
  235. package/dist/esm/components/Icon/components/Warning.js.map +1 -1
  236. package/dist/esm/components/Icon/components/Webshop.js.map +1 -1
  237. package/dist/esm/components/Icon/components/Website.js.map +1 -1
  238. package/dist/esm/components/Icon/components/Workflow.js.map +1 -1
  239. package/dist/esm/components/Icon/components/Zoom.js.map +1 -1
  240. package/dist/esm/components/Icon/components/index.js +4 -4
  241. package/dist/esm/components/Icon/components/index.js.map +1 -1
  242. package/dist/esm/components/IconButton/IconButton.js.map +1 -1
  243. package/dist/esm/components/Input/Input.js +19 -2
  244. package/dist/esm/components/Input/Input.js.map +1 -1
  245. package/dist/esm/components/Input/util.js +8 -9
  246. package/dist/esm/components/Input/util.js.map +1 -1
  247. package/dist/esm/components/Listbox/Listbox.js.map +1 -1
  248. package/dist/esm/components/Listbox/ScrollableList.js +82 -63
  249. package/dist/esm/components/Listbox/ScrollableList.js.map +1 -1
  250. package/dist/esm/components/Listbox/useListbox.js +58 -49
  251. package/dist/esm/components/Listbox/useListbox.js.map +1 -1
  252. package/dist/esm/components/Listbox/useMultiListbox.js +91 -63
  253. package/dist/esm/components/Listbox/useMultiListbox.js.map +1 -1
  254. package/dist/esm/components/Listbox/useTypeahead.js +9 -10
  255. package/dist/esm/components/Listbox/useTypeahead.js.map +1 -1
  256. package/dist/esm/components/Listbox/util.js +84 -48
  257. package/dist/esm/components/Listbox/util.js.map +1 -1
  258. package/dist/esm/components/Menu/Context.js +2 -2
  259. package/dist/esm/components/Menu/Context.js.map +1 -1
  260. package/dist/esm/components/Menu/Menu.js.map +1 -1
  261. package/dist/esm/components/Menu/components/Checkbox.js +9 -8
  262. package/dist/esm/components/Menu/components/Checkbox.js.map +1 -1
  263. package/dist/esm/components/Menu/components/Content.js +13 -10
  264. package/dist/esm/components/Menu/components/Content.js.map +1 -1
  265. package/dist/esm/components/Menu/components/Header.js +4 -4
  266. package/dist/esm/components/Menu/components/Header.js.map +1 -1
  267. package/dist/esm/components/Menu/components/Item.js +35 -34
  268. package/dist/esm/components/Menu/components/Item.js.map +1 -1
  269. package/dist/esm/components/Menu/components/Link.js +8 -7
  270. package/dist/esm/components/Menu/components/Link.js.map +1 -1
  271. package/dist/esm/components/Menu/components/RadioGroup.js +18 -16
  272. package/dist/esm/components/Menu/components/RadioGroup.js.map +1 -1
  273. package/dist/esm/components/Menu/components/Separator.js +4 -4
  274. package/dist/esm/components/Menu/components/Separator.js.map +1 -1
  275. package/dist/esm/components/Menu/components/Trigger.js +5 -5
  276. package/dist/esm/components/Menu/components/Trigger.js.map +1 -1
  277. package/dist/esm/components/Navigation/Navigation.js.map +1 -1
  278. package/dist/esm/components/Pagination/PageNumbers.js +28 -23
  279. package/dist/esm/components/Pagination/PageNumbers.js.map +1 -1
  280. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  281. package/dist/esm/components/Pagination/usePagination.js +21 -7
  282. package/dist/esm/components/Pagination/usePagination.js.map +1 -1
  283. package/dist/esm/components/Pagination/usePaginationShortcuts.js +9 -9
  284. package/dist/esm/components/Pagination/usePaginationShortcuts.js.map +1 -1
  285. package/dist/esm/components/Popover/Popover.js.map +1 -1
  286. package/dist/esm/components/Popover/Primitives.js +30 -27
  287. package/dist/esm/components/Popover/Primitives.js.map +1 -1
  288. package/dist/esm/components/Progress/Progress.js.map +1 -1
  289. package/dist/esm/components/Provider/Provider.js.map +1 -1
  290. package/dist/esm/components/RadioGroup/RadioGroup.js.map +1 -1
  291. package/dist/esm/components/SearchInput/SearchInput.js +4 -2
  292. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  293. package/dist/esm/components/Select/Select.js.map +1 -1
  294. package/dist/esm/components/Select/useSelect.js +82 -63
  295. package/dist/esm/components/Select/useSelect.js.map +1 -1
  296. package/dist/esm/components/Spinner/Spinner.js.map +1 -1
  297. package/dist/esm/components/Switch/Switch.js.map +1 -1
  298. package/dist/esm/components/Table/components/BaseTable.js +30 -23
  299. package/dist/esm/components/Table/components/BaseTable.js.map +1 -1
  300. package/dist/esm/components/Table/components/PaginatedTable.js +7 -3
  301. package/dist/esm/components/Table/components/PaginatedTable.js.map +1 -1
  302. package/dist/esm/components/Table/components/Table.js +25 -18
  303. package/dist/esm/components/Table/components/Table.js.map +1 -1
  304. package/dist/esm/components/Table/components/WindowedTable.js +104 -88
  305. package/dist/esm/components/Table/components/WindowedTable.js.map +1 -1
  306. package/dist/esm/components/Table/hooks/plugins/useRowActions.js +146 -122
  307. package/dist/esm/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  308. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js +61 -57
  309. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  310. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js +36 -39
  311. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  312. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js +90 -80
  313. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  314. package/dist/esm/components/Table/hooks/useRowCreation.js +64 -29
  315. package/dist/esm/components/Table/hooks/useRowCreation.js.map +1 -1
  316. package/dist/esm/components/Table/hooks/useTable.js +141 -119
  317. package/dist/esm/components/Table/hooks/useTable.js.map +1 -1
  318. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js +18 -13
  319. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  320. package/dist/esm/components/Table/util/renderColumn.js +10 -10
  321. package/dist/esm/components/Table/util/renderColumn.js.map +1 -1
  322. package/dist/esm/components/Table/util/renderRow.js +46 -37
  323. package/dist/esm/components/Table/util/renderRow.js.map +1 -1
  324. package/dist/esm/components/Table/util/rowIndexPath.js +16 -14
  325. package/dist/esm/components/Table/util/rowIndexPath.js.map +1 -1
  326. package/dist/esm/components/Table/util/sortTypes.js +31 -23
  327. package/dist/esm/components/Table/util/sortTypes.js.map +1 -1
  328. package/dist/esm/components/Table/util.js +41 -29
  329. package/dist/esm/components/Table/util.js.map +1 -1
  330. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  331. package/dist/esm/components/Textarea/Textarea.js +21 -3
  332. package/dist/esm/components/Textarea/Textarea.js.map +1 -1
  333. package/dist/esm/components/Toast/Toast.js +21 -20
  334. package/dist/esm/components/Toast/Toast.js.map +1 -1
  335. package/dist/esm/components/Toast/Toaster.js.map +1 -1
  336. package/dist/esm/components/Toast/util.js +2 -2
  337. package/dist/esm/components/Toast/util.js.map +1 -1
  338. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  339. package/dist/esm/components/Tour/Tour.js.map +1 -1
  340. package/dist/esm/components/Treeview/Treeview.js.map +1 -1
  341. package/dist/esm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  342. package/dist/esm/index.css +637 -634
  343. package/dist/esm/index.js +2 -1
  344. package/dist/esm/index.js.map +1 -1
  345. package/dist/esm/primitives/Button.js +13 -9
  346. package/dist/esm/primitives/Button.js.map +1 -1
  347. package/dist/esm/utils/date.js.map +1 -1
  348. package/dist/esm/utils/hooks/useBoundingClientRectListener.js +20 -12
  349. package/dist/esm/utils/hooks/useBoundingClientRectListener.js.map +1 -1
  350. package/dist/esm/utils/hooks/useDraggable.js +18 -16
  351. package/dist/esm/utils/hooks/useDraggable.js.map +1 -1
  352. package/dist/esm/utils/hooks/useDropTarget.js +10 -7
  353. package/dist/esm/utils/hooks/useDropTarget.js.map +1 -1
  354. package/dist/esm/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  355. package/dist/esm/utils/hooks/useListScrollTo.js.map +1 -1
  356. package/dist/esm/utils/hooks/useOnClickOutside.js.map +1 -1
  357. package/dist/esm/utils/hooks/useProxiedRef.js +3 -3
  358. package/dist/esm/utils/hooks/useProxiedRef.js.map +1 -1
  359. package/dist/esm/utils/hooks/useTimer.js +17 -9
  360. package/dist/esm/utils/hooks/useTimer.js.map +1 -1
  361. package/dist/esm/utils/input.js +11 -7
  362. package/dist/esm/utils/input.js.map +1 -1
  363. package/dist/esm/utils/mergeRefs.js +2 -2
  364. package/dist/esm/utils/mergeRefs.js.map +1 -1
  365. package/dist/esm/utils/taillwind.js +2 -2
  366. package/dist/esm/utils/taillwind.js.map +1 -1
  367. package/dist/index.css +637 -634
  368. package/dist/index.d.ts +1 -0
  369. package/dist/taco.cjs.development.js +1923 -1559
  370. package/dist/taco.cjs.development.js.map +1 -1
  371. package/dist/taco.cjs.production.min.js +1 -1
  372. package/dist/taco.cjs.production.min.js.map +1 -1
  373. package/package.json +2 -2
  374. package/plugins/tailwindcss-aria-attributes.js +73 -73
  375. package/tailwind.config.js +297 -297
  376. package/types.json +2 -2
@@ -1,9 +1,17 @@
1
- const getTime = value => {
2
- const parsedValue = typeof value === 'string' ? new Date(value) : value;
1
+ var getTime = function getTime(value) {
2
+ var parsedValue = typeof value === 'string' ? new Date(value) : value;
3
3
  return parsedValue !== null && parsedValue !== void 0 && parsedValue.getTime ? parsedValue.getTime() : undefined;
4
4
  };
5
5
 
6
- const getNumber = (amount = '', decimalSeparator = ',') => {
6
+ var getNumber = function getNumber(amount, decimalSeparator) {
7
+ if (amount === void 0) {
8
+ amount = '';
9
+ }
10
+
11
+ if (decimalSeparator === void 0) {
12
+ decimalSeparator = ',';
13
+ }
14
+
7
15
  if (typeof amount === 'number') {
8
16
  return amount;
9
17
  }
@@ -12,7 +20,7 @@ const getNumber = (amount = '', decimalSeparator = ',') => {
12
20
  return undefined;
13
21
  }
14
22
 
15
- let value;
23
+ var value;
16
24
 
17
25
  if (decimalSeparator === ',') {
18
26
  // replace digit seperator then replace decimal separator
@@ -25,7 +33,7 @@ const getNumber = (amount = '', decimalSeparator = ',') => {
25
33
  return Number.isNaN(value) ? undefined : value;
26
34
  };
27
35
 
28
- const getString = value => {
36
+ var getString = function getString(value) {
29
37
  if (value) {
30
38
  return String(value).toLowerCase();
31
39
  }
@@ -33,7 +41,7 @@ const getString = value => {
33
41
  return undefined;
34
42
  };
35
43
 
36
- const guess = value => {
44
+ var guess = function guess(value) {
37
45
  if (typeof value === 'boolean') {
38
46
  return !!value;
39
47
  }
@@ -41,7 +49,7 @@ const guess = value => {
41
49
  return isNaN(value) ? getString(value) : Number(value);
42
50
  };
43
51
 
44
- const compareBasic = (a, b) => {
52
+ var compareBasic = function compareBasic(a, b) {
45
53
  // places undefined values first in ascending order instead of descending
46
54
  if (a !== undefined && b === undefined) {
47
55
  return 1;
@@ -50,30 +58,30 @@ const compareBasic = (a, b) => {
50
58
  return a === b ? 0 : a > b ? 1 : -1;
51
59
  };
52
60
 
53
- const sortTypes = {
54
- datetime: (rowA, rowB, columnId) => {
55
- const a = getTime(rowA.values[columnId]);
56
- const b = getTime(rowB.values[columnId]);
61
+ var sortTypes = {
62
+ datetime: function datetime(rowA, rowB, columnId) {
63
+ var a = getTime(rowA.values[columnId]);
64
+ var b = getTime(rowB.values[columnId]);
57
65
  return compareBasic(a, b);
58
66
  },
59
- string: (rowA, rowB, columnId) => {
60
- const a = getString(rowA.values[columnId]);
61
- const b = getString(rowB.values[columnId]);
67
+ string: function string(rowA, rowB, columnId) {
68
+ var a = getString(rowA.values[columnId]);
69
+ var b = getString(rowB.values[columnId]);
62
70
  return compareBasic(a, b);
63
71
  },
64
- number: (rowA, rowB, columnId) => {
65
- const a = getNumber(rowA.values[columnId]);
66
- const b = getNumber(rowB.values[columnId]);
72
+ number: function number(rowA, rowB, columnId) {
73
+ var a = getNumber(rowA.values[columnId]);
74
+ var b = getNumber(rowB.values[columnId]);
67
75
  return compareBasic(a, b);
68
76
  },
69
- boolean: (rowA, rowB, columnId) => {
70
- const a = !!rowA.values[columnId];
71
- const b = !!rowB.values[columnId];
77
+ "boolean": function boolean(rowA, rowB, columnId) {
78
+ var a = !!rowA.values[columnId];
79
+ var b = !!rowB.values[columnId];
72
80
  return compareBasic(a, b);
73
81
  },
74
- auto: (rowA, rowB, columnId) => {
75
- const a = guess(rowA.values[columnId]);
76
- const b = guess(rowB.values[columnId]);
82
+ auto: function auto(rowA, rowB, columnId) {
83
+ var a = guess(rowA.values[columnId]);
84
+ var b = guess(rowB.values[columnId]);
77
85
  return compareBasic(a, b);
78
86
  }
79
87
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sortTypes.js","sources":["../../../../../src/components/Table/util/sortTypes.ts"],"sourcesContent":["import { SortTypes, TableRow } from '../types';\r\n\r\nconst getTime = (value: any): number | undefined => {\r\n const parsedValue: Date = typeof value === 'string' ? new Date(value) : value;\r\n return parsedValue?.getTime ? parsedValue.getTime() : undefined;\r\n};\r\n\r\nconst getNumber = (amount = '', decimalSeparator = ','): number | undefined => {\r\n if (typeof amount === 'number') {\r\n return amount;\r\n }\r\n\r\n if (amount === null || !amount.length) {\r\n return undefined;\r\n }\r\n\r\n let value;\r\n\r\n if (decimalSeparator === ',') {\r\n // replace digit seperator then replace decimal separator\r\n value = Number(amount.replace(/\\./g, '').replace(',', '.'));\r\n } else {\r\n // replace digit seperator\r\n value = Number(amount.replace(/,/g, ''));\r\n }\r\n\r\n return Number.isNaN(value) ? undefined : value;\r\n};\r\n\r\nconst getString = (value: any): string | undefined => {\r\n if (value) {\r\n return String(value).toLowerCase();\r\n }\r\n\r\n return undefined;\r\n};\r\n\r\nconst guess = (value: any): any => {\r\n if (typeof value === 'boolean') {\r\n return !!value;\r\n }\r\n\r\n return isNaN(value) ? getString(value) : Number(value);\r\n};\r\n\r\nconst compareBasic = (a: any, b: any) => {\r\n // places undefined values first in ascending order instead of descending\r\n if (a !== undefined && b === undefined) {\r\n return 1;\r\n }\r\n\r\n return a === b ? 0 : a > b ? 1 : -1;\r\n};\r\n\r\ntype SortHandler<T> = (rowA: TableRow<T>, rowB: TableRow<T>, columnId: string) => 0 | 1 | -1;\r\n\r\nexport const sortTypes: Record<SortTypes, SortHandler<any>> = {\r\n datetime: (rowA, rowB, columnId) => {\r\n const a = getTime(rowA.values[columnId]);\r\n const b = getTime(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n string: (rowA, rowB, columnId) => {\r\n const a = getString(rowA.values[columnId]);\r\n const b = getString(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n number: (rowA, rowB, columnId) => {\r\n const a = getNumber(rowA.values[columnId]);\r\n const b = getNumber(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n boolean: (rowA, rowB, columnId) => {\r\n const a = !!rowA.values[columnId];\r\n const b = !!rowB.values[columnId];\r\n return compareBasic(a, b);\r\n },\r\n auto: (rowA, rowB, columnId) => {\r\n const a = guess(rowA.values[columnId]);\r\n const b = guess(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n};\r\n"],"names":["getTime","value","parsedValue","Date","undefined","getNumber","amount","decimalSeparator","length","Number","replace","isNaN","getString","String","toLowerCase","guess","compareBasic","a","b","sortTypes","datetime","rowA","rowB","columnId","values","string","number","boolean","auto"],"mappings":"AAEA,MAAMA,OAAO,GAAIC,KAAD;AACZ,QAAMC,WAAW,GAAS,OAAOD,KAAP,KAAiB,QAAjB,GAA4B,IAAIE,IAAJ,CAASF,KAAT,CAA5B,GAA8CA,KAAxE;AACA,SAAOC,WAAW,SAAX,IAAAA,WAAW,WAAX,IAAAA,WAAW,CAAEF,OAAb,GAAuBE,WAAW,CAACF,OAAZ,EAAvB,GAA+CI,SAAtD;AACH,CAHD;;AAKA,MAAMC,SAAS,GAAG,CAACC,MAAM,GAAG,EAAV,EAAcC,gBAAgB,GAAG,GAAjC;AACd,MAAI,OAAOD,MAAP,KAAkB,QAAtB,EAAgC;AAC5B,WAAOA,MAAP;AACH;;AAED,MAAIA,MAAM,KAAK,IAAX,IAAmB,CAACA,MAAM,CAACE,MAA/B,EAAuC;AACnC,WAAOJ,SAAP;AACH;;AAED,MAAIH,KAAJ;;AAEA,MAAIM,gBAAgB,KAAK,GAAzB,EAA8B;AAC1B;AACAN,IAAAA,KAAK,GAAGQ,MAAM,CAACH,MAAM,CAACI,OAAP,CAAe,KAAf,EAAsB,EAAtB,EAA0BA,OAA1B,CAAkC,GAAlC,EAAuC,GAAvC,CAAD,CAAd;AACH,GAHD,MAGO;AACH;AACAT,IAAAA,KAAK,GAAGQ,MAAM,CAACH,MAAM,CAACI,OAAP,CAAe,IAAf,EAAqB,EAArB,CAAD,CAAd;AACH;;AAED,SAAOD,MAAM,CAACE,KAAP,CAAaV,KAAb,IAAsBG,SAAtB,GAAkCH,KAAzC;AACH,CApBD;;AAsBA,MAAMW,SAAS,GAAIX,KAAD;AACd,MAAIA,KAAJ,EAAW;AACP,WAAOY,MAAM,CAACZ,KAAD,CAAN,CAAca,WAAd,EAAP;AACH;;AAED,SAAOV,SAAP;AACH,CAND;;AAQA,MAAMW,KAAK,GAAId,KAAD;AACV,MAAI,OAAOA,KAAP,KAAiB,SAArB,EAAgC;AAC5B,WAAO,CAAC,CAACA,KAAT;AACH;;AAED,SAAOU,KAAK,CAACV,KAAD,CAAL,GAAeW,SAAS,CAACX,KAAD,CAAxB,GAAkCQ,MAAM,CAACR,KAAD,CAA/C;AACH,CAND;;AAQA,MAAMe,YAAY,GAAG,CAACC,CAAD,EAASC,CAAT;AACjB;AACA,MAAID,CAAC,KAAKb,SAAN,IAAmBc,CAAC,KAAKd,SAA7B,EAAwC;AACpC,WAAO,CAAP;AACH;;AAED,SAAOa,CAAC,KAAKC,CAAN,GAAU,CAAV,GAAcD,CAAC,GAAGC,CAAJ,GAAQ,CAAR,GAAY,CAAC,CAAlC;AACH,CAPD;;MAWaC,SAAS,GAAwC;AAC1DC,EAAAA,QAAQ,EAAE,CAACC,IAAD,EAAOC,IAAP,EAAaC,QAAb;AACN,UAAMN,CAAC,GAAGjB,OAAO,CAACqB,IAAI,CAACG,MAAL,CAAYD,QAAZ,CAAD,CAAjB;AACA,UAAML,CAAC,GAAGlB,OAAO,CAACsB,IAAI,CAACE,MAAL,CAAYD,QAAZ,CAAD,CAAjB;AACA,WAAOP,YAAY,CAACC,CAAD,EAAIC,CAAJ,CAAnB;AACH,GALyD;AAM1DO,EAAAA,MAAM,EAAE,CAACJ,IAAD,EAAOC,IAAP,EAAaC,QAAb;AACJ,UAAMN,CAAC,GAAGL,SAAS,CAACS,IAAI,CAACG,MAAL,CAAYD,QAAZ,CAAD,CAAnB;AACA,UAAML,CAAC,GAAGN,SAAS,CAACU,IAAI,CAACE,MAAL,CAAYD,QAAZ,CAAD,CAAnB;AACA,WAAOP,YAAY,CAACC,CAAD,EAAIC,CAAJ,CAAnB;AACH,GAVyD;AAW1DQ,EAAAA,MAAM,EAAE,CAACL,IAAD,EAAOC,IAAP,EAAaC,QAAb;AACJ,UAAMN,CAAC,GAAGZ,SAAS,CAACgB,IAAI,CAACG,MAAL,CAAYD,QAAZ,CAAD,CAAnB;AACA,UAAML,CAAC,GAAGb,SAAS,CAACiB,IAAI,CAACE,MAAL,CAAYD,QAAZ,CAAD,CAAnB;AACA,WAAOP,YAAY,CAACC,CAAD,EAAIC,CAAJ,CAAnB;AACH,GAfyD;AAgB1DS,EAAAA,OAAO,EAAE,CAACN,IAAD,EAAOC,IAAP,EAAaC,QAAb;AACL,UAAMN,CAAC,GAAG,CAAC,CAACI,IAAI,CAACG,MAAL,CAAYD,QAAZ,CAAZ;AACA,UAAML,CAAC,GAAG,CAAC,CAACI,IAAI,CAACE,MAAL,CAAYD,QAAZ,CAAZ;AACA,WAAOP,YAAY,CAACC,CAAD,EAAIC,CAAJ,CAAnB;AACH,GApByD;AAqB1DU,EAAAA,IAAI,EAAE,CAACP,IAAD,EAAOC,IAAP,EAAaC,QAAb;AACF,UAAMN,CAAC,GAAGF,KAAK,CAACM,IAAI,CAACG,MAAL,CAAYD,QAAZ,CAAD,CAAf;AACA,UAAML,CAAC,GAAGH,KAAK,CAACO,IAAI,CAACE,MAAL,CAAYD,QAAZ,CAAD,CAAf;AACA,WAAOP,YAAY,CAACC,CAAD,EAAIC,CAAJ,CAAnB;AACH;AAzByD;;;;"}
1
+ {"version":3,"file":"sortTypes.js","sources":["../../../../../src/components/Table/util/sortTypes.ts"],"sourcesContent":["import { SortTypes, TableRow } from '../types';\n\nconst getTime = (value: any): number | undefined => {\n const parsedValue: Date = typeof value === 'string' ? new Date(value) : value;\n return parsedValue?.getTime ? parsedValue.getTime() : undefined;\n};\n\nconst getNumber = (amount = '', decimalSeparator = ','): number | undefined => {\n if (typeof amount === 'number') {\n return amount;\n }\n\n if (amount === null || !amount.length) {\n return undefined;\n }\n\n let value;\n\n if (decimalSeparator === ',') {\n // replace digit seperator then replace decimal separator\n value = Number(amount.replace(/\\./g, '').replace(',', '.'));\n } else {\n // replace digit seperator\n value = Number(amount.replace(/,/g, ''));\n }\n\n return Number.isNaN(value) ? undefined : value;\n};\n\nconst getString = (value: any): string | undefined => {\n if (value) {\n return String(value).toLowerCase();\n }\n\n return undefined;\n};\n\nconst guess = (value: any): any => {\n if (typeof value === 'boolean') {\n return !!value;\n }\n\n return isNaN(value) ? getString(value) : Number(value);\n};\n\nconst compareBasic = (a: any, b: any) => {\n // places undefined values first in ascending order instead of descending\n if (a !== undefined && b === undefined) {\n return 1;\n }\n\n return a === b ? 0 : a > b ? 1 : -1;\n};\n\ntype SortHandler<T> = (rowA: TableRow<T>, rowB: TableRow<T>, columnId: string) => 0 | 1 | -1;\n\nexport const sortTypes: Record<SortTypes, SortHandler<any>> = {\n datetime: (rowA, rowB, columnId) => {\n const a = getTime(rowA.values[columnId]);\n const b = getTime(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n string: (rowA, rowB, columnId) => {\n const a = getString(rowA.values[columnId]);\n const b = getString(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n number: (rowA, rowB, columnId) => {\n const a = getNumber(rowA.values[columnId]);\n const b = getNumber(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n boolean: (rowA, rowB, columnId) => {\n const a = !!rowA.values[columnId];\n const b = !!rowB.values[columnId];\n return compareBasic(a, b);\n },\n auto: (rowA, rowB, columnId) => {\n const a = guess(rowA.values[columnId]);\n const b = guess(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n};\n"],"names":["getTime","value","parsedValue","Date","undefined","getNumber","amount","decimalSeparator","length","Number","replace","isNaN","getString","String","toLowerCase","guess","compareBasic","a","b","sortTypes","datetime","rowA","rowB","columnId","values","string","number","auto"],"mappings":"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"}
@@ -1,9 +1,11 @@
1
+ import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
1
2
  import React__default from 'react';
2
3
 
3
- const sanitizeRowProps = (row, rowExpansionRenderer) => {
4
+ var _excluded = ["children"];
5
+ var sanitizeRowProps = function sanitizeRowProps(row, rowExpansionRenderer) {
4
6
  var _row$subRows;
5
7
 
6
- const props = {
8
+ var props = {
7
9
  index: row.index,
8
10
  indexPath: row.id,
9
11
  values: row.original
@@ -13,11 +15,15 @@ const sanitizeRowProps = (row, rowExpansionRenderer) => {
13
15
  props.isExpanded = !!row.isExpanded;
14
16
  props.depth = row.depth;
15
17
 
16
- props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);
18
+ props.toggleRowExpanded = function () {
19
+ return row.toggleRowExpanded(!props.isExpanded);
20
+ };
17
21
  } else if (rowExpansionRenderer) {
18
22
  props.isExpanded = !!row.isExpanded;
19
23
 
20
- props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);
24
+ props.toggleRowExpanded = function () {
25
+ return row.toggleRowExpanded(!props.isExpanded);
26
+ };
21
27
  }
22
28
 
23
29
  if (row.toggleRowEditing) {
@@ -27,36 +33,40 @@ const sanitizeRowProps = (row, rowExpansionRenderer) => {
27
33
 
28
34
  return props;
29
35
  };
30
- const getColumnsFromChildren = (children, rowExpansionRenderer) => {
31
- const sortRules = [];
32
- const columns = React__default.Children.toArray(children).filter(child => !!child && !child.props.hidden) // skip falsey or hidden columns
33
- .map(({
34
- props: {
35
- children: groupChildren,
36
- ...props
37
- }
38
- }) => {
39
- const column = { ...props
40
- };
36
+ var getColumnsFromChildren = function getColumnsFromChildren(children, rowExpansionRenderer) {
37
+ var sortRules = [];
38
+ var columns = React__default.Children.toArray(children).filter(function (child) {
39
+ return !!child && !child.props.hidden;
40
+ }) // skip falsey or hidden columns
41
+ .map(function (_ref) {
42
+ var _ref$props = _ref.props,
43
+ groupChildren = _ref$props.children,
44
+ props = _objectWithoutPropertiesLoose(_ref$props, _excluded);
45
+
46
+ var column = _extends({}, props);
47
+
41
48
  column.sortType = column.sortType || 'auto';
42
49
  column.disableSortBy = column.disableSorting; // this is a Table.Group - TODO: Find a better way to determine the child type
43
50
 
44
51
  if (props.title && groupChildren) {
45
52
  column.Header = props.title;
46
- const {
47
- columns: groupColumns,
48
- sortRules: groupSortRules
49
- } = getColumnsFromChildren(groupChildren, rowExpansionRenderer);
53
+
54
+ var _getColumnsFromChildr = getColumnsFromChildren(groupChildren, rowExpansionRenderer),
55
+ groupColumns = _getColumnsFromChildr.columns,
56
+ groupSortRules = _getColumnsFromChildr.sortRules;
57
+
50
58
  column.columns = groupColumns;
51
- groupSortRules.forEach(sort => sortRules.push(sort));
59
+ groupSortRules.forEach(function (sort) {
60
+ return sortRules.push(sort);
61
+ });
52
62
  } else {
53
63
  column.accessor = props.accessor;
54
64
  column.Header = props.headRenderer || '';
55
65
 
56
- column.Cell = columnProps => {
66
+ column.Cell = function (columnProps) {
57
67
  var _props$cellRenderer, _cell$value;
58
68
 
59
- const cell = {
69
+ var cell = {
60
70
  accessor: columnProps.cell.column.id,
61
71
  row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),
62
72
  value: columnProps.cell.value
@@ -84,15 +94,17 @@ const getColumnsFromChildren = (children, rowExpansionRenderer) => {
84
94
  return column;
85
95
  });
86
96
  return {
87
- columns,
88
- sortRules
97
+ columns: columns,
98
+ sortRules: sortRules
89
99
  };
90
100
  };
91
- const getInternalSortRules = sortRules => {
92
- return sortRules === null || sortRules === void 0 ? void 0 : sortRules.map(rule => ({
93
- id: rule.accessor,
94
- desc: rule.desc
95
- }));
101
+ var getInternalSortRules = function getInternalSortRules(sortRules) {
102
+ return sortRules === null || sortRules === void 0 ? void 0 : sortRules.map(function (rule) {
103
+ return {
104
+ id: rule.accessor,
105
+ desc: rule.desc
106
+ };
107
+ });
96
108
  };
97
109
 
98
110
  export { getColumnsFromChildren, getInternalSortRules, sanitizeRowProps };
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sources":["../../../../src/components/Table/util.ts"],"sourcesContent":["import React from 'react';\r\nimport { TableRow, TableCell, TableChildren, InternalTableRow, InternalTableColumn, SortRule } from './types';\r\nimport { SortingRule } from 'react-table';\r\n\r\nexport const sanitizeRowProps = (row: InternalTableRow, rowExpansionRenderer: any): TableRow<any> => {\r\n const props: TableRow<any> = {\r\n index: row.index,\r\n indexPath: row.id,\r\n values: row.original,\r\n };\r\n\r\n if (row.subRows?.length > 0) {\r\n props.isExpanded = !!row.isExpanded;\r\n props.depth = row.depth;\r\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\r\n } else if (rowExpansionRenderer) {\r\n props.isExpanded = !!row.isExpanded;\r\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\r\n }\r\n\r\n if (row.toggleRowEditing) {\r\n props.isEditing = !!row.isEditing;\r\n props.toggleRowEditing = row.toggleRowEditing;\r\n }\r\n\r\n return props;\r\n};\r\n\r\nexport const getColumnsFromChildren = (children: TableChildren<any>, rowExpansionRenderer: any) => {\r\n const sortRules: SortingRule<any>[] = [];\r\n\r\n const columns = React.Children.toArray(children)\r\n .filter((child: any) => !!child && !child.props.hidden) // skip falsey or hidden columns\r\n .map(({ props: { children: groupChildren, ...props } }: any) => {\r\n const column: InternalTableColumn & { disableSortBy: boolean | undefined } = { ...props };\r\n\r\n column.sortType = column.sortType || 'auto';\r\n column.disableSortBy = column.disableSorting;\r\n\r\n // this is a Table.Group - TODO: Find a better way to determine the child type\r\n if (props.title && groupChildren) {\r\n column.Header = props.title;\r\n\r\n const { columns: groupColumns, sortRules: groupSortRules } = getColumnsFromChildren(\r\n groupChildren,\r\n rowExpansionRenderer\r\n );\r\n column.columns = groupColumns;\r\n groupSortRules.forEach(sort => sortRules.push(sort));\r\n } else {\r\n column.accessor = props.accessor;\r\n column.Header = props.headRenderer || '';\r\n column.Cell = (columnProps: any) => {\r\n const cell: TableCell<any> = {\r\n accessor: columnProps.cell.column.id,\r\n row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),\r\n value: columnProps.cell.value,\r\n };\r\n\r\n if (cell.row.isEditing && typeof props.editRenderer === 'function') {\r\n return props.editRenderer(cell);\r\n }\r\n\r\n return typeof props.cellRenderer === 'function' ? props.cellRenderer(cell) ?? null : cell.value ?? null;\r\n };\r\n\r\n // custom props\r\n column.align = props.align;\r\n column.flex = props.flex;\r\n\r\n if (props.sort && !props.disableSorting) {\r\n sortRules.push({\r\n id: props.accessor,\r\n desc: props.sort === 'desc',\r\n });\r\n }\r\n }\r\n\r\n return column;\r\n });\r\n\r\n return { columns, sortRules };\r\n};\r\n\r\nexport const getInternalSortRules = <T>(sortRules: SortRule<T>[] | undefined): SortingRule<T>[] | undefined => {\r\n return sortRules?.map<SortingRule<T>>(rule => ({ id: rule.accessor, desc: rule.desc }));\r\n};\r\n"],"names":["sanitizeRowProps","row","rowExpansionRenderer","props","index","indexPath","id","values","original","subRows","length","isExpanded","depth","toggleRowExpanded","toggleRowEditing","isEditing","getColumnsFromChildren","children","sortRules","columns","React","Children","toArray","filter","child","hidden","map","groupChildren","column","sortType","disableSortBy","disableSorting","title","Header","groupColumns","groupSortRules","forEach","sort","push","accessor","headRenderer","Cell","columnProps","cell","value","editRenderer","cellRenderer","align","flex","desc","getInternalSortRules","rule"],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sources":["../../../../src/components/Table/util.ts"],"sourcesContent":["import React from 'react';\nimport { TableRow, TableCell, TableChildren, InternalTableRow, InternalTableColumn, SortRule } from './types';\nimport { SortingRule } from 'react-table';\n\nexport const sanitizeRowProps = (row: InternalTableRow, rowExpansionRenderer: any): TableRow<any> => {\n const props: TableRow<any> = {\n index: row.index,\n indexPath: row.id,\n values: row.original,\n };\n\n if (row.subRows?.length > 0) {\n props.isExpanded = !!row.isExpanded;\n props.depth = row.depth;\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\n } else if (rowExpansionRenderer) {\n props.isExpanded = !!row.isExpanded;\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\n }\n\n if (row.toggleRowEditing) {\n props.isEditing = !!row.isEditing;\n props.toggleRowEditing = row.toggleRowEditing;\n }\n\n return props;\n};\n\nexport const getColumnsFromChildren = (children: TableChildren<any>, rowExpansionRenderer: any) => {\n const sortRules: SortingRule<any>[] = [];\n\n const columns = React.Children.toArray(children)\n .filter((child: any) => !!child && !child.props.hidden) // skip falsey or hidden columns\n .map(({ props: { children: groupChildren, ...props } }: any) => {\n const column: InternalTableColumn & { disableSortBy: boolean | undefined } = { ...props };\n\n column.sortType = column.sortType || 'auto';\n column.disableSortBy = column.disableSorting;\n\n // this is a Table.Group - TODO: Find a better way to determine the child type\n if (props.title && groupChildren) {\n column.Header = props.title;\n\n const { columns: groupColumns, sortRules: groupSortRules } = getColumnsFromChildren(\n groupChildren,\n rowExpansionRenderer\n );\n column.columns = groupColumns;\n groupSortRules.forEach(sort => sortRules.push(sort));\n } else {\n column.accessor = props.accessor;\n column.Header = props.headRenderer || '';\n column.Cell = (columnProps: any) => {\n const cell: TableCell<any> = {\n accessor: columnProps.cell.column.id,\n row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),\n value: columnProps.cell.value,\n };\n\n if (cell.row.isEditing && typeof props.editRenderer === 'function') {\n return props.editRenderer(cell);\n }\n\n return typeof props.cellRenderer === 'function' ? props.cellRenderer(cell) ?? null : cell.value ?? null;\n };\n\n // custom props\n column.align = props.align;\n column.flex = props.flex;\n\n if (props.sort && !props.disableSorting) {\n sortRules.push({\n id: props.accessor,\n desc: props.sort === 'desc',\n });\n }\n }\n\n return column;\n });\n\n return { columns, sortRules };\n};\n\nexport const getInternalSortRules = <T>(sortRules: SortRule<T>[] | undefined): SortingRule<T>[] | undefined => {\n return sortRules?.map<SortingRule<T>>(rule => ({ id: rule.accessor, desc: rule.desc }));\n};\n"],"names":["sanitizeRowProps","row","rowExpansionRenderer","props","index","indexPath","id","values","original","subRows","length","isExpanded","depth","toggleRowExpanded","toggleRowEditing","isEditing","getColumnsFromChildren","children","sortRules","columns","React","Children","toArray","filter","child","hidden","map","groupChildren","column","sortType","disableSortBy","disableSorting","title","Header","groupColumns","groupSortRules","forEach","sort","push","accessor","headRenderer","Cell","columnProps","cell","value","editRenderer","cellRenderer","align","flex","desc","getInternalSortRules","rule"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport cn from 'classnames';\r\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\r\n\r\nimport { Orientation } from '../../types';\r\nimport './Tabs.css';\r\n\r\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement> & {\r\n /**\r\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\r\n */\r\n id?: string;\r\n /**\r\n * Set which tab is selected on mount.\r\n * This has to be one of the existing ids provided for tabs\r\n */\r\n defaultId?: string;\r\n /**\r\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\r\n * followed by one or an array of `Tabs.Content`.\r\n * *Note* that there can also be tabs that are rendered conditionally.\r\n */\r\n children: React.ReactNode;\r\n /**\r\n * Define orientation of tabs.\r\n * @defaultValue horizontal\r\n */\r\n orientation?: Orientation;\r\n /**\r\n * Callback that is called when tab is changed.\r\n */\r\n onChange?: (id: string) => void;\r\n};\r\n\r\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\r\n\r\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\r\n /**\r\n * A unique value that associates the trigger with a content.\r\n */\r\n id: string;\r\n /**\r\n * When true, prevents the user from interacting with the tab.\r\n */\r\n disabled?: boolean;\r\n};\r\n\r\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\r\n /**\r\n * A unique value that associates the content with a trigger.\r\n */\r\n id: string;\r\n};\r\n\r\nexport type ForwardedTabsWithStatics = React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\r\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\r\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\r\n /** Tab trigger component rendered in a `Tabs.List` component */\r\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\r\n /** Tab content component rendered in a `Tabs` group component */\r\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\r\n};\r\n\r\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\r\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\r\n const className = cn(\r\n 'yt-tabs',\r\n `yt-tabs--${orientation}`,\r\n {\r\n 'flex w-full': orientation === 'vertical',\r\n },\r\n props.className\r\n );\r\n\r\n return (\r\n <TabsPrimitive.Root\r\n {...otherProps}\r\n className={className}\r\n data-taco=\"tabs\"\r\n defaultValue={defaultId}\r\n dir=\"ltr\"\r\n onValueChange={onChange}\r\n orientation={orientation}\r\n ref={ref}\r\n value={id}\r\n >\r\n {children}\r\n </TabsPrimitive.Root>\r\n );\r\n}) as ForwardedTabsWithStatics;\r\n\r\nconst TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\r\n const className = cn('yt-tab__list border-b border-grey-light flex flex-row m-0 mb-4', props.className);\r\n\r\n return <TabsPrimitive.List {...props} className={className} ref={ref} />;\r\n});\r\n\r\nconst TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, ref: React.Ref<HTMLButtonElement>) {\r\n const { id, disabled, ...otherProps } = props;\r\n const className = cn(\r\n 'yt-tab bg-transparent border-b-2 border-transparent text-grey-darkest m-0 py-2 px-4',\r\n disabled\r\n ? 'cursor-not-allowed !text-grey'\r\n : 'cursor-pointer rounded-t hover:border-grey-light hover:text-black active:yt-focus active:border-blue focus:yt-focus focus:border-blue',\r\n props.className\r\n );\r\n\r\n return (\r\n <TabsPrimitive.Trigger\r\n {...otherProps}\r\n className={className}\r\n disabled={disabled}\r\n ref={ref}\r\n style={{\r\n transition: 'border 0.2s ease-in',\r\n }}\r\n value={id}\r\n />\r\n );\r\n});\r\n\r\nconst TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\r\n const { id, ...otherProps } = props;\r\n const className = cn('yt-tab__panel outline-none', props.className);\r\n\r\n return <TabsPrimitive.Content {...otherProps} className={className} ref={ref} value={id} />;\r\n});\r\n\r\nTabs.List = TabList;\r\nTabs.Trigger = TabTrigger;\r\nTabs.Content = TabContent;\r\n"],"names":["Tabs","React","props","ref","id","defaultId","children","onChange","orientation","otherProps","className","cn","TabsPrimitive","defaultValue","dir","onValueChange","value","TabList","Tab","TabTrigger","disabled","style","transition","TabContent","List","Trigger","Content"],"mappings":";;;;;;;;IA+DaA,IAAI,gBAAGC,UAAA,CAAiB,SAASD,IAAT,CAAcE,KAAd,EAAgCC,GAAhC;AACjC,MAAQC,EAAR,GAAyFF,KAAzF,CAAQE,EAAR;AAAA,MAAYC,SAAZ,GAAyFH,KAAzF,CAAYG,SAAZ;AAAA,MAAuBC,QAAvB,GAAyFJ,KAAzF,CAAuBI,QAAvB;AAAA,MAAiCC,QAAjC,GAAyFL,KAAzF,CAAiCK,QAAjC;AAAA,2BAAyFL,KAAzF,CAA2CM,WAA3C;AAAA,MAA2CA,WAA3C,mCAAyD,YAAzD;AAAA,MAA0EC,UAA1E,iCAAyFP,KAAzF;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAChB,SADgB,gBAEJH,WAFI,EAGhB;AACI,mBAAeA,WAAW,KAAK;AADnC,GAHgB,EAMhBN,KAAK,CAACQ,SANU,CAApB;AASA,SACIT,aAAA,CAACW,IAAD,oBACQH;AACJC,IAAAA,SAAS,EAAEA;iBACD;AACVG,IAAAA,YAAY,EAAER;AACdS,IAAAA,GAAG,EAAC;AACJC,IAAAA,aAAa,EAAER;AACfC,IAAAA,WAAW,EAAEA;AACbL,IAAAA,GAAG,EAAEA;AACLa,IAAAA,KAAK,EAAEZ;IATX,EAWKE,QAXL,CADJ;AAeH,CA1BmB;AA4BpB,IAAMW,OAAO,gBAAGhB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAkCC,GAAlC;AAC7B,MAAMO,SAAS,GAAGC,EAAE,CAAC,gEAAD,EAAmET,KAAK,CAACQ,SAAzE,CAApB;AAEA,SAAOT,aAAA,CAACW,IAAD,oBAAwBV;AAAOQ,IAAAA,SAAS,EAAEA;AAAWP,IAAAA,GAAG,EAAEA;IAA1D,CAAP;AACH,CAJe,CAAhB;AAMA,IAAMgB,UAAU,gBAAGlB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAqCC,GAArC;AAChC,MAAQC,EAAR,GAAwCF,KAAxC,CAAQE,EAAR;AAAA,MAAYgB,QAAZ,GAAwClB,KAAxC,CAAYkB,QAAZ;AAAA,MAAyBX,UAAzB,iCAAwCP,KAAxC;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAChB,qFADgB,EAEhBS,QAAQ,GACF,+BADE,GAEF,uIAJU,EAKhBlB,KAAK,CAACQ,SALU,CAApB;AAQA,SACIT,aAAA,CAACW,OAAD,oBACQH;AACJC,IAAAA,SAAS,EAAEA;AACXU,IAAAA,QAAQ,EAAEA;AACVjB,IAAAA,GAAG,EAAEA;AACLkB,IAAAA,KAAK,EAAE;AACHC,MAAAA,UAAU,EAAE;AADT;AAGPN,IAAAA,KAAK,EAAEZ;IARX,CADJ;AAYH,CAtBkB,CAAnB;AAwBA,IAAMmB,UAAU,gBAAGtB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAqCC,GAArC;AAChC,MAAQC,EAAR,GAA8BF,KAA9B,CAAQE,EAAR;AAAA,MAAeK,UAAf,iCAA8BP,KAA9B;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAAC,4BAAD,EAA+BT,KAAK,CAACQ,SAArC,CAApB;AAEA,SAAOT,aAAA,CAACW,OAAD,oBAA2BH;AAAYC,IAAAA,SAAS,EAAEA;AAAWP,IAAAA,GAAG,EAAEA;AAAKa,IAAAA,KAAK,EAAEZ;IAA9E,CAAP;AACH,CALkB,CAAnB;AAOAJ,IAAI,CAACwB,IAAL,GAAYP,OAAZ;AACAjB,IAAI,CAACyB,OAAL,GAAeN,UAAf;AACAnB,IAAI,CAAC0B,OAAL,GAAeH,UAAf;;;;"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\n\nimport { Orientation } from '../../types';\nimport './Tabs.css';\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\n */\n id?: string;\n /**\n * Set which tab is selected on mount.\n * This has to be one of the existing ids provided for tabs\n */\n defaultId?: string;\n /**\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\n * followed by one or an array of `Tabs.Content`.\n * *Note* that there can also be tabs that are rendered conditionally.\n */\n children: React.ReactNode;\n /**\n * Define orientation of tabs.\n * @defaultValue horizontal\n */\n orientation?: Orientation;\n /**\n * Callback that is called when tab is changed.\n */\n onChange?: (id: string) => void;\n};\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n};\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n};\n\nexport type ForwardedTabsWithStatics = React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\n /** Tab trigger component rendered in a `Tabs.List` component */\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n /** Tab content component rendered in a `Tabs` group component */\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\n};\n\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\n const className = cn(\n 'yt-tabs',\n `yt-tabs--${orientation}`,\n {\n 'flex w-full': orientation === 'vertical',\n },\n props.className\n );\n\n return (\n <TabsPrimitive.Root\n {...otherProps}\n className={className}\n data-taco=\"tabs\"\n defaultValue={defaultId}\n dir=\"ltr\"\n onValueChange={onChange}\n orientation={orientation}\n ref={ref}\n value={id}\n >\n {children}\n </TabsPrimitive.Root>\n );\n}) as ForwardedTabsWithStatics;\n\nconst TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const className = cn('yt-tab__list border-b border-grey-light flex flex-row m-0 mb-4', props.className);\n\n return <TabsPrimitive.List {...props} className={className} ref={ref} />;\n});\n\nconst TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, ref: React.Ref<HTMLButtonElement>) {\n const { id, disabled, ...otherProps } = props;\n const className = cn(\n 'yt-tab bg-transparent border-b-2 border-transparent text-grey-darkest m-0 py-2 px-4',\n disabled\n ? 'cursor-not-allowed !text-grey'\n : 'cursor-pointer rounded-t hover:border-grey-light hover:text-black active:yt-focus active:border-blue focus:yt-focus focus:border-blue',\n props.className\n );\n\n return (\n <TabsPrimitive.Trigger\n {...otherProps}\n className={className}\n disabled={disabled}\n ref={ref}\n style={{\n transition: 'border 0.2s ease-in',\n }}\n value={id}\n />\n );\n});\n\nconst TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, ...otherProps } = props;\n const className = cn('yt-tab__panel outline-none', props.className);\n\n return <TabsPrimitive.Content {...otherProps} className={className} ref={ref} value={id} />;\n});\n\nTabs.List = TabList;\nTabs.Trigger = TabTrigger;\nTabs.Content = TabContent;\n"],"names":["Tabs","React","props","ref","id","defaultId","children","onChange","orientation","otherProps","className","cn","TabsPrimitive","defaultValue","dir","onValueChange","value","TabList","Tab","TabTrigger","disabled","style","transition","TabContent","List","Trigger","Content"],"mappings":";;;;;;;;IA+DaA,IAAI,gBAAGC,UAAA,CAAiB,SAASD,IAAT,CAAcE,KAAd,EAAgCC,GAAhC;AACjC,MAAQC,EAAR,GAAyFF,KAAzF,CAAQE,EAAR;AAAA,MAAYC,SAAZ,GAAyFH,KAAzF,CAAYG,SAAZ;AAAA,MAAuBC,QAAvB,GAAyFJ,KAAzF,CAAuBI,QAAvB;AAAA,MAAiCC,QAAjC,GAAyFL,KAAzF,CAAiCK,QAAjC;AAAA,2BAAyFL,KAAzF,CAA2CM,WAA3C;AAAA,MAA2CA,WAA3C,mCAAyD,YAAzD;AAAA,MAA0EC,UAA1E,iCAAyFP,KAAzF;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAChB,SADgB,gBAEJH,WAFI,EAGhB;AACI,mBAAeA,WAAW,KAAK;AADnC,GAHgB,EAMhBN,KAAK,CAACQ,SANU,CAApB;AASA,SACIT,aAAA,CAACW,IAAD,oBACQH;AACJC,IAAAA,SAAS,EAAEA;iBACD;AACVG,IAAAA,YAAY,EAAER;AACdS,IAAAA,GAAG,EAAC;AACJC,IAAAA,aAAa,EAAER;AACfC,IAAAA,WAAW,EAAEA;AACbL,IAAAA,GAAG,EAAEA;AACLa,IAAAA,KAAK,EAAEZ;IATX,EAWKE,QAXL,CADJ;AAeH,CA1BmB;AA4BpB,IAAMW,OAAO,gBAAGhB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAkCC,GAAlC;AAC7B,MAAMO,SAAS,GAAGC,EAAE,CAAC,gEAAD,EAAmET,KAAK,CAACQ,SAAzE,CAApB;AAEA,SAAOT,aAAA,CAACW,IAAD,oBAAwBV;AAAOQ,IAAAA,SAAS,EAAEA;AAAWP,IAAAA,GAAG,EAAEA;IAA1D,CAAP;AACH,CAJe,CAAhB;AAMA,IAAMgB,UAAU,gBAAGlB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAqCC,GAArC;AAChC,MAAQC,EAAR,GAAwCF,KAAxC,CAAQE,EAAR;AAAA,MAAYgB,QAAZ,GAAwClB,KAAxC,CAAYkB,QAAZ;AAAA,MAAyBX,UAAzB,iCAAwCP,KAAxC;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAChB,qFADgB,EAEhBS,QAAQ,GACF,+BADE,GAEF,uIAJU,EAKhBlB,KAAK,CAACQ,SALU,CAApB;AAQA,SACIT,aAAA,CAACW,OAAD,oBACQH;AACJC,IAAAA,SAAS,EAAEA;AACXU,IAAAA,QAAQ,EAAEA;AACVjB,IAAAA,GAAG,EAAEA;AACLkB,IAAAA,KAAK,EAAE;AACHC,MAAAA,UAAU,EAAE;AADT;AAGPN,IAAAA,KAAK,EAAEZ;IARX,CADJ;AAYH,CAtBkB,CAAnB;AAwBA,IAAMmB,UAAU,gBAAGtB,UAAA,CAAiB,SAASiB,GAAT,CAAahB,KAAb,EAAqCC,GAArC;AAChC,MAAQC,EAAR,GAA8BF,KAA9B,CAAQE,EAAR;AAAA,MAAeK,UAAf,iCAA8BP,KAA9B;;AACA,MAAMQ,SAAS,GAAGC,EAAE,CAAC,4BAAD,EAA+BT,KAAK,CAACQ,SAArC,CAApB;AAEA,SAAOT,aAAA,CAACW,OAAD,oBAA2BH;AAAYC,IAAAA,SAAS,EAAEA;AAAWP,IAAAA,GAAG,EAAEA;AAAKa,IAAAA,KAAK,EAAEZ;IAA9E,CAAP;AACH,CALkB,CAAnB;AAOAJ,IAAI,CAACwB,IAAL,GAAYP,OAAZ;AACAjB,IAAI,CAACyB,OAAL,GAAeN,UAAf;AACAnB,IAAI,CAAC0B,OAAL,GAAeH,UAAf;;;;"}
@@ -3,13 +3,31 @@ import { forwardRef, createElement } from 'react';
3
3
  import cn from 'classnames';
4
4
  import { getInputClasses } from '../Input/util.js';
5
5
 
6
- var _excluded = ["defaultValue", "highlighted", "state"];
6
+ var _excluded = ["defaultValue", "highlighted", "onKeyDown", "state"];
7
7
  var Textarea = /*#__PURE__*/forwardRef(function Textarea(props, ref) {
8
- var otherProps = _objectWithoutPropertiesLoose(props, _excluded);
8
+ var onKeyDown = props.onKeyDown,
9
+ otherProps = _objectWithoutPropertiesLoose(props, _excluded);
10
+
11
+ var classNames = cn(getInputClasses(props), 'py-1 min-h-[75px] disabled:resize-none', props.className); // home and end keys only navigate to the start/end of textarea value if the textarea container does not scroll
12
+ // if it has scroll height then the browser reverts to native scrolling behaviour only
13
+ // so we manually override it to ensure _our_ desired behaviour remains intact
14
+
15
+ var handleKeyDown = function handleKeyDown(event) {
16
+ if (event.key === 'Home' || event.key === 'End') {
17
+ event.preventDefault();
18
+ var position = event.key === 'End' ? event.currentTarget.value.length : 0;
19
+ event.currentTarget.setSelectionRange(position, position);
20
+ event.currentTarget.scrollTop = event.key === 'End' ? event.currentTarget.scrollHeight : 0;
21
+ }
22
+
23
+ if (onKeyDown) {
24
+ onKeyDown(event);
25
+ }
26
+ };
9
27
 
10
- var classNames = cn(getInputClasses(props), 'py-1 min-h-[75px] disabled:resize-none', props.className);
11
28
  return createElement("textarea", Object.assign({}, otherProps, {
12
29
  className: classNames,
30
+ onKeyDown: handleKeyDown,
13
31
  ref: ref
14
32
  }));
15
33
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport cn from 'classnames';\r\nimport { State } from '../../types';\r\nimport { getInputClasses } from '../Input/util';\r\n\r\nexport type TextareaProps = React.TextareaHTMLAttributes<HTMLTextAreaElement> & {\r\n /** Draws attention to the textarea by changing its style and making it visually prominent */\r\n highlighted?: boolean;\r\n /** State will change the style of the textarea **/\r\n state?: State;\r\n /** Value of the textarea */\r\n value?: string;\r\n};\r\n\r\nexport const Textarea = React.forwardRef(function Textarea(props: TextareaProps, ref: React.Ref<HTMLTextAreaElement>) {\r\n const { defaultValue: _, highlighted, state, ...otherProps } = props;\r\n const classNames = cn(getInputClasses(props), 'py-1 min-h-[75px] disabled:resize-none', props.className);\r\n\r\n return <textarea {...otherProps} className={classNames} ref={ref} />;\r\n});\r\n"],"names":["Textarea","React","props","ref","otherProps","classNames","cn","getInputClasses","className"],"mappings":";;;;;;IAcaA,QAAQ,gBAAGC,UAAA,CAAiB,SAASD,QAAT,CAAkBE,KAAlB,EAAwCC,GAAxC;AACrC,MAAgDC,UAAhD,iCAA+DF,KAA/D;;AACA,MAAMG,UAAU,GAAGC,EAAE,CAACC,eAAe,CAACL,KAAD,CAAhB,EAAyB,wCAAzB,EAAmEA,KAAK,CAACM,SAAzE,CAArB;AAEA,SAAOP,aAAA,WAAA,oBAAcG;AAAYI,IAAAA,SAAS,EAAEH;AAAYF,IAAAA,GAAG,EAAEA;IAAtD,CAAP;AACH,CALuB;;;;"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport { State } from '../../types';\nimport { getInputClasses } from '../Input/util';\n\nexport type TextareaProps = React.TextareaHTMLAttributes<HTMLTextAreaElement> & {\n /** Draws attention to the textarea by changing its style and making it visually prominent */\n highlighted?: boolean;\n /** State will change the style of the textarea **/\n state?: State;\n /** Value of the textarea */\n value?: string;\n};\n\nexport const Textarea = React.forwardRef(function Textarea(props: TextareaProps, ref: React.Ref<HTMLTextAreaElement>) {\n const { defaultValue: _, highlighted, onKeyDown, state, ...otherProps } = props;\n const classNames = cn(getInputClasses(props), 'py-1 min-h-[75px] disabled:resize-none', props.className);\n\n // home and end keys only navigate to the start/end of textarea value if the textarea container does not scroll\n // if it has scroll height then the browser reverts to native scrolling behaviour only\n // so we manually override it to ensure _our_ desired behaviour remains intact\n const handleKeyDown = (event: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (event.key === 'Home' || event.key === 'End') {\n event.preventDefault();\n const position = event.key === 'End' ? event.currentTarget.value.length : 0;\n event.currentTarget.setSelectionRange(position, position);\n event.currentTarget.scrollTop = event.key === 'End' ? event.currentTarget.scrollHeight : 0;\n }\n\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n\n return <textarea {...otherProps} className={classNames} onKeyDown={handleKeyDown} ref={ref} />;\n});\n"],"names":["Textarea","React","props","ref","onKeyDown","otherProps","classNames","cn","getInputClasses","className","handleKeyDown","event","key","preventDefault","position","currentTarget","value","length","setSelectionRange","scrollTop","scrollHeight"],"mappings":";;;;;;IAcaA,QAAQ,gBAAGC,UAAA,CAAiB,SAASD,QAAT,CAAkBE,KAAlB,EAAwCC,GAAxC;AACrC,MAAsCC,SAAtC,GAA0EF,KAA1E,CAAsCE,SAAtC;AAAA,MAA2DC,UAA3D,iCAA0EH,KAA1E;;AACA,MAAMI,UAAU,GAAGC,EAAE,CAACC,eAAe,CAACN,KAAD,CAAhB,EAAyB,wCAAzB,EAAmEA,KAAK,CAACO,SAAzE,CAArB;AAGA;AACA;;AACA,MAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;AAClB,QAAIA,KAAK,CAACC,GAAN,KAAc,MAAd,IAAwBD,KAAK,CAACC,GAAN,KAAc,KAA1C,EAAiD;AAC7CD,MAAAA,KAAK,CAACE,cAAN;AACA,UAAMC,QAAQ,GAAGH,KAAK,CAACC,GAAN,KAAc,KAAd,GAAsBD,KAAK,CAACI,aAAN,CAAoBC,KAApB,CAA0BC,MAAhD,GAAyD,CAA1E;AACAN,MAAAA,KAAK,CAACI,aAAN,CAAoBG,iBAApB,CAAsCJ,QAAtC,EAAgDA,QAAhD;AACAH,MAAAA,KAAK,CAACI,aAAN,CAAoBI,SAApB,GAAgCR,KAAK,CAACC,GAAN,KAAc,KAAd,GAAsBD,KAAK,CAACI,aAAN,CAAoBK,YAA1C,GAAyD,CAAzF;AACH;;AAED,QAAIhB,SAAJ,EAAe;AACXA,MAAAA,SAAS,CAACO,KAAD,CAAT;AACH;AACJ,GAXD;;AAaA,SAAOV,aAAA,WAAA,oBAAcI;AAAYI,IAAAA,SAAS,EAAEH;AAAYF,IAAAA,SAAS,EAAEM;AAAeP,IAAAA,GAAG,EAAEA;IAAhF,CAAP;AACH,CArBuB;;;;"}
@@ -1,3 +1,4 @@
1
+ import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose } from '../../_virtual/_rollupPluginBabelHelpers.js';
1
2
  import React__default from 'react';
2
3
  import cn from 'classnames';
3
4
  import { IconButton } from '../IconButton/IconButton.js';
@@ -6,36 +7,36 @@ import useTimer from '../../utils/hooks/useTimer.js';
6
7
  import { getBadgeIcon } from './util.js';
7
8
  import { useLocalization } from '../Provider/Provider.js';
8
9
 
9
- const Toast = ({
10
- content,
11
- lastUpdated,
12
- onClose: handleClose,
13
- options,
14
- ...props
15
- }) => {
16
- const {
17
- texts
18
- } = useLocalization();
19
- const {
20
- autoClose,
21
- type = 'default'
22
- } = options;
23
- const className = cn('bg-white relative flex items-center py-1 px-2 mt-3 w-full rounded yt-shadow', {
10
+ var _excluded = ["content", "lastUpdated", "onClose", "options"];
11
+ var Toast = function Toast(_ref) {
12
+ var content = _ref.content,
13
+ lastUpdated = _ref.lastUpdated,
14
+ handleClose = _ref.onClose,
15
+ options = _ref.options,
16
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
17
+
18
+ var _useLocalization = useLocalization(),
19
+ texts = _useLocalization.texts;
20
+
21
+ var autoClose = options.autoClose,
22
+ _options$type = options.type,
23
+ type = _options$type === void 0 ? 'default' : _options$type;
24
+ var className = cn('bg-white relative flex items-center py-1 px-2 mt-3 w-full rounded yt-shadow', {
24
25
  'border border-grey': type === 'default' || type === 'loading' || !type,
25
26
  'border border-grey-darker': type === 'success',
26
27
  'border border-blue': type === 'information',
27
28
  'border border-yellow-dark': type === 'warning',
28
29
  'border border-red': type === 'error'
29
30
  });
30
- const timer = useTimer(autoClose, handleClose);
31
- const controls = useAnimation();
32
- React__default.useEffect(() => {
31
+ var timer = useTimer(autoClose, handleClose);
32
+ var controls = useAnimation();
33
+ React__default.useEffect(function () {
33
34
  if (autoClose) {
34
35
  timer.start();
35
36
  }
36
37
  }, [autoClose]);
37
38
 
38
- const triggerUpdateAnimation = function () {
39
+ var triggerUpdateAnimation = function triggerUpdateAnimation() {
39
40
  try {
40
41
  return Promise.resolve(controls.start({
41
42
  scale: 1.05
@@ -49,7 +50,7 @@ const Toast = ({
49
50
  }
50
51
  };
51
52
 
52
- React__default.useEffect(() => {
53
+ React__default.useEffect(function () {
53
54
  if (lastUpdated) {
54
55
  triggerUpdateAnimation();
55
56
 
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import React from 'react';\r\nimport cn from 'classnames';\r\nimport { motion, useAnimation } from 'framer-motion';\r\nimport useTimer from '../../utils/hooks/useTimer';\r\nimport { getBadgeIcon } from './util';\r\nimport { State } from '../../types';\r\nimport { useLocalization } from '../Provider/Provider';\r\nimport { IconButton } from '../IconButton/IconButton';\r\n\r\nexport type ToastsTexts = {\r\n /** Aria-label for the close icon button of toast */\r\n dismiss: string;\r\n};\r\n\r\nexport type ToastType = Omit<State, 'default'> | 'loading';\r\nexport type ToastOptions = {\r\n /** Provide time in milliseconds after which the toast should autoclose */\r\n autoClose?: number;\r\n /**\r\n * State will change the icon displayed in toast and other characteristics,\r\n * for e.g. `loading` state will display a progress animation.\r\n * Default value is `default`\r\n */\r\n type?: ToastType;\r\n};\r\nexport type ToastProps = {\r\n /** Provide a unique id for toast */\r\n id: string;\r\n /**\r\n * Content can be any valid react node, for e.g. a `div`, or a simple text.\r\n * Note that content can also be `null`, resulting in a slimmer version of your toast with a vertically centered title\r\n */\r\n content: React.ReactNode;\r\n /** Additional options to define your toast */\r\n options: ToastOptions;\r\n /**\r\n * Handler called when toast closes.\r\n * To read more about how to provide the text, see [Provider](component:provider) component\r\n */\r\n onClose: () => void;\r\n lastUpdated?: number;\r\n lastDuplicateId?: string;\r\n};\r\n\r\nexport const Toast = ({ content, lastUpdated, onClose: handleClose, options, ...props }: ToastProps): JSX.Element => {\r\n const { texts } = useLocalization();\r\n const { autoClose, type = 'default' } = options;\r\n const className = cn('bg-white relative flex items-center py-1 px-2 mt-3 w-full rounded yt-shadow', {\r\n 'border border-grey': type === 'default' || type === 'loading' || !type,\r\n 'border border-grey-darker': type === 'success',\r\n 'border border-blue': type === 'information',\r\n 'border border-yellow-dark': type === 'warning',\r\n 'border border-red': type === 'error',\r\n });\r\n const timer = useTimer(autoClose, handleClose);\r\n const controls = useAnimation();\r\n\r\n React.useEffect(() => {\r\n if (autoClose) {\r\n timer.start();\r\n }\r\n }, [autoClose]);\r\n\r\n const triggerUpdateAnimation = async () => {\r\n await controls.start({ scale: 1.05 });\r\n await controls.start({ scale: 1 });\r\n };\r\n\r\n React.useEffect(() => {\r\n if (lastUpdated) {\r\n triggerUpdateAnimation();\r\n\r\n if (timer.running) {\r\n timer.start();\r\n }\r\n }\r\n }, [lastUpdated]);\r\n\r\n return (\r\n <motion.div\r\n {...props}\r\n animate={controls}\r\n className={className}\r\n data-taco=\"toast\"\r\n onMouseEnter={timer.pause}\r\n onMouseLeave={timer.resume}\r\n >\r\n {getBadgeIcon(type)}\r\n {content && <div className=\"flex-grow\">{content}</div>}\r\n <IconButton\r\n appearance=\"discrete\"\r\n className=\"text-grey-darkest cursor-pointer -mr-2 !px-0\"\r\n icon=\"close\"\r\n aria-label={texts.toasts.dismiss}\r\n onClick={handleClose}\r\n />\r\n </motion.div>\r\n );\r\n};\r\n"],"names":["Toast","content","lastUpdated","onClose","handleClose","options","props","texts","useLocalization","autoClose","type","className","cn","timer","useTimer","controls","useAnimation","React","useEffect","start","triggerUpdateAnimation","scale","running","motion","div","animate","onMouseEnter","pause","onMouseLeave","resume","getBadgeIcon","IconButton","appearance","icon","toasts","dismiss","onClick"],"mappings":";;;;;;;;MA4CaA,KAAK,GAAG,CAAC;AAAEC,EAAAA,OAAF;AAAWC,EAAAA,WAAX;AAAwBC,EAAAA,OAAO,EAAEC,WAAjC;AAA8CC,EAAAA,OAA9C;AAAuD,KAAGC;AAA1D,CAAD;AACjB,QAAM;AAAEC,IAAAA;AAAF,MAAYC,eAAe,EAAjC;AACA,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,IAAI,GAAG;AAApB,MAAkCL,OAAxC;AACA,QAAMM,SAAS,GAAGC,EAAE,CAAC,6EAAD,EAAgF;AAChG,0BAAsBF,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,SAA/B,IAA4C,CAACA,IAD6B;AAEhG,iCAA6BA,IAAI,KAAK,SAF0D;AAGhG,0BAAsBA,IAAI,KAAK,aAHiE;AAIhG,iCAA6BA,IAAI,KAAK,SAJ0D;AAKhG,yBAAqBA,IAAI,KAAK;AALkE,GAAhF,CAApB;AAOA,QAAMG,KAAK,GAAGC,QAAQ,CAACL,SAAD,EAAYL,WAAZ,CAAtB;AACA,QAAMW,QAAQ,GAAGC,YAAY,EAA7B;AAEAC,EAAAA,cAAK,CAACC,SAAN,CAAgB;AACZ,QAAIT,SAAJ,EAAe;AACXI,MAAAA,KAAK,CAACM,KAAN;AACH;AACJ,GAJD,EAIG,CAACV,SAAD,CAJH;;AAMA,QAAMW,sBAAsB;AAAA;6BAClBL,QAAQ,CAACI,KAAT,CAAe;AAAEE,QAAAA,KAAK,EAAE;AAAT,OAAf;+BACAN,QAAQ,CAACI,KAAT,CAAe;AAAEE,UAAAA,KAAK,EAAE;AAAT,SAAf;;AACT,KAH2B;AAAA;AAAA;AAAA,GAA5B;;AAKAJ,EAAAA,cAAK,CAACC,SAAN,CAAgB;AACZ,QAAIhB,WAAJ,EAAiB;AACbkB,MAAAA,sBAAsB;;AAEtB,UAAIP,KAAK,CAACS,OAAV,EAAmB;AACfT,QAAAA,KAAK,CAACM,KAAN;AACH;AACJ;AACJ,GARD,EAQG,CAACjB,WAAD,CARH;AAUA,SACIe,4BAAA,CAACM,MAAM,CAACC,GAAR,oBACQlB;AACJmB,IAAAA,OAAO,EAAEV;AACTJ,IAAAA,SAAS,EAAEA;iBACD;AACVe,IAAAA,YAAY,EAAEb,KAAK,CAACc;AACpBC,IAAAA,YAAY,EAAEf,KAAK,CAACgB;IANxB,EAQKC,YAAY,CAACpB,IAAD,CARjB,EASKT,OAAO,IAAIgB,4BAAA,MAAA;AAAKN,IAAAA,SAAS,EAAC;GAAf,EAA4BV,OAA5B,CAThB,EAUIgB,4BAAA,CAACc,UAAD;AACIC,IAAAA,UAAU,EAAC;AACXrB,IAAAA,SAAS,EAAC;AACVsB,IAAAA,IAAI,EAAC;kBACO1B,KAAK,CAAC2B,MAAN,CAAaC;AACzBC,IAAAA,OAAO,EAAEhC;GALb,CAVJ,CADJ;AAoBH;;;;"}
1
+ {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { motion, useAnimation } from 'framer-motion';\nimport useTimer from '../../utils/hooks/useTimer';\nimport { getBadgeIcon } from './util';\nimport { State } from '../../types';\nimport { useLocalization } from '../Provider/Provider';\nimport { IconButton } from '../IconButton/IconButton';\n\nexport type ToastsTexts = {\n /** Aria-label for the close icon button of toast */\n dismiss: string;\n};\n\nexport type ToastType = Omit<State, 'default'> | 'loading';\nexport type ToastOptions = {\n /** Provide time in milliseconds after which the toast should autoclose */\n autoClose?: number;\n /**\n * State will change the icon displayed in toast and other characteristics,\n * for e.g. `loading` state will display a progress animation.\n * Default value is `default`\n */\n type?: ToastType;\n};\nexport type ToastProps = {\n /** Provide a unique id for toast */\n id: string;\n /**\n * Content can be any valid react node, for e.g. a `div`, or a simple text.\n * Note that content can also be `null`, resulting in a slimmer version of your toast with a vertically centered title\n */\n content: React.ReactNode;\n /** Additional options to define your toast */\n options: ToastOptions;\n /**\n * Handler called when toast closes.\n * To read more about how to provide the text, see [Provider](component:provider) component\n */\n onClose: () => void;\n lastUpdated?: number;\n lastDuplicateId?: string;\n};\n\nexport const Toast = ({ content, lastUpdated, onClose: handleClose, options, ...props }: ToastProps): JSX.Element => {\n const { texts } = useLocalization();\n const { autoClose, type = 'default' } = options;\n const className = cn('bg-white relative flex items-center py-1 px-2 mt-3 w-full rounded yt-shadow', {\n 'border border-grey': type === 'default' || type === 'loading' || !type,\n 'border border-grey-darker': type === 'success',\n 'border border-blue': type === 'information',\n 'border border-yellow-dark': type === 'warning',\n 'border border-red': type === 'error',\n });\n const timer = useTimer(autoClose, handleClose);\n const controls = useAnimation();\n\n React.useEffect(() => {\n if (autoClose) {\n timer.start();\n }\n }, [autoClose]);\n\n const triggerUpdateAnimation = async () => {\n await controls.start({ scale: 1.05 });\n await controls.start({ scale: 1 });\n };\n\n React.useEffect(() => {\n if (lastUpdated) {\n triggerUpdateAnimation();\n\n if (timer.running) {\n timer.start();\n }\n }\n }, [lastUpdated]);\n\n return (\n <motion.div\n {...props}\n animate={controls}\n className={className}\n data-taco=\"toast\"\n onMouseEnter={timer.pause}\n onMouseLeave={timer.resume}\n >\n {getBadgeIcon(type)}\n {content && <div className=\"flex-grow\">{content}</div>}\n <IconButton\n appearance=\"discrete\"\n className=\"text-grey-darkest cursor-pointer -mr-2 !px-0\"\n icon=\"close\"\n aria-label={texts.toasts.dismiss}\n onClick={handleClose}\n />\n </motion.div>\n );\n};\n"],"names":["Toast","content","lastUpdated","handleClose","onClose","options","props","useLocalization","texts","autoClose","type","className","cn","timer","useTimer","controls","useAnimation","React","useEffect","start","triggerUpdateAnimation","scale","running","motion","div","animate","onMouseEnter","pause","onMouseLeave","resume","getBadgeIcon","IconButton","appearance","icon","toasts","dismiss","onClick"],"mappings":";;;;;;;;;;IA4CaA,KAAK,GAAG,SAARA,KAAQ;MAAGC,eAAAA;MAASC,mBAAAA;MAAsBC,mBAATC;MAAsBC,eAAAA;MAAYC;;AAC5E,yBAAkBC,eAAe,EAAjC;AAAA,MAAQC,KAAR,oBAAQA,KAAR;;AACA,MAAQC,SAAR,GAAwCJ,OAAxC,CAAQI,SAAR;AAAA,sBAAwCJ,OAAxC,CAAmBK,IAAnB;AAAA,MAAmBA,IAAnB,8BAA0B,SAA1B;AACA,MAAMC,SAAS,GAAGC,EAAE,CAAC,6EAAD,EAAgF;AAChG,0BAAsBF,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,SAA/B,IAA4C,CAACA,IAD6B;AAEhG,iCAA6BA,IAAI,KAAK,SAF0D;AAGhG,0BAAsBA,IAAI,KAAK,aAHiE;AAIhG,iCAA6BA,IAAI,KAAK,SAJ0D;AAKhG,yBAAqBA,IAAI,KAAK;AALkE,GAAhF,CAApB;AAOA,MAAMG,KAAK,GAAGC,QAAQ,CAACL,SAAD,EAAYN,WAAZ,CAAtB;AACA,MAAMY,QAAQ,GAAGC,YAAY,EAA7B;AAEAC,EAAAA,cAAK,CAACC,SAAN,CAAgB;AACZ,QAAIT,SAAJ,EAAe;AACXI,MAAAA,KAAK,CAACM,KAAN;AACH;AACJ,GAJD,EAIG,CAACV,SAAD,CAJH;;AAMA,MAAMW,sBAAsB,YAAtBA,sBAAsB;AAAA;6BAClBL,QAAQ,CAACI,KAAT,CAAe;AAAEE,QAAAA,KAAK,EAAE;AAAT,OAAf;+BACAN,QAAQ,CAACI,KAAT,CAAe;AAAEE,UAAAA,KAAK,EAAE;AAAT,SAAf;;AACT,KAH2B;AAAA;AAAA;AAAA,GAA5B;;AAKAJ,EAAAA,cAAK,CAACC,SAAN,CAAgB;AACZ,QAAIhB,WAAJ,EAAiB;AACbkB,MAAAA,sBAAsB;;AAEtB,UAAIP,KAAK,CAACS,OAAV,EAAmB;AACfT,QAAAA,KAAK,CAACM,KAAN;AACH;AACJ;AACJ,GARD,EAQG,CAACjB,WAAD,CARH;AAUA,SACIe,4BAAA,CAACM,MAAM,CAACC,GAAR,oBACQlB;AACJmB,IAAAA,OAAO,EAAEV;AACTJ,IAAAA,SAAS,EAAEA;iBACD;AACVe,IAAAA,YAAY,EAAEb,KAAK,CAACc;AACpBC,IAAAA,YAAY,EAAEf,KAAK,CAACgB;IANxB,EAQKC,YAAY,CAACpB,IAAD,CARjB,EASKT,OAAO,IAAIgB,4BAAA,MAAA;AAAKN,IAAAA,SAAS,EAAC;GAAf,EAA4BV,OAA5B,CAThB,EAUIgB,4BAAA,CAACc,UAAD;AACIC,IAAAA,UAAU,EAAC;AACXrB,IAAAA,SAAS,EAAC;AACVsB,IAAAA,IAAI,EAAC;kBACOzB,KAAK,CAAC0B,MAAN,CAAaC;AACzBC,IAAAA,OAAO,EAAEjC;GALb,CAVJ,CADJ;AAoBH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toaster.js","sources":["../../../../src/components/Toast/Toaster.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { v4 as uuid } from 'uuid';\r\nimport { AnimatePresence, motion } from 'framer-motion';\r\nimport { ToastOptions, Toast, ToastProps } from './Toast';\r\nimport './Toast.css';\r\n\r\nconst DEFAULT_AUTO_CLOSE_TIMEOUT = 7500;\r\n\r\ntype ToastCreator<T> = (content: React.ReactNode | ((close: () => void) => React.ReactNode), options?: ToastOptions) => T;\r\n\r\nexport interface Toaster<T> extends ToastCreator<T> {\r\n success: ToastCreator<T>;\r\n error: ToastCreator<T>;\r\n warning: ToastCreator<T>;\r\n information: ToastCreator<T>;\r\n loading: ToastCreator<T>;\r\n}\r\n\r\nexport interface ToastReference {\r\n /** Show a success toast */\r\n success: ToastCreator<void>;\r\n /** Show an error toast */\r\n error: ToastCreator<void>;\r\n /** Show a warning toast */\r\n warning: ToastCreator<void>;\r\n /** Show an information toast */\r\n information: ToastCreator<void>;\r\n /** Show a loading toast */\r\n loading: ToastCreator<void>;\r\n /**\r\n * Close an existing toast.\r\n * The toast function returns a reference to the active toast,\r\n * allowing you to programmatically close it when needed\r\n */\r\n close: () => void;\r\n}\r\n\r\nconst ToastContext = React.createContext<Toaster<ToastReference>>({} as Toaster<ToastReference>);\r\n\r\nexport interface ToastProviderProps {\r\n children: React.ReactNode;\r\n}\r\n\r\ntype InternalToast = Omit<ToastProps, 'onClose'>;\r\n\r\nconst insertToastWithoutDuplicates = (\r\n currentToasts: InternalToast[],\r\n id: string,\r\n content: React.ReactNode,\r\n options: ToastOptions,\r\n close: () => void\r\n): InternalToast[] => {\r\n const nextToasts = [...currentToasts];\r\n const existingToastIndex = currentToasts.findIndex(toast => JSON.stringify(toast.content) === JSON.stringify(content));\r\n\r\n if (existingToastIndex > -1) {\r\n nextToasts[existingToastIndex].lastDuplicateId = id;\r\n nextToasts[existingToastIndex].lastUpdated = Date.now();\r\n } else {\r\n nextToasts.push({\r\n id,\r\n content: typeof content === 'function' ? content(close) : content,\r\n options,\r\n });\r\n }\r\n\r\n return nextToasts;\r\n};\r\n\r\nexport const ToastProvider = ({ children, ...props }: ToastProviderProps): JSX.Element => {\r\n const [toasts, setToasts] = React.useState<InternalToast[]>([]);\r\n\r\n const handleClose = (id: string): void => {\r\n setToasts(currentToasts => currentToasts.filter(toast => toast.id !== id));\r\n };\r\n\r\n // memoize (useCallback) this function,\r\n // it is the value of the context provider and we don't want it to trigger state tree re-renders on provider children\r\n const toaster = React.useCallback((content: React.ReactNode, options: ToastOptions): ToastReference => {\r\n const id = uuid();\r\n const close = (): void => handleClose(id);\r\n\r\n setToasts(currentToasts => insertToastWithoutDuplicates(currentToasts, id, content, options, close));\r\n\r\n const update = (content: React.ReactNode, options: ToastOptions): void => {\r\n setToasts(currentToasts => {\r\n const nextToasts = currentToasts.filter(toast => {\r\n if (toast.lastDuplicateId) {\r\n return toast.lastDuplicateId !== id;\r\n }\r\n\r\n return toast.id !== id;\r\n });\r\n return insertToastWithoutDuplicates(nextToasts, uuid(), content, options, close);\r\n });\r\n };\r\n\r\n const success = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\r\n update(content, { autoClose: DEFAULT_AUTO_CLOSE_TIMEOUT, ...options, type: 'success' });\r\n };\r\n const error = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\r\n update(content, { ...options, type: 'error' });\r\n };\r\n const warning = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\r\n update(content, { ...options, type: 'warning' });\r\n };\r\n const information = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\r\n update(content, { ...options, type: 'information' });\r\n };\r\n const loading = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\r\n update(content, { ...options, type: 'loading' });\r\n };\r\n\r\n return {\r\n success,\r\n error,\r\n warning,\r\n information,\r\n loading,\r\n close,\r\n };\r\n }, []) as Toaster<ToastReference>;\r\n\r\n // no need to rebind these every render, do them once in an effect\r\n React.useEffect(() => {\r\n toaster.success = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\r\n toaster(content, { autoClose: DEFAULT_AUTO_CLOSE_TIMEOUT, ...options, type: 'success' });\r\n toaster.error = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\r\n toaster(content, { ...options, type: 'error' });\r\n toaster.warning = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\r\n toaster(content, { ...options, type: 'warning' });\r\n toaster.information = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\r\n toaster(content, { ...options, type: 'information' });\r\n toaster.loading = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\r\n toaster(content, { ...options, type: 'loading' });\r\n }, []);\r\n\r\n return (\r\n <ToastContext.Provider {...props} value={toaster}>\r\n {children}\r\n <div\r\n id=\"yt-toast__container\"\r\n className=\"flex flex-col items-end justify-end fixed bottom-0 right-0 mb-4 mr-4 max-w-md z-[1000]\"\r\n role=\"log\"\r\n >\r\n <AnimatePresence initial={false}>\r\n {toasts.map((toast: ToastProps) => (\r\n <motion.div\r\n key={toast.id}\r\n transition={{\r\n type: 'spring',\r\n damping: 20,\r\n stiffness: 300,\r\n }}\r\n initial={{ opacity: 0, y: 10, scale: 0.5 }}\r\n animate={{ opacity: 1, y: 0, scale: 1 }}\r\n exit={{ opacity: 0, scale: 0.5, transition: { duration: 0.2 } }}\r\n >\r\n <Toast {...toast} onClose={() => handleClose(toast.id)} />\r\n </motion.div>\r\n ))}\r\n </AnimatePresence>\r\n </div>\r\n </ToastContext.Provider>\r\n );\r\n};\r\n\r\nexport const useToast = (): Toaster<ToastReference> => React.useContext(ToastContext);\r\n"],"names":["DEFAULT_AUTO_CLOSE_TIMEOUT","ToastContext","React","insertToastWithoutDuplicates","currentToasts","id","content","options","close","nextToasts","existingToastIndex","findIndex","toast","JSON","stringify","lastDuplicateId","lastUpdated","Date","now","push","ToastProvider","children","props","toasts","setToasts","handleClose","filter","toaster","uuid","update","success","autoClose","type","error","warning","information","loading","Provider","value","className","role","AnimatePresence","initial","map","motion","div","key","transition","damping","stiffness","opacity","y","scale","animate","exit","duration","Toast","onClose","useToast"],"mappings":"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"}
1
+ {"version":3,"file":"Toaster.js","sources":["../../../../src/components/Toast/Toaster.tsx"],"sourcesContent":["import * as React from 'react';\nimport { v4 as uuid } from 'uuid';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { ToastOptions, Toast, ToastProps } from './Toast';\nimport './Toast.css';\n\nconst DEFAULT_AUTO_CLOSE_TIMEOUT = 7500;\n\ntype ToastCreator<T> = (content: React.ReactNode | ((close: () => void) => React.ReactNode), options?: ToastOptions) => T;\n\nexport interface Toaster<T> extends ToastCreator<T> {\n success: ToastCreator<T>;\n error: ToastCreator<T>;\n warning: ToastCreator<T>;\n information: ToastCreator<T>;\n loading: ToastCreator<T>;\n}\n\nexport interface ToastReference {\n /** Show a success toast */\n success: ToastCreator<void>;\n /** Show an error toast */\n error: ToastCreator<void>;\n /** Show a warning toast */\n warning: ToastCreator<void>;\n /** Show an information toast */\n information: ToastCreator<void>;\n /** Show a loading toast */\n loading: ToastCreator<void>;\n /**\n * Close an existing toast.\n * The toast function returns a reference to the active toast,\n * allowing you to programmatically close it when needed\n */\n close: () => void;\n}\n\nconst ToastContext = React.createContext<Toaster<ToastReference>>({} as Toaster<ToastReference>);\n\nexport interface ToastProviderProps {\n children: React.ReactNode;\n}\n\ntype InternalToast = Omit<ToastProps, 'onClose'>;\n\nconst insertToastWithoutDuplicates = (\n currentToasts: InternalToast[],\n id: string,\n content: React.ReactNode,\n options: ToastOptions,\n close: () => void\n): InternalToast[] => {\n const nextToasts = [...currentToasts];\n const existingToastIndex = currentToasts.findIndex(toast => JSON.stringify(toast.content) === JSON.stringify(content));\n\n if (existingToastIndex > -1) {\n nextToasts[existingToastIndex].lastDuplicateId = id;\n nextToasts[existingToastIndex].lastUpdated = Date.now();\n } else {\n nextToasts.push({\n id,\n content: typeof content === 'function' ? content(close) : content,\n options,\n });\n }\n\n return nextToasts;\n};\n\nexport const ToastProvider = ({ children, ...props }: ToastProviderProps): JSX.Element => {\n const [toasts, setToasts] = React.useState<InternalToast[]>([]);\n\n const handleClose = (id: string): void => {\n setToasts(currentToasts => currentToasts.filter(toast => toast.id !== id));\n };\n\n // memoize (useCallback) this function,\n // it is the value of the context provider and we don't want it to trigger state tree re-renders on provider children\n const toaster = React.useCallback((content: React.ReactNode, options: ToastOptions): ToastReference => {\n const id = uuid();\n const close = (): void => handleClose(id);\n\n setToasts(currentToasts => insertToastWithoutDuplicates(currentToasts, id, content, options, close));\n\n const update = (content: React.ReactNode, options: ToastOptions): void => {\n setToasts(currentToasts => {\n const nextToasts = currentToasts.filter(toast => {\n if (toast.lastDuplicateId) {\n return toast.lastDuplicateId !== id;\n }\n\n return toast.id !== id;\n });\n return insertToastWithoutDuplicates(nextToasts, uuid(), content, options, close);\n });\n };\n\n const success = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\n update(content, { autoClose: DEFAULT_AUTO_CLOSE_TIMEOUT, ...options, type: 'success' });\n };\n const error = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\n update(content, { ...options, type: 'error' });\n };\n const warning = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\n update(content, { ...options, type: 'warning' });\n };\n const information = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\n update(content, { ...options, type: 'information' });\n };\n const loading = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): void => {\n update(content, { ...options, type: 'loading' });\n };\n\n return {\n success,\n error,\n warning,\n information,\n loading,\n close,\n };\n }, []) as Toaster<ToastReference>;\n\n // no need to rebind these every render, do them once in an effect\n React.useEffect(() => {\n toaster.success = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\n toaster(content, { autoClose: DEFAULT_AUTO_CLOSE_TIMEOUT, ...options, type: 'success' });\n toaster.error = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\n toaster(content, { ...options, type: 'error' });\n toaster.warning = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\n toaster(content, { ...options, type: 'warning' });\n toaster.information = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\n toaster(content, { ...options, type: 'information' });\n toaster.loading = (content: React.ReactNode, options?: Omit<ToastOptions, 'type'>): ToastReference =>\n toaster(content, { ...options, type: 'loading' });\n }, []);\n\n return (\n <ToastContext.Provider {...props} value={toaster}>\n {children}\n <div\n id=\"yt-toast__container\"\n className=\"flex flex-col items-end justify-end fixed bottom-0 right-0 mb-4 mr-4 max-w-md z-[1000]\"\n role=\"log\"\n >\n <AnimatePresence initial={false}>\n {toasts.map((toast: ToastProps) => (\n <motion.div\n key={toast.id}\n transition={{\n type: 'spring',\n damping: 20,\n stiffness: 300,\n }}\n initial={{ opacity: 0, y: 10, scale: 0.5 }}\n animate={{ opacity: 1, y: 0, scale: 1 }}\n exit={{ opacity: 0, scale: 0.5, transition: { duration: 0.2 } }}\n >\n <Toast {...toast} onClose={() => handleClose(toast.id)} />\n </motion.div>\n ))}\n </AnimatePresence>\n </div>\n </ToastContext.Provider>\n );\n};\n\nexport const useToast = (): Toaster<ToastReference> => React.useContext(ToastContext);\n"],"names":["DEFAULT_AUTO_CLOSE_TIMEOUT","ToastContext","React","insertToastWithoutDuplicates","currentToasts","id","content","options","close","nextToasts","existingToastIndex","findIndex","toast","JSON","stringify","lastDuplicateId","lastUpdated","Date","now","push","ToastProvider","children","props","toasts","setToasts","handleClose","filter","toaster","uuid","update","success","autoClose","type","error","warning","information","loading","Provider","value","className","role","AnimatePresence","initial","map","motion","div","key","transition","damping","stiffness","opacity","y","scale","animate","exit","duration","Toast","onClose","useToast"],"mappings":"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"}
@@ -3,8 +3,8 @@ import cn from 'classnames';
3
3
  import { Icon } from '../Icon/Icon.js';
4
4
  import { Spinner } from '../Spinner/Spinner.js';
5
5
 
6
- const getBadgeIcon = type => {
7
- const css = 'rounded-full flex-shrink-0 mr-2';
6
+ var getBadgeIcon = function getBadgeIcon(type) {
7
+ var css = 'rounded-full flex-shrink-0 mr-2';
8
8
 
9
9
  switch (type) {
10
10
  case 'success':
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sources":["../../../../src/components/Toast/util.tsx"],"sourcesContent":["import React from 'react';\r\nimport cn from 'classnames';\r\nimport { Icon } from '../Icon/Icon';\r\nimport { Spinner } from '../Spinner/Spinner';\r\nimport { ToastType } from './Toast';\r\n\r\nexport const getBadgeIcon = (type: ToastType): JSX.Element | null => {\r\n const css = 'rounded-full flex-shrink-0 mr-2';\r\n\r\n switch (type) {\r\n case 'success':\r\n return <Icon name=\"tick\" className={cn(css, 'yt-green-solid')} />;\r\n\r\n case 'warning':\r\n return <Icon name=\"warning\" className={cn(css, 'yt-yellow-solid')} />;\r\n\r\n case 'error':\r\n return <Icon name=\"warning\" className={cn(css, 'yt-red-solid')} />;\r\n\r\n case 'information':\r\n return <Icon name=\"info\" className={cn(css, 'yt-blue-solid')} />;\r\n\r\n case 'loading':\r\n return <Spinner delay={0} className={cn(css, 'h-6 w-6')} />;\r\n\r\n default:\r\n return null;\r\n }\r\n};\r\n"],"names":["getBadgeIcon","type","css","React","Icon","name","className","cn","Spinner","delay"],"mappings":";;;;;MAMaA,YAAY,GAAIC,IAAD;AACxB,QAAMC,GAAG,GAAG,iCAAZ;;AAEA,UAAQD,IAAR;AACI,SAAK,SAAL;AACI,aAAOE,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAOC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,gBAAN;OAA/B,CAAP;;AAEJ,SAAK,SAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAUC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,iBAAN;OAAlC,CAAP;;AAEJ,SAAK,OAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAUC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,cAAN;OAAlC,CAAP;;AAEJ,SAAK,aAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAOC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,eAAN;OAA/B,CAAP;;AAEJ,SAAK,SAAL;AACI,aAAOC,4BAAA,CAACK,OAAD;AAASC,QAAAA,KAAK,EAAE;AAAGH,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,SAAN;OAAhC,CAAP;;AAEJ;AACI,aAAO,IAAP;AAjBR;AAmBH;;;;"}
1
+ {"version":3,"file":"util.js","sources":["../../../../src/components/Toast/util.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { Icon } from '../Icon/Icon';\nimport { Spinner } from '../Spinner/Spinner';\nimport { ToastType } from './Toast';\n\nexport const getBadgeIcon = (type: ToastType): JSX.Element | null => {\n const css = 'rounded-full flex-shrink-0 mr-2';\n\n switch (type) {\n case 'success':\n return <Icon name=\"tick\" className={cn(css, 'yt-green-solid')} />;\n\n case 'warning':\n return <Icon name=\"warning\" className={cn(css, 'yt-yellow-solid')} />;\n\n case 'error':\n return <Icon name=\"warning\" className={cn(css, 'yt-red-solid')} />;\n\n case 'information':\n return <Icon name=\"info\" className={cn(css, 'yt-blue-solid')} />;\n\n case 'loading':\n return <Spinner delay={0} className={cn(css, 'h-6 w-6')} />;\n\n default:\n return null;\n }\n};\n"],"names":["getBadgeIcon","type","css","React","Icon","name","className","cn","Spinner","delay"],"mappings":";;;;;IAMaA,YAAY,GAAG,SAAfA,YAAe,CAACC,IAAD;AACxB,MAAMC,GAAG,GAAG,iCAAZ;;AAEA,UAAQD,IAAR;AACI,SAAK,SAAL;AACI,aAAOE,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAOC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,gBAAN;OAA/B,CAAP;;AAEJ,SAAK,SAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAUC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,iBAAN;OAAlC,CAAP;;AAEJ,SAAK,OAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAUC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,cAAN;OAAlC,CAAP;;AAEJ,SAAK,aAAL;AACI,aAAOC,4BAAA,CAACC,IAAD;AAAMC,QAAAA,IAAI,EAAC;AAAOC,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,eAAN;OAA/B,CAAP;;AAEJ,SAAK,SAAL;AACI,aAAOC,4BAAA,CAACK,OAAD;AAASC,QAAAA,KAAK,EAAE;AAAGH,QAAAA,SAAS,EAAEC,EAAE,CAACL,GAAD,EAAM,SAAN;OAAhC,CAAP;;AAEJ;AACI,aAAO,IAAP;AAjBR;AAmBH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\r\n\r\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement> & {\r\n /** The element which activates the tooltip when hovered. Should be a single React/HTML element */\r\n children: React.ReactElement | any;\r\n /** Text displayed in the tooltip */\r\n title: string;\r\n /**\r\n * Placement of the tooltip relative to the reference element. Placement will be reversed if a collision occurs\r\n * @defaultValue bottom\r\n */\r\n placement?: 'top' | 'right' | 'bottom' | 'left';\r\n};\r\n\r\nexport const Tooltip = React.forwardRef((props: TooltipProps, ref: React.Ref<HTMLElement>) => {\r\n const { title, children, placement, ...otherProps } = props;\r\n\r\n return (\r\n <TooltipPrimitive.Root delayDuration={50}>\r\n <TooltipPrimitive.Trigger asChild ref={ref as any}>\r\n {children}\r\n </TooltipPrimitive.Trigger>\r\n <TooltipPrimitive.Content {...otherProps} asChild side={placement} sideOffset={3}>\r\n <div\r\n className=\"wcag-purple animate-[fade-in_150ms] rounded-sm px-2 py-1 text-xs font-bold\"\r\n data-taco=\"tooltip\"\r\n style={{\r\n transformOrigin: 'var(--radix-tooltip-content-transform-origin)',\r\n }}\r\n >\r\n <TooltipPrimitive.Arrow className=\"fill-purple stroke-purple\" />\r\n {title}\r\n </div>\r\n </TooltipPrimitive.Content>\r\n </TooltipPrimitive.Root>\r\n );\r\n});\r\n"],"names":["Tooltip","React","props","ref","title","children","placement","otherProps","TooltipPrimitive","delayDuration","asChild","side","sideOffset","className","style","transformOrigin"],"mappings":";;;;;IAeaA,OAAO,gBAAGC,UAAA,CAAiB,UAACC,KAAD,EAAsBC,GAAtB;AACpC,MAAQC,KAAR,GAAsDF,KAAtD,CAAQE,KAAR;AAAA,MAAeC,QAAf,GAAsDH,KAAtD,CAAeG,QAAf;AAAA,MAAyBC,SAAzB,GAAsDJ,KAAtD,CAAyBI,SAAzB;AAAA,MAAuCC,UAAvC,iCAAsDL,KAAtD;;AAEA,SACID,aAAA,CAACO,IAAD;AAAuBC,IAAAA,aAAa,EAAE;GAAtC,EACIR,aAAA,CAACO,OAAD;AAA0BE,IAAAA,OAAO;AAACP,IAAAA,GAAG,EAAEA;GAAvC,EACKE,QADL,CADJ,EAIIJ,aAAA,CAACO,OAAD,oBAA8BD;AAAYG,IAAAA,OAAO;AAACC,IAAAA,IAAI,EAAEL;AAAWM,IAAAA,UAAU,EAAE;IAA/E,EACIX,aAAA,MAAA;AACIY,IAAAA,SAAS,EAAC;iBACA;AACVC,IAAAA,KAAK,EAAE;AACHC,MAAAA,eAAe,EAAE;AADd;GAHX,EAOId,aAAA,CAACO,KAAD;AAAwBK,IAAAA,SAAS,EAAC;GAAlC,CAPJ,EAQKT,KARL,CADJ,CAJJ,CADJ;AAmBH,CAtBsB;;;;"}
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\n\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement> & {\n /** The element which activates the tooltip when hovered. Should be a single React/HTML element */\n children: React.ReactElement | any;\n /** Text displayed in the tooltip */\n title: string;\n /**\n * Placement of the tooltip relative to the reference element. Placement will be reversed if a collision occurs\n * @defaultValue bottom\n */\n placement?: 'top' | 'right' | 'bottom' | 'left';\n};\n\nexport const Tooltip = React.forwardRef((props: TooltipProps, ref: React.Ref<HTMLElement>) => {\n const { title, children, placement, ...otherProps } = props;\n\n return (\n <TooltipPrimitive.Root delayDuration={50}>\n <TooltipPrimitive.Trigger asChild ref={ref as any}>\n {children}\n </TooltipPrimitive.Trigger>\n <TooltipPrimitive.Content {...otherProps} asChild side={placement} sideOffset={3}>\n <div\n className=\"wcag-purple animate-[fade-in_150ms] rounded-sm px-2 py-1 text-xs font-bold\"\n data-taco=\"tooltip\"\n style={{\n transformOrigin: 'var(--radix-tooltip-content-transform-origin)',\n }}\n >\n <TooltipPrimitive.Arrow className=\"fill-purple stroke-purple\" />\n {title}\n </div>\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Root>\n );\n});\n"],"names":["Tooltip","React","props","ref","title","children","placement","otherProps","TooltipPrimitive","delayDuration","asChild","side","sideOffset","className","style","transformOrigin"],"mappings":";;;;;IAeaA,OAAO,gBAAGC,UAAA,CAAiB,UAACC,KAAD,EAAsBC,GAAtB;AACpC,MAAQC,KAAR,GAAsDF,KAAtD,CAAQE,KAAR;AAAA,MAAeC,QAAf,GAAsDH,KAAtD,CAAeG,QAAf;AAAA,MAAyBC,SAAzB,GAAsDJ,KAAtD,CAAyBI,SAAzB;AAAA,MAAuCC,UAAvC,iCAAsDL,KAAtD;;AAEA,SACID,aAAA,CAACO,IAAD;AAAuBC,IAAAA,aAAa,EAAE;GAAtC,EACIR,aAAA,CAACO,OAAD;AAA0BE,IAAAA,OAAO;AAACP,IAAAA,GAAG,EAAEA;GAAvC,EACKE,QADL,CADJ,EAIIJ,aAAA,CAACO,OAAD,oBAA8BD;AAAYG,IAAAA,OAAO;AAACC,IAAAA,IAAI,EAAEL;AAAWM,IAAAA,UAAU,EAAE;IAA/E,EACIX,aAAA,MAAA;AACIY,IAAAA,SAAS,EAAC;iBACA;AACVC,IAAAA,KAAK,EAAE;AACHC,MAAAA,eAAe,EAAE;AADd;GAHX,EAOId,aAAA,CAACO,KAAD;AAAwBK,IAAAA,SAAS,EAAC;GAAlC,CAPJ,EAQKT,KARL,CADJ,CAJJ,CADJ;AAmBH,CAtBsB;;;;"}