@quan-erp/shared-ui 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/README.md +90 -0
  2. package/dist/common/common.d.ts +2 -0
  3. package/dist/components/blocks/editor-00/editor.d.ts +8 -0
  4. package/dist/components/blocks/editor-00/nodes.d.ts +3 -0
  5. package/dist/components/blocks/editor-00/plugins.d.ts +2 -0
  6. package/dist/components/custom/confirm-dialog.d.ts +15 -0
  7. package/dist/components/custom/dashboard.d.ts +22 -0
  8. package/dist/components/custom/data-table/cursor-based-pagination.d.ts +9 -0
  9. package/dist/components/custom/data-table/data-table-bulk-action-menu.d.ts +9 -0
  10. package/dist/components/custom/data-table/data-table-bulk-export.d.ts +8 -0
  11. package/dist/components/custom/data-table/data-table-column-header.d.ts +9 -0
  12. package/dist/components/custom/data-table/data-table-grid.d.ts +21 -0
  13. package/dist/components/custom/data-table/data-table-group-by.types.d.ts +11 -0
  14. package/dist/components/custom/data-table/data-table-helper.d.ts +2 -0
  15. package/dist/components/custom/data-table/data-table-list-view.d.ts +13 -0
  16. package/dist/components/custom/data-table/data-table-page-size.d.ts +11 -0
  17. package/dist/components/custom/data-table/data-table-pagination.d.ts +9 -0
  18. package/dist/components/custom/data-table/data-table-toolbar.d.ts +26 -0
  19. package/dist/components/custom/data-table/data-table-util.d.ts +7 -0
  20. package/dist/components/custom/data-table/data-table-view-fallback.d.ts +2 -0
  21. package/dist/components/custom/data-table/data-table-view-options.d.ts +17 -0
  22. package/dist/components/custom/data-table/data-table-view-preferences.d.ts +22 -0
  23. package/dist/components/custom/data-table/data-table-view-preferences.storage.d.ts +15 -0
  24. package/dist/components/custom/data-table/data-table-wrapper.d.ts +51 -0
  25. package/dist/components/custom/data-table/data-table.d.ts +47 -0
  26. package/dist/components/custom/data-table/export.d.ts +22 -0
  27. package/dist/components/custom/data-table/group-table-rows.d.ts +3 -0
  28. package/dist/components/custom/data-table/types.d.ts +17 -0
  29. package/dist/components/custom/data-table/use-data-table-page-size.d.ts +41 -0
  30. package/dist/components/custom/document-title.d.ts +4 -0
  31. package/dist/components/custom/empty-screen.d.ts +8 -0
  32. package/dist/components/custom/error-screen.d.ts +9 -0
  33. package/dist/components/custom/floating-action-btn.d.ts +39 -0
  34. package/dist/components/custom/index.d.ts +20 -0
  35. package/dist/components/custom/loading-screen.d.ts +7 -0
  36. package/dist/components/custom/menu-tab.d.ts +17 -0
  37. package/dist/components/custom/page.d.ts +35 -0
  38. package/dist/components/custom/plugin-theme.d.ts +8 -0
  39. package/dist/components/custom/portal.d.ts +4 -0
  40. package/dist/components/custom/protected-page.d.ts +26 -0
  41. package/dist/components/custom/pull-to-refresh.d.ts +16 -0
  42. package/dist/components/custom/render-in-view.d.ts +12 -0
  43. package/dist/components/custom/responsive-dialog.d.ts +47 -0
  44. package/dist/components/custom/safearea.d.ts +5 -0
  45. package/dist/components/custom/scrollable.d.ts +17 -0
  46. package/dist/components/custom/search-and-filter-suite.d.ts +16 -0
  47. package/dist/components/custom/setting.d.ts +30 -0
  48. package/dist/components/custom/submenu-hub.d.ts +17 -0
  49. package/dist/components/editor/editor-ui/content-editable.d.ts +9 -0
  50. package/dist/components/editor/themes/editor-theme.d.ts +3 -0
  51. package/dist/components/ui/accordion.d.ts +8 -0
  52. package/dist/components/ui/alert-dialog.d.ts +19 -0
  53. package/dist/components/ui/alert.d.ts +9 -0
  54. package/dist/components/ui/avatar.d.ts +7 -0
  55. package/dist/components/ui/badge.d.ts +10 -0
  56. package/dist/components/ui/breadcrumb.d.ts +20 -0
  57. package/dist/components/ui/button-group.d.ts +12 -0
  58. package/dist/components/ui/button.d.ts +11 -0
  59. package/dist/components/ui/calendar.d.ts +12 -0
  60. package/dist/components/ui/card.d.ts +10 -0
  61. package/dist/components/ui/carousel.d.ts +29 -0
  62. package/dist/components/ui/chart.d.ts +63 -0
  63. package/dist/components/ui/checkbox.d.ts +5 -0
  64. package/dist/components/ui/collapsible.d.ts +6 -0
  65. package/dist/components/ui/command.d.ts +81 -0
  66. package/dist/components/ui/context-menu.d.ts +28 -0
  67. package/dist/components/ui/dialog.d.ts +16 -0
  68. package/dist/components/ui/drawer.d.ts +23 -0
  69. package/dist/components/ui/dropdown-menu.d.ts +28 -0
  70. package/dist/components/ui/field.d.ts +25 -0
  71. package/dist/components/ui/form.d.ts +26 -0
  72. package/dist/components/ui/hover-card.d.ts +7 -0
  73. package/dist/components/ui/index.d.ts +54 -0
  74. package/dist/components/ui/input-group.d.ts +17 -0
  75. package/dist/components/ui/input-otp.d.ts +35 -0
  76. package/dist/components/ui/input.d.ts +10 -0
  77. package/dist/components/ui/item.d.ts +24 -0
  78. package/dist/components/ui/kbd.d.ts +4 -0
  79. package/dist/components/ui/label.d.ts +5 -0
  80. package/dist/components/ui/menubar.d.ts +29 -0
  81. package/dist/components/ui/navigation-menu.d.ts +13 -0
  82. package/dist/components/ui/pagination.d.ts +28 -0
  83. package/dist/components/ui/popover.d.ts +8 -0
  84. package/dist/components/ui/progress.d.ts +5 -0
  85. package/dist/components/ui/radio-group.d.ts +6 -0
  86. package/dist/components/ui/resizable.d.ts +24 -0
  87. package/dist/components/ui/scroll-area.d.ts +6 -0
  88. package/dist/components/ui/select.d.ts +14 -0
  89. package/dist/components/ui/separator.d.ts +5 -0
  90. package/dist/components/ui/sheet.d.ts +16 -0
  91. package/dist/components/ui/sidebar.d.ts +71 -0
  92. package/dist/components/ui/skeleton.d.ts +3 -0
  93. package/dist/components/ui/slider.d.ts +12 -0
  94. package/dist/components/ui/sonner.d.ts +6 -0
  95. package/dist/components/ui/spinner.d.ts +9 -0
  96. package/dist/components/ui/switch.d.ts +11 -0
  97. package/dist/components/ui/table.d.ts +14 -0
  98. package/dist/components/ui/tabs.d.ts +16 -0
  99. package/dist/components/ui/textarea.d.ts +10 -0
  100. package/dist/components/ui/time-picker.d.ts +13 -0
  101. package/dist/components/ui/toggle-group.d.ts +13 -0
  102. package/dist/components/ui/toggle.d.ts +10 -0
  103. package/dist/components/ui/tooltip.d.ts +8 -0
  104. package/dist/es/common/common.js +4 -0
  105. package/dist/es/components/blocks/editor-00/editor.js +49 -0
  106. package/dist/es/components/blocks/editor-00/nodes.js +6 -0
  107. package/dist/es/components/blocks/editor-00/plugins.js +23 -0
  108. package/dist/es/components/custom/confirm-dialog.js +34 -0
  109. package/dist/es/components/custom/dashboard.js +86 -0
  110. package/dist/es/components/custom/data-table/cursor-based-pagination.js +123 -0
  111. package/dist/es/components/custom/data-table/data-table-bulk-action-menu.js +112 -0
  112. package/dist/es/components/custom/data-table/data-table-bulk-export.js +76 -0
  113. package/dist/es/components/custom/data-table/data-table-column-header.js +102 -0
  114. package/dist/es/components/custom/data-table/data-table-grid.js +234 -0
  115. package/dist/es/components/custom/data-table/data-table-helper.js +8 -0
  116. package/dist/es/components/custom/data-table/data-table-list-view.js +121 -0
  117. package/dist/es/components/custom/data-table/data-table-page-size.js +49 -0
  118. package/dist/es/components/custom/data-table/data-table-pagination.js +156 -0
  119. package/dist/es/components/custom/data-table/data-table-toolbar.js +149 -0
  120. package/dist/es/components/custom/data-table/data-table-util.js +31 -0
  121. package/dist/es/components/custom/data-table/data-table-view-fallback.js +7 -0
  122. package/dist/es/components/custom/data-table/data-table-view-options.js +311 -0
  123. package/dist/es/components/custom/data-table/data-table-view-preferences.js +71 -0
  124. package/dist/es/components/custom/data-table/data-table-view-preferences.storage.js +115 -0
  125. package/dist/es/components/custom/data-table/data-table.js +425 -0
  126. package/dist/es/components/custom/data-table/group-table-rows.js +16 -0
  127. package/dist/es/components/custom/data-table/use-data-table-page-size.js +155 -0
  128. package/dist/es/components/custom/empty-screen.js +28 -0
  129. package/dist/es/components/custom/error-screen.js +84 -0
  130. package/dist/es/components/custom/floating-action-btn.js +200 -0
  131. package/dist/es/components/custom/loading-screen.js +26 -0
  132. package/dist/es/components/custom/menu-tab.js +45 -0
  133. package/dist/es/components/custom/page.js +105 -0
  134. package/dist/es/components/custom/plugin-theme.js +13 -0
  135. package/dist/es/components/custom/portal.js +13 -0
  136. package/dist/es/components/custom/protected-page.js +74 -0
  137. package/dist/es/components/custom/pull-to-refresh.js +378 -0
  138. package/dist/es/components/custom/render-in-view.js +35 -0
  139. package/dist/es/components/custom/responsive-dialog.js +163 -0
  140. package/dist/es/components/custom/safearea.js +8 -0
  141. package/dist/es/components/custom/scrollable.js +96 -0
  142. package/dist/es/components/custom/setting.js +39 -0
  143. package/dist/es/components/editor/editor-ui/content-editable.js +26 -0
  144. package/dist/es/components/editor/themes/editor-theme.js +119 -0
  145. package/dist/es/components/ui/accordion.js +47 -0
  146. package/dist/es/components/ui/alert-dialog.js +178 -0
  147. package/dist/es/components/ui/alert.js +51 -0
  148. package/dist/es/components/ui/avatar.js +42 -0
  149. package/dist/es/components/ui/badge.js +27 -0
  150. package/dist/es/components/ui/breadcrumb.js +93 -0
  151. package/dist/es/components/ui/button-group.js +76 -0
  152. package/dist/es/components/ui/button.js +57 -0
  153. package/dist/es/components/ui/calendar.js +402 -0
  154. package/dist/es/components/ui/card.js +91 -0
  155. package/dist/es/components/ui/carousel.js +194 -0
  156. package/dist/es/components/ui/chart.js +239 -0
  157. package/dist/es/components/ui/checkbox.js +27 -0
  158. package/dist/es/components/ui/collapsible.js +9 -0
  159. package/dist/es/components/ui/command.js +115 -0
  160. package/dist/es/components/ui/context-menu.js +153 -0
  161. package/dist/es/components/ui/dialog.js +137 -0
  162. package/dist/es/components/ui/drawer.js +107 -0
  163. package/dist/es/components/ui/dropdown-menu.js +152 -0
  164. package/dist/es/components/ui/field.js +226 -0
  165. package/dist/es/components/ui/form.js +109 -0
  166. package/dist/es/components/ui/hover-card.js +25 -0
  167. package/dist/es/components/ui/input-group.js +155 -0
  168. package/dist/es/components/ui/input-otp.js +49 -0
  169. package/dist/es/components/ui/input.js +37 -0
  170. package/dist/es/components/ui/item.js +188 -0
  171. package/dist/es/components/ui/kbd.js +31 -0
  172. package/dist/es/components/ui/label.js +23 -0
  173. package/dist/es/components/ui/menubar.js +202 -0
  174. package/dist/es/components/ui/navigation-menu.js +107 -0
  175. package/dist/es/components/ui/pagination.js +101 -0
  176. package/dist/es/components/ui/popover.js +27 -0
  177. package/dist/es/components/ui/progress.js +26 -0
  178. package/dist/es/components/ui/radio-group.js +35 -0
  179. package/dist/es/components/ui/resizable.js +38 -0
  180. package/dist/es/components/ui/scroll-area.js +38 -0
  181. package/dist/es/components/ui/select.js +124 -0
  182. package/dist/es/components/ui/separator.js +27 -0
  183. package/dist/es/components/ui/sheet.js +129 -0
  184. package/dist/es/components/ui/sidebar.js +604 -0
  185. package/dist/es/components/ui/skeleton.js +17 -0
  186. package/dist/es/components/ui/slider.js +62 -0
  187. package/dist/es/components/ui/sonner.js +26 -0
  188. package/dist/es/components/ui/spinner.js +34 -0
  189. package/dist/es/components/ui/switch.js +54 -0
  190. package/dist/es/components/ui/table.js +90 -0
  191. package/dist/es/components/ui/tabs.js +84 -0
  192. package/dist/es/components/ui/textarea.js +32 -0
  193. package/dist/es/components/ui/time-picker.js +199 -0
  194. package/dist/es/components/ui/toggle-group.js +43 -0
  195. package/dist/es/components/ui/toggle.js +44 -0
  196. package/dist/es/components/ui/tooltip.js +56 -0
  197. package/dist/es/hooks/use-debounce-value.js +16 -0
  198. package/dist/es/hooks/use-is-inview.js +25 -0
  199. package/dist/es/hooks/use-mobile-back-dialog.js +34 -0
  200. package/dist/es/hooks/use-mobile.js +43 -0
  201. package/dist/es/hooks/use-mounted.js +14 -0
  202. package/dist/es/hooks/use-scroll-direction.js +26 -0
  203. package/dist/es/hooks/use-user-hand-behavior.js +20 -0
  204. package/dist/es/index.d.ts +2 -0
  205. package/dist/es/index.js +487 -0
  206. package/dist/es/lib/utils.js +8 -0
  207. package/dist/es/locale/locale.js +87 -0
  208. package/dist/es/node_modules/@tanstack/react-table/build/lib/index.js +93 -0
  209. package/dist/es/node_modules/@tanstack/table-core/build/lib/index.js +2737 -0
  210. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.js +85 -0
  211. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.js +49 -0
  212. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/components/AnimatePresence/index.js +86 -0
  213. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.js +19 -0
  214. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.js +14 -0
  215. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/LayoutGroupContext.js +5 -0
  216. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/LazyContext.js +5 -0
  217. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/MotionConfigContext.js +9 -0
  218. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/MotionContext/create.js +13 -0
  219. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/MotionContext/index.js +5 -0
  220. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/MotionContext/utils.js +15 -0
  221. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/PresenceContext.js +5 -0
  222. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.js +5 -0
  223. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/events/add-pointer-event.js +8 -0
  224. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/events/event-info.js +14 -0
  225. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.js +432 -0
  226. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/drag/index.js +38 -0
  227. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.js +93 -0
  228. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/focus.js +35 -0
  229. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/hover.js +31 -0
  230. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/pan/PanSession.js +215 -0
  231. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/pan/index.js +50 -0
  232. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/gestures/press.js +38 -0
  233. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/animation/exit.js +60 -0
  234. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/animation/index.js +40 -0
  235. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/animations.js +13 -0
  236. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/definitions.js +42 -0
  237. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/drag.js +17 -0
  238. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/gestures.js +21 -0
  239. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.js +111 -0
  240. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/layout.js +11 -0
  241. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/load-features.js +15 -0
  242. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/viewport/index.js +64 -0
  243. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/features/viewport/observers.js +33 -0
  244. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/index.js +69 -0
  245. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/utils/symbol.js +4 -0
  246. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.js +35 -0
  247. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.js +106 -0
  248. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.js +66 -0
  249. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/motion/utils/valid-prop.js +39 -0
  250. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/components/create-proxy.js +35 -0
  251. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/components/motion/feature-bundle.js +13 -0
  252. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/components/motion/proxy.js +7 -0
  253. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/dom/create-visual-element.js +13 -0
  254. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/dom/use-render.js +21 -0
  255. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.js +31 -0
  256. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.js +29 -0
  257. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/html/use-html-visual-state.js +10 -0
  258. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/html/use-props.js +44 -0
  259. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.js +9 -0
  260. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.js +30 -0
  261. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/svg/use-props.js +24 -0
  262. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/svg/use-svg-visual-state.js +10 -0
  263. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.js +8 -0
  264. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/distance.js +10 -0
  265. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/get-context-window.js +6 -0
  266. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/is-browser.js +4 -0
  267. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/is-ref-object.js +6 -0
  268. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/use-composed-ref.js +38 -0
  269. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/use-constant.js +11 -0
  270. package/dist/es/shared-ui/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.js +6 -0
  271. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.js +153 -0
  272. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/JSAnimation.js +294 -0
  273. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/NativeAnimation.js +160 -0
  274. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/NativeAnimationExtended.js +51 -0
  275. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/animate/single-value.js +11 -0
  276. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/drivers/frame.js +17 -0
  277. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/inertia.js +67 -0
  278. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/keyframes.js +37 -0
  279. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/spring.js +246 -0
  280. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/utils/calc-duration.js +15 -0
  281. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/utils/create-generator-easing.js +16 -0
  282. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/utils/is-generator.js +6 -0
  283. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/generators/utils/velocity.js +9 -0
  284. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.js +69 -0
  285. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.js +78 -0
  286. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.js +36 -0
  287. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/interfaces/visual-element.js +22 -0
  288. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.js +107 -0
  289. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.js +131 -0
  290. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/get-final.js +10 -0
  291. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/offsets/default.js +9 -0
  292. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/offsets/fill.js +12 -0
  293. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.js +6 -0
  294. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/utils/fill-wildcards.js +8 -0
  295. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/utils/is-none.js +13 -0
  296. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/utils/make-none-animatable.js +22 -0
  297. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.js +43 -0
  298. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/optimized-appear/data-id.js +7 -0
  299. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/optimized-appear/get-appear-id.js +7 -0
  300. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/WithPromise.js +27 -0
  301. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.js +10 -0
  302. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/can-animate.js +31 -0
  303. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/css-variables-conversion.js +31 -0
  304. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/default-transitions.js +33 -0
  305. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/get-value-transition.js +11 -0
  306. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/is-animatable.js +16 -0
  307. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/is-css-variable.js +20 -0
  308. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/is-transition-defined.js +22 -0
  309. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/make-animation-instant.js +7 -0
  310. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/replace-transition-type.js +18 -0
  311. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/utils/resolve-transition.js +10 -0
  312. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/easing/cubic-bezier.js +4 -0
  313. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.js +21 -0
  314. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/easing/supported.js +15 -0
  315. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/start-waapi-animation.js +26 -0
  316. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.js +36 -0
  317. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/utils/accelerated-values.js +12 -0
  318. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/utils/apply-generator.js +14 -0
  319. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/utils/is-browser-color.js +12 -0
  320. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/utils/linear.js +11 -0
  321. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/animation/waapi/utils/unsupported-easing.js +19 -0
  322. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/events/add-dom-event.js +7 -0
  323. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/batcher.js +67 -0
  324. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/frame.js +9 -0
  325. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/microtask.js +5 -0
  326. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/order.js +21 -0
  327. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/render-step.js +64 -0
  328. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/frameloop/sync-time.js +21 -0
  329. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/drag/state/is-active.js +11 -0
  330. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/drag/state/set-active.js +25 -0
  331. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/hover.js +62 -0
  332. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/press/index.js +62 -0
  333. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/press/utils/is-keyboard-accessible.js +18 -0
  334. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.js +32 -0
  335. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/press/utils/state.js +4 -0
  336. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/utils/is-node-or-child.js +12 -0
  337. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/utils/is-primary-pointer.js +10 -0
  338. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/gestures/utils/setup.js +15 -0
  339. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/animation/mix-values.js +60 -0
  340. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/conversion.js +26 -0
  341. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/copy.js +19 -0
  342. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/delta-apply.js +86 -0
  343. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.js +57 -0
  344. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/delta-remove.js +40 -0
  345. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/models.js +21 -0
  346. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/geometry/utils.js +34 -0
  347. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/node/DocumentProjectionNode.js +13 -0
  348. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/node/HTMLProjectionNode.js +28 -0
  349. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/node/create-projection-node.js +1124 -0
  350. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/node/state.js +15 -0
  351. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/shared/stack.js +83 -0
  352. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/styles/scale-border-radius.js +26 -0
  353. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.js +25 -0
  354. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/styles/scale-correction.js +21 -0
  355. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/styles/transform.js +38 -0
  356. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/utils/compare-by-depth.js +4 -0
  357. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/utils/each-axis.js +6 -0
  358. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/utils/flat-tree.js +24 -0
  359. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/utils/has-transform.js +20 -0
  360. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/projection/utils/measure.js +18 -0
  361. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/Feature.js +11 -0
  362. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/VisualElement.js +426 -0
  363. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.js +37 -0
  364. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/dom/is-css-var.js +4 -0
  365. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/dom/parse-transform.js +83 -0
  366. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/dom/style-set.js +7 -0
  367. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/dom/utils/camel-to-dash.js +6 -0
  368. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.js +40 -0
  369. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/html/utils/build-styles.js +42 -0
  370. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/html/utils/build-transform.js +53 -0
  371. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/html/utils/render.js +14 -0
  372. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/html/utils/scrape-motion-values.js +18 -0
  373. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/store.js +4 -0
  374. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/SVGVisualElement.js +45 -0
  375. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/build-attrs.js +59 -0
  376. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/camel-case-attrs.js +28 -0
  377. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/is-svg-tag.js +4 -0
  378. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/path.js +17 -0
  379. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/render.js +12 -0
  380. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/svg/utils/scrape-motion-values.js +16 -0
  381. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/animation-state.js +223 -0
  382. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/get-variant-context.js +26 -0
  383. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/is-animation-controls.js +6 -0
  384. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.js +13 -0
  385. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/is-forced-motion-value.js +9 -0
  386. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/is-keyframes-target.js +6 -0
  387. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/is-variant-label.js +6 -0
  388. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/keys-position.js +13 -0
  389. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/keys-transform.js +24 -0
  390. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/motion-values.js +33 -0
  391. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/reduced-motion/index.js +20 -0
  392. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/reduced-motion/state.js +6 -0
  393. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/resolve-dynamic-variants.js +8 -0
  394. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/resolve-variants.js +25 -0
  395. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/setters.js +25 -0
  396. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/shallow-compare.js +15 -0
  397. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/render/utils/variant-props.js +14 -0
  398. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/resize/handle-element.js +61 -0
  399. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/resize/handle-window.js +31 -0
  400. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/resize/index.js +8 -0
  401. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/delay.js +17 -0
  402. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/interpolate.js +53 -0
  403. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/is-html-element.js +7 -0
  404. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/is-svg-element.js +7 -0
  405. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/is-svg-svg-element.js +7 -0
  406. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/color.js +44 -0
  407. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/complex.js +83 -0
  408. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/immediate.js +6 -0
  409. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/index.js +12 -0
  410. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/number.js +6 -0
  411. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/mix/visibility.js +12 -0
  412. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/resolve-elements.js +16 -0
  413. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/supports/flags.js +4 -0
  414. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/supports/linear-easing.js +12 -0
  415. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/supports/memo.js +9 -0
  416. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.js +5 -0
  417. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/index.js +286 -0
  418. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/auto.js +7 -0
  419. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/hex.js +37 -0
  420. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/hsla-to-rgba.js +39 -0
  421. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/hsla.js +14 -0
  422. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/index.js +26 -0
  423. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/rgba.js +18 -0
  424. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/color/utils.js +21 -0
  425. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/complex/filter.js +27 -0
  426. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/complex/index.js +91 -0
  427. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/complex/mask.js +12 -0
  428. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/dimensions.js +10 -0
  429. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/int.js +8 -0
  430. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/maps/defaults.js +28 -0
  431. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/maps/number.js +70 -0
  432. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/maps/transform.js +37 -0
  433. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/numbers/index.js +19 -0
  434. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/numbers/units.js +23 -0
  435. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/test.js +4 -0
  436. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/animatable-none.js +14 -0
  437. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/color-regex.js +4 -0
  438. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/find.js +9 -0
  439. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/float-regex.js +4 -0
  440. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/get-as-type.js +6 -0
  441. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/is-nullish.js +6 -0
  442. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/sanitize.js +4 -0
  443. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/types/utils/single-color-regex.js +4 -0
  444. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/utils/is-motion-value.js +4 -0
  445. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/utils/resolve-motion-value.js +7 -0
  446. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/will-change/add-will-change.js +15 -0
  447. package/dist/es/shared-ui/node_modules/motion-dom/dist/es/value/will-change/is.js +7 -0
  448. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/array.js +13 -0
  449. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/clamp.js +10 -0
  450. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/anticipate.js +5 -0
  451. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/back.js +11 -0
  452. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/circ.js +10 -0
  453. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/cubic-bezier.js +29 -0
  454. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/ease.js +9 -0
  455. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/modifiers/mirror.js +4 -0
  456. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/modifiers/reverse.js +4 -0
  457. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/utils/is-bezier-definition.js +4 -0
  458. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/utils/is-easing-array.js +6 -0
  459. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/easing/utils/map.js +38 -0
  460. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/errors.js +21 -0
  461. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/format-error-message.js +6 -0
  462. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/global-config.js +4 -0
  463. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/is-numerical-string.js +4 -0
  464. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/is-object.js +4 -0
  465. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/is-zero-value-string.js +4 -0
  466. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/memo.js +12 -0
  467. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/noop.js +4 -0
  468. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/pipe.js +4 -0
  469. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/progress.js +7 -0
  470. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/subscription-manager.js +32 -0
  471. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/time-conversion.js +6 -0
  472. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/velocity-per-second.js +4 -0
  473. package/dist/es/shared-ui/node_modules/motion-utils/dist/es/warn-once.js +11 -0
  474. package/dist/es/shared-ui.css +95 -0
  475. package/dist/hooks/index.d.ts +8 -0
  476. package/dist/hooks/use-debounce-value.d.ts +2 -0
  477. package/dist/hooks/use-inview.d.ts +7 -0
  478. package/dist/hooks/use-is-inview.d.ts +7 -0
  479. package/dist/hooks/use-mobile-back-dialog.d.ts +6 -0
  480. package/dist/hooks/use-mobile.d.ts +9 -0
  481. package/dist/hooks/use-mounted.d.ts +2 -0
  482. package/dist/hooks/use-scroll-direction.d.ts +3 -0
  483. package/dist/hooks/use-user-hand-behavior.d.ts +7 -0
  484. package/dist/index.d.ts +13 -0
  485. package/dist/lib/index.d.ts +2 -0
  486. package/dist/lib/utils.d.ts +3 -0
  487. package/dist/locale/index.d.ts +2 -0
  488. package/dist/locale/locale.d.ts +26 -0
  489. package/package.json +118 -0
