@weng-lab/ui-components 2.2.3 → 2.2.4

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 (748) hide show
  1. package/dist/src/components/TwoPaneLayout/TwoPaneLayout.d.ts +1 -1
  2. package/dist/src/components/TwoPaneLayout/TwoPaneLayout.d.ts.map +1 -1
  3. package/dist/src/components/TwoPaneLayout/types.d.ts +2 -0
  4. package/dist/src/components/TwoPaneLayout/types.d.ts.map +1 -1
  5. package/dist/ui-components.es10.js +1 -1
  6. package/dist/ui-components.es100.js +8 -7
  7. package/dist/ui-components.es100.js.map +1 -1
  8. package/dist/ui-components.es101.js +6 -449
  9. package/dist/ui-components.es101.js.map +1 -1
  10. package/dist/ui-components.es102.js +9 -3
  11. package/dist/ui-components.es102.js.map +1 -1
  12. package/dist/ui-components.es103.js +4 -3
  13. package/dist/ui-components.es103.js.map +1 -1
  14. package/dist/ui-components.es104.js +7 -3
  15. package/dist/ui-components.es104.js.map +1 -1
  16. package/dist/ui-components.es105.js +5 -14
  17. package/dist/ui-components.es105.js.map +1 -1
  18. package/dist/ui-components.es106.js +29 -42
  19. package/dist/ui-components.es106.js.map +1 -1
  20. package/dist/ui-components.es107.js +7 -7
  21. package/dist/ui-components.es107.js.map +1 -1
  22. package/dist/ui-components.es108.js +46 -22
  23. package/dist/ui-components.es108.js.map +1 -1
  24. package/dist/ui-components.es109.js +198 -4
  25. package/dist/ui-components.es109.js.map +1 -1
  26. package/dist/ui-components.es110.js +18 -6
  27. package/dist/ui-components.es110.js.map +1 -1
  28. package/dist/ui-components.es111.js +280 -14
  29. package/dist/ui-components.es111.js.map +1 -1
  30. package/dist/ui-components.es112.js +6 -5
  31. package/dist/ui-components.es112.js.map +1 -1
  32. package/dist/ui-components.es113.js +6 -20
  33. package/dist/ui-components.es113.js.map +1 -1
  34. package/dist/ui-components.es114.js +7 -6
  35. package/dist/ui-components.es114.js.map +1 -1
  36. package/dist/ui-components.es115.js +4 -48
  37. package/dist/ui-components.es115.js.map +1 -1
  38. package/dist/ui-components.es116.js +5 -18
  39. package/dist/ui-components.es116.js.map +1 -1
  40. package/dist/ui-components.es117.js +20 -412
  41. package/dist/ui-components.es117.js.map +1 -1
  42. package/dist/ui-components.es118.js +12 -498
  43. package/dist/ui-components.es118.js.map +1 -1
  44. package/dist/ui-components.es119.js +8 -344
  45. package/dist/ui-components.es119.js.map +1 -1
  46. package/dist/ui-components.es12.js +3 -3
  47. package/dist/ui-components.es120.js +25 -272
  48. package/dist/ui-components.es120.js.map +1 -1
  49. package/dist/ui-components.es121.js +3 -177
  50. package/dist/ui-components.es121.js.map +1 -1
  51. package/dist/ui-components.es122.js +138 -257
  52. package/dist/ui-components.es122.js.map +1 -1
  53. package/dist/ui-components.es123.js +4 -238
  54. package/dist/ui-components.es123.js.map +1 -1
  55. package/dist/ui-components.es124.js +5 -3
  56. package/dist/ui-components.es124.js.map +1 -1
  57. package/dist/ui-components.es125.js +3 -21
  58. package/dist/ui-components.es125.js.map +1 -1
  59. package/dist/ui-components.es126.js +21 -6
  60. package/dist/ui-components.es126.js.map +1 -1
  61. package/dist/ui-components.es127.js +3 -11
  62. package/dist/ui-components.es127.js.map +1 -1
  63. package/dist/ui-components.es128.js +14 -2
  64. package/dist/ui-components.es128.js.map +1 -1
  65. package/dist/ui-components.es129.js +6 -5
  66. package/dist/ui-components.es129.js.map +1 -1
  67. package/dist/ui-components.es13.js +3 -3
  68. package/dist/ui-components.es130.js +4 -8
  69. package/dist/ui-components.es130.js.map +1 -1
  70. package/dist/ui-components.es131.js +4 -4
  71. package/dist/ui-components.es131.js.map +1 -1
  72. package/dist/ui-components.es132.js +36 -6
  73. package/dist/ui-components.es132.js.map +1 -1
  74. package/dist/ui-components.es133.js +344 -4
  75. package/dist/ui-components.es133.js.map +1 -1
  76. package/dist/ui-components.es134.js +275 -7
  77. package/dist/ui-components.es134.js.map +1 -1
  78. package/dist/ui-components.es135.js +6 -30
  79. package/dist/ui-components.es135.js.map +1 -1
  80. package/dist/ui-components.es136.js +8 -4
  81. package/dist/ui-components.es136.js.map +1 -1
  82. package/dist/ui-components.es137.js +7 -7
  83. package/dist/ui-components.es137.js.map +1 -1
  84. package/dist/ui-components.es138.js +6 -6
  85. package/dist/ui-components.es138.js.map +1 -1
  86. package/dist/ui-components.es139.js +6 -7
  87. package/dist/ui-components.es139.js.map +1 -1
  88. package/dist/ui-components.es140.js +311 -8
  89. package/dist/ui-components.es140.js.map +1 -1
  90. package/dist/ui-components.es141.js +6 -198
  91. package/dist/ui-components.es141.js.map +1 -1
  92. package/dist/ui-components.es142.js +6 -7
  93. package/dist/ui-components.es142.js.map +1 -1
  94. package/dist/ui-components.es143.js +6 -6
  95. package/dist/ui-components.es143.js.map +1 -1
  96. package/dist/ui-components.es144.js +7 -7
  97. package/dist/ui-components.es144.js.map +1 -1
  98. package/dist/ui-components.es145.js +57 -342
  99. package/dist/ui-components.es145.js.map +1 -1
  100. package/dist/ui-components.es146.js +7 -7
  101. package/dist/ui-components.es146.js.map +1 -1
  102. package/dist/ui-components.es147.js +7 -4
  103. package/dist/ui-components.es147.js.map +1 -1
  104. package/dist/ui-components.es148.js +2 -6
  105. package/dist/ui-components.es148.js.map +1 -1
  106. package/dist/ui-components.es149.js +3 -12
  107. package/dist/ui-components.es149.js.map +1 -1
  108. package/dist/ui-components.es150.js +31 -7
  109. package/dist/ui-components.es150.js.map +1 -1
  110. package/dist/ui-components.es151.js +15 -25
  111. package/dist/ui-components.es151.js.map +1 -1
  112. package/dist/ui-components.es152.js +55 -158
  113. package/dist/ui-components.es152.js.map +1 -1
  114. package/dist/ui-components.es153.js +7 -5
  115. package/dist/ui-components.es153.js.map +1 -1
  116. package/dist/ui-components.es154.js +7 -21
  117. package/dist/ui-components.es154.js.map +1 -1
  118. package/dist/ui-components.es155.js +26 -3
  119. package/dist/ui-components.es155.js.map +1 -1
  120. package/dist/ui-components.es156.js +28 -7
  121. package/dist/ui-components.es156.js.map +1 -1
  122. package/dist/ui-components.es157.js +11 -3
  123. package/dist/ui-components.es157.js.map +1 -1
  124. package/dist/ui-components.es158.js +5 -4
  125. package/dist/ui-components.es158.js.map +1 -1
  126. package/dist/ui-components.es159.js +196 -36
  127. package/dist/ui-components.es159.js.map +1 -1
  128. package/dist/ui-components.es16.js +6 -3
  129. package/dist/ui-components.es16.js.map +1 -1
  130. package/dist/ui-components.es160.js +156 -242
  131. package/dist/ui-components.es160.js.map +1 -1
  132. package/dist/ui-components.es161.js +9 -7
  133. package/dist/ui-components.es161.js.map +1 -1
  134. package/dist/ui-components.es162.js +22 -6
  135. package/dist/ui-components.es162.js.map +1 -1
  136. package/dist/ui-components.es163.js +122 -307
  137. package/dist/ui-components.es163.js.map +1 -1
  138. package/dist/ui-components.es164.js +4 -5
  139. package/dist/ui-components.es164.js.map +1 -1
  140. package/dist/ui-components.es165.js +4 -5
  141. package/dist/ui-components.es165.js.map +1 -1
  142. package/dist/ui-components.es166.js +4 -6
  143. package/dist/ui-components.es166.js.map +1 -1
  144. package/dist/ui-components.es167.js +101 -7
  145. package/dist/ui-components.es167.js.map +1 -1
  146. package/dist/ui-components.es168.js +6 -59
  147. package/dist/ui-components.es168.js.map +1 -1
  148. package/dist/ui-components.es169.js +63 -7
  149. package/dist/ui-components.es169.js.map +1 -1
  150. package/dist/ui-components.es17.js +3 -41
  151. package/dist/ui-components.es17.js.map +1 -1
  152. package/dist/ui-components.es170.js +176 -24
  153. package/dist/ui-components.es170.js.map +1 -1
  154. package/dist/ui-components.es171.js +189 -26
  155. package/dist/ui-components.es171.js.map +1 -1
  156. package/dist/ui-components.es172.js +6 -11
  157. package/dist/ui-components.es172.js.map +1 -1
  158. package/dist/ui-components.es173.js +269 -4
  159. package/dist/ui-components.es173.js.map +1 -1
  160. package/dist/ui-components.es174.js +169 -191
  161. package/dist/ui-components.es174.js.map +1 -1
  162. package/dist/ui-components.es175.js +108 -187
  163. package/dist/ui-components.es175.js.map +1 -1
  164. package/dist/ui-components.es176.js +7 -9
  165. package/dist/ui-components.es176.js.map +1 -1
  166. package/dist/ui-components.es177.js +62 -21
  167. package/dist/ui-components.es177.js.map +1 -1
  168. package/dist/ui-components.es178.js +45 -6
  169. package/dist/ui-components.es178.js.map +1 -1
  170. package/dist/ui-components.es179.js +3 -8
  171. package/dist/ui-components.es179.js.map +1 -1
  172. package/dist/ui-components.es18.js +54 -6
  173. package/dist/ui-components.es18.js.map +1 -1
  174. package/dist/ui-components.es180.js +7 -125
  175. package/dist/ui-components.es180.js.map +1 -1
  176. package/dist/ui-components.es181.js +155 -4
  177. package/dist/ui-components.es181.js.map +1 -1
  178. package/dist/ui-components.es182.js +4 -4
  179. package/dist/ui-components.es182.js.map +1 -1
  180. package/dist/ui-components.es183.js +39 -4
  181. package/dist/ui-components.es183.js.map +1 -1
  182. package/dist/ui-components.es184.js +23 -98
  183. package/dist/ui-components.es184.js.map +1 -1
  184. package/dist/ui-components.es185.js +7 -6
  185. package/dist/ui-components.es185.js.map +1 -1
  186. package/dist/ui-components.es186.js +28 -63
  187. package/dist/ui-components.es186.js.map +1 -1
  188. package/dist/ui-components.es187.js +119 -173
  189. package/dist/ui-components.es187.js.map +1 -1
  190. package/dist/ui-components.es188.js +13 -192
  191. package/dist/ui-components.es188.js.map +1 -1
  192. package/dist/ui-components.es189.js +5 -6
  193. package/dist/ui-components.es189.js.map +1 -1
  194. package/dist/ui-components.es19.js +162 -6
  195. package/dist/ui-components.es19.js.map +1 -1
  196. package/dist/ui-components.es190.js +293 -269
  197. package/dist/ui-components.es190.js.map +1 -1
  198. package/dist/ui-components.es191.js +88 -169
  199. package/dist/ui-components.es191.js.map +1 -1
  200. package/dist/ui-components.es192.js +8 -108
  201. package/dist/ui-components.es192.js.map +1 -1
  202. package/dist/ui-components.es193.js +79 -61
  203. package/dist/ui-components.es193.js.map +1 -1
  204. package/dist/ui-components.es194.js +74 -42
  205. package/dist/ui-components.es194.js.map +1 -1
  206. package/dist/ui-components.es195.js +17 -3
  207. package/dist/ui-components.es195.js.map +1 -1
  208. package/dist/ui-components.es196.js +2 -8
  209. package/dist/ui-components.es196.js.map +1 -1
  210. package/dist/ui-components.es197.js +106 -150
  211. package/dist/ui-components.es197.js.map +1 -1
  212. package/dist/ui-components.es198.js +16 -4
  213. package/dist/ui-components.es198.js.map +1 -1
  214. package/dist/ui-components.es199.js +7 -39
  215. package/dist/ui-components.es199.js.map +1 -1
  216. package/dist/ui-components.es2.js +30 -30
  217. package/dist/ui-components.es20.js +41 -6
  218. package/dist/ui-components.es20.js.map +1 -1
  219. package/dist/ui-components.es200.js +9 -25
  220. package/dist/ui-components.es200.js.map +1 -1
  221. package/dist/ui-components.es201.js +449 -7
  222. package/dist/ui-components.es201.js.map +1 -1
  223. package/dist/ui-components.es202.js +3 -28
  224. package/dist/ui-components.es202.js.map +1 -1
  225. package/dist/ui-components.es203.js +3 -124
  226. package/dist/ui-components.es203.js.map +1 -1
  227. package/dist/ui-components.es204.js +42 -12
  228. package/dist/ui-components.es204.js.map +1 -1
  229. package/dist/ui-components.es205.js +7 -5
  230. package/dist/ui-components.es205.js.map +1 -1
  231. package/dist/ui-components.es206.js +24 -294
  232. package/dist/ui-components.es206.js.map +1 -1
  233. package/dist/ui-components.es207.js +6 -93
  234. package/dist/ui-components.es207.js.map +1 -1
  235. package/dist/ui-components.es208.js +413 -10
  236. package/dist/ui-components.es208.js.map +1 -1
  237. package/dist/ui-components.es209.js +497 -81
  238. package/dist/ui-components.es209.js.map +1 -1
  239. package/dist/ui-components.es21.js +5 -5
  240. package/dist/ui-components.es21.js.map +1 -1
  241. package/dist/ui-components.es210.js +341 -75
  242. package/dist/ui-components.es210.js.map +1 -1
  243. package/dist/ui-components.es211.js +270 -15
  244. package/dist/ui-components.es211.js.map +1 -1
  245. package/dist/ui-components.es212.js +177 -2
  246. package/dist/ui-components.es212.js.map +1 -1
  247. package/dist/ui-components.es213.js +238 -15
  248. package/dist/ui-components.es213.js.map +1 -1
  249. package/dist/ui-components.es214.js +4 -2
  250. package/dist/ui-components.es214.js.map +1 -1
  251. package/dist/ui-components.es215.js +14 -7
  252. package/dist/ui-components.es215.js.map +1 -1
  253. package/dist/ui-components.es216.js +2 -327
  254. package/dist/ui-components.es216.js.map +1 -1
  255. package/dist/ui-components.es217.js +7 -49
  256. package/dist/ui-components.es217.js.map +1 -1
  257. package/dist/ui-components.es218.js +327 -2
  258. package/dist/ui-components.es218.js.map +1 -1
  259. package/dist/ui-components.es219.js +49 -3
  260. package/dist/ui-components.es219.js.map +1 -1
  261. package/dist/ui-components.es22.js +5 -5
  262. package/dist/ui-components.es22.js.map +1 -1
  263. package/dist/ui-components.es220.js +34 -3
  264. package/dist/ui-components.es220.js.map +1 -1
  265. package/dist/ui-components.es221.js +22 -8
  266. package/dist/ui-components.es221.js.map +1 -1
  267. package/dist/ui-components.es222.js +11 -11
  268. package/dist/ui-components.es222.js.map +1 -1
  269. package/dist/ui-components.es223.js +2 -35
  270. package/dist/ui-components.es223.js.map +1 -1
  271. package/dist/ui-components.es224.js +2 -23
  272. package/dist/ui-components.es224.js.map +1 -1
  273. package/dist/ui-components.es225.js +3 -11
  274. package/dist/ui-components.es225.js.map +1 -1
  275. package/dist/ui-components.es226.js +46 -2
  276. package/dist/ui-components.es226.js.map +1 -1
  277. package/dist/ui-components.es227.js +10 -3
  278. package/dist/ui-components.es227.js.map +1 -1
  279. package/dist/ui-components.es228.js +2 -46
  280. package/dist/ui-components.es228.js.map +1 -1
  281. package/dist/ui-components.es229.js +1 -10
  282. package/dist/ui-components.es229.js.map +1 -1
  283. package/dist/ui-components.es23.js +5 -5
  284. package/dist/ui-components.es23.js.map +1 -1
  285. package/dist/ui-components.es230.js +6 -3
  286. package/dist/ui-components.es230.js.map +1 -1
  287. package/dist/ui-components.es231.js +7 -209
  288. package/dist/ui-components.es231.js.map +1 -1
  289. package/dist/ui-components.es232.js +9 -2
  290. package/dist/ui-components.es232.js.map +1 -1
  291. package/dist/ui-components.es233.js +2 -2
  292. package/dist/ui-components.es234.js +2 -2
  293. package/dist/ui-components.es235.js +59 -6
  294. package/dist/ui-components.es235.js.map +1 -1
  295. package/dist/ui-components.es236.js +24 -2
  296. package/dist/ui-components.es236.js.map +1 -1
  297. package/dist/ui-components.es237.js +118 -2
  298. package/dist/ui-components.es237.js.map +1 -1
  299. package/dist/ui-components.es238.js +4 -7
  300. package/dist/ui-components.es238.js.map +1 -1
  301. package/dist/ui-components.es239.js +14 -23
  302. package/dist/ui-components.es239.js.map +1 -1
  303. package/dist/ui-components.es24.js +5 -5
  304. package/dist/ui-components.es24.js.map +1 -1
  305. package/dist/ui-components.es240.js +35 -114
  306. package/dist/ui-components.es240.js.map +1 -1
  307. package/dist/ui-components.es241.js +4 -59
  308. package/dist/ui-components.es241.js.map +1 -1
  309. package/dist/ui-components.es242.js +16 -3
  310. package/dist/ui-components.es242.js.map +1 -1
  311. package/dist/ui-components.es243.js +9 -15
  312. package/dist/ui-components.es243.js.map +1 -1
  313. package/dist/ui-components.es244.js +8 -39
  314. package/dist/ui-components.es244.js.map +1 -1
  315. package/dist/ui-components.es245.js +5 -2
  316. package/dist/ui-components.es245.js.map +1 -1
  317. package/dist/ui-components.es246.js +7 -16
  318. package/dist/ui-components.es246.js.map +1 -1
  319. package/dist/ui-components.es247.js +7 -8
  320. package/dist/ui-components.es247.js.map +1 -1
  321. package/dist/ui-components.es248.js +6 -5
  322. package/dist/ui-components.es248.js.map +1 -1
  323. package/dist/ui-components.es249.js +5 -8
  324. package/dist/ui-components.es249.js.map +1 -1
  325. package/dist/ui-components.es25.js +6 -255
  326. package/dist/ui-components.es25.js.map +1 -1
  327. package/dist/ui-components.es250.js +10 -7
  328. package/dist/ui-components.es250.js.map +1 -1
  329. package/dist/ui-components.es251.js +42 -8
  330. package/dist/ui-components.es251.js.map +1 -1
  331. package/dist/ui-components.es252.js +2 -9
  332. package/dist/ui-components.es252.js.map +1 -1
  333. package/dist/ui-components.es253.js +24 -4
  334. package/dist/ui-components.es253.js.map +1 -1
  335. package/dist/ui-components.es254.js +35 -11
  336. package/dist/ui-components.es254.js.map +1 -1
  337. package/dist/ui-components.es255.js +7 -41
  338. package/dist/ui-components.es255.js.map +1 -1
  339. package/dist/ui-components.es256.js +3 -2
  340. package/dist/ui-components.es256.js.map +1 -1
  341. package/dist/ui-components.es257.js +6 -67
  342. package/dist/ui-components.es257.js.map +1 -1
  343. package/dist/ui-components.es258.js +470 -78
  344. package/dist/ui-components.es258.js.map +1 -1
  345. package/dist/ui-components.es259.js +163 -42
  346. package/dist/ui-components.es259.js.map +1 -1
  347. package/dist/ui-components.es26.js +6 -726
  348. package/dist/ui-components.es26.js.map +1 -1
  349. package/dist/ui-components.es260.js +4 -8
  350. package/dist/ui-components.es260.js.map +1 -1
  351. package/dist/ui-components.es261.js +7 -4
  352. package/dist/ui-components.es261.js.map +1 -1
  353. package/dist/ui-components.es262.js +3 -52
  354. package/dist/ui-components.es262.js.map +1 -1
  355. package/dist/ui-components.es263.js +3 -147
  356. package/dist/ui-components.es263.js.map +1 -1
  357. package/dist/ui-components.es264.js +7 -10
  358. package/dist/ui-components.es264.js.map +1 -1
  359. package/dist/ui-components.es265.js +7 -9
  360. package/dist/ui-components.es265.js.map +1 -1
  361. package/dist/ui-components.es266.js +2 -3
  362. package/dist/ui-components.es266.js.map +1 -1
  363. package/dist/ui-components.es267.js +67 -15
  364. package/dist/ui-components.es267.js.map +1 -1
  365. package/dist/ui-components.es268.js +85 -19
  366. package/dist/ui-components.es268.js.map +1 -1
  367. package/dist/ui-components.es269.js +45 -29
  368. package/dist/ui-components.es269.js.map +1 -1
  369. package/dist/ui-components.es27.js +6 -660
  370. package/dist/ui-components.es27.js.map +1 -1
  371. package/dist/ui-components.es270.js +7 -11
  372. package/dist/ui-components.es270.js.map +1 -1
  373. package/dist/ui-components.es271.js +4 -11
  374. package/dist/ui-components.es271.js.map +1 -1
  375. package/dist/ui-components.es272.js +49 -146
  376. package/dist/ui-components.es272.js.map +1 -1
  377. package/dist/ui-components.es273.js +232 -12
  378. package/dist/ui-components.es273.js.map +1 -1
  379. package/dist/ui-components.es274.js +2 -7
  380. package/dist/ui-components.es274.js.map +1 -1
  381. package/dist/ui-components.es275.js +2 -8
  382. package/dist/ui-components.es275.js.map +1 -1
  383. package/dist/ui-components.es276.js +9 -6
  384. package/dist/ui-components.es276.js.map +1 -1
  385. package/dist/ui-components.es277.js +2 -171
  386. package/dist/ui-components.es277.js.map +1 -1
  387. package/dist/ui-components.es278.js +2 -8
  388. package/dist/ui-components.es278.js.map +1 -1
  389. package/dist/ui-components.es279.js +3 -520
  390. package/dist/ui-components.es279.js.map +1 -1
  391. package/dist/ui-components.es28.js +231 -51
  392. package/dist/ui-components.es28.js.map +1 -1
  393. package/dist/ui-components.es280.js +4 -6
  394. package/dist/ui-components.es280.js.map +1 -1
  395. package/dist/ui-components.es281.js +11 -233
  396. package/dist/ui-components.es281.js.map +1 -1
  397. package/dist/ui-components.es282.js +30 -7
  398. package/dist/ui-components.es282.js.map +1 -1
  399. package/dist/ui-components.es283.js +481 -192
  400. package/dist/ui-components.es283.js.map +1 -1
  401. package/dist/ui-components.es284.js +6 -2
  402. package/dist/ui-components.es284.js.map +1 -1
  403. package/dist/ui-components.es285.js +234 -2
  404. package/dist/ui-components.es285.js.map +1 -1
  405. package/dist/ui-components.es286.js +8 -2
  406. package/dist/ui-components.es286.js.map +1 -1
  407. package/dist/ui-components.es287.js +6 -2
  408. package/dist/ui-components.es287.js.map +1 -1
  409. package/dist/ui-components.es288.js +6 -3
  410. package/dist/ui-components.es288.js.map +1 -1
  411. package/dist/ui-components.es289.js +6 -7
  412. package/dist/ui-components.es289.js.map +1 -1
  413. package/dist/ui-components.es29.js +690 -76
  414. package/dist/ui-components.es29.js.map +1 -1
  415. package/dist/ui-components.es290.js +6 -477
  416. package/dist/ui-components.es290.js.map +1 -1
  417. package/dist/ui-components.es291.js +6 -167
  418. package/dist/ui-components.es291.js.map +1 -1
  419. package/dist/ui-components.es292.js +242 -24
  420. package/dist/ui-components.es292.js.map +1 -1
  421. package/dist/ui-components.es293.js +7 -34
  422. package/dist/ui-components.es293.js.map +1 -1
  423. package/dist/ui-components.es294.js +48 -7
  424. package/dist/ui-components.es294.js.map +1 -1
  425. package/dist/ui-components.es295.js +3 -4
  426. package/dist/ui-components.es295.js.map +1 -1
  427. package/dist/ui-components.es296.js +6 -7
  428. package/dist/ui-components.es296.js.map +1 -1
  429. package/dist/ui-components.es297.js +7 -3
  430. package/dist/ui-components.es297.js.map +1 -1
  431. package/dist/ui-components.es298.js +4 -3
  432. package/dist/ui-components.es298.js.map +1 -1
  433. package/dist/ui-components.es299.js +6 -7
  434. package/dist/ui-components.es299.js.map +1 -1
  435. package/dist/ui-components.es3.js +2 -2
  436. package/dist/ui-components.es30.js +565 -145
  437. package/dist/ui-components.es30.js.map +1 -1
  438. package/dist/ui-components.es300.js +7 -2
  439. package/dist/ui-components.es300.js.map +1 -1
  440. package/dist/ui-components.es301.js +6 -2
  441. package/dist/ui-components.es301.js.map +1 -1
  442. package/dist/ui-components.es302.js +6 -7
  443. package/dist/ui-components.es302.js.map +1 -1
  444. package/dist/ui-components.es303.js +169 -6
  445. package/dist/ui-components.es303.js.map +1 -1
  446. package/dist/ui-components.es304.js +15 -6
  447. package/dist/ui-components.es304.js.map +1 -1
  448. package/dist/ui-components.es305.js +334 -6
  449. package/dist/ui-components.es305.js.map +1 -1
  450. package/dist/ui-components.es306.js +323 -6
  451. package/dist/ui-components.es306.js.map +1 -1
  452. package/dist/ui-components.es307.js +6 -6
  453. package/dist/ui-components.es307.js.map +1 -1
  454. package/dist/ui-components.es308.js +42 -242
  455. package/dist/ui-components.es308.js.map +1 -1
  456. package/dist/ui-components.es309.js +3 -8
  457. package/dist/ui-components.es309.js.map +1 -1
  458. package/dist/ui-components.es31.js +49 -170
  459. package/dist/ui-components.es31.js.map +1 -1
  460. package/dist/ui-components.es310.js +7 -48
  461. package/dist/ui-components.es310.js.map +1 -1
  462. package/dist/ui-components.es311.js +41 -3
  463. package/dist/ui-components.es311.js.map +1 -1
  464. package/dist/ui-components.es312.js +64 -6
  465. package/dist/ui-components.es312.js.map +1 -1
  466. package/dist/ui-components.es313.js +38 -6
  467. package/dist/ui-components.es313.js.map +1 -1
  468. package/dist/ui-components.es314.js +18 -4
  469. package/dist/ui-components.es314.js.map +1 -1
  470. package/dist/ui-components.es315.js +47 -13
  471. package/dist/ui-components.es315.js.map +1 -1
  472. package/dist/ui-components.es316.js +18 -332
  473. package/dist/ui-components.es316.js.map +1 -1
  474. package/dist/ui-components.es317.js +51 -323
  475. package/dist/ui-components.es317.js.map +1 -1
  476. package/dist/ui-components.es318.js +6 -6
  477. package/dist/ui-components.es318.js.map +1 -1
  478. package/dist/ui-components.es319.js +7 -6
  479. package/dist/ui-components.es319.js.map +1 -1
  480. package/dist/ui-components.es32.js +87 -50
  481. package/dist/ui-components.es32.js.map +1 -1
  482. package/dist/ui-components.es320.js +76 -7
  483. package/dist/ui-components.es320.js.map +1 -1
  484. package/dist/ui-components.es321.js +23 -168
  485. package/dist/ui-components.es321.js.map +1 -1
  486. package/dist/ui-components.es322.js +4 -3
  487. package/dist/ui-components.es322.js.map +1 -1
  488. package/dist/ui-components.es323.js +59 -37
  489. package/dist/ui-components.es323.js.map +1 -1
  490. package/dist/ui-components.es324.js +24 -18
  491. package/dist/ui-components.es324.js.map +1 -1
  492. package/dist/ui-components.es325.js +3 -20
  493. package/dist/ui-components.es325.js.map +1 -1
  494. package/dist/ui-components.es326.js +13 -51
  495. package/dist/ui-components.es326.js.map +1 -1
  496. package/dist/ui-components.es327.js +8 -5
  497. package/dist/ui-components.es327.js.map +1 -1
  498. package/dist/ui-components.es328.js +14 -41
  499. package/dist/ui-components.es328.js.map +1 -1
  500. package/dist/ui-components.es329.js +10 -3
  501. package/dist/ui-components.es329.js.map +1 -1
  502. package/dist/ui-components.es33.js +202 -423
  503. package/dist/ui-components.es33.js.map +1 -1
  504. package/dist/ui-components.es330.js +146 -7
  505. package/dist/ui-components.es330.js.map +1 -1
  506. package/dist/ui-components.es331.js +10 -40
  507. package/dist/ui-components.es331.js.map +1 -1
  508. package/dist/ui-components.es332.js +17 -63
  509. package/dist/ui-components.es332.js.map +1 -1
  510. package/dist/ui-components.es333.js +2 -49
  511. package/dist/ui-components.es333.js.map +1 -1
  512. package/dist/ui-components.es334.js +2 -8
  513. package/dist/ui-components.es334.js.map +1 -1
  514. package/dist/ui-components.es335.js +148 -75
  515. package/dist/ui-components.es335.js.map +1 -1
  516. package/dist/ui-components.es336.js +11 -23
  517. package/dist/ui-components.es336.js.map +1 -1
  518. package/dist/ui-components.es337.js +11 -4
  519. package/dist/ui-components.es337.js.map +1 -1
  520. package/dist/ui-components.es338.js +10 -59
  521. package/dist/ui-components.es338.js.map +1 -1
  522. package/dist/ui-components.es339.js +6 -25
  523. package/dist/ui-components.es339.js.map +1 -1
  524. package/dist/ui-components.es34.js +195 -10
  525. package/dist/ui-components.es34.js.map +1 -1
  526. package/dist/ui-components.es340.js +170 -12
  527. package/dist/ui-components.es340.js.map +1 -1
  528. package/dist/ui-components.es341.js +7 -9
  529. package/dist/ui-components.es341.js.map +1 -1
  530. package/dist/ui-components.es342.js +7 -9
  531. package/dist/ui-components.es342.js.map +1 -1
  532. package/dist/ui-components.es343.js +7 -7
  533. package/dist/ui-components.es343.js.map +1 -1
  534. package/dist/ui-components.es344.js +2 -9
  535. package/dist/ui-components.es344.js.map +1 -1
  536. package/dist/ui-components.es345.js +65 -7
  537. package/dist/ui-components.es345.js.map +1 -1
  538. package/dist/ui-components.es346.js +66 -2
  539. package/dist/ui-components.es346.js.map +1 -1
  540. package/dist/ui-components.es347.js +7 -65
  541. package/dist/ui-components.es347.js.map +1 -1
  542. package/dist/ui-components.es348.js +8 -65
  543. package/dist/ui-components.es348.js.map +1 -1
  544. package/dist/ui-components.es349.js +2 -2
  545. package/dist/ui-components.es35.js +50 -617
  546. package/dist/ui-components.es35.js.map +1 -1
  547. package/dist/ui-components.es350.js +1 -1
  548. package/dist/ui-components.es351.js +1 -5
  549. package/dist/ui-components.es351.js.map +1 -1
  550. package/dist/ui-components.es352.js +6 -25
  551. package/dist/ui-components.es352.js.map +1 -1
  552. package/dist/ui-components.es353.js +25 -2
  553. package/dist/ui-components.es353.js.map +1 -1
  554. package/dist/ui-components.es356.js +125 -7
  555. package/dist/ui-components.es356.js.map +1 -1
  556. package/dist/ui-components.es357.js +7 -125
  557. package/dist/ui-components.es357.js.map +1 -1
  558. package/dist/ui-components.es358.js +6 -6
  559. package/dist/ui-components.es358.js.map +1 -1
  560. package/dist/ui-components.es36.js +412 -246
  561. package/dist/ui-components.es36.js.map +1 -1
  562. package/dist/ui-components.es366.js +1 -1
  563. package/dist/ui-components.es368.js +1 -1
  564. package/dist/ui-components.es37.js +10 -120
  565. package/dist/ui-components.es37.js.map +1 -1
  566. package/dist/ui-components.es372.js +3 -3
  567. package/dist/ui-components.es374.js +1 -1
  568. package/dist/ui-components.es375.js +3 -3
  569. package/dist/ui-components.es379.js +1 -1
  570. package/dist/ui-components.es38.js +604 -88
  571. package/dist/ui-components.es38.js.map +1 -1
  572. package/dist/ui-components.es380.js +1 -1
  573. package/dist/ui-components.es381.js +1 -1
  574. package/dist/ui-components.es382.js +6 -6
  575. package/dist/ui-components.es383.js +1 -1
  576. package/dist/ui-components.es384.js +1 -1
  577. package/dist/ui-components.es385.js +6 -6
  578. package/dist/ui-components.es386.js +8 -8
  579. package/dist/ui-components.es387.js +6 -6
  580. package/dist/ui-components.es388.js +1 -1
  581. package/dist/ui-components.es389.js +2 -2
  582. package/dist/ui-components.es39.js +273 -47
  583. package/dist/ui-components.es39.js.map +1 -1
  584. package/dist/ui-components.es390.js +3 -9
  585. package/dist/ui-components.es390.js.map +1 -1
  586. package/dist/ui-components.es391.js +3 -51
  587. package/dist/ui-components.es391.js.map +1 -1
  588. package/dist/ui-components.es392.js +15 -7
  589. package/dist/ui-components.es392.js.map +1 -1
  590. package/dist/ui-components.es393.js +3 -4
  591. package/dist/ui-components.es393.js.map +1 -1
  592. package/dist/ui-components.es394.js +9 -3
  593. package/dist/ui-components.es394.js.map +1 -1
  594. package/dist/ui-components.es395.js +4 -3
  595. package/dist/ui-components.es395.js.map +1 -1
  596. package/dist/ui-components.es396.js +6 -4
  597. package/dist/ui-components.es396.js.map +1 -1
  598. package/dist/ui-components.es397.js +9 -3
  599. package/dist/ui-components.es397.js.map +1 -1
  600. package/dist/ui-components.es398.js +7 -11
  601. package/dist/ui-components.es398.js.map +1 -1
  602. package/dist/ui-components.es399.js +4 -9
  603. package/dist/ui-components.es399.js.map +1 -1
  604. package/dist/ui-components.es4.js +5 -5
  605. package/dist/ui-components.es40.js +78 -216
  606. package/dist/ui-components.es40.js.map +1 -1
  607. package/dist/ui-components.es400.js +3 -30
  608. package/dist/ui-components.es400.js.map +1 -1
  609. package/dist/ui-components.es401.js +4 -25
  610. package/dist/ui-components.es401.js.map +1 -1
  611. package/dist/ui-components.es402.js +11 -3
  612. package/dist/ui-components.es402.js.map +1 -1
  613. package/dist/ui-components.es403.js +9 -3
  614. package/dist/ui-components.es403.js.map +1 -1
  615. package/dist/ui-components.es404.js +30 -9
  616. package/dist/ui-components.es404.js.map +1 -1
  617. package/dist/ui-components.es405.js +24 -8
  618. package/dist/ui-components.es405.js.map +1 -1
  619. package/dist/ui-components.es406.js +50 -14
  620. package/dist/ui-components.es406.js.map +1 -1
  621. package/dist/ui-components.es407.js +3 -4
  622. package/dist/ui-components.es407.js.map +1 -1
  623. package/dist/ui-components.es408.js +8 -5
  624. package/dist/ui-components.es408.js.map +1 -1
  625. package/dist/ui-components.es409.js +2 -2
  626. package/dist/ui-components.es41.js +87 -224
  627. package/dist/ui-components.es41.js.map +1 -1
  628. package/dist/ui-components.es410.js +1 -1
  629. package/dist/ui-components.es411.js +1 -1
  630. package/dist/ui-components.es412.js +1 -1
  631. package/dist/ui-components.es413.js +1 -1
  632. package/dist/ui-components.es414.js +2 -2
  633. package/dist/ui-components.es415.js +1 -1
  634. package/dist/ui-components.es417.js +5 -5
  635. package/dist/ui-components.es42.js +53 -16
  636. package/dist/ui-components.es42.js.map +1 -1
  637. package/dist/ui-components.es420.js +1 -1
  638. package/dist/ui-components.es422.js +2 -2
  639. package/dist/ui-components.es423.js +3 -3
  640. package/dist/ui-components.es43.js +195 -285
  641. package/dist/ui-components.es43.js.map +1 -1
  642. package/dist/ui-components.es44.js +214 -106
  643. package/dist/ui-components.es44.js.map +1 -1
  644. package/dist/ui-components.es45.js +32 -143
  645. package/dist/ui-components.es45.js.map +1 -1
  646. package/dist/ui-components.es46.js +349 -20
  647. package/dist/ui-components.es46.js.map +1 -1
  648. package/dist/ui-components.es47.js +152 -122
  649. package/dist/ui-components.es47.js.map +1 -1
  650. package/dist/ui-components.es48.js +142 -35
  651. package/dist/ui-components.es48.js.map +1 -1
  652. package/dist/ui-components.es49.js +19 -22
  653. package/dist/ui-components.es49.js.map +1 -1
  654. package/dist/ui-components.es5.js +7 -7
  655. package/dist/ui-components.es50.js +124 -252
  656. package/dist/ui-components.es50.js.map +1 -1
  657. package/dist/ui-components.es51.js +36 -39
  658. package/dist/ui-components.es51.js.map +1 -1
  659. package/dist/ui-components.es52.js +23 -1026
  660. package/dist/ui-components.es52.js.map +1 -1
  661. package/dist/ui-components.es53.js +227 -98
  662. package/dist/ui-components.es53.js.map +1 -1
  663. package/dist/ui-components.es54.js +27 -374
  664. package/dist/ui-components.es54.js.map +1 -1
  665. package/dist/ui-components.es55.js +1026 -6
  666. package/dist/ui-components.es55.js.map +1 -1
  667. package/dist/ui-components.es56.js +123 -53
  668. package/dist/ui-components.es56.js.map +1 -1
  669. package/dist/ui-components.es57.js +385 -161
  670. package/dist/ui-components.es57.js.map +1 -1
  671. package/dist/ui-components.es58.js +68 -210
  672. package/dist/ui-components.es58.js.map +1 -1
  673. package/dist/ui-components.es59.js +29 -241
  674. package/dist/ui-components.es59.js.map +1 -1
  675. package/dist/ui-components.es6.js +113 -111
  676. package/dist/ui-components.es6.js.map +1 -1
  677. package/dist/ui-components.es60.js +24 -67
  678. package/dist/ui-components.es60.js.map +1 -1
  679. package/dist/ui-components.es61.js +41 -28
  680. package/dist/ui-components.es61.js.map +1 -1
  681. package/dist/ui-components.es62.js +19 -25
  682. package/dist/ui-components.es62.js.map +1 -1
  683. package/dist/ui-components.es63.js +211 -42
  684. package/dist/ui-components.es63.js.map +1 -1
  685. package/dist/ui-components.es64.js +241 -20
  686. package/dist/ui-components.es64.js.map +1 -1
  687. package/dist/ui-components.es67.js +1 -1
  688. package/dist/ui-components.es68.js +1 -1
  689. package/dist/ui-components.es7.js +2 -2
  690. package/dist/ui-components.es71.js +1 -1
  691. package/dist/ui-components.es72.js +1 -1
  692. package/dist/ui-components.es73.js +2 -6
  693. package/dist/ui-components.es73.js.map +1 -1
  694. package/dist/ui-components.es74.js +2 -6
  695. package/dist/ui-components.es74.js.map +1 -1
  696. package/dist/ui-components.es75.js +2 -6
  697. package/dist/ui-components.es75.js.map +1 -1
  698. package/dist/ui-components.es76.js +2 -6
  699. package/dist/ui-components.es76.js.map +1 -1
  700. package/dist/ui-components.es77.js +197 -285
  701. package/dist/ui-components.es77.js.map +1 -1
  702. package/dist/ui-components.es78.js +13 -329
  703. package/dist/ui-components.es78.js.map +1 -1
  704. package/dist/ui-components.es79.js +6 -284
  705. package/dist/ui-components.es79.js.map +1 -1
  706. package/dist/ui-components.es8.js +1 -1
  707. package/dist/ui-components.es80.js +6 -261
  708. package/dist/ui-components.es80.js.map +1 -1
  709. package/dist/ui-components.es81.js +6 -171
  710. package/dist/ui-components.es81.js.map +1 -1
  711. package/dist/ui-components.es82.js +6 -13
  712. package/dist/ui-components.es82.js.map +1 -1
  713. package/dist/ui-components.es83.js +296 -14
  714. package/dist/ui-components.es83.js.map +1 -1
  715. package/dist/ui-components.es84.js +331 -2
  716. package/dist/ui-components.es84.js.map +1 -1
  717. package/dist/ui-components.es85.js +284 -2
  718. package/dist/ui-components.es85.js.map +1 -1
  719. package/dist/ui-components.es86.js +261 -2
  720. package/dist/ui-components.es86.js.map +1 -1
  721. package/dist/ui-components.es87.js +171 -2
  722. package/dist/ui-components.es87.js.map +1 -1
  723. package/dist/ui-components.es88.js +13 -5
  724. package/dist/ui-components.es88.js.map +1 -1
  725. package/dist/ui-components.es89.js +5 -9
  726. package/dist/ui-components.es89.js.map +1 -1
  727. package/dist/ui-components.es9.js +3 -3
  728. package/dist/ui-components.es90.js +13 -110
  729. package/dist/ui-components.es90.js.map +1 -1
  730. package/dist/ui-components.es91.js +4 -9
  731. package/dist/ui-components.es91.js.map +1 -1
  732. package/dist/ui-components.es92.js +4 -17
  733. package/dist/ui-components.es92.js.map +1 -1
  734. package/dist/ui-components.es93.js +3 -2
  735. package/dist/ui-components.es93.js.map +1 -1
  736. package/dist/ui-components.es94.js +8 -3
  737. package/dist/ui-components.es94.js.map +1 -1
  738. package/dist/ui-components.es95.js +8 -31
  739. package/dist/ui-components.es95.js.map +1 -1
  740. package/dist/ui-components.es96.js +7 -15
  741. package/dist/ui-components.es96.js.map +1 -1
  742. package/dist/ui-components.es97.js +12 -56
  743. package/dist/ui-components.es97.js.map +1 -1
  744. package/dist/ui-components.es98.js +20 -7
  745. package/dist/ui-components.es98.js.map +1 -1
  746. package/dist/ui-components.es99.js +7 -14
  747. package/dist/ui-components.es99.js.map +1 -1
  748. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es6.js","sources":["../src/components/TwoPaneLayout/TwoPaneLayout.tsx"],"sourcesContent":["import { CloseFullscreenRounded, DragHandle, TableChartRounded } from \"@mui/icons-material\";\nimport {\n Stack,\n Box,\n Typography,\n Tabs,\n Tab,\n IconButton,\n Tooltip,\n Button,\n useMediaQuery,\n useTheme,\n Divider,\n} from \"@mui/material\";\nimport DownloadIcon from \"@mui/icons-material/Download\";\nimport React, { useMemo, useRef, useState } from \"react\";\nimport DownloadModal from \"./DownloadModal\";\nimport FigurePanel from \"./FigurePanel\";\nimport type { Direction, ResponsiveDirection, TwoPaneLayoutProps } from \"./types\";\n\nfunction useResolvedDirection(direction: ResponsiveDirection): Direction {\n const theme = useTheme();\n\n const matches = {\n xs: useMediaQuery(theme.breakpoints.up(\"xs\")),\n sm: useMediaQuery(theme.breakpoints.up(\"sm\")),\n md: useMediaQuery(theme.breakpoints.up(\"md\")),\n lg: useMediaQuery(theme.breakpoints.up(\"lg\")),\n xl: useMediaQuery(theme.breakpoints.up(\"xl\")),\n };\n\n if (typeof direction === \"string\") return direction;\n\n for (const bp of [\"xl\", \"lg\", \"md\", \"sm\", \"xs\"] as const) {\n if (matches[bp] && direction[bp]) return direction[bp];\n }\n\n return \"column\";\n}\n\nconst TwoPaneLayout = ({ TableComponent, plots, direction = \"row\" }: TwoPaneLayoutProps) => {\n const [tab, setTab] = useState<number>(0);\n const [tableOpen, setTableOpen] = useState(true);\n const [modalOpen, setModalOpen] = useState<boolean>(false);\n const [leftPct, setLeftPct] = useState(40);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const resolvedDirection = useResolvedDirection(direction);\n const isColumn = resolvedDirection === \"column\";\n\n const tabValue = Math.min(tab, plots.length - 1);\n const activePlot = plots[tabValue];\n const hasDownload = !!(activePlot?.onDownloadSVG || activePlot?.onDownloadPNG);\n const paneHeight = isColumn ? \"500px\" : \"max(60vh, 600px)\";\n\n const handleSetTab = (newTab: number) => {\n setTab(newTab);\n };\n\n const handleToggleTable = () => {\n setTableOpen(!tableOpen);\n };\n\n const handleOpenDownload = () => {\n if (hasDownload) {\n setModalOpen(true);\n }\n };\n\n const plotTabs = useMemo(() => plots.map((x) => ({ tabTitle: x.tabTitle, icon: x.icon })), [plots]);\n\n const figures = useMemo(\n () =>\n plots.map((x) => ({\n title: x.tabTitle,\n component: x.plotComponent,\n })),\n [plots]\n );\n\n const tableIconButton = (\n <Tooltip title={`${tableOpen ? \"Hide\" : \"Show\"} Table`}>\n <IconButton onClick={handleToggleTable} sx={{ marginLeft: -1, marginRight: tableOpen ? -1 : 0 }}>\n <TableChartRounded color=\"primary\" fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n );\n\n const hideTableButton = (\n <Tooltip title=\"Hide Table\">\n <IconButton onClick={handleToggleTable} sx={{ mx: -1 }}>\n <CloseFullscreenRounded color=\"primary\" />\n </IconButton>\n </Tooltip>\n );\n\n const downloadButton = isColumn ? (\n <IconButton color=\"primary\" aria-label=\"download\" size=\"small\" onClick={handleOpenDownload}>\n <DownloadIcon />\n </IconButton>\n ) : (\n <Button variant=\"text\" startIcon={<DownloadIcon />} onClick={handleOpenDownload} sx={{ flexShrink: 0 }}>\n Download\n </Button>\n );\n\n const handleDividerPointerDown = (e: React.PointerEvent<HTMLDivElement>) => {\n e.currentTarget.setPointerCapture(e.pointerId);\n };\n\n const handleDividerPointerMove = (e: React.PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) return;\n const container = containerRef.current;\n if (!container) return;\n const rect = container.getBoundingClientRect();\n const newPct = ((e.clientX - rect.left) / rect.width) * 100;\n setLeftPct(Math.min(70, Math.max(15, newPct)));\n };\n\n const handleDividerPointerUp = (e: React.PointerEvent<HTMLDivElement>) => {\n e.currentTarget.releasePointerCapture(e.pointerId);\n };\n\n return (\n <Box\n ref={containerRef}\n display=\"grid\"\n gridTemplateColumns={\n !isColumn && tableOpen\n ? (theme) => `${leftPct}% ${theme.spacing(2)} minmax(0, 1fr)`\n : \"minmax(0, 1fr)\"\n }\n gridTemplateRows={isColumn && tableOpen ? \"auto auto auto auto\" : \"auto 1fr\"}\n rowGap={1}\n columnGap={!isColumn && tableOpen ? 0 : 2}\n >\n {/* Table header — row 1 at all breakpoints */}\n <Stack\n display={tableOpen ? \"flex\" : \"none\"}\n direction=\"row\"\n alignItems=\"center\"\n gap={1}\n gridRow={1}\n gridColumn={1}\n >\n {tableIconButton}\n <Typography variant=\"h6\" sx={{ flexGrow: 1 }}>\n Table View\n </Typography>\n {hideTableButton}\n </Stack>\n\n {/* Divider — only visible in row direction when table is open */}\n {tableOpen && !isColumn && (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n gridRow=\"1 / 3\"\n gridColumn={2}\n sx={{ cursor: \"col-resize\" }}\n onPointerDown={handleDividerPointerDown}\n onPointerMove={handleDividerPointerMove}\n onPointerUp={handleDividerPointerUp}\n >\n <Divider\n orientation=\"vertical\"\n flexItem\n sx={{\n \"& .MuiDivider-wrapperVertical\": {\n padding: 0,\n display: \"flex\",\n },\n mx: \"auto\",\n }}\n >\n <DragHandle sx={{ transform: \"rotate(90deg)\", color: \"divider\" }} />\n </Divider>\n </Box>\n )}\n\n {/* Tabs header */}\n <Stack\n direction=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gridRow={isColumn && tableOpen ? 3 : 1}\n gridColumn={!isColumn && tableOpen ? 3 : 1}\n >\n {!tableOpen && tableIconButton}\n <Tabs\n value={tabValue}\n variant=\"scrollable\"\n onChange={(_, value) => handleSetTab(value)}\n sx={{ flexGrow: 1, \"& .MuiTabs-scrollButtons.Mui-disabled\": { opacity: 0.3 } }}\n >\n {plotTabs.map((tab, i) => (\n <Tab\n label={isColumn ? \"\" : tab.tabTitle}\n key={i}\n icon={tab.icon}\n iconPosition=\"start\"\n sx={{ minHeight: \"48px\" }}\n />\n ))}\n </Tabs>\n {hasDownload && downloadButton}\n </Stack>\n\n {/* Table content — row 2 */}\n <Box display={tableOpen ? \"block\" : \"none\"} gridRow={2} gridColumn={1} height={paneHeight}>\n {TableComponent}\n </Box>\n\n {/* Plot content */}\n <Box\n gridRow={isColumn && tableOpen ? 4 : 2}\n gridColumn={!isColumn && tableOpen ? 3 : 1}\n height={paneHeight}\n minWidth={0}\n >\n <FigurePanel value={tabValue} figures={figures} />\n {modalOpen && (\n <DownloadModal\n open={modalOpen}\n onClose={() => setModalOpen(false)}\n onDownloadSVG={activePlot?.onDownloadSVG}\n onDownloadPNG={activePlot?.onDownloadPNG}\n plotTitle={activePlot?.tabTitle}\n />\n )}\n </Box>\n </Box>\n );\n};\n\nexport default TwoPaneLayout;\n"],"names":["useResolvedDirection","direction","$","_c","theme","useTheme","t0","breakpoints","up","t1","useMediaQuery","t2","t3","t4","t5","t6","t7","t8","matches","xs","sm","md","lg","xl","bp","TwoPaneLayout","TableComponent","plots","undefined","tab","setTab","useState","tableOpen","setTableOpen","modalOpen","setModalOpen","leftPct","setLeftPct","containerRef","useRef","isColumn","tabValue","Math","min","length","activePlot","hasDownload","onDownloadSVG","onDownloadPNG","paneHeight","Symbol","for","newTab","handleSetTab","handleToggleTable","handleOpenDownload","map","_temp","plotTabs","_temp2","figures","t9","marginLeft","marginRight","t10","jsx","TableChartRounded","t11","IconButton","t12","Tooltip","tableIconButton","t13","t14","mx","CloseFullscreenRounded","t15","hideTableButton","t16","DownloadIcon","Button","flexShrink","downloadButton","handleDividerPointerDown","_temp3","t17","e_0","e","currentTarget","hasPointerCapture","pointerId","container","current","rect","getBoundingClientRect","newPct","clientX","left","width","max","handleDividerPointerMove","handleDividerPointerUp","_temp4","t18","spacing","t19","t20","t21","t22","Typography","flexGrow","t23","Stack","t24","Box","cursor","Divider","padding","display","DragHandle","transform","color","t25","t26","t27","t28","_","value","t29","opacity","t30","t31","tab_0","i","Tab","tabTitle","icon","minHeight","Tabs","t32","t33","t34","t35","t36","t37","t38","FigurePanel","t39","DownloadModal","t40","jsxs","t41","x","x_0","title","component","plotComponent","setPointerCapture","e_1","releasePointerCapture"],"mappings":"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"}
