@economic/taco 2.4.1 → 2.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (520) hide show
  1. package/dist/components/Table3/types.d.ts +2 -3
  2. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  3. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
  4. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  5. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
  6. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
  7. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
  8. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
  9. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
  10. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
  11. package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
  12. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
  13. package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
  14. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  15. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  16. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
  17. package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
  18. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  19. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
  20. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
  21. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  22. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  23. package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
  24. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
  25. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  26. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
  27. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
  28. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
  29. package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
  30. package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
  31. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
  32. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  33. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
  34. package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
  35. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  36. package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
  37. package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
  38. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
  39. package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
  40. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
  41. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
  42. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
  43. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  44. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  45. package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
  46. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
  47. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
  48. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
  49. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
  50. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
  51. package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
  52. package/dist/esm/packages/taco/src/components/Icon/components/AccountPreview.js.map +1 -1
  53. package/dist/esm/packages/taco/src/components/Icon/components/Accounting.js.map +1 -1
  54. package/dist/esm/packages/taco/src/components/Icon/components/AccountingYear.js.map +1 -1
  55. package/dist/esm/packages/taco/src/components/Icon/components/AccountingYearCancel.js.map +1 -1
  56. package/dist/esm/packages/taco/src/components/Icon/components/ArrowBottom.js.map +1 -1
  57. package/dist/esm/packages/taco/src/components/Icon/components/ArrowDown.js.map +1 -1
  58. package/dist/esm/packages/taco/src/components/Icon/components/ArrowEnd.js.map +1 -1
  59. package/dist/esm/packages/taco/src/components/Icon/components/ArrowLeft.js.map +1 -1
  60. package/dist/esm/packages/taco/src/components/Icon/components/ArrowRight.js.map +1 -1
  61. package/dist/esm/packages/taco/src/components/Icon/components/ArrowStart.js.map +1 -1
  62. package/dist/esm/packages/taco/src/components/Icon/components/ArrowTop.js.map +1 -1
  63. package/dist/esm/packages/taco/src/components/Icon/components/ArrowUp.js.map +1 -1
  64. package/dist/esm/packages/taco/src/components/Icon/components/Attach.js.map +1 -1
  65. package/dist/esm/packages/taco/src/components/Icon/components/AttachAuto.js.map +1 -1
  66. package/dist/esm/packages/taco/src/components/Icon/components/AttachCancel.js.map +1 -1
  67. package/dist/esm/packages/taco/src/components/Icon/components/Autotext.js.map +1 -1
  68. package/dist/esm/packages/taco/src/components/Icon/components/AutotextInsert.js.map +1 -1
  69. package/dist/esm/packages/taco/src/components/Icon/components/Basic.js.map +1 -1
  70. package/dist/esm/packages/taco/src/components/Icon/components/BasicTabs.js.map +1 -1
  71. package/dist/esm/packages/taco/src/components/Icon/components/BellSolid.js.map +1 -1
  72. package/dist/esm/packages/taco/src/components/Icon/components/Book.js.map +1 -1
  73. package/dist/esm/packages/taco/src/components/Icon/components/Booking.js.map +1 -1
  74. package/dist/esm/packages/taco/src/components/Icon/components/Budget.js.map +1 -1
  75. package/dist/esm/packages/taco/src/components/Icon/components/Calendar.js.map +1 -1
  76. package/dist/esm/packages/taco/src/components/Icon/components/CashAccount.js.map +1 -1
  77. package/dist/esm/packages/taco/src/components/Icon/components/CashReports.js.map +1 -1
  78. package/dist/esm/packages/taco/src/components/Icon/components/Chat.js.map +1 -1
  79. package/dist/esm/packages/taco/src/components/Icon/components/ChatSolid.js.map +1 -1
  80. package/dist/esm/packages/taco/src/components/Icon/components/ChevronDown.js.map +1 -1
  81. package/dist/esm/packages/taco/src/components/Icon/components/ChevronDownDouble.js.map +1 -1
  82. package/dist/esm/packages/taco/src/components/Icon/components/ChevronDownSolid.js.map +1 -1
  83. package/dist/esm/packages/taco/src/components/Icon/components/ChevronLeft.js.map +1 -1
  84. package/dist/esm/packages/taco/src/components/Icon/components/ChevronLeftDouble.js.map +1 -1
  85. package/dist/esm/packages/taco/src/components/Icon/components/ChevronLeftSolid.js.map +1 -1
  86. package/dist/esm/packages/taco/src/components/Icon/components/ChevronRight.js.map +1 -1
  87. package/dist/esm/packages/taco/src/components/Icon/components/ChevronRightDouble.js.map +1 -1
  88. package/dist/esm/packages/taco/src/components/Icon/components/ChevronRightSolid.js.map +1 -1
  89. package/dist/esm/packages/taco/src/components/Icon/components/ChevronUp.js.map +1 -1
  90. package/dist/esm/packages/taco/src/components/Icon/components/ChevronUpDouble.js.map +1 -1
  91. package/dist/esm/packages/taco/src/components/Icon/components/ChevronUpSolid.js.map +1 -1
  92. package/dist/esm/packages/taco/src/components/Icon/components/CircleClose.js.map +1 -1
  93. package/dist/esm/packages/taco/src/components/Icon/components/CircleMinus.js.map +1 -1
  94. package/dist/esm/packages/taco/src/components/Icon/components/CirclePlus.js.map +1 -1
  95. package/dist/esm/packages/taco/src/components/Icon/components/CircleTick.js.map +1 -1
  96. package/dist/esm/packages/taco/src/components/Icon/components/Clamp.js.map +1 -1
  97. package/dist/esm/packages/taco/src/components/Icon/components/ClampOpen.js.map +1 -1
  98. package/dist/esm/packages/taco/src/components/Icon/components/Close.js.map +1 -1
  99. package/dist/esm/packages/taco/src/components/Icon/components/ColumnFreeze.js.map +1 -1
  100. package/dist/esm/packages/taco/src/components/Icon/components/ColumnUnfreeze.js.map +1 -1
  101. package/dist/esm/packages/taco/src/components/Icon/components/Columns.js.map +1 -1
  102. package/dist/esm/packages/taco/src/components/Icon/components/ConnectionEnable.js.map +1 -1
  103. package/dist/esm/packages/taco/src/components/Icon/components/ConnectionRevoke.js.map +1 -1
  104. package/dist/esm/packages/taco/src/components/Icon/components/Contacts.js.map +1 -1
  105. package/dist/esm/packages/taco/src/components/Icon/components/Copy.js.map +1 -1
  106. package/dist/esm/packages/taco/src/components/Icon/components/Courses.js.map +1 -1
  107. package/dist/esm/packages/taco/src/components/Icon/components/Credit.js.map +1 -1
  108. package/dist/esm/packages/taco/src/components/Icon/components/Delete.js.map +1 -1
  109. package/dist/esm/packages/taco/src/components/Icon/components/DeletePermanently.js.map +1 -1
  110. package/dist/esm/packages/taco/src/components/Icon/components/Depecriate.js.map +1 -1
  111. package/dist/esm/packages/taco/src/components/Icon/components/Developer.js.map +1 -1
  112. package/dist/esm/packages/taco/src/components/Icon/components/DistributionTemplate.js.map +1 -1
  113. package/dist/esm/packages/taco/src/components/Icon/components/Document.js.map +1 -1
  114. package/dist/esm/packages/taco/src/components/Icon/components/DocumentApprove.js.map +1 -1
  115. package/dist/esm/packages/taco/src/components/Icon/components/DocumentCreateEntry.js.map +1 -1
  116. package/dist/esm/packages/taco/src/components/Icon/components/DocumentCut.js.map +1 -1
  117. package/dist/esm/packages/taco/src/components/Icon/components/DocumentError.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Icon/components/DocumentIsolatePage.js.map +1 -1
  119. package/dist/esm/packages/taco/src/components/Icon/components/DocumentMerge.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/Icon/components/DocumentMove.js.map +1 -1
  121. package/dist/esm/packages/taco/src/components/Icon/components/DocumentPreview.js.map +1 -1
  122. package/dist/esm/packages/taco/src/components/Icon/components/DocumentReceived.js.map +1 -1
  123. package/dist/esm/packages/taco/src/components/Icon/components/DocumentRejectedRequest.js.map +1 -1
  124. package/dist/esm/packages/taco/src/components/Icon/components/DocumentSplit.js.map +1 -1
  125. package/dist/esm/packages/taco/src/components/Icon/components/DocumentTime.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Icon/components/Download.js.map +1 -1
  127. package/dist/esm/packages/taco/src/components/Icon/components/Drag.js.map +1 -1
  128. package/dist/esm/packages/taco/src/components/Icon/components/ECopedia.js.map +1 -1
  129. package/dist/esm/packages/taco/src/components/Icon/components/ESignature.js.map +1 -1
  130. package/dist/esm/packages/taco/src/components/Icon/components/Edit.js.map +1 -1
  131. package/dist/esm/packages/taco/src/components/Icon/components/EllipsisHorizontal.js.map +1 -1
  132. package/dist/esm/packages/taco/src/components/Icon/components/EllipsisVertical.js.map +1 -1
  133. package/dist/esm/packages/taco/src/components/Icon/components/EntriesOnAccount.js.map +1 -1
  134. package/dist/esm/packages/taco/src/components/Icon/components/EntriesOpen.js.map +1 -1
  135. package/dist/esm/packages/taco/src/components/Icon/components/EntriesWarning.js.map +1 -1
  136. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeCustomerInvoice.js.map +1 -1
  137. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeCustomerPayment.js.map +1 -1
  138. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeJournalEntry.js.map +1 -1
  139. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeManualCustomerInvoice.js.map +1 -1
  140. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeSupplierInvoice.js.map +1 -1
  141. package/dist/esm/packages/taco/src/components/Icon/components/EntryTypeSupplierPayment.js.map +1 -1
  142. package/dist/esm/packages/taco/src/components/Icon/components/Envelope.js.map +1 -1
  143. package/dist/esm/packages/taco/src/components/Icon/components/EnvelopeApproved.js.map +1 -1
  144. package/dist/esm/packages/taco/src/components/Icon/components/ExpandView.js.map +1 -1
  145. package/dist/esm/packages/taco/src/components/Icon/components/Expenses.js.map +1 -1
  146. package/dist/esm/packages/taco/src/components/Icon/components/Export.js.map +1 -1
  147. package/dist/esm/packages/taco/src/components/Icon/components/ExportToExcel.js.map +1 -1
  148. package/dist/esm/packages/taco/src/components/Icon/components/ExportToPdf.js.map +1 -1
  149. package/dist/esm/packages/taco/src/components/Icon/components/EyeOff.js.map +1 -1
  150. package/dist/esm/packages/taco/src/components/Icon/components/EyeOn.js.map +1 -1
  151. package/dist/esm/packages/taco/src/components/Icon/components/Filter.js.map +1 -1
  152. package/dist/esm/packages/taco/src/components/Icon/components/FilterSolid.js.map +1 -1
  153. package/dist/esm/packages/taco/src/components/Icon/components/FontSize.js.map +1 -1
  154. package/dist/esm/packages/taco/src/components/Icon/components/GraphSolid.js.map +1 -1
  155. package/dist/esm/packages/taco/src/components/Icon/components/Hash.js.map +1 -1
  156. package/dist/esm/packages/taco/src/components/Icon/components/HeightExtraTall.js.map +1 -1
  157. package/dist/esm/packages/taco/src/components/Icon/components/HeightMedium.js.map +1 -1
  158. package/dist/esm/packages/taco/src/components/Icon/components/HeightShort.js.map +1 -1
  159. package/dist/esm/packages/taco/src/components/Icon/components/HeightTall.js.map +1 -1
  160. package/dist/esm/packages/taco/src/components/Icon/components/Home.js.map +1 -1
  161. package/dist/esm/packages/taco/src/components/Icon/components/Images.js.map +1 -1
  162. package/dist/esm/packages/taco/src/components/Icon/components/Import.js.map +1 -1
  163. package/dist/esm/packages/taco/src/components/Icon/components/Inbox.js.map +1 -1
  164. package/dist/esm/packages/taco/src/components/Icon/components/InboxEinvoicing.js.map +1 -1
  165. package/dist/esm/packages/taco/src/components/Icon/components/InboxScanning.js.map +1 -1
  166. package/dist/esm/packages/taco/src/components/Icon/components/InboxSmart.js.map +1 -1
  167. package/dist/esm/packages/taco/src/components/Icon/components/Info.js.map +1 -1
  168. package/dist/esm/packages/taco/src/components/Icon/components/Inventory.js.map +1 -1
  169. package/dist/esm/packages/taco/src/components/Icon/components/InventoryMatrix.js.map +1 -1
  170. package/dist/esm/packages/taco/src/components/Icon/components/JournalPro.js.map +1 -1
  171. package/dist/esm/packages/taco/src/components/Icon/components/Layout.js.map +1 -1
  172. package/dist/esm/packages/taco/src/components/Icon/components/LayoutBoth.js.map +1 -1
  173. package/dist/esm/packages/taco/src/components/Icon/components/LayoutFirst.js.map +1 -1
  174. package/dist/esm/packages/taco/src/components/Icon/components/LayoutLast.js.map +1 -1
  175. package/dist/esm/packages/taco/src/components/Icon/components/LayoutNone.js.map +1 -1
  176. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCard.js.map +1 -1
  177. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardCustomerReminder.js.map +1 -1
  178. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardManualCustomerInvoice.js.map +1 -1
  179. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardObsoleteStock.js.map +1 -1
  180. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardOpeningEntry.js.map +1 -1
  181. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardReservedEntry.js.map +1 -1
  182. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardShrinkagePilferage.js.map +1 -1
  183. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardStockAdjustment.js.map +1 -1
  184. package/dist/esm/packages/taco/src/components/Icon/components/LedgerCardTransferredOpeningEntry.js.map +1 -1
  185. package/dist/esm/packages/taco/src/components/Icon/components/Lightbulb.js.map +1 -1
  186. package/dist/esm/packages/taco/src/components/Icon/components/Line.js.map +1 -1
  187. package/dist/esm/packages/taco/src/components/Icon/components/List.js.map +1 -1
  188. package/dist/esm/packages/taco/src/components/Icon/components/ListBulleted.js.map +1 -1
  189. package/dist/esm/packages/taco/src/components/Icon/components/ListSearch.js.map +1 -1
  190. package/dist/esm/packages/taco/src/components/Icon/components/LockOpen.js.map +1 -1
  191. package/dist/esm/packages/taco/src/components/Icon/components/Log.js.map +1 -1
  192. package/dist/esm/packages/taco/src/components/Icon/components/LogOut.js.map +1 -1
  193. package/dist/esm/packages/taco/src/components/Icon/components/Market.js.map +1 -1
  194. package/dist/esm/packages/taco/src/components/Icon/components/MatchAmount.js.map +1 -1
  195. package/dist/esm/packages/taco/src/components/Icon/components/MatchEntries.js.map +1 -1
  196. package/dist/esm/packages/taco/src/components/Icon/components/Menu.js.map +1 -1
  197. package/dist/esm/packages/taco/src/components/Icon/components/Mileage.js.map +1 -1
  198. package/dist/esm/packages/taco/src/components/Icon/components/ModalResize.js.map +1 -1
  199. package/dist/esm/packages/taco/src/components/Icon/components/ModalShrink.js.map +1 -1
  200. package/dist/esm/packages/taco/src/components/Icon/components/More.js.map +1 -1
  201. package/dist/esm/packages/taco/src/components/Icon/components/MoreSolid.js.map +1 -1
  202. package/dist/esm/packages/taco/src/components/Icon/components/Move.js.map +1 -1
  203. package/dist/esm/packages/taco/src/components/Icon/components/NavigationList.js.map +1 -1
  204. package/dist/esm/packages/taco/src/components/Icon/components/Note.js.map +1 -1
  205. package/dist/esm/packages/taco/src/components/Icon/components/NoteFollowUp.js.map +1 -1
  206. package/dist/esm/packages/taco/src/components/Icon/components/NoteRead.js.map +1 -1
  207. package/dist/esm/packages/taco/src/components/Icon/components/Numbers.js.map +1 -1
  208. package/dist/esm/packages/taco/src/components/Icon/components/PartnerApi.js.map +1 -1
  209. package/dist/esm/packages/taco/src/components/Icon/components/Period.js.map +1 -1
  210. package/dist/esm/packages/taco/src/components/Icon/components/PersonChange.js.map +1 -1
  211. package/dist/esm/packages/taco/src/components/Icon/components/PersonMinus.js.map +1 -1
  212. package/dist/esm/packages/taco/src/components/Icon/components/PersonPlus.js.map +1 -1
  213. package/dist/esm/packages/taco/src/components/Icon/components/PersonTick.js.map +1 -1
  214. package/dist/esm/packages/taco/src/components/Icon/components/Play.js.map +1 -1
  215. package/dist/esm/packages/taco/src/components/Icon/components/PlusMinus.js.map +1 -1
  216. package/dist/esm/packages/taco/src/components/Icon/components/Print.js.map +1 -1
  217. package/dist/esm/packages/taco/src/components/Icon/components/ProcessPayment.js.map +1 -1
  218. package/dist/esm/packages/taco/src/components/Icon/components/ProductLedgerCard.js.map +1 -1
  219. package/dist/esm/packages/taco/src/components/Icon/components/Profile.js.map +1 -1
  220. package/dist/esm/packages/taco/src/components/Icon/components/ProjectCards.js.map +1 -1
  221. package/dist/esm/packages/taco/src/components/Icon/components/Projects.js.map +1 -1
  222. package/dist/esm/packages/taco/src/components/Icon/components/QuestionMark.js.map +1 -1
  223. package/dist/esm/packages/taco/src/components/Icon/components/Quicklinks.js.map +1 -1
  224. package/dist/esm/packages/taco/src/components/Icon/components/RatingBankruptcy.js.map +1 -1
  225. package/dist/esm/packages/taco/src/components/Icon/components/RatingPaymentProblems.js.map +1 -1
  226. package/dist/esm/packages/taco/src/components/Icon/components/Reconciled.js.map +1 -1
  227. package/dist/esm/packages/taco/src/components/Icon/components/Refresh.js.map +1 -1
  228. package/dist/esm/packages/taco/src/components/Icon/components/Report.js.map +1 -1
  229. package/dist/esm/packages/taco/src/components/Icon/components/ReportSolid.js.map +1 -1
  230. package/dist/esm/packages/taco/src/components/Icon/components/Restore.js.map +1 -1
  231. package/dist/esm/packages/taco/src/components/Icon/components/RotateLeft.js.map +1 -1
  232. package/dist/esm/packages/taco/src/components/Icon/components/RotateRight.js.map +1 -1
  233. package/dist/esm/packages/taco/src/components/Icon/components/Sales.js.map +1 -1
  234. package/dist/esm/packages/taco/src/components/Icon/components/Search.js.map +1 -1
  235. package/dist/esm/packages/taco/src/components/Icon/components/SearchBold.js.map +1 -1
  236. package/dist/esm/packages/taco/src/components/Icon/components/Secure.js.map +1 -1
  237. package/dist/esm/packages/taco/src/components/Icon/components/SecureTick.js.map +1 -1
  238. package/dist/esm/packages/taco/src/components/Icon/components/Settings.js.map +1 -1
  239. package/dist/esm/packages/taco/src/components/Icon/components/SettingsSolid.js.map +1 -1
  240. package/dist/esm/packages/taco/src/components/Icon/components/Shortcuts.js.map +1 -1
  241. package/dist/esm/packages/taco/src/components/Icon/components/ShowAll.js.map +1 -1
  242. package/dist/esm/packages/taco/src/components/Icon/components/ShowLess.js.map +1 -1
  243. package/dist/esm/packages/taco/src/components/Icon/components/ShowMore.js.map +1 -1
  244. package/dist/esm/packages/taco/src/components/Icon/components/ShowTemplate.js.map +1 -1
  245. package/dist/esm/packages/taco/src/components/Icon/components/Sliders.js.map +1 -1
  246. package/dist/esm/packages/taco/src/components/Icon/components/Smartpay.js.map +1 -1
  247. package/dist/esm/packages/taco/src/components/Icon/components/SortBy.js.map +1 -1
  248. package/dist/esm/packages/taco/src/components/Icon/components/Star.js.map +1 -1
  249. package/dist/esm/packages/taco/src/components/Icon/components/StarSolid.js.map +1 -1
  250. package/dist/esm/packages/taco/src/components/Icon/components/Subscriptions.js.map +1 -1
  251. package/dist/esm/packages/taco/src/components/Icon/components/SystemEntries.js.map +1 -1
  252. package/dist/esm/packages/taco/src/components/Icon/components/Tag.js.map +1 -1
  253. package/dist/esm/packages/taco/src/components/Icon/components/TemplateOverride.js.map +1 -1
  254. package/dist/esm/packages/taco/src/components/Icon/components/Templates.js.map +1 -1
  255. package/dist/esm/packages/taco/src/components/Icon/components/ThumbBoth.js.map +1 -1
  256. package/dist/esm/packages/taco/src/components/Icon/components/ThumbDown.js.map +1 -1
  257. package/dist/esm/packages/taco/src/components/Icon/components/ThumbDownSolid.js.map +1 -1
  258. package/dist/esm/packages/taco/src/components/Icon/components/ThumbUp.js.map +1 -1
  259. package/dist/esm/packages/taco/src/components/Icon/components/ThumbUpSolid.js.map +1 -1
  260. package/dist/esm/packages/taco/src/components/Icon/components/Tick.js.map +1 -1
  261. package/dist/esm/packages/taco/src/components/Icon/components/TickBold.js.map +1 -1
  262. package/dist/esm/packages/taco/src/components/Icon/components/Time.js.map +1 -1
  263. package/dist/esm/packages/taco/src/components/Icon/components/Transfer.js.map +1 -1
  264. package/dist/esm/packages/taco/src/components/Icon/components/TransferCancel.js.map +1 -1
  265. package/dist/esm/packages/taco/src/components/Icon/components/TransferLocked.js.map +1 -1
  266. package/dist/esm/packages/taco/src/components/Icon/components/Undo.js.map +1 -1
  267. package/dist/esm/packages/taco/src/components/Icon/components/Undock.js.map +1 -1
  268. package/dist/esm/packages/taco/src/components/Icon/components/Unreconciled.js.map +1 -1
  269. package/dist/esm/packages/taco/src/components/Icon/components/Warning.js.map +1 -1
  270. package/dist/esm/packages/taco/src/components/Icon/components/Webshop.js.map +1 -1
  271. package/dist/esm/packages/taco/src/components/Icon/components/Website.js.map +1 -1
  272. package/dist/esm/packages/taco/src/components/Icon/components/Workflow.js.map +1 -1
  273. package/dist/esm/packages/taco/src/components/Icon/components/WorkflowTemplateBasic.js.map +1 -1
  274. package/dist/esm/packages/taco/src/components/Icon/components/Zoom.js.map +1 -1
  275. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  276. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  277. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  278. package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
  279. package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
  280. package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
  281. package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
  282. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
  283. package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
  284. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
  285. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
  286. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
  287. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
  288. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
  289. package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
  290. package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
  291. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  292. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
  293. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  294. package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
  295. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  296. package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
  297. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
  298. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
  299. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
  300. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
  301. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
  302. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
  303. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
  304. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
  305. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
  306. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
  307. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
  308. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
  309. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
  310. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
  311. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
  312. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
  313. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  314. package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
  315. package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
  316. package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
  317. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  318. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  319. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
  320. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  321. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
  322. package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
  323. package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
  324. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  325. package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
  326. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  327. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
  328. package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
  329. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  330. package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
  331. package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
  332. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  333. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
  334. package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
  335. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  336. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
  337. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  338. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
  339. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
  340. package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
  341. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
  342. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  343. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  344. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  345. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  346. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
  347. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
  348. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  349. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
  350. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
  351. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
  352. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
  353. package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
  354. package/dist/esm/packages/taco/src/components/Table2/Table2.js.map +1 -1
  355. package/dist/esm/packages/taco/src/components/Table2/components/BatchActionsMenu.js.map +1 -1
  356. package/dist/esm/packages/taco/src/components/Table2/components/ColumnSettingsButton.js.map +1 -1
  357. package/dist/esm/packages/taco/src/components/Table2/components/EditModeButton.js.map +1 -1
  358. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js.map +1 -1
  359. package/dist/esm/packages/taco/src/components/Table2/components/Search.js.map +1 -1
  360. package/dist/esm/packages/taco/src/components/Table2/components/column/Base.js.map +1 -1
  361. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js.map +1 -1
  362. package/dist/esm/packages/taco/src/components/Table2/components/column/Footer.js.map +1 -1
  363. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js.map +1 -1
  364. package/dist/esm/packages/taco/src/components/Table2/components/column/Indicator.js.map +1 -1
  365. package/dist/esm/packages/taco/src/components/Table2/components/column/ValidationError.js.map +1 -1
  366. package/dist/esm/packages/taco/src/components/Table2/components/column/utils.js.map +1 -1
  367. package/dist/esm/packages/taco/src/components/Table2/components/filters/FiltersButton.js.map +1 -1
  368. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Column.js.map +1 -1
  369. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/ColumnFilter.js.map +1 -1
  370. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Comparator.js.map +1 -1
  371. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/InferredControl.js.map +1 -1
  372. package/dist/esm/packages/taco/src/components/Table2/components/row/Context.js.map +1 -1
  373. package/dist/esm/packages/taco/src/components/Table2/components/row/ExpandedRow.js.map +1 -1
  374. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js.map +1 -1
  375. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useActiveRowStateListener.js.map +1 -1
  376. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useColumnOffsetStateListener.js.map +1 -1
  377. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useFilterStateListener.js.map +1 -1
  378. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useRowSelectionListener.js.map +1 -1
  379. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useSettingsStateListener.js.map +1 -1
  380. package/dist/esm/packages/taco/src/components/Table2/hooks/useActiveRow.js.map +1 -1
  381. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js.map +1 -1
  382. package/dist/esm/packages/taco/src/components/Table2/hooks/useEditMode.js.map +1 -1
  383. package/dist/esm/packages/taco/src/components/Table2/hooks/useTable.js.map +1 -1
  384. package/dist/esm/packages/taco/src/components/Table2/hooks/useTableShortcuts.js.map +1 -1
  385. package/dist/esm/packages/taco/src/components/Table2/hooks/useVirtualiser.js.map +1 -1
  386. package/dist/esm/packages/taco/src/components/Table2/utilities/cell.js.map +1 -1
  387. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js.map +1 -1
  388. package/dist/esm/packages/taco/src/components/Table2/utilities/filterFn.js.map +1 -1
  389. package/dist/esm/packages/taco/src/components/Table3/Table3.js +6 -3
  390. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  391. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Cell.js.map +1 -1
  392. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/DisplayCell.js.map +1 -1
  393. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingCell.js.map +1 -1
  394. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Indicator.js.map +1 -1
  395. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Footer.js.map +1 -1
  396. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js.map +1 -1
  397. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Goto.js.map +1 -1
  398. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js.map +1 -1
  399. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Menu.js.map +1 -1
  400. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Resizer.js.map +1 -1
  401. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/SortIndicator.js.map +1 -1
  402. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Actions.js.map +1 -1
  403. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Drag.js.map +1 -1
  404. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/EditingActions.js.map +1 -1
  405. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Expansion.js.map +1 -1
  406. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Selection.js.map +1 -1
  407. package/dist/esm/packages/taco/src/components/Table3/components/columns/styles.js.map +1 -1
  408. package/dist/esm/packages/taco/src/components/Table3/components/rows/ExpandedRow.js.map +1 -1
  409. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js.map +1 -1
  410. package/dist/esm/packages/taco/src/components/Table3/components/rows/RowContext.js.map +1 -1
  411. package/dist/esm/packages/taco/src/components/Table3/components/rows/SkeletonRow.js.map +1 -1
  412. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/ColumnSettings.js.map +1 -1
  413. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js.map +1 -1
  414. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js.map +1 -1
  415. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Filter.js.map +1 -1
  416. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.js.map +1 -1
  417. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.js.map +1 -1
  418. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterValue.js.map +1 -1
  419. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Placeholder.js.map +1 -1
  420. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/FontSize.js.map +1 -1
  421. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js +11 -7
  422. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js.map +1 -1
  423. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js +0 -2
  424. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js.map +1 -1
  425. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/WarningDialog.js.map +1 -1
  426. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.js.map +1 -1
  427. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/RowHeight.js.map +1 -1
  428. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Search.js.map +1 -1
  429. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Toolbar.js.map +1 -1
  430. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnFreezing.js.map +1 -1
  431. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnOrdering.js.map +1 -1
  432. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useCurrentRow.js.map +1 -1
  433. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js.map +1 -1
  434. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useFontSize.js.map +1 -1
  435. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePauseHoverState.js.map +1 -1
  436. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePrinting.js.map +1 -1
  437. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowActions.js.map +1 -1
  438. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowClick.js.map +1 -1
  439. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrag.js.map +1 -1
  440. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrop.js.map +1 -1
  441. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowGoto.js.map +1 -1
  442. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowHeight.js.map +1 -1
  443. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowSelection.js.map +1 -1
  444. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSearch.js.map +1 -1
  445. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSettings.js.map +1 -1
  446. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useCurrentRowListener.js.map +1 -1
  447. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useEditingStateListener.js.map +1 -1
  448. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useFilteringStateListener.js.map +1 -1
  449. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useRowSelectionListener.js.map +1 -1
  450. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useServerLoadingListener.js.map +1 -1
  451. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js +3 -3
  452. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js.map +1 -1
  453. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useShortcutsListener.js.map +1 -1
  454. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSortingStateListener.js.map +1 -1
  455. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js +1 -1
  456. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js.map +1 -1
  457. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssVars.js.map +1 -1
  458. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js +25 -8
  459. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js.map +1 -1
  460. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableDataLoader.js +11 -2
  461. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableDataLoader.js.map +1 -1
  462. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js.map +1 -1
  463. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableRefInstanceSetup.js.map +1 -1
  464. package/dist/esm/packages/taco/src/components/Table3/strategies/index.js.map +1 -1
  465. package/dist/esm/packages/taco/src/components/Table3/strategies/virtualised.js.map +1 -1
  466. package/dist/esm/packages/taco/src/components/Table3/types.js.map +1 -1
  467. package/dist/esm/packages/taco/src/components/Table3/util/columns.js.map +1 -1
  468. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
  469. package/dist/esm/packages/taco/src/components/Table3/util/filtering.js.map +1 -1
  470. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  471. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
  472. package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
  473. package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
  474. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
  475. package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
  476. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
  477. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
  478. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  479. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
  480. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
  481. package/dist/esm/packages/taco/src/hooks/useDebouncedEffect.js.map +1 -1
  482. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  483. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
  484. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
  485. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
  486. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
  487. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
  488. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
  489. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
  490. package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
  491. package/dist/esm/packages/taco/src/hooks/useTacoSettings.js.map +1 -1
  492. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  493. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
  494. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
  495. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
  496. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
  497. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
  498. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
  499. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
  500. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
  501. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
  502. package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
  503. package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
  504. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  505. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
  506. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  507. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
  508. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
  509. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
  510. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
  511. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  512. package/dist/esm/packages/taco/src/utils/keyboard.js +2 -2
  513. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  514. package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
  515. package/dist/taco.cjs.development.js +57 -28
  516. package/dist/taco.cjs.development.js.map +1 -1
  517. package/dist/taco.cjs.production.min.js +1 -1
  518. package/dist/taco.cjs.production.min.js.map +1 -1
  519. package/package.json +2 -2
  520. package/types.json +5129 -5144
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnFilter.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/ColumnFilter.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn, Table as RTTable } from '@tanstack/react-table';\nimport { IconButton } from '../../../../IconButton/IconButton';\nimport { Input } from '../../../../Input/Input';\nimport { Table2ColumnControlRenderer, Table2Filter, Table2FilterComparator } from '../../../types';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\nimport { Column } from './Column';\nimport { Comparator } from './Comparator';\nimport { InferredControl } from './InferredControl';\nimport { useLocalization } from '../../../../Provider/Localization';\n\nexport type ColumnFilterProps = {\n allColumns: RTColumn<any, any>[];\n column: RTColumn<any, any>;\n index: number;\n table: RTTable<any>;\n onRemove?: () => void;\n};\n\nexport const ColumnFilter = (props: ColumnFilterProps) => {\n const { allColumns, column, index, table, onRemove } = props;\n const { comparator, value } = column.getFilterValue() as Table2Filter;\n const ariaLabel = String(column.columnDef.header ?? '');\n const { texts } = useLocalization();\n const ref = React.useRef(null);\n\n let control;\n const controlType = column.columnDef.meta?.control;\n\n if (typeof controlType === 'function') {\n control = controlType({\n onBlur: () => Promise.resolve(),\n onFocus: () => Promise.resolve(),\n ref,\n setValue: value => column.setFilterValue(currentValue => ({ ...currentValue, value })),\n value,\n disabled: false,\n readOnly: false,\n });\n } else if (controlType === 'input') {\n control = (\n <Input\n aria-label={ariaLabel}\n onChange={event => column.setFilterValue(currentValue => ({ ...currentValue, value: event.target.value }))}\n value={String(value ?? '')}\n />\n );\n } else if (controlType === 'datepicker') {\n control = (\n <Datepicker\n aria-label={ariaLabel}\n onChange={event => column.setFilterValue(currentValue => ({ ...currentValue, value: (event as any).detail }))}\n value={value as Date}\n />\n );\n } else if (controlType === 'switch') {\n control = (\n <Switch\n aria-label={ariaLabel}\n checked={Boolean(value)}\n onChange={checked => column.setFilterValue(currentValue => ({ ...currentValue, value: checked }))}\n />\n );\n }\n\n const handleRemove = () => {\n column.setFilterValue(undefined);\n onRemove?.();\n };\n const comparators = guessComparatorsBasedOnControl(control, controlType);\n\n return (\n <div className=\"flex gap-2\">\n <div className=\"flex w-14 flex-shrink-0 items-center justify-end pr-2 text-right\">\n {index === 0 ? texts.table2.filters.conditions.where : texts.table2.filters.conditions.and}\n </div>\n <Column className=\"!w-32 flex-shrink-0\" allColumns={allColumns} column={column} index={index} table={table} />\n <Comparator className=\"!w-32 flex-shrink-0\" column={column} comparator={comparator} validComparators={comparators} />\n {comparator !== undefined ? (\n <div className=\"flex flex-grow items-center\">\n <InferredControl column={column} comparator={comparator} value={value} />\n </div>\n ) : null}\n <IconButton appearance=\"discrete\" icon=\"close\" onClick={handleRemove} />\n </div>\n );\n};\n\nconst guessComparatorsBasedOnControl = (instance: JSX.Element, control?: Table2ColumnControlRenderer) => {\n if (React.isValidElement(instance)) {\n const { props, type } = instance as any;\n\n if (type.displayName === 'Select2') {\n if (props.multiple) {\n return [Table2FilterComparator.IsOneOf, Table2FilterComparator.IsNoneOf, Table2FilterComparator.IsAllOf];\n }\n\n return [Table2FilterComparator.IsEqualTo, Table2FilterComparator.IsNotEqualTo];\n }\n }\n\n switch (control) {\n case 'datepicker':\n return [\n Table2FilterComparator.IsEqualTo,\n Table2FilterComparator.IsNotEqualTo,\n Table2FilterComparator.IsGreaterThan,\n Table2FilterComparator.IsLessThan,\n Table2FilterComparator.IsBetween,\n ];\n\n case 'switch':\n return [Table2FilterComparator.IsEqualTo];\n\n default:\n return [\n Table2FilterComparator.Contains,\n Table2FilterComparator.DoesNotContain,\n Table2FilterComparator.IsEqualTo,\n Table2FilterComparator.IsNotEqualTo,\n Table2FilterComparator.IsEmpty,\n Table2FilterComparator.IsNotEmpty,\n Table2FilterComparator.IsGreaterThan,\n Table2FilterComparator.IsLessThan,\n Table2FilterComparator.IsBetween,\n ];\n }\n};\n"],"names":["ColumnFilter","props","allColumns","column","index","table","onRemove","comparator","value","getFilterValue","ariaLabel","String","columnDef","header","texts","useLocalization","ref","React","useRef","control","controlType","meta","onBlur","Promise","resolve","onFocus","setValue","setFilterValue","currentValue","disabled","readOnly","Input","onChange","event","target","Datepicker","detail","Switch","checked","Boolean","handleRemove","undefined","comparators","guessComparatorsBasedOnControl","className","table2","filters","conditions","where","and","Column","Comparator","validComparators","InferredControl","IconButton","appearance","icon","onClick","instance","isValidElement","type","displayName","multiple","Table2FilterComparator","IsOneOf","IsNoneOf","IsAllOf","IsEqualTo","IsNotEqualTo","IsGreaterThan","IsLessThan","IsBetween","Contains","DoesNotContain","IsEmpty","IsNotEmpty"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnFilter.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/ColumnFilter.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn, Table as RTTable } from '@tanstack/react-table';\nimport { IconButton } from '../../../../IconButton/IconButton';\nimport { Input } from '../../../../Input/Input';\nimport { Table2ColumnControlRenderer, Table2Filter, Table2FilterComparator } from '../../../types';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\nimport { Column } from './Column';\nimport { Comparator } from './Comparator';\nimport { InferredControl } from './InferredControl';\nimport { useLocalization } from '../../../../Provider/Localization';\n\nexport type ColumnFilterProps = {\n allColumns: RTColumn<any, any>[];\n column: RTColumn<any, any>;\n index: number;\n table: RTTable<any>;\n onRemove?: () => void;\n};\n\nexport const ColumnFilter = (props: ColumnFilterProps) => {\n const { allColumns, column, index, table, onRemove } = props;\n const { comparator, value } = column.getFilterValue() as Table2Filter;\n const ariaLabel = String(column.columnDef.header ?? '');\n const { texts } = useLocalization();\n const ref = React.useRef(null);\n\n let control;\n const controlType = column.columnDef.meta?.control;\n\n if (typeof controlType === 'function') {\n control = controlType({\n onBlur: () => Promise.resolve(),\n onFocus: () => Promise.resolve(),\n ref,\n setValue: value => column.setFilterValue(currentValue => ({ ...currentValue, value })),\n value,\n disabled: false,\n readOnly: false,\n });\n } else if (controlType === 'input') {\n control = (\n <Input\n aria-label={ariaLabel}\n onChange={event => column.setFilterValue(currentValue => ({ ...currentValue, value: event.target.value }))}\n value={String(value ?? '')}\n />\n );\n } else if (controlType === 'datepicker') {\n control = (\n <Datepicker\n aria-label={ariaLabel}\n onChange={event => column.setFilterValue(currentValue => ({ ...currentValue, value: (event as any).detail }))}\n value={value as Date}\n />\n );\n } else if (controlType === 'switch') {\n control = (\n <Switch\n aria-label={ariaLabel}\n checked={Boolean(value)}\n onChange={checked => column.setFilterValue(currentValue => ({ ...currentValue, value: checked }))}\n />\n );\n }\n\n const handleRemove = () => {\n column.setFilterValue(undefined);\n onRemove?.();\n };\n const comparators = guessComparatorsBasedOnControl(control, controlType);\n\n return (\n <div className=\"flex gap-2\">\n <div className=\"flex w-14 flex-shrink-0 items-center justify-end pr-2 text-right\">\n {index === 0 ? texts.table2.filters.conditions.where : texts.table2.filters.conditions.and}\n </div>\n <Column className=\"!w-32 flex-shrink-0\" allColumns={allColumns} column={column} index={index} table={table} />\n <Comparator className=\"!w-32 flex-shrink-0\" column={column} comparator={comparator} validComparators={comparators} />\n {comparator !== undefined ? (\n <div className=\"flex flex-grow items-center\">\n <InferredControl column={column} comparator={comparator} value={value} />\n </div>\n ) : null}\n <IconButton appearance=\"discrete\" icon=\"close\" onClick={handleRemove} />\n </div>\n );\n};\n\nconst guessComparatorsBasedOnControl = (instance: JSX.Element, control?: Table2ColumnControlRenderer) => {\n if (React.isValidElement(instance)) {\n const { props, type } = instance as any;\n\n if (type.displayName === 'Select2') {\n if (props.multiple) {\n return [Table2FilterComparator.IsOneOf, Table2FilterComparator.IsNoneOf, Table2FilterComparator.IsAllOf];\n }\n\n return [Table2FilterComparator.IsEqualTo, Table2FilterComparator.IsNotEqualTo];\n }\n }\n\n switch (control) {\n case 'datepicker':\n return [\n Table2FilterComparator.IsEqualTo,\n Table2FilterComparator.IsNotEqualTo,\n Table2FilterComparator.IsGreaterThan,\n Table2FilterComparator.IsLessThan,\n Table2FilterComparator.IsBetween,\n ];\n\n case 'switch':\n return [Table2FilterComparator.IsEqualTo];\n\n default:\n return [\n Table2FilterComparator.Contains,\n Table2FilterComparator.DoesNotContain,\n Table2FilterComparator.IsEqualTo,\n Table2FilterComparator.IsNotEqualTo,\n Table2FilterComparator.IsEmpty,\n Table2FilterComparator.IsNotEmpty,\n Table2FilterComparator.IsGreaterThan,\n Table2FilterComparator.IsLessThan,\n Table2FilterComparator.IsBetween,\n ];\n }\n};\n"],"names":["ColumnFilter","props","allColumns","column","index","table","onRemove","comparator","value","getFilterValue","ariaLabel","String","_column$columnDef$hea","columnDef","header","texts","useLocalization","ref","React","useRef","control","controlType","_column$columnDef$met","meta","onBlur","Promise","resolve","onFocus","setValue","setFilterValue","currentValue","disabled","readOnly","Input","onChange","event","target","Datepicker","detail","Switch","checked","Boolean","handleRemove","undefined","comparators","guessComparatorsBasedOnControl","className","table2","filters","conditions","where","and","Column","Comparator","validComparators","InferredControl","IconButton","appearance","icon","onClick","instance","isValidElement","type","displayName","multiple","Table2FilterComparator","IsOneOf","IsNoneOf","IsAllOf","IsEqualTo","IsNotEqualTo","IsGreaterThan","IsLessThan","IsBetween","Contains","DoesNotContain","IsEmpty","IsNotEmpty"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Comparator.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/Comparator.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn } from '@tanstack/react-table';\nimport { Select2, Select2Props } from '../../../../Select2/Select2';\nimport { Table2FilterComparator } from '../../../types';\nimport { LocalizationTexts, useLocalization } from '../../../../Provider/Localization';\n\ntype ComparatorProps = Omit<Select2Props, 'children'> & {\n column: RTColumn<any, any>;\n comparator?: Table2FilterComparator;\n validComparators: Table2FilterComparator[];\n};\n\nexport const Comparator = ({ column, comparator, validComparators, ...props }: ComparatorProps) => {\n const { texts } = useLocalization();\n const handleChange = comparator => {\n column.setFilterValue(currentFilterValue => ({\n comparator,\n value: comparator === Table2FilterComparator.IsBetween ? [] : currentFilterValue.value,\n }));\n };\n\n React.useEffect(() => {\n if (comparator === undefined) {\n const initialComparator = validComparators[0];\n column.setFilterValue(currentFilterValue => ({\n comparator: initialComparator,\n value:\n initialComparator === Table2FilterComparator.IsBetween && !Array.isArray(currentFilterValue.value)\n ? []\n : currentFilterValue.value,\n }));\n }\n }, []);\n\n return (\n <Select2 {...props} onChange={handleChange} value={comparator}>\n {validComparators.map(comp => (\n <Select2.Option key={comp} value={comp}>\n {getComparatorText(comp, texts)}\n </Select2.Option>\n ))}\n </Select2>\n );\n};\n\nconst getComparatorText = (comparator: Table2FilterComparator, texts: LocalizationTexts) => {\n switch (comparator) {\n case Table2FilterComparator.Contains:\n return texts.table2.filters.comparators.contains;\n case Table2FilterComparator.DoesNotContain:\n return texts.table2.filters.comparators.doesNotContain;\n case Table2FilterComparator.IsEqualTo:\n return texts.table2.filters.comparators.isEqualTo;\n case Table2FilterComparator.IsNotEqualTo:\n return texts.table2.filters.comparators.isNotEqualTo;\n case Table2FilterComparator.IsGreaterThan:\n return texts.table2.filters.comparators.isGreaterThan;\n case Table2FilterComparator.IsLessThan:\n return texts.table2.filters.comparators.isLessThan;\n case Table2FilterComparator.IsBetween:\n return texts.table2.filters.comparators.isBetween;\n case Table2FilterComparator.IsOneOf:\n return texts.table2.filters.comparators.isOneOf;\n case Table2FilterComparator.IsNoneOf:\n return texts.table2.filters.comparators.isNoneOf;\n case Table2FilterComparator.IsAllOf:\n return texts.table2.filters.comparators.isAllOf;\n case Table2FilterComparator.IsEmpty:\n return texts.table2.filters.comparators.isEmpty;\n case Table2FilterComparator.IsNotEmpty:\n return texts.table2.filters.comparators.isNotEmpty;\n }\n};\n"],"names":["Comparator","column","comparator","validComparators","props","texts","useLocalization","handleChange","setFilterValue","currentFilterValue","value","Table2FilterComparator","IsBetween","React","useEffect","undefined","initialComparator","Array","isArray","Select2","onChange","map","comp","Option","key","getComparatorText","Contains","table2","filters","comparators","contains","DoesNotContain","doesNotContain","IsEqualTo","isEqualTo","IsNotEqualTo","isNotEqualTo","IsGreaterThan","isGreaterThan","IsLessThan","isLessThan","isBetween","IsOneOf","isOneOf","IsNoneOf","isNoneOf","IsAllOf","isAllOf","IsEmpty","isEmpty","IsNotEmpty","isNotEmpty"],"mappings":"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"}
1
+ {"version":3,"file":"Comparator.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/Comparator.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn } from '@tanstack/react-table';\nimport { Select2, Select2Props } from '../../../../Select2/Select2';\nimport { Table2FilterComparator } from '../../../types';\nimport { LocalizationTexts, useLocalization } from '../../../../Provider/Localization';\n\ntype ComparatorProps = Omit<Select2Props, 'children'> & {\n column: RTColumn<any, any>;\n comparator?: Table2FilterComparator;\n validComparators: Table2FilterComparator[];\n};\n\nexport const Comparator = ({ column, comparator, validComparators, ...props }: ComparatorProps) => {\n const { texts } = useLocalization();\n const handleChange = comparator => {\n column.setFilterValue(currentFilterValue => ({\n comparator,\n value: comparator === Table2FilterComparator.IsBetween ? [] : currentFilterValue.value,\n }));\n };\n\n React.useEffect(() => {\n if (comparator === undefined) {\n const initialComparator = validComparators[0];\n column.setFilterValue(currentFilterValue => ({\n comparator: initialComparator,\n value:\n initialComparator === Table2FilterComparator.IsBetween && !Array.isArray(currentFilterValue.value)\n ? []\n : currentFilterValue.value,\n }));\n }\n }, []);\n\n return (\n <Select2 {...props} onChange={handleChange} value={comparator}>\n {validComparators.map(comp => (\n <Select2.Option key={comp} value={comp}>\n {getComparatorText(comp, texts)}\n </Select2.Option>\n ))}\n </Select2>\n );\n};\n\nconst getComparatorText = (comparator: Table2FilterComparator, texts: LocalizationTexts) => {\n switch (comparator) {\n case Table2FilterComparator.Contains:\n return texts.table2.filters.comparators.contains;\n case Table2FilterComparator.DoesNotContain:\n return texts.table2.filters.comparators.doesNotContain;\n case Table2FilterComparator.IsEqualTo:\n return texts.table2.filters.comparators.isEqualTo;\n case Table2FilterComparator.IsNotEqualTo:\n return texts.table2.filters.comparators.isNotEqualTo;\n case Table2FilterComparator.IsGreaterThan:\n return texts.table2.filters.comparators.isGreaterThan;\n case Table2FilterComparator.IsLessThan:\n return texts.table2.filters.comparators.isLessThan;\n case Table2FilterComparator.IsBetween:\n return texts.table2.filters.comparators.isBetween;\n case Table2FilterComparator.IsOneOf:\n return texts.table2.filters.comparators.isOneOf;\n case Table2FilterComparator.IsNoneOf:\n return texts.table2.filters.comparators.isNoneOf;\n case Table2FilterComparator.IsAllOf:\n return texts.table2.filters.comparators.isAllOf;\n case Table2FilterComparator.IsEmpty:\n return texts.table2.filters.comparators.isEmpty;\n case Table2FilterComparator.IsNotEmpty:\n return texts.table2.filters.comparators.isNotEmpty;\n }\n};\n"],"names":["Comparator","column","comparator","validComparators","props","texts","useLocalization","handleChange","setFilterValue","currentFilterValue","value","Table2FilterComparator","IsBetween","React","useEffect","undefined","initialComparator","Array","isArray","Select2","onChange","map","comp","Option","key","getComparatorText","Contains","table2","filters","comparators","contains","DoesNotContain","doesNotContain","IsEqualTo","isEqualTo","IsNotEqualTo","isNotEqualTo","IsGreaterThan","isGreaterThan","IsLessThan","isLessThan","isBetween","IsOneOf","isOneOf","IsNoneOf","isNoneOf","IsAllOf","isAllOf","IsEmpty","isEmpty","IsNotEmpty","isNotEmpty"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"InferredControl.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/InferredControl.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn } from '@tanstack/react-table';\nimport { Input } from '../../../../Input/Input';\nimport { Table2FilterComparator } from '../../../types';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\n\ntype InferredControlProps = {\n column: RTColumn<any, any>;\n comparator: Table2FilterComparator;\n value: any | any[];\n};\n\nexport const InferredControl = ({ column, comparator, value }: InferredControlProps) => {\n const ariaLabel = column.columnDef.header as string | undefined;\n\n if (comparator === Table2FilterComparator.IsEmpty || comparator === Table2FilterComparator.IsNotEmpty) {\n return null;\n }\n\n if (comparator === Table2FilterComparator.IsBetween) {\n const fromValue = Array.isArray(value) ? value[0] : undefined;\n const toValue = Array.isArray(value) ? value[1] : undefined;\n\n if (column.columnDef.meta?.dataType === 'datetime') {\n return (\n <div className=\"flex flex-grow items-center gap-2\">\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [(event as any).detail, toValue],\n }))\n }\n value={fromValue}\n />\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [fromValue, (event as any).detail],\n }))\n }\n value={toValue}\n />\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-grow items-center gap-2\">\n <Input\n aria-label={ariaLabel}\n className=\"flex-grow\"\n placeholder=\"from\"\n onChange={event => {\n const value = parseInt(event.target.value);\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [isNaN(value) ? undefined : value, toValue],\n }));\n }}\n value={fromValue ?? ''}\n />\n <Input\n className=\"flex-grow\"\n placeholder=\"to\"\n onChange={event => {\n const value = parseInt(event.target.value);\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [fromValue, isNaN(value) ? undefined : value],\n }));\n }}\n value={toValue ?? ''}\n />\n </div>\n );\n }\n\n if (column.columnDef.meta?.dataType === 'datetime') {\n return (\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: (event as any).detail,\n }))\n }\n value={value}\n />\n );\n } else if (column.columnDef.meta?.dataType === 'boolean') {\n return (\n <Switch\n aria-label={ariaLabel}\n onChange={checked =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: checked,\n }))\n }\n checked={value}\n />\n );\n }\n\n return (\n <Input\n aria-label={ariaLabel}\n className=\"flex-grow\"\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: event.target.value,\n }))\n }\n required\n value={value ?? ''}\n />\n );\n};\n"],"names":["InferredControl","column","comparator","value","ariaLabel","columnDef","header","Table2FilterComparator","IsEmpty","IsNotEmpty","IsBetween","fromValue","Array","isArray","undefined","toValue","meta","dataType","React","className","Datepicker","onChange","event","setFilterValue","currentValue","detail","Input","placeholder","parseInt","target","isNaN","Switch","checked","required"],"mappings":"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"}
1
+ {"version":3,"file":"InferredControl.js","sources":["../../../../../../../../../../src/components/Table2/components/filters/components/InferredControl.tsx"],"sourcesContent":["import React from 'react';\nimport { Column as RTColumn } from '@tanstack/react-table';\nimport { Input } from '../../../../Input/Input';\nimport { Table2FilterComparator } from '../../../types';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\n\ntype InferredControlProps = {\n column: RTColumn<any, any>;\n comparator: Table2FilterComparator;\n value: any | any[];\n};\n\nexport const InferredControl = ({ column, comparator, value }: InferredControlProps) => {\n const ariaLabel = column.columnDef.header as string | undefined;\n\n if (comparator === Table2FilterComparator.IsEmpty || comparator === Table2FilterComparator.IsNotEmpty) {\n return null;\n }\n\n if (comparator === Table2FilterComparator.IsBetween) {\n const fromValue = Array.isArray(value) ? value[0] : undefined;\n const toValue = Array.isArray(value) ? value[1] : undefined;\n\n if (column.columnDef.meta?.dataType === 'datetime') {\n return (\n <div className=\"flex flex-grow items-center gap-2\">\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [(event as any).detail, toValue],\n }))\n }\n value={fromValue}\n />\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [fromValue, (event as any).detail],\n }))\n }\n value={toValue}\n />\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-grow items-center gap-2\">\n <Input\n aria-label={ariaLabel}\n className=\"flex-grow\"\n placeholder=\"from\"\n onChange={event => {\n const value = parseInt(event.target.value);\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [isNaN(value) ? undefined : value, toValue],\n }));\n }}\n value={fromValue ?? ''}\n />\n <Input\n className=\"flex-grow\"\n placeholder=\"to\"\n onChange={event => {\n const value = parseInt(event.target.value);\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: [fromValue, isNaN(value) ? undefined : value],\n }));\n }}\n value={toValue ?? ''}\n />\n </div>\n );\n }\n\n if (column.columnDef.meta?.dataType === 'datetime') {\n return (\n <Datepicker\n aria-label={ariaLabel}\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: (event as any).detail,\n }))\n }\n value={value}\n />\n );\n } else if (column.columnDef.meta?.dataType === 'boolean') {\n return (\n <Switch\n aria-label={ariaLabel}\n onChange={checked =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: checked,\n }))\n }\n checked={value}\n />\n );\n }\n\n return (\n <Input\n aria-label={ariaLabel}\n className=\"flex-grow\"\n onChange={event =>\n column.setFilterValue(currentValue => ({\n ...currentValue,\n value: event.target.value,\n }))\n }\n required\n value={value ?? ''}\n />\n );\n};\n"],"names":["InferredControl","column","comparator","value","ariaLabel","columnDef","header","Table2FilterComparator","IsEmpty","IsNotEmpty","IsBetween","_column$columnDef$met","fromValue","Array","isArray","undefined","toValue","meta","dataType","React","className","Datepicker","onChange","event","setFilterValue","currentValue","detail","Input","placeholder","parseInt","target","isNaN","_column$columnDef$met2","_column$columnDef$met3","Switch","checked","required"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sources":["../../../../../../../../../src/components/Table2/components/row/Context.tsx"],"sourcesContent":["import React from 'react';\nimport { SaveHandlerErrorResponse } from '../../types';\nimport { IndicatorReason } from '../column/Indicator';\n\ntype RowContextValue = {\n // we store this here because the \"real\" row index comes from the virtualiser,\n // and that isn't accessible in some places we need it - like the row actions column\n isActive: boolean;\n editMode: {\n validationErrors: SaveHandlerErrorResponse;\n setValidationErrors: React.Dispatch<React.SetStateAction<SaveHandlerErrorResponse>>;\n rowMoveReason: Record<string, IndicatorReason | null>;\n setRowMoveReason: React.Dispatch<React.SetStateAction<Record<string, IndicatorReason | null>>>;\n };\n rowIndex?: number;\n isHovered: boolean;\n setIsHovered: React.Dispatch<React.SetStateAction<boolean>>;\n};\n\nexport const RowContext = React.createContext<RowContextValue>({\n isActive: false,\n editMode: {\n validationErrors: null,\n setValidationErrors: () => undefined,\n rowMoveReason: {},\n setRowMoveReason: () => undefined,\n },\n rowIndex: undefined,\n isHovered: false,\n setIsHovered: () => undefined,\n});\n\nexport const RowContextProvider = ({ isActiveRow, children, meta, rowIndex }) => {\n // we use non-css hovered state to determine whether to render actions or not, for performance\n const [isHovered, setIsHovered] = React.useState(false);\n\n // editing specific functionality\n const [validationErrors, setValidationErrors] = React.useState<SaveHandlerErrorResponse | null>(null);\n const [rowMoveReason, setRowMoveReason] = React.useState<Record<string, IndicatorReason | null>>({});\n\n // This effect aims to focus the first focussable cell when edit mode is turned on.\n React.useEffect(() => {\n const isFocusInsideTable = meta.tableRef.current?.contains(document.activeElement);\n\n // If the foucs is outside the table i.e., table action popups, search etc., then don't focus the first cell.\n if (isActiveRow && isFocusInsideTable) {\n meta.editMode.moveToFirstColumn(meta.focussableColumnIndexes);\n }\n // We are intentionally not adding activeRow to the depency variable so that everytime active row is changed,\n // first focussable cell is not focussed.\n }, [meta.editMode.isEditing, meta.focussableColumnIndexes]);\n\n const context = React.useMemo(() => {\n return {\n isActive: isActiveRow,\n editMode: {\n validationErrors,\n setValidationErrors,\n rowMoveReason,\n setRowMoveReason,\n },\n rowIndex,\n isHovered,\n setIsHovered,\n };\n }, [isActiveRow, isHovered, rowMoveReason, validationErrors, rowIndex]);\n\n return <RowContext.Provider value={context}>{children}</RowContext.Provider>;\n};\n\nexport const useRowContext = () => React.useContext(RowContext);\n"],"names":["RowContext","React","createContext","isActive","editMode","validationErrors","setValidationErrors","undefined","rowMoveReason","setRowMoveReason","rowIndex","isHovered","setIsHovered","RowContextProvider","isActiveRow","children","meta","useState","useEffect","isFocusInsideTable","tableRef","current","contains","document","activeElement","moveToFirstColumn","focussableColumnIndexes","isEditing","context","useMemo","Provider","value","useRowContext","useContext"],"mappings":";;MAmBaA,UAAU,gBAAGC,cAAK,CAACC,aAAa,CAAkB;EAC3DC,QAAQ,EAAE,KAAK;EACfC,QAAQ,EAAE;IACNC,gBAAgB,EAAE,IAAI;IACtBC,mBAAmB,EAAE,MAAMC,SAAS;IACpCC,aAAa,EAAE,EAAE;IACjBC,gBAAgB,EAAE,MAAMF;GAC3B;EACDG,QAAQ,EAAEH,SAAS;EACnBI,SAAS,EAAE,KAAK;EAChBC,YAAY,EAAE,MAAML;CACvB;MAEYM,kBAAkB,GAAG,CAAC;EAAEC,WAAW;EAAEC,QAAQ;EAAEC,IAAI;EAAEN;CAAU;;EAExE,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGX,cAAK,CAACgB,QAAQ,CAAC,KAAK,CAAC;;EAGvD,MAAM,CAACZ,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGL,cAAK,CAACgB,QAAQ,CAAkC,IAAI,CAAC;EACrG,MAAM,CAACT,aAAa,EAAEC,gBAAgB,CAAC,GAAGR,cAAK,CAACgB,QAAQ,CAAyC,EAAE,CAAC;;EAGpGhB,cAAK,CAACiB,SAAS,CAAC;;IACZ,MAAMC,kBAAkB,4BAAGH,IAAI,CAACI,QAAQ,CAACC,OAAO,0DAArB,sBAAuBC,QAAQ,CAACC,QAAQ,CAACC,aAAa,CAAC;;IAGlF,IAAIV,WAAW,IAAIK,kBAAkB,EAAE;MACnCH,IAAI,CAACZ,QAAQ,CAACqB,iBAAiB,CAACT,IAAI,CAACU,uBAAuB,CAAC;;;;GAIpE,EAAE,CAACV,IAAI,CAACZ,QAAQ,CAACuB,SAAS,EAAEX,IAAI,CAACU,uBAAuB,CAAC,CAAC;EAE3D,MAAME,OAAO,GAAG3B,cAAK,CAAC4B,OAAO,CAAC;IAC1B,OAAO;MACH1B,QAAQ,EAAEW,WAAW;MACrBV,QAAQ,EAAE;QACNC,gBAAgB;QAChBC,mBAAmB;QACnBE,aAAa;QACbC;OACH;MACDC,QAAQ;MACRC,SAAS;MACTC;KACH;GACJ,EAAE,CAACE,WAAW,EAAEH,SAAS,EAAEH,aAAa,EAAEH,gBAAgB,EAAEK,QAAQ,CAAC,CAAC;EAEvE,oBAAOT,6BAACD,UAAU,CAAC8B,QAAQ;IAACC,KAAK,EAAEH;KAAUb,QAAQ,CAAuB;AAChF;MAEaiB,aAAa,GAAG,MAAM/B,cAAK,CAACgC,UAAU,CAACjC,UAAU;;;;"}
1
+ {"version":3,"file":"Context.js","sources":["../../../../../../../../../src/components/Table2/components/row/Context.tsx"],"sourcesContent":["import React from 'react';\nimport { SaveHandlerErrorResponse } from '../../types';\nimport { IndicatorReason } from '../column/Indicator';\n\ntype RowContextValue = {\n // we store this here because the \"real\" row index comes from the virtualiser,\n // and that isn't accessible in some places we need it - like the row actions column\n isActive: boolean;\n editMode: {\n validationErrors: SaveHandlerErrorResponse;\n setValidationErrors: React.Dispatch<React.SetStateAction<SaveHandlerErrorResponse>>;\n rowMoveReason: Record<string, IndicatorReason | null>;\n setRowMoveReason: React.Dispatch<React.SetStateAction<Record<string, IndicatorReason | null>>>;\n };\n rowIndex?: number;\n isHovered: boolean;\n setIsHovered: React.Dispatch<React.SetStateAction<boolean>>;\n};\n\nexport const RowContext = React.createContext<RowContextValue>({\n isActive: false,\n editMode: {\n validationErrors: null,\n setValidationErrors: () => undefined,\n rowMoveReason: {},\n setRowMoveReason: () => undefined,\n },\n rowIndex: undefined,\n isHovered: false,\n setIsHovered: () => undefined,\n});\n\nexport const RowContextProvider = ({ isActiveRow, children, meta, rowIndex }) => {\n // we use non-css hovered state to determine whether to render actions or not, for performance\n const [isHovered, setIsHovered] = React.useState(false);\n\n // editing specific functionality\n const [validationErrors, setValidationErrors] = React.useState<SaveHandlerErrorResponse | null>(null);\n const [rowMoveReason, setRowMoveReason] = React.useState<Record<string, IndicatorReason | null>>({});\n\n // This effect aims to focus the first focussable cell when edit mode is turned on.\n React.useEffect(() => {\n const isFocusInsideTable = meta.tableRef.current?.contains(document.activeElement);\n\n // If the foucs is outside the table i.e., table action popups, search etc., then don't focus the first cell.\n if (isActiveRow && isFocusInsideTable) {\n meta.editMode.moveToFirstColumn(meta.focussableColumnIndexes);\n }\n // We are intentionally not adding activeRow to the depency variable so that everytime active row is changed,\n // first focussable cell is not focussed.\n }, [meta.editMode.isEditing, meta.focussableColumnIndexes]);\n\n const context = React.useMemo(() => {\n return {\n isActive: isActiveRow,\n editMode: {\n validationErrors,\n setValidationErrors,\n rowMoveReason,\n setRowMoveReason,\n },\n rowIndex,\n isHovered,\n setIsHovered,\n };\n }, [isActiveRow, isHovered, rowMoveReason, validationErrors, rowIndex]);\n\n return <RowContext.Provider value={context}>{children}</RowContext.Provider>;\n};\n\nexport const useRowContext = () => React.useContext(RowContext);\n"],"names":["RowContext","React","createContext","isActive","editMode","validationErrors","setValidationErrors","undefined","rowMoveReason","setRowMoveReason","rowIndex","isHovered","setIsHovered","RowContextProvider","isActiveRow","children","meta","useState","useEffect","isFocusInsideTable","_meta$tableRef$curren","tableRef","current","contains","document","activeElement","moveToFirstColumn","focussableColumnIndexes","isEditing","context","useMemo","Provider","value","useRowContext","useContext"],"mappings":";;MAmBaA,UAAU,gBAAGC,cAAK,CAACC,aAAa,CAAkB;EAC3DC,QAAQ,EAAE,KAAK;EACfC,QAAQ,EAAE;IACNC,gBAAgB,EAAE,IAAI;IACtBC,mBAAmB,EAAEA,MAAMC,SAAS;IACpCC,aAAa,EAAE,EAAE;IACjBC,gBAAgB,EAAEA,MAAMF;GAC3B;EACDG,QAAQ,EAAEH,SAAS;EACnBI,SAAS,EAAE,KAAK;EAChBC,YAAY,EAAEA,MAAML;CACvB;MAEYM,kBAAkB,GAAGA,CAAC;EAAEC,WAAW;EAAEC,QAAQ;EAAEC,IAAI;EAAEN;CAAU;;EAExE,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGX,cAAK,CAACgB,QAAQ,CAAC,KAAK,CAAC;;EAGvD,MAAM,CAACZ,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGL,cAAK,CAACgB,QAAQ,CAAkC,IAAI,CAAC;EACrG,MAAM,CAACT,aAAa,EAAEC,gBAAgB,CAAC,GAAGR,cAAK,CAACgB,QAAQ,CAAyC,EAAE,CAAC;;EAGpGhB,cAAK,CAACiB,SAAS,CAAC;;IACZ,MAAMC,kBAAkB,IAAAC,qBAAA,GAAGJ,IAAI,CAACK,QAAQ,CAACC,OAAO,cAAAF,qBAAA,uBAArBA,qBAAA,CAAuBG,QAAQ,CAACC,QAAQ,CAACC,aAAa,CAAC;;IAGlF,IAAIX,WAAW,IAAIK,kBAAkB,EAAE;MACnCH,IAAI,CAACZ,QAAQ,CAACsB,iBAAiB,CAACV,IAAI,CAACW,uBAAuB,CAAC;;;;GAIpE,EAAE,CAACX,IAAI,CAACZ,QAAQ,CAACwB,SAAS,EAAEZ,IAAI,CAACW,uBAAuB,CAAC,CAAC;EAE3D,MAAME,OAAO,GAAG5B,cAAK,CAAC6B,OAAO,CAAC;IAC1B,OAAO;MACH3B,QAAQ,EAAEW,WAAW;MACrBV,QAAQ,EAAE;QACNC,gBAAgB;QAChBC,mBAAmB;QACnBE,aAAa;QACbC;OACH;MACDC,QAAQ;MACRC,SAAS;MACTC;KACH;GACJ,EAAE,CAACE,WAAW,EAAEH,SAAS,EAAEH,aAAa,EAAEH,gBAAgB,EAAEK,QAAQ,CAAC,CAAC;EAEvE,oBAAOT,6BAACD,UAAU,CAAC+B,QAAQ;IAACC,KAAK,EAAEH;KAAUd,QAAQ,CAAuB;AAChF;MAEakB,aAAa,GAAGA,MAAMhC,cAAK,CAACiC,UAAU,CAAClC,UAAU;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandedRow.js","sources":["../../../../../../../../../src/components/Table2/components/row/ExpandedRow.tsx"],"sourcesContent":["import React from 'react';\n\nexport const ExpandedRow = ({ index, setSize, ...props }) => {\n const ref = React.useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n if (ref.current) {\n const height = ref.current?.getBoundingClientRect().height;\n\n setSize(sizes => {\n if (height !== sizes[index]) {\n return { ...sizes, [index]: ref.current?.getBoundingClientRect().height };\n }\n\n return sizes;\n });\n }\n }, []);\n\n if (props.children === null || props.children === undefined) {\n return null;\n }\n\n return <div className=\"border-grey-300 bg-grey-50 col-span-full border-b p-4\" {...props} ref={ref} />;\n};\n"],"names":["ExpandedRow","index","setSize","props","ref","React","useRef","useEffect","current","height","getBoundingClientRect","sizes","children","undefined","className"],"mappings":";;MAEaA,WAAW,GAAG,CAAC;EAAEC,KAAK;EAAEC,OAAO;EAAE,GAAGC;CAAO;EACpD,MAAMC,GAAG,GAAGC,cAAK,CAACC,MAAM,CAAiB,IAAI,CAAC;EAE9CD,cAAK,CAACE,SAAS,CAAC;IACZ,IAAIH,GAAG,CAACI,OAAO,EAAE;MAAA;MACb,MAAMC,MAAM,mBAAGL,GAAG,CAACI,OAAO,iDAAX,aAAaE,qBAAqB,EAAE,CAACD,MAAM;MAE1DP,OAAO,CAACS,KAAK;QACT,IAAIF,MAAM,KAAKE,KAAK,CAACV,KAAK,CAAC,EAAE;UAAA;UACzB,OAAO;YAAE,GAAGU,KAAK;YAAE,CAACV,KAAK,oBAAGG,GAAG,CAACI,OAAO,kDAAX,cAAaE,qBAAqB,EAAE,CAACD;WAAQ;;QAG7E,OAAOE,KAAK;OACf,CAAC;;GAET,EAAE,EAAE,CAAC;EAEN,IAAIR,KAAK,CAACS,QAAQ,KAAK,IAAI,IAAIT,KAAK,CAACS,QAAQ,KAAKC,SAAS,EAAE;IACzD,OAAO,IAAI;;EAGf,oBAAOR;IAAKS,SAAS,EAAC;KAA4DX,KAAK;IAAEC,GAAG,EAAEA;KAAO;AACzG;;;;"}
1
+ {"version":3,"file":"ExpandedRow.js","sources":["../../../../../../../../../src/components/Table2/components/row/ExpandedRow.tsx"],"sourcesContent":["import React from 'react';\n\nexport const ExpandedRow = ({ index, setSize, ...props }) => {\n const ref = React.useRef<HTMLDivElement>(null);\n\n React.useEffect(() => {\n if (ref.current) {\n const height = ref.current?.getBoundingClientRect().height;\n\n setSize(sizes => {\n if (height !== sizes[index]) {\n return { ...sizes, [index]: ref.current?.getBoundingClientRect().height };\n }\n\n return sizes;\n });\n }\n }, []);\n\n if (props.children === null || props.children === undefined) {\n return null;\n }\n\n return <div className=\"border-grey-300 bg-grey-50 col-span-full border-b p-4\" {...props} ref={ref} />;\n};\n"],"names":["ExpandedRow","index","setSize","props","ref","React","useRef","useEffect","current","_ref$current","height","getBoundingClientRect","sizes","_ref$current2","children","undefined","className"],"mappings":";;MAEaA,WAAW,GAAGA,CAAC;EAAEC,KAAK;EAAEC,OAAO;EAAE,GAAGC;CAAO;EACpD,MAAMC,GAAG,GAAGC,cAAK,CAACC,MAAM,CAAiB,IAAI,CAAC;EAE9CD,cAAK,CAACE,SAAS,CAAC;IACZ,IAAIH,GAAG,CAACI,OAAO,EAAE;MAAA,IAAAC,YAAA;MACb,MAAMC,MAAM,IAAAD,YAAA,GAAGL,GAAG,CAACI,OAAO,cAAAC,YAAA,uBAAXA,YAAA,CAAaE,qBAAqB,EAAE,CAACD,MAAM;MAE1DR,OAAO,CAACU,KAAK;QACT,IAAIF,MAAM,KAAKE,KAAK,CAACX,KAAK,CAAC,EAAE;UAAA,IAAAY,aAAA;UACzB,OAAO;YAAE,GAAGD,KAAK;YAAE,CAACX,KAAK,IAAAY,aAAA,GAAGT,GAAG,CAACI,OAAO,cAAAK,aAAA,uBAAXA,aAAA,CAAaF,qBAAqB,EAAE,CAACD;WAAQ;;QAG7E,OAAOE,KAAK;OACf,CAAC;;GAET,EAAE,EAAE,CAAC;EAEN,IAAIT,KAAK,CAACW,QAAQ,KAAK,IAAI,IAAIX,KAAK,CAACW,QAAQ,KAAKC,SAAS,EAAE;IACzD,OAAO,IAAI;;EAGf,oBAAOV;IAAKW,SAAS,EAAC;KAA4Db,KAAK;IAAEC,GAAG,EAAEA;KAAO;AACzG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Row.js","sources":["../../../../../../../../../src/components/Table2/components/row/Row.tsx"],"sourcesContent":["import React from 'react';\nimport { TableMeta } from '@tanstack/react-table';\nimport { RowContextProvider, useRowContext } from './Context';\nimport { useDropTarget } from '../../../../utils/hooks/useDropTarget';\n\nconst InternalRow = ({ onRowDrop, row, rowIndex, table, ...props }) => {\n const { setIsHovered } = useRowContext();\n\n const meta = table.options.meta as TableMeta<any>;\n const isActiveRow = meta.activeRowIndex === rowIndex;\n const isDragging = meta.dragging[row.id];\n\n const [, dropTargetProps] = useDropTarget(event => onRowDrop(event, row.original));\n\n const attributes = {\n ...props,\n ...(typeof onRowDrop === 'function' ? dropTargetProps : undefined),\n 'aria-current': isActiveRow ? true : undefined,\n 'aria-grabbed': isDragging ? true : undefined,\n 'data-row-index': rowIndex,\n draggable: meta.enableRowDragging ? true : undefined,\n onMouseEnter: () => setIsHovered(true),\n onMouseLeave: () => setIsHovered(false),\n role: 'row',\n };\n\n return <div {...attributes} />;\n};\n\nexport const Row = props => {\n const meta = props.table.options.meta as TableMeta<any>;\n const isActiveRow = meta.activeRowIndex === props.rowIndex;\n\n return (\n <RowContextProvider isActiveRow={isActiveRow} meta={props.table.options.meta} rowIndex={props.rowIndex}>\n <InternalRow {...props} />\n </RowContextProvider>\n );\n};\n"],"names":["InternalRow","onRowDrop","row","rowIndex","table","props","setIsHovered","useRowContext","meta","options","isActiveRow","activeRowIndex","isDragging","dragging","id","dropTargetProps","useDropTarget","event","original","attributes","undefined","draggable","enableRowDragging","onMouseEnter","onMouseLeave","role","React","Row","RowContextProvider"],"mappings":";;;;AAKA,MAAMA,WAAW,GAAG,CAAC;EAAEC,SAAS;EAAEC,GAAG;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;CAAO;EAC9D,MAAM;IAAEC;GAAc,GAAGC,aAAa,EAAE;EAExC,MAAMC,IAAI,GAAGJ,KAAK,CAACK,OAAO,CAACD,IAAsB;EACjD,MAAME,WAAW,GAAGF,IAAI,CAACG,cAAc,KAAKR,QAAQ;EACpD,MAAMS,UAAU,GAAGJ,IAAI,CAACK,QAAQ,CAACX,GAAG,CAACY,EAAE,CAAC;EAExC,MAAM,GAAGC,eAAe,CAAC,GAAGC,aAAa,CAACC,KAAK,IAAIhB,SAAS,CAACgB,KAAK,EAAEf,GAAG,CAACgB,QAAQ,CAAC,CAAC;EAElF,MAAMC,UAAU,GAAG;IACf,GAAGd,KAAK;IACR,IAAI,OAAOJ,SAAS,KAAK,UAAU,GAAGc,eAAe,GAAGK,SAAS,CAAC;IAClE,cAAc,EAAEV,WAAW,GAAG,IAAI,GAAGU,SAAS;IAC9C,cAAc,EAAER,UAAU,GAAG,IAAI,GAAGQ,SAAS;IAC7C,gBAAgB,EAAEjB,QAAQ;IAC1BkB,SAAS,EAAEb,IAAI,CAACc,iBAAiB,GAAG,IAAI,GAAGF,SAAS;IACpDG,YAAY,EAAE,MAAMjB,YAAY,CAAC,IAAI,CAAC;IACtCkB,YAAY,EAAE,MAAMlB,YAAY,CAAC,KAAK,CAAC;IACvCmB,IAAI,EAAE;GACT;EAED,oBAAOC,sDAASP,UAAU,EAAI;AAClC,CAAC;MAEYQ,GAAG,GAAGtB,KAAK;EACpB,MAAMG,IAAI,GAAGH,KAAK,CAACD,KAAK,CAACK,OAAO,CAACD,IAAsB;EACvD,MAAME,WAAW,GAAGF,IAAI,CAACG,cAAc,KAAKN,KAAK,CAACF,QAAQ;EAE1D,oBACIuB,6BAACE,kBAAkB;IAAClB,WAAW,EAAEA,WAAW;IAAEF,IAAI,EAAEH,KAAK,CAACD,KAAK,CAACK,OAAO,CAACD,IAAI;IAAEL,QAAQ,EAAEE,KAAK,CAACF;kBAC1FuB,6BAAC1B,WAAW,oBAAKK,KAAK,EAAI,CACT;AAE7B;;;;"}
1
+ {"version":3,"file":"Row.js","sources":["../../../../../../../../../src/components/Table2/components/row/Row.tsx"],"sourcesContent":["import React from 'react';\nimport { TableMeta } from '@tanstack/react-table';\nimport { RowContextProvider, useRowContext } from './Context';\nimport { useDropTarget } from '../../../../utils/hooks/useDropTarget';\n\nconst InternalRow = ({ onRowDrop, row, rowIndex, table, ...props }) => {\n const { setIsHovered } = useRowContext();\n\n const meta = table.options.meta as TableMeta<any>;\n const isActiveRow = meta.activeRowIndex === rowIndex;\n const isDragging = meta.dragging[row.id];\n\n const [, dropTargetProps] = useDropTarget(event => onRowDrop(event, row.original));\n\n const attributes = {\n ...props,\n ...(typeof onRowDrop === 'function' ? dropTargetProps : undefined),\n 'aria-current': isActiveRow ? true : undefined,\n 'aria-grabbed': isDragging ? true : undefined,\n 'data-row-index': rowIndex,\n draggable: meta.enableRowDragging ? true : undefined,\n onMouseEnter: () => setIsHovered(true),\n onMouseLeave: () => setIsHovered(false),\n role: 'row',\n };\n\n return <div {...attributes} />;\n};\n\nexport const Row = props => {\n const meta = props.table.options.meta as TableMeta<any>;\n const isActiveRow = meta.activeRowIndex === props.rowIndex;\n\n return (\n <RowContextProvider isActiveRow={isActiveRow} meta={props.table.options.meta} rowIndex={props.rowIndex}>\n <InternalRow {...props} />\n </RowContextProvider>\n );\n};\n"],"names":["InternalRow","onRowDrop","row","rowIndex","table","props","setIsHovered","useRowContext","meta","options","isActiveRow","activeRowIndex","isDragging","dragging","id","dropTargetProps","useDropTarget","event","original","attributes","undefined","draggable","enableRowDragging","onMouseEnter","onMouseLeave","role","React","Row","RowContextProvider"],"mappings":";;;;AAKA,MAAMA,WAAW,GAAGA,CAAC;EAAEC,SAAS;EAAEC,GAAG;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;CAAO;EAC9D,MAAM;IAAEC;GAAc,GAAGC,aAAa,EAAE;EAExC,MAAMC,IAAI,GAAGJ,KAAK,CAACK,OAAO,CAACD,IAAsB;EACjD,MAAME,WAAW,GAAGF,IAAI,CAACG,cAAc,KAAKR,QAAQ;EACpD,MAAMS,UAAU,GAAGJ,IAAI,CAACK,QAAQ,CAACX,GAAG,CAACY,EAAE,CAAC;EAExC,MAAM,GAAGC,eAAe,CAAC,GAAGC,aAAa,CAACC,KAAK,IAAIhB,SAAS,CAACgB,KAAK,EAAEf,GAAG,CAACgB,QAAQ,CAAC,CAAC;EAElF,MAAMC,UAAU,GAAG;IACf,GAAGd,KAAK;IACR,IAAI,OAAOJ,SAAS,KAAK,UAAU,GAAGc,eAAe,GAAGK,SAAS,CAAC;IAClE,cAAc,EAAEV,WAAW,GAAG,IAAI,GAAGU,SAAS;IAC9C,cAAc,EAAER,UAAU,GAAG,IAAI,GAAGQ,SAAS;IAC7C,gBAAgB,EAAEjB,QAAQ;IAC1BkB,SAAS,EAAEb,IAAI,CAACc,iBAAiB,GAAG,IAAI,GAAGF,SAAS;IACpDG,YAAY,EAAEA,MAAMjB,YAAY,CAAC,IAAI,CAAC;IACtCkB,YAAY,EAAEA,MAAMlB,YAAY,CAAC,KAAK,CAAC;IACvCmB,IAAI,EAAE;GACT;EAED,oBAAOC,sDAASP,UAAU,EAAI;AAClC,CAAC;MAEYQ,GAAG,GAAGtB,KAAK;EACpB,MAAMG,IAAI,GAAGH,KAAK,CAACD,KAAK,CAACK,OAAO,CAACD,IAAsB;EACvD,MAAME,WAAW,GAAGF,IAAI,CAACG,cAAc,KAAKN,KAAK,CAACF,QAAQ;EAE1D,oBACIuB,6BAACE,kBAAkB;IAAClB,WAAW,EAAEA,WAAW;IAAEF,IAAI,EAAEH,KAAK,CAACD,KAAK,CAACK,OAAO,CAACD,IAAI;IAAEL,QAAQ,EAAEE,KAAK,CAACF;kBAC1FuB,6BAAC1B,WAAW,oBAAKK,KAAK,EAAI,CACT;AAE7B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActiveRowStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useActiveRowStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Row as RTRow, Table as RTTable, TableMeta } from '@tanstack/react-table';\nimport { useActiveRow } from '../useActiveRow';\n\nexport const useActiveRowStateListener = <TType = any>(\n table: RTTable<any>,\n rows: RTRow<any>[],\n activeRowIndex: useActiveRow<TType>\n) => {\n const meta = table.options.meta as TableMeta<any>;\n\n React.useEffect(() => {\n if (meta.editMode.isEditing && meta.shouldPauseSortingAndFiltering) {\n meta.setShouldPauseSortingAndFiltering(false);\n }\n }, [activeRowIndex.activeRowIndex]);\n\n // if a filter would exclude the active row, reset it to 0\n React.useEffect(() => {\n if (activeRowIndex.activeRowIndex > rows.length - 1) {\n meta.setActiveRowIndex(rows.length ? rows.length - 1 : 0);\n }\n }, [table.getState().columnFilters, rows.length]);\n};\n"],"names":["useActiveRowStateListener","table","rows","activeRowIndex","meta","options","React","useEffect","editMode","isEditing","shouldPauseSortingAndFiltering","setShouldPauseSortingAndFiltering","length","setActiveRowIndex","getState","columnFilters"],"mappings":";;MAIaA,yBAAyB,GAAG,CACrCC,KAAmB,EACnBC,IAAkB,EAClBC,cAAmC;EAEnC,MAAMC,IAAI,GAAGH,KAAK,CAACI,OAAO,CAACD,IAAsB;EAEjDE,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIH,IAAI,CAACI,QAAQ,CAACC,SAAS,IAAIL,IAAI,CAACM,8BAA8B,EAAE;MAChEN,IAAI,CAACO,iCAAiC,CAAC,KAAK,CAAC;;GAEpD,EAAE,CAACR,cAAc,CAACA,cAAc,CAAC,CAAC;;EAGnCG,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIJ,cAAc,CAACA,cAAc,GAAGD,IAAI,CAACU,MAAM,GAAG,CAAC,EAAE;MACjDR,IAAI,CAACS,iBAAiB,CAACX,IAAI,CAACU,MAAM,GAAGV,IAAI,CAACU,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;;GAEhE,EAAE,CAACX,KAAK,CAACa,QAAQ,EAAE,CAACC,aAAa,EAAEb,IAAI,CAACU,MAAM,CAAC,CAAC;AACrD;;;;"}
1
+ {"version":3,"file":"useActiveRowStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useActiveRowStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Row as RTRow, Table as RTTable, TableMeta } from '@tanstack/react-table';\nimport { useActiveRow } from '../useActiveRow';\n\nexport const useActiveRowStateListener = <TType = any>(\n table: RTTable<any>,\n rows: RTRow<any>[],\n activeRowIndex: useActiveRow<TType>\n) => {\n const meta = table.options.meta as TableMeta<any>;\n\n React.useEffect(() => {\n if (meta.editMode.isEditing && meta.shouldPauseSortingAndFiltering) {\n meta.setShouldPauseSortingAndFiltering(false);\n }\n }, [activeRowIndex.activeRowIndex]);\n\n // if a filter would exclude the active row, reset it to 0\n React.useEffect(() => {\n if (activeRowIndex.activeRowIndex > rows.length - 1) {\n meta.setActiveRowIndex(rows.length ? rows.length - 1 : 0);\n }\n }, [table.getState().columnFilters, rows.length]);\n};\n"],"names":["useActiveRowStateListener","table","rows","activeRowIndex","meta","options","React","useEffect","editMode","isEditing","shouldPauseSortingAndFiltering","setShouldPauseSortingAndFiltering","length","setActiveRowIndex","getState","columnFilters"],"mappings":";;MAIaA,yBAAyB,GAAGA,CACrCC,KAAmB,EACnBC,IAAkB,EAClBC,cAAmC;EAEnC,MAAMC,IAAI,GAAGH,KAAK,CAACI,OAAO,CAACD,IAAsB;EAEjDE,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIH,IAAI,CAACI,QAAQ,CAACC,SAAS,IAAIL,IAAI,CAACM,8BAA8B,EAAE;MAChEN,IAAI,CAACO,iCAAiC,CAAC,KAAK,CAAC;;GAEpD,EAAE,CAACR,cAAc,CAACA,cAAc,CAAC,CAAC;;EAGnCG,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIJ,cAAc,CAACA,cAAc,GAAGD,IAAI,CAACU,MAAM,GAAG,CAAC,EAAE;MACjDR,IAAI,CAACS,iBAAiB,CAACX,IAAI,CAACU,MAAM,GAAGV,IAAI,CAACU,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;;GAEhE,EAAE,CAACX,KAAK,CAACa,QAAQ,EAAE,CAACC,aAAa,EAAEb,IAAI,CAACU,MAAM,CAAC,CAAC;AACrD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useColumnOffsetStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useColumnOffsetStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable, OnChangeFn, TableMeta } from '@tanstack/react-table';\nimport { ColumnOffsetState } from '../../types';\n\n// frozen columns have position sticky, and because we support more than one of them\n// we must set a 'left' css value. this hook listens to changes on state that will\n// affect the left offset (resize, visibility, freezing) and updates offsets based on width\nexport const useColumnOffsetStateListener = (table: RTTable<any>, setColumnOffsets: OnChangeFn<ColumnOffsetState>) => {\n const { columnOrder, columnSizing, columnSizingInfo, columnVisibility } = table.getState();\n const { frozenColumnsCount } = table.options.meta as TableMeta<any>;\n\n React.useEffect(() => {\n const offsets = {};\n\n // store left offsets for each visible column\n table.getVisibleLeafColumns().reduce((offset, column) => {\n offsets[column.id] = offset;\n return offset + column.getSize();\n }, 0);\n\n setColumnOffsets(offsets);\n }, [columnOrder, columnSizing, columnSizingInfo, columnVisibility, frozenColumnsCount]);\n};\n"],"names":["useColumnOffsetStateListener","table","setColumnOffsets","columnOrder","columnSizing","columnSizingInfo","columnVisibility","getState","frozenColumnsCount","options","meta","React","useEffect","offsets","getVisibleLeafColumns","reduce","offset","column","id","getSize"],"mappings":";;AAIA;AACA;AACA;MACaA,4BAA4B,GAAG,CAACC,KAAmB,EAAEC,gBAA+C;EAC7G,MAAM;IAAEC,WAAW;IAAEC,YAAY;IAAEC,gBAAgB;IAAEC;GAAkB,GAAGL,KAAK,CAACM,QAAQ,EAAE;EAC1F,MAAM;IAAEC;GAAoB,GAAGP,KAAK,CAACQ,OAAO,CAACC,IAAsB;EAEnEC,cAAK,CAACC,SAAS,CAAC;IACZ,MAAMC,OAAO,GAAG,EAAE;;IAGlBZ,KAAK,CAACa,qBAAqB,EAAE,CAACC,MAAM,CAAC,CAACC,MAAM,EAAEC,MAAM;MAChDJ,OAAO,CAACI,MAAM,CAACC,EAAE,CAAC,GAAGF,MAAM;MAC3B,OAAOA,MAAM,GAAGC,MAAM,CAACE,OAAO,EAAE;KACnC,EAAE,CAAC,CAAC;IAELjB,gBAAgB,CAACW,OAAO,CAAC;GAC5B,EAAE,CAACV,WAAW,EAAEC,YAAY,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEE,kBAAkB,CAAC,CAAC;AAC3F;;;;"}
1
+ {"version":3,"file":"useColumnOffsetStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useColumnOffsetStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable, OnChangeFn, TableMeta } from '@tanstack/react-table';\nimport { ColumnOffsetState } from '../../types';\n\n// frozen columns have position sticky, and because we support more than one of them\n// we must set a 'left' css value. this hook listens to changes on state that will\n// affect the left offset (resize, visibility, freezing) and updates offsets based on width\nexport const useColumnOffsetStateListener = (table: RTTable<any>, setColumnOffsets: OnChangeFn<ColumnOffsetState>) => {\n const { columnOrder, columnSizing, columnSizingInfo, columnVisibility } = table.getState();\n const { frozenColumnsCount } = table.options.meta as TableMeta<any>;\n\n React.useEffect(() => {\n const offsets = {};\n\n // store left offsets for each visible column\n table.getVisibleLeafColumns().reduce((offset, column) => {\n offsets[column.id] = offset;\n return offset + column.getSize();\n }, 0);\n\n setColumnOffsets(offsets);\n }, [columnOrder, columnSizing, columnSizingInfo, columnVisibility, frozenColumnsCount]);\n};\n"],"names":["useColumnOffsetStateListener","table","setColumnOffsets","columnOrder","columnSizing","columnSizingInfo","columnVisibility","getState","frozenColumnsCount","options","meta","React","useEffect","offsets","getVisibleLeafColumns","reduce","offset","column","id","getSize"],"mappings":";;AAIA;AACA;AACA;MACaA,4BAA4B,GAAGA,CAACC,KAAmB,EAAEC,gBAA+C;EAC7G,MAAM;IAAEC,WAAW;IAAEC,YAAY;IAAEC,gBAAgB;IAAEC;GAAkB,GAAGL,KAAK,CAACM,QAAQ,EAAE;EAC1F,MAAM;IAAEC;GAAoB,GAAGP,KAAK,CAACQ,OAAO,CAACC,IAAsB;EAEnEC,cAAK,CAACC,SAAS,CAAC;IACZ,MAAMC,OAAO,GAAG,EAAE;;IAGlBZ,KAAK,CAACa,qBAAqB,EAAE,CAACC,MAAM,CAAC,CAACC,MAAM,EAAEC,MAAM;MAChDJ,OAAO,CAACI,MAAM,CAACC,EAAE,CAAC,GAAGF,MAAM;MAC3B,OAAOA,MAAM,GAAGC,MAAM,CAACE,OAAO,EAAE;KACnC,EAAE,CAAC,CAAC;IAELjB,gBAAgB,CAACW,OAAO,CAAC;GAC5B,EAAE,CAACV,WAAW,EAAEC,YAAY,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEE,kBAAkB,CAAC,CAAC;AAC3F;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFilterStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useFilterStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable } from '@tanstack/react-table';\nimport { RowSelectionHandler } from '../../types';\n\nexport const useFilterStateListener = <TType = any>(table: RTTable<TType>, onRowSelect: RowSelectionHandler | undefined) => {\n React.useEffect(() => {\n if (onRowSelect) {\n table.resetRowSelection();\n }\n }, [table.getState().columnFilters, table.getState().globalFilter]);\n};\n"],"names":["useFilterStateListener","table","onRowSelect","React","useEffect","resetRowSelection","getState","columnFilters","globalFilter"],"mappings":";;MAIaA,sBAAsB,GAAG,CAAcC,KAAqB,EAAEC,WAA4C;EACnHC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIF,WAAW,EAAE;MACbD,KAAK,CAACI,iBAAiB,EAAE;;GAEhC,EAAE,CAACJ,KAAK,CAACK,QAAQ,EAAE,CAACC,aAAa,EAAEN,KAAK,CAACK,QAAQ,EAAE,CAACE,YAAY,CAAC,CAAC;AACvE;;;;"}
1
+ {"version":3,"file":"useFilterStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useFilterStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable } from '@tanstack/react-table';\nimport { RowSelectionHandler } from '../../types';\n\nexport const useFilterStateListener = <TType = any>(table: RTTable<TType>, onRowSelect: RowSelectionHandler | undefined) => {\n React.useEffect(() => {\n if (onRowSelect) {\n table.resetRowSelection();\n }\n }, [table.getState().columnFilters, table.getState().globalFilter]);\n};\n"],"names":["useFilterStateListener","table","onRowSelect","React","useEffect","resetRowSelection","getState","columnFilters","globalFilter"],"mappings":";;MAIaA,sBAAsB,GAAGA,CAAcC,KAAqB,EAAEC,WAA4C;EACnHC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIF,WAAW,EAAE;MACbD,KAAK,CAACI,iBAAiB,EAAE;;GAEhC,EAAE,CAACJ,KAAK,CAACK,QAAQ,EAAE,CAACC,aAAa,EAAEN,KAAK,CAACK,QAAQ,EAAE,CAACE,YAAY,CAAC,CAAC;AACvE;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRowSelectionListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useRowSelectionListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable } from '@tanstack/react-table';\nimport { RowSelectionHandler } from '../../types';\n\nexport const useRowSelectionListener = <TType = any>(table: RTTable<any>, onRowSelect: RowSelectionHandler | undefined) => {\n React.useEffect(() => {\n if (onRowSelect) {\n if (table.options.enableMultiRowSelection) {\n const rows = table.getSelectedRowModel().rows.map(row => row.original) as TType[];\n\n onRowSelect(rows, table.getIsAllRowsSelected());\n } else {\n onRowSelect(table.getSelectedRowModel().rows[0]?.original ?? undefined, false);\n }\n }\n }, [table.getState().rowSelection]);\n};\n"],"names":["useRowSelectionListener","table","onRowSelect","React","useEffect","options","enableMultiRowSelection","rows","getSelectedRowModel","map","row","original","getIsAllRowsSelected","undefined","getState","rowSelection"],"mappings":";;MAIaA,uBAAuB,GAAG,CAAcC,KAAmB,EAAEC,WAA4C;EAClHC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIF,WAAW,EAAE;MACb,IAAID,KAAK,CAACI,OAAO,CAACC,uBAAuB,EAAE;QACvC,MAAMC,IAAI,GAAGN,KAAK,CAACO,mBAAmB,EAAE,CAACD,IAAI,CAACE,GAAG,CAACC,GAAG,IAAIA,GAAG,CAACC,QAAQ,CAAY;QAEjFT,WAAW,CAACK,IAAI,EAAEN,KAAK,CAACW,oBAAoB,EAAE,CAAC;OAClD,MAAM;QAAA;QACHV,WAAW,oDAACD,KAAK,CAACO,mBAAmB,EAAE,CAACD,IAAI,CAAC,CAAC,CAAC,2DAAnC,uBAAqCI,QAAQ,yEAAIE,SAAS,EAAE,KAAK,CAAC;;;GAGzF,EAAE,CAACZ,KAAK,CAACa,QAAQ,EAAE,CAACC,YAAY,CAAC,CAAC;AACvC;;;;"}
1
+ {"version":3,"file":"useRowSelectionListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useRowSelectionListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable } from '@tanstack/react-table';\nimport { RowSelectionHandler } from '../../types';\n\nexport const useRowSelectionListener = <TType = any>(table: RTTable<any>, onRowSelect: RowSelectionHandler | undefined) => {\n React.useEffect(() => {\n if (onRowSelect) {\n if (table.options.enableMultiRowSelection) {\n const rows = table.getSelectedRowModel().rows.map(row => row.original) as TType[];\n\n onRowSelect(rows, table.getIsAllRowsSelected());\n } else {\n onRowSelect(table.getSelectedRowModel().rows[0]?.original ?? undefined, false);\n }\n }\n }, [table.getState().rowSelection]);\n};\n"],"names":["useRowSelectionListener","table","onRowSelect","React","useEffect","options","enableMultiRowSelection","rows","getSelectedRowModel","map","row","original","getIsAllRowsSelected","_table$getSelectedRow","_table$getSelectedRow2","undefined","getState","rowSelection"],"mappings":";;MAIaA,uBAAuB,GAAGA,CAAcC,KAAmB,EAAEC,WAA4C;EAClHC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIF,WAAW,EAAE;MACb,IAAID,KAAK,CAACI,OAAO,CAACC,uBAAuB,EAAE;QACvC,MAAMC,IAAI,GAAGN,KAAK,CAACO,mBAAmB,EAAE,CAACD,IAAI,CAACE,GAAG,CAACC,GAAG,IAAIA,GAAG,CAACC,QAAQ,CAAY;QAEjFT,WAAW,CAACK,IAAI,EAAEN,KAAK,CAACW,oBAAoB,EAAE,CAAC;OAClD,MAAM;QAAA,IAAAC,qBAAA,EAAAC,sBAAA;QACHZ,WAAW,EAAAW,qBAAA,IAAAC,sBAAA,GAACb,KAAK,CAACO,mBAAmB,EAAE,CAACD,IAAI,CAAC,CAAC,CAAC,cAAAO,sBAAA,uBAAnCA,sBAAA,CAAqCH,QAAQ,cAAAE,qBAAA,cAAAA,qBAAA,GAAIE,SAAS,EAAE,KAAK,CAAC;;;GAGzF,EAAE,CAACd,KAAK,CAACe,QAAQ,EAAE,CAACC,YAAY,CAAC,CAAC;AACvC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSettingsStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useSettingsStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable, TableMeta } from '@tanstack/react-table';\nimport { SettingsHandler } from '../../types';\n\nexport const useSettingsStateListener = (table: RTTable<any>, onChangeSettings: SettingsHandler | undefined) => {\n const meta = table.options.meta as TableMeta<any>;\n const state = table.getState();\n\n React.useEffect(() => {\n let handler;\n\n if (typeof onChangeSettings === 'function') {\n handler = setTimeout(\n () =>\n onChangeSettings({\n columnFilters: state.columnFilters,\n columnOrder: state.columnOrder,\n columnSizing: state.columnSizing,\n columnVisibility: state.columnVisibility,\n frozenColumnCount: meta.frozenColumnsCount,\n globalFilter: state.globalFilter,\n rowDensity: meta.rowDensity,\n sorting: state.sorting,\n }),\n 250\n );\n }\n\n return () => clearTimeout(handler);\n }, [\n state.columnFilters,\n state.columnOrder,\n meta.frozenColumnsCount,\n state.columnSizing,\n state.columnVisibility,\n state.globalFilter,\n meta.rowDensity,\n state.sorting,\n ]);\n};\n"],"names":["useSettingsStateListener","table","onChangeSettings","meta","options","state","getState","React","useEffect","handler","setTimeout","columnFilters","columnOrder","columnSizing","columnVisibility","frozenColumnCount","frozenColumnsCount","globalFilter","rowDensity","sorting","clearTimeout"],"mappings":";;MAIaA,wBAAwB,GAAG,CAACC,KAAmB,EAAEC,gBAA6C;EACvG,MAAMC,IAAI,GAAGF,KAAK,CAACG,OAAO,CAACD,IAAsB;EACjD,MAAME,KAAK,GAAGJ,KAAK,CAACK,QAAQ,EAAE;EAE9BC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIC,OAAO;IAEX,IAAI,OAAOP,gBAAgB,KAAK,UAAU,EAAE;MACxCO,OAAO,GAAGC,UAAU,CAChB,MACIR,gBAAgB,CAAC;QACbS,aAAa,EAAEN,KAAK,CAACM,aAAa;QAClCC,WAAW,EAAEP,KAAK,CAACO,WAAW;QAC9BC,YAAY,EAAER,KAAK,CAACQ,YAAY;QAChCC,gBAAgB,EAAET,KAAK,CAACS,gBAAgB;QACxCC,iBAAiB,EAAEZ,IAAI,CAACa,kBAAkB;QAC1CC,YAAY,EAAEZ,KAAK,CAACY,YAAY;QAChCC,UAAU,EAAEf,IAAI,CAACe,UAAU;QAC3BC,OAAO,EAAEd,KAAK,CAACc;OAClB,CAAC,EACN,GAAG,CACN;;IAGL,OAAO,MAAMC,YAAY,CAACX,OAAO,CAAC;GACrC,EAAE,CACCJ,KAAK,CAACM,aAAa,EACnBN,KAAK,CAACO,WAAW,EACjBT,IAAI,CAACa,kBAAkB,EACvBX,KAAK,CAACQ,YAAY,EAClBR,KAAK,CAACS,gBAAgB,EACtBT,KAAK,CAACY,YAAY,EAClBd,IAAI,CAACe,UAAU,EACfb,KAAK,CAACc,OAAO,CAChB,CAAC;AACN;;;;"}
1
+ {"version":3,"file":"useSettingsStateListener.js","sources":["../../../../../../../../../src/components/Table2/hooks/listeners/useSettingsStateListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as RTTable, TableMeta } from '@tanstack/react-table';\nimport { SettingsHandler } from '../../types';\n\nexport const useSettingsStateListener = (table: RTTable<any>, onChangeSettings: SettingsHandler | undefined) => {\n const meta = table.options.meta as TableMeta<any>;\n const state = table.getState();\n\n React.useEffect(() => {\n let handler;\n\n if (typeof onChangeSettings === 'function') {\n handler = setTimeout(\n () =>\n onChangeSettings({\n columnFilters: state.columnFilters,\n columnOrder: state.columnOrder,\n columnSizing: state.columnSizing,\n columnVisibility: state.columnVisibility,\n frozenColumnCount: meta.frozenColumnsCount,\n globalFilter: state.globalFilter,\n rowDensity: meta.rowDensity,\n sorting: state.sorting,\n }),\n 250\n );\n }\n\n return () => clearTimeout(handler);\n }, [\n state.columnFilters,\n state.columnOrder,\n meta.frozenColumnsCount,\n state.columnSizing,\n state.columnVisibility,\n state.globalFilter,\n meta.rowDensity,\n state.sorting,\n ]);\n};\n"],"names":["useSettingsStateListener","table","onChangeSettings","meta","options","state","getState","React","useEffect","handler","setTimeout","columnFilters","columnOrder","columnSizing","columnVisibility","frozenColumnCount","frozenColumnsCount","globalFilter","rowDensity","sorting","clearTimeout"],"mappings":";;MAIaA,wBAAwB,GAAGA,CAACC,KAAmB,EAAEC,gBAA6C;EACvG,MAAMC,IAAI,GAAGF,KAAK,CAACG,OAAO,CAACD,IAAsB;EACjD,MAAME,KAAK,GAAGJ,KAAK,CAACK,QAAQ,EAAE;EAE9BC,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIC,OAAO;IAEX,IAAI,OAAOP,gBAAgB,KAAK,UAAU,EAAE;MACxCO,OAAO,GAAGC,UAAU,CAChB,MACIR,gBAAgB,CAAC;QACbS,aAAa,EAAEN,KAAK,CAACM,aAAa;QAClCC,WAAW,EAAEP,KAAK,CAACO,WAAW;QAC9BC,YAAY,EAAER,KAAK,CAACQ,YAAY;QAChCC,gBAAgB,EAAET,KAAK,CAACS,gBAAgB;QACxCC,iBAAiB,EAAEZ,IAAI,CAACa,kBAAkB;QAC1CC,YAAY,EAAEZ,KAAK,CAACY,YAAY;QAChCC,UAAU,EAAEf,IAAI,CAACe,UAAU;QAC3BC,OAAO,EAAEd,KAAK,CAACc;OAClB,CAAC,EACN,GAAG,CACN;;IAGL,OAAO,MAAMC,YAAY,CAACX,OAAO,CAAC;GACrC,EAAE,CACCJ,KAAK,CAACM,aAAa,EACnBN,KAAK,CAACO,WAAW,EACjBT,IAAI,CAACa,kBAAkB,EACvBX,KAAK,CAACQ,YAAY,EAClBR,KAAK,CAACS,gBAAgB,EACtBT,KAAK,CAACY,YAAY,EAClBd,IAAI,CAACe,UAAU,EACfb,KAAK,CAACc,OAAO,CAChB,CAAC;AACN;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActiveRow.js","sources":["../../../../../../../../src/components/Table2/hooks/useActiveRow.ts"],"sourcesContent":["import React from 'react';\nimport { Row as TRow } from '@tanstack/react-table';\n\n/*\n Note: We have to use row id as the identifier for the row, index isn't good enough\n\n If new rows are added (e.g. by polling of data) and we use index, then the active row\n could change to a different row, this is really bad if the user is editing a row.\n \n Using row id allows us to always stay on the same row. We have to store index though to make\n arrow key navigation performant (otherwise we have to findIndex the entire row array each time).\n*/\n\nexport type ActiveRowHandler = (rowIndex: number) => void;\nexport type ActiveRowMoveHandler<TType = any> = (rows: TRow<TType>[], callback?: (index: number) => void) => void;\n\nexport type useActiveRow<TType = any> = {\n activeRowIndex: number;\n setActiveRowIndex: ActiveRowHandler;\n moveToPreviousRow: ActiveRowMoveHandler<TType>;\n moveToNextRow: ActiveRowMoveHandler<TType>;\n};\n\nexport const useActiveRow = <TType = any>(defaultActiveRowIndex = 0): useActiveRow<TType> => {\n const [activeRowIndex, _setActiveRow] = React.useState<number>(defaultActiveRowIndex);\n\n const moveActiveRow = (direction: -1 | 1, rows: TRow<TType>[], callback?: (index: number) => void) => {\n _setActiveRow(rowIndex => {\n const nextRowIndex = getNextIndex(direction, rowIndex, rows.length);\n if (callback) {\n callback(nextRowIndex);\n }\n return nextRowIndex;\n });\n };\n\n // output\n const moveToPreviousRow = (rows: TRow<TType>[], callback?: (index: number) => void) => moveActiveRow(-1, rows, callback);\n const moveToNextRow = (rows: TRow<TType>[], callback?: (index: number) => void) => moveActiveRow(1, rows, callback);\n const setActiveRowIndex = (rowIndex: number) => _setActiveRow(rowIndex);\n\n return {\n activeRowIndex,\n setActiveRowIndex,\n moveToPreviousRow,\n moveToNextRow,\n };\n};\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, length: number) => {\n if (direction === -1) {\n return currentIndex - 1 > 0 ? currentIndex - 1 : 0;\n }\n\n return currentIndex + 1 < length ? currentIndex + 1 : currentIndex;\n};\n"],"names":["useActiveRow","defaultActiveRowIndex","activeRowIndex","_setActiveRow","React","useState","moveActiveRow","direction","rows","callback","rowIndex","nextRowIndex","getNextIndex","length","moveToPreviousRow","moveToNextRow","setActiveRowIndex","currentIndex"],"mappings":";;MAuBaA,YAAY,GAAG,CAAcC,qBAAqB,GAAG,CAAC;EAC/D,MAAM,CAACC,cAAc,EAAEC,aAAa,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAASJ,qBAAqB,CAAC;EAErF,MAAMK,aAAa,GAAG,CAACC,SAAiB,EAAEC,IAAmB,EAAEC,QAAkC;IAC7FN,aAAa,CAACO,QAAQ;MAClB,MAAMC,YAAY,GAAGC,YAAY,CAACL,SAAS,EAAEG,QAAQ,EAAEF,IAAI,CAACK,MAAM,CAAC;MACnE,IAAIJ,QAAQ,EAAE;QACVA,QAAQ,CAACE,YAAY,CAAC;;MAE1B,OAAOA,YAAY;KACtB,CAAC;GACL;;EAGD,MAAMG,iBAAiB,GAAG,CAACN,IAAmB,EAAEC,QAAkC,KAAKH,aAAa,CAAC,CAAC,CAAC,EAAEE,IAAI,EAAEC,QAAQ,CAAC;EACxH,MAAMM,aAAa,GAAG,CAACP,IAAmB,EAAEC,QAAkC,KAAKH,aAAa,CAAC,CAAC,EAAEE,IAAI,EAAEC,QAAQ,CAAC;EACnH,MAAMO,iBAAiB,GAAIN,QAAgB,IAAKP,aAAa,CAACO,QAAQ,CAAC;EAEvE,OAAO;IACHR,cAAc;IACdc,iBAAiB;IACjBF,iBAAiB;IACjBC;GACH;AACL;AAEA,MAAMH,YAAY,GAAG,CAACL,SAAiB,EAAEU,YAAoB,EAAEJ,MAAc;EACzE,IAAIN,SAAS,KAAK,CAAC,CAAC,EAAE;IAClB,OAAOU,YAAY,GAAG,CAAC,GAAG,CAAC,GAAGA,YAAY,GAAG,CAAC,GAAG,CAAC;;EAGtD,OAAOA,YAAY,GAAG,CAAC,GAAGJ,MAAM,GAAGI,YAAY,GAAG,CAAC,GAAGA,YAAY;AACtE,CAAC;;;;"}
1
+ {"version":3,"file":"useActiveRow.js","sources":["../../../../../../../../src/components/Table2/hooks/useActiveRow.ts"],"sourcesContent":["import React from 'react';\nimport { Row as TRow } from '@tanstack/react-table';\n\n/*\n Note: We have to use row id as the identifier for the row, index isn't good enough\n\n If new rows are added (e.g. by polling of data) and we use index, then the active row\n could change to a different row, this is really bad if the user is editing a row.\n \n Using row id allows us to always stay on the same row. We have to store index though to make\n arrow key navigation performant (otherwise we have to findIndex the entire row array each time).\n*/\n\nexport type ActiveRowHandler = (rowIndex: number) => void;\nexport type ActiveRowMoveHandler<TType = any> = (rows: TRow<TType>[], callback?: (index: number) => void) => void;\n\nexport type useActiveRow<TType = any> = {\n activeRowIndex: number;\n setActiveRowIndex: ActiveRowHandler;\n moveToPreviousRow: ActiveRowMoveHandler<TType>;\n moveToNextRow: ActiveRowMoveHandler<TType>;\n};\n\nexport const useActiveRow = <TType = any>(defaultActiveRowIndex = 0): useActiveRow<TType> => {\n const [activeRowIndex, _setActiveRow] = React.useState<number>(defaultActiveRowIndex);\n\n const moveActiveRow = (direction: -1 | 1, rows: TRow<TType>[], callback?: (index: number) => void) => {\n _setActiveRow(rowIndex => {\n const nextRowIndex = getNextIndex(direction, rowIndex, rows.length);\n if (callback) {\n callback(nextRowIndex);\n }\n return nextRowIndex;\n });\n };\n\n // output\n const moveToPreviousRow = (rows: TRow<TType>[], callback?: (index: number) => void) => moveActiveRow(-1, rows, callback);\n const moveToNextRow = (rows: TRow<TType>[], callback?: (index: number) => void) => moveActiveRow(1, rows, callback);\n const setActiveRowIndex = (rowIndex: number) => _setActiveRow(rowIndex);\n\n return {\n activeRowIndex,\n setActiveRowIndex,\n moveToPreviousRow,\n moveToNextRow,\n };\n};\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, length: number) => {\n if (direction === -1) {\n return currentIndex - 1 > 0 ? currentIndex - 1 : 0;\n }\n\n return currentIndex + 1 < length ? currentIndex + 1 : currentIndex;\n};\n"],"names":["useActiveRow","defaultActiveRowIndex","activeRowIndex","_setActiveRow","React","useState","moveActiveRow","direction","rows","callback","rowIndex","nextRowIndex","getNextIndex","length","moveToPreviousRow","moveToNextRow","setActiveRowIndex","currentIndex"],"mappings":";;MAuBaA,YAAY,GAAGA,CAAcC,qBAAqB,GAAG,CAAC;EAC/D,MAAM,CAACC,cAAc,EAAEC,aAAa,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAASJ,qBAAqB,CAAC;EAErF,MAAMK,aAAa,GAAGA,CAACC,SAAiB,EAAEC,IAAmB,EAAEC,QAAkC;IAC7FN,aAAa,CAACO,QAAQ;MAClB,MAAMC,YAAY,GAAGC,YAAY,CAACL,SAAS,EAAEG,QAAQ,EAAEF,IAAI,CAACK,MAAM,CAAC;MACnE,IAAIJ,QAAQ,EAAE;QACVA,QAAQ,CAACE,YAAY,CAAC;;MAE1B,OAAOA,YAAY;KACtB,CAAC;GACL;;EAGD,MAAMG,iBAAiB,GAAGA,CAACN,IAAmB,EAAEC,QAAkC,KAAKH,aAAa,CAAC,CAAC,CAAC,EAAEE,IAAI,EAAEC,QAAQ,CAAC;EACxH,MAAMM,aAAa,GAAGA,CAACP,IAAmB,EAAEC,QAAkC,KAAKH,aAAa,CAAC,CAAC,EAAEE,IAAI,EAAEC,QAAQ,CAAC;EACnH,MAAMO,iBAAiB,GAAIN,QAAgB,IAAKP,aAAa,CAACO,QAAQ,CAAC;EAEvE,OAAO;IACHR,cAAc;IACdc,iBAAiB;IACjBF,iBAAiB;IACjBC;GACH;AACL;AAEA,MAAMH,YAAY,GAAGA,CAACL,SAAiB,EAAEU,YAAoB,EAAEJ,MAAc;EACzE,IAAIN,SAAS,KAAK,CAAC,CAAC,EAAE;IAClB,OAAOU,YAAY,GAAG,CAAC,GAAG,CAAC,GAAGA,YAAY,GAAG,CAAC,GAAG,CAAC;;EAGtD,OAAOA,YAAY,GAAG,CAAC,GAAGJ,MAAM,GAAGI,YAAY,GAAG,CAAC,GAAGA,YAAY;AACtE,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useColumnDefinitions.js","sources":["../../../../../../../../src/components/Table2/hooks/useColumnDefinitions.tsx"],"sourcesContent":["import React from 'react';\nimport {\n createColumnHelper,\n ColumnSort,\n ColumnSizingState,\n Row,\n RowData,\n VisibilityState,\n SortingFnOption,\n Table,\n} from '@tanstack/react-table';\nimport {\n CellAlignment,\n ColumnDataType,\n RowDragHandler,\n RowExpansionRenderer,\n SortFn,\n Table2Children,\n Table2ColumnControlRenderer,\n Table2ColumnFooterRenderer,\n Table2ColumnHeaderMenu,\n Table2ColumnProps,\n Table2RowActionRenderer,\n} from '../types';\nimport {\n createRowActionsColumn,\n createRowDraggableColumn,\n createRowExpansionColumn,\n createRowSelectionColumn,\n MIN_COLUMN_SIZE,\n} from '../utilities/columns';\nimport { useLocalization } from '../../Provider/Localization';\n\ndeclare module '@tanstack/table-core' {\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: CellAlignment;\n className?: string | ((row: Row<TData>, table: Table<TData>) => string);\n control?: Table2ColumnControlRenderer;\n dataType?: ColumnDataType;\n disableReordering?: boolean;\n defaultWidth?: number | 'grow';\n headerClassName?: string;\n menu?: Table2ColumnHeaderMenu;\n tooltip?: string;\n }\n}\n\ntype useColumnDefinitionsOptions<TType> = {\n actionsForRow: Table2RowActionRenderer<TType>[];\n actionsForRowLength: number;\n enableColumnFiltering: boolean;\n enableColumnHiding: boolean;\n enableColumnFreezing: boolean;\n enableRowExpansion: boolean;\n enableRowSelection: boolean;\n enableMultipleRowSelection: boolean;\n expandedRowRenderer?: RowExpansionRenderer<TType>;\n onRowDrag?: RowDragHandler<TType>;\n};\n\nexport function useColumnDefinitions<TType = any>(\n children: Table2Children,\n options: useColumnDefinitionsOptions<TType>,\n tableRef: React.RefObject<HTMLDivElement>\n) {\n const { texts } = useLocalization();\n const lastSelectedRowIndex = React.useRef<number>();\n const columnHelper = createColumnHelper<TType>();\n\n return React.useMemo(() => {\n let internalFrozenColumnCount = 0;\n // cannot be typed correctly until https://github.com/TanStack/table/discussions/4530 is resolved\n const columns: any[] = [];\n const defaultColumnSizing: ColumnSizingState = {};\n const defaultColumnVisibility: VisibilityState = {};\n const defaultSorting: ColumnSort[] = [];\n const footers: Record<string, Table2ColumnFooterRenderer> = {};\n\n (React.Children.toArray(children) as React.ReactElement<Table2ColumnProps<TType>>[])\n .filter((child: any) => !!child)\n .forEach(child => {\n if (React.isValidElement(child)) {\n const defaultWidth = child.props.defaultWidth === 'grow' ? '1fr' : child.props.defaultWidth;\n\n if (defaultWidth) {\n defaultColumnSizing[child.props.accessor] = defaultWidth as any;\n }\n\n if (child.props.defaultHidden && options.enableColumnHiding) {\n defaultColumnVisibility[child.props.accessor] = false;\n }\n\n if (child.props.sort !== undefined) {\n defaultSorting.push({\n id: child.props.accessor,\n desc: child.props.sort === 'desc',\n });\n }\n\n if (child.props.footer) {\n footers[child.props.accessor] = child.props.footer;\n }\n\n columns.push({\n accessorKey: child.props.accessor,\n id: child.props.accessor,\n cell: props => {\n let value = props.getValue();\n\n if (typeof child.props.renderer === 'function') {\n value = child.props.renderer(value, props.row.original);\n }\n\n if (typeof value === 'string' || typeof value === 'number') {\n return <span className=\"truncate\">{value}</span>;\n }\n\n return value ?? null;\n },\n header: child.props.header,\n meta: {\n align: child.props.align,\n className: child.props.className,\n control: child.props.control,\n dataType: child.props.dataType,\n defaultWidth,\n disableReordering: child.props.disableReordering,\n menu: child.props.menu,\n tooltip: child.props.tooltip,\n },\n enableHiding: !child.props.disableHiding,\n // filtering\n enableColumnFilter: !child.props.disableFiltering,\n filterFn:\n options.enableColumnFiltering && !child.props.disableFiltering ? ('tacoFilter' as any) : undefined,\n // sizing\n enableResizing: !child.props.disableResizing,\n minSize: child.props.minWidth ?? MIN_COLUMN_SIZE,\n size: child.props.defaultWidth,\n // sorting\n enableSorting: !child.props.disableSorting,\n sortingFn: getSortingFn<TType>(child.props.dataType, child.props.sortFn),\n sortDescFirst: false,\n sortUndefined: 1,\n });\n }\n });\n\n if (options.enableRowExpansion && options.expandedRowRenderer) {\n columns.unshift(columnHelper.display(createRowExpansionColumn(options.expandedRowRenderer, texts)));\n internalFrozenColumnCount++;\n }\n\n if (options.enableRowSelection) {\n columns.unshift(\n columnHelper.display(\n createRowSelectionColumn(\n options.enableMultipleRowSelection,\n lastSelectedRowIndex,\n options.onRowDrag,\n tableRef,\n texts\n )\n )\n );\n internalFrozenColumnCount++;\n }\n\n if (options.onRowDrag) {\n columns.unshift(columnHelper.display(createRowDraggableColumn(options.onRowDrag, texts)));\n internalFrozenColumnCount++;\n }\n\n if (options.actionsForRow?.length) {\n columns.push(columnHelper.display(createRowActionsColumn(options.actionsForRow, options.actionsForRowLength, texts)));\n }\n\n return { columns, internalFrozenColumnCount, defaultColumnSizing, defaultColumnVisibility, defaultSorting, footers };\n }, [children]);\n}\n\nfunction getSortingFn<TType>(dataType?: ColumnDataType, customFn?: SortFn<TType>): SortingFnOption<TType> {\n if (typeof customFn === 'function') {\n return (rowA, rowB, columnId) => customFn(rowA.original, rowB.original, columnId);\n }\n\n if (customFn) {\n return customFn;\n }\n\n if (dataType && dataType !== 'boolean') {\n return dataType;\n }\n\n return 'auto';\n}\n"],"names":["useColumnDefinitions","children","options","tableRef","texts","useLocalization","lastSelectedRowIndex","React","useRef","columnHelper","createColumnHelper","useMemo","internalFrozenColumnCount","columns","defaultColumnSizing","defaultColumnVisibility","defaultSorting","footers","Children","toArray","filter","child","forEach","isValidElement","defaultWidth","props","accessor","defaultHidden","enableColumnHiding","sort","undefined","push","id","desc","footer","accessorKey","cell","value","getValue","renderer","row","original","className","header","meta","align","control","dataType","disableReordering","menu","tooltip","enableHiding","disableHiding","enableColumnFilter","disableFiltering","filterFn","enableColumnFiltering","enableResizing","disableResizing","minSize","minWidth","MIN_COLUMN_SIZE","size","enableSorting","disableSorting","sortingFn","getSortingFn","sortFn","sortDescFirst","sortUndefined","enableRowExpansion","expandedRowRenderer","unshift","display","createRowExpansionColumn","enableRowSelection","createRowSelectionColumn","enableMultipleRowSelection","onRowDrag","createRowDraggableColumn","actionsForRow","length","createRowActionsColumn","actionsForRowLength","customFn","rowA","rowB","columnId"],"mappings":"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"}
1
+ {"version":3,"file":"useColumnDefinitions.js","sources":["../../../../../../../../src/components/Table2/hooks/useColumnDefinitions.tsx"],"sourcesContent":["import React from 'react';\nimport {\n createColumnHelper,\n ColumnSort,\n ColumnSizingState,\n Row,\n RowData,\n VisibilityState,\n SortingFnOption,\n Table,\n} from '@tanstack/react-table';\nimport {\n CellAlignment,\n ColumnDataType,\n RowDragHandler,\n RowExpansionRenderer,\n SortFn,\n Table2Children,\n Table2ColumnControlRenderer,\n Table2ColumnFooterRenderer,\n Table2ColumnHeaderMenu,\n Table2ColumnProps,\n Table2RowActionRenderer,\n} from '../types';\nimport {\n createRowActionsColumn,\n createRowDraggableColumn,\n createRowExpansionColumn,\n createRowSelectionColumn,\n MIN_COLUMN_SIZE,\n} from '../utilities/columns';\nimport { useLocalization } from '../../Provider/Localization';\n\ndeclare module '@tanstack/table-core' {\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: CellAlignment;\n className?: string | ((row: Row<TData>, table: Table<TData>) => string);\n control?: Table2ColumnControlRenderer;\n dataType?: ColumnDataType;\n disableReordering?: boolean;\n defaultWidth?: number | 'grow';\n headerClassName?: string;\n menu?: Table2ColumnHeaderMenu;\n tooltip?: string;\n }\n}\n\ntype useColumnDefinitionsOptions<TType> = {\n actionsForRow: Table2RowActionRenderer<TType>[];\n actionsForRowLength: number;\n enableColumnFiltering: boolean;\n enableColumnHiding: boolean;\n enableColumnFreezing: boolean;\n enableRowExpansion: boolean;\n enableRowSelection: boolean;\n enableMultipleRowSelection: boolean;\n expandedRowRenderer?: RowExpansionRenderer<TType>;\n onRowDrag?: RowDragHandler<TType>;\n};\n\nexport function useColumnDefinitions<TType = any>(\n children: Table2Children,\n options: useColumnDefinitionsOptions<TType>,\n tableRef: React.RefObject<HTMLDivElement>\n) {\n const { texts } = useLocalization();\n const lastSelectedRowIndex = React.useRef<number>();\n const columnHelper = createColumnHelper<TType>();\n\n return React.useMemo(() => {\n let internalFrozenColumnCount = 0;\n // cannot be typed correctly until https://github.com/TanStack/table/discussions/4530 is resolved\n const columns: any[] = [];\n const defaultColumnSizing: ColumnSizingState = {};\n const defaultColumnVisibility: VisibilityState = {};\n const defaultSorting: ColumnSort[] = [];\n const footers: Record<string, Table2ColumnFooterRenderer> = {};\n\n (React.Children.toArray(children) as React.ReactElement<Table2ColumnProps<TType>>[])\n .filter((child: any) => !!child)\n .forEach(child => {\n if (React.isValidElement(child)) {\n const defaultWidth = child.props.defaultWidth === 'grow' ? '1fr' : child.props.defaultWidth;\n\n if (defaultWidth) {\n defaultColumnSizing[child.props.accessor] = defaultWidth as any;\n }\n\n if (child.props.defaultHidden && options.enableColumnHiding) {\n defaultColumnVisibility[child.props.accessor] = false;\n }\n\n if (child.props.sort !== undefined) {\n defaultSorting.push({\n id: child.props.accessor,\n desc: child.props.sort === 'desc',\n });\n }\n\n if (child.props.footer) {\n footers[child.props.accessor] = child.props.footer;\n }\n\n columns.push({\n accessorKey: child.props.accessor,\n id: child.props.accessor,\n cell: props => {\n let value = props.getValue();\n\n if (typeof child.props.renderer === 'function') {\n value = child.props.renderer(value, props.row.original);\n }\n\n if (typeof value === 'string' || typeof value === 'number') {\n return <span className=\"truncate\">{value}</span>;\n }\n\n return value ?? null;\n },\n header: child.props.header,\n meta: {\n align: child.props.align,\n className: child.props.className,\n control: child.props.control,\n dataType: child.props.dataType,\n defaultWidth,\n disableReordering: child.props.disableReordering,\n menu: child.props.menu,\n tooltip: child.props.tooltip,\n },\n enableHiding: !child.props.disableHiding,\n // filtering\n enableColumnFilter: !child.props.disableFiltering,\n filterFn:\n options.enableColumnFiltering && !child.props.disableFiltering ? ('tacoFilter' as any) : undefined,\n // sizing\n enableResizing: !child.props.disableResizing,\n minSize: child.props.minWidth ?? MIN_COLUMN_SIZE,\n size: child.props.defaultWidth,\n // sorting\n enableSorting: !child.props.disableSorting,\n sortingFn: getSortingFn<TType>(child.props.dataType, child.props.sortFn),\n sortDescFirst: false,\n sortUndefined: 1,\n });\n }\n });\n\n if (options.enableRowExpansion && options.expandedRowRenderer) {\n columns.unshift(columnHelper.display(createRowExpansionColumn(options.expandedRowRenderer, texts)));\n internalFrozenColumnCount++;\n }\n\n if (options.enableRowSelection) {\n columns.unshift(\n columnHelper.display(\n createRowSelectionColumn(\n options.enableMultipleRowSelection,\n lastSelectedRowIndex,\n options.onRowDrag,\n tableRef,\n texts\n )\n )\n );\n internalFrozenColumnCount++;\n }\n\n if (options.onRowDrag) {\n columns.unshift(columnHelper.display(createRowDraggableColumn(options.onRowDrag, texts)));\n internalFrozenColumnCount++;\n }\n\n if (options.actionsForRow?.length) {\n columns.push(columnHelper.display(createRowActionsColumn(options.actionsForRow, options.actionsForRowLength, texts)));\n }\n\n return { columns, internalFrozenColumnCount, defaultColumnSizing, defaultColumnVisibility, defaultSorting, footers };\n }, [children]);\n}\n\nfunction getSortingFn<TType>(dataType?: ColumnDataType, customFn?: SortFn<TType>): SortingFnOption<TType> {\n if (typeof customFn === 'function') {\n return (rowA, rowB, columnId) => customFn(rowA.original, rowB.original, columnId);\n }\n\n if (customFn) {\n return customFn;\n }\n\n if (dataType && dataType !== 'boolean') {\n return dataType;\n }\n\n return 'auto';\n}\n"],"names":["useColumnDefinitions","children","options","tableRef","texts","useLocalization","lastSelectedRowIndex","React","useRef","columnHelper","createColumnHelper","useMemo","internalFrozenColumnCount","columns","defaultColumnSizing","defaultColumnVisibility","defaultSorting","footers","Children","toArray","filter","child","forEach","isValidElement","_child$props$minWidth","defaultWidth","props","accessor","defaultHidden","enableColumnHiding","sort","undefined","push","id","desc","footer","accessorKey","cell","value","getValue","renderer","row","original","className","_value","header","meta","align","control","dataType","disableReordering","menu","tooltip","enableHiding","disableHiding","enableColumnFilter","disableFiltering","filterFn","enableColumnFiltering","enableResizing","disableResizing","minSize","minWidth","MIN_COLUMN_SIZE","size","enableSorting","disableSorting","sortingFn","getSortingFn","sortFn","sortDescFirst","sortUndefined","enableRowExpansion","expandedRowRenderer","unshift","display","createRowExpansionColumn","enableRowSelection","createRowSelectionColumn","enableMultipleRowSelection","onRowDrag","createRowDraggableColumn","_options$actionsForRo","actionsForRow","length","createRowActionsColumn","actionsForRowLength","customFn","rowA","rowB","columnId"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useEditMode.js","sources":["../../../../../../../../src/components/Table2/hooks/useEditMode.ts"],"sourcesContent":["import React from 'react';\nimport { SaveHandler } from '../types';\n\nexport type EditModeHandler = (isEditing?: boolean) => void;\nexport type EditModeColumnMoveHandler = (columns: number[], moveRow?: (moveDirection: MOVE_DIR) => void) => void;\nexport type EditModeColumnHandler = (columnIndex: number) => void;\n\nexport type useEditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n toggleEditing: EditModeHandler;\n onSave?: SaveHandler;\n // columns\n columnIndex: number;\n moveToPreviousColumn: EditModeColumnMoveHandler;\n moveToNextColumn: EditModeColumnMoveHandler;\n moveToFirstColumn: EditModeColumnMoveHandler;\n moveToLastColumn: EditModeColumnMoveHandler;\n setColumn: EditModeColumnHandler;\n};\n\nexport type EditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n columnIndex: number;\n};\n\nexport enum MOVE_DIR {\n FIRST,\n LAST,\n PREV,\n NEXT,\n}\n\nexport const useEditMode = (handleSave?: SaveHandler): useEditMode => {\n const enableEditMode = !!handleSave;\n const [editMode, setEditMode] = React.useState<EditMode>({\n enableEditMode,\n isEditing: false,\n columnIndex: 0,\n });\n\n React.useEffect(() => {\n setEditMode(editMode => ({ ...editMode, enableEditMode }));\n }, [enableEditMode]);\n\n const _moveActiveColumn = (\n moveDirection: MOVE_DIR,\n focussableColumnIndexes: number[],\n moveRow?: (moveDirection: MOVE_DIR) => void\n ) => {\n const firstDataColumnIndex = focussableColumnIndexes.at(0) ?? 0;\n const lastDataColumnIndex = focussableColumnIndexes.at(-1) ?? 0;\n\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(({ columnIndex: currentColumnIndex, ...currentEditMode }) => {\n let nextCellIndex: number;\n\n switch (moveDirection) {\n case MOVE_DIR.FIRST:\n nextCellIndex = firstDataColumnIndex;\n break;\n case MOVE_DIR.LAST:\n nextCellIndex = lastDataColumnIndex;\n break;\n case MOVE_DIR.PREV:\n // moves to the last data column of the previous row, if the current column is the first column\n if (currentColumnIndex === firstDataColumnIndex) {\n moveRow?.(MOVE_DIR.PREV);\n nextCellIndex = lastDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(-1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n case MOVE_DIR.NEXT:\n // moves to the first data column of the next row, if the current column is the last column\n if (currentColumnIndex === lastDataColumnIndex) {\n moveRow?.(MOVE_DIR.NEXT);\n nextCellIndex = firstDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n }\n\n return { ...currentEditMode, columnIndex: nextCellIndex };\n });\n };\n\n // output\n const toggleEditing = (isEditing?: boolean, columnIndex = 0) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(editMode => ({ ...editMode, isEditing: isEditing ?? !editMode.isEditing, columnIndex }));\n };\n const moveToPreviousColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.PREV, focussableColumnIndexes, moveRow);\n const moveToNextColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.NEXT, focussableColumnIndexes, moveRow);\n const moveToFirstColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.FIRST, focussableColumnIndexes);\n const moveToLastColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.LAST, focussableColumnIndexes);\n const setColumn = (columnIndex: number) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(currentEditMode => ({ ...currentEditMode, columnIndex }));\n };\n\n return {\n ...editMode,\n onSave: handleSave,\n toggleEditing,\n moveToPreviousColumn,\n moveToNextColumn,\n moveToFirstColumn,\n moveToLastColumn,\n setColumn,\n };\n};\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, focussableColumnIndexes: number[]) => {\n const currentIndexPosition = focussableColumnIndexes.indexOf(currentIndex);\n const length = focussableColumnIndexes.length;\n\n if (direction === -1) {\n return currentIndexPosition - 1 > 0 ? currentIndexPosition - 1 : 0;\n }\n\n return currentIndexPosition + 1 < length ? currentIndexPosition + 1 : currentIndexPosition;\n};\n"],"names":["MOVE_DIR","useEditMode","handleSave","enableEditMode","editMode","setEditMode","React","useState","isEditing","columnIndex","useEffect","_moveActiveColumn","moveDirection","focussableColumnIndexes","moveRow","firstDataColumnIndex","at","lastDataColumnIndex","currentColumnIndex","currentEditMode","nextCellIndex","FIRST","LAST","PREV","getNextIndex","NEXT","toggleEditing","moveToPreviousColumn","moveToNextColumn","moveToFirstColumn","moveToLastColumn","setColumn","onSave","direction","currentIndex","currentIndexPosition","indexOf","length"],"mappings":";;IA2BYA;AAAZ,WAAYA,QAAQ;EAChBA,yCAAK;EACLA,uCAAI;EACJA,uCAAI;EACJA,uCAAI;AACR,CAAC,EALWA,QAAQ,KAARA,QAAQ;MAOPC,WAAW,GAAIC,UAAwB;EAChD,MAAMC,cAAc,GAAG,CAAC,CAACD,UAAU;EACnC,MAAM,CAACE,QAAQ,EAAEC,WAAW,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAW;IACrDJ,cAAc;IACdK,SAAS,EAAE,KAAK;IAChBC,WAAW,EAAE;GAChB,CAAC;EAEFH,cAAK,CAACI,SAAS,CAAC;IACZL,WAAW,CAACD,QAAQ,KAAK;MAAE,GAAGA,QAAQ;MAAED;KAAgB,CAAC,CAAC;GAC7D,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,MAAMQ,iBAAiB,GAAG,CACtBC,aAAuB,EACvBC,uBAAiC,EACjCC,OAA2C;;IAE3C,MAAMC,oBAAoB,4BAAGF,uBAAuB,CAACG,EAAE,CAAC,CAAC,CAAC,yEAAI,CAAC;IAC/D,MAAMC,mBAAmB,6BAAGJ,uBAAuB,CAACG,EAAE,CAAC,CAAC,CAAC,CAAC,2EAAI,CAAC;IAE/D,IAAI,CAACZ,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAAC,CAAC;MAAEI,WAAW,EAAES,kBAAkB;MAAE,GAAGC;KAAiB;MAChE,IAAIC,aAAqB;MAEzB,QAAQR,aAAa;QACjB,KAAKZ,QAAQ,CAACqB,KAAK;UACfD,aAAa,GAAGL,oBAAoB;UACpC;QACJ,KAAKf,QAAQ,CAACsB,IAAI;UACdF,aAAa,GAAGH,mBAAmB;UACnC;QACJ,KAAKjB,QAAQ,CAACuB,IAAI;;UAEd,IAAIL,kBAAkB,KAAKH,oBAAoB,EAAE;YAC7CD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGd,QAAQ,CAACuB,IAAI,CAAC;YACxBH,aAAa,GAAGH,mBAAmB;WACtC,MAAM;YACHG,aAAa,GAAGP,uBAAuB,CAACW,YAAY,CAAC,CAAC,CAAC,EAAEN,kBAAkB,EAAEL,uBAAuB,CAAC,CAAC;;UAE1G;QACJ,KAAKb,QAAQ,CAACyB,IAAI;;UAEd,IAAIP,kBAAkB,KAAKD,mBAAmB,EAAE;YAC5CH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGd,QAAQ,CAACyB,IAAI,CAAC;YACxBL,aAAa,GAAGL,oBAAoB;WACvC,MAAM;YACHK,aAAa,GAAGP,uBAAuB,CAACW,YAAY,CAAC,CAAC,EAAEN,kBAAkB,EAAEL,uBAAuB,CAAC,CAAC;;UAEzG;;MAGR,OAAO;QAAE,GAAGM,eAAe;QAAEV,WAAW,EAAEW;OAAe;KAC5D,CAAC;GACL;;EAGD,MAAMM,aAAa,GAAG,CAAClB,SAAmB,EAAEC,WAAW,GAAG,CAAC;IACvD,IAAI,CAACL,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAACD,QAAQ,KAAK;MAAE,GAAGA,QAAQ;MAAEI,SAAS,EAAEA,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,CAACJ,QAAQ,CAACI,SAAS;MAAEC;KAAa,CAAC,CAAC;GACvG;EACD,MAAMkB,oBAAoB,GAAG,CAACd,uBAAiC,EAAEC,OAA4C,KACzGH,iBAAiB,CAACX,QAAQ,CAACuB,IAAI,EAAEV,uBAAuB,EAAEC,OAAO,CAAC;EACtE,MAAMc,gBAAgB,GAAG,CAACf,uBAAiC,EAAEC,OAA4C,KACrGH,iBAAiB,CAACX,QAAQ,CAACyB,IAAI,EAAEZ,uBAAuB,EAAEC,OAAO,CAAC;EACtE,MAAMe,iBAAiB,GAAIhB,uBAAiC,IAAKF,iBAAiB,CAACX,QAAQ,CAACqB,KAAK,EAAER,uBAAuB,CAAC;EAC3H,MAAMiB,gBAAgB,GAAIjB,uBAAiC,IAAKF,iBAAiB,CAACX,QAAQ,CAACsB,IAAI,EAAET,uBAAuB,CAAC;EACzH,MAAMkB,SAAS,GAAItB,WAAmB;IAClC,IAAI,CAACL,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAACc,eAAe,KAAK;MAAE,GAAGA,eAAe;MAAEV;KAAa,CAAC,CAAC;GACxE;EAED,OAAO;IACH,GAAGL,QAAQ;IACX4B,MAAM,EAAE9B,UAAU;IAClBwB,aAAa;IACbC,oBAAoB;IACpBC,gBAAgB;IAChBC,iBAAiB;IACjBC,gBAAgB;IAChBC;GACH;AACL;AAEA,MAAMP,YAAY,GAAG,CAACS,SAAiB,EAAEC,YAAoB,EAAErB,uBAAiC;EAC5F,MAAMsB,oBAAoB,GAAGtB,uBAAuB,CAACuB,OAAO,CAACF,YAAY,CAAC;EAC1E,MAAMG,MAAM,GAAGxB,uBAAuB,CAACwB,MAAM;EAE7C,IAAIJ,SAAS,KAAK,CAAC,CAAC,EAAE;IAClB,OAAOE,oBAAoB,GAAG,CAAC,GAAG,CAAC,GAAGA,oBAAoB,GAAG,CAAC,GAAG,CAAC;;EAGtE,OAAOA,oBAAoB,GAAG,CAAC,GAAGE,MAAM,GAAGF,oBAAoB,GAAG,CAAC,GAAGA,oBAAoB;AAC9F,CAAC;;;;"}
1
+ {"version":3,"file":"useEditMode.js","sources":["../../../../../../../../src/components/Table2/hooks/useEditMode.ts"],"sourcesContent":["import React from 'react';\nimport { SaveHandler } from '../types';\n\nexport type EditModeHandler = (isEditing?: boolean) => void;\nexport type EditModeColumnMoveHandler = (columns: number[], moveRow?: (moveDirection: MOVE_DIR) => void) => void;\nexport type EditModeColumnHandler = (columnIndex: number) => void;\n\nexport type useEditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n toggleEditing: EditModeHandler;\n onSave?: SaveHandler;\n // columns\n columnIndex: number;\n moveToPreviousColumn: EditModeColumnMoveHandler;\n moveToNextColumn: EditModeColumnMoveHandler;\n moveToFirstColumn: EditModeColumnMoveHandler;\n moveToLastColumn: EditModeColumnMoveHandler;\n setColumn: EditModeColumnHandler;\n};\n\nexport type EditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n columnIndex: number;\n};\n\nexport enum MOVE_DIR {\n FIRST,\n LAST,\n PREV,\n NEXT,\n}\n\nexport const useEditMode = (handleSave?: SaveHandler): useEditMode => {\n const enableEditMode = !!handleSave;\n const [editMode, setEditMode] = React.useState<EditMode>({\n enableEditMode,\n isEditing: false,\n columnIndex: 0,\n });\n\n React.useEffect(() => {\n setEditMode(editMode => ({ ...editMode, enableEditMode }));\n }, [enableEditMode]);\n\n const _moveActiveColumn = (\n moveDirection: MOVE_DIR,\n focussableColumnIndexes: number[],\n moveRow?: (moveDirection: MOVE_DIR) => void\n ) => {\n const firstDataColumnIndex = focussableColumnIndexes.at(0) ?? 0;\n const lastDataColumnIndex = focussableColumnIndexes.at(-1) ?? 0;\n\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(({ columnIndex: currentColumnIndex, ...currentEditMode }) => {\n let nextCellIndex: number;\n\n switch (moveDirection) {\n case MOVE_DIR.FIRST:\n nextCellIndex = firstDataColumnIndex;\n break;\n case MOVE_DIR.LAST:\n nextCellIndex = lastDataColumnIndex;\n break;\n case MOVE_DIR.PREV:\n // moves to the last data column of the previous row, if the current column is the first column\n if (currentColumnIndex === firstDataColumnIndex) {\n moveRow?.(MOVE_DIR.PREV);\n nextCellIndex = lastDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(-1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n case MOVE_DIR.NEXT:\n // moves to the first data column of the next row, if the current column is the last column\n if (currentColumnIndex === lastDataColumnIndex) {\n moveRow?.(MOVE_DIR.NEXT);\n nextCellIndex = firstDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n }\n\n return { ...currentEditMode, columnIndex: nextCellIndex };\n });\n };\n\n // output\n const toggleEditing = (isEditing?: boolean, columnIndex = 0) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(editMode => ({ ...editMode, isEditing: isEditing ?? !editMode.isEditing, columnIndex }));\n };\n const moveToPreviousColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.PREV, focussableColumnIndexes, moveRow);\n const moveToNextColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.NEXT, focussableColumnIndexes, moveRow);\n const moveToFirstColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.FIRST, focussableColumnIndexes);\n const moveToLastColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.LAST, focussableColumnIndexes);\n const setColumn = (columnIndex: number) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(currentEditMode => ({ ...currentEditMode, columnIndex }));\n };\n\n return {\n ...editMode,\n onSave: handleSave,\n toggleEditing,\n moveToPreviousColumn,\n moveToNextColumn,\n moveToFirstColumn,\n moveToLastColumn,\n setColumn,\n };\n};\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, focussableColumnIndexes: number[]) => {\n const currentIndexPosition = focussableColumnIndexes.indexOf(currentIndex);\n const length = focussableColumnIndexes.length;\n\n if (direction === -1) {\n return currentIndexPosition - 1 > 0 ? currentIndexPosition - 1 : 0;\n }\n\n return currentIndexPosition + 1 < length ? currentIndexPosition + 1 : currentIndexPosition;\n};\n"],"names":["MOVE_DIR","useEditMode","handleSave","enableEditMode","editMode","setEditMode","React","useState","isEditing","columnIndex","useEffect","_moveActiveColumn","moveDirection","focussableColumnIndexes","moveRow","firstDataColumnIndex","_focussableColumnInde","at","lastDataColumnIndex","_focussableColumnInde2","currentColumnIndex","currentEditMode","nextCellIndex","FIRST","LAST","PREV","getNextIndex","NEXT","toggleEditing","moveToPreviousColumn","moveToNextColumn","moveToFirstColumn","moveToLastColumn","setColumn","onSave","direction","currentIndex","currentIndexPosition","indexOf","length"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTable.js","sources":["../../../../../../../../src/components/Table2/hooks/useTable.ts"],"sourcesContent":["import React from 'react';\nimport {\n useReactTable,\n getCoreRowModel,\n OnChangeFn,\n getSortedRowModel,\n getFilteredRowModel,\n RowData,\n TableState,\n TableOptions,\n} from '@tanstack/react-table';\nimport { RowClickHandler, RowDensity, Table2Children, Table2Props } from '../types';\nimport { useColumnDefinitions } from './useColumnDefinitions';\nimport { useColumnOffsetStateListener } from './listeners/useColumnOffsetStateListener';\nimport { ColumnOffsetState } from '../types';\nimport { useRowSelectionListener } from './listeners/useRowSelectionListener';\nimport { useSettingsStateListener } from './listeners/useSettingsStateListener';\nimport { columnFilterFn, globalFilterFn } from '../utilities/filterFn';\nimport { ActiveRowHandler, ActiveRowMoveHandler, useActiveRow } from './useActiveRow';\nimport { useActiveRowStateListener } from './listeners/useActiveRowStateListener';\nimport { useEditMode } from './useEditMode';\nimport { useIsHoverStatePaused } from '../../../hooks/useIsHoverStatePaused';\nimport { useFilterStateListener } from './listeners/useFilterStateListener';\nimport { ensureOrdering } from '../utilities/columns';\nimport { useTableShortcuts } from './useTableShortcuts';\n\ndeclare module '@tanstack/table-core' {\n interface TableMeta<TData extends RowData> {\n // active row\n activeRowIndex: number;\n setActiveRowIndex: ActiveRowHandler;\n moveToPreviousRow: ActiveRowMoveHandler<TData>;\n moveToNextRow: ActiveRowMoveHandler<TData>;\n // offsets\n columnOffsets: ColumnOffsetState;\n // density\n enableRowDensity: boolean;\n rowDensity: RowDensity;\n setRowDensity: OnChangeFn<RowDensity>;\n // dragging\n enableRowDragging: boolean;\n dragging: Record<string, boolean>;\n setDragging: OnChangeFn<Record<string, boolean>>;\n // computed\n enableColumnFreezing: boolean;\n enableColumnReordering: boolean;\n enableColumnHiding: boolean;\n shouldPauseSortingAndFiltering: boolean;\n setShouldPauseSortingAndFiltering: OnChangeFn<boolean>;\n shouldPauseHoverState: boolean;\n setShouldPauseHoverState: OnChangeFn<boolean>;\n frozenColumnsCount: number;\n setFrozenColumnsCount: OnChangeFn<number>;\n // other\n onRowClick?: RowClickHandler<TData>;\n // editing\n editMode: useEditMode;\n // used to determine first and last data column position\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n // disable table actions\n shouldDisableTableActions: boolean;\n setShouldDisableTableActions: OnChangeFn<boolean>;\n // active row column indexes\n focussableColumnIndexes: number[];\n addFocussableColumnIndex: (index: number) => void;\n resetFocussableColumnIndexes: () => void;\n // table ref\n tableRef: React.RefObject<HTMLDivElement>;\n // last sorted or filtered rows\n lastSortedOrFilteredRows: React.MutableRefObject<Array<any>>;\n }\n}\n\nconst ACTIONS_ON_ROW_LENGTH = 4;\n\nexport function useTable<TType = any>(children: Table2Children, props: Table2Props<TType>, ref: React.RefObject<HTMLDivElement>) {\n const {\n actionsForRow = [],\n actionsForRowLength = ACTIONS_ON_ROW_LENGTH,\n data,\n defaultActiveRowIndex,\n disableColumnFiltering = false,\n disableColumnHiding = false,\n disableColumnFreezing = false,\n disableColumnReordering = false,\n disableColumnResizing = false,\n disableRowDensity = false,\n disableRowExpansion = false,\n disableRowSelection = false,\n disableMultipleRowSelection = false,\n disableSearch = false,\n disableSorting = false,\n expandedRowRenderer,\n manualColumnFiltering = false,\n manualSearch = false,\n manualSorting = false,\n onChangeSettings,\n onRowClick,\n onRowDrag,\n onRowSelect,\n onSave,\n settings = {},\n shortcuts,\n // experimental\n _experimentalActionsForTable,\n } = props;\n\n const enableRowExpansion = !disableRowExpansion && !!expandedRowRenderer;\n const enableRowSelection = !disableRowSelection && (!!onRowSelect || !!_experimentalActionsForTable?.length);\n const enableMultipleRowSelection = !disableMultipleRowSelection && enableRowSelection;\n\n const { columns, internalFrozenColumnCount, defaultColumnSizing, defaultSorting, defaultColumnVisibility, footers } =\n useColumnDefinitions<TType>(\n children,\n {\n actionsForRow,\n actionsForRowLength,\n enableColumnFiltering: !disableColumnFiltering,\n enableColumnHiding: !disableColumnHiding,\n enableColumnFreezing: !disableColumnFreezing,\n enableRowExpansion,\n enableRowSelection,\n enableMultipleRowSelection,\n expandedRowRenderer,\n onRowDrag,\n },\n ref\n );\n\n const lastSortedOrFilteredRows = React.useRef<any>(null);\n const totalFrozenColumns = internalFrozenColumnCount + (settings?.frozenColumnCount ?? 0);\n const frozenColumns = columns.slice(0, totalFrozenColumns).map(column => column.id);\n\n // defaults\n const initialState: Partial<TableState> = {\n columnOrder: ensureOrdering<TType>(columns, settings?.columnOrder),\n columnPinning: {\n left: frozenColumns,\n right: [],\n },\n columnSizing: settings?.columnSizing ?? defaultColumnSizing,\n columnVisibility: settings?.columnVisibility ?? defaultColumnVisibility,\n };\n\n // Data column index - these are needed to make sure left and right arrow key shortcuts focuses only the data columns\n const dataColumnStartOffset = [!!onRowDrag, !!enableRowExpansion, !!enableRowSelection].reduce((t, e) => t + (e ? 1 : 0), 0);\n const dataColumnEndOffset = actionsForRow.length ? 1 : 0;\n\n // custom\n const activeRow = useActiveRow<TType>(defaultActiveRowIndex);\n const [shouldPauseHoverState, setShouldPauseHoverState] = useIsHoverStatePaused();\n const editMode = useEditMode(onSave);\n const [columnOffsets, setColumnOffsets] = React.useState({});\n const [rowDensity, setRowDensity] = React.useState<RowDensity>(settings?.rowDensity ?? 'normal');\n const [dragging, setDragging] = React.useState<Record<string, boolean>>({});\n const [shouldPauseSortingAndFiltering, setShouldPauseSortingAndFiltering] = React.useState<boolean>(false);\n const [shouldDisableTableActions, setShouldDisableTableActions] = React.useState<boolean>(false);\n // Frozen column count is the count of external columns that are frozen\n const [frozenColumnsCount, setFrozenColumnsCount] = React.useState(totalFrozenColumns - internalFrozenColumnCount);\n // For some reason, using state instead of ref didn't work as expected, that's why ref is used\n const focussableColumnIndexes = React.useRef<number[]>([]);\n\n // some options get set even if they are undefined, so we have to do it conditionally\n const options: Partial<TableOptions<any>> = {\n enableExpanding: enableRowExpansion,\n enableColumnFilters: !disableColumnFiltering,\n enableColumnResizing: !disableColumnResizing,\n enableGlobalFilter: !disableSearch,\n enableHiding: !disableColumnHiding,\n enablePinning: !disableColumnFreezing,\n enableRowSelection: enableRowSelection,\n enableMultiRowSelection: enableMultipleRowSelection,\n enableSorting: !disableSorting,\n };\n\n // resizing\n if (options.enableColumnResizing) {\n options.columnResizeMode = 'onChange';\n }\n\n // sorting\n if (options.enableSorting) {\n const sanitizeSortedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);\n initialState.sorting = settings?.sorting ? settings?.sorting.filter(sanitizeSortedColumns) : defaultSorting;\n\n if (manualSorting) {\n options.manualSorting = true;\n } else {\n options.getSortedRowModel = getSortedRowModel();\n }\n }\n\n // filtering\n if (options.enableColumnFilters) {\n initialState.columnFilters = settings?.columnFilters ?? [];\n\n if (manualColumnFiltering) {\n options.manualFiltering = true;\n } else {\n options.filterFns = {\n tacoFilter: (row, columnId, filter) => columnFilterFn(row.getValue(columnId), filter),\n };\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n // search\n if (options.enableGlobalFilter) {\n if (manualSearch) {\n options.manualFiltering = true;\n } else {\n options.globalFilterFn = (row, columnId, query) => globalFilterFn(row.getValue(columnId), query);\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n const table = useReactTable({\n data,\n columns: columns as any,\n getCoreRowModel: getCoreRowModel(),\n initialState,\n ...options,\n meta: {\n ...activeRow,\n editMode,\n // offsets\n columnOffsets,\n // density\n enableRowDensity: !disableRowDensity,\n rowDensity,\n setRowDensity,\n // dragging\n enableRowDragging: !!onRowDrag,\n dragging,\n setDragging,\n // computed\n enableColumnFreezing: !disableColumnFreezing,\n enableColumnReordering: !disableColumnReordering,\n enableColumnHiding: !disableColumnHiding,\n shouldPauseHoverState,\n setShouldPauseHoverState,\n frozenColumnsCount,\n setFrozenColumnsCount,\n // resorting\n shouldPauseSortingAndFiltering,\n setShouldPauseSortingAndFiltering,\n // other\n onRowClick,\n // data column positions\n dataColumnStartOffset,\n dataColumnEndOffset,\n // disable table actions\n shouldDisableTableActions,\n setShouldDisableTableActions,\n // active row column indexes\n focussableColumnIndexes: focussableColumnIndexes.current,\n addFocussableColumnIndex: (index: number) => {\n if (!focussableColumnIndexes.current.includes(index)) {\n focussableColumnIndexes.current = [...focussableColumnIndexes.current, index].sort((a, b) => a - b);\n }\n },\n resetFocussableColumnIndexes: () => {\n focussableColumnIndexes.current = [];\n },\n // table ref\n tableRef: ref,\n // last sorted or filtered rows\n lastSortedOrFilteredRows,\n },\n });\n\n const tableRows = table.getRowModel().rows;\n\n if (!shouldPauseSortingAndFiltering) {\n lastSortedOrFilteredRows.current = tableRows;\n }\n\n const rows = shouldPauseSortingAndFiltering ? lastSortedOrFilteredRows.current : tableRows;\n\n // state listeners\n useActiveRowStateListener<TType>(table, rows, activeRow);\n useColumnOffsetStateListener(table, setColumnOffsets);\n useFilterStateListener<TType>(table, onRowSelect);\n useRowSelectionListener<TType>(table, onRowSelect);\n useSettingsStateListener(table, onChangeSettings);\n\n useTableShortcuts(shortcuts, tableRows[activeRow.activeRowIndex]?.original);\n\n return { rows, table, footers };\n}\n"],"names":["ACTIONS_ON_ROW_LENGTH","useTable","children","props","ref","actionsForRow","actionsForRowLength","data","defaultActiveRowIndex","disableColumnFiltering","disableColumnHiding","disableColumnFreezing","disableColumnReordering","disableColumnResizing","disableRowDensity","disableRowExpansion","disableRowSelection","disableMultipleRowSelection","disableSearch","disableSorting","expandedRowRenderer","manualColumnFiltering","manualSearch","manualSorting","onChangeSettings","onRowClick","onRowDrag","onRowSelect","onSave","settings","shortcuts","_experimentalActionsForTable","enableRowExpansion","enableRowSelection","length","enableMultipleRowSelection","columns","internalFrozenColumnCount","defaultColumnSizing","defaultSorting","defaultColumnVisibility","footers","useColumnDefinitions","enableColumnFiltering","enableColumnHiding","enableColumnFreezing","lastSortedOrFilteredRows","React","useRef","totalFrozenColumns","frozenColumnCount","frozenColumns","slice","map","column","id","initialState","columnOrder","ensureOrdering","columnPinning","left","right","columnSizing","columnVisibility","dataColumnStartOffset","reduce","t","e","dataColumnEndOffset","activeRow","useActiveRow","shouldPauseHoverState","setShouldPauseHoverState","useIsHoverStatePaused","editMode","useEditMode","columnOffsets","setColumnOffsets","useState","rowDensity","setRowDensity","dragging","setDragging","shouldPauseSortingAndFiltering","setShouldPauseSortingAndFiltering","shouldDisableTableActions","setShouldDisableTableActions","frozenColumnsCount","setFrozenColumnsCount","focussableColumnIndexes","options","enableExpanding","enableColumnFilters","enableColumnResizing","enableGlobalFilter","enableHiding","enablePinning","enableMultiRowSelection","enableSorting","columnResizeMode","sanitizeSortedColumns","find","definedColumn","sorting","filter","getSortedRowModel","columnFilters","manualFiltering","filterFns","tacoFilter","row","columnId","columnFilterFn","getValue","getFilteredRowModel","globalFilterFn","query","table","useReactTable","getCoreRowModel","meta","enableRowDensity","enableRowDragging","enableColumnReordering","current","addFocussableColumnIndex","index","includes","sort","a","b","resetFocussableColumnIndexes","tableRef","tableRows","getRowModel","rows","useActiveRowStateListener","useColumnOffsetStateListener","useFilterStateListener","useRowSelectionListener","useSettingsStateListener","useTableShortcuts","activeRowIndex","original"],"mappings":"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"}
1
+ {"version":3,"file":"useTable.js","sources":["../../../../../../../../src/components/Table2/hooks/useTable.ts"],"sourcesContent":["import React from 'react';\nimport {\n useReactTable,\n getCoreRowModel,\n OnChangeFn,\n getSortedRowModel,\n getFilteredRowModel,\n RowData,\n TableState,\n TableOptions,\n} from '@tanstack/react-table';\nimport { RowClickHandler, RowDensity, Table2Children, Table2Props } from '../types';\nimport { useColumnDefinitions } from './useColumnDefinitions';\nimport { useColumnOffsetStateListener } from './listeners/useColumnOffsetStateListener';\nimport { ColumnOffsetState } from '../types';\nimport { useRowSelectionListener } from './listeners/useRowSelectionListener';\nimport { useSettingsStateListener } from './listeners/useSettingsStateListener';\nimport { columnFilterFn, globalFilterFn } from '../utilities/filterFn';\nimport { ActiveRowHandler, ActiveRowMoveHandler, useActiveRow } from './useActiveRow';\nimport { useActiveRowStateListener } from './listeners/useActiveRowStateListener';\nimport { useEditMode } from './useEditMode';\nimport { useIsHoverStatePaused } from '../../../hooks/useIsHoverStatePaused';\nimport { useFilterStateListener } from './listeners/useFilterStateListener';\nimport { ensureOrdering } from '../utilities/columns';\nimport { useTableShortcuts } from './useTableShortcuts';\n\ndeclare module '@tanstack/table-core' {\n interface TableMeta<TData extends RowData> {\n // active row\n activeRowIndex: number;\n setActiveRowIndex: ActiveRowHandler;\n moveToPreviousRow: ActiveRowMoveHandler<TData>;\n moveToNextRow: ActiveRowMoveHandler<TData>;\n // offsets\n columnOffsets: ColumnOffsetState;\n // density\n enableRowDensity: boolean;\n rowDensity: RowDensity;\n setRowDensity: OnChangeFn<RowDensity>;\n // dragging\n enableRowDragging: boolean;\n dragging: Record<string, boolean>;\n setDragging: OnChangeFn<Record<string, boolean>>;\n // computed\n enableColumnFreezing: boolean;\n enableColumnReordering: boolean;\n enableColumnHiding: boolean;\n shouldPauseSortingAndFiltering: boolean;\n setShouldPauseSortingAndFiltering: OnChangeFn<boolean>;\n shouldPauseHoverState: boolean;\n setShouldPauseHoverState: OnChangeFn<boolean>;\n frozenColumnsCount: number;\n setFrozenColumnsCount: OnChangeFn<number>;\n // other\n onRowClick?: RowClickHandler<TData>;\n // editing\n editMode: useEditMode;\n // used to determine first and last data column position\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n // disable table actions\n shouldDisableTableActions: boolean;\n setShouldDisableTableActions: OnChangeFn<boolean>;\n // active row column indexes\n focussableColumnIndexes: number[];\n addFocussableColumnIndex: (index: number) => void;\n resetFocussableColumnIndexes: () => void;\n // table ref\n tableRef: React.RefObject<HTMLDivElement>;\n // last sorted or filtered rows\n lastSortedOrFilteredRows: React.MutableRefObject<Array<any>>;\n }\n}\n\nconst ACTIONS_ON_ROW_LENGTH = 4;\n\nexport function useTable<TType = any>(children: Table2Children, props: Table2Props<TType>, ref: React.RefObject<HTMLDivElement>) {\n const {\n actionsForRow = [],\n actionsForRowLength = ACTIONS_ON_ROW_LENGTH,\n data,\n defaultActiveRowIndex,\n disableColumnFiltering = false,\n disableColumnHiding = false,\n disableColumnFreezing = false,\n disableColumnReordering = false,\n disableColumnResizing = false,\n disableRowDensity = false,\n disableRowExpansion = false,\n disableRowSelection = false,\n disableMultipleRowSelection = false,\n disableSearch = false,\n disableSorting = false,\n expandedRowRenderer,\n manualColumnFiltering = false,\n manualSearch = false,\n manualSorting = false,\n onChangeSettings,\n onRowClick,\n onRowDrag,\n onRowSelect,\n onSave,\n settings = {},\n shortcuts,\n // experimental\n _experimentalActionsForTable,\n } = props;\n\n const enableRowExpansion = !disableRowExpansion && !!expandedRowRenderer;\n const enableRowSelection = !disableRowSelection && (!!onRowSelect || !!_experimentalActionsForTable?.length);\n const enableMultipleRowSelection = !disableMultipleRowSelection && enableRowSelection;\n\n const { columns, internalFrozenColumnCount, defaultColumnSizing, defaultSorting, defaultColumnVisibility, footers } =\n useColumnDefinitions<TType>(\n children,\n {\n actionsForRow,\n actionsForRowLength,\n enableColumnFiltering: !disableColumnFiltering,\n enableColumnHiding: !disableColumnHiding,\n enableColumnFreezing: !disableColumnFreezing,\n enableRowExpansion,\n enableRowSelection,\n enableMultipleRowSelection,\n expandedRowRenderer,\n onRowDrag,\n },\n ref\n );\n\n const lastSortedOrFilteredRows = React.useRef<any>(null);\n const totalFrozenColumns = internalFrozenColumnCount + (settings?.frozenColumnCount ?? 0);\n const frozenColumns = columns.slice(0, totalFrozenColumns).map(column => column.id);\n\n // defaults\n const initialState: Partial<TableState> = {\n columnOrder: ensureOrdering<TType>(columns, settings?.columnOrder),\n columnPinning: {\n left: frozenColumns,\n right: [],\n },\n columnSizing: settings?.columnSizing ?? defaultColumnSizing,\n columnVisibility: settings?.columnVisibility ?? defaultColumnVisibility,\n };\n\n // Data column index - these are needed to make sure left and right arrow key shortcuts focuses only the data columns\n const dataColumnStartOffset = [!!onRowDrag, !!enableRowExpansion, !!enableRowSelection].reduce((t, e) => t + (e ? 1 : 0), 0);\n const dataColumnEndOffset = actionsForRow.length ? 1 : 0;\n\n // custom\n const activeRow = useActiveRow<TType>(defaultActiveRowIndex);\n const [shouldPauseHoverState, setShouldPauseHoverState] = useIsHoverStatePaused();\n const editMode = useEditMode(onSave);\n const [columnOffsets, setColumnOffsets] = React.useState({});\n const [rowDensity, setRowDensity] = React.useState<RowDensity>(settings?.rowDensity ?? 'normal');\n const [dragging, setDragging] = React.useState<Record<string, boolean>>({});\n const [shouldPauseSortingAndFiltering, setShouldPauseSortingAndFiltering] = React.useState<boolean>(false);\n const [shouldDisableTableActions, setShouldDisableTableActions] = React.useState<boolean>(false);\n // Frozen column count is the count of external columns that are frozen\n const [frozenColumnsCount, setFrozenColumnsCount] = React.useState(totalFrozenColumns - internalFrozenColumnCount);\n // For some reason, using state instead of ref didn't work as expected, that's why ref is used\n const focussableColumnIndexes = React.useRef<number[]>([]);\n\n // some options get set even if they are undefined, so we have to do it conditionally\n const options: Partial<TableOptions<any>> = {\n enableExpanding: enableRowExpansion,\n enableColumnFilters: !disableColumnFiltering,\n enableColumnResizing: !disableColumnResizing,\n enableGlobalFilter: !disableSearch,\n enableHiding: !disableColumnHiding,\n enablePinning: !disableColumnFreezing,\n enableRowSelection: enableRowSelection,\n enableMultiRowSelection: enableMultipleRowSelection,\n enableSorting: !disableSorting,\n };\n\n // resizing\n if (options.enableColumnResizing) {\n options.columnResizeMode = 'onChange';\n }\n\n // sorting\n if (options.enableSorting) {\n const sanitizeSortedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);\n initialState.sorting = settings?.sorting ? settings?.sorting.filter(sanitizeSortedColumns) : defaultSorting;\n\n if (manualSorting) {\n options.manualSorting = true;\n } else {\n options.getSortedRowModel = getSortedRowModel();\n }\n }\n\n // filtering\n if (options.enableColumnFilters) {\n initialState.columnFilters = settings?.columnFilters ?? [];\n\n if (manualColumnFiltering) {\n options.manualFiltering = true;\n } else {\n options.filterFns = {\n tacoFilter: (row, columnId, filter) => columnFilterFn(row.getValue(columnId), filter),\n };\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n // search\n if (options.enableGlobalFilter) {\n if (manualSearch) {\n options.manualFiltering = true;\n } else {\n options.globalFilterFn = (row, columnId, query) => globalFilterFn(row.getValue(columnId), query);\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n const table = useReactTable({\n data,\n columns: columns as any,\n getCoreRowModel: getCoreRowModel(),\n initialState,\n ...options,\n meta: {\n ...activeRow,\n editMode,\n // offsets\n columnOffsets,\n // density\n enableRowDensity: !disableRowDensity,\n rowDensity,\n setRowDensity,\n // dragging\n enableRowDragging: !!onRowDrag,\n dragging,\n setDragging,\n // computed\n enableColumnFreezing: !disableColumnFreezing,\n enableColumnReordering: !disableColumnReordering,\n enableColumnHiding: !disableColumnHiding,\n shouldPauseHoverState,\n setShouldPauseHoverState,\n frozenColumnsCount,\n setFrozenColumnsCount,\n // resorting\n shouldPauseSortingAndFiltering,\n setShouldPauseSortingAndFiltering,\n // other\n onRowClick,\n // data column positions\n dataColumnStartOffset,\n dataColumnEndOffset,\n // disable table actions\n shouldDisableTableActions,\n setShouldDisableTableActions,\n // active row column indexes\n focussableColumnIndexes: focussableColumnIndexes.current,\n addFocussableColumnIndex: (index: number) => {\n if (!focussableColumnIndexes.current.includes(index)) {\n focussableColumnIndexes.current = [...focussableColumnIndexes.current, index].sort((a, b) => a - b);\n }\n },\n resetFocussableColumnIndexes: () => {\n focussableColumnIndexes.current = [];\n },\n // table ref\n tableRef: ref,\n // last sorted or filtered rows\n lastSortedOrFilteredRows,\n },\n });\n\n const tableRows = table.getRowModel().rows;\n\n if (!shouldPauseSortingAndFiltering) {\n lastSortedOrFilteredRows.current = tableRows;\n }\n\n const rows = shouldPauseSortingAndFiltering ? lastSortedOrFilteredRows.current : tableRows;\n\n // state listeners\n useActiveRowStateListener<TType>(table, rows, activeRow);\n useColumnOffsetStateListener(table, setColumnOffsets);\n useFilterStateListener<TType>(table, onRowSelect);\n useRowSelectionListener<TType>(table, onRowSelect);\n useSettingsStateListener(table, onChangeSettings);\n\n useTableShortcuts(shortcuts, tableRows[activeRow.activeRowIndex]?.original);\n\n return { rows, table, footers };\n}\n"],"names":["ACTIONS_ON_ROW_LENGTH","useTable","children","props","ref","actionsForRow","actionsForRowLength","data","defaultActiveRowIndex","disableColumnFiltering","disableColumnHiding","disableColumnFreezing","disableColumnReordering","disableColumnResizing","disableRowDensity","disableRowExpansion","disableRowSelection","disableMultipleRowSelection","disableSearch","disableSorting","expandedRowRenderer","manualColumnFiltering","manualSearch","manualSorting","onChangeSettings","onRowClick","onRowDrag","onRowSelect","onSave","settings","shortcuts","_experimentalActionsForTable","enableRowExpansion","enableRowSelection","length","enableMultipleRowSelection","columns","internalFrozenColumnCount","defaultColumnSizing","defaultSorting","defaultColumnVisibility","footers","useColumnDefinitions","enableColumnFiltering","enableColumnHiding","enableColumnFreezing","lastSortedOrFilteredRows","React","useRef","totalFrozenColumns","_settings$frozenColum","frozenColumnCount","frozenColumns","slice","map","column","id","initialState","columnOrder","ensureOrdering","columnPinning","left","right","columnSizing","_settings$columnSizin","columnVisibility","_settings$columnVisib","dataColumnStartOffset","reduce","t","e","dataColumnEndOffset","activeRow","useActiveRow","shouldPauseHoverState","setShouldPauseHoverState","useIsHoverStatePaused","editMode","useEditMode","columnOffsets","setColumnOffsets","useState","rowDensity","setRowDensity","_settings$rowDensity","dragging","setDragging","shouldPauseSortingAndFiltering","setShouldPauseSortingAndFiltering","shouldDisableTableActions","setShouldDisableTableActions","frozenColumnsCount","setFrozenColumnsCount","focussableColumnIndexes","options","enableExpanding","enableColumnFilters","enableColumnResizing","enableGlobalFilter","enableHiding","enablePinning","enableMultiRowSelection","enableSorting","columnResizeMode","sanitizeSortedColumns","find","definedColumn","sorting","filter","getSortedRowModel","_settings$columnFilte","columnFilters","manualFiltering","filterFns","tacoFilter","row","columnId","columnFilterFn","getValue","getFilteredRowModel","globalFilterFn","query","table","useReactTable","getCoreRowModel","meta","enableRowDensity","enableRowDragging","enableColumnReordering","current","addFocussableColumnIndex","index","includes","sort","a","b","resetFocussableColumnIndexes","tableRef","tableRows","getRowModel","rows","useActiveRowStateListener","useColumnOffsetStateListener","useFilterStateListener","useRowSelectionListener","useSettingsStateListener","useTableShortcuts","_tableRows$activeRow$","activeRowIndex","original"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTableShortcuts.js","sources":["../../../../../../../../src/components/Table2/hooks/useTableShortcuts.ts"],"sourcesContent":["import React from 'react';\nimport { Table2ShortcutHandlerObject, Table2Shortcuts } from '../types';\nimport { KeyDownHandlerOptions, createShortcutKeyDownHandler } from '../../../utils/keyboard';\n\nexport function useTableShortcuts<TType = any>(shortcuts: Table2Shortcuts<TType> | undefined, activeRow: TType) {\n React.useEffect(() => {\n const shortcutKeys = Object.keys(shortcuts ?? {});\n\n const globalHandlers: Array<(event: KeyboardEvent) => void> = [];\n\n // convert the shortcut into the correct format to register it\n if (shortcuts && shortcutKeys.length) {\n shortcutKeys.forEach(key => {\n const handler = shortcuts[key];\n\n let keyDownHandler;\n let keyDownHandlerOptions: KeyDownHandlerOptions;\n\n if (typeof handler === 'function') {\n keyDownHandler = handler;\n keyDownHandlerOptions = {\n key,\n };\n } else {\n const handlerObject = handler as Table2ShortcutHandlerObject<TType>;\n keyDownHandler = handlerObject.handler;\n keyDownHandlerOptions = {\n key,\n meta: handlerObject.meta,\n shift: handlerObject.shift,\n };\n }\n\n globalHandlers.push(\n createShortcutKeyDownHandler(keyDownHandlerOptions, event => {\n event.preventDefault();\n keyDownHandler(activeRow);\n })\n );\n });\n }\n\n globalHandlers.forEach(handler => {\n document.addEventListener('keydown', handler);\n });\n\n return () => {\n globalHandlers.forEach(handler => {\n document.removeEventListener('keydown', handler);\n });\n };\n }, [shortcuts, activeRow]);\n}\n"],"names":["useTableShortcuts","shortcuts","activeRow","React","useEffect","shortcutKeys","Object","keys","globalHandlers","length","forEach","key","handler","keyDownHandler","keyDownHandlerOptions","handlerObject","meta","shift","push","createShortcutKeyDownHandler","event","preventDefault","document","addEventListener","removeEventListener"],"mappings":";;;SAIgBA,iBAAiB,CAAcC,SAA6C,EAAEC,SAAgB;EAC1GC,cAAK,CAACC,SAAS,CAAC;IACZ,MAAMC,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACN,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,CAAC;IAEjD,MAAMO,cAAc,GAA0C,EAAE;;IAGhE,IAAIP,SAAS,IAAII,YAAY,CAACI,MAAM,EAAE;MAClCJ,YAAY,CAACK,OAAO,CAACC,GAAG;QACpB,MAAMC,OAAO,GAAGX,SAAS,CAACU,GAAG,CAAC;QAE9B,IAAIE,cAAc;QAClB,IAAIC,qBAA4C;QAEhD,IAAI,OAAOF,OAAO,KAAK,UAAU,EAAE;UAC/BC,cAAc,GAAGD,OAAO;UACxBE,qBAAqB,GAAG;YACpBH;WACH;SACJ,MAAM;UACH,MAAMI,aAAa,GAAGH,OAA6C;UACnEC,cAAc,GAAGE,aAAa,CAACH,OAAO;UACtCE,qBAAqB,GAAG;YACpBH,GAAG;YACHK,IAAI,EAAED,aAAa,CAACC,IAAI;YACxBC,KAAK,EAAEF,aAAa,CAACE;WACxB;;QAGLT,cAAc,CAACU,IAAI,CACfC,4BAA4B,CAACL,qBAAqB,EAAEM,KAAK;UACrDA,KAAK,CAACC,cAAc,EAAE;UACtBR,cAAc,CAACX,SAAS,CAAC;SAC5B,CAAC,CACL;OACJ,CAAC;;IAGNM,cAAc,CAACE,OAAO,CAACE,OAAO;MAC1BU,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAEX,OAAO,CAAC;KAChD,CAAC;IAEF,OAAO;MACHJ,cAAc,CAACE,OAAO,CAACE,OAAO;QAC1BU,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAEZ,OAAO,CAAC;OACnD,CAAC;KACL;GACJ,EAAE,CAACX,SAAS,EAAEC,SAAS,CAAC,CAAC;AAC9B;;;;"}
1
+ {"version":3,"file":"useTableShortcuts.js","sources":["../../../../../../../../src/components/Table2/hooks/useTableShortcuts.ts"],"sourcesContent":["import React from 'react';\nimport { Table2ShortcutHandlerObject, Table2Shortcuts } from '../types';\nimport { KeyDownHandlerOptions, createShortcutKeyDownHandler } from '../../../utils/keyboard';\n\nexport function useTableShortcuts<TType = any>(shortcuts: Table2Shortcuts<TType> | undefined, activeRow: TType) {\n React.useEffect(() => {\n const shortcutKeys = Object.keys(shortcuts ?? {});\n\n const globalHandlers: Array<(event: KeyboardEvent) => void> = [];\n\n // convert the shortcut into the correct format to register it\n if (shortcuts && shortcutKeys.length) {\n shortcutKeys.forEach(key => {\n const handler = shortcuts[key];\n\n let keyDownHandler;\n let keyDownHandlerOptions: KeyDownHandlerOptions;\n\n if (typeof handler === 'function') {\n keyDownHandler = handler;\n keyDownHandlerOptions = {\n key,\n };\n } else {\n const handlerObject = handler as Table2ShortcutHandlerObject<TType>;\n keyDownHandler = handlerObject.handler;\n keyDownHandlerOptions = {\n key,\n meta: handlerObject.meta,\n shift: handlerObject.shift,\n };\n }\n\n globalHandlers.push(\n createShortcutKeyDownHandler(keyDownHandlerOptions, event => {\n event.preventDefault();\n keyDownHandler(activeRow);\n })\n );\n });\n }\n\n globalHandlers.forEach(handler => {\n document.addEventListener('keydown', handler);\n });\n\n return () => {\n globalHandlers.forEach(handler => {\n document.removeEventListener('keydown', handler);\n });\n };\n }, [shortcuts, activeRow]);\n}\n"],"names":["useTableShortcuts","shortcuts","activeRow","React","useEffect","shortcutKeys","Object","keys","globalHandlers","length","forEach","key","handler","keyDownHandler","keyDownHandlerOptions","handlerObject","meta","shift","push","createShortcutKeyDownHandler","event","preventDefault","document","addEventListener","removeEventListener"],"mappings":";;;SAIgBA,iBAAiBA,CAAcC,SAA6C,EAAEC,SAAgB;EAC1GC,cAAK,CAACC,SAAS,CAAC;IACZ,MAAMC,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACN,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,CAAC;IAEjD,MAAMO,cAAc,GAA0C,EAAE;;IAGhE,IAAIP,SAAS,IAAII,YAAY,CAACI,MAAM,EAAE;MAClCJ,YAAY,CAACK,OAAO,CAACC,GAAG;QACpB,MAAMC,OAAO,GAAGX,SAAS,CAACU,GAAG,CAAC;QAE9B,IAAIE,cAAc;QAClB,IAAIC,qBAA4C;QAEhD,IAAI,OAAOF,OAAO,KAAK,UAAU,EAAE;UAC/BC,cAAc,GAAGD,OAAO;UACxBE,qBAAqB,GAAG;YACpBH;WACH;SACJ,MAAM;UACH,MAAMI,aAAa,GAAGH,OAA6C;UACnEC,cAAc,GAAGE,aAAa,CAACH,OAAO;UACtCE,qBAAqB,GAAG;YACpBH,GAAG;YACHK,IAAI,EAAED,aAAa,CAACC,IAAI;YACxBC,KAAK,EAAEF,aAAa,CAACE;WACxB;;QAGLT,cAAc,CAACU,IAAI,CACfC,4BAA4B,CAACL,qBAAqB,EAAEM,KAAK;UACrDA,KAAK,CAACC,cAAc,EAAE;UACtBR,cAAc,CAACX,SAAS,CAAC;SAC5B,CAAC,CACL;OACJ,CAAC;;IAGNM,cAAc,CAACE,OAAO,CAACE,OAAO;MAC1BU,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAEX,OAAO,CAAC;KAChD,CAAC;IAEF,OAAO;MACHJ,cAAc,CAACE,OAAO,CAACE,OAAO;QAC1BU,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAEZ,OAAO,CAAC;OACnD,CAAC;KACL;GACJ,EAAE,CAACX,SAAS,EAAEC,SAAS,CAAC,CAAC;AAC9B;;;;"}