@@ -0,0 +1,2737 @@
1
+ function functionalUpdate(updater, input) {
2
+ return typeof updater === "function" ? updater(input) : updater;
3
+ }
4
+ function makeStateUpdater(key, instance) {
5
+ return (updater) => {
6
+ instance.setState((old) => {
7
+ return {
8
+ ...old,
9
+ [key]: functionalUpdate(updater, old[key])
10
+ };
11
+ });
12
+ };
13
+ }
14
+ function isFunction(d) {
15
+ return d instanceof Function;
16
+ }
17
+ function isNumberArray(d) {
18
+ return Array.isArray(d) && d.every((val) => typeof val === "number");
19
+ }
20
+ function flattenBy(arr, getChildren) {
21
+ const flat = [];
22
+ const recurse = (subArr) => {
23
+ subArr.forEach((item) => {
24
+ flat.push(item);
25
+ const children = getChildren(item);
26
+ if (children != null && children.length) {
27
+ recurse(children);
28
+ }
29
+ });
30
+ };
31
+ recurse(arr);
32
+ return flat;
33
+ }
34
+ function memo(getDeps, fn, opts) {
35
+ let deps = [];
36
+ let result;
37
+ return (depArgs) => {
38
+ let depTime;
39
+ if (opts.key && opts.debug) depTime = Date.now();
40
+ const newDeps = getDeps(depArgs);
41
+ const depsChanged = newDeps.length !== deps.length || newDeps.some((dep, index) => deps[index] !== dep);
42
+ if (!depsChanged) {
43
+ return result;
44
+ }
45
+ deps = newDeps;
46
+ let resultTime;
47
+ if (opts.key && opts.debug) resultTime = Date.now();
48
+ result = fn(...newDeps);
49
+ opts == null || opts.onChange == null || opts.onChange(result);
50
+ if (opts.key && opts.debug) {
51
+ if (opts != null && opts.debug()) {
52
+ const depEndTime = Math.round((Date.now() - depTime) * 100) / 100;
53
+ const resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;
54
+ const resultFpsPercentage = resultEndTime / 16;
55
+ const pad = (str, num) => {
56
+ str = String(str);
57
+ while (str.length < num) {
58
+ str = " " + str;
59
+ }
60
+ return str;
61
+ };
62
+ console.info(`%c⏱ ${pad(resultEndTime, 5)} /${pad(depEndTime, 5)} ms`, `
63
+ font-size: .6rem;
64
+ font-weight: bold;
65
+ color: hsl(${Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120))}deg 100% 31%);`, opts == null ? void 0 : opts.key);
66
+ }
67
+ }
68
+ return result;
69
+ };
70
+ }
71
+ function getMemoOptions(tableOptions, debugLevel, key, onChange) {
72
+ return {
73
+ debug: () => {
74
+ var _tableOptions$debugAl;
75
+ return (_tableOptions$debugAl = tableOptions == null ? void 0 : tableOptions.debugAll) != null ? _tableOptions$debugAl : tableOptions[debugLevel];
76
+ },
77
+ key: process.env.NODE_ENV === "development" && key,
78
+ onChange
79
+ };
80
+ }
81
+ function createCell(table, row, column, columnId) {
82
+ const getRenderValue = () => {
83
+ var _cell$getValue;
84
+ return (_cell$getValue = cell.getValue()) != null ? _cell$getValue : table.options.renderFallbackValue;
85
+ };
86
+ const cell = {
87
+ id: `${row.id}_${column.id}`,
88
+ row,
89
+ column,
90
+ getValue: () => row.getValue(columnId),
91
+ renderValue: getRenderValue,
92
+ getContext: memo(() => [table, column, row, cell], (table2, column2, row2, cell2) => ({
93
+ table: table2,
94
+ column: column2,
95
+ row: row2,
96
+ cell: cell2,
97
+ getValue: cell2.getValue,
98
+ renderValue: cell2.renderValue
99
+ }), getMemoOptions(table.options, "debugCells", "cell.getContext"))
100
+ };
101
+ table._features.forEach((feature) => {
102
+ feature.createCell == null || feature.createCell(cell, column, row, table);
103
+ }, {});
104
+ return cell;
105
+ }
106
+ function createColumn(table, columnDef, depth, parent) {
107
+ var _ref, _resolvedColumnDef$id;
108
+ const defaultColumn = table._getDefaultColumnDef();
109
+ const resolvedColumnDef = {
110
+ ...defaultColumn,
111
+ ...columnDef
112
+ };
113
+ const accessorKey = resolvedColumnDef.accessorKey;
114
+ let id = (_ref = (_resolvedColumnDef$id = resolvedColumnDef.id) != null ? _resolvedColumnDef$id : accessorKey ? typeof String.prototype.replaceAll === "function" ? accessorKey.replaceAll(".", "_") : accessorKey.replace(/\./g, "_") : void 0) != null ? _ref : typeof resolvedColumnDef.header === "string" ? resolvedColumnDef.header : void 0;
115
+ let accessorFn;
116
+ if (resolvedColumnDef.accessorFn) {
117
+ accessorFn = resolvedColumnDef.accessorFn;
118
+ } else if (accessorKey) {
119
+ if (accessorKey.includes(".")) {
120
+ accessorFn = (originalRow) => {
121
+ let result = originalRow;
122
+ for (const key of accessorKey.split(".")) {
123
+ var _result;
124
+ result = (_result = result) == null ? void 0 : _result[key];
125
+ if (process.env.NODE_ENV !== "production" && result === void 0) {
126
+ console.warn(`"${key}" in deeply nested key "${accessorKey}" returned undefined.`);
127
+ }
128
+ }
129
+ return result;
130
+ };
131
+ } else {
132
+ accessorFn = (originalRow) => originalRow[resolvedColumnDef.accessorKey];
133
+ }
134
+ }
135
+ if (!id) {
136
+ if (process.env.NODE_ENV !== "production") {
137
+ throw new Error(resolvedColumnDef.accessorFn ? `Columns require an id when using an accessorFn` : `Columns require an id when using a non-string header`);
138
+ }
139
+ throw new Error();
140
+ }
141
+ let column = {
142
+ id: `${String(id)}`,
143
+ accessorFn,
144
+ parent,
145
+ depth,
146
+ columnDef: resolvedColumnDef,
147
+ columns: [],
148
+ getFlatColumns: memo(() => [true], () => {
149
+ var _column$columns;
150
+ return [column, ...(_column$columns = column.columns) == null ? void 0 : _column$columns.flatMap((d) => d.getFlatColumns())];
151
+ }, getMemoOptions(table.options, "debugColumns", "column.getFlatColumns")),
152
+ getLeafColumns: memo(() => [table._getOrderColumnsFn()], (orderColumns2) => {
153
+ var _column$columns2;
154
+ if ((_column$columns2 = column.columns) != null && _column$columns2.length) {
155
+ let leafColumns = column.columns.flatMap((column2) => column2.getLeafColumns());
156
+ return orderColumns2(leafColumns);
157
+ }
158
+ return [column];
159
+ }, getMemoOptions(table.options, "debugColumns", "column.getLeafColumns"))
160
+ };
161
+ for (const feature of table._features) {
162
+ feature.createColumn == null || feature.createColumn(column, table);
163
+ }
164
+ return column;
165
+ }
166
+ const debug = "debugHeaders";
167
+ function createHeader(table, column, options) {
168
+ var _options$id;
169
+ const id = (_options$id = options.id) != null ? _options$id : column.id;
170
+ let header = {
171
+ id,
172
+ column,
173
+ index: options.index,
174
+ isPlaceholder: !!options.isPlaceholder,
175
+ placeholderId: options.placeholderId,
176
+ depth: options.depth,
177
+ subHeaders: [],
178
+ colSpan: 0,
179
+ rowSpan: 0,
180
+ headerGroup: null,
181
+ getLeafHeaders: () => {
182
+ const leafHeaders = [];
183
+ const recurseHeader = (h) => {
184
+ if (h.subHeaders && h.subHeaders.length) {
185
+ h.subHeaders.map(recurseHeader);
186
+ }
187
+ leafHeaders.push(h);
188
+ };
189
+ recurseHeader(header);
190
+ return leafHeaders;
191
+ },
192
+ getContext: () => ({
193
+ table,
194
+ header,
195
+ column
196
+ })
197
+ };
198
+ table._features.forEach((feature) => {
199
+ feature.createHeader == null || feature.createHeader(header, table);
200
+ });
201
+ return header;
202
+ }
203
+ const Headers = {
204
+ createTable: (table) => {
205
+ table.getHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
206
+ var _left$map$filter, _right$map$filter;
207
+ const leftColumns = (_left$map$filter = left == null ? void 0 : left.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
208
+ const rightColumns = (_right$map$filter = right == null ? void 0 : right.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
209
+ const centerColumns = leafColumns.filter((column) => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
210
+ const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], table);
211
+ return headerGroups;
212
+ }, getMemoOptions(table.options, debug, "getHeaderGroups"));
213
+ table.getCenterHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
214
+ leafColumns = leafColumns.filter((column) => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
215
+ return buildHeaderGroups(allColumns, leafColumns, table, "center");
216
+ }, getMemoOptions(table.options, debug, "getCenterHeaderGroups"));
217
+ table.getLeftHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left], (allColumns, leafColumns, left) => {
218
+ var _left$map$filter2;
219
+ const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
220
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, "left");
221
+ }, getMemoOptions(table.options, debug, "getLeftHeaderGroups"));
222
+ table.getRightHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.right], (allColumns, leafColumns, right) => {
223
+ var _right$map$filter2;
224
+ const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
225
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, "right");
226
+ }, getMemoOptions(table.options, debug, "getRightHeaderGroups"));
227
+ table.getFooterGroups = memo(() => [table.getHeaderGroups()], (headerGroups) => {
228
+ return [...headerGroups].reverse();
229
+ }, getMemoOptions(table.options, debug, "getFooterGroups"));
230
+ table.getLeftFooterGroups = memo(() => [table.getLeftHeaderGroups()], (headerGroups) => {
231
+ return [...headerGroups].reverse();
232
+ }, getMemoOptions(table.options, debug, "getLeftFooterGroups"));
233
+ table.getCenterFooterGroups = memo(() => [table.getCenterHeaderGroups()], (headerGroups) => {
234
+ return [...headerGroups].reverse();
235
+ }, getMemoOptions(table.options, debug, "getCenterFooterGroups"));
236
+ table.getRightFooterGroups = memo(() => [table.getRightHeaderGroups()], (headerGroups) => {
237
+ return [...headerGroups].reverse();
238
+ }, getMemoOptions(table.options, debug, "getRightFooterGroups"));
239
+ table.getFlatHeaders = memo(() => [table.getHeaderGroups()], (headerGroups) => {
240
+ return headerGroups.map((headerGroup) => {
241
+ return headerGroup.headers;
242
+ }).flat();
243
+ }, getMemoOptions(table.options, debug, "getFlatHeaders"));
244
+ table.getLeftFlatHeaders = memo(() => [table.getLeftHeaderGroups()], (left) => {
245
+ return left.map((headerGroup) => {
246
+ return headerGroup.headers;
247
+ }).flat();
248
+ }, getMemoOptions(table.options, debug, "getLeftFlatHeaders"));
249
+ table.getCenterFlatHeaders = memo(() => [table.getCenterHeaderGroups()], (left) => {
250
+ return left.map((headerGroup) => {
251
+ return headerGroup.headers;
252
+ }).flat();
253
+ }, getMemoOptions(table.options, debug, "getCenterFlatHeaders"));
254
+ table.getRightFlatHeaders = memo(() => [table.getRightHeaderGroups()], (left) => {
255
+ return left.map((headerGroup) => {
256
+ return headerGroup.headers;
257
+ }).flat();
258
+ }, getMemoOptions(table.options, debug, "getRightFlatHeaders"));
259
+ table.getCenterLeafHeaders = memo(() => [table.getCenterFlatHeaders()], (flatHeaders) => {
260
+ return flatHeaders.filter((header) => {
261
+ var _header$subHeaders;
262
+ return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
263
+ });
264
+ }, getMemoOptions(table.options, debug, "getCenterLeafHeaders"));
265
+ table.getLeftLeafHeaders = memo(() => [table.getLeftFlatHeaders()], (flatHeaders) => {
266
+ return flatHeaders.filter((header) => {
267
+ var _header$subHeaders2;
268
+ return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
269
+ });
270
+ }, getMemoOptions(table.options, debug, "getLeftLeafHeaders"));
271
+ table.getRightLeafHeaders = memo(() => [table.getRightFlatHeaders()], (flatHeaders) => {
272
+ return flatHeaders.filter((header) => {
273
+ var _header$subHeaders3;
274
+ return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
275
+ });
276
+ }, getMemoOptions(table.options, debug, "getRightLeafHeaders"));
277
+ table.getLeafHeaders = memo(() => [table.getLeftHeaderGroups(), table.getCenterHeaderGroups(), table.getRightHeaderGroups()], (left, center, right) => {
278
+ var _left$0$headers, _left$, _center$0$headers, _center$, _right$0$headers, _right$;
279
+ return [...(_left$0$headers = (_left$ = left[0]) == null ? void 0 : _left$.headers) != null ? _left$0$headers : [], ...(_center$0$headers = (_center$ = center[0]) == null ? void 0 : _center$.headers) != null ? _center$0$headers : [], ...(_right$0$headers = (_right$ = right[0]) == null ? void 0 : _right$.headers) != null ? _right$0$headers : []].map((header) => {
280
+ return header.getLeafHeaders();
281
+ }).flat();
282
+ }, getMemoOptions(table.options, debug, "getLeafHeaders"));
283
+ }
284
+ };
285
+ function buildHeaderGroups(allColumns, columnsToGroup, table, headerFamily) {
286
+ var _headerGroups$0$heade, _headerGroups$;
287
+ let maxDepth = 0;
288
+ const findMaxDepth = function(columns, depth) {
289
+ if (depth === void 0) {
290
+ depth = 1;
291
+ }
292
+ maxDepth = Math.max(maxDepth, depth);
293
+ columns.filter((column) => column.getIsVisible()).forEach((column) => {
294
+ var _column$columns;
295
+ if ((_column$columns = column.columns) != null && _column$columns.length) {
296
+ findMaxDepth(column.columns, depth + 1);
297
+ }
298
+ }, 0);
299
+ };
300
+ findMaxDepth(allColumns);
301
+ let headerGroups = [];
302
+ const createHeaderGroup = (headersToGroup, depth) => {
303
+ const headerGroup = {
304
+ depth,
305
+ id: [headerFamily, `${depth}`].filter(Boolean).join("_"),
306
+ headers: []
307
+ };
308
+ const pendingParentHeaders = [];
309
+ headersToGroup.forEach((headerToGroup) => {
310
+ const latestPendingParentHeader = [...pendingParentHeaders].reverse()[0];
311
+ const isLeafHeader = headerToGroup.column.depth === headerGroup.depth;
312
+ let column;
313
+ let isPlaceholder = false;
314
+ if (isLeafHeader && headerToGroup.column.parent) {
315
+ column = headerToGroup.column.parent;
316
+ } else {
317
+ column = headerToGroup.column;
318
+ isPlaceholder = true;
319
+ }
320
+ if (latestPendingParentHeader && (latestPendingParentHeader == null ? void 0 : latestPendingParentHeader.column) === column) {
321
+ latestPendingParentHeader.subHeaders.push(headerToGroup);
322
+ } else {
323
+ const header = createHeader(table, column, {
324
+ id: [headerFamily, depth, column.id, headerToGroup == null ? void 0 : headerToGroup.id].filter(Boolean).join("_"),
325
+ isPlaceholder,
326
+ placeholderId: isPlaceholder ? `${pendingParentHeaders.filter((d) => d.column === column).length}` : void 0,
327
+ depth,
328
+ index: pendingParentHeaders.length
329
+ });
330
+ header.subHeaders.push(headerToGroup);
331
+ pendingParentHeaders.push(header);
332
+ }
333
+ headerGroup.headers.push(headerToGroup);
334
+ headerToGroup.headerGroup = headerGroup;
335
+ });
336
+ headerGroups.push(headerGroup);
337
+ if (depth > 0) {
338
+ createHeaderGroup(pendingParentHeaders, depth - 1);
339
+ }
340
+ };
341
+ const bottomHeaders = columnsToGroup.map((column, index) => createHeader(table, column, {
342
+ depth: maxDepth,
343
+ index
344
+ }));
345
+ createHeaderGroup(bottomHeaders, maxDepth - 1);
346
+ headerGroups.reverse();
347
+ const recurseHeadersForSpans = (headers) => {
348
+ const filteredHeaders = headers.filter((header) => header.column.getIsVisible());
349
+ return filteredHeaders.map((header) => {
350
+ let colSpan = 0;
351
+ let rowSpan = 0;
352
+ let childRowSpans = [0];
353
+ if (header.subHeaders && header.subHeaders.length) {
354
+ childRowSpans = [];
355
+ recurseHeadersForSpans(header.subHeaders).forEach((_ref) => {
356
+ let {
357
+ colSpan: childColSpan,
358
+ rowSpan: childRowSpan
359
+ } = _ref;
360
+ colSpan += childColSpan;
361
+ childRowSpans.push(childRowSpan);
362
+ });
363
+ } else {
364
+ colSpan = 1;
365
+ }
366
+ const minChildRowSpan = Math.min(...childRowSpans);
367
+ rowSpan = rowSpan + minChildRowSpan;
368
+ header.colSpan = colSpan;
369
+ header.rowSpan = rowSpan;
370
+ return {
371
+ colSpan,
372
+ rowSpan
373
+ };
374
+ });
375
+ };
376
+ recurseHeadersForSpans((_headerGroups$0$heade = (_headerGroups$ = headerGroups[0]) == null ? void 0 : _headerGroups$.headers) != null ? _headerGroups$0$heade : []);
377
+ return headerGroups;
378
+ }
379
+ const createRow = (table, id, original, rowIndex, depth, subRows, parentId) => {
380
+ let row = {
381
+ id,
382
+ index: rowIndex,
383
+ original,
384
+ depth,
385
+ parentId,
386
+ _valuesCache: {},
387
+ _uniqueValuesCache: {},
388
+ getValue: (columnId) => {
389
+ if (row._valuesCache.hasOwnProperty(columnId)) {
390
+ return row._valuesCache[columnId];
391
+ }
392
+ const column = table.getColumn(columnId);
393
+ if (!(column != null && column.accessorFn)) {
394
+ return void 0;
395
+ }
396
+ row._valuesCache[columnId] = column.accessorFn(row.original, rowIndex);
397
+ return row._valuesCache[columnId];
398
+ },
399
+ getUniqueValues: (columnId) => {
400
+ if (row._uniqueValuesCache.hasOwnProperty(columnId)) {
401
+ return row._uniqueValuesCache[columnId];
402
+ }
403
+ const column = table.getColumn(columnId);
404
+ if (!(column != null && column.accessorFn)) {
405
+ return void 0;
406
+ }
407
+ if (!column.columnDef.getUniqueValues) {
408
+ row._uniqueValuesCache[columnId] = [row.getValue(columnId)];
409
+ return row._uniqueValuesCache[columnId];
410
+ }
411
+ row._uniqueValuesCache[columnId] = column.columnDef.getUniqueValues(row.original, rowIndex);
412
+ return row._uniqueValuesCache[columnId];
413
+ },
414
+ renderValue: (columnId) => {
415
+ var _row$getValue;
416
+ return (_row$getValue = row.getValue(columnId)) != null ? _row$getValue : table.options.renderFallbackValue;
417
+ },
418
+ subRows: [],
419
+ getLeafRows: () => flattenBy(row.subRows, (d) => d.subRows),
420
+ getParentRow: () => row.parentId ? table.getRow(row.parentId, true) : void 0,
421
+ getParentRows: () => {
422
+ let parentRows = [];
423
+ let currentRow = row;
424
+ while (true) {
425
+ const parentRow = currentRow.getParentRow();
426
+ if (!parentRow) break;
427
+ parentRows.push(parentRow);
428
+ currentRow = parentRow;
429
+ }
430
+ return parentRows.reverse();
431
+ },
432
+ getAllCells: memo(() => [table.getAllLeafColumns()], (leafColumns) => {
433
+ return leafColumns.map((column) => {
434
+ return createCell(table, row, column, column.id);
435
+ });
436
+ }, getMemoOptions(table.options, "debugRows", "getAllCells")),
437
+ _getAllCellsByColumnId: memo(() => [row.getAllCells()], (allCells) => {
438
+ return allCells.reduce((acc, cell) => {
439
+ acc[cell.column.id] = cell;
440
+ return acc;
441
+ }, {});
442
+ }, getMemoOptions(table.options, "debugRows", "getAllCellsByColumnId"))
443
+ };
444
+ for (let i = 0; i < table._features.length; i++) {
445
+ const feature = table._features[i];
446
+ feature == null || feature.createRow == null || feature.createRow(row, table);
447
+ }
448
+ return row;
449
+ };
450
+ const ColumnFaceting = {
451
+ createColumn: (column, table) => {
452
+ column._getFacetedRowModel = table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, column.id);
453
+ column.getFacetedRowModel = () => {
454
+ if (!column._getFacetedRowModel) {
455
+ return table.getPreFilteredRowModel();
456
+ }
457
+ return column._getFacetedRowModel();
458
+ };
459
+ column._getFacetedUniqueValues = table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, column.id);
460
+ column.getFacetedUniqueValues = () => {
461
+ if (!column._getFacetedUniqueValues) {
462
+ return /* @__PURE__ */ new Map();
463
+ }
464
+ return column._getFacetedUniqueValues();
465
+ };
466
+ column._getFacetedMinMaxValues = table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, column.id);
467
+ column.getFacetedMinMaxValues = () => {
468
+ if (!column._getFacetedMinMaxValues) {
469
+ return void 0;
470
+ }
471
+ return column._getFacetedMinMaxValues();
472
+ };
473
+ }
474
+ };
475
+ const includesString = (row, columnId, filterValue) => {
476
+ var _filterValue$toString, _row$getValue;
477
+ const search = filterValue == null || (_filterValue$toString = filterValue.toString()) == null ? void 0 : _filterValue$toString.toLowerCase();
478
+ return Boolean((_row$getValue = row.getValue(columnId)) == null || (_row$getValue = _row$getValue.toString()) == null || (_row$getValue = _row$getValue.toLowerCase()) == null ? void 0 : _row$getValue.includes(search));
479
+ };
480
+ includesString.autoRemove = (val) => testFalsey(val);
481
+ const includesStringSensitive = (row, columnId, filterValue) => {
482
+ var _row$getValue2;
483
+ return Boolean((_row$getValue2 = row.getValue(columnId)) == null || (_row$getValue2 = _row$getValue2.toString()) == null ? void 0 : _row$getValue2.includes(filterValue));
484
+ };
485
+ includesStringSensitive.autoRemove = (val) => testFalsey(val);
486
+ const equalsString = (row, columnId, filterValue) => {
487
+ var _row$getValue3;
488
+ return ((_row$getValue3 = row.getValue(columnId)) == null || (_row$getValue3 = _row$getValue3.toString()) == null ? void 0 : _row$getValue3.toLowerCase()) === (filterValue == null ? void 0 : filterValue.toLowerCase());
489
+ };
490
+ equalsString.autoRemove = (val) => testFalsey(val);
491
+ const arrIncludes = (row, columnId, filterValue) => {
492
+ var _row$getValue4;
493
+ return (_row$getValue4 = row.getValue(columnId)) == null ? void 0 : _row$getValue4.includes(filterValue);
494
+ };
495
+ arrIncludes.autoRemove = (val) => testFalsey(val);
496
+ const arrIncludesAll = (row, columnId, filterValue) => {
497
+ return !filterValue.some((val) => {
498
+ var _row$getValue5;
499
+ return !((_row$getValue5 = row.getValue(columnId)) != null && _row$getValue5.includes(val));
500
+ });
501
+ };
502
+ arrIncludesAll.autoRemove = (val) => testFalsey(val) || !(val != null && val.length);
503
+ const arrIncludesSome = (row, columnId, filterValue) => {
504
+ return filterValue.some((val) => {
505
+ var _row$getValue6;
506
+ return (_row$getValue6 = row.getValue(columnId)) == null ? void 0 : _row$getValue6.includes(val);
507
+ });
508
+ };
509
+ arrIncludesSome.autoRemove = (val) => testFalsey(val) || !(val != null && val.length);
510
+ const equals = (row, columnId, filterValue) => {
511
+ return row.getValue(columnId) === filterValue;
512
+ };
513
+ equals.autoRemove = (val) => testFalsey(val);
514
+ const weakEquals = (row, columnId, filterValue) => {
515
+ return row.getValue(columnId) == filterValue;
516
+ };
517
+ weakEquals.autoRemove = (val) => testFalsey(val);
518
+ const inNumberRange = (row, columnId, filterValue) => {
519
+ let [min2, max2] = filterValue;
520
+ const rowValue = row.getValue(columnId);
521
+ return rowValue >= min2 && rowValue <= max2;
522
+ };
523
+ inNumberRange.resolveFilterValue = (val) => {
524
+ let [unsafeMin, unsafeMax] = val;
525
+ let parsedMin = typeof unsafeMin !== "number" ? parseFloat(unsafeMin) : unsafeMin;
526
+ let parsedMax = typeof unsafeMax !== "number" ? parseFloat(unsafeMax) : unsafeMax;
527
+ let min2 = unsafeMin === null || Number.isNaN(parsedMin) ? -Infinity : parsedMin;
528
+ let max2 = unsafeMax === null || Number.isNaN(parsedMax) ? Infinity : parsedMax;
529
+ if (min2 > max2) {
530
+ const temp = min2;
531
+ min2 = max2;
532
+ max2 = temp;
533
+ }
534
+ return [min2, max2];
535
+ };
536
+ inNumberRange.autoRemove = (val) => testFalsey(val) || testFalsey(val[0]) && testFalsey(val[1]);
537
+ const filterFns = {
538
+ includesString,
539
+ includesStringSensitive,
540
+ equalsString,
541
+ arrIncludes,
542
+ arrIncludesAll,
543
+ arrIncludesSome,
544
+ equals,
545
+ weakEquals,
546
+ inNumberRange
547
+ };
548
+ function testFalsey(val) {
549
+ return val === void 0 || val === null || val === "";
550
+ }
551
+ const ColumnFiltering = {
552
+ getDefaultColumnDef: () => {
553
+ return {
554
+ filterFn: "auto"
555
+ };
556
+ },
557
+ getInitialState: (state) => {
558
+ return {
559
+ columnFilters: [],
560
+ ...state
561
+ };
562
+ },
563
+ getDefaultOptions: (table) => {
564
+ return {
565
+ onColumnFiltersChange: makeStateUpdater("columnFilters", table),
566
+ filterFromLeafRows: false,
567
+ maxLeafRowFilterDepth: 100
568
+ };
569
+ },
570
+ createColumn: (column, table) => {
571
+ column.getAutoFilterFn = () => {
572
+ const firstRow = table.getCoreRowModel().flatRows[0];
573
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
574
+ if (typeof value === "string") {
575
+ return filterFns.includesString;
576
+ }
577
+ if (typeof value === "number") {
578
+ return filterFns.inNumberRange;
579
+ }
580
+ if (typeof value === "boolean") {
581
+ return filterFns.equals;
582
+ }
583
+ if (value !== null && typeof value === "object") {
584
+ return filterFns.equals;
585
+ }
586
+ if (Array.isArray(value)) {
587
+ return filterFns.arrIncludes;
588
+ }
589
+ return filterFns.weakEquals;
590
+ };
591
+ column.getFilterFn = () => {
592
+ var _table$options$filter, _table$options$filter2;
593
+ return isFunction(column.columnDef.filterFn) ? column.columnDef.filterFn : column.columnDef.filterFn === "auto" ? column.getAutoFilterFn() : (
594
+ // @ts-ignore
595
+ (_table$options$filter = (_table$options$filter2 = table.options.filterFns) == null ? void 0 : _table$options$filter2[column.columnDef.filterFn]) != null ? _table$options$filter : filterFns[column.columnDef.filterFn]
596
+ );
597
+ };
598
+ column.getCanFilter = () => {
599
+ var _column$columnDef$ena, _table$options$enable, _table$options$enable2;
600
+ return ((_column$columnDef$ena = column.columnDef.enableColumnFilter) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnFilters) != null ? _table$options$enable : true) && ((_table$options$enable2 = table.options.enableFilters) != null ? _table$options$enable2 : true) && !!column.accessorFn;
601
+ };
602
+ column.getIsFiltered = () => column.getFilterIndex() > -1;
603
+ column.getFilterValue = () => {
604
+ var _table$getState$colum;
605
+ return (_table$getState$colum = table.getState().columnFilters) == null || (_table$getState$colum = _table$getState$colum.find((d) => d.id === column.id)) == null ? void 0 : _table$getState$colum.value;
606
+ };
607
+ column.getFilterIndex = () => {
608
+ var _table$getState$colum2, _table$getState$colum3;
609
+ return (_table$getState$colum2 = (_table$getState$colum3 = table.getState().columnFilters) == null ? void 0 : _table$getState$colum3.findIndex((d) => d.id === column.id)) != null ? _table$getState$colum2 : -1;
610
+ };
611
+ column.setFilterValue = (value) => {
612
+ table.setColumnFilters((old) => {
613
+ const filterFn = column.getFilterFn();
614
+ const previousFilter = old == null ? void 0 : old.find((d) => d.id === column.id);
615
+ const newFilter = functionalUpdate(value, previousFilter ? previousFilter.value : void 0);
616
+ if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {
617
+ var _old$filter;
618
+ return (_old$filter = old == null ? void 0 : old.filter((d) => d.id !== column.id)) != null ? _old$filter : [];
619
+ }
620
+ const newFilterObj = {
621
+ id: column.id,
622
+ value: newFilter
623
+ };
624
+ if (previousFilter) {
625
+ var _old$map;
626
+ return (_old$map = old == null ? void 0 : old.map((d) => {
627
+ if (d.id === column.id) {
628
+ return newFilterObj;
629
+ }
630
+ return d;
631
+ })) != null ? _old$map : [];
632
+ }
633
+ if (old != null && old.length) {
634
+ return [...old, newFilterObj];
635
+ }
636
+ return [newFilterObj];
637
+ });
638
+ };
639
+ },
640
+ createRow: (row, _table) => {
641
+ row.columnFilters = {};
642
+ row.columnFiltersMeta = {};
643
+ },
644
+ createTable: (table) => {
645
+ table.setColumnFilters = (updater) => {
646
+ const leafColumns = table.getAllLeafColumns();
647
+ const updateFn = (old) => {
648
+ var _functionalUpdate;
649
+ return (_functionalUpdate = functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter((filter) => {
650
+ const column = leafColumns.find((d) => d.id === filter.id);
651
+ if (column) {
652
+ const filterFn = column.getFilterFn();
653
+ if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
654
+ return false;
655
+ }
656
+ }
657
+ return true;
658
+ });
659
+ };
660
+ table.options.onColumnFiltersChange == null || table.options.onColumnFiltersChange(updateFn);
661
+ };
662
+ table.resetColumnFilters = (defaultState) => {
663
+ var _table$initialState$c, _table$initialState;
664
+ table.setColumnFilters(defaultState ? [] : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnFilters) != null ? _table$initialState$c : []);
665
+ };
666
+ table.getPreFilteredRowModel = () => table.getCoreRowModel();
667
+ table.getFilteredRowModel = () => {
668
+ if (!table._getFilteredRowModel && table.options.getFilteredRowModel) {
669
+ table._getFilteredRowModel = table.options.getFilteredRowModel(table);
670
+ }
671
+ if (table.options.manualFiltering || !table._getFilteredRowModel) {
672
+ return table.getPreFilteredRowModel();
673
+ }
674
+ return table._getFilteredRowModel();
675
+ };
676
+ }
677
+ };
678
+ function shouldAutoRemoveFilter(filterFn, value, column) {
679
+ return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === "undefined" || typeof value === "string" && !value;
680
+ }
681
+ const sum = (columnId, _leafRows, childRows) => {
682
+ return childRows.reduce((sum2, next) => {
683
+ const nextValue = next.getValue(columnId);
684
+ return sum2 + (typeof nextValue === "number" ? nextValue : 0);
685
+ }, 0);
686
+ };
687
+ const min = (columnId, _leafRows, childRows) => {
688
+ let min2;
689
+ childRows.forEach((row) => {
690
+ const value = row.getValue(columnId);
691
+ if (value != null && (min2 > value || min2 === void 0 && value >= value)) {
692
+ min2 = value;
693
+ }
694
+ });
695
+ return min2;
696
+ };
697
+ const max = (columnId, _leafRows, childRows) => {
698
+ let max2;
699
+ childRows.forEach((row) => {
700
+ const value = row.getValue(columnId);
701
+ if (value != null && (max2 < value || max2 === void 0 && value >= value)) {
702
+ max2 = value;
703
+ }
704
+ });
705
+ return max2;
706
+ };
707
+ const extent = (columnId, _leafRows, childRows) => {
708
+ let min2;
709
+ let max2;
710
+ childRows.forEach((row) => {
711
+ const value = row.getValue(columnId);
712
+ if (value != null) {
713
+ if (min2 === void 0) {
714
+ if (value >= value) min2 = max2 = value;
715
+ } else {
716
+ if (min2 > value) min2 = value;
717
+ if (max2 < value) max2 = value;
718
+ }
719
+ }
720
+ });
721
+ return [min2, max2];
722
+ };
723
+ const mean = (columnId, leafRows) => {
724
+ let count2 = 0;
725
+ let sum2 = 0;
726
+ leafRows.forEach((row) => {
727
+ let value = row.getValue(columnId);
728
+ if (value != null && (value = +value) >= value) {
729
+ ++count2, sum2 += value;
730
+ }
731
+ });
732
+ if (count2) return sum2 / count2;
733
+ return;
734
+ };
735
+ const median = (columnId, leafRows) => {
736
+ if (!leafRows.length) {
737
+ return;
738
+ }
739
+ const values = leafRows.map((row) => row.getValue(columnId));
740
+ if (!isNumberArray(values)) {
741
+ return;
742
+ }
743
+ if (values.length === 1) {
744
+ return values[0];
745
+ }
746
+ const mid = Math.floor(values.length / 2);
747
+ const nums = values.sort((a, b) => a - b);
748
+ return values.length % 2 !== 0 ? nums[mid] : (nums[mid - 1] + nums[mid]) / 2;
749
+ };
750
+ const unique = (columnId, leafRows) => {
751
+ return Array.from(new Set(leafRows.map((d) => d.getValue(columnId))).values());
752
+ };
753
+ const uniqueCount = (columnId, leafRows) => {
754
+ return new Set(leafRows.map((d) => d.getValue(columnId))).size;
755
+ };
756
+ const count = (_columnId, leafRows) => {
757
+ return leafRows.length;
758
+ };
759
+ const aggregationFns = {
760
+ sum,
761
+ min,
762
+ max,
763
+ extent,
764
+ mean,
765
+ median,
766
+ unique,
767
+ uniqueCount,
768
+ count
769
+ };
770
+ const ColumnGrouping = {
771
+ getDefaultColumnDef: () => {
772
+ return {
773
+ aggregatedCell: (props) => {
774
+ var _toString, _props$getValue;
775
+ return (_toString = (_props$getValue = props.getValue()) == null || _props$getValue.toString == null ? void 0 : _props$getValue.toString()) != null ? _toString : null;
776
+ },
777
+ aggregationFn: "auto"
778
+ };
779
+ },
780
+ getInitialState: (state) => {
781
+ return {
782
+ grouping: [],
783
+ ...state
784
+ };
785
+ },
786
+ getDefaultOptions: (table) => {
787
+ return {
788
+ onGroupingChange: makeStateUpdater("grouping", table),
789
+ groupedColumnMode: "reorder"
790
+ };
791
+ },
792
+ createColumn: (column, table) => {
793
+ column.toggleGrouping = () => {
794
+ table.setGrouping((old) => {
795
+ if (old != null && old.includes(column.id)) {
796
+ return old.filter((d) => d !== column.id);
797
+ }
798
+ return [...old != null ? old : [], column.id];
799
+ });
800
+ };
801
+ column.getCanGroup = () => {
802
+ var _column$columnDef$ena, _table$options$enable;
803
+ return ((_column$columnDef$ena = column.columnDef.enableGrouping) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableGrouping) != null ? _table$options$enable : true) && (!!column.accessorFn || !!column.columnDef.getGroupingValue);
804
+ };
805
+ column.getIsGrouped = () => {
806
+ var _table$getState$group;
807
+ return (_table$getState$group = table.getState().grouping) == null ? void 0 : _table$getState$group.includes(column.id);
808
+ };
809
+ column.getGroupedIndex = () => {
810
+ var _table$getState$group2;
811
+ return (_table$getState$group2 = table.getState().grouping) == null ? void 0 : _table$getState$group2.indexOf(column.id);
812
+ };
813
+ column.getToggleGroupingHandler = () => {
814
+ const canGroup = column.getCanGroup();
815
+ return () => {
816
+ if (!canGroup) return;
817
+ column.toggleGrouping();
818
+ };
819
+ };
820
+ column.getAutoAggregationFn = () => {
821
+ const firstRow = table.getCoreRowModel().flatRows[0];
822
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
823
+ if (typeof value === "number") {
824
+ return aggregationFns.sum;
825
+ }
826
+ if (Object.prototype.toString.call(value) === "[object Date]") {
827
+ return aggregationFns.extent;
828
+ }
829
+ };
830
+ column.getAggregationFn = () => {
831
+ var _table$options$aggreg, _table$options$aggreg2;
832
+ if (!column) {
833
+ throw new Error();
834
+ }
835
+ return isFunction(column.columnDef.aggregationFn) ? column.columnDef.aggregationFn : column.columnDef.aggregationFn === "auto" ? column.getAutoAggregationFn() : (_table$options$aggreg = (_table$options$aggreg2 = table.options.aggregationFns) == null ? void 0 : _table$options$aggreg2[column.columnDef.aggregationFn]) != null ? _table$options$aggreg : aggregationFns[column.columnDef.aggregationFn];
836
+ };
837
+ },
838
+ createTable: (table) => {
839
+ table.setGrouping = (updater) => table.options.onGroupingChange == null ? void 0 : table.options.onGroupingChange(updater);
840
+ table.resetGrouping = (defaultState) => {
841
+ var _table$initialState$g, _table$initialState;
842
+ table.setGrouping(defaultState ? [] : (_table$initialState$g = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.grouping) != null ? _table$initialState$g : []);
843
+ };
844
+ table.getPreGroupedRowModel = () => table.getFilteredRowModel();
845
+ table.getGroupedRowModel = () => {
846
+ if (!table._getGroupedRowModel && table.options.getGroupedRowModel) {
847
+ table._getGroupedRowModel = table.options.getGroupedRowModel(table);
848
+ }
849
+ if (table.options.manualGrouping || !table._getGroupedRowModel) {
850
+ return table.getPreGroupedRowModel();
851
+ }
852
+ return table._getGroupedRowModel();
853
+ };
854
+ },
855
+ createRow: (row, table) => {
856
+ row.getIsGrouped = () => !!row.groupingColumnId;
857
+ row.getGroupingValue = (columnId) => {
858
+ if (row._groupingValuesCache.hasOwnProperty(columnId)) {
859
+ return row._groupingValuesCache[columnId];
860
+ }
861
+ const column = table.getColumn(columnId);
862
+ if (!(column != null && column.columnDef.getGroupingValue)) {
863
+ return row.getValue(columnId);
864
+ }
865
+ row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue(row.original);
866
+ return row._groupingValuesCache[columnId];
867
+ };
868
+ row._groupingValuesCache = {};
869
+ },
870
+ createCell: (cell, column, row, table) => {
871
+ cell.getIsGrouped = () => column.getIsGrouped() && column.id === row.groupingColumnId;
872
+ cell.getIsPlaceholder = () => !cell.getIsGrouped() && column.getIsGrouped();
873
+ cell.getIsAggregated = () => {
874
+ var _row$subRows;
875
+ return !cell.getIsGrouped() && !cell.getIsPlaceholder() && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
876
+ };
877
+ }
878
+ };
879
+ function orderColumns(leafColumns, grouping, groupedColumnMode) {
880
+ if (!(grouping != null && grouping.length) || !groupedColumnMode) {
881
+ return leafColumns;
882
+ }
883
+ const nonGroupingColumns = leafColumns.filter((col) => !grouping.includes(col.id));
884
+ if (groupedColumnMode === "remove") {
885
+ return nonGroupingColumns;
886
+ }
887
+ const groupingColumns = grouping.map((g) => leafColumns.find((col) => col.id === g)).filter(Boolean);
888
+ return [...groupingColumns, ...nonGroupingColumns];
889
+ }
890
+ const ColumnOrdering = {
891
+ getInitialState: (state) => {
892
+ return {
893
+ columnOrder: [],
894
+ ...state
895
+ };
896
+ },
897
+ getDefaultOptions: (table) => {
898
+ return {
899
+ onColumnOrderChange: makeStateUpdater("columnOrder", table)
900
+ };
901
+ },
902
+ createColumn: (column, table) => {
903
+ column.getIndex = memo((position) => [_getVisibleLeafColumns(table, position)], (columns) => columns.findIndex((d) => d.id === column.id), getMemoOptions(table.options, "debugColumns", "getIndex"));
904
+ column.getIsFirstColumn = (position) => {
905
+ var _columns$;
906
+ const columns = _getVisibleLeafColumns(table, position);
907
+ return ((_columns$ = columns[0]) == null ? void 0 : _columns$.id) === column.id;
908
+ };
909
+ column.getIsLastColumn = (position) => {
910
+ var _columns;
911
+ const columns = _getVisibleLeafColumns(table, position);
912
+ return ((_columns = columns[columns.length - 1]) == null ? void 0 : _columns.id) === column.id;
913
+ };
914
+ },
915
+ createTable: (table) => {
916
+ table.setColumnOrder = (updater) => table.options.onColumnOrderChange == null ? void 0 : table.options.onColumnOrderChange(updater);
917
+ table.resetColumnOrder = (defaultState) => {
918
+ var _table$initialState$c;
919
+ table.setColumnOrder(defaultState ? [] : (_table$initialState$c = table.initialState.columnOrder) != null ? _table$initialState$c : []);
920
+ };
921
+ table._getOrderColumnsFn = memo(() => [table.getState().columnOrder, table.getState().grouping, table.options.groupedColumnMode], (columnOrder, grouping, groupedColumnMode) => (columns) => {
922
+ let orderedColumns = [];
923
+ if (!(columnOrder != null && columnOrder.length)) {
924
+ orderedColumns = columns;
925
+ } else {
926
+ const columnOrderCopy = [...columnOrder];
927
+ const columnsCopy = [...columns];
928
+ while (columnsCopy.length && columnOrderCopy.length) {
929
+ const targetColumnId = columnOrderCopy.shift();
930
+ const foundIndex = columnsCopy.findIndex((d) => d.id === targetColumnId);
931
+ if (foundIndex > -1) {
932
+ orderedColumns.push(columnsCopy.splice(foundIndex, 1)[0]);
933
+ }
934
+ }
935
+ orderedColumns = [...orderedColumns, ...columnsCopy];
936
+ }
937
+ return orderColumns(orderedColumns, grouping, groupedColumnMode);
938
+ }, getMemoOptions(table.options, "debugTable", "_getOrderColumnsFn"));
939
+ }
940
+ };
941
+ const getDefaultColumnPinningState = () => ({
942
+ left: [],
943
+ right: []
944
+ });
945
+ const ColumnPinning = {
946
+ getInitialState: (state) => {
947
+ return {
948
+ columnPinning: getDefaultColumnPinningState(),
949
+ ...state
950
+ };
951
+ },
952
+ getDefaultOptions: (table) => {
953
+ return {
954
+ onColumnPinningChange: makeStateUpdater("columnPinning", table)
955
+ };
956
+ },
957
+ createColumn: (column, table) => {
958
+ column.pin = (position) => {
959
+ const columnIds = column.getLeafColumns().map((d) => d.id).filter(Boolean);
960
+ table.setColumnPinning((old) => {
961
+ var _old$left3, _old$right3;
962
+ if (position === "right") {
963
+ var _old$left, _old$right;
964
+ return {
965
+ left: ((_old$left = old == null ? void 0 : old.left) != null ? _old$left : []).filter((d) => !(columnIds != null && columnIds.includes(d))),
966
+ right: [...((_old$right = old == null ? void 0 : old.right) != null ? _old$right : []).filter((d) => !(columnIds != null && columnIds.includes(d))), ...columnIds]
967
+ };
968
+ }
969
+ if (position === "left") {
970
+ var _old$left2, _old$right2;
971
+ return {
972
+ left: [...((_old$left2 = old == null ? void 0 : old.left) != null ? _old$left2 : []).filter((d) => !(columnIds != null && columnIds.includes(d))), ...columnIds],
973
+ right: ((_old$right2 = old == null ? void 0 : old.right) != null ? _old$right2 : []).filter((d) => !(columnIds != null && columnIds.includes(d)))
974
+ };
975
+ }
976
+ return {
977
+ left: ((_old$left3 = old == null ? void 0 : old.left) != null ? _old$left3 : []).filter((d) => !(columnIds != null && columnIds.includes(d))),
978
+ right: ((_old$right3 = old == null ? void 0 : old.right) != null ? _old$right3 : []).filter((d) => !(columnIds != null && columnIds.includes(d)))
979
+ };
980
+ });
981
+ };
982
+ column.getCanPin = () => {
983
+ const leafColumns = column.getLeafColumns();
984
+ return leafColumns.some((d) => {
985
+ var _d$columnDef$enablePi, _ref, _table$options$enable;
986
+ return ((_d$columnDef$enablePi = d.columnDef.enablePinning) != null ? _d$columnDef$enablePi : true) && ((_ref = (_table$options$enable = table.options.enableColumnPinning) != null ? _table$options$enable : table.options.enablePinning) != null ? _ref : true);
987
+ });
988
+ };
989
+ column.getIsPinned = () => {
990
+ const leafColumnIds = column.getLeafColumns().map((d) => d.id);
991
+ const {
992
+ left,
993
+ right
994
+ } = table.getState().columnPinning;
995
+ const isLeft = leafColumnIds.some((d) => left == null ? void 0 : left.includes(d));
996
+ const isRight = leafColumnIds.some((d) => right == null ? void 0 : right.includes(d));
997
+ return isLeft ? "left" : isRight ? "right" : false;
998
+ };
999
+ column.getPinnedIndex = () => {
1000
+ var _table$getState$colum, _table$getState$colum2;
1001
+ const position = column.getIsPinned();
1002
+ return position ? (_table$getState$colum = (_table$getState$colum2 = table.getState().columnPinning) == null || (_table$getState$colum2 = _table$getState$colum2[position]) == null ? void 0 : _table$getState$colum2.indexOf(column.id)) != null ? _table$getState$colum : -1 : 0;
1003
+ };
1004
+ },
1005
+ createRow: (row, table) => {
1006
+ row.getCenterVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allCells, left, right) => {
1007
+ const leftAndRight = [...left != null ? left : [], ...right != null ? right : []];
1008
+ return allCells.filter((d) => !leftAndRight.includes(d.column.id));
1009
+ }, getMemoOptions(table.options, "debugRows", "getCenterVisibleCells"));
1010
+ row.getLeftVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left], (allCells, left) => {
1011
+ const cells = (left != null ? left : []).map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean).map((d) => ({
1012
+ ...d,
1013
+ position: "left"
1014
+ }));
1015
+ return cells;
1016
+ }, getMemoOptions(table.options, "debugRows", "getLeftVisibleCells"));
1017
+ row.getRightVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.right], (allCells, right) => {
1018
+ const cells = (right != null ? right : []).map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean).map((d) => ({
1019
+ ...d,
1020
+ position: "right"
1021
+ }));
1022
+ return cells;
1023
+ }, getMemoOptions(table.options, "debugRows", "getRightVisibleCells"));
1024
+ },
1025
+ createTable: (table) => {
1026
+ table.setColumnPinning = (updater) => table.options.onColumnPinningChange == null ? void 0 : table.options.onColumnPinningChange(updater);
1027
+ table.resetColumnPinning = (defaultState) => {
1028
+ var _table$initialState$c, _table$initialState;
1029
+ return table.setColumnPinning(defaultState ? getDefaultColumnPinningState() : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnPinning) != null ? _table$initialState$c : getDefaultColumnPinningState());
1030
+ };
1031
+ table.getIsSomeColumnsPinned = (position) => {
1032
+ var _pinningState$positio;
1033
+ const pinningState = table.getState().columnPinning;
1034
+ if (!position) {
1035
+ var _pinningState$left, _pinningState$right;
1036
+ return Boolean(((_pinningState$left = pinningState.left) == null ? void 0 : _pinningState$left.length) || ((_pinningState$right = pinningState.right) == null ? void 0 : _pinningState$right.length));
1037
+ }
1038
+ return Boolean((_pinningState$positio = pinningState[position]) == null ? void 0 : _pinningState$positio.length);
1039
+ };
1040
+ table.getLeftLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left], (allColumns, left) => {
1041
+ return (left != null ? left : []).map((columnId) => allColumns.find((column) => column.id === columnId)).filter(Boolean);
1042
+ }, getMemoOptions(table.options, "debugColumns", "getLeftLeafColumns"));
1043
+ table.getRightLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.right], (allColumns, right) => {
1044
+ return (right != null ? right : []).map((columnId) => allColumns.find((column) => column.id === columnId)).filter(Boolean);
1045
+ }, getMemoOptions(table.options, "debugColumns", "getRightLeafColumns"));
1046
+ table.getCenterLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, left, right) => {
1047
+ const leftAndRight = [...left != null ? left : [], ...right != null ? right : []];
1048
+ return allColumns.filter((d) => !leftAndRight.includes(d.id));
1049
+ }, getMemoOptions(table.options, "debugColumns", "getCenterLeafColumns"));
1050
+ }
1051
+ };
1052
+ function safelyAccessDocument(_document) {
1053
+ return _document || (typeof document !== "undefined" ? document : null);
1054
+ }
1055
+ const defaultColumnSizing = {
1056
+ size: 150,
1057
+ minSize: 20,
1058
+ maxSize: Number.MAX_SAFE_INTEGER
1059
+ };
1060
+ const getDefaultColumnSizingInfoState = () => ({
1061
+ startOffset: null,
1062
+ startSize: null,
1063
+ deltaOffset: null,
1064
+ deltaPercentage: null,
1065
+ isResizingColumn: false,
1066
+ columnSizingStart: []
1067
+ });
1068
+ const ColumnSizing = {
1069
+ getDefaultColumnDef: () => {
1070
+ return defaultColumnSizing;
1071
+ },
1072
+ getInitialState: (state) => {
1073
+ return {
1074
+ columnSizing: {},
1075
+ columnSizingInfo: getDefaultColumnSizingInfoState(),
1076
+ ...state
1077
+ };
1078
+ },
1079
+ getDefaultOptions: (table) => {
1080
+ return {
1081
+ columnResizeMode: "onEnd",
1082
+ columnResizeDirection: "ltr",
1083
+ onColumnSizingChange: makeStateUpdater("columnSizing", table),
1084
+ onColumnSizingInfoChange: makeStateUpdater("columnSizingInfo", table)
1085
+ };
1086
+ },
1087
+ createColumn: (column, table) => {
1088
+ column.getSize = () => {
1089
+ var _column$columnDef$min, _ref, _column$columnDef$max;
1090
+ const columnSize = table.getState().columnSizing[column.id];
1091
+ return Math.min(Math.max((_column$columnDef$min = column.columnDef.minSize) != null ? _column$columnDef$min : defaultColumnSizing.minSize, (_ref = columnSize != null ? columnSize : column.columnDef.size) != null ? _ref : defaultColumnSizing.size), (_column$columnDef$max = column.columnDef.maxSize) != null ? _column$columnDef$max : defaultColumnSizing.maxSize);
1092
+ };
1093
+ column.getStart = memo((position) => [position, _getVisibleLeafColumns(table, position), table.getState().columnSizing], (position, columns) => columns.slice(0, column.getIndex(position)).reduce((sum2, column2) => sum2 + column2.getSize(), 0), getMemoOptions(table.options, "debugColumns", "getStart"));
1094
+ column.getAfter = memo((position) => [position, _getVisibleLeafColumns(table, position), table.getState().columnSizing], (position, columns) => columns.slice(column.getIndex(position) + 1).reduce((sum2, column2) => sum2 + column2.getSize(), 0), getMemoOptions(table.options, "debugColumns", "getAfter"));
1095
+ column.resetSize = () => {
1096
+ table.setColumnSizing((_ref2) => {
1097
+ let {
1098
+ [column.id]: _,
1099
+ ...rest
1100
+ } = _ref2;
1101
+ return rest;
1102
+ });
1103
+ };
1104
+ column.getCanResize = () => {
1105
+ var _column$columnDef$ena, _table$options$enable;
1106
+ return ((_column$columnDef$ena = column.columnDef.enableResizing) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnResizing) != null ? _table$options$enable : true);
1107
+ };
1108
+ column.getIsResizing = () => {
1109
+ return table.getState().columnSizingInfo.isResizingColumn === column.id;
1110
+ };
1111
+ },
1112
+ createHeader: (header, table) => {
1113
+ header.getSize = () => {
1114
+ let sum2 = 0;
1115
+ const recurse = (header2) => {
1116
+ if (header2.subHeaders.length) {
1117
+ header2.subHeaders.forEach(recurse);
1118
+ } else {
1119
+ var _header$column$getSiz;
1120
+ sum2 += (_header$column$getSiz = header2.column.getSize()) != null ? _header$column$getSiz : 0;
1121
+ }
1122
+ };
1123
+ recurse(header);
1124
+ return sum2;
1125
+ };
1126
+ header.getStart = () => {
1127
+ if (header.index > 0) {
1128
+ const prevSiblingHeader = header.headerGroup.headers[header.index - 1];
1129
+ return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
1130
+ }
1131
+ return 0;
1132
+ };
1133
+ header.getResizeHandler = (_contextDocument) => {
1134
+ const column = table.getColumn(header.column.id);
1135
+ const canResize = column == null ? void 0 : column.getCanResize();
1136
+ return (e) => {
1137
+ if (!column || !canResize) {
1138
+ return;
1139
+ }
1140
+ e.persist == null || e.persist();
1141
+ if (isTouchStartEvent(e)) {
1142
+ if (e.touches && e.touches.length > 1) {
1143
+ return;
1144
+ }
1145
+ }
1146
+ const startSize = header.getSize();
1147
+ const columnSizingStart = header ? header.getLeafHeaders().map((d) => [d.column.id, d.column.getSize()]) : [[column.id, column.getSize()]];
1148
+ const clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
1149
+ const newColumnSizing = {};
1150
+ const updateOffset = (eventType, clientXPos) => {
1151
+ if (typeof clientXPos !== "number") {
1152
+ return;
1153
+ }
1154
+ table.setColumnSizingInfo((old) => {
1155
+ var _old$startOffset, _old$startSize;
1156
+ const deltaDirection = table.options.columnResizeDirection === "rtl" ? -1 : 1;
1157
+ const deltaOffset = (clientXPos - ((_old$startOffset = old == null ? void 0 : old.startOffset) != null ? _old$startOffset : 0)) * deltaDirection;
1158
+ const deltaPercentage = Math.max(deltaOffset / ((_old$startSize = old == null ? void 0 : old.startSize) != null ? _old$startSize : 0), -0.999999);
1159
+ old.columnSizingStart.forEach((_ref3) => {
1160
+ let [columnId, headerSize] = _ref3;
1161
+ newColumnSizing[columnId] = Math.round(Math.max(headerSize + headerSize * deltaPercentage, 0) * 100) / 100;
1162
+ });
1163
+ return {
1164
+ ...old,
1165
+ deltaOffset,
1166
+ deltaPercentage
1167
+ };
1168
+ });
1169
+ if (table.options.columnResizeMode === "onChange" || eventType === "end") {
1170
+ table.setColumnSizing((old) => ({
1171
+ ...old,
1172
+ ...newColumnSizing
1173
+ }));
1174
+ }
1175
+ };
1176
+ const onMove = (clientXPos) => updateOffset("move", clientXPos);
1177
+ const onEnd = (clientXPos) => {
1178
+ updateOffset("end", clientXPos);
1179
+ table.setColumnSizingInfo((old) => ({
1180
+ ...old,
1181
+ isResizingColumn: false,
1182
+ startOffset: null,
1183
+ startSize: null,
1184
+ deltaOffset: null,
1185
+ deltaPercentage: null,
1186
+ columnSizingStart: []
1187
+ }));
1188
+ };
1189
+ const contextDocument = safelyAccessDocument(_contextDocument);
1190
+ const mouseEvents = {
1191
+ moveHandler: (e2) => onMove(e2.clientX),
1192
+ upHandler: (e2) => {
1193
+ contextDocument == null || contextDocument.removeEventListener("mousemove", mouseEvents.moveHandler);
1194
+ contextDocument == null || contextDocument.removeEventListener("mouseup", mouseEvents.upHandler);
1195
+ onEnd(e2.clientX);
1196
+ }
1197
+ };
1198
+ const touchEvents = {
1199
+ moveHandler: (e2) => {
1200
+ if (e2.cancelable) {
1201
+ e2.preventDefault();
1202
+ e2.stopPropagation();
1203
+ }
1204
+ onMove(e2.touches[0].clientX);
1205
+ return false;
1206
+ },
1207
+ upHandler: (e2) => {
1208
+ var _e$touches$;
1209
+ contextDocument == null || contextDocument.removeEventListener("touchmove", touchEvents.moveHandler);
1210
+ contextDocument == null || contextDocument.removeEventListener("touchend", touchEvents.upHandler);
1211
+ if (e2.cancelable) {
1212
+ e2.preventDefault();
1213
+ e2.stopPropagation();
1214
+ }
1215
+ onEnd((_e$touches$ = e2.touches[0]) == null ? void 0 : _e$touches$.clientX);
1216
+ }
1217
+ };
1218
+ const passiveIfSupported = passiveEventSupported() ? {
1219
+ passive: false
1220
+ } : false;
1221
+ if (isTouchStartEvent(e)) {
1222
+ contextDocument == null || contextDocument.addEventListener("touchmove", touchEvents.moveHandler, passiveIfSupported);
1223
+ contextDocument == null || contextDocument.addEventListener("touchend", touchEvents.upHandler, passiveIfSupported);
1224
+ } else {
1225
+ contextDocument == null || contextDocument.addEventListener("mousemove", mouseEvents.moveHandler, passiveIfSupported);
1226
+ contextDocument == null || contextDocument.addEventListener("mouseup", mouseEvents.upHandler, passiveIfSupported);
1227
+ }
1228
+ table.setColumnSizingInfo((old) => ({
1229
+ ...old,
1230
+ startOffset: clientX,
1231
+ startSize,
1232
+ deltaOffset: 0,
1233
+ deltaPercentage: 0,
1234
+ columnSizingStart,
1235
+ isResizingColumn: column.id
1236
+ }));
1237
+ };
1238
+ };
1239
+ },
1240
+ createTable: (table) => {
1241
+ table.setColumnSizing = (updater) => table.options.onColumnSizingChange == null ? void 0 : table.options.onColumnSizingChange(updater);
1242
+ table.setColumnSizingInfo = (updater) => table.options.onColumnSizingInfoChange == null ? void 0 : table.options.onColumnSizingInfoChange(updater);
1243
+ table.resetColumnSizing = (defaultState) => {
1244
+ var _table$initialState$c;
1245
+ table.setColumnSizing(defaultState ? {} : (_table$initialState$c = table.initialState.columnSizing) != null ? _table$initialState$c : {});
1246
+ };
1247
+ table.resetHeaderSizeInfo = (defaultState) => {
1248
+ var _table$initialState$c2;
1249
+ table.setColumnSizingInfo(defaultState ? getDefaultColumnSizingInfoState() : (_table$initialState$c2 = table.initialState.columnSizingInfo) != null ? _table$initialState$c2 : getDefaultColumnSizingInfoState());
1250
+ };
1251
+ table.getTotalSize = () => {
1252
+ var _table$getHeaderGroup, _table$getHeaderGroup2;
1253
+ return (_table$getHeaderGroup = (_table$getHeaderGroup2 = table.getHeaderGroups()[0]) == null ? void 0 : _table$getHeaderGroup2.headers.reduce((sum2, header) => {
1254
+ return sum2 + header.getSize();
1255
+ }, 0)) != null ? _table$getHeaderGroup : 0;
1256
+ };
1257
+ table.getLeftTotalSize = () => {
1258
+ var _table$getLeftHeaderG, _table$getLeftHeaderG2;
1259
+ return (_table$getLeftHeaderG = (_table$getLeftHeaderG2 = table.getLeftHeaderGroups()[0]) == null ? void 0 : _table$getLeftHeaderG2.headers.reduce((sum2, header) => {
1260
+ return sum2 + header.getSize();
1261
+ }, 0)) != null ? _table$getLeftHeaderG : 0;
1262
+ };
1263
+ table.getCenterTotalSize = () => {
1264
+ var _table$getCenterHeade, _table$getCenterHeade2;
1265
+ return (_table$getCenterHeade = (_table$getCenterHeade2 = table.getCenterHeaderGroups()[0]) == null ? void 0 : _table$getCenterHeade2.headers.reduce((sum2, header) => {
1266
+ return sum2 + header.getSize();
1267
+ }, 0)) != null ? _table$getCenterHeade : 0;
1268
+ };
1269
+ table.getRightTotalSize = () => {
1270
+ var _table$getRightHeader, _table$getRightHeader2;
1271
+ return (_table$getRightHeader = (_table$getRightHeader2 = table.getRightHeaderGroups()[0]) == null ? void 0 : _table$getRightHeader2.headers.reduce((sum2, header) => {
1272
+ return sum2 + header.getSize();
1273
+ }, 0)) != null ? _table$getRightHeader : 0;
1274
+ };
1275
+ }
1276
+ };
1277
+ let passiveSupported = null;
1278
+ function passiveEventSupported() {
1279
+ if (typeof passiveSupported === "boolean") return passiveSupported;
1280
+ let supported = false;
1281
+ try {
1282
+ const options = {
1283
+ get passive() {
1284
+ supported = true;
1285
+ return false;
1286
+ }
1287
+ };
1288
+ const noop = () => {
1289
+ };
1290
+ window.addEventListener("test", noop, options);
1291
+ window.removeEventListener("test", noop);
1292
+ } catch (err) {
1293
+ supported = false;
1294
+ }
1295
+ passiveSupported = supported;
1296
+ return passiveSupported;
1297
+ }
1298
+ function isTouchStartEvent(e) {
1299
+ return e.type === "touchstart";
1300
+ }
1301
+ const ColumnVisibility = {
1302
+ getInitialState: (state) => {
1303
+ return {
1304
+ columnVisibility: {},
1305
+ ...state
1306
+ };
1307
+ },
1308
+ getDefaultOptions: (table) => {
1309
+ return {
1310
+ onColumnVisibilityChange: makeStateUpdater("columnVisibility", table)
1311
+ };
1312
+ },
1313
+ createColumn: (column, table) => {
1314
+ column.toggleVisibility = (value) => {
1315
+ if (column.getCanHide()) {
1316
+ table.setColumnVisibility((old) => ({
1317
+ ...old,
1318
+ [column.id]: value != null ? value : !column.getIsVisible()
1319
+ }));
1320
+ }
1321
+ };
1322
+ column.getIsVisible = () => {
1323
+ var _ref, _table$getState$colum;
1324
+ const childColumns = column.columns;
1325
+ return (_ref = childColumns.length ? childColumns.some((c) => c.getIsVisible()) : (_table$getState$colum = table.getState().columnVisibility) == null ? void 0 : _table$getState$colum[column.id]) != null ? _ref : true;
1326
+ };
1327
+ column.getCanHide = () => {
1328
+ var _column$columnDef$ena, _table$options$enable;
1329
+ return ((_column$columnDef$ena = column.columnDef.enableHiding) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableHiding) != null ? _table$options$enable : true);
1330
+ };
1331
+ column.getToggleVisibilityHandler = () => {
1332
+ return (e) => {
1333
+ column.toggleVisibility == null || column.toggleVisibility(e.target.checked);
1334
+ };
1335
+ };
1336
+ },
1337
+ createRow: (row, table) => {
1338
+ row._getAllVisibleCells = memo(() => [row.getAllCells(), table.getState().columnVisibility], (cells) => {
1339
+ return cells.filter((cell) => cell.column.getIsVisible());
1340
+ }, getMemoOptions(table.options, "debugRows", "_getAllVisibleCells"));
1341
+ row.getVisibleCells = memo(() => [row.getLeftVisibleCells(), row.getCenterVisibleCells(), row.getRightVisibleCells()], (left, center, right) => [...left, ...center, ...right], getMemoOptions(table.options, "debugRows", "getVisibleCells"));
1342
+ },
1343
+ createTable: (table) => {
1344
+ const makeVisibleColumnsMethod = (key, getColumns) => {
1345
+ return memo(() => [getColumns(), getColumns().filter((d) => d.getIsVisible()).map((d) => d.id).join("_")], (columns) => {
1346
+ return columns.filter((d) => d.getIsVisible == null ? void 0 : d.getIsVisible());
1347
+ }, getMemoOptions(table.options, "debugColumns", key));
1348
+ };
1349
+ table.getVisibleFlatColumns = makeVisibleColumnsMethod("getVisibleFlatColumns", () => table.getAllFlatColumns());
1350
+ table.getVisibleLeafColumns = makeVisibleColumnsMethod("getVisibleLeafColumns", () => table.getAllLeafColumns());
1351
+ table.getLeftVisibleLeafColumns = makeVisibleColumnsMethod("getLeftVisibleLeafColumns", () => table.getLeftLeafColumns());
1352
+ table.getRightVisibleLeafColumns = makeVisibleColumnsMethod("getRightVisibleLeafColumns", () => table.getRightLeafColumns());
1353
+ table.getCenterVisibleLeafColumns = makeVisibleColumnsMethod("getCenterVisibleLeafColumns", () => table.getCenterLeafColumns());
1354
+ table.setColumnVisibility = (updater) => table.options.onColumnVisibilityChange == null ? void 0 : table.options.onColumnVisibilityChange(updater);
1355
+ table.resetColumnVisibility = (defaultState) => {
1356
+ var _table$initialState$c;
1357
+ table.setColumnVisibility(defaultState ? {} : (_table$initialState$c = table.initialState.columnVisibility) != null ? _table$initialState$c : {});
1358
+ };
1359
+ table.toggleAllColumnsVisible = (value) => {
1360
+ var _value;
1361
+ value = (_value = value) != null ? _value : !table.getIsAllColumnsVisible();
1362
+ table.setColumnVisibility(table.getAllLeafColumns().reduce((obj, column) => ({
1363
+ ...obj,
1364
+ [column.id]: !value ? !(column.getCanHide != null && column.getCanHide()) : value
1365
+ }), {}));
1366
+ };
1367
+ table.getIsAllColumnsVisible = () => !table.getAllLeafColumns().some((column) => !(column.getIsVisible != null && column.getIsVisible()));
1368
+ table.getIsSomeColumnsVisible = () => table.getAllLeafColumns().some((column) => column.getIsVisible == null ? void 0 : column.getIsVisible());
1369
+ table.getToggleAllColumnsVisibilityHandler = () => {
1370
+ return (e) => {
1371
+ var _target;
1372
+ table.toggleAllColumnsVisible((_target = e.target) == null ? void 0 : _target.checked);
1373
+ };
1374
+ };
1375
+ }
1376
+ };
1377
+ function _getVisibleLeafColumns(table, position) {
1378
+ return !position ? table.getVisibleLeafColumns() : position === "center" ? table.getCenterVisibleLeafColumns() : position === "left" ? table.getLeftVisibleLeafColumns() : table.getRightVisibleLeafColumns();
1379
+ }
1380
+ const GlobalFaceting = {
1381
+ createTable: (table) => {
1382
+ table._getGlobalFacetedRowModel = table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, "__global__");
1383
+ table.getGlobalFacetedRowModel = () => {
1384
+ if (table.options.manualFiltering || !table._getGlobalFacetedRowModel) {
1385
+ return table.getPreFilteredRowModel();
1386
+ }
1387
+ return table._getGlobalFacetedRowModel();
1388
+ };
1389
+ table._getGlobalFacetedUniqueValues = table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, "__global__");
1390
+ table.getGlobalFacetedUniqueValues = () => {
1391
+ if (!table._getGlobalFacetedUniqueValues) {
1392
+ return /* @__PURE__ */ new Map();
1393
+ }
1394
+ return table._getGlobalFacetedUniqueValues();
1395
+ };
1396
+ table._getGlobalFacetedMinMaxValues = table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, "__global__");
1397
+ table.getGlobalFacetedMinMaxValues = () => {
1398
+ if (!table._getGlobalFacetedMinMaxValues) {
1399
+ return;
1400
+ }
1401
+ return table._getGlobalFacetedMinMaxValues();
1402
+ };
1403
+ }
1404
+ };
1405
+ const GlobalFiltering = {
1406
+ getInitialState: (state) => {
1407
+ return {
1408
+ globalFilter: void 0,
1409
+ ...state
1410
+ };
1411
+ },
1412
+ getDefaultOptions: (table) => {
1413
+ return {
1414
+ onGlobalFilterChange: makeStateUpdater("globalFilter", table),
1415
+ globalFilterFn: "auto",
1416
+ getColumnCanGlobalFilter: (column) => {
1417
+ var _table$getCoreRowMode;
1418
+ const value = (_table$getCoreRowMode = table.getCoreRowModel().flatRows[0]) == null || (_table$getCoreRowMode = _table$getCoreRowMode._getAllCellsByColumnId()[column.id]) == null ? void 0 : _table$getCoreRowMode.getValue();
1419
+ return typeof value === "string" || typeof value === "number";
1420
+ }
1421
+ };
1422
+ },
1423
+ createColumn: (column, table) => {
1424
+ column.getCanGlobalFilter = () => {
1425
+ var _column$columnDef$ena, _table$options$enable, _table$options$enable2, _table$options$getCol;
1426
+ return ((_column$columnDef$ena = column.columnDef.enableGlobalFilter) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableGlobalFilter) != null ? _table$options$enable : true) && ((_table$options$enable2 = table.options.enableFilters) != null ? _table$options$enable2 : true) && ((_table$options$getCol = table.options.getColumnCanGlobalFilter == null ? void 0 : table.options.getColumnCanGlobalFilter(column)) != null ? _table$options$getCol : true) && !!column.accessorFn;
1427
+ };
1428
+ },
1429
+ createTable: (table) => {
1430
+ table.getGlobalAutoFilterFn = () => {
1431
+ return filterFns.includesString;
1432
+ };
1433
+ table.getGlobalFilterFn = () => {
1434
+ var _table$options$filter, _table$options$filter2;
1435
+ const {
1436
+ globalFilterFn
1437
+ } = table.options;
1438
+ return isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === "auto" ? table.getGlobalAutoFilterFn() : (_table$options$filter = (_table$options$filter2 = table.options.filterFns) == null ? void 0 : _table$options$filter2[globalFilterFn]) != null ? _table$options$filter : filterFns[globalFilterFn];
1439
+ };
1440
+ table.setGlobalFilter = (updater) => {
1441
+ table.options.onGlobalFilterChange == null || table.options.onGlobalFilterChange(updater);
1442
+ };
1443
+ table.resetGlobalFilter = (defaultState) => {
1444
+ table.setGlobalFilter(defaultState ? void 0 : table.initialState.globalFilter);
1445
+ };
1446
+ }
1447
+ };
1448
+ const RowExpanding = {
1449
+ getInitialState: (state) => {
1450
+ return {
1451
+ expanded: {},
1452
+ ...state
1453
+ };
1454
+ },
1455
+ getDefaultOptions: (table) => {
1456
+ return {
1457
+ onExpandedChange: makeStateUpdater("expanded", table),
1458
+ paginateExpandedRows: true
1459
+ };
1460
+ },
1461
+ createTable: (table) => {
1462
+ let registered = false;
1463
+ let queued = false;
1464
+ table._autoResetExpanded = () => {
1465
+ var _ref, _table$options$autoRe;
1466
+ if (!registered) {
1467
+ table._queue(() => {
1468
+ registered = true;
1469
+ });
1470
+ return;
1471
+ }
1472
+ if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetExpanded) != null ? _ref : !table.options.manualExpanding) {
1473
+ if (queued) return;
1474
+ queued = true;
1475
+ table._queue(() => {
1476
+ table.resetExpanded();
1477
+ queued = false;
1478
+ });
1479
+ }
1480
+ };
1481
+ table.setExpanded = (updater) => table.options.onExpandedChange == null ? void 0 : table.options.onExpandedChange(updater);
1482
+ table.toggleAllRowsExpanded = (expanded) => {
1483
+ if (expanded != null ? expanded : !table.getIsAllRowsExpanded()) {
1484
+ table.setExpanded(true);
1485
+ } else {
1486
+ table.setExpanded({});
1487
+ }
1488
+ };
1489
+ table.resetExpanded = (defaultState) => {
1490
+ var _table$initialState$e, _table$initialState;
1491
+ table.setExpanded(defaultState ? {} : (_table$initialState$e = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.expanded) != null ? _table$initialState$e : {});
1492
+ };
1493
+ table.getCanSomeRowsExpand = () => {
1494
+ return table.getPrePaginationRowModel().flatRows.some((row) => row.getCanExpand());
1495
+ };
1496
+ table.getToggleAllRowsExpandedHandler = () => {
1497
+ return (e) => {
1498
+ e.persist == null || e.persist();
1499
+ table.toggleAllRowsExpanded();
1500
+ };
1501
+ };
1502
+ table.getIsSomeRowsExpanded = () => {
1503
+ const expanded = table.getState().expanded;
1504
+ return expanded === true || Object.values(expanded).some(Boolean);
1505
+ };
1506
+ table.getIsAllRowsExpanded = () => {
1507
+ const expanded = table.getState().expanded;
1508
+ if (typeof expanded === "boolean") {
1509
+ return expanded === true;
1510
+ }
1511
+ if (!Object.keys(expanded).length) {
1512
+ return false;
1513
+ }
1514
+ if (table.getRowModel().flatRows.some((row) => !row.getIsExpanded())) {
1515
+ return false;
1516
+ }
1517
+ return true;
1518
+ };
1519
+ table.getExpandedDepth = () => {
1520
+ let maxDepth = 0;
1521
+ const rowIds = table.getState().expanded === true ? Object.keys(table.getRowModel().rowsById) : Object.keys(table.getState().expanded);
1522
+ rowIds.forEach((id) => {
1523
+ const splitId = id.split(".");
1524
+ maxDepth = Math.max(maxDepth, splitId.length);
1525
+ });
1526
+ return maxDepth;
1527
+ };
1528
+ table.getPreExpandedRowModel = () => table.getSortedRowModel();
1529
+ table.getExpandedRowModel = () => {
1530
+ if (!table._getExpandedRowModel && table.options.getExpandedRowModel) {
1531
+ table._getExpandedRowModel = table.options.getExpandedRowModel(table);
1532
+ }
1533
+ if (table.options.manualExpanding || !table._getExpandedRowModel) {
1534
+ return table.getPreExpandedRowModel();
1535
+ }
1536
+ return table._getExpandedRowModel();
1537
+ };
1538
+ },
1539
+ createRow: (row, table) => {
1540
+ row.toggleExpanded = (expanded) => {
1541
+ table.setExpanded((old) => {
1542
+ var _expanded;
1543
+ const exists = old === true ? true : !!(old != null && old[row.id]);
1544
+ let oldExpanded = {};
1545
+ if (old === true) {
1546
+ Object.keys(table.getRowModel().rowsById).forEach((rowId) => {
1547
+ oldExpanded[rowId] = true;
1548
+ });
1549
+ } else {
1550
+ oldExpanded = old;
1551
+ }
1552
+ expanded = (_expanded = expanded) != null ? _expanded : !exists;
1553
+ if (!exists && expanded) {
1554
+ return {
1555
+ ...oldExpanded,
1556
+ [row.id]: true
1557
+ };
1558
+ }
1559
+ if (exists && !expanded) {
1560
+ const {
1561
+ [row.id]: _,
1562
+ ...rest
1563
+ } = oldExpanded;
1564
+ return rest;
1565
+ }
1566
+ return old;
1567
+ });
1568
+ };
1569
+ row.getIsExpanded = () => {
1570
+ var _table$options$getIsR;
1571
+ const expanded = table.getState().expanded;
1572
+ return !!((_table$options$getIsR = table.options.getIsRowExpanded == null ? void 0 : table.options.getIsRowExpanded(row)) != null ? _table$options$getIsR : expanded === true || (expanded == null ? void 0 : expanded[row.id]));
1573
+ };
1574
+ row.getCanExpand = () => {
1575
+ var _table$options$getRow, _table$options$enable, _row$subRows;
1576
+ return (_table$options$getRow = table.options.getRowCanExpand == null ? void 0 : table.options.getRowCanExpand(row)) != null ? _table$options$getRow : ((_table$options$enable = table.options.enableExpanding) != null ? _table$options$enable : true) && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
1577
+ };
1578
+ row.getIsAllParentsExpanded = () => {
1579
+ let isFullyExpanded = true;
1580
+ let currentRow = row;
1581
+ while (isFullyExpanded && currentRow.parentId) {
1582
+ currentRow = table.getRow(currentRow.parentId, true);
1583
+ isFullyExpanded = currentRow.getIsExpanded();
1584
+ }
1585
+ return isFullyExpanded;
1586
+ };
1587
+ row.getToggleExpandedHandler = () => {
1588
+ const canExpand = row.getCanExpand();
1589
+ return () => {
1590
+ if (!canExpand) return;
1591
+ row.toggleExpanded();
1592
+ };
1593
+ };
1594
+ }
1595
+ };
1596
+ const defaultPageIndex = 0;
1597
+ const defaultPageSize = 10;
1598
+ const getDefaultPaginationState = () => ({
1599
+ pageIndex: defaultPageIndex,
1600
+ pageSize: defaultPageSize
1601
+ });
1602
+ const RowPagination = {
1603
+ getInitialState: (state) => {
1604
+ return {
1605
+ ...state,
1606
+ pagination: {
1607
+ ...getDefaultPaginationState(),
1608
+ ...state == null ? void 0 : state.pagination
1609
+ }
1610
+ };
1611
+ },
1612
+ getDefaultOptions: (table) => {
1613
+ return {
1614
+ onPaginationChange: makeStateUpdater("pagination", table)
1615
+ };
1616
+ },
1617
+ createTable: (table) => {
1618
+ let registered = false;
1619
+ let queued = false;
1620
+ table._autoResetPageIndex = () => {
1621
+ var _ref, _table$options$autoRe;
1622
+ if (!registered) {
1623
+ table._queue(() => {
1624
+ registered = true;
1625
+ });
1626
+ return;
1627
+ }
1628
+ if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetPageIndex) != null ? _ref : !table.options.manualPagination) {
1629
+ if (queued) return;
1630
+ queued = true;
1631
+ table._queue(() => {
1632
+ table.resetPageIndex();
1633
+ queued = false;
1634
+ });
1635
+ }
1636
+ };
1637
+ table.setPagination = (updater) => {
1638
+ const safeUpdater = (old) => {
1639
+ let newState = functionalUpdate(updater, old);
1640
+ return newState;
1641
+ };
1642
+ return table.options.onPaginationChange == null ? void 0 : table.options.onPaginationChange(safeUpdater);
1643
+ };
1644
+ table.resetPagination = (defaultState) => {
1645
+ var _table$initialState$p;
1646
+ table.setPagination(defaultState ? getDefaultPaginationState() : (_table$initialState$p = table.initialState.pagination) != null ? _table$initialState$p : getDefaultPaginationState());
1647
+ };
1648
+ table.setPageIndex = (updater) => {
1649
+ table.setPagination((old) => {
1650
+ let pageIndex = functionalUpdate(updater, old.pageIndex);
1651
+ const maxPageIndex = typeof table.options.pageCount === "undefined" || table.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : table.options.pageCount - 1;
1652
+ pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex));
1653
+ return {
1654
+ ...old,
1655
+ pageIndex
1656
+ };
1657
+ });
1658
+ };
1659
+ table.resetPageIndex = (defaultState) => {
1660
+ var _table$initialState$p2, _table$initialState;
1661
+ table.setPageIndex(defaultState ? defaultPageIndex : (_table$initialState$p2 = (_table$initialState = table.initialState) == null || (_table$initialState = _table$initialState.pagination) == null ? void 0 : _table$initialState.pageIndex) != null ? _table$initialState$p2 : defaultPageIndex);
1662
+ };
1663
+ table.resetPageSize = (defaultState) => {
1664
+ var _table$initialState$p3, _table$initialState2;
1665
+ table.setPageSize(defaultState ? defaultPageSize : (_table$initialState$p3 = (_table$initialState2 = table.initialState) == null || (_table$initialState2 = _table$initialState2.pagination) == null ? void 0 : _table$initialState2.pageSize) != null ? _table$initialState$p3 : defaultPageSize);
1666
+ };
1667
+ table.setPageSize = (updater) => {
1668
+ table.setPagination((old) => {
1669
+ const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize));
1670
+ const topRowIndex = old.pageSize * old.pageIndex;
1671
+ const pageIndex = Math.floor(topRowIndex / pageSize);
1672
+ return {
1673
+ ...old,
1674
+ pageIndex,
1675
+ pageSize
1676
+ };
1677
+ });
1678
+ };
1679
+ table.setPageCount = (updater) => table.setPagination((old) => {
1680
+ var _table$options$pageCo;
1681
+ let newPageCount = functionalUpdate(updater, (_table$options$pageCo = table.options.pageCount) != null ? _table$options$pageCo : -1);
1682
+ if (typeof newPageCount === "number") {
1683
+ newPageCount = Math.max(-1, newPageCount);
1684
+ }
1685
+ return {
1686
+ ...old,
1687
+ pageCount: newPageCount
1688
+ };
1689
+ });
1690
+ table.getPageOptions = memo(() => [table.getPageCount()], (pageCount) => {
1691
+ let pageOptions = [];
1692
+ if (pageCount && pageCount > 0) {
1693
+ pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
1694
+ }
1695
+ return pageOptions;
1696
+ }, getMemoOptions(table.options, "debugTable", "getPageOptions"));
1697
+ table.getCanPreviousPage = () => table.getState().pagination.pageIndex > 0;
1698
+ table.getCanNextPage = () => {
1699
+ const {
1700
+ pageIndex
1701
+ } = table.getState().pagination;
1702
+ const pageCount = table.getPageCount();
1703
+ if (pageCount === -1) {
1704
+ return true;
1705
+ }
1706
+ if (pageCount === 0) {
1707
+ return false;
1708
+ }
1709
+ return pageIndex < pageCount - 1;
1710
+ };
1711
+ table.previousPage = () => {
1712
+ return table.setPageIndex((old) => old - 1);
1713
+ };
1714
+ table.nextPage = () => {
1715
+ return table.setPageIndex((old) => {
1716
+ return old + 1;
1717
+ });
1718
+ };
1719
+ table.firstPage = () => {
1720
+ return table.setPageIndex(0);
1721
+ };
1722
+ table.lastPage = () => {
1723
+ return table.setPageIndex(table.getPageCount() - 1);
1724
+ };
1725
+ table.getPrePaginationRowModel = () => table.getExpandedRowModel();
1726
+ table.getPaginationRowModel = () => {
1727
+ if (!table._getPaginationRowModel && table.options.getPaginationRowModel) {
1728
+ table._getPaginationRowModel = table.options.getPaginationRowModel(table);
1729
+ }
1730
+ if (table.options.manualPagination || !table._getPaginationRowModel) {
1731
+ return table.getPrePaginationRowModel();
1732
+ }
1733
+ return table._getPaginationRowModel();
1734
+ };
1735
+ table.getPageCount = () => {
1736
+ var _table$options$pageCo2;
1737
+ return (_table$options$pageCo2 = table.options.pageCount) != null ? _table$options$pageCo2 : Math.ceil(table.getRowCount() / table.getState().pagination.pageSize);
1738
+ };
1739
+ table.getRowCount = () => {
1740
+ var _table$options$rowCou;
1741
+ return (_table$options$rowCou = table.options.rowCount) != null ? _table$options$rowCou : table.getPrePaginationRowModel().rows.length;
1742
+ };
1743
+ }
1744
+ };
1745
+ const getDefaultRowPinningState = () => ({
1746
+ top: [],
1747
+ bottom: []
1748
+ });
1749
+ const RowPinning = {
1750
+ getInitialState: (state) => {
1751
+ return {
1752
+ rowPinning: getDefaultRowPinningState(),
1753
+ ...state
1754
+ };
1755
+ },
1756
+ getDefaultOptions: (table) => {
1757
+ return {
1758
+ onRowPinningChange: makeStateUpdater("rowPinning", table)
1759
+ };
1760
+ },
1761
+ createRow: (row, table) => {
1762
+ row.pin = (position, includeLeafRows, includeParentRows) => {
1763
+ const leafRowIds = includeLeafRows ? row.getLeafRows().map((_ref) => {
1764
+ let {
1765
+ id
1766
+ } = _ref;
1767
+ return id;
1768
+ }) : [];
1769
+ const parentRowIds = includeParentRows ? row.getParentRows().map((_ref2) => {
1770
+ let {
1771
+ id
1772
+ } = _ref2;
1773
+ return id;
1774
+ }) : [];
1775
+ const rowIds = /* @__PURE__ */ new Set([...parentRowIds, row.id, ...leafRowIds]);
1776
+ table.setRowPinning((old) => {
1777
+ var _old$top3, _old$bottom3;
1778
+ if (position === "bottom") {
1779
+ var _old$top, _old$bottom;
1780
+ return {
1781
+ top: ((_old$top = old == null ? void 0 : old.top) != null ? _old$top : []).filter((d) => !(rowIds != null && rowIds.has(d))),
1782
+ bottom: [...((_old$bottom = old == null ? void 0 : old.bottom) != null ? _old$bottom : []).filter((d) => !(rowIds != null && rowIds.has(d))), ...Array.from(rowIds)]
1783
+ };
1784
+ }
1785
+ if (position === "top") {
1786
+ var _old$top2, _old$bottom2;
1787
+ return {
1788
+ top: [...((_old$top2 = old == null ? void 0 : old.top) != null ? _old$top2 : []).filter((d) => !(rowIds != null && rowIds.has(d))), ...Array.from(rowIds)],
1789
+ bottom: ((_old$bottom2 = old == null ? void 0 : old.bottom) != null ? _old$bottom2 : []).filter((d) => !(rowIds != null && rowIds.has(d)))
1790
+ };
1791
+ }
1792
+ return {
1793
+ top: ((_old$top3 = old == null ? void 0 : old.top) != null ? _old$top3 : []).filter((d) => !(rowIds != null && rowIds.has(d))),
1794
+ bottom: ((_old$bottom3 = old == null ? void 0 : old.bottom) != null ? _old$bottom3 : []).filter((d) => !(rowIds != null && rowIds.has(d)))
1795
+ };
1796
+ });
1797
+ };
1798
+ row.getCanPin = () => {
1799
+ var _ref3;
1800
+ const {
1801
+ enableRowPinning,
1802
+ enablePinning
1803
+ } = table.options;
1804
+ if (typeof enableRowPinning === "function") {
1805
+ return enableRowPinning(row);
1806
+ }
1807
+ return (_ref3 = enableRowPinning != null ? enableRowPinning : enablePinning) != null ? _ref3 : true;
1808
+ };
1809
+ row.getIsPinned = () => {
1810
+ const rowIds = [row.id];
1811
+ const {
1812
+ top,
1813
+ bottom
1814
+ } = table.getState().rowPinning;
1815
+ const isTop = rowIds.some((d) => top == null ? void 0 : top.includes(d));
1816
+ const isBottom = rowIds.some((d) => bottom == null ? void 0 : bottom.includes(d));
1817
+ return isTop ? "top" : isBottom ? "bottom" : false;
1818
+ };
1819
+ row.getPinnedIndex = () => {
1820
+ var _ref4, _visiblePinnedRowIds$;
1821
+ const position = row.getIsPinned();
1822
+ if (!position) return -1;
1823
+ const visiblePinnedRowIds = (_ref4 = position === "top" ? table.getTopRows() : table.getBottomRows()) == null ? void 0 : _ref4.map((_ref5) => {
1824
+ let {
1825
+ id
1826
+ } = _ref5;
1827
+ return id;
1828
+ });
1829
+ return (_visiblePinnedRowIds$ = visiblePinnedRowIds == null ? void 0 : visiblePinnedRowIds.indexOf(row.id)) != null ? _visiblePinnedRowIds$ : -1;
1830
+ };
1831
+ },
1832
+ createTable: (table) => {
1833
+ table.setRowPinning = (updater) => table.options.onRowPinningChange == null ? void 0 : table.options.onRowPinningChange(updater);
1834
+ table.resetRowPinning = (defaultState) => {
1835
+ var _table$initialState$r, _table$initialState;
1836
+ return table.setRowPinning(defaultState ? getDefaultRowPinningState() : (_table$initialState$r = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.rowPinning) != null ? _table$initialState$r : getDefaultRowPinningState());
1837
+ };
1838
+ table.getIsSomeRowsPinned = (position) => {
1839
+ var _pinningState$positio;
1840
+ const pinningState = table.getState().rowPinning;
1841
+ if (!position) {
1842
+ var _pinningState$top, _pinningState$bottom;
1843
+ return Boolean(((_pinningState$top = pinningState.top) == null ? void 0 : _pinningState$top.length) || ((_pinningState$bottom = pinningState.bottom) == null ? void 0 : _pinningState$bottom.length));
1844
+ }
1845
+ return Boolean((_pinningState$positio = pinningState[position]) == null ? void 0 : _pinningState$positio.length);
1846
+ };
1847
+ table._getPinnedRows = (visibleRows, pinnedRowIds, position) => {
1848
+ var _table$options$keepPi;
1849
+ const rows = ((_table$options$keepPi = table.options.keepPinnedRows) != null ? _table$options$keepPi : true) ? (
1850
+ //get all rows that are pinned even if they would not be otherwise visible
1851
+ //account for expanded parent rows, but not pagination or filtering
1852
+ (pinnedRowIds != null ? pinnedRowIds : []).map((rowId) => {
1853
+ const row = table.getRow(rowId, true);
1854
+ return row.getIsAllParentsExpanded() ? row : null;
1855
+ })
1856
+ ) : (
1857
+ //else get only visible rows that are pinned
1858
+ (pinnedRowIds != null ? pinnedRowIds : []).map((rowId) => visibleRows.find((row) => row.id === rowId))
1859
+ );
1860
+ return rows.filter(Boolean).map((d) => ({
1861
+ ...d,
1862
+ position
1863
+ }));
1864
+ };
1865
+ table.getTopRows = memo(() => [table.getRowModel().rows, table.getState().rowPinning.top], (allRows, topPinnedRowIds) => table._getPinnedRows(allRows, topPinnedRowIds, "top"), getMemoOptions(table.options, "debugRows", "getTopRows"));
1866
+ table.getBottomRows = memo(() => [table.getRowModel().rows, table.getState().rowPinning.bottom], (allRows, bottomPinnedRowIds) => table._getPinnedRows(allRows, bottomPinnedRowIds, "bottom"), getMemoOptions(table.options, "debugRows", "getBottomRows"));
1867
+ table.getCenterRows = memo(() => [table.getRowModel().rows, table.getState().rowPinning.top, table.getState().rowPinning.bottom], (allRows, top, bottom) => {
1868
+ const topAndBottom = /* @__PURE__ */ new Set([...top != null ? top : [], ...bottom != null ? bottom : []]);
1869
+ return allRows.filter((d) => !topAndBottom.has(d.id));
1870
+ }, getMemoOptions(table.options, "debugRows", "getCenterRows"));
1871
+ }
1872
+ };
1873
+ const RowSelection = {
1874
+ getInitialState: (state) => {
1875
+ return {
1876
+ rowSelection: {},
1877
+ ...state
1878
+ };
1879
+ },
1880
+ getDefaultOptions: (table) => {
1881
+ return {
1882
+ onRowSelectionChange: makeStateUpdater("rowSelection", table),
1883
+ enableRowSelection: true,
1884
+ enableMultiRowSelection: true,
1885
+ enableSubRowSelection: true
1886
+ // enableGroupingRowSelection: false,
1887
+ // isAdditiveSelectEvent: (e: unknown) => !!e.metaKey,
1888
+ // isInclusiveSelectEvent: (e: unknown) => !!e.shiftKey,
1889
+ };
1890
+ },
1891
+ createTable: (table) => {
1892
+ table.setRowSelection = (updater) => table.options.onRowSelectionChange == null ? void 0 : table.options.onRowSelectionChange(updater);
1893
+ table.resetRowSelection = (defaultState) => {
1894
+ var _table$initialState$r;
1895
+ return table.setRowSelection(defaultState ? {} : (_table$initialState$r = table.initialState.rowSelection) != null ? _table$initialState$r : {});
1896
+ };
1897
+ table.toggleAllRowsSelected = (value) => {
1898
+ table.setRowSelection((old) => {
1899
+ value = typeof value !== "undefined" ? value : !table.getIsAllRowsSelected();
1900
+ const rowSelection = {
1901
+ ...old
1902
+ };
1903
+ const preGroupedFlatRows = table.getPreGroupedRowModel().flatRows;
1904
+ if (value) {
1905
+ preGroupedFlatRows.forEach((row) => {
1906
+ if (!row.getCanSelect()) {
1907
+ return;
1908
+ }
1909
+ rowSelection[row.id] = true;
1910
+ });
1911
+ } else {
1912
+ preGroupedFlatRows.forEach((row) => {
1913
+ delete rowSelection[row.id];
1914
+ });
1915
+ }
1916
+ return rowSelection;
1917
+ });
1918
+ };
1919
+ table.toggleAllPageRowsSelected = (value) => table.setRowSelection((old) => {
1920
+ const resolvedValue = typeof value !== "undefined" ? value : !table.getIsAllPageRowsSelected();
1921
+ const rowSelection = {
1922
+ ...old
1923
+ };
1924
+ table.getRowModel().rows.forEach((row) => {
1925
+ mutateRowIsSelected(rowSelection, row.id, resolvedValue, true, table);
1926
+ });
1927
+ return rowSelection;
1928
+ });
1929
+ table.getPreSelectedRowModel = () => table.getCoreRowModel();
1930
+ table.getSelectedRowModel = memo(() => [table.getState().rowSelection, table.getCoreRowModel()], (rowSelection, rowModel) => {
1931
+ if (!Object.keys(rowSelection).length) {
1932
+ return {
1933
+ rows: [],
1934
+ flatRows: [],
1935
+ rowsById: {}
1936
+ };
1937
+ }
1938
+ return selectRowsFn(table, rowModel);
1939
+ }, getMemoOptions(table.options, "debugTable", "getSelectedRowModel"));
1940
+ table.getFilteredSelectedRowModel = memo(() => [table.getState().rowSelection, table.getFilteredRowModel()], (rowSelection, rowModel) => {
1941
+ if (!Object.keys(rowSelection).length) {
1942
+ return {
1943
+ rows: [],
1944
+ flatRows: [],
1945
+ rowsById: {}
1946
+ };
1947
+ }
1948
+ return selectRowsFn(table, rowModel);
1949
+ }, getMemoOptions(table.options, "debugTable", "getFilteredSelectedRowModel"));
1950
+ table.getGroupedSelectedRowModel = memo(() => [table.getState().rowSelection, table.getSortedRowModel()], (rowSelection, rowModel) => {
1951
+ if (!Object.keys(rowSelection).length) {
1952
+ return {
1953
+ rows: [],
1954
+ flatRows: [],
1955
+ rowsById: {}
1956
+ };
1957
+ }
1958
+ return selectRowsFn(table, rowModel);
1959
+ }, getMemoOptions(table.options, "debugTable", "getGroupedSelectedRowModel"));
1960
+ table.getIsAllRowsSelected = () => {
1961
+ const preGroupedFlatRows = table.getFilteredRowModel().flatRows;
1962
+ const {
1963
+ rowSelection
1964
+ } = table.getState();
1965
+ let isAllRowsSelected = Boolean(preGroupedFlatRows.length && Object.keys(rowSelection).length);
1966
+ if (isAllRowsSelected) {
1967
+ if (preGroupedFlatRows.some((row) => row.getCanSelect() && !rowSelection[row.id])) {
1968
+ isAllRowsSelected = false;
1969
+ }
1970
+ }
1971
+ return isAllRowsSelected;
1972
+ };
1973
+ table.getIsAllPageRowsSelected = () => {
1974
+ const paginationFlatRows = table.getPaginationRowModel().flatRows.filter((row) => row.getCanSelect());
1975
+ const {
1976
+ rowSelection
1977
+ } = table.getState();
1978
+ let isAllPageRowsSelected = !!paginationFlatRows.length;
1979
+ if (isAllPageRowsSelected && paginationFlatRows.some((row) => !rowSelection[row.id])) {
1980
+ isAllPageRowsSelected = false;
1981
+ }
1982
+ return isAllPageRowsSelected;
1983
+ };
1984
+ table.getIsSomeRowsSelected = () => {
1985
+ var _table$getState$rowSe;
1986
+ const totalSelected = Object.keys((_table$getState$rowSe = table.getState().rowSelection) != null ? _table$getState$rowSe : {}).length;
1987
+ return totalSelected > 0 && totalSelected < table.getFilteredRowModel().flatRows.length;
1988
+ };
1989
+ table.getIsSomePageRowsSelected = () => {
1990
+ const paginationFlatRows = table.getPaginationRowModel().flatRows;
1991
+ return table.getIsAllPageRowsSelected() ? false : paginationFlatRows.filter((row) => row.getCanSelect()).some((d) => d.getIsSelected() || d.getIsSomeSelected());
1992
+ };
1993
+ table.getToggleAllRowsSelectedHandler = () => {
1994
+ return (e) => {
1995
+ table.toggleAllRowsSelected(e.target.checked);
1996
+ };
1997
+ };
1998
+ table.getToggleAllPageRowsSelectedHandler = () => {
1999
+ return (e) => {
2000
+ table.toggleAllPageRowsSelected(e.target.checked);
2001
+ };
2002
+ };
2003
+ },
2004
+ createRow: (row, table) => {
2005
+ row.toggleSelected = (value, opts) => {
2006
+ const isSelected = row.getIsSelected();
2007
+ table.setRowSelection((old) => {
2008
+ var _opts$selectChildren;
2009
+ value = typeof value !== "undefined" ? value : !isSelected;
2010
+ if (row.getCanSelect() && isSelected === value) {
2011
+ return old;
2012
+ }
2013
+ const selectedRowIds = {
2014
+ ...old
2015
+ };
2016
+ mutateRowIsSelected(selectedRowIds, row.id, value, (_opts$selectChildren = opts == null ? void 0 : opts.selectChildren) != null ? _opts$selectChildren : true, table);
2017
+ return selectedRowIds;
2018
+ });
2019
+ };
2020
+ row.getIsSelected = () => {
2021
+ const {
2022
+ rowSelection
2023
+ } = table.getState();
2024
+ return isRowSelected(row, rowSelection);
2025
+ };
2026
+ row.getIsSomeSelected = () => {
2027
+ const {
2028
+ rowSelection
2029
+ } = table.getState();
2030
+ return isSubRowSelected(row, rowSelection) === "some";
2031
+ };
2032
+ row.getIsAllSubRowsSelected = () => {
2033
+ const {
2034
+ rowSelection
2035
+ } = table.getState();
2036
+ return isSubRowSelected(row, rowSelection) === "all";
2037
+ };
2038
+ row.getCanSelect = () => {
2039
+ var _table$options$enable;
2040
+ if (typeof table.options.enableRowSelection === "function") {
2041
+ return table.options.enableRowSelection(row);
2042
+ }
2043
+ return (_table$options$enable = table.options.enableRowSelection) != null ? _table$options$enable : true;
2044
+ };
2045
+ row.getCanSelectSubRows = () => {
2046
+ var _table$options$enable2;
2047
+ if (typeof table.options.enableSubRowSelection === "function") {
2048
+ return table.options.enableSubRowSelection(row);
2049
+ }
2050
+ return (_table$options$enable2 = table.options.enableSubRowSelection) != null ? _table$options$enable2 : true;
2051
+ };
2052
+ row.getCanMultiSelect = () => {
2053
+ var _table$options$enable3;
2054
+ if (typeof table.options.enableMultiRowSelection === "function") {
2055
+ return table.options.enableMultiRowSelection(row);
2056
+ }
2057
+ return (_table$options$enable3 = table.options.enableMultiRowSelection) != null ? _table$options$enable3 : true;
2058
+ };
2059
+ row.getToggleSelectedHandler = () => {
2060
+ const canSelect = row.getCanSelect();
2061
+ return (e) => {
2062
+ var _target;
2063
+ if (!canSelect) return;
2064
+ row.toggleSelected((_target = e.target) == null ? void 0 : _target.checked);
2065
+ };
2066
+ };
2067
+ }
2068
+ };
2069
+ const mutateRowIsSelected = (selectedRowIds, id, value, includeChildren, table) => {
2070
+ var _row$subRows;
2071
+ const row = table.getRow(id, true);
2072
+ if (value) {
2073
+ if (!row.getCanMultiSelect()) {
2074
+ Object.keys(selectedRowIds).forEach((key) => delete selectedRowIds[key]);
2075
+ }
2076
+ if (row.getCanSelect()) {
2077
+ selectedRowIds[id] = true;
2078
+ }
2079
+ } else {
2080
+ delete selectedRowIds[id];
2081
+ }
2082
+ if (includeChildren && (_row$subRows = row.subRows) != null && _row$subRows.length && row.getCanSelectSubRows()) {
2083
+ row.subRows.forEach((row2) => mutateRowIsSelected(selectedRowIds, row2.id, value, includeChildren, table));
2084
+ }
2085
+ };
2086
+ function selectRowsFn(table, rowModel) {
2087
+ const rowSelection = table.getState().rowSelection;
2088
+ const newSelectedFlatRows = [];
2089
+ const newSelectedRowsById = {};
2090
+ const recurseRows = function(rows, depth) {
2091
+ return rows.map((row) => {
2092
+ var _row$subRows2;
2093
+ const isSelected = isRowSelected(row, rowSelection);
2094
+ if (isSelected) {
2095
+ newSelectedFlatRows.push(row);
2096
+ newSelectedRowsById[row.id] = row;
2097
+ }
2098
+ if ((_row$subRows2 = row.subRows) != null && _row$subRows2.length) {
2099
+ row = {
2100
+ ...row,
2101
+ subRows: recurseRows(row.subRows)
2102
+ };
2103
+ }
2104
+ if (isSelected) {
2105
+ return row;
2106
+ }
2107
+ }).filter(Boolean);
2108
+ };
2109
+ return {
2110
+ rows: recurseRows(rowModel.rows),
2111
+ flatRows: newSelectedFlatRows,
2112
+ rowsById: newSelectedRowsById
2113
+ };
2114
+ }
2115
+ function isRowSelected(row, selection) {
2116
+ var _selection$row$id;
2117
+ return (_selection$row$id = selection[row.id]) != null ? _selection$row$id : false;
2118
+ }
2119
+ function isSubRowSelected(row, selection, table) {
2120
+ var _row$subRows3;
2121
+ if (!((_row$subRows3 = row.subRows) != null && _row$subRows3.length)) return false;
2122
+ let allChildrenSelected = true;
2123
+ let someSelected = false;
2124
+ row.subRows.forEach((subRow) => {
2125
+ if (someSelected && !allChildrenSelected) {
2126
+ return;
2127
+ }
2128
+ if (subRow.getCanSelect()) {
2129
+ if (isRowSelected(subRow, selection)) {
2130
+ someSelected = true;
2131
+ } else {
2132
+ allChildrenSelected = false;
2133
+ }
2134
+ }
2135
+ if (subRow.subRows && subRow.subRows.length) {
2136
+ const subRowChildrenSelected = isSubRowSelected(subRow, selection);
2137
+ if (subRowChildrenSelected === "all") {
2138
+ someSelected = true;
2139
+ } else if (subRowChildrenSelected === "some") {
2140
+ someSelected = true;
2141
+ allChildrenSelected = false;
2142
+ } else {
2143
+ allChildrenSelected = false;
2144
+ }
2145
+ }
2146
+ });
2147
+ return allChildrenSelected ? "all" : someSelected ? "some" : false;
2148
+ }
2149
+ const reSplitAlphaNumeric = /([0-9]+)/gm;
2150
+ const alphanumeric = (rowA, rowB, columnId) => {
2151
+ return compareAlphanumeric(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
2152
+ };
2153
+ const alphanumericCaseSensitive = (rowA, rowB, columnId) => {
2154
+ return compareAlphanumeric(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
2155
+ };
2156
+ const text = (rowA, rowB, columnId) => {
2157
+ return compareBasic(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
2158
+ };
2159
+ const textCaseSensitive = (rowA, rowB, columnId) => {
2160
+ return compareBasic(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
2161
+ };
2162
+ const datetime = (rowA, rowB, columnId) => {
2163
+ const a = rowA.getValue(columnId);
2164
+ const b = rowB.getValue(columnId);
2165
+ return a > b ? 1 : a < b ? -1 : 0;
2166
+ };
2167
+ const basic = (rowA, rowB, columnId) => {
2168
+ return compareBasic(rowA.getValue(columnId), rowB.getValue(columnId));
2169
+ };
2170
+ function compareBasic(a, b) {
2171
+ return a === b ? 0 : a > b ? 1 : -1;
2172
+ }
2173
+ function toString(a) {
2174
+ if (typeof a === "number") {
2175
+ if (isNaN(a) || a === Infinity || a === -Infinity) {
2176
+ return "";
2177
+ }
2178
+ return String(a);
2179
+ }
2180
+ if (typeof a === "string") {
2181
+ return a;
2182
+ }
2183
+ return "";
2184
+ }
2185
+ function compareAlphanumeric(aStr, bStr) {
2186
+ const a = aStr.split(reSplitAlphaNumeric).filter(Boolean);
2187
+ const b = bStr.split(reSplitAlphaNumeric).filter(Boolean);
2188
+ while (a.length && b.length) {
2189
+ const aa = a.shift();
2190
+ const bb = b.shift();
2191
+ const an = parseInt(aa, 10);
2192
+ const bn = parseInt(bb, 10);
2193
+ const combo = [an, bn].sort();
2194
+ if (isNaN(combo[0])) {
2195
+ if (aa > bb) {
2196
+ return 1;
2197
+ }
2198
+ if (bb > aa) {
2199
+ return -1;
2200
+ }
2201
+ continue;
2202
+ }
2203
+ if (isNaN(combo[1])) {
2204
+ return isNaN(an) ? -1 : 1;
2205
+ }
2206
+ if (an > bn) {
2207
+ return 1;
2208
+ }
2209
+ if (bn > an) {
2210
+ return -1;
2211
+ }
2212
+ }
2213
+ return a.length - b.length;
2214
+ }
2215
+ const sortingFns = {
2216
+ alphanumeric,
2217
+ alphanumericCaseSensitive,
2218
+ text,
2219
+ textCaseSensitive,
2220
+ datetime,
2221
+ basic
2222
+ };
2223
+ const RowSorting = {
2224
+ getInitialState: (state) => {
2225
+ return {
2226
+ sorting: [],
2227
+ ...state
2228
+ };
2229
+ },
2230
+ getDefaultColumnDef: () => {
2231
+ return {
2232
+ sortingFn: "auto",
2233
+ sortUndefined: 1
2234
+ };
2235
+ },
2236
+ getDefaultOptions: (table) => {
2237
+ return {
2238
+ onSortingChange: makeStateUpdater("sorting", table),
2239
+ isMultiSortEvent: (e) => {
2240
+ return e.shiftKey;
2241
+ }
2242
+ };
2243
+ },
2244
+ createColumn: (column, table) => {
2245
+ column.getAutoSortingFn = () => {
2246
+ const firstRows = table.getFilteredRowModel().flatRows.slice(10);
2247
+ let isString = false;
2248
+ for (const row of firstRows) {
2249
+ const value = row == null ? void 0 : row.getValue(column.id);
2250
+ if (Object.prototype.toString.call(value) === "[object Date]") {
2251
+ return sortingFns.datetime;
2252
+ }
2253
+ if (typeof value === "string") {
2254
+ isString = true;
2255
+ if (value.split(reSplitAlphaNumeric).length > 1) {
2256
+ return sortingFns.alphanumeric;
2257
+ }
2258
+ }
2259
+ }
2260
+ if (isString) {
2261
+ return sortingFns.text;
2262
+ }
2263
+ return sortingFns.basic;
2264
+ };
2265
+ column.getAutoSortDir = () => {
2266
+ const firstRow = table.getFilteredRowModel().flatRows[0];
2267
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
2268
+ if (typeof value === "string") {
2269
+ return "asc";
2270
+ }
2271
+ return "desc";
2272
+ };
2273
+ column.getSortingFn = () => {
2274
+ var _table$options$sortin, _table$options$sortin2;
2275
+ if (!column) {
2276
+ throw new Error();
2277
+ }
2278
+ return isFunction(column.columnDef.sortingFn) ? column.columnDef.sortingFn : column.columnDef.sortingFn === "auto" ? column.getAutoSortingFn() : (_table$options$sortin = (_table$options$sortin2 = table.options.sortingFns) == null ? void 0 : _table$options$sortin2[column.columnDef.sortingFn]) != null ? _table$options$sortin : sortingFns[column.columnDef.sortingFn];
2279
+ };
2280
+ column.toggleSorting = (desc, multi) => {
2281
+ const nextSortingOrder = column.getNextSortingOrder();
2282
+ const hasManualValue = typeof desc !== "undefined" && desc !== null;
2283
+ table.setSorting((old) => {
2284
+ const existingSorting = old == null ? void 0 : old.find((d) => d.id === column.id);
2285
+ const existingIndex = old == null ? void 0 : old.findIndex((d) => d.id === column.id);
2286
+ let newSorting = [];
2287
+ let sortAction;
2288
+ let nextDesc = hasManualValue ? desc : nextSortingOrder === "desc";
2289
+ if (old != null && old.length && column.getCanMultiSort() && multi) {
2290
+ if (existingSorting) {
2291
+ sortAction = "toggle";
2292
+ } else {
2293
+ sortAction = "add";
2294
+ }
2295
+ } else {
2296
+ if (old != null && old.length && existingIndex !== old.length - 1) {
2297
+ sortAction = "replace";
2298
+ } else if (existingSorting) {
2299
+ sortAction = "toggle";
2300
+ } else {
2301
+ sortAction = "replace";
2302
+ }
2303
+ }
2304
+ if (sortAction === "toggle") {
2305
+ if (!hasManualValue) {
2306
+ if (!nextSortingOrder) {
2307
+ sortAction = "remove";
2308
+ }
2309
+ }
2310
+ }
2311
+ if (sortAction === "add") {
2312
+ var _table$options$maxMul;
2313
+ newSorting = [...old, {
2314
+ id: column.id,
2315
+ desc: nextDesc
2316
+ }];
2317
+ newSorting.splice(0, newSorting.length - ((_table$options$maxMul = table.options.maxMultiSortColCount) != null ? _table$options$maxMul : Number.MAX_SAFE_INTEGER));
2318
+ } else if (sortAction === "toggle") {
2319
+ newSorting = old.map((d) => {
2320
+ if (d.id === column.id) {
2321
+ return {
2322
+ ...d,
2323
+ desc: nextDesc
2324
+ };
2325
+ }
2326
+ return d;
2327
+ });
2328
+ } else if (sortAction === "remove") {
2329
+ newSorting = old.filter((d) => d.id !== column.id);
2330
+ } else {
2331
+ newSorting = [{
2332
+ id: column.id,
2333
+ desc: nextDesc
2334
+ }];
2335
+ }
2336
+ return newSorting;
2337
+ });
2338
+ };
2339
+ column.getFirstSortDir = () => {
2340
+ var _ref, _column$columnDef$sor;
2341
+ const sortDescFirst = (_ref = (_column$columnDef$sor = column.columnDef.sortDescFirst) != null ? _column$columnDef$sor : table.options.sortDescFirst) != null ? _ref : column.getAutoSortDir() === "desc";
2342
+ return sortDescFirst ? "desc" : "asc";
2343
+ };
2344
+ column.getNextSortingOrder = (multi) => {
2345
+ var _table$options$enable, _table$options$enable2;
2346
+ const firstSortDirection = column.getFirstSortDir();
2347
+ const isSorted = column.getIsSorted();
2348
+ if (!isSorted) {
2349
+ return firstSortDirection;
2350
+ }
2351
+ if (isSorted !== firstSortDirection && ((_table$options$enable = table.options.enableSortingRemoval) != null ? _table$options$enable : true) && // If enableSortRemove, enable in general
2352
+ (multi ? (_table$options$enable2 = table.options.enableMultiRemove) != null ? _table$options$enable2 : true : true)) {
2353
+ return false;
2354
+ }
2355
+ return isSorted === "desc" ? "asc" : "desc";
2356
+ };
2357
+ column.getCanSort = () => {
2358
+ var _column$columnDef$ena, _table$options$enable3;
2359
+ return ((_column$columnDef$ena = column.columnDef.enableSorting) != null ? _column$columnDef$ena : true) && ((_table$options$enable3 = table.options.enableSorting) != null ? _table$options$enable3 : true) && !!column.accessorFn;
2360
+ };
2361
+ column.getCanMultiSort = () => {
2362
+ var _ref2, _column$columnDef$ena2;
2363
+ return (_ref2 = (_column$columnDef$ena2 = column.columnDef.enableMultiSort) != null ? _column$columnDef$ena2 : table.options.enableMultiSort) != null ? _ref2 : !!column.accessorFn;
2364
+ };
2365
+ column.getIsSorted = () => {
2366
+ var _table$getState$sorti;
2367
+ const columnSort = (_table$getState$sorti = table.getState().sorting) == null ? void 0 : _table$getState$sorti.find((d) => d.id === column.id);
2368
+ return !columnSort ? false : columnSort.desc ? "desc" : "asc";
2369
+ };
2370
+ column.getSortIndex = () => {
2371
+ var _table$getState$sorti2, _table$getState$sorti3;
2372
+ return (_table$getState$sorti2 = (_table$getState$sorti3 = table.getState().sorting) == null ? void 0 : _table$getState$sorti3.findIndex((d) => d.id === column.id)) != null ? _table$getState$sorti2 : -1;
2373
+ };
2374
+ column.clearSorting = () => {
2375
+ table.setSorting((old) => old != null && old.length ? old.filter((d) => d.id !== column.id) : []);
2376
+ };
2377
+ column.getToggleSortingHandler = () => {
2378
+ const canSort = column.getCanSort();
2379
+ return (e) => {
2380
+ if (!canSort) return;
2381
+ e.persist == null || e.persist();
2382
+ column.toggleSorting == null || column.toggleSorting(void 0, column.getCanMultiSort() ? table.options.isMultiSortEvent == null ? void 0 : table.options.isMultiSortEvent(e) : false);
2383
+ };
2384
+ };
2385
+ },
2386
+ createTable: (table) => {
2387
+ table.setSorting = (updater) => table.options.onSortingChange == null ? void 0 : table.options.onSortingChange(updater);
2388
+ table.resetSorting = (defaultState) => {
2389
+ var _table$initialState$s, _table$initialState;
2390
+ table.setSorting(defaultState ? [] : (_table$initialState$s = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.sorting) != null ? _table$initialState$s : []);
2391
+ };
2392
+ table.getPreSortedRowModel = () => table.getGroupedRowModel();
2393
+ table.getSortedRowModel = () => {
2394
+ if (!table._getSortedRowModel && table.options.getSortedRowModel) {
2395
+ table._getSortedRowModel = table.options.getSortedRowModel(table);
2396
+ }
2397
+ if (table.options.manualSorting || !table._getSortedRowModel) {
2398
+ return table.getPreSortedRowModel();
2399
+ }
2400
+ return table._getSortedRowModel();
2401
+ };
2402
+ }
2403
+ };
2404
+ const builtInFeatures = [
2405
+ Headers,
2406
+ ColumnVisibility,
2407
+ ColumnOrdering,
2408
+ ColumnPinning,
2409
+ ColumnFaceting,
2410
+ ColumnFiltering,
2411
+ GlobalFaceting,
2412
+ //depends on ColumnFaceting
2413
+ GlobalFiltering,
2414
+ //depends on ColumnFiltering
2415
+ RowSorting,
2416
+ ColumnGrouping,
2417
+ //depends on RowSorting
2418
+ RowExpanding,
2419
+ RowPagination,
2420
+ RowPinning,
2421
+ RowSelection,
2422
+ ColumnSizing
2423
+ ];
2424
+ function createTable(options) {
2425
+ var _options$_features, _options$initialState;
2426
+ if (process.env.NODE_ENV !== "production" && (options.debugAll || options.debugTable)) {
2427
+ console.info("Creating Table Instance...");
2428
+ }
2429
+ const _features = [...builtInFeatures, ...(_options$_features = options._features) != null ? _options$_features : []];
2430
+ let table = {
2431
+ _features
2432
+ };
2433
+ const defaultOptions = table._features.reduce((obj, feature) => {
2434
+ return Object.assign(obj, feature.getDefaultOptions == null ? void 0 : feature.getDefaultOptions(table));
2435
+ }, {});
2436
+ const mergeOptions = (options2) => {
2437
+ if (table.options.mergeOptions) {
2438
+ return table.options.mergeOptions(defaultOptions, options2);
2439
+ }
2440
+ return {
2441
+ ...defaultOptions,
2442
+ ...options2
2443
+ };
2444
+ };
2445
+ const coreInitialState = {};
2446
+ let initialState = {
2447
+ ...coreInitialState,
2448
+ ...(_options$initialState = options.initialState) != null ? _options$initialState : {}
2449
+ };
2450
+ table._features.forEach((feature) => {
2451
+ var _feature$getInitialSt;
2452
+ initialState = (_feature$getInitialSt = feature.getInitialState == null ? void 0 : feature.getInitialState(initialState)) != null ? _feature$getInitialSt : initialState;
2453
+ });
2454
+ const queued = [];
2455
+ let queuedTimeout = false;
2456
+ const coreInstance = {
2457
+ _features,
2458
+ options: {
2459
+ ...defaultOptions,
2460
+ ...options
2461
+ },
2462
+ initialState,
2463
+ _queue: (cb) => {
2464
+ queued.push(cb);
2465
+ if (!queuedTimeout) {
2466
+ queuedTimeout = true;
2467
+ Promise.resolve().then(() => {
2468
+ while (queued.length) {
2469
+ queued.shift()();
2470
+ }
2471
+ queuedTimeout = false;
2472
+ }).catch((error) => setTimeout(() => {
2473
+ throw error;
2474
+ }));
2475
+ }
2476
+ },
2477
+ reset: () => {
2478
+ table.setState(table.initialState);
2479
+ },
2480
+ setOptions: (updater) => {
2481
+ const newOptions = functionalUpdate(updater, table.options);
2482
+ table.options = mergeOptions(newOptions);
2483
+ },
2484
+ getState: () => {
2485
+ return table.options.state;
2486
+ },
2487
+ setState: (updater) => {
2488
+ table.options.onStateChange == null || table.options.onStateChange(updater);
2489
+ },
2490
+ _getRowId: (row, index, parent) => {
2491
+ var _table$options$getRow;
2492
+ return (_table$options$getRow = table.options.getRowId == null ? void 0 : table.options.getRowId(row, index, parent)) != null ? _table$options$getRow : `${parent ? [parent.id, index].join(".") : index}`;
2493
+ },
2494
+ getCoreRowModel: () => {
2495
+ if (!table._getCoreRowModel) {
2496
+ table._getCoreRowModel = table.options.getCoreRowModel(table);
2497
+ }
2498
+ return table._getCoreRowModel();
2499
+ },
2500
+ // The final calls start at the bottom of the model,
2501
+ // expanded rows, which then work their way up
2502
+ getRowModel: () => {
2503
+ return table.getPaginationRowModel();
2504
+ },
2505
+ //in next version, we should just pass in the row model as the optional 2nd arg
2506
+ getRow: (id, searchAll) => {
2507
+ let row = (searchAll ? table.getPrePaginationRowModel() : table.getRowModel()).rowsById[id];
2508
+ if (!row) {
2509
+ row = table.getCoreRowModel().rowsById[id];
2510
+ if (!row) {
2511
+ if (process.env.NODE_ENV !== "production") {
2512
+ throw new Error(`getRow could not find row with ID: ${id}`);
2513
+ }
2514
+ throw new Error();
2515
+ }
2516
+ }
2517
+ return row;
2518
+ },
2519
+ _getDefaultColumnDef: memo(() => [table.options.defaultColumn], (defaultColumn) => {
2520
+ var _defaultColumn;
2521
+ defaultColumn = (_defaultColumn = defaultColumn) != null ? _defaultColumn : {};
2522
+ return {
2523
+ header: (props) => {
2524
+ const resolvedColumnDef = props.header.column.columnDef;
2525
+ if (resolvedColumnDef.accessorKey) {
2526
+ return resolvedColumnDef.accessorKey;
2527
+ }
2528
+ if (resolvedColumnDef.accessorFn) {
2529
+ return resolvedColumnDef.id;
2530
+ }
2531
+ return null;
2532
+ },
2533
+ // footer: props => props.header.column.id,
2534
+ cell: (props) => {
2535
+ var _props$renderValue$to, _props$renderValue;
2536
+ return (_props$renderValue$to = (_props$renderValue = props.renderValue()) == null || _props$renderValue.toString == null ? void 0 : _props$renderValue.toString()) != null ? _props$renderValue$to : null;
2537
+ },
2538
+ ...table._features.reduce((obj, feature) => {
2539
+ return Object.assign(obj, feature.getDefaultColumnDef == null ? void 0 : feature.getDefaultColumnDef());
2540
+ }, {}),
2541
+ ...defaultColumn
2542
+ };
2543
+ }, getMemoOptions(options, "debugColumns", "_getDefaultColumnDef")),
2544
+ _getColumnDefs: () => table.options.columns,
2545
+ getAllColumns: memo(() => [table._getColumnDefs()], (columnDefs) => {
2546
+ const recurseColumns = function(columnDefs2, parent, depth) {
2547
+ if (depth === void 0) {
2548
+ depth = 0;
2549
+ }
2550
+ return columnDefs2.map((columnDef) => {
2551
+ const column = createColumn(table, columnDef, depth, parent);
2552
+ const groupingColumnDef = columnDef;
2553
+ column.columns = groupingColumnDef.columns ? recurseColumns(groupingColumnDef.columns, column, depth + 1) : [];
2554
+ return column;
2555
+ });
2556
+ };
2557
+ return recurseColumns(columnDefs);
2558
+ }, getMemoOptions(options, "debugColumns", "getAllColumns")),
2559
+ getAllFlatColumns: memo(() => [table.getAllColumns()], (allColumns) => {
2560
+ return allColumns.flatMap((column) => {
2561
+ return column.getFlatColumns();
2562
+ });
2563
+ }, getMemoOptions(options, "debugColumns", "getAllFlatColumns")),
2564
+ _getAllFlatColumnsById: memo(() => [table.getAllFlatColumns()], (flatColumns) => {
2565
+ return flatColumns.reduce((acc, column) => {
2566
+ acc[column.id] = column;
2567
+ return acc;
2568
+ }, {});
2569
+ }, getMemoOptions(options, "debugColumns", "getAllFlatColumnsById")),
2570
+ getAllLeafColumns: memo(() => [table.getAllColumns(), table._getOrderColumnsFn()], (allColumns, orderColumns2) => {
2571
+ let leafColumns = allColumns.flatMap((column) => column.getLeafColumns());
2572
+ return orderColumns2(leafColumns);
2573
+ }, getMemoOptions(options, "debugColumns", "getAllLeafColumns")),
2574
+ getColumn: (columnId) => {
2575
+ const column = table._getAllFlatColumnsById()[columnId];
2576
+ if (process.env.NODE_ENV !== "production" && !column) {
2577
+ console.error(`[Table] Column with id '${columnId}' does not exist.`);
2578
+ }
2579
+ return column;
2580
+ }
2581
+ };
2582
+ Object.assign(table, coreInstance);
2583
+ for (let index = 0; index < table._features.length; index++) {
2584
+ const feature = table._features[index];
2585
+ feature == null || feature.createTable == null || feature.createTable(table);
2586
+ }
2587
+ return table;
2588
+ }
2589
+ function getCoreRowModel() {
2590
+ return (table) => memo(() => [table.options.data], (data) => {
2591
+ const rowModel = {
2592
+ rows: [],
2593
+ flatRows: [],
2594
+ rowsById: {}
2595
+ };
2596
+ const accessRows = function(originalRows, depth, parentRow) {
2597
+ if (depth === void 0) {
2598
+ depth = 0;
2599
+ }
2600
+ const rows = [];
2601
+ for (let i = 0; i < originalRows.length; i++) {
2602
+ const row = createRow(table, table._getRowId(originalRows[i], i, parentRow), originalRows[i], i, depth, void 0, parentRow == null ? void 0 : parentRow.id);
2603
+ rowModel.flatRows.push(row);
2604
+ rowModel.rowsById[row.id] = row;
2605
+ rows.push(row);
2606
+ if (table.options.getSubRows) {
2607
+ var _row$originalSubRows;
2608
+ row.originalSubRows = table.options.getSubRows(originalRows[i], i);
2609
+ if ((_row$originalSubRows = row.originalSubRows) != null && _row$originalSubRows.length) {
2610
+ row.subRows = accessRows(row.originalSubRows, depth + 1, row);
2611
+ }
2612
+ }
2613
+ }
2614
+ return rows;
2615
+ };
2616
+ rowModel.rows = accessRows(data);
2617
+ return rowModel;
2618
+ }, getMemoOptions(table.options, "debugTable", "getRowModel", () => table._autoResetPageIndex()));
2619
+ }
2620
+ function getSortedRowModel() {
2621
+ return (table) => memo(() => [table.getState().sorting, table.getPreSortedRowModel()], (sorting, rowModel) => {
2622
+ if (!rowModel.rows.length || !(sorting != null && sorting.length)) {
2623
+ return rowModel;
2624
+ }
2625
+ const sortingState = table.getState().sorting;
2626
+ const sortedFlatRows = [];
2627
+ const availableSorting = sortingState.filter((sort) => {
2628
+ var _table$getColumn;
2629
+ return (_table$getColumn = table.getColumn(sort.id)) == null ? void 0 : _table$getColumn.getCanSort();
2630
+ });
2631
+ const columnInfoById = {};
2632
+ availableSorting.forEach((sortEntry) => {
2633
+ const column = table.getColumn(sortEntry.id);
2634
+ if (!column) return;
2635
+ columnInfoById[sortEntry.id] = {
2636
+ sortUndefined: column.columnDef.sortUndefined,
2637
+ invertSorting: column.columnDef.invertSorting,
2638
+ sortingFn: column.getSortingFn()
2639
+ };
2640
+ });
2641
+ const sortData = (rows) => {
2642
+ const sortedData = rows.map((row) => ({
2643
+ ...row
2644
+ }));
2645
+ sortedData.sort((rowA, rowB) => {
2646
+ for (let i = 0; i < availableSorting.length; i += 1) {
2647
+ var _sortEntry$desc;
2648
+ const sortEntry = availableSorting[i];
2649
+ const columnInfo = columnInfoById[sortEntry.id];
2650
+ const sortUndefined = columnInfo.sortUndefined;
2651
+ const isDesc = (_sortEntry$desc = sortEntry == null ? void 0 : sortEntry.desc) != null ? _sortEntry$desc : false;
2652
+ let sortInt = 0;
2653
+ if (sortUndefined) {
2654
+ const aValue = rowA.getValue(sortEntry.id);
2655
+ const bValue = rowB.getValue(sortEntry.id);
2656
+ const aUndefined = aValue === void 0;
2657
+ const bUndefined = bValue === void 0;
2658
+ if (aUndefined || bUndefined) {
2659
+ if (sortUndefined === "first") return aUndefined ? -1 : 1;
2660
+ if (sortUndefined === "last") return aUndefined ? 1 : -1;
2661
+ sortInt = aUndefined && bUndefined ? 0 : aUndefined ? sortUndefined : -sortUndefined;
2662
+ }
2663
+ }
2664
+ if (sortInt === 0) {
2665
+ sortInt = columnInfo.sortingFn(rowA, rowB, sortEntry.id);
2666
+ }
2667
+ if (sortInt !== 0) {
2668
+ if (isDesc) {
2669
+ sortInt *= -1;
2670
+ }
2671
+ if (columnInfo.invertSorting) {
2672
+ sortInt *= -1;
2673
+ }
2674
+ return sortInt;
2675
+ }
2676
+ }
2677
+ return rowA.index - rowB.index;
2678
+ });
2679
+ sortedData.forEach((row) => {
2680
+ var _row$subRows;
2681
+ sortedFlatRows.push(row);
2682
+ if ((_row$subRows = row.subRows) != null && _row$subRows.length) {
2683
+ row.subRows = sortData(row.subRows);
2684
+ }
2685
+ });
2686
+ return sortedData;
2687
+ };
2688
+ return {
2689
+ rows: sortData(rowModel.rows),
2690
+ flatRows: sortedFlatRows,
2691
+ rowsById: rowModel.rowsById
2692
+ };
2693
+ }, getMemoOptions(table.options, "debugTable", "getSortedRowModel", () => table._autoResetPageIndex()));
2694
+ }
2695
+ export {
2696
+ ColumnFaceting,
2697
+ ColumnFiltering,
2698
+ ColumnGrouping,
2699
+ ColumnOrdering,
2700
+ ColumnPinning,
2701
+ ColumnSizing,
2702
+ ColumnVisibility,
2703
+ GlobalFaceting,
2704
+ GlobalFiltering,
2705
+ Headers,
2706
+ RowExpanding,
2707
+ RowPagination,
2708
+ RowPinning,
2709
+ RowSelection,
2710
+ RowSorting,
2711
+ _getVisibleLeafColumns,
2712
+ aggregationFns,
2713
+ buildHeaderGroups,
2714
+ createCell,
2715
+ createColumn,
2716
+ createRow,
2717
+ createTable,
2718
+ defaultColumnSizing,
2719
+ filterFns,
2720
+ flattenBy,
2721
+ functionalUpdate,
2722
+ getCoreRowModel,
2723
+ getMemoOptions,
2724
+ getSortedRowModel,
2725
+ isFunction,
2726
+ isNumberArray,
2727
+ isRowSelected,
2728
+ isSubRowSelected,
2729
+ makeStateUpdater,
2730
+ memo,
2731
+ orderColumns,
2732
+ passiveEventSupported,
2733
+ reSplitAlphaNumeric,
2734
+ selectRowsFn,
2735
+ shouldAutoRemoveFilter,
2736
+ sortingFns
2737
+ };