create-ncblock 0.0.1

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