@senitix/ui 0.4.1 → 0.4.3

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 (393) hide show
  1. package/dist/accordion-BcwB0wwz.cjs +2 -0
  2. package/dist/accordion-BcwB0wwz.cjs.map +1 -0
  3. package/dist/accordion-BwnJKrKm.js +360 -0
  4. package/dist/accordion-BwnJKrKm.js.map +1 -0
  5. package/dist/appointment-scheduler-BoQQO51F.cjs +2 -0
  6. package/dist/appointment-scheduler-BoQQO51F.cjs.map +1 -0
  7. package/dist/appointment-scheduler-DHAs-mF_.js +192 -0
  8. package/dist/appointment-scheduler-DHAs-mF_.js.map +1 -0
  9. package/dist/arrow-right-CM3nmiZe.js +15 -0
  10. package/dist/arrow-right-CM3nmiZe.js.map +1 -0
  11. package/dist/arrow-right-vDxRZOfm.cjs +7 -0
  12. package/dist/arrow-right-vDxRZOfm.cjs.map +1 -0
  13. package/dist/avatar-BlEcWE7T.js +191 -0
  14. package/dist/avatar-BlEcWE7T.js.map +1 -0
  15. package/dist/avatar-Cl38Ye4J.cjs +2 -0
  16. package/dist/avatar-Cl38Ye4J.cjs.map +1 -0
  17. package/dist/badge-BZcdBG5J.cjs +23 -0
  18. package/dist/badge-BZcdBG5J.cjs.map +1 -0
  19. package/dist/badge-D0C_rP2l.js +157 -0
  20. package/dist/badge-D0C_rP2l.js.map +1 -0
  21. package/dist/button-BP_ug5gP.js +126 -0
  22. package/dist/button-BP_ug5gP.js.map +1 -0
  23. package/dist/button-CPuCii0R.cjs +2 -0
  24. package/dist/button-CPuCii0R.cjs.map +1 -0
  25. package/dist/{calendar-DgnhzEfp.js → calendar-86qoSnO7.js} +368 -433
  26. package/dist/calendar-86qoSnO7.js.map +1 -0
  27. package/dist/{calendar-D3RWU0_G.cjs → calendar-BH-AuyiB.cjs} +2 -2
  28. package/dist/{calendar-D3RWU0_G.cjs.map → calendar-BH-AuyiB.cjs.map} +1 -1
  29. package/dist/calendar-CSJ060ym.cjs +2 -0
  30. package/dist/calendar-CSJ060ym.cjs.map +1 -0
  31. package/dist/{calendar-CUxm1K7J.js → calendar-JUSWONQ0.js} +2 -2
  32. package/dist/{calendar-CUxm1K7J.js.map → calendar-JUSWONQ0.js.map} +1 -1
  33. package/dist/{card-DISL3sPJ.cjs → card-CToWUN1K.cjs} +2 -2
  34. package/dist/{card-DISL3sPJ.cjs.map → card-CToWUN1K.cjs.map} +1 -1
  35. package/dist/{card-fId5vof_.js → card-yxbWFvZ1.js} +2 -2
  36. package/dist/{card-fId5vof_.js.map → card-yxbWFvZ1.js.map} +1 -1
  37. package/dist/checkbox-BmugT50K.cjs +2 -0
  38. package/dist/checkbox-BmugT50K.cjs.map +1 -0
  39. package/dist/{checkbox-BY2zxQVv.js → checkbox-CTa9e4SG.js} +95 -97
  40. package/dist/checkbox-CTa9e4SG.js.map +1 -0
  41. package/dist/chevron-left-5h87iFo_.cjs +7 -0
  42. package/dist/chevron-left-5h87iFo_.cjs.map +1 -0
  43. package/dist/chevron-left-DD5mQuvf.js +14 -0
  44. package/dist/chevron-left-DD5mQuvf.js.map +1 -0
  45. package/dist/{chevron-right-Bxf8i4gi.cjs → chevron-right-D-TdAZ7l.cjs} +2 -2
  46. package/dist/{chevron-right-Bxf8i4gi.cjs.map → chevron-right-D-TdAZ7l.cjs.map} +1 -1
  47. package/dist/{chevron-right-BLyGmyaF.js → chevron-right-Di90aqSn.js} +2 -2
  48. package/dist/{chevron-right-BLyGmyaF.js.map → chevron-right-Di90aqSn.js.map} +1 -1
  49. package/dist/chevron-up-Bq55Db6X.cjs +7 -0
  50. package/dist/{chevron-up-C3RClqXD.cjs.map → chevron-up-Bq55Db6X.cjs.map} +1 -1
  51. package/dist/{chevron-up-BmYZUtrk.js → chevron-up-Dr7EIn9V.js} +2 -2
  52. package/dist/{chevron-up-BmYZUtrk.js.map → chevron-up-Dr7EIn9V.js.map} +1 -1
  53. package/dist/clock-BjJE8PGr.js +15 -0
  54. package/dist/clock-BjJE8PGr.js.map +1 -0
  55. package/dist/clock-CnxBAA_O.cjs +7 -0
  56. package/dist/clock-CnxBAA_O.cjs.map +1 -0
  57. package/dist/command-BEpaOk-5.cjs +2 -0
  58. package/dist/command-BEpaOk-5.cjs.map +1 -0
  59. package/dist/command-CYhMM7gX.js +404 -0
  60. package/dist/command-CYhMM7gX.js.map +1 -0
  61. package/dist/components/builders/index.cjs.js +2 -0
  62. package/dist/components/builders/index.cjs.js.map +1 -0
  63. package/dist/components/builders/index.es.js +42 -0
  64. package/dist/components/builders/index.es.js.map +1 -0
  65. package/dist/components/charts/index.cjs.js +1 -1
  66. package/dist/components/charts/index.es.js +7 -6
  67. package/dist/components/charts/index.es.js.map +1 -1
  68. package/dist/components/data-display/index.cjs.js +1 -1
  69. package/dist/components/data-display/index.es.js +43 -20
  70. package/dist/components/dnd/index.cjs.js +1 -1
  71. package/dist/components/dnd/index.es.js +1 -1
  72. package/dist/components/feedback/index.cjs.js +1 -1
  73. package/dist/components/feedback/index.es.js +1 -1
  74. package/dist/components/forms/index.cjs.js +1 -1
  75. package/dist/components/forms/index.es.js +24 -23
  76. package/dist/components/forms/index.es.js.map +1 -1
  77. package/dist/components/layouts/index.cjs.js +1 -1
  78. package/dist/components/layouts/index.es.js +45 -21
  79. package/dist/components/messaging/index.cjs.js +2 -0
  80. package/dist/components/messaging/index.cjs.js.map +1 -0
  81. package/dist/components/messaging/index.es.js +15 -0
  82. package/dist/components/messaging/index.es.js.map +1 -0
  83. package/dist/components/navigation/index.cjs.js +1 -1
  84. package/dist/components/navigation/index.es.js +1 -1
  85. package/dist/components/scheduling/index.cjs.js +2 -0
  86. package/dist/components/scheduling/index.cjs.js.map +1 -0
  87. package/dist/components/scheduling/index.es.js +6 -0
  88. package/dist/components/scheduling/index.es.js.map +1 -0
  89. package/dist/components/ui/index.cjs.js +1 -1
  90. package/dist/components/ui/index.es.js +168 -158
  91. package/dist/components/ui/index.es.js.map +1 -1
  92. package/dist/dialog-Cr9SYCaD.cjs +6 -0
  93. package/dist/dialog-Cr9SYCaD.cjs.map +1 -0
  94. package/dist/dialog-MYAx3Qrc.js +387 -0
  95. package/dist/dialog-MYAx3Qrc.js.map +1 -0
  96. package/dist/dropdown-menu-CkCCV_tw.js +969 -0
  97. package/dist/dropdown-menu-CkCCV_tw.js.map +1 -0
  98. package/dist/dropdown-menu-ejikFvg2.cjs +7 -0
  99. package/dist/dropdown-menu-ejikFvg2.cjs.map +1 -0
  100. package/dist/{ellipsis-6eUne95u.js → ellipsis-CKhpjj5H.js} +2 -2
  101. package/dist/{ellipsis-6eUne95u.js.map → ellipsis-CKhpjj5H.js.map} +1 -1
  102. package/dist/{ellipsis-DkM3GBF5.cjs → ellipsis-Dk7Wfc4i.cjs} +3 -3
  103. package/dist/{ellipsis-DkM3GBF5.cjs.map → ellipsis-Dk7Wfc4i.cjs.map} +1 -1
  104. package/dist/external-link-CGBqsrbm.cjs +7 -0
  105. package/dist/external-link-CGBqsrbm.cjs.map +1 -0
  106. package/dist/external-link-UeWW0ty3.js +16 -0
  107. package/dist/external-link-UeWW0ty3.js.map +1 -0
  108. package/dist/eye-Cved4eAo.cjs +7 -0
  109. package/dist/eye-Cved4eAo.cjs.map +1 -0
  110. package/dist/eye-KdCUpmO8.js +21 -0
  111. package/dist/eye-KdCUpmO8.js.map +1 -0
  112. package/dist/{file-Cw_u_aJB.js → file-CHbdXCWO.js} +2 -2
  113. package/dist/{file-Cw_u_aJB.js.map → file-CHbdXCWO.js.map} +1 -1
  114. package/dist/{file-Cp5UoYUZ.cjs → file-CqYRamm8.cjs} +3 -3
  115. package/dist/{file-Cp5UoYUZ.cjs.map → file-CqYRamm8.cjs.map} +1 -1
  116. package/dist/file-spreadsheet-CpySxI0-.cjs +7 -0
  117. package/dist/file-spreadsheet-CpySxI0-.cjs.map +1 -0
  118. package/dist/file-spreadsheet-EqZMR-mM.js +19 -0
  119. package/dist/file-spreadsheet-EqZMR-mM.js.map +1 -0
  120. package/dist/form-preview-Bm5xHtkw.js +12075 -0
  121. package/dist/form-preview-Bm5xHtkw.js.map +1 -0
  122. package/dist/form-preview-IPEZdspX.cjs +111 -0
  123. package/dist/form-preview-IPEZdspX.cjs.map +1 -0
  124. package/dist/full-calendar-4Ut52QNO.cjs +18 -0
  125. package/dist/full-calendar-4Ut52QNO.cjs.map +1 -0
  126. package/dist/full-calendar-DD_tBy69.js +2631 -0
  127. package/dist/full-calendar-DD_tBy69.js.map +1 -0
  128. package/dist/funnel-chart-Dfj1pOyV.cjs +6 -0
  129. package/dist/funnel-chart-Dfj1pOyV.cjs.map +1 -0
  130. package/dist/funnel-chart-o9qcEMgg.js +2952 -0
  131. package/dist/funnel-chart-o9qcEMgg.js.map +1 -0
  132. package/dist/global-search-DcBKVaM4.cjs +22 -0
  133. package/dist/global-search-DcBKVaM4.cjs.map +1 -0
  134. package/dist/global-search-Dul9CD6-.js +1331 -0
  135. package/dist/global-search-Dul9CD6-.js.map +1 -0
  136. package/dist/hooks/index.cjs.js +1 -1
  137. package/dist/hooks/index.es.js +9 -7
  138. package/dist/hooks/index.es.js.map +1 -1
  139. package/dist/{index-DtaLkIY8.js → index-BGUveO6l.js} +84 -79
  140. package/dist/{index-DtaLkIY8.js.map → index-BGUveO6l.js.map} +1 -1
  141. package/dist/{index-gVbM3K4f.cjs → index-Bhee6XHk.cjs} +2 -2
  142. package/dist/{index-gVbM3K4f.cjs.map → index-Bhee6XHk.cjs.map} +1 -1
  143. package/dist/index-CrSlyWAA.js +1090 -0
  144. package/dist/index-CrSlyWAA.js.map +1 -0
  145. package/dist/{index-Dk_Et2WJ.js → index-D8-pHJim.js} +2 -2
  146. package/dist/{index-Dk_Et2WJ.js.map → index-D8-pHJim.js.map} +1 -1
  147. package/dist/index-Dy_9oyP3.cjs +2 -0
  148. package/dist/{index-D2U2F80P.cjs.map → index-Dy_9oyP3.cjs.map} +1 -1
  149. package/dist/index-hnbbvGmb.cjs +21 -0
  150. package/dist/index-hnbbvGmb.cjs.map +1 -0
  151. package/dist/index.cjs.js +1 -1
  152. package/dist/index.es.js +434 -319
  153. package/dist/index.es.js.map +1 -1
  154. package/dist/input-Pfq8fkiV.js +2718 -0
  155. package/dist/input-Pfq8fkiV.js.map +1 -0
  156. package/dist/input-UBp7V7li.cjs +52 -0
  157. package/dist/input-UBp7V7li.cjs.map +1 -0
  158. package/dist/label-CExiitfO.js +50 -0
  159. package/dist/label-CExiitfO.js.map +1 -0
  160. package/dist/label-F0zGAiI2.cjs +2 -0
  161. package/dist/label-F0zGAiI2.cjs.map +1 -0
  162. package/dist/loader-circle-CBVYGIRp.js +14 -0
  163. package/dist/loader-circle-CBVYGIRp.js.map +1 -0
  164. package/dist/loader-circle-IaJKvYsP.cjs +7 -0
  165. package/dist/loader-circle-IaJKvYsP.cjs.map +1 -0
  166. package/dist/locale-provider-BHGNO4j7.js +1786 -0
  167. package/dist/locale-provider-BHGNO4j7.js.map +1 -0
  168. package/dist/locale-provider-BScpm-eC.cjs +2 -0
  169. package/dist/locale-provider-BScpm-eC.cjs.map +1 -0
  170. package/dist/locale-selector-CRC0VBKl.cjs +12 -0
  171. package/dist/locale-selector-CRC0VBKl.cjs.map +1 -0
  172. package/dist/locale-selector-HuzfE0zZ.js +1740 -0
  173. package/dist/locale-selector-HuzfE0zZ.js.map +1 -0
  174. package/dist/map-pin-CHh0xl6i.js +46 -0
  175. package/dist/map-pin-CHh0xl6i.js.map +1 -0
  176. package/dist/map-pin-DGObSZ40.cjs +17 -0
  177. package/dist/map-pin-DGObSZ40.cjs.map +1 -0
  178. package/dist/message-square-B_xLey5D.js +14 -0
  179. package/dist/message-square-B_xLey5D.js.map +1 -0
  180. package/dist/message-square-_69ua8rH.cjs +7 -0
  181. package/dist/message-square-_69ua8rH.cjs.map +1 -0
  182. package/dist/minus-BUFkTM0k.cjs +7 -0
  183. package/dist/{minus-C0uyaz70.cjs.map → minus-BUFkTM0k.cjs.map} +1 -1
  184. package/dist/{minus-CiwV65ZG.js → minus-DJ0tmymW.js} +2 -2
  185. package/dist/{minus-CiwV65ZG.js.map → minus-DJ0tmymW.js.map} +1 -1
  186. package/dist/multi-container-CytCGxsc.cjs +7 -0
  187. package/dist/multi-container-CytCGxsc.cjs.map +1 -0
  188. package/dist/multi-container-DmkgnCJN.js +799 -0
  189. package/dist/multi-container-DmkgnCJN.js.map +1 -0
  190. package/dist/multi-select-Bj_kIDHE.cjs +7 -0
  191. package/dist/multi-select-Bj_kIDHE.cjs.map +1 -0
  192. package/dist/multi-select-CPF7w871.js +224 -0
  193. package/dist/multi-select-CPF7w871.js.map +1 -0
  194. package/dist/pencil-BJULwaDl.cjs +12 -0
  195. package/dist/pencil-BJULwaDl.cjs.map +1 -0
  196. package/dist/pencil-HL0trGIs.js +31 -0
  197. package/dist/pencil-HL0trGIs.js.map +1 -0
  198. package/dist/permission-matrix-BRqw2RPb.js +6128 -0
  199. package/dist/permission-matrix-BRqw2RPb.js.map +1 -0
  200. package/dist/permission-matrix-CqE8q8Hi.cjs +93 -0
  201. package/dist/permission-matrix-CqE8q8Hi.cjs.map +1 -0
  202. package/dist/phone-B0J1dGIE.js +31 -0
  203. package/dist/phone-B0J1dGIE.js.map +1 -0
  204. package/dist/phone-DPA6vucM.cjs +12 -0
  205. package/dist/phone-DPA6vucM.cjs.map +1 -0
  206. package/dist/plus-Bcuujcqd.cjs +7 -0
  207. package/dist/{plus-BsV82JJ5.cjs.map → plus-Bcuujcqd.cjs.map} +1 -1
  208. package/dist/{plus-DxD6rofl.js → plus-D7DMDKb8.js} +2 -2
  209. package/dist/{plus-DxD6rofl.js.map → plus-D7DMDKb8.js.map} +1 -1
  210. package/dist/popover-Bba1ELMX.cjs +2 -0
  211. package/dist/popover-Bba1ELMX.cjs.map +1 -0
  212. package/dist/popover-CZWAuYUL.js +281 -0
  213. package/dist/popover-CZWAuYUL.js.map +1 -0
  214. package/dist/progress-BPpsmZ48.js +218 -0
  215. package/dist/progress-BPpsmZ48.js.map +1 -0
  216. package/dist/progress-BrzjVhWG.cjs +22 -0
  217. package/dist/progress-BrzjVhWG.cjs.map +1 -0
  218. package/dist/providers/index.cjs.js +1 -1
  219. package/dist/providers/index.es.js +1 -1
  220. package/dist/radio-group-B9RM_c7e.js +244 -0
  221. package/dist/radio-group-B9RM_c7e.js.map +1 -0
  222. package/dist/radio-group-_n8TTqNQ.cjs +2 -0
  223. package/dist/radio-group-_n8TTqNQ.cjs.map +1 -0
  224. package/dist/record-dialog-footer-DbH9A6eA.js +2577 -0
  225. package/dist/record-dialog-footer-DbH9A6eA.js.map +1 -0
  226. package/dist/record-dialog-footer-DpDxH5wX.cjs +37 -0
  227. package/dist/record-dialog-footer-DpDxH5wX.cjs.map +1 -0
  228. package/dist/scroll-area-CGNbDUBQ.js +889 -0
  229. package/dist/scroll-area-CGNbDUBQ.js.map +1 -0
  230. package/dist/scroll-area-HsTSI_58.cjs +22 -0
  231. package/dist/scroll-area-HsTSI_58.cjs.map +1 -0
  232. package/dist/select-CEsYpjPi.cjs +2 -0
  233. package/dist/select-CEsYpjPi.cjs.map +1 -0
  234. package/dist/{select-BJpZrtep.js → select-Ce2C2acZ.js} +184 -179
  235. package/dist/select-Ce2C2acZ.js.map +1 -0
  236. package/dist/send-DIkOd-pu.js +21 -0
  237. package/dist/send-DIkOd-pu.js.map +1 -0
  238. package/dist/send-H6HC-rS8.cjs +7 -0
  239. package/dist/send-H6HC-rS8.cjs.map +1 -0
  240. package/dist/shared-inbox-Bv0AgLew.js +702 -0
  241. package/dist/shared-inbox-Bv0AgLew.js.map +1 -0
  242. package/dist/shared-inbox-DWEKfDX3.cjs +22 -0
  243. package/dist/shared-inbox-DWEKfDX3.cjs.map +1 -0
  244. package/dist/sheet-DTimb4SJ.cjs +2 -0
  245. package/dist/sheet-DTimb4SJ.cjs.map +1 -0
  246. package/dist/sheet-DgpAPCAp.js +147 -0
  247. package/dist/sheet-DgpAPCAp.js.map +1 -0
  248. package/dist/{skeleton-Bl6FAxHT.js → skeleton-C_dwS3_6.js} +2 -2
  249. package/dist/{skeleton-Bl6FAxHT.js.map → skeleton-C_dwS3_6.js.map} +1 -1
  250. package/dist/{skeleton-Cb6MWerF.cjs → skeleton-D3YsjVWD.cjs} +2 -2
  251. package/dist/{skeleton-Cb6MWerF.cjs.map → skeleton-D3YsjVWD.cjs.map} +1 -1
  252. package/dist/sparkline-chart-BP4bk24J.js +15881 -0
  253. package/dist/sparkline-chart-BP4bk24J.js.map +1 -0
  254. package/dist/sparkline-chart-D6SLZVjp.cjs +79 -0
  255. package/dist/sparkline-chart-D6SLZVjp.cjs.map +1 -0
  256. package/dist/styles.css +1 -1
  257. package/dist/switch-AEZvZSRV.cjs +2 -0
  258. package/dist/switch-AEZvZSRV.cjs.map +1 -0
  259. package/dist/switch-BF4LLvaU.js +147 -0
  260. package/dist/switch-BF4LLvaU.js.map +1 -0
  261. package/dist/table-2-Bn-YjZ9s.cjs +17 -0
  262. package/dist/table-2-Bn-YjZ9s.cjs.map +1 -0
  263. package/dist/table-2-C7E_N72K.js +52 -0
  264. package/dist/table-2-C7E_N72K.js.map +1 -0
  265. package/dist/textarea-4qZDuQ-C.js +206 -0
  266. package/dist/textarea-4qZDuQ-C.js.map +1 -0
  267. package/dist/textarea-Bq_zyt0L.cjs +2 -0
  268. package/dist/textarea-Bq_zyt0L.cjs.map +1 -0
  269. package/dist/tooltip-Dd7le9EO.cjs +2 -0
  270. package/dist/tooltip-Dd7le9EO.cjs.map +1 -0
  271. package/dist/tooltip-Dee-pNPI.js +338 -0
  272. package/dist/tooltip-Dee-pNPI.js.map +1 -0
  273. package/dist/trash-2-B3EP3JfM.js +18 -0
  274. package/dist/trash-2-B3EP3JfM.js.map +1 -0
  275. package/dist/trash-2-DWEeKlWT.cjs +7 -0
  276. package/dist/trash-2-DWEeKlWT.cjs.map +1 -0
  277. package/dist/{trending-up-BHFXgLWy.js → trending-up-ljWtN4pj.js} +2 -2
  278. package/dist/{trending-up-BHFXgLWy.js.map → trending-up-ljWtN4pj.js.map} +1 -1
  279. package/dist/{trending-up-BBjz_E69.cjs → trending-up-mLgmkp--.cjs} +2 -2
  280. package/dist/{trending-up-BBjz_E69.cjs.map → trending-up-mLgmkp--.cjs.map} +1 -1
  281. package/dist/upload-2tm-XihE.cjs +7 -0
  282. package/dist/upload-2tm-XihE.cjs.map +1 -0
  283. package/dist/upload-C_JDP8O0.js +16 -0
  284. package/dist/upload-C_JDP8O0.js.map +1 -0
  285. package/dist/use-controllable-state-3ATd6Fqd.cjs +2 -0
  286. package/dist/use-controllable-state-3ATd6Fqd.cjs.map +1 -0
  287. package/dist/use-controllable-state-CEa-Zlq6.js +23 -0
  288. package/dist/use-controllable-state-CEa-Zlq6.js.map +1 -0
  289. package/dist/use-formatters-Bb0fX1lW.cjs +2 -0
  290. package/dist/{use-formatters-CObUgipW.cjs.map → use-formatters-Bb0fX1lW.cjs.map} +1 -1
  291. package/dist/{use-formatters-Bgj3JA4i.js → use-formatters-xeMS4gdV.js} +1160 -1165
  292. package/dist/{use-formatters-Bgj3JA4i.js.map → use-formatters-xeMS4gdV.js.map} +1 -1
  293. package/dist/utils/index.cjs.js +1 -1
  294. package/dist/utils/index.es.js +1 -1
  295. package/dist/welcome-card-Ccbl_miQ.js +1007 -0
  296. package/dist/welcome-card-Ccbl_miQ.js.map +1 -0
  297. package/dist/welcome-card-D-ShMkaS.cjs +37 -0
  298. package/dist/welcome-card-D-ShMkaS.cjs.map +1 -0
  299. package/dist/x-BBkgEhUv.js +15 -0
  300. package/dist/x-BBkgEhUv.js.map +1 -0
  301. package/dist/x-D-El5XAY.cjs +7 -0
  302. package/dist/x-D-El5XAY.cjs.map +1 -0
  303. package/package.json +20 -2
  304. package/dist/avatar-BT_SPwFW.cjs +0 -18
  305. package/dist/avatar-BT_SPwFW.cjs.map +0 -1
  306. package/dist/avatar-C5-ZWIqT.js +0 -305
  307. package/dist/avatar-C5-ZWIqT.js.map +0 -1
  308. package/dist/calendar-BF5drX5u.cjs +0 -12
  309. package/dist/calendar-BF5drX5u.cjs.map +0 -1
  310. package/dist/calendar-DgnhzEfp.js.map +0 -1
  311. package/dist/checkbox-BY2zxQVv.js.map +0 -1
  312. package/dist/checkbox-CL6u7vL6.cjs +0 -2
  313. package/dist/checkbox-CL6u7vL6.cjs.map +0 -1
  314. package/dist/chevron-down-BiUlxZA-.js +0 -14
  315. package/dist/chevron-down-BiUlxZA-.js.map +0 -1
  316. package/dist/chevron-down-Ce0kqXiD.cjs +0 -7
  317. package/dist/chevron-down-Ce0kqXiD.cjs.map +0 -1
  318. package/dist/chevron-up-C3RClqXD.cjs +0 -7
  319. package/dist/createLucideIcon-BC8wu-bu.js +0 -80
  320. package/dist/createLucideIcon-BC8wu-bu.js.map +0 -1
  321. package/dist/createLucideIcon-Cv8nC2E9.cjs +0 -22
  322. package/dist/createLucideIcon-Cv8nC2E9.cjs.map +0 -1
  323. package/dist/filter-tags-DoRzXjuY.cjs +0 -48
  324. package/dist/filter-tags-DoRzXjuY.cjs.map +0 -1
  325. package/dist/filter-tags-zEQmRhEU.js +0 -2712
  326. package/dist/filter-tags-zEQmRhEU.js.map +0 -1
  327. package/dist/full-calendar-5Z4JSj8g.js +0 -3551
  328. package/dist/full-calendar-5Z4JSj8g.js.map +0 -1
  329. package/dist/full-calendar-DjAvCfuE.cjs +0 -23
  330. package/dist/full-calendar-DjAvCfuE.cjs.map +0 -1
  331. package/dist/global-search-BbZfc-VL.js +0 -1216
  332. package/dist/global-search-BbZfc-VL.js.map +0 -1
  333. package/dist/global-search-Bd74_wPV.cjs +0 -22
  334. package/dist/global-search-Bd74_wPV.cjs.map +0 -1
  335. package/dist/index-D2U2F80P.cjs +0 -2
  336. package/dist/index-DG0KV-sw.cjs +0 -11
  337. package/dist/index-DG0KV-sw.cjs.map +0 -1
  338. package/dist/index-XnFSmCuh.js +0 -299
  339. package/dist/index-XnFSmCuh.js.map +0 -1
  340. package/dist/input-BgPy-4Qu.js +0 -3658
  341. package/dist/input-BgPy-4Qu.js.map +0 -1
  342. package/dist/input-Cfr2WB-P.cjs +0 -47
  343. package/dist/input-Cfr2WB-P.cjs.map +0 -1
  344. package/dist/locale-provider-BojNdf1Y.cjs +0 -2
  345. package/dist/locale-provider-BojNdf1Y.cjs.map +0 -1
  346. package/dist/locale-provider-DzBeb-X3.js +0 -1013
  347. package/dist/locale-provider-DzBeb-X3.js.map +0 -1
  348. package/dist/locale-selector-BD1IWk6X.cjs +0 -22
  349. package/dist/locale-selector-BD1IWk6X.cjs.map +0 -1
  350. package/dist/locale-selector-DLRSyVye.js +0 -1772
  351. package/dist/locale-selector-DLRSyVye.js.map +0 -1
  352. package/dist/minus-C0uyaz70.cjs +0 -7
  353. package/dist/multi-container-BZia7HCU.js +0 -748
  354. package/dist/multi-container-BZia7HCU.js.map +0 -1
  355. package/dist/multi-container-BdNbgtPZ.cjs +0 -7
  356. package/dist/multi-container-BdNbgtPZ.cjs.map +0 -1
  357. package/dist/pipeline-Dh052Dvj.cjs +0 -27
  358. package/dist/pipeline-Dh052Dvj.cjs.map +0 -1
  359. package/dist/pipeline-DqWvleNy.js +0 -1076
  360. package/dist/pipeline-DqWvleNy.js.map +0 -1
  361. package/dist/plus-BsV82JJ5.cjs +0 -7
  362. package/dist/popover-BgLxmm1z.cjs +0 -7
  363. package/dist/popover-BgLxmm1z.cjs.map +0 -1
  364. package/dist/popover-PI9jbhnS.js +0 -775
  365. package/dist/popover-PI9jbhnS.js.map +0 -1
  366. package/dist/progress-CTTt_CP3.js +0 -260
  367. package/dist/progress-CTTt_CP3.js.map +0 -1
  368. package/dist/progress-CTWb7X1Q.cjs +0 -37
  369. package/dist/progress-CTWb7X1Q.cjs.map +0 -1
  370. package/dist/scroll-area-A3jGu-Ta.js +0 -974
  371. package/dist/scroll-area-A3jGu-Ta.js.map +0 -1
  372. package/dist/scroll-area-DzDnWIYJ.cjs +0 -12
  373. package/dist/scroll-area-DzDnWIYJ.cjs.map +0 -1
  374. package/dist/select-BJpZrtep.js.map +0 -1
  375. package/dist/select-Ii8HRuXa.cjs +0 -2
  376. package/dist/select-Ii8HRuXa.cjs.map +0 -1
  377. package/dist/separator-BzcDE0Ei.cjs +0 -2
  378. package/dist/separator-BzcDE0Ei.cjs.map +0 -1
  379. package/dist/separator-DyarVo1-.js +0 -396
  380. package/dist/separator-DyarVo1-.js.map +0 -1
  381. package/dist/sheet-DPSdOoE6.js +0 -84
  382. package/dist/sheet-DPSdOoE6.js.map +0 -1
  383. package/dist/sheet-XtjvbEMq.cjs +0 -2
  384. package/dist/sheet-XtjvbEMq.cjs.map +0 -1
  385. package/dist/sparkline-chart-CeCDeMNk.cjs +0 -102
  386. package/dist/sparkline-chart-CeCDeMNk.cjs.map +0 -1
  387. package/dist/sparkline-chart-DUS4CoW_.js +0 -19787
  388. package/dist/sparkline-chart-DUS4CoW_.js.map +0 -1
  389. package/dist/use-formatters-CObUgipW.cjs +0 -2
  390. package/dist/welcome-card-CNuEa6Ck.cjs +0 -67
  391. package/dist/welcome-card-CNuEa6Ck.cjs.map +0 -1
  392. package/dist/welcome-card-Cp6t6G3j.js +0 -1041
  393. package/dist/welcome-card-Cp6t6G3j.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"global-search-BbZfc-VL.js","sources":["../node_modules/lucide-react/dist/esm/icons/bell.js","../node_modules/lucide-react/dist/esm/icons/history.js","../node_modules/lucide-react/dist/esm/icons/menu.js","../node_modules/lucide-react/dist/esm/icons/panel-left.js","../src/components/navigation/sidebar.tsx","../src/components/navigation/breadcrumb.tsx","../src/components/navigation/top-nav.tsx","../src/components/navigation/mega-menu.tsx","../src/components/navigation/multi-level-dropdown.tsx","../src/components/navigation/tab-navigation.tsx","../src/components/navigation/quick-create-menu.tsx","../src/components/navigation/command-palette.tsx","../src/components/navigation/global-search.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Bell = createLucideIcon(\"Bell\", [\n [\"path\", { d: \"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\", key: \"1qo2s2\" }],\n [\"path\", { d: \"M10.3 21a1.94 1.94 0 0 0 3.4 0\", key: \"qgo35s\" }]\n]);\n\nexport { Bell as default };\n//# sourceMappingURL=bell.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst History = createLucideIcon(\"History\", [\n [\"path\", { d: \"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\", key: \"1357e3\" }],\n [\"path\", { d: \"M3 3v5h5\", key: \"1xhq8a\" }],\n [\"path\", { d: \"M12 7v5l4 2\", key: \"1fdv2h\" }]\n]);\n\nexport { History as default };\n//# sourceMappingURL=history.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Menu = createLucideIcon(\"Menu\", [\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"12\", y2: \"12\", key: \"1e0a9i\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"6\", y2: \"6\", key: \"1owob3\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"18\", y2: \"18\", key: \"yk5zj1\" }]\n]);\n\nexport { Menu as default };\n//# sourceMappingURL=menu.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst PanelLeft = createLucideIcon(\"PanelLeft\", [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M9 3v18\", key: \"fh3hqa\" }]\n]);\n\nexport { PanelLeft as default };\n//# sourceMappingURL=panel-left.js.map\n","import * as React from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { PanelLeft } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\nimport { Separator } from '@/components/ui/separator'\nimport { Sheet, SheetContent } from '@/components/ui/sheet'\nimport { Skeleton } from '@/components/ui/skeleton'\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'\nimport { useIsMobile } from '@/hooks/use-mobile'\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar:state'\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = '16rem'\nconst SIDEBAR_WIDTH_MOBILE = '18rem'\nconst SIDEBAR_WIDTH_ICON = '3rem'\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b'\n\ntype SidebarContext = {\n state: 'expanded' | 'collapsed'\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContext | null>(null)\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.')\n }\n return context\n}\n\nconst SidebarProvider = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n }\n>(\n (\n {\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n },\n ref\n ) => {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === 'function' ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen, setOpenMobile])\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [toggleSidebar])\n\n const state = open ? 'expanded' : 'collapsed'\n\n const contextValue = React.useMemo<SidebarContext>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n 'group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar',\n className\n )}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n }\n)\nSidebarProvider.displayName = 'SidebarProvider'\n\nconst Sidebar = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n side?: 'left' | 'right'\n variant?: 'sidebar' | 'floating' | 'inset'\n collapsible?: 'offcanvas' | 'icon' | 'none'\n }\n>(\n (\n {\n side = 'left',\n variant = 'sidebar',\n collapsible = 'offcanvas',\n className,\n children,\n ...props\n },\n ref\n ) => {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === 'none') {\n return (\n <div\n className={cn(\n 'flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground',\n className\n )}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-mobile=\"true\"\n className=\"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n ref={ref}\n className=\"group peer hidden md:block text-sidebar-foreground\"\n data-state={state}\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-variant={variant}\n data-side={side}\n >\n <div\n className={cn(\n 'duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_1rem)]'\n : 'group-data-[collapsible=icon]:w-[--sidebar-width-icon]'\n )}\n />\n <div\n className={cn(\n 'duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex',\n side === 'left'\n ? 'left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n : 'right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_1rem_+_2px)]'\n : 'group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n className={cn(\n 'flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow'\n )}\n >\n {children}\n </div>\n </div>\n </div>\n )\n }\n)\nSidebar.displayName = 'Sidebar'\n\nconst SidebarTrigger = React.forwardRef<\n React.ElementRef<typeof Button>,\n React.ComponentProps<typeof Button>\n>(({ className, onClick, ...props }, ref) => {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n ref={ref}\n data-sidebar=\"trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn('h-7 w-7', className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <PanelLeft />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n})\nSidebarTrigger.displayName = 'SidebarTrigger'\n\nconst SidebarRail = React.forwardRef<HTMLButtonElement, React.ComponentProps<'button'>>(\n ({ className, ...props }, ref) => {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n ref={ref}\n data-sidebar=\"rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n 'absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex',\n '[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className\n )}\n {...props}\n />\n )\n }\n)\nSidebarRail.displayName = 'SidebarRail'\n\nconst SidebarInset = React.forwardRef<HTMLDivElement, React.ComponentProps<'main'>>(\n ({ className, ...props }, ref) => {\n return (\n <main\n ref={ref}\n className={cn(\n 'relative flex min-h-svh flex-1 flex-col bg-background',\n 'peer-data-[variant=inset]:min-h-[calc(100svh-1rem)] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow',\n className\n )}\n {...props}\n />\n )\n }\n)\nSidebarInset.displayName = 'SidebarInset'\n\nconst SidebarInput = React.forwardRef<\n React.ElementRef<'input'>,\n React.ComponentProps<'input'>\n>(({ className, ...props }, ref) => {\n return (\n <input\n ref={ref}\n data-sidebar=\"input\"\n className={cn(\n 'h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring',\n className\n )}\n {...props}\n />\n )\n})\nSidebarInput.displayName = 'SidebarInput'\n\nconst SidebarHeader = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"header\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n }\n)\nSidebarHeader.displayName = 'SidebarHeader'\n\nconst SidebarFooter = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"footer\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n }\n)\nSidebarFooter.displayName = 'SidebarFooter'\n\nconst SidebarSeparator = React.forwardRef<\n React.ElementRef<typeof Separator>,\n React.ComponentProps<typeof Separator>\n>(({ className, ...props }, ref) => {\n return (\n <Separator\n ref={ref}\n data-sidebar=\"separator\"\n className={cn('mx-2 w-auto bg-sidebar-border', className)}\n {...props}\n />\n )\n})\nSidebarSeparator.displayName = 'SidebarSeparator'\n\nconst SidebarContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"content\"\n className={cn(\n 'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className\n )}\n {...props}\n />\n )\n }\n)\nSidebarContent.displayName = 'SidebarContent'\n\nconst SidebarGroup = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"group\"\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n {...props}\n />\n )\n }\n)\nSidebarGroup.displayName = 'SidebarGroup'\n\nconst SidebarGroupLabel = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & { asChild?: boolean }\n>(({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'div'\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-label\"\n className={cn(\n 'duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n 'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n className\n )}\n {...props}\n />\n )\n})\nSidebarGroupLabel.displayName = 'SidebarGroupLabel'\n\nconst SidebarGroupAction = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & { asChild?: boolean }\n>(({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button'\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-action\"\n className={cn(\n 'absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n 'after:absolute after:-inset-2 after:md:hidden',\n 'group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n})\nSidebarGroupAction.displayName = 'SidebarGroupAction'\n\nconst SidebarGroupContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-sidebar=\"group-content\"\n className={cn('w-full text-sm', className)}\n {...props}\n />\n )\n)\nSidebarGroupContent.displayName = 'SidebarGroupContent'\n\nconst SidebarMenu = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(\n ({ className, ...props }, ref) => (\n <ul\n ref={ref}\n data-sidebar=\"menu\"\n className={cn('flex w-full min-w-0 flex-col gap-1', className)}\n {...props}\n />\n )\n)\nSidebarMenu.displayName = 'SidebarMenu'\n\nconst SidebarMenuItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(\n ({ className, ...props }, ref) => (\n <li\n ref={ref}\n data-sidebar=\"menu-item\"\n className={cn('group/menu-item relative', className)}\n {...props}\n />\n )\n)\nSidebarMenuItem.displayName = 'SidebarMenuItem'\n\nconst sidebarMenuButtonVariants = cva(\n 'peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]',\n },\n size: {\n default: 'h-8 text-sm',\n sm: 'h-7 text-xs',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:!p-0',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n }\n)\n\nconst SidebarMenuButton = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n } & VariantProps<typeof sidebarMenuButtonVariants>\n>(\n (\n {\n asChild = false,\n isActive = false,\n variant = 'default',\n size = 'default',\n tooltip,\n className,\n ...props\n },\n ref\n ) => {\n const Comp = asChild ? Slot : 'button'\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n ref={ref}\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === 'string') {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== 'collapsed' || isMobile}\n {...tooltip}\n />\n </Tooltip>\n )\n }\n)\nSidebarMenuButton.displayName = 'SidebarMenuButton'\n\nconst SidebarMenuAction = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean\n showOnHover?: boolean\n }\n>(({ className, asChild = false, showOnHover = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button'\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-action\"\n className={cn(\n 'absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0',\n 'after:absolute after:-inset-2 after:md:hidden',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n showOnHover &&\n 'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0',\n className\n )}\n {...props}\n />\n )\n})\nSidebarMenuAction.displayName = 'SidebarMenuAction'\n\nconst SidebarMenuBadge = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-sidebar=\"menu-badge\"\n className={cn(\n 'absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none',\n 'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n)\nSidebarMenuBadge.displayName = 'SidebarMenuBadge'\n\nconst SidebarMenuSkeleton = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n showIcon?: boolean\n }\n>(({ className, showIcon = false, ...props }, ref) => {\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n }, [])\n\n return (\n <div\n ref={ref}\n data-sidebar=\"menu-skeleton\"\n className={cn('rounded-md h-8 flex gap-2 px-2 items-center', className)}\n {...props}\n >\n {showIcon && <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />}\n <Skeleton\n className=\"h-4 flex-1 max-w-[--skeleton-width]\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width,\n } as React.CSSProperties\n }\n />\n </div>\n )\n})\nSidebarMenuSkeleton.displayName = 'SidebarMenuSkeleton'\n\nconst SidebarMenuSub = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(\n ({ className, ...props }, ref) => (\n <ul\n ref={ref}\n data-sidebar=\"menu-sub\"\n className={cn(\n 'mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5',\n 'group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n)\nSidebarMenuSub.displayName = 'SidebarMenuSub'\n\nconst SidebarMenuSubItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(\n ({ ...props }, ref) => <li ref={ref} {...props} />\n)\nSidebarMenuSubItem.displayName = 'SidebarMenuSubItem'\n\nconst SidebarMenuSubButton = React.forwardRef<\n HTMLAnchorElement,\n React.ComponentProps<'a'> & {\n asChild?: boolean\n size?: 'sm' | 'md'\n isActive?: boolean\n }\n>(({ asChild = false, size = 'md', isActive, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a'\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n 'flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground',\n 'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n size === 'sm' && 'text-xs',\n size === 'md' && 'text-sm',\n 'group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n})\nSidebarMenuSubButton.displayName = 'SidebarMenuSubButton'\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n}\n","import * as React from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { ChevronRight, MoreHorizontal } from 'lucide-react'\nimport { cn } from '@/utils/cn'\n\nconst Breadcrumb = React.forwardRef<\n HTMLElement,\n React.ComponentPropsWithoutRef<'nav'> & {\n separator?: React.ReactNode\n }\n>(({ ...props }, ref) => <nav ref={ref} aria-label=\"breadcrumb\" {...props} />)\nBreadcrumb.displayName = 'Breadcrumb'\n\nconst BreadcrumbList = React.forwardRef<HTMLOListElement, React.ComponentPropsWithoutRef<'ol'>>(\n ({ className, ...props }, ref) => (\n <ol\n ref={ref}\n className={cn(\n 'flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5',\n className\n )}\n {...props}\n />\n )\n)\nBreadcrumbList.displayName = 'BreadcrumbList'\n\nconst BreadcrumbItem = React.forwardRef<HTMLLIElement, React.ComponentPropsWithoutRef<'li'>>(\n ({ className, ...props }, ref) => (\n <li ref={ref} className={cn('inline-flex items-center gap-1.5', className)} {...props} />\n )\n)\nBreadcrumbItem.displayName = 'BreadcrumbItem'\n\nconst BreadcrumbLink = React.forwardRef<\n HTMLAnchorElement,\n React.ComponentPropsWithoutRef<'a'> & {\n asChild?: boolean\n }\n>(({ asChild, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a'\n\n return (\n <Comp\n ref={ref}\n className={cn('transition-colors hover:text-foreground', className)}\n {...props}\n />\n )\n})\nBreadcrumbLink.displayName = 'BreadcrumbLink'\n\nconst BreadcrumbPage = React.forwardRef<HTMLSpanElement, React.ComponentPropsWithoutRef<'span'>>(\n ({ className, ...props }, ref) => (\n <span\n ref={ref}\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn('font-normal text-foreground', className)}\n {...props}\n />\n )\n)\nBreadcrumbPage.displayName = 'BreadcrumbPage'\n\nconst BreadcrumbSeparator = ({ children, className, ...props }: React.ComponentProps<'li'>) => (\n <li role=\"presentation\" aria-hidden=\"true\" className={cn('[&>svg]:size-3.5', className)} {...props}>\n {children ?? <ChevronRight />}\n </li>\n)\nBreadcrumbSeparator.displayName = 'BreadcrumbSeparator'\n\nconst BreadcrumbEllipsis = ({ className, ...props }: React.ComponentProps<'span'>) => (\n <span\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('flex h-9 w-9 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontal className=\"h-4 w-4\" />\n <span className=\"sr-only\">More</span>\n </span>\n)\nBreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis'\n\nexport {\n Breadcrumb,\n BreadcrumbList,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbPage,\n BreadcrumbSeparator,\n BreadcrumbEllipsis,\n}\n","import * as React from 'react'\nimport { Menu, Bell, Search } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\nimport { Input } from '@/components/ui/input'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu'\nimport { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'\n\nexport interface TopNavProps extends React.HTMLAttributes<HTMLElement> {\n logo?: React.ReactNode\n onMenuClick?: () => void\n showSearch?: boolean\n searchPlaceholder?: string\n onSearch?: (value: string) => void\n user?: {\n name: string\n email: string\n avatar?: string\n initials?: string\n }\n userMenuItems?: {\n label: string\n onClick: () => void\n icon?: React.ReactNode\n }[]\n notificationCount?: number\n onNotificationClick?: () => void\n rightContent?: React.ReactNode\n}\n\nconst TopNav = React.forwardRef<HTMLElement, TopNavProps>(\n (\n {\n className,\n logo,\n onMenuClick,\n showSearch = true,\n searchPlaceholder = 'Search...',\n onSearch,\n user,\n userMenuItems = [],\n notificationCount,\n onNotificationClick,\n rightContent,\n ...props\n },\n ref\n ) => {\n const [searchValue, setSearchValue] = React.useState('')\n\n const handleSearchSubmit = (e: React.FormEvent) => {\n e.preventDefault()\n onSearch?.(searchValue)\n }\n\n return (\n <header\n ref={ref}\n className={cn(\n 'sticky top-0 z-50 flex h-16 items-center gap-4 border-b bg-background px-4 md:px-6',\n className\n )}\n {...props}\n >\n {onMenuClick && (\n <Button variant=\"ghost\" size=\"icon\" className=\"shrink-0 md:hidden\" onClick={onMenuClick}>\n <Menu className=\"h-5 w-5\" />\n <span className=\"sr-only\">Toggle navigation menu</span>\n </Button>\n )}\n\n {logo && <div className=\"flex items-center gap-2\">{logo}</div>}\n\n {showSearch && (\n <form onSubmit={handleSearchSubmit} className=\"flex-1 md:flex-initial\">\n <div className=\"relative\">\n <Search className=\"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground\" />\n <Input\n type=\"search\"\n placeholder={searchPlaceholder}\n className=\"w-full pl-8 md:w-[200px] lg:w-[300px]\"\n value={searchValue}\n onChange={(e) => setSearchValue(e.target.value)}\n />\n </div>\n </form>\n )}\n\n <div className=\"ml-auto flex items-center gap-2\">\n {rightContent}\n\n {onNotificationClick && (\n <Button variant=\"ghost\" size=\"icon\" className=\"relative\" onClick={onNotificationClick}>\n <Bell className=\"h-5 w-5\" />\n {notificationCount !== undefined && notificationCount > 0 && (\n <span className=\"absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full bg-destructive text-xs text-destructive-foreground\">\n {notificationCount > 99 ? '99+' : notificationCount}\n </span>\n )}\n <span className=\"sr-only\">Notifications</span>\n </Button>\n )}\n\n {user && (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\" className=\"relative h-8 w-8 rounded-full\">\n <Avatar className=\"h-8 w-8\">\n {user.avatar && <AvatarImage src={user.avatar} alt={user.name} />}\n <AvatarFallback>{user.initials || user.name.charAt(0).toUpperCase()}</AvatarFallback>\n </Avatar>\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"w-56\" align=\"end\" forceMount>\n <DropdownMenuLabel className=\"font-normal\">\n <div className=\"flex flex-col space-y-1\">\n <p className=\"text-sm font-medium leading-none\">{user.name}</p>\n <p className=\"text-xs leading-none text-muted-foreground\">{user.email}</p>\n </div>\n </DropdownMenuLabel>\n {userMenuItems.length > 0 && (\n <>\n <DropdownMenuSeparator />\n {userMenuItems.map((item, index) => (\n <DropdownMenuItem key={index} onClick={item.onClick}>\n {item.icon && <span className=\"mr-2\">{item.icon}</span>}\n {item.label}\n </DropdownMenuItem>\n ))}\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n )}\n </div>\n </header>\n )\n }\n)\nTopNav.displayName = 'TopNav'\n\nexport { TopNav }\n","import * as React from 'react'\nimport { ChevronDown } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\n\nexport interface MegaMenuLink {\n label: string\n href: string\n description?: string\n icon?: React.ReactNode\n}\n\nexport interface MegaMenuSection {\n title?: string\n links: MegaMenuLink[]\n}\n\nexport interface MegaMenuColumn {\n title?: string\n sections: MegaMenuSection[]\n featured?: React.ReactNode\n}\n\nexport interface MegaMenuItem {\n label: string\n href?: string\n columns?: MegaMenuColumn[]\n}\n\nexport interface MegaMenuProps extends React.HTMLAttributes<HTMLElement> {\n items: MegaMenuItem[]\n logo?: React.ReactNode\n rightContent?: React.ReactNode\n}\n\nconst MegaMenu = React.forwardRef<HTMLElement, MegaMenuProps>(\n ({ className, items, logo, rightContent, ...props }, ref) => {\n const [activeItem, setActiveItem] = React.useState<string | null>(null)\n const timeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const handleMouseEnter = (label: string) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n setActiveItem(label)\n }\n\n const handleMouseLeave = () => {\n timeoutRef.current = setTimeout(() => {\n setActiveItem(null)\n }, 150)\n }\n\n return (\n <nav\n ref={ref}\n className={cn('relative z-50 w-full border-b bg-background', className)}\n {...props}\n >\n <div className=\"mx-auto flex h-16 max-w-7xl items-center justify-between px-4\">\n {logo && <div className=\"flex-shrink-0\">{logo}</div>}\n\n <ul className=\"hidden items-center gap-1 md:flex\">\n {items.map((item) => (\n <li\n key={item.label}\n onMouseEnter={() => item.columns && handleMouseEnter(item.label)}\n onMouseLeave={handleMouseLeave}\n >\n {item.href && !item.columns ? (\n <a\n href={item.href}\n className=\"flex items-center gap-1 rounded-md px-3 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground\"\n >\n {item.label}\n </a>\n ) : (\n <Button\n variant=\"ghost\"\n className={cn(\n 'flex items-center gap-1',\n activeItem === item.label && 'bg-accent text-accent-foreground'\n )}\n >\n {item.label}\n {item.columns && (\n <ChevronDown\n className={cn(\n 'h-4 w-4 transition-transform',\n activeItem === item.label && 'rotate-180'\n )}\n />\n )}\n </Button>\n )}\n\n {item.columns && activeItem === item.label && (\n <div\n className=\"absolute left-0 right-0 top-full border-b bg-background shadow-lg\"\n onMouseEnter={() => handleMouseEnter(item.label)}\n onMouseLeave={handleMouseLeave}\n >\n <div className=\"mx-auto max-w-7xl p-6\">\n <div\n className=\"grid gap-8\"\n style={{\n gridTemplateColumns: `repeat(${item.columns.length}, minmax(0, 1fr))`,\n }}\n >\n {item.columns.map((column, colIndex) => (\n <div key={colIndex}>\n {column.title && (\n <h3 className=\"mb-4 text-sm font-semibold text-foreground\">\n {column.title}\n </h3>\n )}\n {column.sections.map((section, secIndex) => (\n <div key={secIndex} className=\"mb-4\">\n {section.title && (\n <h4 className=\"mb-2 text-xs font-medium uppercase tracking-wider text-muted-foreground\">\n {section.title}\n </h4>\n )}\n <ul className=\"space-y-1\">\n {section.links.map((link, linkIndex) => (\n <li key={linkIndex}>\n <a\n href={link.href}\n className=\"group flex items-start gap-3 rounded-md p-2 transition-colors hover:bg-accent\"\n >\n {link.icon && (\n <span className=\"mt-0.5 text-muted-foreground group-hover:text-foreground\">\n {link.icon}\n </span>\n )}\n <div>\n <span className=\"block text-sm font-medium\">\n {link.label}\n </span>\n {link.description && (\n <span className=\"block text-xs text-muted-foreground\">\n {link.description}\n </span>\n )}\n </div>\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n {column.featured && (\n <div className=\"mt-4 rounded-lg bg-muted p-4\">\n {column.featured}\n </div>\n )}\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </li>\n ))}\n </ul>\n\n {rightContent && <div className=\"flex items-center gap-2\">{rightContent}</div>}\n </div>\n </nav>\n )\n }\n)\nMegaMenu.displayName = 'MegaMenu'\n\nexport { MegaMenu }\n","import * as React from 'react'\nimport { cn } from '@/utils/cn'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu'\n\nexport interface MultiLevelDropdownItem {\n label: string\n icon?: React.ReactNode\n href?: string\n onClick?: () => void\n disabled?: boolean\n children?: MultiLevelDropdownItem[]\n separator?: boolean\n}\n\nexport interface MultiLevelDropdownProps {\n trigger: React.ReactNode\n items: MultiLevelDropdownItem[]\n align?: 'start' | 'center' | 'end'\n side?: 'top' | 'right' | 'bottom' | 'left'\n className?: string\n}\n\nfunction renderDropdownItems(items: MultiLevelDropdownItem[]) {\n return items.map((item, index) => {\n if (item.separator) {\n return <DropdownMenuSeparator key={`separator-${index}`} />\n }\n\n if (item.children && item.children.length > 0) {\n return (\n <DropdownMenuSub key={item.label}>\n <DropdownMenuSubTrigger disabled={item.disabled} className=\"flex items-center gap-2\">\n {item.icon && <span className=\"h-4 w-4\">{item.icon}</span>}\n {item.label}\n </DropdownMenuSubTrigger>\n <DropdownMenuSubContent>\n {renderDropdownItems(item.children)}\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n )\n }\n\n const handleClick = () => {\n if (item.onClick) {\n item.onClick()\n }\n }\n\n if (item.href) {\n return (\n <DropdownMenuItem key={item.label} disabled={item.disabled} asChild>\n <a href={item.href} className=\"flex items-center gap-2\">\n {item.icon && <span className=\"h-4 w-4\">{item.icon}</span>}\n {item.label}\n </a>\n </DropdownMenuItem>\n )\n }\n\n return (\n <DropdownMenuItem\n key={item.label}\n disabled={item.disabled}\n onClick={handleClick}\n className=\"flex items-center gap-2\"\n >\n {item.icon && <span className=\"h-4 w-4\">{item.icon}</span>}\n {item.label}\n </DropdownMenuItem>\n )\n })\n}\n\nconst MultiLevelDropdown = React.forwardRef<HTMLDivElement, MultiLevelDropdownProps>(\n ({ trigger, items, align = 'start', side = 'bottom', className }, ref) => {\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>{trigger}</DropdownMenuTrigger>\n <DropdownMenuContent ref={ref} align={align} side={side} className={cn('w-56', className)}>\n {renderDropdownItems(items)}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n }\n)\nMultiLevelDropdown.displayName = 'MultiLevelDropdown'\n\nexport { MultiLevelDropdown }\n","import * as React from 'react'\nimport { cn } from '@/utils/cn'\nimport { Badge } from '@/components/ui/badge'\n\nexport interface TabItem {\n id: string\n label: string\n icon?: React.ReactNode\n badge?: string | number\n disabled?: boolean\n}\n\nexport interface TabNavigationProps extends React.HTMLAttributes<HTMLDivElement> {\n tabs: TabItem[]\n activeTab?: string\n onTabChange?: (tabId: string) => void\n variant?: 'default' | 'pills' | 'underline' | 'boxed'\n size?: 'sm' | 'md' | 'lg'\n fullWidth?: boolean\n}\n\nconst TabNavigation = React.forwardRef<HTMLDivElement, TabNavigationProps>(\n (\n {\n className,\n tabs,\n activeTab,\n onTabChange,\n variant = 'default',\n size = 'md',\n fullWidth = false,\n ...props\n },\n ref\n ) => {\n const [internalActiveTab, setInternalActiveTab] = React.useState(tabs[0]?.id)\n const currentTab = activeTab ?? internalActiveTab\n\n const handleTabClick = (tabId: string) => {\n if (onTabChange) {\n onTabChange(tabId)\n } else {\n setInternalActiveTab(tabId)\n }\n }\n\n const sizeClasses = {\n sm: 'text-xs py-1 px-2',\n md: 'text-sm py-2 px-3',\n lg: 'text-base py-3 px-4',\n }\n\n const getVariantClasses = (isActive: boolean) => {\n const baseClasses = 'flex items-center gap-2 font-medium transition-colors'\n\n switch (variant) {\n case 'pills':\n return cn(\n baseClasses,\n 'rounded-full',\n isActive\n ? 'bg-primary text-primary-foreground'\n : 'text-muted-foreground hover:bg-muted hover:text-foreground'\n )\n case 'underline':\n return cn(\n baseClasses,\n 'border-b-2 rounded-none',\n isActive\n ? 'border-primary text-primary'\n : 'border-transparent text-muted-foreground hover:border-border hover:text-foreground'\n )\n case 'boxed':\n return cn(\n baseClasses,\n 'rounded-lg border',\n isActive\n ? 'border-primary bg-primary/10 text-primary'\n : 'border-transparent text-muted-foreground hover:bg-muted hover:text-foreground'\n )\n default:\n return cn(\n baseClasses,\n 'rounded-md',\n isActive\n ? 'bg-muted text-foreground'\n : 'text-muted-foreground hover:bg-muted/50 hover:text-foreground'\n )\n }\n }\n\n const containerClasses = cn(\n 'flex items-center gap-1',\n variant === 'underline' && 'border-b',\n fullWidth && 'w-full',\n className\n )\n\n return (\n <div ref={ref} className={containerClasses} role=\"tablist\" {...props}>\n {tabs.map((tab) => {\n const isActive = currentTab === tab.id\n\n return (\n <button\n key={tab.id}\n role=\"tab\"\n aria-selected={isActive}\n aria-disabled={tab.disabled}\n disabled={tab.disabled}\n onClick={() => handleTabClick(tab.id)}\n className={cn(\n getVariantClasses(isActive),\n sizeClasses[size],\n fullWidth && 'flex-1 justify-center',\n tab.disabled && 'cursor-not-allowed opacity-50'\n )}\n >\n {tab.icon && <span className=\"h-4 w-4\">{tab.icon}</span>}\n <span>{tab.label}</span>\n {tab.badge !== undefined && (\n <Badge\n variant={isActive ? 'default' : 'secondary'}\n className=\"ml-1 h-5 min-w-5 rounded-full px-1.5 text-xs\"\n >\n {tab.badge}\n </Badge>\n )}\n </button>\n )\n })}\n </div>\n )\n }\n)\nTabNavigation.displayName = 'TabNavigation'\n\nexport { TabNavigation }\n","import * as React from 'react'\nimport { Plus, ChevronDown } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n DropdownMenuGroup,\n} from '@/components/ui/dropdown-menu'\n\nexport interface QuickCreateItem {\n id: string\n label: string\n icon?: React.ReactNode\n description?: string\n onClick: () => void\n shortcut?: string\n}\n\nexport interface QuickCreateGroup {\n label?: string\n items: QuickCreateItem[]\n}\n\nexport interface QuickCreateMenuProps {\n groups: QuickCreateGroup[]\n label?: string\n variant?: 'default' | 'outline' | 'ghost'\n size?: 'default' | 'sm' | 'lg' | 'icon'\n className?: string\n align?: 'start' | 'center' | 'end'\n}\n\nconst QuickCreateMenu = React.forwardRef<HTMLButtonElement, QuickCreateMenuProps>(\n (\n {\n groups,\n label = 'Create',\n variant = 'default',\n size = 'default',\n className,\n align = 'end',\n },\n ref\n ) => {\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button ref={ref} variant={variant} size={size} className={cn('gap-1', className)}>\n <Plus className=\"h-4 w-4\" />\n {size !== 'icon' && (\n <>\n <span>{label}</span>\n <ChevronDown className=\"h-3 w-3 opacity-50\" />\n </>\n )}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align={align} className=\"w-64\">\n {groups.map((group, groupIndex) => (\n <React.Fragment key={groupIndex}>\n {groupIndex > 0 && <DropdownMenuSeparator />}\n {group.label && <DropdownMenuLabel>{group.label}</DropdownMenuLabel>}\n <DropdownMenuGroup>\n {group.items.map((item) => (\n <DropdownMenuItem\n key={item.id}\n onClick={item.onClick}\n className=\"flex items-start gap-3 py-2\"\n >\n {item.icon && (\n <span className=\"mt-0.5 flex h-5 w-5 items-center justify-center text-muted-foreground\">\n {item.icon}\n </span>\n )}\n <div className=\"flex flex-1 flex-col gap-0.5\">\n <span className=\"font-medium\">{item.label}</span>\n {item.description && (\n <span className=\"text-xs text-muted-foreground\">{item.description}</span>\n )}\n </div>\n {item.shortcut && (\n <kbd className=\"pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground opacity-100\">\n {item.shortcut}\n </kbd>\n )}\n </DropdownMenuItem>\n ))}\n </DropdownMenuGroup>\n </React.Fragment>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n }\n)\nQuickCreateMenu.displayName = 'QuickCreateMenu'\n\nexport { QuickCreateMenu }\n","import * as React from 'react'\nimport { Search, Loader2 } from 'lucide-react'\nimport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n} from '@/components/ui/command'\n\nexport interface CommandAction {\n id: string\n label: string\n icon?: React.ReactNode\n shortcut?: string\n keywords?: string[]\n onSelect: () => void\n disabled?: boolean\n}\n\nexport interface CommandPaletteGroup {\n heading: string\n actions: CommandAction[]\n}\n\nexport interface CommandPaletteProps {\n open: boolean\n onOpenChange: (open: boolean) => void\n groups: CommandPaletteGroup[]\n placeholder?: string\n emptyMessage?: string\n loading?: boolean\n onSearch?: (query: string) => void\n}\n\nconst CommandPalette = React.forwardRef<HTMLDivElement, CommandPaletteProps>(\n (\n {\n open,\n onOpenChange,\n groups,\n placeholder = 'Type a command or search...',\n emptyMessage = 'No results found.',\n loading = false,\n onSearch,\n },\n ref\n ) => {\n const [search, setSearch] = React.useState('')\n\n React.useEffect(() => {\n const down = (e: KeyboardEvent) => {\n if (e.key === 'k' && (e.metaKey || e.ctrlKey)) {\n e.preventDefault()\n onOpenChange(!open)\n }\n }\n\n document.addEventListener('keydown', down)\n return () => document.removeEventListener('keydown', down)\n }, [open, onOpenChange])\n\n const handleValueChange = (value: string) => {\n setSearch(value)\n onSearch?.(value)\n }\n\n return (\n <CommandDialog open={open} onOpenChange={onOpenChange}>\n <Command ref={ref} className=\"rounded-lg border shadow-md\">\n <div className=\"flex items-center border-b px-3\">\n {loading ? (\n <Loader2 className=\"mr-2 h-4 w-4 shrink-0 animate-spin opacity-50\" />\n ) : (\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n )}\n <CommandInput\n placeholder={placeholder}\n value={search}\n onValueChange={handleValueChange}\n className=\"flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\"\n />\n </div>\n <CommandList>\n <CommandEmpty>{emptyMessage}</CommandEmpty>\n {groups.map((group, groupIndex) => (\n <React.Fragment key={group.heading}>\n {groupIndex > 0 && <CommandSeparator />}\n <CommandGroup heading={group.heading}>\n {group.actions.map((action) => (\n <CommandItem\n key={action.id}\n value={action.id}\n keywords={action.keywords}\n onSelect={() => {\n action.onSelect()\n onOpenChange(false)\n }}\n disabled={action.disabled}\n className=\"flex items-center gap-2\"\n >\n {action.icon && (\n <span className=\"flex h-5 w-5 items-center justify-center\">\n {action.icon}\n </span>\n )}\n <span>{action.label}</span>\n {action.shortcut && (\n <CommandShortcut>{action.shortcut}</CommandShortcut>\n )}\n </CommandItem>\n ))}\n </CommandGroup>\n </React.Fragment>\n ))}\n </CommandList>\n </Command>\n </CommandDialog>\n )\n }\n)\nCommandPalette.displayName = 'CommandPalette'\n\nexport { CommandPalette }\n","import * as React from 'react'\nimport { Search, Loader2, History, TrendingUp } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Input } from '@/components/ui/input'\nimport { Button } from '@/components/ui/button'\nimport { ScrollArea } from '@/components/ui/scroll-area'\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from '@/components/ui/popover'\n\nexport interface SearchResult {\n id: string\n title: string\n description?: string\n type?: string\n icon?: React.ReactNode\n href?: string\n onClick?: () => void\n}\n\nexport interface GlobalSearchProps extends React.HTMLAttributes<HTMLDivElement> {\n onSearch: (query: string) => Promise<SearchResult[]> | SearchResult[]\n recentSearches?: string[]\n onRecentSearchClick?: (query: string) => void\n onClearRecent?: () => void\n trendingSearches?: string[]\n placeholder?: string\n shortcut?: string\n debounceMs?: number\n}\n\nconst GlobalSearch = React.forwardRef<HTMLDivElement, GlobalSearchProps>(\n (\n {\n className,\n onSearch,\n recentSearches = [],\n onRecentSearchClick,\n onClearRecent,\n trendingSearches = [],\n placeholder = 'Search...',\n shortcut = '⌘K',\n debounceMs = 300,\n ...props\n },\n ref\n ) => {\n const [open, setOpen] = React.useState(false)\n const [query, setQuery] = React.useState('')\n const [results, setResults] = React.useState<SearchResult[]>([])\n const [loading, setLoading] = React.useState(false)\n const inputRef = React.useRef<HTMLInputElement>(null)\n const debounceRef = React.useRef<NodeJS.Timeout | null>(null)\n\n React.useEffect(() => {\n const down = (e: KeyboardEvent) => {\n if (e.key === 'k' && (e.metaKey || e.ctrlKey)) {\n e.preventDefault()\n setOpen(true)\n setTimeout(() => inputRef.current?.focus(), 0)\n }\n }\n\n document.addEventListener('keydown', down)\n return () => document.removeEventListener('keydown', down)\n }, [])\n\n const handleSearch = React.useCallback(\n async (searchQuery: string) => {\n setQuery(searchQuery)\n\n if (debounceRef.current) {\n clearTimeout(debounceRef.current)\n }\n\n if (!searchQuery.trim()) {\n setResults([])\n return\n }\n\n debounceRef.current = setTimeout(async () => {\n setLoading(true)\n try {\n const searchResults = await onSearch(searchQuery)\n setResults(searchResults)\n } catch {\n setResults([])\n } finally {\n setLoading(false)\n }\n }, debounceMs)\n },\n [onSearch, debounceMs]\n )\n\n const handleResultClick = (result: SearchResult) => {\n if (result.onClick) {\n result.onClick()\n }\n setOpen(false)\n setQuery('')\n setResults([])\n }\n\n const handleRecentClick = (recentQuery: string) => {\n onRecentSearchClick?.(recentQuery)\n setQuery(recentQuery)\n handleSearch(recentQuery)\n }\n\n const showRecent = !query && recentSearches.length > 0\n const showTrending = !query && trendingSearches.length > 0\n\n return (\n <div ref={ref} className={cn('relative', className)} {...props}>\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <div className=\"relative cursor-pointer\" onClick={() => setOpen(true)}>\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground\" />\n <Input\n ref={inputRef}\n type=\"text\"\n placeholder={placeholder}\n value={query}\n onChange={(e) => handleSearch(e.target.value)}\n className=\"w-full pl-10 pr-16\"\n />\n <kbd className=\"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 rounded border bg-muted px-1.5 py-0.5 text-xs text-muted-foreground\">\n {shortcut}\n </kbd>\n </div>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-[var(--radix-popover-trigger-width)] p-0\"\n align=\"start\"\n onOpenAutoFocus={(e) => e.preventDefault()}\n >\n <ScrollArea className=\"max-h-80\">\n {loading && (\n <div className=\"flex items-center justify-center p-4\">\n <Loader2 className=\"h-5 w-5 animate-spin text-muted-foreground\" />\n </div>\n )}\n\n {!loading && results.length > 0 && (\n <div className=\"p-2\">\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Results\n </p>\n {results.map((result) => (\n <button\n key={result.id}\n onClick={() => handleResultClick(result)}\n className=\"flex w-full items-center gap-3 rounded-md p-2 text-left transition-colors hover:bg-accent\"\n >\n {result.icon && (\n <span className=\"flex h-8 w-8 items-center justify-center rounded-md bg-muted\">\n {result.icon}\n </span>\n )}\n <div className=\"flex-1 overflow-hidden\">\n <p className=\"truncate font-medium\">{result.title}</p>\n {result.description && (\n <p className=\"truncate text-xs text-muted-foreground\">\n {result.description}\n </p>\n )}\n </div>\n {result.type && (\n <span className=\"text-xs text-muted-foreground\">{result.type}</span>\n )}\n </button>\n ))}\n </div>\n )}\n\n {!loading && query && results.length === 0 && (\n <div className=\"p-4 text-center text-sm text-muted-foreground\">\n No results found for &quot;{query}&quot;\n </div>\n )}\n\n {showRecent && (\n <div className=\"p-2\">\n <div className=\"flex items-center justify-between px-2 py-1.5\">\n <p className=\"text-xs font-medium text-muted-foreground\">Recent</p>\n {onClearRecent && (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-auto p-0 text-xs\"\n onClick={onClearRecent}\n >\n Clear\n </Button>\n )}\n </div>\n {recentSearches.map((recent, index) => (\n <button\n key={index}\n onClick={() => handleRecentClick(recent)}\n className=\"flex w-full items-center gap-2 rounded-md p-2 text-left text-sm transition-colors hover:bg-accent\"\n >\n <History className=\"h-4 w-4 text-muted-foreground\" />\n {recent}\n </button>\n ))}\n </div>\n )}\n\n {showTrending && (\n <div className=\"border-t p-2\">\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Trending\n </p>\n {trendingSearches.map((trending, index) => (\n <button\n key={index}\n onClick={() => handleRecentClick(trending)}\n className=\"flex w-full items-center gap-2 rounded-md p-2 text-left text-sm transition-colors hover:bg-accent\"\n >\n <TrendingUp className=\"h-4 w-4 text-muted-foreground\" />\n {trending}\n </button>\n ))}\n </div>\n )}\n </ScrollArea>\n </PopoverContent>\n </Popover>\n </div>\n )\n }\n)\nGlobalSearch.displayName = 'GlobalSearch'\n\nexport { GlobalSearch }\n"],"names":["Bell","createLucideIcon","History","Menu","PanelLeft","SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","ref","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","SheetContent","jsxs","SidebarTrigger","onClick","Button","SidebarRail","SidebarInset","SidebarInput","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","Comp","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton","Breadcrumb","BreadcrumbList","BreadcrumbItem","BreadcrumbLink","BreadcrumbPage","BreadcrumbSeparator","ChevronRight","BreadcrumbEllipsis","MoreHorizontal","TopNav","logo","onMenuClick","showSearch","searchPlaceholder","onSearch","user","userMenuItems","notificationCount","onNotificationClick","rightContent","searchValue","setSearchValue","handleSearchSubmit","e","Search","Input","DropdownMenu","DropdownMenuTrigger","Avatar","AvatarImage","AvatarFallback","DropdownMenuContent","DropdownMenuLabel","Fragment","DropdownMenuSeparator","item","index","DropdownMenuItem","MegaMenu","items","activeItem","setActiveItem","timeoutRef","handleMouseEnter","label","handleMouseLeave","ChevronDown","column","colIndex","section","secIndex","link","linkIndex","renderDropdownItems","DropdownMenuSub","DropdownMenuSubTrigger","DropdownMenuSubContent","handleClick","MultiLevelDropdown","trigger","align","TabNavigation","tabs","activeTab","onTabChange","fullWidth","internalActiveTab","setInternalActiveTab","_a","currentTab","handleTabClick","tabId","sizeClasses","getVariantClasses","baseClasses","containerClasses","tab","Badge","QuickCreateMenu","groups","Plus","group","groupIndex","DropdownMenuGroup","CommandPalette","onOpenChange","placeholder","emptyMessage","loading","search","setSearch","down","CommandDialog","Command","Loader2","CommandInput","CommandList","CommandEmpty","CommandSeparator","CommandGroup","action","CommandItem","CommandShortcut","GlobalSearch","recentSearches","onRecentSearchClick","onClearRecent","trendingSearches","shortcut","debounceMs","query","setQuery","results","setResults","setLoading","inputRef","debounceRef","handleSearch","searchQuery","searchResults","handleResultClick","result","handleRecentClick","recentQuery","showRecent","showTrending","Popover","PopoverTrigger","PopoverContent","ScrollArea","recent","trending","TrendingUp"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAOC,EAAiB,QAAQ;AAAA,EACpC,CAAC,QAAQ,EAAE,GAAG,6CAA6C,KAAK,SAAQ,CAAE;AAAA,EAC1E,CAAC,QAAQ,EAAE,GAAG,kCAAkC,KAAK,SAAQ,CAAE;AACjE,CAAC;ACZD;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMC,KAAUD,EAAiB,WAAW;AAAA,EAC1C,CAAC,QAAQ,EAAE,GAAG,qDAAqD,KAAK,SAAQ,CAAE;AAAA,EAClF,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,SAAQ,CAAE;AAAA,EACzC,CAAC,QAAQ,EAAE,GAAG,eAAe,KAAK,SAAQ,CAAE;AAC9C,CAAC;ACbD;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAME,KAAOF,EAAiB,QAAQ;AAAA,EACpC,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,SAAQ,CAAE;AAAA,EACjE,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,KAAK,SAAQ,CAAE;AAAA,EAC/D,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,SAAQ,CAAE;AACnE,CAAC;ACbD;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMG,KAAYH,EAAiB,aAAa;AAAA,EAC9C,CAAC,QAAQ,EAAE,OAAO,MAAM,QAAQ,MAAM,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,KAAK,SAAQ,CAAE;AAAA,EAC9E,CAAC,QAAQ,EAAE,GAAG,WAAW,KAAK,SAAQ,CAAE;AAC1C,CAAC,GCAKI,KAAsB,iBACtBC,KAAyB,KAAK,KAAK,KAAK,GACxCC,KAAgB,SAChBC,KAAuB,SACvBC,KAAqB,QACrBC,KAA4B,KAY5BC,IAAiBC,EAAM,cAAqC,IAAI;AAEtE,SAASC,IAAa;AACpB,QAAMC,IAAUF,EAAM,WAAWD,CAAc;AAC/C,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,mDAAmD;AAErE,SAAOA;AACT;AAEA,MAAMC,KAAkBH,EAAM;AAAA,EAQ5B,CACE;AAAA,IACE,aAAAI,IAAc;AAAA,IACd,MAAMC;AAAA,IACN,cAAcC;AAAA,IACd,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,UAAMC,IAAWC,GAAA,GACX,CAACC,GAAYC,CAAa,IAAIf,EAAM,SAAS,EAAK,GAClD,CAACgB,GAAOC,CAAQ,IAAIjB,EAAM,SAASI,CAAW,GAC9Cc,IAAOb,KAAYW,GAEnBG,IAAUnB,EAAM;AAAA,MACpB,CAACoB,MAAmD;AAClD,cAAMC,IAAY,OAAOD,KAAU,aAAaA,EAAMF,CAAI,IAAIE;AAC9D,QAAId,IACFA,EAAYe,CAAS,IAErBJ,EAASI,CAAS,GAEpB,SAAS,SAAS,GAAG5B,EAAmB,IAAI4B,CAAS,qBAAqB3B,EAAsB;AAAA,MAClG;AAAA,MACA,CAACY,GAAaY,CAAI;AAAA,IAAA,GAGdI,IAAgBtB,EAAM,YAAY,MAC/BY,IAAWG,EAAc,CAACG,MAAS,CAACA,CAAI,IAAIC,EAAQ,CAACD,MAAS,CAACA,CAAI,GACzE,CAACN,GAAUO,GAASJ,CAAa,CAAC;AAErC,IAAAf,EAAM,UAAU,MAAM;AACpB,YAAMuB,IAAgB,CAACC,MAAyB;AAC9C,QAAIA,EAAM,QAAQ1B,OAA8B0B,EAAM,WAAWA,EAAM,aACrEA,EAAM,eAAA,GACNF,EAAA;AAAA,MAEJ;AAEA,oBAAO,iBAAiB,WAAWC,CAAa,GACzC,MAAM,OAAO,oBAAoB,WAAWA,CAAa;AAAA,IAClE,GAAG,CAACD,CAAa,CAAC;AAElB,UAAMG,IAAQP,IAAO,aAAa,aAE5BQ,IAAe1B,EAAM;AAAA,MACzB,OAAO;AAAA,QACL,OAAAyB;AAAA,QACA,MAAAP;AAAA,QACA,SAAAC;AAAA,QACA,UAAAP;AAAA,QACA,YAAAE;AAAA,QACA,eAAAC;AAAA,QACA,eAAAO;AAAA,MAAA;AAAA,MAEF,CAACG,GAAOP,GAAMC,GAASP,GAAUE,GAAYC,GAAeO,CAAa;AAAA,IAAA;AAG3E,WACE,gBAAAK,EAAC5B,EAAe,UAAf,EAAwB,OAAO2B,GAC9B,UAAA,gBAAAC,EAACC,IAAA,EAAgB,eAAe,GAC9B,UAAA,gBAAAD;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,OACE;AAAA,UACE,mBAAmBhC;AAAA,UACnB,wBAAwBE;AAAA,UACxB,GAAGW;AAAA,QAAA;AAAA,QAGP,WAAWqB;AAAA,UACT;AAAA,UACAtB;AAAA,QAAA;AAAA,QAEF,KAAAI;AAAA,QACC,GAAGD;AAAA,QAEH,UAAAD;AAAA,MAAA;AAAA,IAAA,GAEL,EAAA,CACF;AAAA,EAEJ;AACF;AACAN,GAAgB,cAAc;AAE9B,MAAM2B,KAAU9B,EAAM;AAAA,EAQpB,CACE;AAAA,IACE,MAAA+B,IAAO;AAAA,IACP,SAAAC,IAAU;AAAA,IACV,aAAAC,IAAc;AAAA,IACd,WAAA1B;AAAA,IACA,UAAAE;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,UAAM,EAAE,UAAAC,GAAU,OAAAa,GAAO,YAAAX,GAAY,eAAAC,EAAA,IAAkBd,EAAA;AAEvD,WAAIgC,MAAgB,SAEhB,gBAAAN;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWE;AAAA,UACT;AAAA,UACAtB;AAAA,QAAA;AAAA,QAEF,KAAAI;AAAA,QACC,GAAGD;AAAA,QAEH,UAAAD;AAAA,MAAA;AAAA,IAAA,IAKHG,sBAECsB,IAAA,EAAM,MAAMpB,GAAY,cAAcC,GAAgB,GAAGL,GACxD,UAAA,gBAAAiB;AAAA,MAACQ;AAAA,MAAA;AAAA,QACC,gBAAa;AAAA,QACb,eAAY;AAAA,QACZ,WAAU;AAAA,QACV,OACE;AAAA,UACE,mBAAmBvC;AAAA,QAAA;AAAA,QAGvB,MAAAmC;AAAA,QAEA,UAAA,gBAAAJ,EAAC,OAAA,EAAI,WAAU,+BAA+B,UAAAlB,EAAA,CAAS;AAAA,MAAA;AAAA,IAAA,GAE3D,IAKF,gBAAA2B;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAzB;AAAA,QACA,WAAU;AAAA,QACV,cAAYc;AAAA,QACZ,oBAAkBA,MAAU,cAAcQ,IAAc;AAAA,QACxD,gBAAcD;AAAA,QACd,aAAWD;AAAA,QAEX,UAAA;AAAA,UAAA,gBAAAJ;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWE;AAAA,gBACT;AAAA,gBACA;AAAA,gBACA;AAAA,gBACAG,MAAY,cAAcA,MAAY,UAClC,6EACA;AAAA,cAAA;AAAA,YACN;AAAA,UAAA;AAAA,UAEF,gBAAAL;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWE;AAAA,gBACT;AAAA,gBACAE,MAAS,SACL,mFACA;AAAA,gBACJC,MAAY,cAAcA,MAAY,UAClC,uFACA;AAAA,gBACJzB;AAAA,cAAA;AAAA,cAED,GAAGG;AAAA,cAEJ,UAAA,gBAAAiB;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,gBAAa;AAAA,kBACb,WAAWE;AAAA,oBACT;AAAA,kBAAA;AAAA,kBAGD,UAAApB;AAAA,gBAAA;AAAA,cAAA;AAAA,YACH;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;AACAqB,GAAQ,cAAc;AAEtB,MAAMO,KAAiBrC,EAAM,WAG3B,CAAC,EAAE,WAAAO,GAAW,SAAA+B,GAAS,GAAG5B,EAAA,GAASC,MAAQ;AAC3C,QAAM,EAAE,eAAAW,EAAA,IAAkBrB,EAAA;AAE1B,SACE,gBAAAmC;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,KAAA5B;AAAA,MACA,gBAAa;AAAA,MACb,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,WAAWkB,EAAG,WAAWtB,CAAS;AAAA,MAClC,SAAS,CAACiB,MAAU;AAClB,QAAAc,KAAA,QAAAA,EAAUd,IACVF,EAAA;AAAA,MACF;AAAA,MACC,GAAGZ;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAiB,EAACnC,IAAA,EAAU;AAAA,QACX,gBAAAmC,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,iBAAA,CAAc;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG9C,CAAC;AACDU,GAAe,cAAc;AAE7B,MAAMG,KAAcxC,EAAM;AAAA,EACxB,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAAQ;AAChC,UAAM,EAAE,eAAAW,EAAA,IAAkBrB,EAAA;AAE1B,WACE,gBAAA0B;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAhB;AAAA,QACA,gBAAa;AAAA,QACb,cAAW;AAAA,QACX,UAAU;AAAA,QACV,SAASW;AAAA,QACT,OAAM;AAAA,QACN,WAAWO;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACAtB;AAAA,QAAA;AAAA,QAED,GAAGG;AAAA,MAAA;AAAA,IAAA;AAAA,EAGV;AACF;AACA8B,GAAY,cAAc;AAE1B,MAAMC,KAAezC,EAAM;AAAA,EACzB,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAEtB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,WAAWkB;AAAA,QACT;AAAA,QACA;AAAA,QACAtB;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAIZ;AACA+B,GAAa,cAAc;AAE3B,MAAMC,KAAe1C,EAAM,WAGzB,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAExB,gBAAAgB;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAhB;AAAA,IACA,gBAAa;AAAA,IACb,WAAWkB;AAAA,MACT;AAAA,MACAtB;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDgC,GAAa,cAAc;AAE3B,MAAMC,KAAgB3C,EAAM;AAAA,EAC1B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAEtB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,2BAA2BtB,CAAS;AAAA,MACjD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAiC,GAAc,cAAc;AAE5B,MAAMC,KAAgB5C,EAAM;AAAA,EAC1B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAEtB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,2BAA2BtB,CAAS;AAAA,MACjD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAkC,GAAc,cAAc;AAE5B,MAAMC,KAAmB7C,EAAM,WAG7B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAExB,gBAAAgB;AAAA,EAACmB;AAAA,EAAA;AAAA,IACC,KAAAnC;AAAA,IACA,gBAAa;AAAA,IACb,WAAWkB,EAAG,iCAAiCtB,CAAS;AAAA,IACvD,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDmC,GAAiB,cAAc;AAE/B,MAAME,KAAiB/C,EAAM;AAAA,EAC3B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAEtB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB;AAAA,QACT;AAAA,QACAtB;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAqC,GAAe,cAAc;AAE7B,MAAMC,KAAehD,EAAM;AAAA,EACzB,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MAEtB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,6CAA6CtB,CAAS;AAAA,MACnE,GAAGG;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAsC,GAAa,cAAc;AAE3B,MAAMC,KAAoBjD,EAAM,WAG9B,CAAC,EAAE,WAAAO,GAAW,SAAA2C,IAAU,IAAO,GAAGxC,EAAA,GAASC,MAIzC,gBAAAgB;AAAA,EAHWuB,IAAUC,IAAO;AAAA,EAG3B;AAAA,IACC,KAAAxC;AAAA,IACA,gBAAa;AAAA,IACb,WAAWkB;AAAA,MACT;AAAA,MACA;AAAA,MACAtB;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDuC,GAAkB,cAAc;AAEhC,MAAMG,KAAqBpD,EAAM,WAG/B,CAAC,EAAE,WAAAO,GAAW,SAAA2C,IAAU,IAAO,GAAGxC,EAAA,GAASC,MAIzC,gBAAAgB;AAAA,EAHWuB,IAAUC,IAAO;AAAA,EAG3B;AAAA,IACC,KAAAxC;AAAA,IACA,gBAAa;AAAA,IACb,WAAWkB;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACAtB;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AAAA,CAGT;AACD0C,GAAmB,cAAc;AAEjC,MAAMC,KAAsBrD,EAAM;AAAA,EAChC,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,kBAAkBtB,CAAS;AAAA,MACxC,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACA2C,GAAoB,cAAc;AAElC,MAAMC,KAActD,EAAM;AAAA,EACxB,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,sCAAsCtB,CAAS;AAAA,MAC5D,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACA4C,GAAY,cAAc;AAE1B,MAAMC,KAAkBvD,EAAM;AAAA,EAC5B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,4BAA4BtB,CAAS;AAAA,MAClD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACA6C,GAAgB,cAAc;AAE9B,MAAMC,KAA4BC;AAAA,EAChC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SACE;AAAA,MAAA;AAAA,MAEJ,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,IACN;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ,GAEMC,KAAoB1D,EAAM;AAAA,EAQ9B,CACE;AAAA,IACE,SAAAkD,IAAU;AAAA,IACV,UAAAS,IAAW;AAAA,IACX,SAAA3B,IAAU;AAAA,IACV,MAAA4B,IAAO;AAAA,IACP,SAAAC;AAAA,IACA,WAAAtD;AAAA,IACA,GAAGG;AAAA,EAAA,GAELC,MACG;AACH,UAAMmD,IAAOZ,IAAUC,IAAO,UACxB,EAAE,UAAAvC,GAAU,OAAAa,EAAA,IAAUxB,EAAA,GAEtB8D,IACJ,gBAAApC;AAAA,MAACmC;AAAA,MAAA;AAAA,QACC,KAAAnD;AAAA,QACA,gBAAa;AAAA,QACb,aAAWiD;AAAA,QACX,eAAaD;AAAA,QACb,WAAW9B,EAAG2B,GAA0B,EAAE,SAAAxB,GAAS,MAAA4B,EAAA,CAAM,GAAGrD,CAAS;AAAA,QACpE,GAAGG;AAAA,MAAA;AAAA,IAAA;AAIR,WAAKmD,KAID,OAAOA,KAAY,aACrBA,IAAU;AAAA,MACR,UAAUA;AAAA,IAAA,sBAKXG,IAAA,EACC,UAAA;AAAA,MAAA,gBAAArC,EAACsC,IAAA,EAAe,SAAO,IAAE,UAAAF,GAAO;AAAA,MAChC,gBAAApC;AAAA,QAACuC;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,OAAM;AAAA,UACN,QAAQzC,MAAU,eAAeb;AAAA,UAChC,GAAGiD;AAAA,QAAA;AAAA,MAAA;AAAA,IACN,GACF,KAlBOE;AAAA,EAoBX;AACF;AACAL,GAAkB,cAAc;AAEhC,MAAMS,KAAoBnE,EAAM,WAM9B,CAAC,EAAE,WAAAO,GAAW,SAAA2C,IAAU,IAAO,aAAAkB,IAAc,IAAO,GAAG1D,EAAA,GAASC,MAI9D,gBAAAgB;AAAA,EAHWuB,IAAUC,IAAO;AAAA,EAG3B;AAAA,IACC,KAAAxC;AAAA,IACA,gBAAa;AAAA,IACb,WAAWkB;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACAuC,KACE;AAAA,MACF7D;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDyD,GAAkB,cAAc;AAEhC,MAAME,KAAmBrE,EAAM;AAAA,EAC7B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACAtB;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACA2D,GAAiB,cAAc;AAE/B,MAAMC,KAAsBtE,EAAM,WAKhC,CAAC,EAAE,WAAAO,GAAW,UAAAgE,IAAW,IAAO,GAAG7D,EAAA,GAASC,MAAQ;AACpD,QAAM6D,IAAQxE,EAAM,QAAQ,MACnB,GAAG,KAAK,MAAM,KAAK,WAAW,EAAE,IAAI,EAAE,KAC5C,CAAA,CAAE;AAEL,SACE,gBAAAoC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAzB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB,EAAG,+CAA+CtB,CAAS;AAAA,MACrE,GAAGG;AAAA,MAEH,UAAA;AAAA,QAAA6D,KAAY,gBAAA5C,EAAC8C,GAAA,EAAS,WAAU,qBAAoB,gBAAa,sBAAqB;AAAA,QACvF,gBAAA9C;AAAA,UAAC8C;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,gBAAa;AAAA,YACb,OACE;AAAA,cACE,oBAAoBD;AAAA,YAAA;AAAA,UACtB;AAAA,QAAA;AAAA,MAEJ;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;AACDF,GAAoB,cAAc;AAElC,MAAMI,KAAiB1E,EAAM;AAAA,EAC3B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,gBAAa;AAAA,MACb,WAAWkB;AAAA,QACT;AAAA,QACA;AAAA,QACAtB;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACAgE,GAAe,cAAc;AAE7B,MAAMC,KAAqB3E,EAAM;AAAA,EAC/B,CAAC,EAAE,GAAGU,EAAA,GAASC,MAAQ,gBAAAgB,EAAC,MAAA,EAAG,KAAAhB,GAAW,GAAGD,EAAA,CAAO;AAClD;AACAiE,GAAmB,cAAc;AAEjC,MAAMC,KAAuB5E,EAAM,WAOjC,CAAC,EAAE,SAAAkD,IAAU,IAAO,MAAAU,IAAO,MAAM,UAAAD,GAAU,WAAApD,GAAW,GAAGG,EAAA,GAASC,MAIhE,gBAAAgB;AAAA,EAHWuB,IAAUC,IAAO;AAAA,EAG3B;AAAA,IACC,KAAAxC;AAAA,IACA,gBAAa;AAAA,IACb,aAAWiD;AAAA,IACX,eAAaD;AAAA,IACb,WAAW9B;AAAA,MACT;AAAA,MACA;AAAA,MACA+B,MAAS,QAAQ;AAAA,MACjBA,MAAS,QAAQ;AAAA,MACjB;AAAA,MACArD;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDkE,GAAqB,cAAc;AC/qBnC,MAAMC,KAAa7E,EAAM,WAKvB,CAAC,EAAE,GAAGU,EAAA,GAASC,MAAQ,gBAAAgB,EAAC,SAAI,KAAAhB,GAAU,cAAW,cAAc,GAAGD,GAAO,CAAE;AAC7EmE,GAAW,cAAc;AAEzB,MAAMC,KAAiB9E,EAAM;AAAA,EAC3B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,WAAWkB;AAAA,QACT;AAAA,QACAtB;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACAoE,GAAe,cAAc;AAE7B,MAAMC,KAAiB/E,EAAM;AAAA,EAC3B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB,EAAC,MAAA,EAAG,KAAAhB,GAAU,WAAWkB,EAAG,oCAAoCtB,CAAS,GAAI,GAAGG,EAAA,CAAO;AAE3F;AACAqE,GAAe,cAAc;AAE7B,MAAMC,KAAiBhF,EAAM,WAK3B,CAAC,EAAE,SAAAkD,GAAS,WAAA3C,GAAW,GAAGG,EAAA,GAASC,MAIjC,gBAAAgB;AAAA,EAHWuB,IAAUC,IAAO;AAAA,EAG3B;AAAA,IACC,KAAAxC;AAAA,IACA,WAAWkB,EAAG,2CAA2CtB,CAAS;AAAA,IACjE,GAAGG;AAAA,EAAA;AAAA,CAGT;AACDsE,GAAe,cAAc;AAE7B,MAAMC,KAAiBjF,EAAM;AAAA,EAC3B,CAAC,EAAE,WAAAO,GAAW,GAAGG,EAAA,GAASC,MACxB,gBAAAgB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,MAAK;AAAA,MACL,iBAAc;AAAA,MACd,gBAAa;AAAA,MACb,WAAWkB,EAAG,+BAA+BtB,CAAS;AAAA,MACrD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;AACAuE,GAAe,cAAc;AAE7B,MAAMC,KAAsB,CAAC,EAAE,UAAAzE,GAAU,WAAAF,GAAW,GAAGG,QACrD,gBAAAiB,EAAC,MAAA,EAAG,MAAK,gBAAe,eAAY,QAAO,WAAWE,EAAG,oBAAoBtB,CAAS,GAAI,GAAGG,GAC1F,UAAAD,KAAY,gBAAAkB,EAACwD,IAAA,CAAA,CAAa,EAAA,CAC7B;AAEFD,GAAoB,cAAc;AAElC,MAAME,KAAqB,CAAC,EAAE,WAAA7E,GAAW,GAAGG,QAC1C,gBAAA0B;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,MAAK;AAAA,IACL,eAAY;AAAA,IACZ,WAAWP,EAAG,4CAA4CtB,CAAS;AAAA,IAClE,GAAGG;AAAA,IAEJ,UAAA;AAAA,MAAA,gBAAAiB,EAAC0D,IAAA,EAAe,WAAU,UAAA,CAAU;AAAA,MACpC,gBAAA1D,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,OAAA,CAAI;AAAA,IAAA;AAAA,EAAA;AAChC;AAEFyD,GAAmB,cAAc;AC/CjC,MAAME,KAAStF,EAAM;AAAA,EACnB,CACE;AAAA,IACE,WAAAO;AAAA,IACA,MAAAgF;AAAA,IACA,aAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,IACb,mBAAAC,IAAoB;AAAA,IACpB,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,eAAAC,IAAgB,CAAA;AAAA,IAChB,mBAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,GAAGtF;AAAA,EAAA,GAELC,MACG;AACH,UAAM,CAACsF,GAAaC,CAAc,IAAIlG,EAAM,SAAS,EAAE,GAEjDmG,IAAqB,CAACC,MAAuB;AACjD,MAAAA,EAAE,eAAA,GACFT,KAAA,QAAAA,EAAWM;AAAA,IACb;AAEA,WACE,gBAAA7D;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAzB;AAAA,QACA,WAAWkB;AAAA,UACT;AAAA,UACAtB;AAAA,QAAA;AAAA,QAED,GAAGG;AAAA,QAEH,UAAA;AAAA,UAAA8E,KACC,gBAAApD,EAACG,KAAO,SAAQ,SAAQ,MAAK,QAAO,WAAU,sBAAqB,SAASiD,GAC1E,UAAA;AAAA,YAAA,gBAAA7D,EAACpC,IAAA,EAAK,WAAU,UAAA,CAAU;AAAA,YAC1B,gBAAAoC,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,yBAAA,CAAsB;AAAA,UAAA,GAClD;AAAA,UAGD4D,KAAQ,gBAAA5D,EAAC,OAAA,EAAI,WAAU,2BAA2B,UAAA4D,GAAK;AAAA,UAEvDE,KACC,gBAAA9D,EAAC,QAAA,EAAK,UAAUwE,GAAoB,WAAU,0BAC5C,UAAA,gBAAA/D,EAAC,OAAA,EAAI,WAAU,YACb,UAAA;AAAA,YAAA,gBAAAT,EAAC0E,GAAA,EAAO,WAAU,0DAAA,CAA0D;AAAA,YAC5E,gBAAA1E;AAAA,cAAC2E;AAAA,cAAA;AAAA,gBACC,MAAK;AAAA,gBACL,aAAaZ;AAAA,gBACb,WAAU;AAAA,gBACV,OAAOO;AAAA,gBACP,UAAU,CAACG,MAAMF,EAAeE,EAAE,OAAO,KAAK;AAAA,cAAA;AAAA,YAAA;AAAA,UAChD,EAAA,CACF,EAAA,CACF;AAAA,UAGF,gBAAAhE,EAAC,OAAA,EAAI,WAAU,mCACZ,UAAA;AAAA,YAAA4D;AAAA,YAEAD,KACC,gBAAA3D,EAACG,GAAA,EAAO,SAAQ,SAAQ,MAAK,QAAO,WAAU,YAAW,SAASwD,GAChE,UAAA;AAAA,cAAA,gBAAApE,EAACvC,IAAA,EAAK,WAAU,UAAA,CAAU;AAAA,cACzB0G,MAAsB,UAAaA,IAAoB,KACtD,gBAAAnE,EAAC,QAAA,EAAK,WAAU,qIACb,UAAAmE,IAAoB,KAAK,QAAQA,EAAA,CACpC;AAAA,cAEF,gBAAAnE,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,gBAAA,CAAa;AAAA,YAAA,GACzC;AAAA,YAGDiE,uBACEW,GAAA,EACC,UAAA;AAAA,cAAA,gBAAA5E,EAAC6E,GAAA,EAAoB,SAAO,IAC1B,UAAA,gBAAA7E,EAACY,GAAA,EAAO,SAAQ,SAAQ,WAAU,iCAChC,UAAA,gBAAAH,EAACqE,IAAA,EAAO,WAAU,WACf,UAAA;AAAA,gBAAAb,EAAK,4BAAWc,IAAA,EAAY,KAAKd,EAAK,QAAQ,KAAKA,EAAK,KAAA,CAAM;AAAA,gBAC/D,gBAAAjE,EAACgF,IAAA,EAAgB,UAAAf,EAAK,YAAYA,EAAK,KAAK,OAAO,CAAC,EAAE,YAAA,EAAY,CAAE;AAAA,cAAA,EAAA,CACtE,GACF,GACF;AAAA,gCACCgB,GAAA,EAAoB,WAAU,QAAO,OAAM,OAAM,YAAU,IAC1D,UAAA;AAAA,gBAAA,gBAAAjF,EAACkF,KAAkB,WAAU,eAC3B,UAAA,gBAAAzE,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,kBAAA,gBAAAT,EAAC,KAAA,EAAE,WAAU,oCAAoC,UAAAiE,EAAK,MAAK;AAAA,kBAC3D,gBAAAjE,EAAC,KAAA,EAAE,WAAU,8CAA8C,YAAK,MAAA,CAAM;AAAA,gBAAA,EAAA,CACxE,EAAA,CACF;AAAA,gBACCkE,EAAc,SAAS,KACtB,gBAAAzD,EAAA0E,GAAA,EACE,UAAA;AAAA,kBAAA,gBAAAnF,EAACoF,GAAA,EAAsB;AAAA,kBACtBlB,EAAc,IAAI,CAACmB,GAAMC,MACxB,gBAAA7E,EAAC8E,GAAA,EAA6B,SAASF,EAAK,SACzC,UAAA;AAAA,oBAAAA,EAAK,QAAQ,gBAAArF,EAAC,QAAA,EAAK,WAAU,QAAQ,YAAK,MAAK;AAAA,oBAC/CqF,EAAK;AAAA,kBAAA,EAAA,GAFeC,CAGvB,CACD;AAAA,gBAAA,EAAA,CACH;AAAA,cAAA,EAAA,CAEJ;AAAA,YAAA,EAAA,CACF;AAAA,UAAA,EAAA,CAEJ;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;AACA3B,GAAO,cAAc;AC/GrB,MAAM6B,KAAWnH,EAAM;AAAA,EACrB,CAAC,EAAE,WAAAO,GAAW,OAAA6G,GAAO,MAAA7B,GAAM,cAAAS,GAAc,GAAGtF,EAAA,GAASC,MAAQ;AAC3D,UAAM,CAAC0G,GAAYC,CAAa,IAAItH,EAAM,SAAwB,IAAI,GAChEuH,IAAavH,EAAM,OAA8B,IAAI,GAErDwH,IAAmB,CAACC,MAAkB;AAC1C,MAAIF,EAAW,WACb,aAAaA,EAAW,OAAO,GAEjCD,EAAcG,CAAK;AAAA,IACrB,GAEMC,IAAmB,MAAM;AAC7B,MAAAH,EAAW,UAAU,WAAW,MAAM;AACpC,QAAAD,EAAc,IAAI;AAAA,MACpB,GAAG,GAAG;AAAA,IACR;AAEA,WACE,gBAAA3F;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAhB;AAAA,QACA,WAAWkB,EAAG,+CAA+CtB,CAAS;AAAA,QACrE,GAAGG;AAAA,QAEJ,UAAA,gBAAA0B,EAAC,OAAA,EAAI,WAAU,iEACZ,UAAA;AAAA,UAAAmD,KAAQ,gBAAA5D,EAAC,OAAA,EAAI,WAAU,iBAAiB,UAAA4D,GAAK;AAAA,4BAE7C,MAAA,EAAG,WAAU,qCACX,UAAA6B,EAAM,IAAI,CAACJ,MACV,gBAAA5E;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,cAAc,MAAM4E,EAAK,WAAWQ,EAAiBR,EAAK,KAAK;AAAA,cAC/D,cAAcU;AAAA,cAEb,UAAA;AAAA,gBAAAV,EAAK,QAAQ,CAACA,EAAK,UAClB,gBAAArF;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,MAAMqF,EAAK;AAAA,oBACX,WAAU;AAAA,oBAET,UAAAA,EAAK;AAAA,kBAAA;AAAA,gBAAA,IAGR,gBAAA5E;AAAA,kBAACG;AAAA,kBAAA;AAAA,oBACC,SAAQ;AAAA,oBACR,WAAWV;AAAA,sBACT;AAAA,sBACAwF,MAAeL,EAAK,SAAS;AAAA,oBAAA;AAAA,oBAG9B,UAAA;AAAA,sBAAAA,EAAK;AAAA,sBACLA,EAAK,WACJ,gBAAArF;AAAA,wBAACgG;AAAA,wBAAA;AAAA,0BACC,WAAW9F;AAAA,4BACT;AAAA,4BACAwF,MAAeL,EAAK,SAAS;AAAA,0BAAA;AAAA,wBAC/B;AAAA,sBAAA;AAAA,oBACF;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAKLA,EAAK,WAAWK,MAAeL,EAAK,SACnC,gBAAArF;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,WAAU;AAAA,oBACV,cAAc,MAAM6F,EAAiBR,EAAK,KAAK;AAAA,oBAC/C,cAAcU;AAAA,oBAEd,UAAA,gBAAA/F,EAAC,OAAA,EAAI,WAAU,yBACb,UAAA,gBAAAA;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACC,WAAU;AAAA,wBACV,OAAO;AAAA,0BACL,qBAAqB,UAAUqF,EAAK,QAAQ,MAAM;AAAA,wBAAA;AAAA,wBAGnD,YAAK,QAAQ,IAAI,CAACY,GAAQC,wBACxB,OAAA,EACE,UAAA;AAAA,0BAAAD,EAAO,SACN,gBAAAjG,EAAC,MAAA,EAAG,WAAU,8CACX,YAAO,OACV;AAAA,0BAEDiG,EAAO,SAAS,IAAI,CAACE,GAASC,MAC7B,gBAAA3F,EAAC,OAAA,EAAmB,WAAU,QAC3B,UAAA;AAAA,4BAAA0F,EAAQ,SACP,gBAAAnG,EAAC,MAAA,EAAG,WAAU,2EACX,YAAQ,OACX;AAAA,4BAEF,gBAAAA,EAAC,MAAA,EAAG,WAAU,aACX,UAAAmG,EAAQ,MAAM,IAAI,CAACE,GAAMC,MACxB,gBAAAtG,EAAC,MAAA,EACC,UAAA,gBAAAS;AAAA,8BAAC;AAAA,8BAAA;AAAA,gCACC,MAAM4F,EAAK;AAAA,gCACX,WAAU;AAAA,gCAET,UAAA;AAAA,kCAAAA,EAAK,QACJ,gBAAArG,EAAC,QAAA,EAAK,WAAU,4DACb,YAAK,MACR;AAAA,oDAED,OAAA,EACC,UAAA;AAAA,oCAAA,gBAAAA,EAAC,QAAA,EAAK,WAAU,6BACb,UAAAqG,EAAK,OACR;AAAA,oCACCA,EAAK,eACJ,gBAAArG,EAAC,UAAK,WAAU,uCACb,YAAK,YAAA,CACR;AAAA,kCAAA,EAAA,CAEJ;AAAA,gCAAA;AAAA,8BAAA;AAAA,4BAAA,EACF,GApBOsG,CAqBT,CACD,EAAA,CACH;AAAA,0BAAA,EAAA,GA/BQF,CAgCV,CACD;AAAA,0BACAH,EAAO,YACN,gBAAAjG,EAAC,SAAI,WAAU,gCACZ,YAAO,SAAA,CACV;AAAA,wBAAA,EAAA,GA5CMkG,CA8CV,CACD;AAAA,sBAAA;AAAA,oBAAA,EACH,CACF;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACF;AAAA,YAAA;AAAA,YA/FGb,EAAK;AAAA,UAAA,CAkGb,GACH;AAAA,UAEChB,KAAgB,gBAAArE,EAAC,OAAA,EAAI,WAAU,2BAA2B,UAAAqE,EAAA,CAAa;AAAA,QAAA,EAAA,CAC1E;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;AACAmB,GAAS,cAAc;AC7IvB,SAASe,EAAoBd,GAAiC;AAC5D,SAAOA,EAAM,IAAI,CAACJ,GAAMC,MAAU;AAChC,QAAID,EAAK;AACP,aAAO,gBAAArF,EAACoF,GAAA,CAAA,GAA2B,aAAaE,CAAK,EAAI;AAG3D,QAAID,EAAK,YAAYA,EAAK,SAAS,SAAS;AAC1C,+BACGmB,IAAA,EACC,UAAA;AAAA,QAAA,gBAAA/F,EAACgG,IAAA,EAAuB,UAAUpB,EAAK,UAAU,WAAU,2BACxD,UAAA;AAAA,UAAAA,EAAK,QAAQ,gBAAArF,EAAC,QAAA,EAAK,WAAU,WAAW,YAAK,MAAK;AAAA,UAClDqF,EAAK;AAAA,QAAA,GACR;AAAA,QACA,gBAAArF,EAAC0G,IAAA,EACE,UAAAH,EAAoBlB,EAAK,QAAQ,EAAA,CACpC;AAAA,MAAA,EAAA,GAPoBA,EAAK,KAQ3B;AAIJ,UAAMsB,IAAc,MAAM;AACxB,MAAItB,EAAK,WACPA,EAAK,QAAA;AAAA,IAET;AAEA,WAAIA,EAAK,OAEL,gBAAArF,EAACuF,GAAA,EAAkC,UAAUF,EAAK,UAAU,SAAO,IACjE,UAAA,gBAAA5E,EAAC,KAAA,EAAE,MAAM4E,EAAK,MAAM,WAAU,2BAC3B,UAAA;AAAA,MAAAA,EAAK,QAAQ,gBAAArF,EAAC,QAAA,EAAK,WAAU,WAAW,YAAK,MAAK;AAAA,MAClDqF,EAAK;AAAA,IAAA,GACR,EAAA,GAJqBA,EAAK,KAK5B,IAKF,gBAAA5E;AAAA,MAAC8E;AAAA,MAAA;AAAA,QAEC,UAAUF,EAAK;AAAA,QACf,SAASsB;AAAA,QACT,WAAU;AAAA,QAET,UAAA;AAAA,UAAAtB,EAAK,QAAQ,gBAAArF,EAAC,QAAA,EAAK,WAAU,WAAW,YAAK,MAAK;AAAA,UAClDqF,EAAK;AAAA,QAAA;AAAA,MAAA;AAAA,MANDA,EAAK;AAAA,IAAA;AAAA,EAShB,CAAC;AACH;AAEA,MAAMuB,KAAqBvI,EAAM;AAAA,EAC/B,CAAC,EAAE,SAAAwI,GAAS,OAAApB,GAAO,OAAAqB,IAAQ,SAAS,MAAA1G,IAAO,UAAU,WAAAxB,EAAA,GAAaI,wBAE7D4F,GAAA,EACC,UAAA;AAAA,IAAA,gBAAA5E,EAAC6E,GAAA,EAAoB,SAAO,IAAE,UAAAgC,GAAQ;AAAA,IACtC,gBAAA7G,EAACiF,GAAA,EAAoB,KAAAjG,GAAU,OAAA8H,GAAc,MAAA1G,GAAY,WAAWF,EAAG,QAAQtB,CAAS,GACrF,UAAA2H,EAAoBd,CAAK,EAAA,CAC5B;AAAA,EAAA,GACF;AAGN;AACAmB,GAAmB,cAAc;ACzEjC,MAAMG,KAAgB1I,EAAM;AAAA,EAC1B,CACE;AAAA,IACE,WAAAO;AAAA,IACA,MAAAoI;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,SAAA7G,IAAU;AAAA,IACV,MAAA4B,IAAO;AAAA,IACP,WAAAkF,IAAY;AAAA,IACZ,GAAGpI;AAAA,EAAA,GAELC,MACG;;AACH,UAAM,CAACoI,GAAmBC,CAAoB,IAAIhJ,EAAM,UAASiJ,IAAAN,EAAK,CAAC,MAAN,gBAAAM,EAAS,EAAE,GACtEC,IAAaN,KAAaG,GAE1BI,IAAiB,CAACC,MAAkB;AACxC,MAAIP,IACFA,EAAYO,CAAK,IAEjBJ,EAAqBI,CAAK;AAAA,IAE9B,GAEMC,IAAc;AAAA,MAClB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IAAA,GAGAC,IAAoB,CAAC3F,MAAsB;AAC/C,YAAM4F,IAAc;AAEpB,cAAQvH,GAAA;AAAA,QACN,KAAK;AACH,iBAAOH;AAAA,YACL0H;AAAA,YACA;AAAA,YACA5F,IACI,uCACA;AAAA,UAAA;AAAA,QAER,KAAK;AACH,iBAAO9B;AAAA,YACL0H;AAAA,YACA;AAAA,YACA5F,IACI,gCACA;AAAA,UAAA;AAAA,QAER,KAAK;AACH,iBAAO9B;AAAA,YACL0H;AAAA,YACA;AAAA,YACA5F,IACI,8CACA;AAAA,UAAA;AAAA,QAER;AACE,iBAAO9B;AAAA,YACL0H;AAAA,YACA;AAAA,YACA5F,IACI,6BACA;AAAA,UAAA;AAAA,MACN;AAAA,IAEN,GAEM6F,IAAmB3H;AAAA,MACvB;AAAA,MACAG,MAAY,eAAe;AAAA,MAC3B8G,KAAa;AAAA,MACbvI;AAAA,IAAA;AAGF,WACE,gBAAAoB,EAAC,OAAA,EAAI,KAAAhB,GAAU,WAAW6I,GAAkB,MAAK,WAAW,GAAG9I,GAC5D,UAAAiI,EAAK,IAAI,CAACc,MAAQ;AACjB,YAAM9F,IAAWuF,MAAeO,EAAI;AAEpC,aACE,gBAAArH;AAAA,QAAC;AAAA,QAAA;AAAA,UAEC,MAAK;AAAA,UACL,iBAAeuB;AAAA,UACf,iBAAe8F,EAAI;AAAA,UACnB,UAAUA,EAAI;AAAA,UACd,SAAS,MAAMN,EAAeM,EAAI,EAAE;AAAA,UACpC,WAAW5H;AAAA,YACTyH,EAAkB3F,CAAQ;AAAA,YAC1B0F,EAAYzF,CAAI;AAAA,YAChBkF,KAAa;AAAA,YACbW,EAAI,YAAY;AAAA,UAAA;AAAA,UAGjB,UAAA;AAAA,YAAAA,EAAI,QAAQ,gBAAA9H,EAAC,QAAA,EAAK,WAAU,WAAW,YAAI,MAAK;AAAA,YACjD,gBAAAA,EAAC,QAAA,EAAM,UAAA8H,EAAI,MAAA,CAAM;AAAA,YAChBA,EAAI,UAAU,UACb,gBAAA9H;AAAA,cAAC+H;AAAA,cAAA;AAAA,gBACC,SAAS/F,IAAW,YAAY;AAAA,gBAChC,WAAU;AAAA,gBAET,UAAA8F,EAAI;AAAA,cAAA;AAAA,YAAA;AAAA,UACP;AAAA,QAAA;AAAA,QArBGA,EAAI;AAAA,MAAA;AAAA,IAyBf,CAAC,EAAA,CACH;AAAA,EAEJ;AACF;AACAf,GAAc,cAAc;AClG5B,MAAMiB,KAAkB3J,EAAM;AAAA,EAC5B,CACE;AAAA,IACE,QAAA4J;AAAA,IACA,OAAAnC,IAAQ;AAAA,IACR,SAAAzF,IAAU;AAAA,IACV,MAAA4B,IAAO;AAAA,IACP,WAAArD;AAAA,IACA,OAAAkI,IAAQ;AAAA,EAAA,GAEV9H,wBAGG4F,GAAA,EACC,UAAA;AAAA,IAAA,gBAAA5E,EAAC6E,GAAA,EAAoB,SAAO,IAC1B,UAAA,gBAAApE,EAACG,GAAA,EAAO,KAAA5B,GAAU,SAAAqB,GAAkB,MAAA4B,GAAY,WAAW/B,EAAG,SAAStB,CAAS,GAC9E,UAAA;AAAA,MAAA,gBAAAoB,EAACkI,IAAA,EAAK,WAAU,UAAA,CAAU;AAAA,MACzBjG,MAAS,UACR,gBAAAxB,EAAA0E,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAnF,EAAC,UAAM,UAAA8F,EAAA,CAAM;AAAA,QACb,gBAAA9F,EAACgG,GAAA,EAAY,WAAU,qBAAA,CAAqB;AAAA,MAAA,EAAA,CAC9C;AAAA,IAAA,EAAA,CAEJ,EAAA,CACF;AAAA,IACA,gBAAAhG,EAACiF,GAAA,EAAoB,OAAA6B,GAAc,WAAU,QAC1C,UAAAmB,EAAO,IAAI,CAACE,GAAOC,MAClB,gBAAA3H,EAACpC,EAAM,UAAN,EACE,UAAA;AAAA,MAAA+J,IAAa,uBAAMhD,GAAA,CAAA,CAAsB;AAAA,MACzC+C,EAAM,SAAS,gBAAAnI,EAACkF,GAAA,EAAmB,YAAM,OAAM;AAAA,wBAC/CmD,IAAA,EACE,UAAAF,EAAM,MAAM,IAAI,CAAC9C,MAChB,gBAAA5E;AAAA,QAAC8E;AAAA,QAAA;AAAA,UAEC,SAASF,EAAK;AAAA,UACd,WAAU;AAAA,UAET,UAAA;AAAA,YAAAA,EAAK,QACJ,gBAAArF,EAAC,QAAA,EAAK,WAAU,yEACb,YAAK,MACR;AAAA,YAEF,gBAAAS,EAAC,OAAA,EAAI,WAAU,gCACb,UAAA;AAAA,cAAA,gBAAAT,EAAC,QAAA,EAAK,WAAU,eAAe,UAAAqF,EAAK,OAAM;AAAA,cACzCA,EAAK,eACJ,gBAAArF,EAAC,UAAK,WAAU,iCAAiC,YAAK,YAAA,CAAY;AAAA,YAAA,GAEtE;AAAA,YACCqF,EAAK,YACJ,gBAAArF,EAAC,SAAI,WAAU,yKACZ,YAAK,SAAA,CACR;AAAA,UAAA;AAAA,QAAA;AAAA,QAlBGqF,EAAK;AAAA,MAAA,CAqBb,EAAA,CACH;AAAA,IAAA,EAAA,GA5BmB+C,CA6BrB,CACD,EAAA,CACH;AAAA,EAAA,GACF;AAGN;AACAJ,GAAgB,cAAc;AC7D9B,MAAMM,KAAiBjK,EAAM;AAAA,EAC3B,CACE;AAAA,IACE,MAAAkB;AAAA,IACA,cAAAgJ;AAAA,IACA,QAAAN;AAAA,IACA,aAAAO,IAAc;AAAA,IACd,cAAAC,IAAe;AAAA,IACf,SAAAC,IAAU;AAAA,IACV,UAAA1E;AAAA,EAAA,GAEFhF,MACG;AACH,UAAM,CAAC2J,GAAQC,CAAS,IAAIvK,EAAM,SAAS,EAAE;AAE7C,WAAAA,EAAM,UAAU,MAAM;AACpB,YAAMwK,IAAO,CAACpE,MAAqB;AACjC,QAAIA,EAAE,QAAQ,QAAQA,EAAE,WAAWA,EAAE,aACnCA,EAAE,eAAA,GACF8D,EAAa,CAAChJ,CAAI;AAAA,MAEtB;AAEA,sBAAS,iBAAiB,WAAWsJ,CAAI,GAClC,MAAM,SAAS,oBAAoB,WAAWA,CAAI;AAAA,IAC3D,GAAG,CAACtJ,GAAMgJ,CAAY,CAAC,GAQrB,gBAAAvI,EAAC8I,MAAc,MAAAvJ,GAAY,cAAAgJ,GACzB,4BAACQ,IAAA,EAAQ,KAAA/J,GAAU,WAAU,+BAC3B,UAAA;AAAA,MAAA,gBAAAyB,EAAC,OAAA,EAAI,WAAU,mCACZ,UAAA;AAAA,QAAAiI,IACC,gBAAA1I,EAACgJ,KAAQ,WAAU,gDAAA,CAAgD,IAEnE,gBAAAhJ,EAAC0E,GAAA,EAAO,WAAU,mCAAA,CAAmC;AAAA,QAEvD,gBAAA1E;AAAA,UAACiJ;AAAA,UAAA;AAAA,YACC,aAAAT;AAAA,YACA,OAAOG;AAAA,YACP,eAjBgB,CAAClJ,MAAkB;AAC3C,cAAAmJ,EAAUnJ,CAAK,GACfuE,KAAA,QAAAA,EAAWvE;AAAA,YACb;AAAA,YAeU,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,MACZ,GACF;AAAA,wBACCyJ,IAAA,EACC,UAAA;AAAA,QAAA,gBAAAlJ,EAACmJ,MAAc,UAAAV,EAAA,CAAa;AAAA,QAC3BR,EAAO,IAAI,CAACE,GAAOC,MAClB,gBAAA3H,EAACpC,EAAM,UAAN,EACE,UAAA;AAAA,UAAA+J,IAAa,uBAAMgB,IAAA,CAAA,CAAiB;AAAA,UACrC,gBAAApJ,EAACqJ,MAAa,SAASlB,EAAM,SAC1B,UAAAA,EAAM,QAAQ,IAAI,CAACmB,MAClB,gBAAA7I;AAAA,YAAC8I;AAAA,YAAA;AAAA,cAEC,OAAOD,EAAO;AAAA,cACd,UAAUA,EAAO;AAAA,cACjB,UAAU,MAAM;AACd,gBAAAA,EAAO,SAAA,GACPf,EAAa,EAAK;AAAA,cACpB;AAAA,cACA,UAAUe,EAAO;AAAA,cACjB,WAAU;AAAA,cAET,UAAA;AAAA,gBAAAA,EAAO,QACN,gBAAAtJ,EAAC,QAAA,EAAK,WAAU,4CACb,YAAO,MACV;AAAA,gBAEF,gBAAAA,EAAC,QAAA,EAAM,UAAAsJ,EAAO,MAAA,CAAM;AAAA,gBACnBA,EAAO,YACN,gBAAAtJ,EAACwJ,IAAA,EAAiB,YAAO,SAAA,CAAS;AAAA,cAAA;AAAA,YAAA;AAAA,YAjB/BF,EAAO;AAAA,UAAA,CAoBf,EAAA,CACH;AAAA,QAAA,EAAA,GA1BmBnB,EAAM,OA2B3B,CACD;AAAA,MAAA,EAAA,CACH;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,EAEJ;AACF;AACAG,GAAe,cAAc;AC5F7B,MAAMmB,KAAepL,EAAM;AAAA,EACzB,CACE;AAAA,IACE,WAAAO;AAAA,IACA,UAAAoF;AAAA,IACA,gBAAA0F,IAAiB,CAAA;AAAA,IACjB,qBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,kBAAAC,IAAmB,CAAA;AAAA,IACnB,aAAArB,IAAc;AAAA,IACd,UAAAsB,IAAW;AAAA,IACX,YAAAC,IAAa;AAAA,IACb,GAAGhL;AAAA,EAAA,GAELC,MACG;AACH,UAAM,CAACO,GAAMC,CAAO,IAAInB,EAAM,SAAS,EAAK,GACtC,CAAC2L,GAAOC,CAAQ,IAAI5L,EAAM,SAAS,EAAE,GACrC,CAAC6L,GAASC,CAAU,IAAI9L,EAAM,SAAyB,CAAA,CAAE,GACzD,CAACqK,GAAS0B,CAAU,IAAI/L,EAAM,SAAS,EAAK,GAC5CgM,IAAWhM,EAAM,OAAyB,IAAI,GAC9CiM,IAAcjM,EAAM,OAA8B,IAAI;AAE5D,IAAAA,EAAM,UAAU,MAAM;AACpB,YAAMwK,IAAO,CAACpE,MAAqB;AACjC,QAAIA,EAAE,QAAQ,QAAQA,EAAE,WAAWA,EAAE,aACnCA,EAAE,eAAA,GACFjF,EAAQ,EAAI,GACZ,WAAW,MAAA;;AAAM,kBAAA8H,IAAA+C,EAAS,YAAT,gBAAA/C,EAAkB;AAAA,WAAS,CAAC;AAAA,MAEjD;AAEA,sBAAS,iBAAiB,WAAWuB,CAAI,GAClC,MAAM,SAAS,oBAAoB,WAAWA,CAAI;AAAA,IAC3D,GAAG,CAAA,CAAE;AAEL,UAAM0B,IAAelM,EAAM;AAAA,MACzB,OAAOmM,MAAwB;AAO7B,YANAP,EAASO,CAAW,GAEhBF,EAAY,WACd,aAAaA,EAAY,OAAO,GAG9B,CAACE,EAAY,QAAQ;AACvB,UAAAL,EAAW,CAAA,CAAE;AACb;AAAA,QACF;AAEA,QAAAG,EAAY,UAAU,WAAW,YAAY;AAC3C,UAAAF,EAAW,EAAI;AACf,cAAI;AACF,kBAAMK,IAAgB,MAAMzG,EAASwG,CAAW;AAChD,YAAAL,EAAWM,CAAa;AAAA,UAC1B,QAAQ;AACN,YAAAN,EAAW,CAAA,CAAE;AAAA,UACf,UAAA;AACE,YAAAC,EAAW,EAAK;AAAA,UAClB;AAAA,QACF,GAAGL,CAAU;AAAA,MACf;AAAA,MACA,CAAC/F,GAAU+F,CAAU;AAAA,IAAA,GAGjBW,IAAoB,CAACC,MAAyB;AAClD,MAAIA,EAAO,WACTA,EAAO,QAAA,GAETnL,EAAQ,EAAK,GACbyK,EAAS,EAAE,GACXE,EAAW,CAAA,CAAE;AAAA,IACf,GAEMS,IAAoB,CAACC,MAAwB;AACjD,MAAAlB,KAAA,QAAAA,EAAsBkB,IACtBZ,EAASY,CAAW,GACpBN,EAAaM,CAAW;AAAA,IAC1B,GAEMC,IAAa,CAACd,KAASN,EAAe,SAAS,GAC/CqB,IAAe,CAACf,KAASH,EAAiB,SAAS;AAEzD,WACE,gBAAA7J,EAAC,OAAA,EAAI,KAAAhB,GAAU,WAAWkB,EAAG,YAAYtB,CAAS,GAAI,GAAGG,GACvD,UAAA,gBAAA0B,EAACuK,IAAA,EAAQ,MAAAzL,GAAY,cAAcC,GACjC,UAAA;AAAA,MAAA,gBAAAQ,EAACiL,IAAA,EAAe,SAAO,IACrB,UAAA,gBAAAxK,EAAC,OAAA,EAAI,WAAU,2BAA0B,SAAS,MAAMjB,EAAQ,EAAI,GAClE,UAAA;AAAA,QAAA,gBAAAQ,EAAC0E,GAAA,EAAO,WAAU,yEAAA,CAAyE;AAAA,QAC3F,gBAAA1E;AAAA,UAAC2E;AAAA,UAAA;AAAA,YACC,KAAK0F;AAAA,YACL,MAAK;AAAA,YACL,aAAA7B;AAAA,YACA,OAAOwB;AAAA,YACP,UAAU,CAACvF,MAAM8F,EAAa9F,EAAE,OAAO,KAAK;AAAA,YAC5C,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAEZ,gBAAAzE,EAAC,OAAA,EAAI,WAAU,qIACZ,UAAA8J,EAAA,CACH;AAAA,MAAA,EAAA,CACF,EAAA,CACF;AAAA,MACA,gBAAA9J;AAAA,QAACkL;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,OAAM;AAAA,UACN,iBAAiB,CAACzG,MAAMA,EAAE,eAAA;AAAA,UAE1B,UAAA,gBAAAhE,EAAC0K,GAAA,EAAW,WAAU,YACnB,UAAA;AAAA,YAAAzC,KACC,gBAAA1I,EAAC,SAAI,WAAU,wCACb,4BAACgJ,GAAA,EAAQ,WAAU,8CAA6C,EAAA,CAClE;AAAA,YAGD,CAACN,KAAWwB,EAAQ,SAAS,KAC5B,gBAAAzJ,EAAC,OAAA,EAAI,WAAU,OACb,UAAA;AAAA,cAAA,gBAAAT,EAAC,KAAA,EAAE,WAAU,yDAAwD,UAAA,WAErE;AAAA,cACCkK,EAAQ,IAAI,CAACS,MACZ,gBAAAlK;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,SAAS,MAAMiK,EAAkBC,CAAM;AAAA,kBACvC,WAAU;AAAA,kBAET,UAAA;AAAA,oBAAAA,EAAO,QACN,gBAAA3K,EAAC,QAAA,EAAK,WAAU,gEACb,YAAO,MACV;AAAA,oBAEF,gBAAAS,EAAC,OAAA,EAAI,WAAU,0BACb,UAAA;AAAA,sBAAA,gBAAAT,EAAC,KAAA,EAAE,WAAU,wBAAwB,UAAA2K,EAAO,OAAM;AAAA,sBACjDA,EAAO,eACN,gBAAA3K,EAAC,OAAE,WAAU,0CACV,YAAO,YAAA,CACV;AAAA,oBAAA,GAEJ;AAAA,oBACC2K,EAAO,QACN,gBAAA3K,EAAC,UAAK,WAAU,iCAAiC,YAAO,KAAA,CAAK;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAlB1D2K,EAAO;AAAA,cAAA,CAqBf;AAAA,YAAA,GACH;AAAA,YAGD,CAACjC,KAAWsB,KAASE,EAAQ,WAAW,KACvC,gBAAAzJ,EAAC,OAAA,EAAI,WAAU,iDAAgD,UAAA;AAAA,cAAA;AAAA,cACjCuJ;AAAA,cAAM;AAAA,YAAA,GACpC;AAAA,YAGDc,KACC,gBAAArK,EAAC,OAAA,EAAI,WAAU,OACb,UAAA;AAAA,cAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,iDACb,UAAA;AAAA,gBAAA,gBAAAT,EAAC,KAAA,EAAE,WAAU,6CAA4C,UAAA,UAAM;AAAA,gBAC9D4J,KACC,gBAAA5J;AAAA,kBAACY;AAAA,kBAAA;AAAA,oBACC,SAAQ;AAAA,oBACR,MAAK;AAAA,oBACL,WAAU;AAAA,oBACV,SAASgJ;AAAA,oBACV,UAAA;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAED,GAEJ;AAAA,cACCF,EAAe,IAAI,CAAC0B,GAAQ9F,MAC3B,gBAAA7E;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,SAAS,MAAMmK,EAAkBQ,CAAM;AAAA,kBACvC,WAAU;AAAA,kBAEV,UAAA;AAAA,oBAAA,gBAAApL,EAACrC,IAAA,EAAQ,WAAU,gCAAA,CAAgC;AAAA,oBAClDyN;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBALI9F;AAAA,cAAA,CAOR;AAAA,YAAA,GACH;AAAA,YAGDyF,KACC,gBAAAtK,EAAC,OAAA,EAAI,WAAU,gBACb,UAAA;AAAA,cAAA,gBAAAT,EAAC,KAAA,EAAE,WAAU,yDAAwD,UAAA,YAErE;AAAA,cACC6J,EAAiB,IAAI,CAACwB,GAAU/F,MAC/B,gBAAA7E;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,SAAS,MAAMmK,EAAkBS,CAAQ;AAAA,kBACzC,WAAU;AAAA,kBAEV,UAAA;AAAA,oBAAA,gBAAArL,EAACsL,IAAA,EAAW,WAAU,gCAAA,CAAgC;AAAA,oBACrDD;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBALI/F;AAAA,cAAA,CAOR;AAAA,YAAA,EAAA,CACH;AAAA,UAAA,EAAA,CAEJ;AAAA,QAAA;AAAA,MAAA;AAAA,IACF,EAAA,CACF,EAAA,CACF;AAAA,EAEJ;AACF;AACAmE,GAAa,cAAc;","x_google_ignoreList":[0,1,2,3]}
@@ -1,22 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),Re=require("react"),y=require("./scroll-area-DzDnWIYJ.cjs"),d=require("./index-D2U2F80P.cjs"),R=require("./separator-BzcDE0Ei.cjs"),q=require("./sheet-XtjvbEMq.cjs"),A=require("./skeleton-Cb6MWerF.cjs"),Be=require("./use-mobile-DY7TJ5lx.cjs"),D=require("./createLucideIcon-Cv8nC2E9.cjs"),De=require("./chevron-right-Bxf8i4gi.cjs"),Ie=require("./ellipsis-DkM3GBF5.cjs"),h=require("./input-Cfr2WB-P.cjs"),T=require("./avatar-BT_SPwFW.cjs"),_=require("./index-DG0KV-sw.cjs"),G=require("./chevron-down-Ce0kqXiD.cjs"),Te=require("./plus-BsV82JJ5.cjs"),M=require("./popover-BgLxmm1z.cjs"),_e=require("./trending-up-BBjz_E69.cjs");function Le(r){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(a,t,n.get?n:{enumerable:!0,get:()=>r[t]})}}return a.default=r,Object.freeze(a)}const s=Le(Re);/**
2
- * @license lucide-react v0.441.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const Ee=D.createLucideIcon("Bell",[["path",{d:"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9",key:"1qo2s2"}],["path",{d:"M10.3 21a1.94 1.94 0 0 0 3.4 0",key:"qgo35s"}]]);/**
7
- * @license lucide-react v0.441.0 - ISC
8
- *
9
- * This source code is licensed under the ISC license.
10
- * See the LICENSE file in the root directory of this source tree.
11
- */const ze=D.createLucideIcon("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);/**
12
- * @license lucide-react v0.441.0 - ISC
13
- *
14
- * This source code is licensed under the ISC license.
15
- * See the LICENSE file in the root directory of this source tree.
16
- */const qe=D.createLucideIcon("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);/**
17
- * @license lucide-react v0.441.0 - ISC
18
- *
19
- * This source code is licensed under the ISC license.
20
- * See the LICENSE file in the root directory of this source tree.
21
- */const Ae=D.createLucideIcon("PanelLeft",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),Ge="sidebar:state",Pe=60*60*24*7,Oe="16rem",Ke="18rem",He="3rem",Fe="b",P=s.createContext(null);function B(){const r=s.useContext(P);if(!r)throw new Error("useSidebar must be used within a SidebarProvider.");return r}const O=s.forwardRef(({defaultOpen:r=!0,open:a,onOpenChange:t,className:n,style:o,children:u,...c},w)=>{const b=Be.useIsMobile(),[x,j]=s.useState(!1),[i,g]=s.useState(r),m=a??i,N=s.useCallback(v=>{const k=typeof v=="function"?v(m):v;t?t(k):g(k),document.cookie=`${Ge}=${k}; path=/; max-age=${Pe}`},[t,m]),S=s.useCallback(()=>b?j(v=>!v):N(v=>!v),[b,N,j]);s.useEffect(()=>{const v=k=>{k.key===Fe&&(k.metaKey||k.ctrlKey)&&(k.preventDefault(),S())};return window.addEventListener("keydown",v),()=>window.removeEventListener("keydown",v)},[S]);const f=m?"expanded":"collapsed",p=s.useMemo(()=>({state:f,open:m,setOpen:N,isMobile:b,openMobile:x,setOpenMobile:j,toggleSidebar:S}),[f,m,N,b,x,j,S]);return e.jsx(P.Provider,{value:p,children:e.jsx(R.TooltipProvider,{delayDuration:0,children:e.jsx("div",{style:{"--sidebar-width":Oe,"--sidebar-width-icon":He,...o},className:d.cn("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar",n),ref:w,...c,children:u})})})});O.displayName="SidebarProvider";const K=s.forwardRef(({side:r="left",variant:a="sidebar",collapsible:t="offcanvas",className:n,children:o,...u},c)=>{const{isMobile:w,state:b,openMobile:x,setOpenMobile:j}=B();return t==="none"?e.jsx("div",{className:d.cn("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",n),ref:c,...u,children:o}):w?e.jsx(q.Sheet,{open:x,onOpenChange:j,...u,children:e.jsx(q.SheetContent,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":Ke},side:r,children:e.jsx("div",{className:"flex h-full w-full flex-col",children:o})})}):e.jsxs("div",{ref:c,className:"group peer hidden md:block text-sidebar-foreground","data-state":b,"data-collapsible":b==="collapsed"?t:"","data-variant":a,"data-side":r,children:[e.jsx("div",{className:d.cn("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",a==="floating"||a==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_1rem)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),e.jsx("div",{className:d.cn("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex",r==="left"?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",a==="floating"||a==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_1rem_+_2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",n),...u,children:e.jsx("div",{"data-sidebar":"sidebar",className:d.cn("flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow"),children:o})})]})});K.displayName="Sidebar";const H=s.forwardRef(({className:r,onClick:a,...t},n)=>{const{toggleSidebar:o}=B();return e.jsxs(y.Button,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:d.cn("h-7 w-7",r),onClick:u=>{a==null||a(u),o()},...t,children:[e.jsx(Ae,{}),e.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});H.displayName="SidebarTrigger";const F=s.forwardRef(({className:r,...a},t)=>{const{toggleSidebar:n}=B();return e.jsx("button",{ref:t,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:n,title:"Toggle Sidebar",className:d.cn("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",r),...a})});F.displayName="SidebarRail";const V=s.forwardRef(({className:r,...a},t)=>e.jsx("main",{ref:t,className:d.cn("relative flex min-h-svh flex-1 flex-col bg-background","peer-data-[variant=inset]:min-h-[calc(100svh-1rem)] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",r),...a}));V.displayName="SidebarInset";const $=s.forwardRef(({className:r,...a},t)=>e.jsx("input",{ref:t,"data-sidebar":"input",className:d.cn("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",r),...a}));$.displayName="SidebarInput";const U=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"header",className:d.cn("flex flex-col gap-2 p-2",r),...a}));U.displayName="SidebarHeader";const W=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"footer",className:d.cn("flex flex-col gap-2 p-2",r),...a}));W.displayName="SidebarFooter";const X=s.forwardRef(({className:r,...a},t)=>e.jsx(R.Separator,{ref:t,"data-sidebar":"separator",className:d.cn("mx-2 w-auto bg-sidebar-border",r),...a}));X.displayName="SidebarSeparator";const Y=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"content",className:d.cn("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",r),...a}));Y.displayName="SidebarContent";const J=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"group",className:d.cn("relative flex w-full min-w-0 flex-col p-2",r),...a}));J.displayName="SidebarGroup";const Q=s.forwardRef(({className:r,asChild:a=!1,...t},n)=>{const o=a?y.Slot:"div";return e.jsx(o,{ref:n,"data-sidebar":"group-label",className:d.cn("duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",r),...t})});Q.displayName="SidebarGroupLabel";const Z=s.forwardRef(({className:r,asChild:a=!1,...t},n)=>{const o=a?y.Slot:"button";return e.jsx(o,{ref:n,"data-sidebar":"group-action",className:d.cn("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",r),...t})});Z.displayName="SidebarGroupAction";const ee=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"group-content",className:d.cn("w-full text-sm",r),...a}));ee.displayName="SidebarGroupContent";const ae=s.forwardRef(({className:r,...a},t)=>e.jsx("ul",{ref:t,"data-sidebar":"menu",className:d.cn("flex w-full min-w-0 flex-col gap-1",r),...a}));ae.displayName="SidebarMenu";const re=s.forwardRef(({className:r,...a},t)=>e.jsx("li",{ref:t,"data-sidebar":"menu-item",className:d.cn("group/menu-item relative",r),...a}));re.displayName="SidebarMenuItem";const Ve=y.cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0"}},defaultVariants:{variant:"default",size:"default"}}),te=s.forwardRef(({asChild:r=!1,isActive:a=!1,variant:t="default",size:n="default",tooltip:o,className:u,...c},w)=>{const b=r?y.Slot:"button",{isMobile:x,state:j}=B(),i=e.jsx(b,{ref:w,"data-sidebar":"menu-button","data-size":n,"data-active":a,className:d.cn(Ve({variant:t,size:n}),u),...c});return o?(typeof o=="string"&&(o={children:o}),e.jsxs(R.Tooltip,{children:[e.jsx(R.TooltipTrigger,{asChild:!0,children:i}),e.jsx(R.TooltipContent,{side:"right",align:"center",hidden:j!=="collapsed"||x,...o})]})):i});te.displayName="SidebarMenuButton";const se=s.forwardRef(({className:r,asChild:a=!1,showOnHover:t=!1,...n},o)=>{const u=a?y.Slot:"button";return e.jsx(u,{ref:o,"data-sidebar":"menu-action",className:d.cn("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",t&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",r),...n})});se.displayName="SidebarMenuAction";const ne=s.forwardRef(({className:r,...a},t)=>e.jsx("div",{ref:t,"data-sidebar":"menu-badge",className:d.cn("absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",r),...a}));ne.displayName="SidebarMenuBadge";const de=s.forwardRef(({className:r,showIcon:a=!1,...t},n)=>{const o=s.useMemo(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return e.jsxs("div",{ref:n,"data-sidebar":"menu-skeleton",className:d.cn("rounded-md h-8 flex gap-2 px-2 items-center",r),...t,children:[a&&e.jsx(A.Skeleton,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),e.jsx(A.Skeleton,{className:"h-4 flex-1 max-w-[--skeleton-width]","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})});de.displayName="SidebarMenuSkeleton";const oe=s.forwardRef(({className:r,...a},t)=>e.jsx("ul",{ref:t,"data-sidebar":"menu-sub",className:d.cn("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",r),...a}));oe.displayName="SidebarMenuSub";const ie=s.forwardRef(({...r},a)=>e.jsx("li",{ref:a,...r}));ie.displayName="SidebarMenuSubItem";const le=s.forwardRef(({asChild:r=!1,size:a="md",isActive:t,className:n,...o},u)=>{const c=r?y.Slot:"a";return e.jsx(c,{ref:u,"data-sidebar":"menu-sub-button","data-size":a,"data-active":t,className:d.cn("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",a==="sm"&&"text-xs",a==="md"&&"text-sm","group-data-[collapsible=icon]:hidden",n),...o})});le.displayName="SidebarMenuSubButton";const ce=s.forwardRef(({...r},a)=>e.jsx("nav",{ref:a,"aria-label":"breadcrumb",...r}));ce.displayName="Breadcrumb";const ue=s.forwardRef(({className:r,...a},t)=>e.jsx("ol",{ref:t,className:d.cn("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",r),...a}));ue.displayName="BreadcrumbList";const me=s.forwardRef(({className:r,...a},t)=>e.jsx("li",{ref:t,className:d.cn("inline-flex items-center gap-1.5",r),...a}));me.displayName="BreadcrumbItem";const pe=s.forwardRef(({asChild:r,className:a,...t},n)=>{const o=r?y.Slot:"a";return e.jsx(o,{ref:n,className:d.cn("transition-colors hover:text-foreground",a),...t})});pe.displayName="BreadcrumbLink";const be=s.forwardRef(({className:r,...a},t)=>e.jsx("span",{ref:t,role:"link","aria-disabled":"true","aria-current":"page",className:d.cn("font-normal text-foreground",r),...a}));be.displayName="BreadcrumbPage";const xe=({children:r,className:a,...t})=>e.jsx("li",{role:"presentation","aria-hidden":"true",className:d.cn("[&>svg]:size-3.5",a),...t,children:r??e.jsx(De.ChevronRight,{})});xe.displayName="BreadcrumbSeparator";const fe=({className:r,...a})=>e.jsxs("span",{role:"presentation","aria-hidden":"true",className:d.cn("flex h-9 w-9 items-center justify-center",r),...a,children:[e.jsx(Ie.Ellipsis,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"More"})]});fe.displayName="BreadcrumbEllipsis";const he=s.forwardRef(({className:r,logo:a,onMenuClick:t,showSearch:n=!0,searchPlaceholder:o="Search...",onSearch:u,user:c,userMenuItems:w=[],notificationCount:b,onNotificationClick:x,rightContent:j,...i},g)=>{const[m,N]=s.useState(""),S=f=>{f.preventDefault(),u==null||u(m)};return e.jsxs("header",{ref:g,className:d.cn("sticky top-0 z-50 flex h-16 items-center gap-4 border-b bg-background px-4 md:px-6",r),...i,children:[t&&e.jsxs(y.Button,{variant:"ghost",size:"icon",className:"shrink-0 md:hidden",onClick:t,children:[e.jsx(qe,{className:"h-5 w-5"}),e.jsx("span",{className:"sr-only",children:"Toggle navigation menu"})]}),a&&e.jsx("div",{className:"flex items-center gap-2",children:a}),n&&e.jsx("form",{onSubmit:S,className:"flex-1 md:flex-initial",children:e.jsxs("div",{className:"relative",children:[e.jsx(_.Search,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(h.Input,{type:"search",placeholder:o,className:"w-full pl-8 md:w-[200px] lg:w-[300px]",value:m,onChange:f=>N(f.target.value)})]})}),e.jsxs("div",{className:"ml-auto flex items-center gap-2",children:[j,x&&e.jsxs(y.Button,{variant:"ghost",size:"icon",className:"relative",onClick:x,children:[e.jsx(Ee,{className:"h-5 w-5"}),b!==void 0&&b>0&&e.jsx("span",{className:"absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full bg-destructive text-xs text-destructive-foreground",children:b>99?"99+":b}),e.jsx("span",{className:"sr-only",children:"Notifications"})]}),c&&e.jsxs(h.DropdownMenu,{children:[e.jsx(h.DropdownMenuTrigger,{asChild:!0,children:e.jsx(y.Button,{variant:"ghost",className:"relative h-8 w-8 rounded-full",children:e.jsxs(T.Avatar,{className:"h-8 w-8",children:[c.avatar&&e.jsx(T.AvatarImage,{src:c.avatar,alt:c.name}),e.jsx(T.AvatarFallback,{children:c.initials||c.name.charAt(0).toUpperCase()})]})})}),e.jsxs(h.DropdownMenuContent,{className:"w-56",align:"end",forceMount:!0,children:[e.jsx(h.DropdownMenuLabel,{className:"font-normal",children:e.jsxs("div",{className:"flex flex-col space-y-1",children:[e.jsx("p",{className:"text-sm font-medium leading-none",children:c.name}),e.jsx("p",{className:"text-xs leading-none text-muted-foreground",children:c.email})]})}),w.length>0&&e.jsxs(e.Fragment,{children:[e.jsx(h.DropdownMenuSeparator,{}),w.map((f,p)=>e.jsxs(h.DropdownMenuItem,{onClick:f.onClick,children:[f.icon&&e.jsx("span",{className:"mr-2",children:f.icon}),f.label]},p))]})]})]})]})]})});he.displayName="TopNav";const ge=s.forwardRef(({className:r,items:a,logo:t,rightContent:n,...o},u)=>{const[c,w]=s.useState(null),b=s.useRef(null),x=i=>{b.current&&clearTimeout(b.current),w(i)},j=()=>{b.current=setTimeout(()=>{w(null)},150)};return e.jsx("nav",{ref:u,className:d.cn("relative z-50 w-full border-b bg-background",r),...o,children:e.jsxs("div",{className:"mx-auto flex h-16 max-w-7xl items-center justify-between px-4",children:[t&&e.jsx("div",{className:"flex-shrink-0",children:t}),e.jsx("ul",{className:"hidden items-center gap-1 md:flex",children:a.map(i=>e.jsxs("li",{onMouseEnter:()=>i.columns&&x(i.label),onMouseLeave:j,children:[i.href&&!i.columns?e.jsx("a",{href:i.href,className:"flex items-center gap-1 rounded-md px-3 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground",children:i.label}):e.jsxs(y.Button,{variant:"ghost",className:d.cn("flex items-center gap-1",c===i.label&&"bg-accent text-accent-foreground"),children:[i.label,i.columns&&e.jsx(G.ChevronDown,{className:d.cn("h-4 w-4 transition-transform",c===i.label&&"rotate-180")})]}),i.columns&&c===i.label&&e.jsx("div",{className:"absolute left-0 right-0 top-full border-b bg-background shadow-lg",onMouseEnter:()=>x(i.label),onMouseLeave:j,children:e.jsx("div",{className:"mx-auto max-w-7xl p-6",children:e.jsx("div",{className:"grid gap-8",style:{gridTemplateColumns:`repeat(${i.columns.length}, minmax(0, 1fr))`},children:i.columns.map((g,m)=>e.jsxs("div",{children:[g.title&&e.jsx("h3",{className:"mb-4 text-sm font-semibold text-foreground",children:g.title}),g.sections.map((N,S)=>e.jsxs("div",{className:"mb-4",children:[N.title&&e.jsx("h4",{className:"mb-2 text-xs font-medium uppercase tracking-wider text-muted-foreground",children:N.title}),e.jsx("ul",{className:"space-y-1",children:N.links.map((f,p)=>e.jsx("li",{children:e.jsxs("a",{href:f.href,className:"group flex items-start gap-3 rounded-md p-2 transition-colors hover:bg-accent",children:[f.icon&&e.jsx("span",{className:"mt-0.5 text-muted-foreground group-hover:text-foreground",children:f.icon}),e.jsxs("div",{children:[e.jsx("span",{className:"block text-sm font-medium",children:f.label}),f.description&&e.jsx("span",{className:"block text-xs text-muted-foreground",children:f.description})]})]})},p))})]},S)),g.featured&&e.jsx("div",{className:"mt-4 rounded-lg bg-muted p-4",children:g.featured})]},m))})})})]},i.label))}),n&&e.jsx("div",{className:"flex items-center gap-2",children:n})]})})});ge.displayName="MegaMenu";function ve(r){return r.map((a,t)=>{if(a.separator)return e.jsx(h.DropdownMenuSeparator,{},`separator-${t}`);if(a.children&&a.children.length>0)return e.jsxs(h.DropdownMenuSub,{children:[e.jsxs(h.DropdownMenuSubTrigger,{disabled:a.disabled,className:"flex items-center gap-2",children:[a.icon&&e.jsx("span",{className:"h-4 w-4",children:a.icon}),a.label]}),e.jsx(h.DropdownMenuSubContent,{children:ve(a.children)})]},a.label);const n=()=>{a.onClick&&a.onClick()};return a.href?e.jsx(h.DropdownMenuItem,{disabled:a.disabled,asChild:!0,children:e.jsxs("a",{href:a.href,className:"flex items-center gap-2",children:[a.icon&&e.jsx("span",{className:"h-4 w-4",children:a.icon}),a.label]})},a.label):e.jsxs(h.DropdownMenuItem,{disabled:a.disabled,onClick:n,className:"flex items-center gap-2",children:[a.icon&&e.jsx("span",{className:"h-4 w-4",children:a.icon}),a.label]},a.label)})}const we=s.forwardRef(({trigger:r,items:a,align:t="start",side:n="bottom",className:o},u)=>e.jsxs(h.DropdownMenu,{children:[e.jsx(h.DropdownMenuTrigger,{asChild:!0,children:r}),e.jsx(h.DropdownMenuContent,{ref:u,align:t,side:n,className:d.cn("w-56",o),children:ve(a)})]}));we.displayName="MultiLevelDropdown";const je=s.forwardRef(({className:r,tabs:a,activeTab:t,onTabChange:n,variant:o="default",size:u="md",fullWidth:c=!1,...w},b)=>{var f;const[x,j]=s.useState((f=a[0])==null?void 0:f.id),i=t??x,g=p=>{n?n(p):j(p)},m={sm:"text-xs py-1 px-2",md:"text-sm py-2 px-3",lg:"text-base py-3 px-4"},N=p=>{const v="flex items-center gap-2 font-medium transition-colors";switch(o){case"pills":return d.cn(v,"rounded-full",p?"bg-primary text-primary-foreground":"text-muted-foreground hover:bg-muted hover:text-foreground");case"underline":return d.cn(v,"border-b-2 rounded-none",p?"border-primary text-primary":"border-transparent text-muted-foreground hover:border-border hover:text-foreground");case"boxed":return d.cn(v,"rounded-lg border",p?"border-primary bg-primary/10 text-primary":"border-transparent text-muted-foreground hover:bg-muted hover:text-foreground");default:return d.cn(v,"rounded-md",p?"bg-muted text-foreground":"text-muted-foreground hover:bg-muted/50 hover:text-foreground")}},S=d.cn("flex items-center gap-1",o==="underline"&&"border-b",c&&"w-full",r);return e.jsx("div",{ref:b,className:S,role:"tablist",...w,children:a.map(p=>{const v=i===p.id;return e.jsxs("button",{role:"tab","aria-selected":v,"aria-disabled":p.disabled,disabled:p.disabled,onClick:()=>g(p.id),className:d.cn(N(v),m[u],c&&"flex-1 justify-center",p.disabled&&"cursor-not-allowed opacity-50"),children:[p.icon&&e.jsx("span",{className:"h-4 w-4",children:p.icon}),e.jsx("span",{children:p.label}),p.badge!==void 0&&e.jsx(y.Badge,{variant:v?"default":"secondary",className:"ml-1 h-5 min-w-5 rounded-full px-1.5 text-xs",children:p.badge})]},p.id)})})});je.displayName="TabNavigation";const Ne=s.forwardRef(({groups:r,label:a="Create",variant:t="default",size:n="default",className:o,align:u="end"},c)=>e.jsxs(h.DropdownMenu,{children:[e.jsx(h.DropdownMenuTrigger,{asChild:!0,children:e.jsxs(y.Button,{ref:c,variant:t,size:n,className:d.cn("gap-1",o),children:[e.jsx(Te.Plus,{className:"h-4 w-4"}),n!=="icon"&&e.jsxs(e.Fragment,{children:[e.jsx("span",{children:a}),e.jsx(G.ChevronDown,{className:"h-3 w-3 opacity-50"})]})]})}),e.jsx(h.DropdownMenuContent,{align:u,className:"w-64",children:r.map((w,b)=>e.jsxs(s.Fragment,{children:[b>0&&e.jsx(h.DropdownMenuSeparator,{}),w.label&&e.jsx(h.DropdownMenuLabel,{children:w.label}),e.jsx(h.DropdownMenuGroup,{children:w.items.map(x=>e.jsxs(h.DropdownMenuItem,{onClick:x.onClick,className:"flex items-start gap-3 py-2",children:[x.icon&&e.jsx("span",{className:"mt-0.5 flex h-5 w-5 items-center justify-center text-muted-foreground",children:x.icon}),e.jsxs("div",{className:"flex flex-1 flex-col gap-0.5",children:[e.jsx("span",{className:"font-medium",children:x.label}),x.description&&e.jsx("span",{className:"text-xs text-muted-foreground",children:x.description})]}),x.shortcut&&e.jsx("kbd",{className:"pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground opacity-100",children:x.shortcut})]},x.id))})]},b))})]}));Ne.displayName="QuickCreateMenu";const ye=s.forwardRef(({open:r,onOpenChange:a,groups:t,placeholder:n="Type a command or search...",emptyMessage:o="No results found.",loading:u=!1,onSearch:c},w)=>{const[b,x]=s.useState("");s.useEffect(()=>{const i=g=>{g.key==="k"&&(g.metaKey||g.ctrlKey)&&(g.preventDefault(),a(!r))};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[r,a]);const j=i=>{x(i),c==null||c(i)};return e.jsx(M.CommandDialog,{open:r,onOpenChange:a,children:e.jsxs(M.Command,{ref:w,className:"rounded-lg border shadow-md",children:[e.jsxs("div",{className:"flex items-center border-b px-3",children:[u?e.jsx(M.LoaderCircle,{className:"mr-2 h-4 w-4 shrink-0 animate-spin opacity-50"}):e.jsx(_.Search,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),e.jsx(M.CommandInput,{placeholder:n,value:b,onValueChange:j,className:"flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50"})]}),e.jsxs(M.CommandList,{children:[e.jsx(M.CommandEmpty,{children:o}),t.map((i,g)=>e.jsxs(s.Fragment,{children:[g>0&&e.jsx(M.CommandSeparator,{}),e.jsx(M.CommandGroup,{heading:i.heading,children:i.actions.map(m=>e.jsxs(M.CommandItem,{value:m.id,keywords:m.keywords,onSelect:()=>{m.onSelect(),a(!1)},disabled:m.disabled,className:"flex items-center gap-2",children:[m.icon&&e.jsx("span",{className:"flex h-5 w-5 items-center justify-center",children:m.icon}),e.jsx("span",{children:m.label}),m.shortcut&&e.jsx(M.CommandShortcut,{children:m.shortcut})]},m.id))})]},i.heading))]})]})})});ye.displayName="CommandPalette";const Se=s.forwardRef(({className:r,onSearch:a,recentSearches:t=[],onRecentSearchClick:n,onClearRecent:o,trendingSearches:u=[],placeholder:c="Search...",shortcut:w="⌘K",debounceMs:b=300,...x},j)=>{const[i,g]=s.useState(!1),[m,N]=s.useState(""),[S,f]=s.useState([]),[p,v]=s.useState(!1),k=s.useRef(null),I=s.useRef(null);s.useEffect(()=>{const l=C=>{C.key==="k"&&(C.metaKey||C.ctrlKey)&&(C.preventDefault(),g(!0),setTimeout(()=>{var z;return(z=k.current)==null?void 0:z.focus()},0))};return document.addEventListener("keydown",l),()=>document.removeEventListener("keydown",l)},[]);const L=s.useCallback(async l=>{if(N(l),I.current&&clearTimeout(I.current),!l.trim()){f([]);return}I.current=setTimeout(async()=>{v(!0);try{const C=await a(l);f(C)}catch{f([])}finally{v(!1)}},b)},[a,b]),Me=l=>{l.onClick&&l.onClick(),g(!1),N(""),f([])},E=l=>{n==null||n(l),N(l),L(l)},ke=!m&&t.length>0,Ce=!m&&u.length>0;return e.jsx("div",{ref:j,className:d.cn("relative",r),...x,children:e.jsxs(M.Popover,{open:i,onOpenChange:g,children:[e.jsx(M.PopoverTrigger,{asChild:!0,children:e.jsxs("div",{className:"relative cursor-pointer",onClick:()=>g(!0),children:[e.jsx(_.Search,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),e.jsx(h.Input,{ref:k,type:"text",placeholder:c,value:m,onChange:l=>L(l.target.value),className:"w-full pl-10 pr-16"}),e.jsx("kbd",{className:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 rounded border bg-muted px-1.5 py-0.5 text-xs text-muted-foreground",children:w})]})}),e.jsx(M.PopoverContent,{className:"w-[var(--radix-popover-trigger-width)] p-0",align:"start",onOpenAutoFocus:l=>l.preventDefault(),children:e.jsxs(y.ScrollArea,{className:"max-h-80",children:[p&&e.jsx("div",{className:"flex items-center justify-center p-4",children:e.jsx(M.LoaderCircle,{className:"h-5 w-5 animate-spin text-muted-foreground"})}),!p&&S.length>0&&e.jsxs("div",{className:"p-2",children:[e.jsx("p",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Results"}),S.map(l=>e.jsxs("button",{onClick:()=>Me(l),className:"flex w-full items-center gap-3 rounded-md p-2 text-left transition-colors hover:bg-accent",children:[l.icon&&e.jsx("span",{className:"flex h-8 w-8 items-center justify-center rounded-md bg-muted",children:l.icon}),e.jsxs("div",{className:"flex-1 overflow-hidden",children:[e.jsx("p",{className:"truncate font-medium",children:l.title}),l.description&&e.jsx("p",{className:"truncate text-xs text-muted-foreground",children:l.description})]}),l.type&&e.jsx("span",{className:"text-xs text-muted-foreground",children:l.type})]},l.id))]}),!p&&m&&S.length===0&&e.jsxs("div",{className:"p-4 text-center text-sm text-muted-foreground",children:['No results found for "',m,'"']}),ke&&e.jsxs("div",{className:"p-2",children:[e.jsxs("div",{className:"flex items-center justify-between px-2 py-1.5",children:[e.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Recent"}),o&&e.jsx(y.Button,{variant:"ghost",size:"sm",className:"h-auto p-0 text-xs",onClick:o,children:"Clear"})]}),t.map((l,C)=>e.jsxs("button",{onClick:()=>E(l),className:"flex w-full items-center gap-2 rounded-md p-2 text-left text-sm transition-colors hover:bg-accent",children:[e.jsx(ze,{className:"h-4 w-4 text-muted-foreground"}),l]},C))]}),Ce&&e.jsxs("div",{className:"border-t p-2",children:[e.jsx("p",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Trending"}),u.map((l,C)=>e.jsxs("button",{onClick:()=>E(l),className:"flex w-full items-center gap-2 rounded-md p-2 text-left text-sm transition-colors hover:bg-accent",children:[e.jsx(_e.TrendingUp,{className:"h-4 w-4 text-muted-foreground"}),l]},C))]})]})})]})})});Se.displayName="GlobalSearch";exports.Breadcrumb=ce;exports.BreadcrumbEllipsis=fe;exports.BreadcrumbItem=me;exports.BreadcrumbLink=pe;exports.BreadcrumbList=ue;exports.BreadcrumbPage=be;exports.BreadcrumbSeparator=xe;exports.CommandPalette=ye;exports.GlobalSearch=Se;exports.MegaMenu=ge;exports.MultiLevelDropdown=we;exports.QuickCreateMenu=Ne;exports.Sidebar=K;exports.SidebarContent=Y;exports.SidebarFooter=W;exports.SidebarGroup=J;exports.SidebarGroupAction=Z;exports.SidebarGroupContent=ee;exports.SidebarGroupLabel=Q;exports.SidebarHeader=U;exports.SidebarInput=$;exports.SidebarInset=V;exports.SidebarMenu=ae;exports.SidebarMenuAction=se;exports.SidebarMenuBadge=ne;exports.SidebarMenuButton=te;exports.SidebarMenuItem=re;exports.SidebarMenuSkeleton=de;exports.SidebarMenuSub=oe;exports.SidebarMenuSubButton=le;exports.SidebarMenuSubItem=ie;exports.SidebarProvider=O;exports.SidebarRail=F;exports.SidebarSeparator=X;exports.SidebarTrigger=H;exports.TabNavigation=je;exports.TopNav=he;exports.useSidebar=B;
22
- //# sourceMappingURL=global-search-Bd74_wPV.cjs.map