1
+ {"version":3,"file":"ui-components.es6.js","sources":["../src/components/TwoPaneLayout/TwoPaneLayout.tsx"],"sourcesContent":["import { CloseFullscreenRounded, DragHandle, TableChartRounded } from \"@mui/icons-material\";\nimport {\n Stack,\n Box,\n Typography,\n Tabs,\n Tab,\n IconButton,\n Tooltip,\n Button,\n useMediaQuery,\n useTheme,\n Divider,\n} from \"@mui/material\";\nimport DownloadIcon from \"@mui/icons-material/Download\";\nimport React, { useMemo, useRef, useState } from \"react\";\nimport DownloadModal from \"./DownloadModal\";\nimport FigurePanel from \"./FigurePanel\";\nimport type { Direction, ResponsiveDirection, TwoPaneLayoutProps } from \"./types\";\n\nfunction useResolvedDirection(direction: ResponsiveDirection): Direction {\n const theme = useTheme();\n\n const matches = {\n xs: useMediaQuery(theme.breakpoints.up(\"xs\")),\n sm: useMediaQuery(theme.breakpoints.up(\"sm\")),\n md: useMediaQuery(theme.breakpoints.up(\"md\")),\n lg: useMediaQuery(theme.breakpoints.up(\"lg\")),\n xl: useMediaQuery(theme.breakpoints.up(\"xl\")),\n };\n\n if (typeof direction === \"string\") return direction;\n\n for (const bp of [\"xl\", \"lg\", \"md\", \"sm\", \"xs\"] as const) {\n if (matches[bp] && direction[bp]) return direction[bp];\n }\n\n return \"column\";\n}\n\nconst TwoPaneLayout = ({ TableComponent, plots, direction = \"row\", columnHeight = \"500px\", rowHeight = \"max(60vh, 600px)\" }: TwoPaneLayoutProps) => {\n const [tab, setTab] = useState<number>(0);\n const [tableOpen, setTableOpen] = useState(true);\n const [modalOpen, setModalOpen] = useState<boolean>(false);\n const [leftPct, setLeftPct] = useState(40);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const resolvedDirection = useResolvedDirection(direction);\n const isColumn = resolvedDirection === \"column\";\n\n const tabValue = Math.min(tab, plots.length - 1);\n const activePlot = plots[tabValue];\n const hasDownload = !!(activePlot?.onDownloadSVG || activePlot?.onDownloadPNG);\n const paneHeight = isColumn ? columnHeight : rowHeight;\n\n const handleSetTab = (newTab: number) => {\n setTab(newTab);\n };\n\n const handleToggleTable = () => {\n setTableOpen(!tableOpen);\n };\n\n const handleOpenDownload = () => {\n if (hasDownload) {\n setModalOpen(true);\n }\n };\n\n const plotTabs = useMemo(() => plots.map((x) => ({ tabTitle: x.tabTitle, icon: x.icon })), [plots]);\n\n const figures = useMemo(\n () =>\n plots.map((x) => ({\n title: x.tabTitle,\n component: x.plotComponent,\n })),\n [plots]\n );\n\n const tableIconButton = (\n <Tooltip title={`${tableOpen ? \"Hide\" : \"Show\"} Table`}>\n <IconButton onClick={handleToggleTable} sx={{ marginLeft: -1, marginRight: tableOpen ? -1 : 0 }}>\n <TableChartRounded color=\"primary\" fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n );\n\n const hideTableButton = (\n <Tooltip title=\"Hide Table\">\n <IconButton onClick={handleToggleTable} sx={{ mx: -1 }}>\n <CloseFullscreenRounded color=\"primary\" />\n </IconButton>\n </Tooltip>\n );\n\n const downloadButton = isColumn ? (\n <IconButton color=\"primary\" aria-label=\"download\" size=\"small\" onClick={handleOpenDownload}>\n <DownloadIcon />\n </IconButton>\n ) : (\n <Button variant=\"text\" startIcon={<DownloadIcon />} onClick={handleOpenDownload} sx={{ flexShrink: 0 }}>\n Download\n </Button>\n );\n\n const handleDividerPointerDown = (e: React.PointerEvent<HTMLDivElement>) => {\n e.currentTarget.setPointerCapture(e.pointerId);\n };\n\n const handleDividerPointerMove = (e: React.PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) return;\n const container = containerRef.current;\n if (!container) return;\n const rect = container.getBoundingClientRect();\n const newPct = ((e.clientX - rect.left) / rect.width) * 100;\n setLeftPct(Math.min(70, Math.max(15, newPct)));\n };\n\n const handleDividerPointerUp = (e: React.PointerEvent<HTMLDivElement>) => {\n e.currentTarget.releasePointerCapture(e.pointerId);\n };\n\n return (\n <Box\n ref={containerRef}\n display=\"grid\"\n gridTemplateColumns={\n !isColumn && tableOpen\n ? (theme) => `${leftPct}% ${theme.spacing(2)} minmax(0, 1fr)`\n : \"minmax(0, 1fr)\"\n }\n gridTemplateRows={isColumn && tableOpen ? \"auto auto auto auto\" : \"auto 1fr\"}\n rowGap={1}\n columnGap={!isColumn && tableOpen ? 0 : 2}\n >\n {/* Table header — row 1 at all breakpoints */}\n <Stack\n display={tableOpen ? \"flex\" : \"none\"}\n direction=\"row\"\n alignItems=\"center\"\n gap={1}\n gridRow={1}\n gridColumn={1}\n >\n {tableIconButton}\n <Typography variant=\"h6\" sx={{ flexGrow: 1 }}>\n Table View\n </Typography>\n {hideTableButton}\n </Stack>\n\n {/* Divider — only visible in row direction when table is open */}\n {tableOpen && !isColumn && (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n gridRow=\"1 / 3\"\n gridColumn={2}\n sx={{ cursor: \"col-resize\" }}\n onPointerDown={handleDividerPointerDown}\n onPointerMove={handleDividerPointerMove}\n onPointerUp={handleDividerPointerUp}\n >\n <Divider\n orientation=\"vertical\"\n flexItem\n sx={{\n \"& .MuiDivider-wrapperVertical\": {\n padding: 0,\n display: \"flex\",\n },\n mx: \"auto\",\n }}\n >\n <DragHandle sx={{ transform: \"rotate(90deg)\", color: \"divider\" }} />\n </Divider>\n </Box>\n )}\n\n {/* Tabs header */}\n <Stack\n direction=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n gridRow={isColumn && tableOpen ? 3 : 1}\n gridColumn={!isColumn && tableOpen ? 3 : 1}\n >\n {!tableOpen && tableIconButton}\n <Tabs\n value={tabValue}\n variant=\"scrollable\"\n onChange={(_, value) => handleSetTab(value)}\n sx={{ flexGrow: 1, \"& .MuiTabs-scrollButtons.Mui-disabled\": { opacity: 0.3 } }}\n >\n {plotTabs.map((tab, i) => (\n <Tab\n label={isColumn ? \"\" : tab.tabTitle}\n key={i}\n icon={tab.icon}\n iconPosition=\"start\"\n sx={{ minHeight: \"48px\" }}\n />\n ))}\n </Tabs>\n {hasDownload && downloadButton}\n </Stack>\n\n {/* Table content — row 2 */}\n <Box display={tableOpen ? \"block\" : \"none\"} gridRow={2} gridColumn={1} height={paneHeight}>\n {TableComponent}\n </Box>\n\n {/* Plot content */}\n <Box\n gridRow={isColumn && tableOpen ? 4 : 2}\n gridColumn={!isColumn && tableOpen ? 3 : 1}\n height={paneHeight}\n minWidth={0}\n >\n <FigurePanel value={tabValue} figures={figures} />\n {modalOpen && (\n <DownloadModal\n open={modalOpen}\n onClose={() => setModalOpen(false)}\n onDownloadSVG={activePlot?.onDownloadSVG}\n onDownloadPNG={activePlot?.onDownloadPNG}\n plotTitle={activePlot?.tabTitle}\n />\n )}\n </Box>\n </Box>\n );\n};\n\nexport default TwoPaneLayout;\n"],"names":["useResolvedDirection","direction","$","_c","theme","useTheme","t0","breakpoints","up","t1","useMediaQuery","t2","t3","t4","t5","t6","t7","t8","matches","xs","sm","md","lg","xl","bp","TwoPaneLayout","TableComponent","plots","columnHeight","rowHeight","undefined","tab","setTab","useState","tableOpen","setTableOpen","modalOpen","setModalOpen","leftPct","setLeftPct","containerRef","useRef","isColumn","tabValue","Math","min","length","activePlot","hasDownload","onDownloadSVG","onDownloadPNG","paneHeight","Symbol","for","newTab","handleSetTab","handleToggleTable","handleOpenDownload","map","_temp","plotTabs","_temp2","figures","t9","t10","t11","marginLeft","marginRight","t12","jsx","TableChartRounded","t13","IconButton","t14","Tooltip","tableIconButton","t15","t16","mx","CloseFullscreenRounded","t17","hideTableButton","t18","DownloadIcon","Button","flexShrink","downloadButton","handleDividerPointerDown","_temp3","t19","e_0","e","currentTarget","hasPointerCapture","pointerId","container","current","rect","getBoundingClientRect","newPct","clientX","left","width","max","handleDividerPointerMove","handleDividerPointerUp","_temp4","t20","spacing","t21","t22","t23","t24","Typography","flexGrow","t25","Stack","t26","Box","cursor","Divider","padding","display","DragHandle","transform","color","t27","t28","t29","t30","_","value","t31","opacity","t32","t33","tab_0","i","Tab","tabTitle","icon","minHeight","Tabs","t34","t35","t36","t37","t38","t39","t40","FigurePanel","t41","DownloadModal","t42","jsxs","t43","x","x_0","title","component","plotComponent","setPointerCapture","e_1","releasePointerCapture"],"mappings":"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"}
@@ -1,73 +1,30 @@
1
- import { j as t } from "./ui-components.es15.js";
2
- import { c as S } from "./ui-components.es16.js";
3
- import { Stack as D, Typography as y, IconButton as C, Divider as v, Box as g, Button as _, Modal as k } from "@mui/material";
4
- import G from "./ui-components.es18.js";
5
- const P = (o) => {
6
- const e = S.c(24), {
7
- open: h,
8
- onClose: l,
9
- onDownloadSVG: b,
10
- onDownloadPNG: u,
11
- plotTitle: j
12
- } = o;
13
- let n;
14
- e[0] !== u ? (n = {
15
- label: "PNG",
16
- action: u
17
- }, e[0] = u, e[1] = n) : n = e[1];
1
+ import { j as l } from "./ui-components.es15.js";
2
+ import { c as f } from "./ui-components.es17.js";
3
+ import { Switch as x, Box as p, Tooltip as u, FormControlLabel as S } from "@mui/material";
4
+ import { Sort as h } from "@mui/icons-material";
5
+ const g = (a) => {
6
+ const e = f.c(9), {
7
+ autoSort: m,
8
+ setAutoSort: c
9
+ } = a;
18
10
  let r;
19
- e[2] !== b ? (r = {
20
- label: "SVG",
21
- action: b
22
- }, e[2] = b, e[3] = r) : r = e[3];
23
- let d;
24
- e[4] !== n || e[5] !== r ? (d = [n, r].filter(I), e[4] = n, e[5] = r, e[6] = d) : d = e[6];
25
- const w = d;
26
- let m;
27
- e[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (m = {
28
- position: "absolute",
29
- top: "50%",
30
- left: "50%",
31
- transform: "translate(-50%, -50%)",
32
- bgcolor: "background.paper",
33
- boxShadow: 24,
34
- borderRadius: 2,
35
- p: 3,
36
- width: 360
37
- }, e[7] = m) : m = e[7];
38
- let i;
39
- e[8] !== j ? (i = /* @__PURE__ */ t.jsxs(y, { variant: "h6", fontWeight: 600, mb: 1, children: [
40
- "Download ",
41
- j
42
- ] }), e[8] = j, e[9] = i) : i = e[9];
43
- let f;
44
- e[10] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (f = /* @__PURE__ */ t.jsx(y, { variant: "body2", color: "text.secondary", mb: 2, children: "Choose a file format to export your plot." }), e[10] = f) : f = e[10];
45
- let p;
46
- e[11] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (p = /* @__PURE__ */ t.jsx(v, { flexItem: !0 }), e[11] = p) : p = e[11];
47
- let a;
48
- e[12] !== w ? (a = /* @__PURE__ */ t.jsx(D, { spacing: 1.5, divider: p, children: w.map(B) }), e[12] = w, e[13] = a) : a = e[13];
11
+ e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (r = {
12
+ mr: 1
13
+ }, e[0] = r) : r = e[0];
14
+ let t;
15
+ e[1] !== c ? (t = (j, n) => c(n), e[1] = c, e[2] = t) : t = e[2];
16
+ let o;
17
+ e[3] !== m || e[4] !== t ? (o = /* @__PURE__ */ l.jsx(x, { color: "primary", size: "small", sx: r, checked: m, onChange: t }), e[3] = m, e[4] = t, e[5] = o) : o = e[5];
49
18
  let s;
50
- e[14] !== l ? (s = /* @__PURE__ */ t.jsx(g, { mt: 3, textAlign: "right", children: /* @__PURE__ */ t.jsx(_, { onClick: l, children: "Close" }) }), e[14] = l, e[15] = s) : s = e[15];
51
- let c;
52
- e[16] !== i || e[17] !== a || e[18] !== s ? (c = /* @__PURE__ */ t.jsxs(g, { sx: m, children: [
53
- i,
54
- f,
55
- a,
56
- s
57
- ] }), e[16] = i, e[17] = a, e[18] = s, e[19] = c) : c = e[19];
58
- let x;
59
- return e[20] !== l || e[21] !== h || e[22] !== c ? (x = /* @__PURE__ */ t.jsx(k, { open: h, onClose: l, children: c }), e[20] = l, e[21] = h, e[22] = c, e[23] = x) : x = e[23], x;
19
+ e[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (s = /* @__PURE__ */ l.jsx(p, { sx: {
20
+ display: "flex",
21
+ alignItems: "center",
22
+ lineHeight: 1
23
+ }, children: /* @__PURE__ */ l.jsx(h, { fontSize: "small" }) }), e[6] = s) : s = e[6];
24
+ let i;
25
+ return e[7] !== o ? (i = /* @__PURE__ */ l.jsx(u, { title: "Auto sort selected rows", children: /* @__PURE__ */ l.jsx(S, { value: "autoSort", control: o, label: s, labelPlacement: "start" }) }), e[7] = o, e[8] = i) : i = e[8], i;
60
26
  };
61
- function I(o) {
62
- return o.action;
63
- }
64
- function B(o) {
65
- return /* @__PURE__ */ t.jsxs(D, { direction: "row", alignItems: "center", justifyContent: "space-between", children: [
66
- /* @__PURE__ */ t.jsx(y, { variant: "body1", children: o.label }),
67
- /* @__PURE__ */ t.jsx(C, { color: "primary", onClick: o.action, "aria-label": `Download ${o.label}`, children: /* @__PURE__ */ t.jsx(G, {}) })
68
- ] }, o.label);
69
- }
70
27
  export {
71
- P as default
28
+ g as default
72
29
  };
73
30
  //# sourceMappingURL=ui-components.es60.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es60.js","sources":["../src/components/TwoPaneLayout/DownloadModal.tsx"],"sourcesContent":["import React from \"react\";\nimport { Modal, Box, IconButton, Stack, Typography, Divider, Button } from \"@mui/material\";\nimport DownloadIcon from \"@mui/icons-material/Download\";\n\nexport interface DownloadModalProps {\n open: boolean;\n onClose: () => void;\n onDownloadSVG?: () => void;\n onDownloadPNG?: () => void;\n plotTitle: string;\n}\n\nconst DownloadModal: React.FC<DownloadModalProps> = ({ open, onClose, onDownloadSVG, onDownloadPNG, plotTitle }) => {\n const downloadOptions = [\n { label: \"PNG\", action: onDownloadPNG },\n { label: \"SVG\", action: onDownloadSVG },\n ].filter((option) => option.action);\n\n return (\n <Modal open={open} onClose={onClose}>\n <Box\n sx={{\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n bgcolor: \"background.paper\",\n boxShadow: 24,\n borderRadius: 2,\n p: 3,\n width: 360,\n }}\n >\n <Typography variant=\"h6\" fontWeight={600} mb={1}>\n Download {plotTitle}\n </Typography>\n <Typography variant=\"body2\" color=\"text.secondary\" mb={2}>\n Choose a file format to export your plot.\n </Typography>\n <Stack spacing={1.5} divider={<Divider flexItem />}>\n {downloadOptions.map((option) => (\n <Stack key={option.label} direction=\"row\" alignItems=\"center\" justifyContent=\"space-between\">\n <Typography variant=\"body1\">{option.label}</Typography>\n <IconButton color=\"primary\" onClick={option.action} aria-label={`Download ${option.label}`}>\n <DownloadIcon />\n </IconButton>\n </Stack>\n ))}\n </Stack>\n <Box mt={3} textAlign=\"right\">\n <Button onClick={onClose}>Close</Button>\n </Box>\n </Box>\n </Modal>\n );\n};\n\nexport default DownloadModal;\n"],"names":["DownloadModal","t0","$","_c","open","onClose","onDownloadSVG","onDownloadPNG","plotTitle","t1","label","action","t2","t3","filter","_temp","downloadOptions","t4","Symbol","for","position","top","left","transform","bgcolor","boxShadow","borderRadius","p","width","t5","Typography","t6","t7","Divider","t8","jsx","Stack","map","_temp2","t9","Box","Button","t10","jsxs","t11","Modal","option","option_0","IconButton","DownloadIcon"],"mappings":"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"}
1
+ {"version":3,"file":"ui-components.es60.js","sources":["../src/components/TwoPaneLayout/AutoSortSwitch.tsx"],"sourcesContent":["import React from \"react\";\nimport { Tooltip, FormControlLabel, Switch, Box } from \"@mui/material\";\nimport { Sort } from \"@mui/icons-material\";\n\ninterface AutoSortSwitchProps {\n autoSort: boolean;\n setAutoSort: (value: boolean) => void;\n}\n\nconst AutoSortSwitch: React.FC<AutoSortSwitchProps> = ({ autoSort, setAutoSort }) => {\n return (\n <Tooltip title=\"Auto sort selected rows\">\n <FormControlLabel\n value=\"autoSort\"\n control={\n <Switch\n color=\"primary\"\n size=\"small\"\n sx={{ mr: 1 }}\n checked={autoSort}\n onChange={(_, checked) => setAutoSort(checked)}\n />\n }\n label={\n <Box sx={{ display: \"flex\", alignItems: \"center\", lineHeight: 1 }}>\n <Sort fontSize=\"small\" />\n </Box>\n }\n labelPlacement=\"start\"\n />\n </Tooltip>\n );\n};\n\nexport default AutoSortSwitch;\n"],"names":["AutoSortSwitch","t0","$","_c","autoSort","setAutoSort","t1","Symbol","for","mr","t2","_","checked","t3","jsx","Switch","t4","Box","display","alignItems","lineHeight","Sort","t5","Tooltip","FormControlLabel"],"mappings":";;;;AASA,MAAMA,IAAgDC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA,GAAC;AAAA,IAAAC,UAAAA;AAAAA,IAAAC,aAAAA;AAAAA,EAAAA,IAAAJ;AAAyB,MAAAK;AAAA,EAAAJ,EAAA,CAAA,MAAAK,uBAAAC,IAAA,2BAAA,KAShEF,IAAA;AAAA,IAAAG,IAAM;AAAA,EAAA,GAAGP,OAAAI,KAAAA,IAAAJ,EAAA,CAAA;AAAA,MAAAQ;AAAA,EAAAR,SAAAG,KAEHK,IAAAA,CAAAC,GAAAC,MAAgBP,EAAYO,CAAO,GAACV,OAAAG,GAAAH,OAAAQ,KAAAA,IAAAR,EAAA,CAAA;AAAA,MAAAW;AAAA,EAAAX,EAAA,CAAA,MAAAE,KAAAF,SAAAQ,KALhDG,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EACO,OAAA,WACD,MAAA,SACD,IAAAT,GACKF,SAAAA,GACC,UAAAM,EAAAA,CAAoC,GAC9CR,OAAAE,GAAAF,OAAAQ,GAAAR,OAAAW,KAAAA,IAAAX,EAAA,CAAA;AAAA,MAAAc;AAAA,EAAAd,EAAA,CAAA,MAAAK,uBAAAC,IAAA,2BAAA,KAGFQ,IAAAF,gBAAAA,EAAAA,IAACG,KAAQ,IAAA;AAAA,IAAAC,SAAW;AAAA,IAAMC,YAAc;AAAA,IAAQC,YAAc;AAAA,EAAA,GAC5D,UAAAN,gBAAAA,EAAAA,IAACO,GAAA,EAAc,UAAA,SAAO,GACxB,GAAMnB,OAAAc,KAAAA,IAAAd,EAAA,CAAA;AAAA,MAAAoB;AAAA,SAAApB,SAAAW,KAfZS,IAAAR,gBAAAA,EAAAA,IAACS,GAAA,EAAc,OAAA,2BACb,gCAACC,GAAA,EACO,OAAA,YAEJ,SAAAX,GASA,OAAAG,GAIa,gBAAA,SAAO,GAE1B,GAAUd,OAAAW,GAAAX,OAAAoB,KAAAA,IAAApB,EAAA,CAAA,GAnBVoB;AAmBU;"}
@@ -1,33 +1,46 @@
1
- import { j as c } from "./ui-components.es15.js";
2
- import { c as f } from "./ui-components.es16.js";
3
- import { useState as x } from "react";
4
- import b from "./ui-components.es42.js";
5
- function j(l) {
6
- const e = f.c(9), {
7
- value: t,
8
- figures: n
9
- } = l;
10
- let r;
11
- e[0] !== t ? (r = /* @__PURE__ */ new Set([t]), e[0] = t, e[1] = r) : r = e[1];
12
- const [o, d] = x(r);
13
- o.has(t) || d(/* @__PURE__ */ new Set([...o, t]));
1
+ import { c as M } from "./ui-components.es17.js";
2
+ import { useState as d, useRef as E, useEffect as S } from "react";
3
+ function v(r, n, u) {
4
+ const t = M.c(11), [e, b] = d(!1), m = E(e);
14
5
  let s;
15
- if (e[2] !== n || e[3] !== o || e[4] !== t) {
16
- let i;
17
- e[6] !== o || e[7] !== t ? (i = (u, a) => {
18
- const m = t === a, p = o.has(a);
19
- return /* @__PURE__ */ c.jsx(b, { display: m ? "block" : "none", height: "100%", width: "100%", overflow: "auto", padding: 1, sx: {
20
- border: "1px solid",
21
- borderColor: "divider",
22
- borderRadius: 1,
23
- position: "relative"
24
- }, children: p && u.component }, `figure-${a}`);
25
- }, e[6] = o, e[7] = t, e[8] = i) : i = e[8], s = n.map(i), e[2] = n, e[3] = o, e[4] = t, e[5] = s;
26
- } else
27
- s = e[5];
28
- return s;
6
+ t[0] !== e ? (s = () => {
7
+ m.current = e;
8
+ }, t[0] = e, t[1] = s) : s = t[1], S(s);
9
+ let l, _;
10
+ t[2] !== r || t[3] !== e || t[4] !== n || t[5] !== u ? (l = () => {
11
+ const c = r?.current;
12
+ if (!c)
13
+ return;
14
+ const o = u ? [] : n;
15
+ c.setSortModel(e ? [{
16
+ field: "__check__",
17
+ sort: "desc"
18
+ }, ...o] : o);
19
+ }, _ = [r, e, u, n], t[2] = r, t[3] = e, t[4] = n, t[5] = u, t[6] = l, t[7] = _) : (l = t[6], _ = t[7]), S(l, _);
20
+ let f;
21
+ t[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (f = (c) => [c.current.subscribeEvent("sortModelChange", (o) => {
22
+ if (!m.current || o[0]?.field === "__check__")
23
+ return;
24
+ const k = o.filter(g);
25
+ c.current.setSortModel([{
26
+ field: "__check__",
27
+ sort: "desc"
28
+ }, ...k]);
29
+ }), c.current.subscribeEvent("rowSelectionChange", () => {
30
+ m.current && c.current.setSortModel([...c.current.getSortModel()]);
31
+ })], t[8] = f) : f = t[8];
32
+ const i = f;
33
+ let h;
34
+ return t[9] !== e ? (h = {
35
+ autoSort: e,
36
+ setAutoSort: b,
37
+ onReady: i
38
+ }, t[9] = e, t[10] = h) : h = t[10], h;
39
+ }
40
+ function g(r) {
41
+ return r.field !== "__check__";
29
42
  }
30
43
  export {
31
- j as default
44
+ v as useAutoSort
32
45
  };
33
46
  //# sourceMappingURL=ui-components.es61.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es61.js","sources":["../src/components/TwoPaneLayout/FigurePanel.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport Box from \"@mui/material/Box\";\n\ntype Figure = {\n title: string;\n component: React.ReactNode;\n};\n\ntype FigurePanelProps = {\n value: number;\n figures: Figure[];\n};\n\nexport default function FigurePanel({ value, figures }: FigurePanelProps) {\n const [mountedTabs, setMountedTabs] = useState<Set<number>>(new Set([value]));\n\n if (!mountedTabs.has(value)) {\n setMountedTabs(new Set([...mountedTabs, value]));\n }\n\n return figures.map((Figure, i) => {\n const isActive = value === i;\n const isMounted = mountedTabs.has(i);\n\n return (\n <Box\n key={`figure-${i}`}\n display={isActive ? \"block\" : \"none\"}\n height=\"100%\"\n width={\"100%\"}\n overflow={\"auto\"}\n padding={1}\n sx={{ border: \"1px solid\", borderColor: \"divider\", borderRadius: 1, position: \"relative\" }}\n >\n {isMounted && Figure.component}\n </Box>\n );\n });\n}\n"],"names":["FigurePanel","t0","$","_c","value","figures","t1","Set","mountedTabs","setMountedTabs","useState","has","t2","t3","Figure","i","isActive","isMounted","jsx","Box","border","borderColor","borderRadius","position","component","map"],"mappings":";;;;AAaA,SAAeA,EAAAC,GAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA,GAAqB;AAAA,IAAAC,OAAAA;AAAAA,IAAAC,SAAAA;AAAAA,EAAAA,IAAAJ;AAAoC,MAAAK;AAAA,EAAAJ,SAAAE,KACVE,wBAAIC,IAAI,CAACH,CAAK,CAAC,GAACF,OAAAE,GAAAF,OAAAI,KAAAA,IAAAJ,EAAA,CAAA;AAA5E,QAAA,CAAAM,GAAAC,CAAA,IAAsCC,EAAsBJ,CAAgB;AAE5E,EAAKE,EAAWG,IAAKP,CAAK,KACxBK,sBAAmBF,IAAI,CAAA,GAAIC,GAAaJ,CAAK,CAAC,CAAC;AAChD,MAAAQ;AAAA,MAAAV,EAAA,CAAA,MAAAG,KAAAH,SAAAM,KAAAN,EAAA,CAAA,MAAAE,GAAA;AAAA,QAAAS;AAAA,IAAAX,EAAA,CAAA,MAAAM,KAAAN,SAAAE,KAEkBS,IAAAA,CAAAC,GAAAC,MAAA;AACjB,YAAAC,IAAiBZ,MAAUW,GAC3BE,IAAkBT,EAAWG,IAAKI,CAAC;AAAE,aAGnCG,gBAAAA,EAAAA,IAACC,GAAA,EAEU,SAAAH,IAAA,UAAA,QACF,QAAA,QACA,OAAA,QACG,UAAA,QACD,SAAA,GACL,IAAA;AAAA,QAAAI,QAAU;AAAA,QAAWC,aAAe;AAAA,QAASC,cAAgB;AAAA,QAACC,UAAY;AAAA,MAAA,GAE7EN,UAAAA,KAAaH,EAAMU,UAAAA,aARLT,CAAC,EASlB;AAAA,IAAM,GAETb,OAAAM,GAAAN,OAAAE,GAAAF,OAAAW,KAAAA,IAAAX,EAAA,CAAA,GAjBMU,IAAAP,EAAOoB,IAAKZ,CAiBlB,GAACX,OAAAG,GAAAH,OAAAM,GAAAN,OAAAE,GAAAF,OAAAU;AAAAA,EAAA;AAAAA,IAAAA,IAAAV,EAAA,CAAA;AAAA,SAjBKU;AAiBL;"}
1
+ {"version":3,"file":"ui-components.es61.js","sources":["../src/components/TwoPaneLayout/useAutoSort.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport type { RefObject } from \"react\";\nimport type { GridApi, GridSortModel } from \"@mui/x-data-grid-premium\";\n\ntype UseAutoSortReturn = {\n autoSort: boolean;\n setAutoSort: (value: boolean) => void;\n onReady: (readyApiRef: RefObject<GridApi>) => (() => void)[];\n};\n\n/**\n * Manages the \"auto-sort selected rows to top\" behavior for a Table.\n *\n * Owns the autoSort toggle state and all related DataGrid behavior, returning\n * `autoSort` and `setAutoSort` for use in a toolbar toggle, and `onReady` to\n * be composed with the Table's `onReady` prop.\n *\n * `onReady` is used for event subscriptions rather than plain useEffects because\n * the Table is wrapped in <NoSsr>, which defers DataGrid initialization — subscriptions\n * attempted on mount may attach before the api is ready. `onReady` fires inside the\n * NoSsr boundary after the DataGrid is fully initialized.\n *\n * The sort model reset remains a reactive useEffect because it must fire on every\n * autoSort/viewBy change, not just on mount.\n */\nexport function useAutoSort(\n apiRef: RefObject<GridApi | null>,\n initialSort: GridSortModel,\n isPresorted: boolean\n): UseAutoSortReturn {\n const [autoSort, setAutoSort] = useState(false);\n\n // Track autoSort in a ref so event handlers always see the current value\n // without needing to unsubscribe and re-subscribe on every change.\n const autoSortRef = useRef(autoSort);\n useEffect(() => {\n autoSortRef.current = autoSort;\n });\n\n // Reactive: reset sort model when autoSort or viewBy changes.\n // The null guard handles any edge case where this runs before the DataGrid is ready.\n useEffect(() => {\n const api = apiRef?.current;\n if (!api) return;\n\n const base: GridSortModel = isPresorted ? [] : initialSort;\n api.setSortModel(autoSort ? [{ field: \"__check__\", sort: \"desc\" }, ...base] : base);\n }, [apiRef, autoSort, isPresorted, initialSort]);\n\n // Return a stable onReady callback that attaches event subscriptions once,\n // after the DataGrid has fully mounted. Handlers read autoSortRef at event\n // time so they reflect the current autoSort state without re-subscribing.\n const onReady = useCallback(\n (readyApiRef: RefObject<GridApi>) => [\n // Keep __check__ as the primary sort after any user-initiated sort change.\n // Guard against infinite loop: if __check__ is already first, the call was ours — skip it.\n readyApiRef.current.subscribeEvent(\"sortModelChange\", (model) => {\n if (!autoSortRef.current || model[0]?.field === \"__check__\") return;\n const withoutCheck = model.filter((s) => s.field !== \"__check__\");\n readyApiRef.current.setSortModel([{ field: \"__check__\", sort: \"desc\" }, ...withoutCheck]);\n }),\n // Re-apply sort when selection changes — DataGrid doesn't re-sort automatically\n // when checkbox state changes.\n readyApiRef.current.subscribeEvent(\"rowSelectionChange\", () => {\n if (!autoSortRef.current) return;\n readyApiRef.current.setSortModel([...readyApiRef.current.getSortModel()]);\n }),\n ],\n []\n );\n\n return { autoSort, setAutoSort, onReady };\n}\n"],"names":["useAutoSort","apiRef","initialSort","isPresorted","$","_c","autoSort","setAutoSort","useState","autoSortRef","useRef","t0","current","useEffect","t1","t2","api","base","setSortModel","field","sort","t3","Symbol","for","readyApiRef","subscribeEvent","model","withoutCheck","filter","_temp","getSortModel","onReady","t4","s"],"mappings":";;AAyBO,SAAAA,EAAAC,GAAAC,GAAAC,GAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,EAAA,GAKL,CAAAC,GAAAC,CAAA,IAAgCC,EAAS,EAAK,GAI9CC,IAAoBC,EAAOJ,CAAQ;AAAE,MAAAK;AAAA,EAAAP,SAAAE,KAC3BK,IAAAA,MAAA;AACRF,IAAAA,EAAWG,UAAWN;AAAAA,EAAH,GACpBF,OAAAE,GAAAF,OAAAO,KAAAA,IAAAP,EAAA,CAAA,GAFDS,EAAUF,CAET;AAAC,MAAAG,GAAAC;AAAA,EAAAX,EAAA,CAAA,MAAAH,KAAAG,EAAA,CAAA,MAAAE,KAAAF,EAAA,CAAA,MAAAF,KAAAE,SAAAD,KAIQW,IAAAA,MAAA;AACR,UAAAE,IAAYf,GAAMW;AAClB,QAAI,CAACI;AAAG;AAER,UAAAC,IAA4Bd,IAAA,CAAA,IAAAD;AAC5Bc,IAAAA,EAAGE,aAAcZ,IAAA,CAAY;AAAA,MAAAa,OAAS;AAAA,MAAWC,MAAQ;AAAA,IAAA,GAAQ,GAAKH,CAAI,IAAzDA,CAAiE;AAAA,EAAC,GAClFF,IAAA,CAACd,GAAQK,GAAUH,GAAaD,CAAW,GAACE,OAAAH,GAAAG,OAAAE,GAAAF,OAAAF,GAAAE,OAAAD,GAAAC,OAAAU,GAAAV,OAAAW,MAAAD,IAAAV,EAAA,CAAA,GAAAW,IAAAX,EAAA,CAAA,IAN/CS,EAAUC,GAMPC,CAA4C;AAAC,MAAAM;AAAA,EAAAjB,EAAA,CAAA,MAAAkB,uBAAAC,IAAA,2BAAA,KAM9CF,IAAAG,OAAqC,CAGnCA,EAAWZ,QAAQa,eAAgB,mBAAmBC,CAAAA,MAAA;AACpD,QAAI,CAACjB,EAAWG,WAAYc,EAAK,CAAA,GAAUP,UAAK;AAAW;AAC3D,UAAAQ,IAAqBD,EAAKE,OAAQC,CAA8B;AAChEL,IAAAA,EAAWZ,QAAQM,aAAc,CAAC;AAAA,MAAAC,OAAS;AAAA,MAAWC,MAAQ;AAAA,IAAA,GAAQ,GAAKO,CAAY,CAAC;AAAA,EAAC,CAC1F,GAGDH,EAAWZ,QAAQa,eAAgB,sBAAsB,MAAA;AACvD,IAAKhB,EAAWG,WAChBY,EAAWZ,QAAQM,aAAc,CAAA,GAAIM,EAAWZ,QAAQkB,aAAAA,CAAe,CAAC;AAAA,EAAC,CAC1E,CAAC,GACH1B,OAAAiB,KAAAA,IAAAjB,EAAA,CAAA;AAfH,QAAA2B,IAAgBV;AAiBd,MAAAW;AAAA,SAAA5B,SAAAE,KAEK0B,IAAA;AAAA,IAAA1B,UAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAwB,SAAAA;AAAAA,EAAAA,GAAkC3B,OAAAE,GAAAF,QAAA4B,KAAAA,IAAA5B,EAAA,EAAA,GAAlC4B;AAAkC;AA9CpC,SAAAH,EAAAI,GAAA;AAAA,SAiC0CA,EAACd,UAAW;AAAW;"}
@@ -1,30 +1,24 @@
1
- import { j as l } from "./ui-components.es15.js";
2
- import { c as f } from "./ui-components.es16.js";
3
- import { Switch as x, Box as p, Tooltip as u, FormControlLabel as S } from "@mui/material";
4
- import { Sort as h } from "@mui/icons-material";
5
- const g = (a) => {
6
- const e = f.c(9), {
7
- autoSort: m,
8
- setAutoSort: c
9
- } = a;
10
- let r;
11
- e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (r = {
12
- mr: 1
13
- }, e[0] = r) : r = e[0];
14
- let t;
15
- e[1] !== c ? (t = (j, n) => c(n), e[1] = c, e[2] = t) : t = e[2];
1
+ import { j as n } from "./ui-components.es15.js";
2
+ import { c as p } from "./ui-components.es17.js";
3
+ import { GRID_CHECKBOX_SELECTION_COL_DEF as i } from "@mui/x-data-grid-premium";
4
+ const a = (e) => {
5
+ const r = p.c(2), t = i.renderHeader;
6
+ if (!t)
7
+ return null;
16
8
  let o;
17
- e[3] !== m || e[4] !== t ? (o = /* @__PURE__ */ l.jsx(x, { color: "primary", size: "small", sx: r, checked: m, onChange: t }), e[3] = m, e[4] = t, e[5] = o) : o = e[5];
18
- let s;
19
- e[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (s = /* @__PURE__ */ l.jsx(p, { sx: {
20
- display: "flex",
21
- alignItems: "center",
22
- lineHeight: 1
23
- }, children: /* @__PURE__ */ l.jsx(h, { fontSize: "small" }) }), e[6] = s) : s = e[6];
24
- let i;
25
- return e[7] !== o ? (i = /* @__PURE__ */ l.jsx(u, { title: "Auto sort selected rows", children: /* @__PURE__ */ l.jsx(S, { value: "autoSort", control: o, label: s, labelPlacement: "start" }) }), e[7] = o, e[8] = i) : i = e[8], i;
9
+ return r[0] !== e ? (o = /* @__PURE__ */ n.jsx("div", { id: "StopPropagationWrapper", onClick: l, children: /* @__PURE__ */ n.jsx(t, { ...e }) }), r[0] = e, r[1] = o) : o = r[1], o;
10
+ }, d = {
11
+ ...i,
12
+ //Override checkbox column https://mui.com/x/react-data-grid/row-selection/#custom-checkbox-column
13
+ sortable: !0,
14
+ hideable: !1,
15
+ renderHeader: a
26
16
  };
17
+ function l(e) {
18
+ return e.stopPropagation();
19
+ }
27
20
  export {
28
- g as default
21
+ a as StopPropagationWrapper,
22
+ d as sortableTableCheckboxColumn
29
23
  };
30
24
  //# sourceMappingURL=ui-components.es62.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es62.js","sources":["../src/components/TwoPaneLayout/AutoSortSwitch.tsx"],"sourcesContent":["import React from \"react\";\nimport { Tooltip, FormControlLabel, Switch, Box } from \"@mui/material\";\nimport { Sort } from \"@mui/icons-material\";\n\ninterface AutoSortSwitchProps {\n autoSort: boolean;\n setAutoSort: (value: boolean) => void;\n}\n\nconst AutoSortSwitch: React.FC<AutoSortSwitchProps> = ({ autoSort, setAutoSort }) => {\n return (\n <Tooltip title=\"Auto sort selected rows\">\n <FormControlLabel\n value=\"autoSort\"\n control={\n <Switch\n color=\"primary\"\n size=\"small\"\n sx={{ mr: 1 }}\n checked={autoSort}\n onChange={(_, checked) => setAutoSort(checked)}\n />\n }\n label={\n <Box sx={{ display: \"flex\", alignItems: \"center\", lineHeight: 1 }}>\n <Sort fontSize=\"small\" />\n </Box>\n }\n labelPlacement=\"start\"\n />\n </Tooltip>\n );\n};\n\nexport default AutoSortSwitch;\n"],"names":["AutoSortSwitch","t0","$","_c","autoSort","setAutoSort","t1","Symbol","for","mr","t2","_","checked","t3","jsx","Switch","t4","Box","display","alignItems","lineHeight","Sort","t5","Tooltip","FormControlLabel"],"mappings":";;;;AASA,MAAMA,IAAgDC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA,GAAC;AAAA,IAAAC,UAAAA;AAAAA,IAAAC,aAAAA;AAAAA,EAAAA,IAAAJ;AAAyB,MAAAK;AAAA,EAAAJ,EAAA,CAAA,MAAAK,uBAAAC,IAAA,2BAAA,KAShEF,IAAA;AAAA,IAAAG,IAAM;AAAA,EAAA,GAAGP,OAAAI,KAAAA,IAAAJ,EAAA,CAAA;AAAA,MAAAQ;AAAA,EAAAR,SAAAG,KAEHK,IAAAA,CAAAC,GAAAC,MAAgBP,EAAYO,CAAO,GAACV,OAAAG,GAAAH,OAAAQ,KAAAA,IAAAR,EAAA,CAAA;AAAA,MAAAW;AAAA,EAAAX,EAAA,CAAA,MAAAE,KAAAF,SAAAQ,KALhDG,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EACO,OAAA,WACD,MAAA,SACD,IAAAT,GACKF,SAAAA,GACC,UAAAM,EAAAA,CAAoC,GAC9CR,OAAAE,GAAAF,OAAAQ,GAAAR,OAAAW,KAAAA,IAAAX,EAAA,CAAA;AAAA,MAAAc;AAAA,EAAAd,EAAA,CAAA,MAAAK,uBAAAC,IAAA,2BAAA,KAGFQ,IAAAF,gBAAAA,EAAAA,IAACG,KAAQ,IAAA;AAAA,IAAAC,SAAW;AAAA,IAAMC,YAAc;AAAA,IAAQC,YAAc;AAAA,EAAA,GAC5D,UAAAN,gBAAAA,EAAAA,IAACO,GAAA,EAAc,UAAA,SAAO,GACxB,GAAMnB,OAAAc,KAAAA,IAAAd,EAAA,CAAA;AAAA,MAAAoB;AAAA,SAAApB,SAAAW,KAfZS,IAAAR,gBAAAA,EAAAA,IAACS,GAAA,EAAc,OAAA,2BACb,gCAACC,GAAA,EACO,OAAA,YAEJ,SAAAX,GASA,OAAAG,GAIa,gBAAA,SAAO,GAE1B,GAAUd,OAAAW,GAAAX,OAAAoB,KAAAA,IAAApB,EAAA,CAAA,GAnBVoB;AAmBU;"}
1
+ {"version":3,"file":"ui-components.es62.js","sources":["../src/components/TwoPaneLayout/SortableTableCheckboxColumn.tsx"],"sourcesContent":["import { GRID_CHECKBOX_SELECTION_COL_DEF } from \"@mui/x-data-grid-premium\";\nimport { TableColDef } from \"../Table\";\n\n//This is used to prevent sorting from happening when clicking on the header checkbox\nexport const StopPropagationWrapper: TableColDef[\"renderHeader\"] = (params) => {\n const DefaultHeader = GRID_CHECKBOX_SELECTION_COL_DEF.renderHeader;\n if (!DefaultHeader) return null;\n return (\n <div id={\"StopPropagationWrapper\"} onClick={(e) => e.stopPropagation()}>\n <DefaultHeader {...params} />\n </div>\n );\n};\n\nexport const sortableTableCheckboxColumn = {\n ...GRID_CHECKBOX_SELECTION_COL_DEF, //Override checkbox column https://mui.com/x/react-data-grid/row-selection/#custom-checkbox-column\n sortable: true,\n hideable: false,\n renderHeader: StopPropagationWrapper,\n} satisfies TableColDef;\n"],"names":["StopPropagationWrapper","params","$","_c","DefaultHeader","GRID_CHECKBOX_SELECTION_COL_DEF","renderHeader","t0","_temp","jsx","sortableTableCheckboxColumn","sortable","hideable","e","stopPropagation"],"mappings":";;;AAIO,MAAMA,IAAsDC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA,GACjEC,IAAsBC,EAA+BC;AACrD,MAAI,CAACF;AAAa,WAAS;AAAK,MAAAG;AAAA,SAAAL,SAAAD,KAE9BM,mCAAS,IAAA,0BAAmC,SAAAC,GAC1C,UAAAC,gBAAAA,EAAAA,IAACL,GAAA,KAAkBH,EAAAA,CAAM,EAAA,CAC3B,GAAMC,OAAAD,GAAAC,OAAAK,KAAAA,IAAAL,EAAA,CAAA,GAFNK;AAEM,GAIGG,IAA8B;AAAA,EACzC,GAAGL;AAAAA;AAAAA,EACHM,UAAU;AAAA,EACVC,UAAU;AAAA,EACVN,cAAcN;AAChB;AAfmE,SAAAQ,EAAAK,GAAA;AAAA,SAIZA,EAACC,gBAAAA;AAAkB;"}