cortex-react-components 3.3.0 → 4.0.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 (395) hide show
  1. package/dist/{chunk-Z54HOXSV.mjs → chunk-2254O4YT.mjs} +2 -2
  2. package/dist/{chunk-V6YEUAIH.mjs → chunk-3BYBIUZN.mjs} +3 -3
  3. package/dist/{chunk-XFJPL6FS.mjs → chunk-3IXZB3VP.mjs} +1 -1
  4. package/dist/{chunk-WJTVZ6CB.mjs → chunk-3NXXPFU2.mjs} +1 -1
  5. package/dist/{chunk-CONYNX7Y.mjs → chunk-4HKHDXKK.mjs} +3 -3
  6. package/dist/{chunk-DSVXGGGV.mjs → chunk-54AIO5ED.mjs} +2 -2
  7. package/dist/{chunk-7ZCW4XMR.mjs → chunk-64IBDKCH.mjs} +1 -1
  8. package/dist/{chunk-EJJITIA3.mjs → chunk-65ZDGR46.mjs} +5 -5
  9. package/dist/{chunk-I4MTJN23.mjs → chunk-6A7T3O6T.mjs} +6 -5
  10. package/dist/{chunk-HUZCVQP7.mjs → chunk-7IMTNL53.mjs} +1 -1
  11. package/dist/{chunk-IJ3E6ZXF.mjs → chunk-B2LFNC3C.mjs} +1 -1
  12. package/dist/{chunk-IDMTHUC4.mjs → chunk-B36NGEMF.mjs} +3 -3
  13. package/dist/{chunk-FABRRO2B.mjs → chunk-BAJ7NCAT.mjs} +1 -1
  14. package/dist/{chunk-4JHX6BW6.mjs → chunk-BEGQGEDH.mjs} +1 -1
  15. package/dist/{chunk-36W3BORX.mjs → chunk-BWS5MUG7.mjs} +1 -1
  16. package/dist/{chunk-5NGZXIP7.mjs → chunk-CI625DSA.mjs} +1 -1
  17. package/dist/{chunk-WX5QYPGU.mjs → chunk-CUUAA2TB.mjs} +1 -1
  18. package/dist/{chunk-ETG5N2OG.mjs → chunk-DOIUUDF6.mjs} +1 -1
  19. package/dist/{chunk-SSE3MQDP.mjs → chunk-DST7L2PX.mjs} +3 -3
  20. package/dist/{chunk-UETTBM3J.mjs → chunk-F6NJD6IG.mjs} +1 -1
  21. package/dist/{chunk-L4SNPNYU.mjs → chunk-FBCL4K4A.mjs} +1 -1
  22. package/dist/{chunk-IVOPNDSN.mjs → chunk-G5N5MCLS.mjs} +5 -5
  23. package/dist/{chunk-NQMJXY3N.mjs → chunk-GC7DB2Y5.mjs} +1 -1
  24. package/dist/{chunk-5CQITTLV.mjs → chunk-GMHZ7GGN.mjs} +1 -1
  25. package/dist/{chunk-C3CKYJ2F.mjs → chunk-GZRODHXY.mjs} +1 -1
  26. package/dist/{chunk-SM57JU3T.mjs → chunk-HCVN3YVW.mjs} +5 -5
  27. package/dist/{chunk-SSDRUPMS.mjs → chunk-HWSDSULO.mjs} +183 -36
  28. package/dist/{chunk-QPO45D6F.mjs → chunk-I2MVZVXE.mjs} +1 -1
  29. package/dist/chunk-IC4N2KYF.mjs +401 -0
  30. package/dist/{chunk-GGOGMLBY.mjs → chunk-JKVS2VFG.mjs} +4 -4
  31. package/dist/{chunk-OPJMXB4K.mjs → chunk-K4ZS4W4S.mjs} +2 -2
  32. package/dist/{chunk-Q6CUUDUR.mjs → chunk-LVLYUHSA.mjs} +1 -1
  33. package/dist/{chunk-UDCOG2XL.mjs → chunk-LY4RR7AL.mjs} +1 -1
  34. package/dist/{chunk-QMFGV3M5.mjs → chunk-LZUYY2G6.mjs} +2 -2
  35. package/dist/{chunk-XGHUG2WQ.mjs → chunk-MDG2I4PB.mjs} +1 -1
  36. package/dist/{chunk-YD7Q7IZX.mjs → chunk-MNJ5CMJM.mjs} +1 -1
  37. package/dist/{chunk-YY4VLYYH.mjs → chunk-MOMYX6OH.mjs} +26 -11
  38. package/dist/{chunk-EDYFH3EJ.mjs → chunk-NM7RODDO.mjs} +3 -3
  39. package/dist/{chunk-KOK3VCJZ.mjs → chunk-O5RKEF5N.mjs} +2 -2
  40. package/dist/chunk-PBIUFMQ7.mjs +595 -0
  41. package/dist/{chunk-GTHNG3Q7.mjs → chunk-PPESICX2.mjs} +1 -1
  42. package/dist/{chunk-F7JPOQIC.mjs → chunk-Q54XDKD6.mjs} +1 -1
  43. package/dist/{chunk-LTDXFLCW.mjs → chunk-QM3XSGNV.mjs} +13 -5
  44. package/dist/{chunk-LGGOEYDB.mjs → chunk-QU3TSSIT.mjs} +9 -9
  45. package/dist/{chunk-OCVHSV6Z.mjs → chunk-R4WRE5VN.mjs} +2 -2
  46. package/dist/{chunk-HMVIQFLN.mjs → chunk-S2JSIAMP.mjs} +1 -1
  47. package/dist/{chunk-4JSM5VYZ.mjs → chunk-SAVDOTMQ.mjs} +1 -1
  48. package/dist/{chunk-PE44IHZN.mjs → chunk-SBD4TWK2.mjs} +1 -1
  49. package/dist/{chunk-B7WVGDB6.mjs → chunk-SZJ6XME5.mjs} +1 -1
  50. package/dist/{chunk-URC56DLC.mjs → chunk-T2VDQBFT.mjs} +1 -1
  51. package/dist/{chunk-2D3EN2AX.mjs → chunk-T36HNGWV.mjs} +2 -2
  52. package/dist/{chunk-3BYULUMU.mjs → chunk-T62Q55Y5.mjs} +1 -1
  53. package/dist/{chunk-IBQBZNEA.mjs → chunk-T756T7P5.mjs} +1 -1
  54. package/dist/{chunk-HNBHBFLY.mjs → chunk-TZBPEFJY.mjs} +1 -1
  55. package/dist/{chunk-HQW5M4ND.mjs → chunk-U5XRK325.mjs} +1 -1
  56. package/dist/{chunk-4P5Q6UXF.mjs → chunk-UBFOKMYD.mjs} +5 -5
  57. package/dist/{chunk-6NRBLKM4.mjs → chunk-UM7KTWAX.mjs} +2 -2
  58. package/dist/{chunk-E5LGE3IW.mjs → chunk-W73LGNTH.mjs} +1 -1
  59. package/dist/{chunk-QETXXFRW.mjs → chunk-WNGLLRYA.mjs} +1 -1
  60. package/dist/{chunk-NVSA5BFC.mjs → chunk-XP74JZNW.mjs} +3 -3
  61. package/dist/{chunk-OXP3LJ53.mjs → chunk-XT7I7SJB.mjs} +4 -4
  62. package/dist/{chunk-JFXWP3RQ.mjs → chunk-Y7B7YO6Q.mjs} +1 -1
  63. package/dist/{chunk-XZFMQXYJ.mjs → chunk-ZD5DKC5T.mjs} +1 -1
  64. package/dist/{chunk-EC5I4CIO.mjs → chunk-ZJ5SRNYD.mjs} +1 -1
  65. package/dist/{chunk-LM4J7254.mjs → chunk-ZSGXRIK7.mjs} +7 -7
  66. package/dist/{chunk-MZVEK6A5.mjs → chunk-ZZQWZWMG.mjs} +19 -19
  67. package/dist/components/AdvancedComponents/AppSidebar.d.ts +1 -1
  68. package/dist/components/AdvancedComponents/AppSidebar.js +481 -302
  69. package/dist/components/AdvancedComponents/AppSidebar.mjs +4 -4
  70. package/dist/components/AdvancedComponents/index.js +481 -302
  71. package/dist/components/AdvancedComponents/index.mjs +4 -4
  72. package/dist/components/Blocks/Banner.mjs +6 -6
  73. package/dist/components/Blocks/CallToAction.mjs +6 -6
  74. package/dist/components/Blocks/CollapsibleArea.mjs +7 -7
  75. package/dist/components/Blocks/Content.mjs +7 -7
  76. package/dist/components/Blocks/FeaturesBlock.mjs +6 -6
  77. package/dist/components/Blocks/RelatedPosts.mjs +7 -7
  78. package/dist/components/Blocks/RenderBlocks.mjs +9 -9
  79. package/dist/components/Blocks/ReusableContentBlock.mjs +9 -9
  80. package/dist/components/Blocks/index.mjs +15 -15
  81. package/dist/components/CRM/CogeBoard.js +1 -1
  82. package/dist/components/CRM/CogeBoard.mjs +3 -3
  83. package/dist/components/CRM/DealDetails.js +1 -1
  84. package/dist/components/CRM/DealDetails.mjs +2 -2
  85. package/dist/components/CRM/KanbanBoard.js +1 -1
  86. package/dist/components/CRM/KanbanBoard.mjs +3 -3
  87. package/dist/components/CRM/NewDealForm.js +1 -1
  88. package/dist/components/CRM/NewDealForm.mjs +2 -2
  89. package/dist/components/CRM/index.js +1 -1
  90. package/dist/components/CRM/index.mjs +8 -8
  91. package/dist/components/Cards/ContentCard.mjs +6 -6
  92. package/dist/components/Cards/FeatureCard.mjs +6 -6
  93. package/dist/components/Cards/Image.js +1 -1
  94. package/dist/components/Cards/Image.mjs +2 -2
  95. package/dist/components/Cards/ImageProxy.js +1 -1
  96. package/dist/components/Cards/ImageProxy.mjs +2 -2
  97. package/dist/components/Cards/index.js +1 -1
  98. package/dist/components/Cards/index.mjs +12 -12
  99. package/dist/components/Chat/ChatInterface.mjs +11 -11
  100. package/dist/components/Chat/CopilotInterface.d.ts +1 -1
  101. package/dist/components/Chat/CopilotInterface.js +528 -331
  102. package/dist/components/Chat/CopilotInterface.mjs +17 -17
  103. package/dist/components/Chat/PartTypes/MessageHandler.mjs +9 -9
  104. package/dist/components/Chat/PartTypes/index.mjs +11 -11
  105. package/dist/components/Chat/chat-session-sidebar.d.ts +1 -1
  106. package/dist/components/Chat/demo-long-messages.js +528 -331
  107. package/dist/components/Chat/demo-long-messages.mjs +17 -17
  108. package/dist/components/Chat/demo-tests.js +528 -331
  109. package/dist/components/Chat/demo-tests.mjs +17 -17
  110. package/dist/components/Chat/demo.js +528 -331
  111. package/dist/components/Chat/demo.mjs +17 -17
  112. package/dist/components/Chat/example-usage.js +528 -331
  113. package/dist/components/Chat/example-usage.mjs +18 -18
  114. package/dist/components/Chat/example-with-vercel-ai.js +528 -331
  115. package/dist/components/Chat/example-with-vercel-ai.mjs +17 -17
  116. package/dist/components/Chat/index.js +528 -331
  117. package/dist/components/Chat/index.mjs +25 -25
  118. package/dist/components/DigitalColleagues/Views/TeamsIndexView.d.ts +1 -9
  119. package/dist/components/DigitalColleagues/Views/TeamsIndexView.js +23 -28
  120. package/dist/components/DigitalColleagues/Views/TeamsIndexView.mjs +5 -7
  121. package/dist/components/DigitalColleagues/index.d.ts +0 -18
  122. package/dist/components/DigitalColleagues/index.js +0 -16754
  123. package/dist/components/DigitalColleagues/test-data.d.ts +1 -112
  124. package/dist/components/DigitalColleagues/test-data.js +482 -308
  125. package/dist/components/DigitalColleagues/test-data.mjs +1 -5
  126. package/dist/components/Foundry/Knowledge/add-knowledge-modal.js +1 -1
  127. package/dist/components/Foundry/Knowledge/add-knowledge-modal.mjs +3 -3
  128. package/dist/components/Foundry/Knowledge/add-team-context.js +1 -1
  129. package/dist/components/Foundry/Knowledge/add-team-context.mjs +2 -2
  130. package/dist/components/Foundry/Knowledge/manage-team-context.js +1 -1
  131. package/dist/components/Foundry/Knowledge/manage-team-context.mjs +2 -2
  132. package/dist/components/Foundry/MainPage.mjs +3 -3
  133. package/dist/components/Foundry/ManagementSidebar.d.ts +2 -2
  134. package/dist/components/Foundry/ManagementSidebar.js +12 -4
  135. package/dist/components/Foundry/ManagementSidebar.mjs +1 -1
  136. package/dist/components/Foundry/Pages/dashboardpage.js +1424 -2040
  137. package/dist/components/Foundry/Pages/dashboardpage.mjs +25 -26
  138. package/dist/components/Foundry/RichText/index.js +1 -1
  139. package/dist/components/Foundry/RichText/index.mjs +5 -5
  140. package/dist/components/Foundry/RichText/plugins/image-plugin.js +1 -1
  141. package/dist/components/Foundry/RichText/plugins/image-plugin.mjs +2 -2
  142. package/dist/components/Foundry/RichText/plugins/toolbar-plugin.js +1 -1
  143. package/dist/components/Foundry/RichText/plugins/toolbar-plugin.mjs +4 -4
  144. package/dist/components/Foundry/Views/ColleaguesView.js +5 -4
  145. package/dist/components/Foundry/Views/ColleaguesView.mjs +3 -3
  146. package/dist/components/Foundry/Views/KnowledgeView.js +1 -1
  147. package/dist/components/Foundry/Views/KnowledgeView.mjs +12 -12
  148. package/dist/components/Foundry/Views/TeamsIndexView.js +6 -5
  149. package/dist/components/Foundry/Views/TeamsIndexView.mjs +5 -5
  150. package/dist/components/Foundry/Views/index.js +1352 -787
  151. package/dist/components/Foundry/Views/index.mjs +50 -49
  152. package/dist/components/{.archive → Foundry}/app-card.d.ts +1 -1
  153. package/dist/components/{DigitalColleagues/colleague-type-selection.js → Foundry/app-card.js} +89 -117
  154. package/dist/components/{DigitalColleagues/colleague-card.mjs → Foundry/app-card.mjs} +4 -5
  155. package/dist/components/Foundry/document-edit.js +1 -1
  156. package/dist/components/Foundry/document-edit.mjs +6 -6
  157. package/dist/components/Foundry/document-preview-examples.js +1 -1
  158. package/dist/components/Foundry/document-preview-examples.mjs +7 -7
  159. package/dist/components/Foundry/document-preview.js +1 -1
  160. package/dist/components/Foundry/document-preview.mjs +7 -7
  161. package/dist/components/Foundry/file-edit.js +1 -1
  162. package/dist/components/Foundry/file-edit.mjs +7 -7
  163. package/dist/components/Foundry/foundary-layout.js +481 -302
  164. package/dist/components/Foundry/foundary-layout.mjs +5 -5
  165. package/dist/components/Foundry/index.js +2748 -2868
  166. package/dist/components/Foundry/index.mjs +78 -79
  167. package/dist/components/Foundry/knowledge-browser.js +1 -1
  168. package/dist/components/Foundry/knowledge-browser.mjs +8 -8
  169. package/dist/components/Foundry/types.d.ts +26 -0
  170. package/dist/components/HeaderFooter/SectionHeading.mjs +7 -7
  171. package/dist/components/HeaderFooter/index.mjs +5 -5
  172. package/dist/components/Heros/DashboardHero/DashboardHero.js +5 -4
  173. package/dist/components/Heros/DashboardHero/DashboardHero.mjs +2 -2
  174. package/dist/components/Heros/DashboardHero/index.js +5 -4
  175. package/dist/components/Heros/DashboardHero/index.mjs +2 -2
  176. package/dist/components/Heros/HighImpact/index.mjs +7 -7
  177. package/dist/components/Heros/LowImpact/index.mjs +7 -7
  178. package/dist/components/Heros/MediumImpact/index.mjs +7 -7
  179. package/dist/components/Heros/PostHero/index.mjs +2 -2
  180. package/dist/components/Heros/RenderHero.mjs +10 -10
  181. package/dist/components/Heros/index.js +5 -4
  182. package/dist/components/Heros/index.mjs +15 -15
  183. package/dist/components/Layouts/OutputHeaderFooter.mjs +7 -7
  184. package/dist/components/Layouts/Print.mjs +11 -11
  185. package/dist/components/Layouts/SlideShow.mjs +13 -13
  186. package/dist/components/Layouts/index.mjs +17 -17
  187. package/dist/components/Payload/RichText/index.mjs +6 -6
  188. package/dist/components/Payload/RichText/serialize.mjs +6 -6
  189. package/dist/components/Payload/index.mjs +6 -6
  190. package/dist/components/Projects/AddEpicModal.js +1 -1
  191. package/dist/components/Projects/AddEpicModal.mjs +2 -2
  192. package/dist/components/Projects/AddFileModal.js +1 -1
  193. package/dist/components/Projects/AddFileModal.mjs +2 -2
  194. package/dist/components/Projects/AddSprintModal.js +1 -1
  195. package/dist/components/Projects/AddSprintModal.mjs +2 -2
  196. package/dist/components/Projects/AddTaskModal.js +1 -1
  197. package/dist/components/Projects/AddTaskModal.mjs +2 -2
  198. package/dist/components/Projects/EpicFilter.d.ts +6 -2
  199. package/dist/components/Projects/EpicFilter.js +6 -6
  200. package/dist/components/Projects/EpicFilter.mjs +6 -6
  201. package/dist/components/Projects/EpicsView.d.ts +12 -2
  202. package/dist/components/Projects/EpicsView.js +3980 -736
  203. package/dist/components/Projects/EpicsView.mjs +48 -6
  204. package/dist/components/Projects/FileView.js +6 -5
  205. package/dist/components/Projects/FileView.mjs +12 -12
  206. package/dist/components/Projects/GanttView.d.ts +13 -0
  207. package/dist/components/{DigitalColleagues/colleague-card.js → Projects/GanttView.js} +559 -260
  208. package/dist/components/{DigitalColleagues/digital-colleague-clone.mjs → Projects/GanttView.mjs} +7 -6
  209. package/dist/components/Projects/KanbanBoardView.js +6 -5
  210. package/dist/components/Projects/KanbanBoardView.mjs +17 -17
  211. package/dist/components/Projects/KanbanColumn.d.ts +1 -1
  212. package/dist/components/Projects/PlanningView.js +6 -5
  213. package/dist/components/Projects/PlanningView.mjs +5 -5
  214. package/dist/components/Projects/ProjectPage.d.ts +2 -2
  215. package/dist/components/Projects/ProjectPage.js +1727 -966
  216. package/dist/components/Projects/ProjectPage.mjs +30 -29
  217. package/dist/components/Projects/ProjectView.d.ts +1 -1
  218. package/dist/components/Projects/ProjectView.js +1209 -644
  219. package/dist/components/Projects/ProjectView.mjs +25 -24
  220. package/dist/components/Projects/ProjectsIndexView.js +6 -5
  221. package/dist/components/Projects/ProjectsIndexView.mjs +4 -4
  222. package/dist/components/Projects/SprintBoardView.d.ts +3 -0
  223. package/dist/components/Projects/SprintBoardView.js +252 -110
  224. package/dist/components/Projects/SprintBoardView.mjs +18 -18
  225. package/dist/components/Projects/TaskDetailsModal.js +1 -1
  226. package/dist/components/Projects/TaskDetailsModal.mjs +11 -11
  227. package/dist/components/Projects/TasksView.js +6 -5
  228. package/dist/components/Projects/TasksView.mjs +4 -4
  229. package/dist/components/Projects/business-unit-switcher.d.ts +1 -1
  230. package/dist/components/Projects/business-units.d.ts +1 -1
  231. package/dist/components/Projects/file-list.js +1 -1
  232. package/dist/components/Projects/file-list.mjs +8 -8
  233. package/dist/components/Projects/index.js +538 -231
  234. package/dist/components/Projects/index.mjs +23 -23
  235. package/dist/components/Projects/project-card.d.ts +1 -1
  236. package/dist/components/Projects/project-form.d.ts +1 -1
  237. package/dist/components/Projects/team-card.d.ts +1 -1
  238. package/dist/components/Projects/team-switcher-bar.d.ts +1 -1
  239. package/dist/components/Projects/test-data.d.ts +448 -29
  240. package/dist/components/dc-temp/dashboard-integration-example.js +498 -326
  241. package/dist/components/dc-temp/dashboard-integration-example.mjs +7 -7
  242. package/dist/components/dc-temp/index.d.ts +3 -3
  243. package/dist/components/dc-temp/index.js +3746 -2980
  244. package/dist/components/dc-temp/index.mjs +24 -22
  245. package/dist/components/dc-temp/mock-data.d.ts +1 -1
  246. package/dist/components/index.js +4129 -4210
  247. package/dist/components/index.mjs +174 -176
  248. package/dist/components/ui/command.js +1 -1
  249. package/dist/components/ui/command.mjs +2 -2
  250. package/dist/components/ui/dialog.js +1 -1
  251. package/dist/components/ui/dialog.mjs +1 -1
  252. package/dist/components/ui/index.js +1 -1
  253. package/dist/components/ui/index.mjs +2 -2
  254. package/dist/decorators/Intranet.css +54 -14
  255. package/dist/decorators/Intranet.mjs +103 -105
  256. package/dist/globals.css +54 -14
  257. package/dist/hooks/use-local-storage.d.ts +2 -1
  258. package/dist/hooks/use-local-storage.js +5 -4
  259. package/dist/hooks/use-local-storage.mjs +1 -1
  260. package/dist/index.js +4125 -4206
  261. package/dist/index.mjs +185 -187
  262. package/dist/metafile-cjs.json +1 -1
  263. package/dist/metafile-esm.json +1 -1
  264. package/dist/pages/Blog.mjs +11 -11
  265. package/dist/pages/Documentation.mjs +3 -3
  266. package/dist/pages/IndexPage.mjs +14 -14
  267. package/dist/pages/Intranet.mjs +1 -1
  268. package/dist/pages/LandingPage.mjs +113 -115
  269. package/dist/pages/Page.mjs +15 -15
  270. package/dist/pages/Publish.mjs +104 -106
  271. package/dist/pages/Website.mjs +18 -18
  272. package/dist/sections/AboutSection.mjs +8 -8
  273. package/dist/sections/BlogDetail.mjs +7 -7
  274. package/dist/sections/BlogList.mjs +8 -8
  275. package/dist/sections/ContactSection.mjs +8 -8
  276. package/dist/sections/PageSections.mjs +113 -115
  277. package/dist/sections/PricingSection.mjs +8 -8
  278. package/dist/sections/ServiceDetail.mjs +7 -7
  279. package/dist/sections/ServiceDetailSection.mjs +7 -7
  280. package/dist/sections/ServiceSection.mjs +104 -106
  281. package/dist/sections/index.mjs +113 -115
  282. package/package.json +5 -2
  283. package/dist/chunk-5MMSWFVA.mjs +0 -364
  284. package/dist/chunk-7TDXZ32Q.mjs +0 -197
  285. package/dist/chunk-APXXTGT4.mjs +0 -424
  286. package/dist/chunk-BZENEU5C.mjs +0 -160
  287. package/dist/chunk-C444TUVA.mjs +0 -306
  288. package/dist/chunk-CNQTT5P3.mjs +0 -276
  289. package/dist/chunk-CQKCEXF2.mjs +0 -82
  290. package/dist/chunk-EKQB7NJA.mjs +0 -194
  291. package/dist/chunk-G4WW3ZTX.mjs +0 -1063
  292. package/dist/chunk-IWG2URAU.mjs +0 -74
  293. package/dist/chunk-IWSATDRG.mjs +0 -118
  294. package/dist/chunk-JRNDRMIC.mjs +0 -73
  295. package/dist/chunk-K2C4VMGF.mjs +0 -121
  296. package/dist/chunk-LQQ6C7FN.mjs +0 -365
  297. package/dist/chunk-M6ELOAGS.mjs +0 -136
  298. package/dist/chunk-NAUBZM7P.mjs +0 -183
  299. package/dist/chunk-NHDPHK6D.mjs +0 -72
  300. package/dist/chunk-R5MJWISX.mjs +0 -194
  301. package/dist/chunk-RKYMAFRJ.mjs +0 -92
  302. package/dist/chunk-SZBUXY6L.mjs +0 -121
  303. package/dist/chunk-VY6L37RQ.mjs +0 -103
  304. package/dist/chunk-X6UI73UN.mjs +0 -262
  305. package/dist/components/DigitalColleagues/AppSidebarLeft.d.ts +0 -47
  306. package/dist/components/DigitalColleagues/AppSidebarLeft.js +0 -3407
  307. package/dist/components/DigitalColleagues/AppSidebarLeft.mjs +0 -23
  308. package/dist/components/DigitalColleagues/DashboardHeader.d.ts +0 -8
  309. package/dist/components/DigitalColleagues/DashboardHeader.js +0 -2756
  310. package/dist/components/DigitalColleagues/DashboardHeader.mjs +0 -15
  311. package/dist/components/DigitalColleagues/DigitalColleageusLayout.css +0 -917
  312. package/dist/components/DigitalColleagues/DigitalColleageusLayout.d.ts +0 -28
  313. package/dist/components/DigitalColleagues/DigitalColleageusLayout.js +0 -4417
  314. package/dist/components/DigitalColleagues/DigitalColleageusLayout.mjs +0 -31
  315. package/dist/components/DigitalColleagues/MainPage.css +0 -917
  316. package/dist/components/DigitalColleagues/MainPage.d.ts +0 -3
  317. package/dist/components/DigitalColleagues/MainPage.js +0 -4080
  318. package/dist/components/DigitalColleagues/MainPage.mjs +0 -46
  319. package/dist/components/DigitalColleagues/ManagementSidebar.d.ts +0 -8
  320. package/dist/components/DigitalColleagues/ManagementSidebar.js +0 -99
  321. package/dist/components/DigitalColleagues/ManagementSidebar.mjs +0 -9
  322. package/dist/components/DigitalColleagues/Pages/dashboardpage.css +0 -917
  323. package/dist/components/DigitalColleagues/Pages/dashboardpage.d.ts +0 -18
  324. package/dist/components/DigitalColleagues/Pages/dashboardpage.js +0 -8514
  325. package/dist/components/DigitalColleagues/Pages/dashboardpage.mjs +0 -78
  326. package/dist/components/DigitalColleagues/README-document-edit.js +0 -2
  327. package/dist/components/DigitalColleagues/README-document-edit.mjs +0 -7
  328. package/dist/components/DigitalColleagues/README-document-preview.js +0 -2
  329. package/dist/components/DigitalColleagues/README-document-preview.mjs +0 -7
  330. package/dist/components/DigitalColleagues/SearchableSelect.css +0 -917
  331. package/dist/components/DigitalColleagues/SearchableSelect.d.ts +0 -16
  332. package/dist/components/DigitalColleagues/SearchableSelect.js +0 -2745
  333. package/dist/components/DigitalColleagues/SearchableSelect.mjs +0 -16
  334. package/dist/components/DigitalColleagues/Views/ColleaguesView.css +0 -917
  335. package/dist/components/DigitalColleagues/Views/ColleaguesView.d.ts +0 -14
  336. package/dist/components/DigitalColleagues/Views/ColleaguesView.js +0 -3795
  337. package/dist/components/DigitalColleagues/Views/ColleaguesView.mjs +0 -28
  338. package/dist/components/DigitalColleagues/Views/KnowledgeView.css +0 -917
  339. package/dist/components/DigitalColleagues/Views/KnowledgeView.d.ts +0 -11
  340. package/dist/components/DigitalColleagues/Views/KnowledgeView.docs.js +0 -2
  341. package/dist/components/DigitalColleagues/Views/KnowledgeView.docs.mjs +0 -7
  342. package/dist/components/DigitalColleagues/Views/KnowledgeView.js +0 -3935
  343. package/dist/components/DigitalColleagues/Views/KnowledgeView.mjs +0 -26
  344. package/dist/components/DigitalColleagues/Views/index.css +0 -917
  345. package/dist/components/DigitalColleagues/Views/index.d.ts +0 -7
  346. package/dist/components/DigitalColleagues/Views/index.js +0 -12284
  347. package/dist/components/DigitalColleagues/Views/index.mjs +0 -114
  348. package/dist/components/DigitalColleagues/colleague-card.css +0 -917
  349. package/dist/components/DigitalColleagues/colleague-card.d.ts +0 -12
  350. package/dist/components/DigitalColleagues/colleague-form.css +0 -917
  351. package/dist/components/DigitalColleagues/colleague-form.d.ts +0 -14
  352. package/dist/components/DigitalColleagues/colleague-form.js +0 -3086
  353. package/dist/components/DigitalColleagues/colleague-form.mjs +0 -22
  354. package/dist/components/DigitalColleagues/colleague-type-selection.css +0 -917
  355. package/dist/components/DigitalColleagues/colleague-type-selection.d.ts +0 -7
  356. package/dist/components/DigitalColleagues/colleague-type-selection.mjs +0 -16
  357. package/dist/components/DigitalColleagues/digital-colleague-clone.css +0 -917
  358. package/dist/components/DigitalColleagues/digital-colleague-clone.d.ts +0 -9
  359. package/dist/components/DigitalColleagues/digital-colleague-clone.js +0 -2828
  360. package/dist/components/DigitalColleagues/digital-colleague-options.css +0 -917
  361. package/dist/components/DigitalColleagues/digital-colleague-options.d.ts +0 -7
  362. package/dist/components/DigitalColleagues/digital-colleague-options.js +0 -2697
  363. package/dist/components/DigitalColleagues/digital-colleague-options.mjs +0 -16
  364. package/dist/components/DigitalColleagues/document-edit.css +0 -917
  365. package/dist/components/DigitalColleagues/document-edit.d.ts +0 -10
  366. package/dist/components/DigitalColleagues/document-edit.js +0 -3112
  367. package/dist/components/DigitalColleagues/document-edit.mjs +0 -20
  368. package/dist/components/DigitalColleagues/document-preview-examples.css +0 -917
  369. package/dist/components/DigitalColleagues/document-preview-examples.d.ts +0 -12
  370. package/dist/components/DigitalColleagues/document-preview-examples.js +0 -3433
  371. package/dist/components/DigitalColleagues/document-preview-examples.mjs +0 -151
  372. package/dist/components/DigitalColleagues/document-preview.css +0 -917
  373. package/dist/components/DigitalColleagues/document-preview.d.ts +0 -18
  374. package/dist/components/DigitalColleagues/document-preview.js +0 -3296
  375. package/dist/components/DigitalColleagues/document-preview.mjs +0 -21
  376. package/dist/components/DigitalColleagues/index.css +0 -917
  377. package/dist/components/DigitalColleagues/index.mjs +0 -200
  378. package/dist/components/DigitalColleagues/knowledge-browser.css +0 -917
  379. package/dist/components/DigitalColleagues/knowledge-browser.d.ts +0 -13
  380. package/dist/components/DigitalColleagues/knowledge-browser.js +0 -3581
  381. package/dist/components/DigitalColleagues/knowledge-browser.mjs +0 -23
  382. package/dist/components/DigitalColleagues/knowledge-search.css +0 -917
  383. package/dist/components/DigitalColleagues/knowledge-search.d.ts +0 -12
  384. package/dist/components/DigitalColleagues/knowledge-search.js +0 -2819
  385. package/dist/components/DigitalColleagues/knowledge-search.mjs +0 -20
  386. package/dist/components/DigitalColleagues/team-form.css +0 -917
  387. package/dist/components/DigitalColleagues/team-form.d.ts +0 -24
  388. package/dist/components/DigitalColleagues/team-form.js +0 -2836
  389. package/dist/components/DigitalColleagues/team-form.mjs +0 -20
  390. package/dist/components/DigitalColleagues/types.d.ts +0 -289
  391. package/dist/components/DigitalColleagues/types.js +0 -18
  392. package/dist/{chunk-RFQKQLNT.mjs → chunk-JJDC25TG.mjs} +3 -3
  393. package/dist/{chunk-GZGWWPCP.mjs → chunk-L666B5DN.mjs} +12 -12
  394. /package/dist/components/{DigitalColleagues/AppSidebarLeft.css → Foundry/app-card.css} +0 -0
  395. /package/dist/components/{DigitalColleagues/DashboardHeader.css → Projects/GanttView.css} +0 -0
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  "use strict";
3
+ "use client"
3
4
 
4
5
  "use strict";
5
6
  "use client";
@@ -31,18 +32,15 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
31
32
  ));
32
33
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
33
34
 
34
- // src/components/DigitalColleagues/colleague-card.tsx
35
- var colleague_card_exports = {};
36
- __export(colleague_card_exports, {
37
- ColleagueCard: () => ColleagueCard
35
+ // src/components/Projects/GanttView.tsx
36
+ var GanttView_exports = {};
37
+ __export(GanttView_exports, {
38
+ GanttView: () => GanttView
38
39
  });
39
- module.exports = __toCommonJS(colleague_card_exports);
40
- var import_react = require("react");
41
- var import_lucide_react = require("lucide-react");
42
-
43
- // src/components/ui/avatar.tsx
44
- var React = __toESM(require("react"));
45
- var AvatarPrimitive = __toESM(require("@radix-ui/react-avatar"));
40
+ module.exports = __toCommonJS(GanttView_exports);
41
+ var import_react4 = require("react");
42
+ var import_date_fns = require("date-fns");
43
+ var import_lucide_react2 = require("lucide-react");
46
44
 
47
45
  // src/utils/cn.ts
48
46
  var import_clsx = require("clsx");
@@ -2512,68 +2510,12 @@ function cn(...inputs) {
2512
2510
  return twMerge((0, import_clsx.clsx)(inputs));
2513
2511
  }
2514
2512
 
2515
- // src/components/ui/avatar.tsx
2516
- var import_jsx_runtime = require("react/jsx-runtime");
2517
- var Avatar = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
2518
- AvatarPrimitive.Root,
2519
- {
2520
- ref,
2521
- className: cn("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full", className),
2522
- ...props
2523
- }
2524
- ));
2525
- Avatar.displayName = AvatarPrimitive.Root.displayName;
2526
- var AvatarImage = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
2527
- AvatarPrimitive.Image,
2528
- {
2529
- ref,
2530
- className: cn("aspect-square h-full w-full", className),
2531
- ...props
2532
- }
2533
- ));
2534
- AvatarImage.displayName = AvatarPrimitive.Image.displayName;
2535
- var AvatarFallback = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
2536
- AvatarPrimitive.Fallback,
2537
- {
2538
- ref,
2539
- className: cn(
2540
- "flex h-full w-full items-center justify-center rounded-full bg-muted",
2541
- className
2542
- ),
2543
- ...props
2544
- }
2545
- ));
2546
- AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
2547
-
2548
- // src/components/ui/badge.tsx
2549
- var import_class_variance_authority = require("class-variance-authority");
2550
- var import_jsx_runtime2 = require("react/jsx-runtime");
2551
- var badgeVariants = (0, import_class_variance_authority.cva)(
2552
- "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
2553
- {
2554
- variants: {
2555
- variant: {
2556
- default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
2557
- secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
2558
- destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
2559
- outline: "text-foreground"
2560
- }
2561
- },
2562
- defaultVariants: {
2563
- variant: "default"
2564
- }
2565
- }
2566
- );
2567
- function Badge({ className, variant, ...props }) {
2568
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: cn(badgeVariants({ variant }), className), ...props });
2569
- }
2570
-
2571
2513
  // src/components/ui/button.tsx
2572
2514
  var import_react_slot = require("@radix-ui/react-slot");
2573
- var import_class_variance_authority2 = require("class-variance-authority");
2574
- var React2 = __toESM(require("react"));
2575
- var import_jsx_runtime3 = require("react/jsx-runtime");
2576
- var buttonVariants = (0, import_class_variance_authority2.cva)(
2515
+ var import_class_variance_authority = require("class-variance-authority");
2516
+ var React = __toESM(require("react"));
2517
+ var import_jsx_runtime = require("react/jsx-runtime");
2518
+ var buttonVariants = (0, import_class_variance_authority.cva)(
2577
2519
  "inline-flex items-center justify-center whitespace-nowrap rounded text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
2578
2520
  {
2579
2521
  defaultVariants: {
@@ -2599,64 +2541,81 @@ var buttonVariants = (0, import_class_variance_authority2.cva)(
2599
2541
  }
2600
2542
  }
2601
2543
  );
2602
- var Button = React2.forwardRef(
2544
+ var Button = React.forwardRef(
2603
2545
  ({ asChild = false, className, size, variant, ...props }, ref) => {
2604
2546
  const Comp = asChild ? import_react_slot.Slot : "button";
2605
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Comp, { className: cn(buttonVariants({ className, size, variant })), ref, ...props });
2547
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { className: cn(buttonVariants({ className, size, variant })), ref, ...props });
2606
2548
  }
2607
2549
  );
2608
2550
  Button.displayName = "Button";
2609
2551
 
2610
- // src/components/ui/card.tsx
2611
- var React3 = __toESM(require("react"));
2612
- var import_jsx_runtime4 = require("react/jsx-runtime");
2613
- var Card = React3.forwardRef(
2614
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2615
- "div",
2616
- {
2617
- ref,
2618
- className: cn("rounded-xl border bg-card text-card-foreground shadow", className),
2619
- ...props
2552
+ // src/components/Heros/DashboardHero/DashboardHero.tsx
2553
+ var import_react2 = require("react");
2554
+ var import_react3 = require("motion/react");
2555
+
2556
+ // src/components/ui/badge.tsx
2557
+ var import_class_variance_authority2 = require("class-variance-authority");
2558
+ var import_jsx_runtime2 = require("react/jsx-runtime");
2559
+ var badgeVariants = (0, import_class_variance_authority2.cva)(
2560
+ "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
2561
+ {
2562
+ variants: {
2563
+ variant: {
2564
+ default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
2565
+ secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
2566
+ destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
2567
+ outline: "text-foreground"
2568
+ }
2569
+ },
2570
+ defaultVariants: {
2571
+ variant: "default"
2620
2572
  }
2621
- )
2622
- );
2623
- Card.displayName = "Card";
2624
- var CardHeader = React3.forwardRef(
2625
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
2573
+ }
2626
2574
  );
2627
- CardHeader.displayName = "CardHeader";
2628
- var CardTitle = React3.forwardRef(
2629
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2630
- "div",
2631
- {
2632
- ref,
2633
- className: cn("font-semibold leading-none tracking-tight", className),
2634
- ...props
2575
+ function Badge({ className, variant, ...props }) {
2576
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: cn(badgeVariants({ variant }), className), ...props });
2577
+ }
2578
+
2579
+ // src/hooks/use-local-storage.ts
2580
+ var import_react = require("react");
2581
+ function useLocalStorage(key, initialValue) {
2582
+ const [storedValue, setStoredValue] = (0, import_react.useState)(() => {
2583
+ if (typeof window === "undefined") return initialValue;
2584
+ try {
2585
+ const item = window.localStorage.getItem(key);
2586
+ return item ? JSON.parse(item) : initialValue;
2587
+ } catch (error) {
2588
+ return initialValue;
2635
2589
  }
2636
- )
2637
- );
2638
- CardTitle.displayName = "CardTitle";
2639
- var CardDescription = React3.forwardRef(
2640
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
2641
- );
2642
- CardDescription.displayName = "CardDescription";
2643
- var CardContent = React3.forwardRef(
2644
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ref, className: cn("p-6 pt-0", className), ...props })
2645
- );
2646
- CardContent.displayName = "CardContent";
2647
- var CardFooter = React3.forwardRef(
2648
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
2649
- );
2650
- CardFooter.displayName = "CardFooter";
2590
+ });
2591
+ const setValue = (0, import_react.useCallback)((value) => {
2592
+ try {
2593
+ const valueToStore = value instanceof Function ? value(storedValue) : value;
2594
+ setStoredValue(valueToStore);
2595
+ if (typeof window !== "undefined") {
2596
+ window.localStorage.setItem(key, JSON.stringify(valueToStore));
2597
+ }
2598
+ } catch (error) {
2599
+ }
2600
+ }, [key, storedValue]);
2601
+ (0, import_react.useEffect)(() => {
2602
+ setValue(storedValue);
2603
+ }, []);
2604
+ return [storedValue, setValue];
2605
+ }
2606
+
2607
+ // src/components/Heros/DashboardHero/DashboardHero.tsx
2608
+ var import_fa = require("react-icons/fa");
2609
+ var import_lucide_react = require("lucide-react");
2651
2610
 
2652
2611
  // src/components/ui/dropdown-menu.tsx
2653
- var React4 = __toESM(require("react"));
2612
+ var React2 = __toESM(require("react"));
2654
2613
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
2655
2614
  var import_react_icons = require("@radix-ui/react-icons");
2656
- var import_jsx_runtime5 = require("react/jsx-runtime");
2615
+ var import_jsx_runtime3 = require("react/jsx-runtime");
2657
2616
  var DropdownMenu = DropdownMenuPrimitive.Root;
2658
2617
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
2659
- var DropdownMenuSubTrigger = React4.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
2618
+ var DropdownMenuSubTrigger = React2.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
2660
2619
  DropdownMenuPrimitive.SubTrigger,
2661
2620
  {
2662
2621
  ref,
@@ -2668,12 +2627,12 @@ var DropdownMenuSubTrigger = React4.forwardRef(({ className, inset, children, ..
2668
2627
  ...props,
2669
2628
  children: [
2670
2629
  children,
2671
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react_icons.ChevronRightIcon, { className: "ml-auto" })
2630
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_icons.ChevronRightIcon, { className: "ml-auto" })
2672
2631
  ]
2673
2632
  }
2674
2633
  ));
2675
2634
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
2676
- var DropdownMenuSubContent = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2635
+ var DropdownMenuSubContent = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2677
2636
  DropdownMenuPrimitive.SubContent,
2678
2637
  {
2679
2638
  ref,
@@ -2685,7 +2644,7 @@ var DropdownMenuSubContent = React4.forwardRef(({ className, ...props }, ref) =>
2685
2644
  }
2686
2645
  ));
2687
2646
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
2688
- var DropdownMenuContent = React4.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2647
+ var DropdownMenuContent = React2.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2689
2648
  DropdownMenuPrimitive.Content,
2690
2649
  {
2691
2650
  ref,
@@ -2699,7 +2658,7 @@ var DropdownMenuContent = React4.forwardRef(({ className, sideOffset = 4, ...pro
2699
2658
  }
2700
2659
  ) }));
2701
2660
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
2702
- var DropdownMenuItem = React4.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2661
+ var DropdownMenuItem = React2.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2703
2662
  DropdownMenuPrimitive.Item,
2704
2663
  {
2705
2664
  ref,
@@ -2712,7 +2671,7 @@ var DropdownMenuItem = React4.forwardRef(({ className, inset, ...props }, ref) =
2712
2671
  }
2713
2672
  ));
2714
2673
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
2715
- var DropdownMenuCheckboxItem = React4.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
2674
+ var DropdownMenuCheckboxItem = React2.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
2716
2675
  DropdownMenuPrimitive.CheckboxItem,
2717
2676
  {
2718
2677
  ref,
@@ -2723,13 +2682,13 @@ var DropdownMenuCheckboxItem = React4.forwardRef(({ className, children, checked
2723
2682
  checked,
2724
2683
  ...props,
2725
2684
  children: [
2726
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react_icons.CheckIcon, { className: "h-4 w-4" }) }) }),
2685
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_icons.CheckIcon, { className: "h-4 w-4" }) }) }),
2727
2686
  children
2728
2687
  ]
2729
2688
  }
2730
2689
  ));
2731
2690
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
2732
- var DropdownMenuRadioItem = React4.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
2691
+ var DropdownMenuRadioItem = React2.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
2733
2692
  DropdownMenuPrimitive.RadioItem,
2734
2693
  {
2735
2694
  ref,
@@ -2739,13 +2698,13 @@ var DropdownMenuRadioItem = React4.forwardRef(({ className, children, ...props }
2739
2698
  ),
2740
2699
  ...props,
2741
2700
  children: [
2742
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react_icons.DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
2701
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_icons.DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
2743
2702
  children
2744
2703
  ]
2745
2704
  }
2746
2705
  ));
2747
2706
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
2748
- var DropdownMenuLabel = React4.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2707
+ var DropdownMenuLabel = React2.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2749
2708
  DropdownMenuPrimitive.Label,
2750
2709
  {
2751
2710
  ref,
@@ -2754,7 +2713,7 @@ var DropdownMenuLabel = React4.forwardRef(({ className, inset, ...props }, ref)
2754
2713
  }
2755
2714
  ));
2756
2715
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
2757
- var DropdownMenuSeparator = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2716
+ var DropdownMenuSeparator = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2758
2717
  DropdownMenuPrimitive.Separator,
2759
2718
  {
2760
2719
  ref,
@@ -2764,162 +2723,502 @@ var DropdownMenuSeparator = React4.forwardRef(({ className, ...props }, ref) =>
2764
2723
  ));
2765
2724
  DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
2766
2725
  var DropdownMenuShortcut = ({ className, ...props }) => {
2767
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
2726
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
2768
2727
  };
2769
2728
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
2770
2729
 
2771
- // src/components/DigitalColleagues/colleague-card.tsx
2772
- var import_jsx_runtime6 = require("react/jsx-runtime");
2773
- function ColleagueCard({
2774
- colleague,
2775
- onEdit,
2776
- onDelete,
2777
- onViewDetails,
2778
- showActions = true,
2779
- compact = false,
2730
+ // src/components/Heros/DashboardHero/DashboardHero.tsx
2731
+ var import_jsx_runtime4 = require("react/jsx-runtime");
2732
+ function DashboardHero({
2733
+ title,
2734
+ description,
2735
+ badge,
2736
+ primaryAction,
2737
+ secondaryAction,
2738
+ tertiaryAction,
2739
+ gradient,
2740
+ children,
2780
2741
  className
2781
2742
  }) {
2782
- const [isExpanded, setIsExpanded] = (0, import_react.useState)(false);
2783
- const getStatusColor = (status) => {
2784
- switch (status) {
2785
- case "active":
2786
- return "bg-green-500";
2787
- case "inactive":
2788
- return "bg-gray-500";
2789
- default:
2790
- return "bg-gray-500";
2791
- }
2792
- };
2793
- const getStatusText = (status) => {
2794
- switch (status) {
2795
- case "active":
2796
- return "Active";
2797
- case "inactive":
2798
- return "Inactive";
2799
- default:
2800
- return "Unknown";
2801
- }
2802
- };
2803
- const formatLastActive = (date) => {
2804
- if (!date) return "Never";
2805
- const now = /* @__PURE__ */ new Date();
2806
- const diffInMinutes = Math.floor((now.getTime() - date.getTime()) / (1e3 * 60));
2807
- if (diffInMinutes < 1) return "Just now";
2808
- if (diffInMinutes < 60) return `${diffInMinutes}m ago`;
2809
- if (diffInMinutes < 1440) return `${Math.floor(diffInMinutes / 60)}h ago`;
2810
- return `${Math.floor(diffInMinutes / 1440)}d ago`;
2811
- };
2812
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(Card, { className: cn("hover:shadow-md transition-shadow", compact && "p-2", className), children: [
2813
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(CardHeader, { className: cn("pb-3", compact && "pb-2"), children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-start justify-between", children: [
2814
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-3", children: [
2815
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "relative", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(Avatar, { className: cn("h-12 w-12", compact && "h-8 w-8"), children: [
2816
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(AvatarImage, { src: "/placeholder.svg", alt: colleague.name }),
2817
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(AvatarFallback, { children: colleague.name.split(" ").map((n) => n[0]).join("") })
2818
- ] }) }),
2819
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex-1 min-w-0", children: [
2820
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2", children: [
2821
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("h3", { className: cn("font-semibold text-sm truncate", compact && "text-xs"), children: colleague.name }),
2822
- colleague.type === "digital" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Bot, { className: cn("h-4 w-4 text-blue-500", compact && "h-3 w-3") }) : /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.User, { className: cn("h-4 w-4 text-green-500", compact && "h-3 w-3") })
2743
+ const [minimized, setMinimized] = useLocalStorage(
2744
+ `hero-section-minimized-${title.replace(/\s+/g, "-").toLowerCase()}`,
2745
+ !secondaryAction && !description ? true : false
2746
+ );
2747
+ const [actionsMenuOpen, setActionsMenuOpen] = (0, import_react2.useState)(false);
2748
+ const shouldBeMinimized = !secondaryAction && !description || minimized;
2749
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
2750
+ import_react3.motion.div,
2751
+ {
2752
+ initial: { opacity: 0, y: 20 },
2753
+ animate: { opacity: 1, y: 0 },
2754
+ transition: { duration: 0.5 },
2755
+ className: `overflow-hidden rounded-3xl ${gradient} p-8 text-white ${className || ""}`,
2756
+ children: [
2757
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex items-center justify-between mb-2", children: [
2758
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex items-center gap-3", children: [
2759
+ badge && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Badge, { className: "bg-white/20 text-white hover:bg-white/30 rounded-xl", children: badge }),
2760
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("h2", { className: "text-3xl font-bold m-0", children: title })
2823
2761
  ] }),
2824
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { className: cn("text-sm text-muted-foreground truncate", compact && "text-xs"), children: colleague.type === "human" ? colleague.role : colleague.description }),
2825
- !compact && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 mt-1", children: [
2826
- colleague.type === "human" && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Badge, { variant: "secondary", className: "text-xs", children: colleague.department }),
2827
- colleague.type === "digital" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(Badge, { variant: "secondary", className: "text-xs", children: [
2828
- "v",
2829
- colleague.version
2762
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex items-center gap-3", children: [
2763
+ shouldBeMinimized && primaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2764
+ Button,
2765
+ {
2766
+ className: "rounded-2xl bg-white text-indigo-700 hover:bg-white/90",
2767
+ onClick: primaryAction.onClick,
2768
+ children: primaryAction.label
2769
+ }
2770
+ ),
2771
+ shouldBeMinimized && (secondaryAction || tertiaryAction) && /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(DropdownMenu, { open: actionsMenuOpen, onOpenChange: setActionsMenuOpen, children: [
2772
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2773
+ Button,
2774
+ {
2775
+ variant: "ghost",
2776
+ size: "sm",
2777
+ className: "rounded-2xl bg-white/20 text-white hover:bg-white/30 p-2",
2778
+ "aria-label": "More actions",
2779
+ children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.EllipsisVertical, { size: 20 })
2780
+ }
2781
+ ) }),
2782
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(DropdownMenuContent, { align: "end", className: "w-48", children: [
2783
+ secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(DropdownMenuItem, { onClick: secondaryAction.onClick, children: secondaryAction.label }),
2784
+ tertiaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(DropdownMenuItem, { onClick: tertiaryAction.onClick, children: tertiaryAction.label })
2785
+ ] })
2830
2786
  ] }),
2831
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Badge, { variant: "outline", className: "text-xs", children: getStatusText(colleague.status) })
2787
+ (secondaryAction || description) && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2788
+ "button",
2789
+ {
2790
+ "aria-label": minimized ? "Expand hero section" : "Minimize hero section",
2791
+ className: "rounded-full bg-white/20 hover:bg-white/30 p-1 text-white transition-colors",
2792
+ onClick: () => setMinimized(!minimized),
2793
+ style: { lineHeight: 0 },
2794
+ children: minimized ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_fa.FaChevronDown, { size: 22 }) : /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_fa.FaChevronUp, { size: 22 })
2795
+ }
2796
+ )
2832
2797
  ] })
2833
- ] })
2834
- ] }),
2835
- showActions && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(DropdownMenu, { children: [
2836
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Button, { variant: "ghost", size: "icon", className: cn("h-8 w-8", compact && "h-6 w-6"), children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.MoreHorizontal, { className: cn("h-4 w-4", compact && "h-3 w-3") }) }) }),
2837
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(DropdownMenuContent, { align: "end", children: [
2838
- colleague.type === "digital" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
2839
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(DropdownMenuItem, { onClick: () => onViewDetails?.(colleague), children: [
2840
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Settings, { className: "h-4 w-4 mr-2" }),
2841
- "View Details"
2842
- ] }),
2843
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(DropdownMenuItem, { onClick: () => onEdit?.(colleague), children: [
2844
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Edit, { className: "h-4 w-4 mr-2" }),
2845
- "Edit"
2798
+ ] }),
2799
+ !shouldBeMinimized && /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex flex-col gap-6 md:flex-row md:items-center md:justify-between", children: [
2800
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "space-y-4", children: [
2801
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("p", { className: "max-w-[600px] text-white/80", children: description }),
2802
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex flex-wrap gap-3", children: [
2803
+ primaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2804
+ Button,
2805
+ {
2806
+ className: "rounded-2xl bg-white text-indigo-700 hover:bg-white/90",
2807
+ onClick: primaryAction.onClick,
2808
+ children: primaryAction.label
2809
+ }
2810
+ ),
2811
+ secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2812
+ Button,
2813
+ {
2814
+ variant: "outline",
2815
+ className: "rounded-2xl bg-transparent border-white text-white hover:bg-white/10",
2816
+ onClick: secondaryAction.onClick,
2817
+ children: secondaryAction.label
2818
+ }
2819
+ ),
2820
+ tertiaryAction && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2821
+ Button,
2822
+ {
2823
+ variant: "outline",
2824
+ className: "rounded-2xl bg-transparent border-white text-white hover:bg-white/10",
2825
+ onClick: tertiaryAction.onClick,
2826
+ children: tertiaryAction.label
2827
+ }
2828
+ )
2846
2829
  ] })
2847
2830
  ] }),
2848
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
2849
- DropdownMenuItem,
2831
+ children && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "hidden lg:block", children })
2832
+ ] })
2833
+ ]
2834
+ }
2835
+ );
2836
+ }
2837
+
2838
+ // src/utils/extract-id.ts
2839
+ var extractId = (field) => {
2840
+ if (!field) return 0;
2841
+ if (typeof field === "number") return field;
2842
+ if (typeof field === "object" && field && "id" in field) return field.id;
2843
+ return 0;
2844
+ };
2845
+
2846
+ // src/components/Projects/GanttView.tsx
2847
+ var import_jsx_runtime5 = require("react/jsx-runtime");
2848
+ var PHASE_LABELS = {
2849
+ 1: "Plan",
2850
+ 2: "Dev",
2851
+ 3: "Test",
2852
+ 4: "Deploy",
2853
+ 5: "Review",
2854
+ 6: "Maint.",
2855
+ 7: "Complete",
2856
+ 8: "Archive",
2857
+ 9: "Legacy"
2858
+ };
2859
+ var ZOOM_LEVELS = [
2860
+ { label: "Quarter", dayWidth: 3 },
2861
+ { label: "Month", dayWidth: 7 },
2862
+ { label: "Week", dayWidth: 14 },
2863
+ { label: "Day", dayWidth: 40 }
2864
+ ];
2865
+ var ROW_HEIGHT = 48;
2866
+ var TIME_HEADER_HEIGHT = 60;
2867
+ var GanttView = ({
2868
+ tasks,
2869
+ epics,
2870
+ sprints,
2871
+ onTaskClick
2872
+ }) => {
2873
+ const [dayWidth, setDayWidth] = (0, import_react4.useState)(7);
2874
+ const [isFullscreen, setIsFullscreen] = (0, import_react4.useState)(false);
2875
+ const scrollRef = (0, import_react4.useRef)(null);
2876
+ const heroRef = (0, import_react4.useRef)(null);
2877
+ const [heroHeight, setHeroHeight] = (0, import_react4.useState)(0);
2878
+ (0, import_react4.useEffect)(() => {
2879
+ const measure = () => {
2880
+ if (heroRef.current) setHeroHeight(heroRef.current.offsetHeight);
2881
+ };
2882
+ const observer = new ResizeObserver(measure);
2883
+ if (heroRef.current) observer.observe(heroRef.current);
2884
+ return () => observer.disconnect();
2885
+ }, []);
2886
+ const { timelineStart, timelineEnd, totalDays } = (0, import_react4.useMemo)(() => {
2887
+ if (epics.length === 0) {
2888
+ const today = /* @__PURE__ */ new Date();
2889
+ const start = (0, import_date_fns.addDays)(today, -14);
2890
+ const end = (0, import_date_fns.addDays)(today, 76);
2891
+ return { timelineStart: start, timelineEnd: end, totalDays: 90 };
2892
+ }
2893
+ const allDates = epics.flatMap((e) => [new Date(e.startDate), new Date(e.endDate)]);
2894
+ const minTime = Math.min(...allDates.map((d) => d.getTime()));
2895
+ const maxTime = Math.max(...allDates.map((d) => d.getTime()));
2896
+ const paddedStart = (0, import_date_fns.addDays)(new Date(minTime), -14);
2897
+ const paddedEnd = (0, import_date_fns.addDays)(new Date(maxTime), 14);
2898
+ return {
2899
+ timelineStart: paddedStart,
2900
+ timelineEnd: paddedEnd,
2901
+ totalDays: (0, import_date_fns.differenceInDays)(paddedEnd, paddedStart)
2902
+ };
2903
+ }, [epics]);
2904
+ const { groups, sortedKeys } = (0, import_react4.useMemo)(() => {
2905
+ const groups2 = {};
2906
+ epics.forEach((epic) => {
2907
+ if (!groups2[epic.name]) groups2[epic.name] = [];
2908
+ groups2[epic.name].push(epic);
2909
+ });
2910
+ Object.values(groups2).forEach((list) => list.sort((a, b) => a.phase - b.phase));
2911
+ const sortedKeys2 = Object.keys(groups2).sort((a, b) => {
2912
+ const aMin = Math.min(...groups2[a].map((e) => new Date(e.startDate).getTime()));
2913
+ const bMin = Math.min(...groups2[b].map((e) => new Date(e.startDate).getTime()));
2914
+ return aMin - bMin;
2915
+ });
2916
+ return { groups: groups2, sortedKeys: sortedKeys2 };
2917
+ }, [epics]);
2918
+ const realSprints = (0, import_react4.useMemo)(
2919
+ () => sprints.filter((s) => {
2920
+ const name = s.name.toLowerCase();
2921
+ return name !== "backlog" && name !== "all tasks";
2922
+ }),
2923
+ [sprints]
2924
+ );
2925
+ const monthHeaders = (0, import_react4.useMemo)(
2926
+ () => (0, import_date_fns.eachMonthOfInterval)({ start: timelineStart, end: timelineEnd }).map((month) => ({
2927
+ month,
2928
+ left: (0, import_date_fns.differenceInDays)(month, timelineStart) * dayWidth
2929
+ })),
2930
+ [timelineStart, timelineEnd, dayWidth]
2931
+ );
2932
+ const totalWidth = Math.max(totalDays * dayWidth, 600);
2933
+ const scrollToToday = (0, import_react4.useCallback)(() => {
2934
+ if (scrollRef.current) {
2935
+ const todayOffset = (0, import_date_fns.differenceInDays)(/* @__PURE__ */ new Date(), timelineStart) * dayWidth;
2936
+ scrollRef.current.scrollLeft = Math.max(0, todayOffset - 200);
2937
+ }
2938
+ }, [timelineStart, dayWidth]);
2939
+ const todayLeft = (0, import_date_fns.differenceInDays)(/* @__PURE__ */ new Date(), timelineStart) * dayWidth;
2940
+ const getEpicStats = (epic) => {
2941
+ const epicTasks = tasks.filter((t) => extractId(t.epic) === epic.id);
2942
+ const done = epicTasks.filter((t) => t.status === "done").length;
2943
+ const pct = epicTasks.length > 0 ? Math.round(done / epicTasks.length * 100) : 0;
2944
+ return { total: epicTasks.length, done, pct };
2945
+ };
2946
+ const getGroupStats = (epicList) => {
2947
+ const allTasks = epicList.flatMap(
2948
+ (e) => tasks.filter((t) => extractId(t.epic) === e.id)
2949
+ );
2950
+ const done = allTasks.filter((t) => t.status === "done").length;
2951
+ const pct = allTasks.length > 0 ? Math.round(done / allTasks.length * 100) : 0;
2952
+ return { total: allTasks.length, done, pct };
2953
+ };
2954
+ const isSprintActive = (sprint) => {
2955
+ const today = /* @__PURE__ */ new Date();
2956
+ try {
2957
+ return (0, import_date_fns.isWithinInterval)(today, {
2958
+ start: new Date(sprint.startDate),
2959
+ end: new Date(sprint.endDate)
2960
+ });
2961
+ } catch {
2962
+ return false;
2963
+ }
2964
+ };
2965
+ const chartContent = /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-1 min-h-0 overflow-hidden", children: [
2966
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "w-52 flex-shrink-0 border-r bg-background z-10 flex flex-col", children: [
2967
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
2968
+ "div",
2969
+ {
2970
+ className: "border-b flex items-end pb-2 px-3 flex-shrink-0 bg-muted/20",
2971
+ style: { height: TIME_HEADER_HEIGHT },
2972
+ children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "text-xs font-semibold text-muted-foreground tracking-wider uppercase", children: "Epic" })
2973
+ }
2974
+ ),
2975
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "overflow-y-auto flex-1", children: [
2976
+ sortedKeys.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex items-center justify-center h-24 text-sm text-muted-foreground", children: "No epics" }),
2977
+ sortedKeys.map((name) => {
2978
+ const stats = getGroupStats(groups[name]);
2979
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
2980
+ "div",
2850
2981
  {
2851
- onClick: () => onDelete?.(colleague.id),
2852
- className: "text-destructive focus:text-destructive",
2982
+ className: "flex flex-col justify-center px-3 border-b",
2983
+ style: { height: ROW_HEIGHT },
2853
2984
  children: [
2854
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Trash2, { className: "h-4 w-4 mr-2" }),
2855
- colleague.type === "digital" ? "Delete" : "Remove from team"
2985
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "text-sm font-medium truncate", title: name, children: name }),
2986
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("span", { className: "text-xs text-muted-foreground", children: [
2987
+ stats.total,
2988
+ " task",
2989
+ stats.total !== 1 ? "s" : "",
2990
+ " \xB7 ",
2991
+ stats.pct,
2992
+ "%"
2993
+ ] })
2856
2994
  ]
2857
- }
2858
- )
2859
- ] })
2995
+ },
2996
+ name
2997
+ );
2998
+ })
2860
2999
  ] })
2861
- ] }) }),
2862
- !compact && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(CardContent, { className: "pt-0", children: [
2863
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "space-y-2 text-sm", children: [
2864
- colleague.type === "human" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
2865
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Mail, { className: "h-3 w-3" }),
2866
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "truncate", children: colleague.email })
2867
- ] }),
2868
- colleague.type === "human" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
2869
- colleague.phone && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
2870
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Phone, { className: "h-3 w-3" }),
2871
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { children: colleague.phone })
2872
- ] }),
2873
- colleague.location && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
2874
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.MapPin, { className: "h-3 w-3" }),
2875
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { children: colleague.location })
2876
- ] })
2877
- ] }),
2878
- colleague.type === "digital" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
2879
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Settings, { className: "h-3 w-3" }),
2880
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { children: [
2881
- "v",
2882
- colleague.version
2883
- ] })
2884
- ] }),
2885
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
2886
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.Clock, { className: "h-3 w-3" }),
2887
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { children: [
2888
- "Last active: ",
2889
- formatLastActive(colleague.lastActive)
2890
- ] })
2891
- ] })
2892
- ] }),
2893
- colleague.type === "human" && colleague.skills && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "mt-3", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex flex-wrap gap-1", children: [
2894
- colleague.skills.slice(0, isExpanded ? colleague.skills.length : 3).map((skill) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Badge, { variant: "outline", className: "text-xs", children: skill }, skill)),
2895
- colleague.skills.length > 3 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
2896
- Button,
3000
+ ] }),
3001
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex-1 overflow-x-auto overflow-y-auto", ref: scrollRef, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { style: { width: totalWidth, position: "relative" }, children: [
3002
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
3003
+ "div",
3004
+ {
3005
+ className: "sticky top-0 border-b bg-muted/20 z-20 flex-shrink-0",
3006
+ style: { height: TIME_HEADER_HEIGHT, width: totalWidth },
3007
+ children: [
3008
+ monthHeaders.map(({ month, left }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3009
+ "div",
3010
+ {
3011
+ className: "absolute top-2 text-xs font-semibold text-muted-foreground select-none",
3012
+ style: { left: left + 4 },
3013
+ children: (0, import_date_fns.format)(month, "MMM yyyy")
3014
+ },
3015
+ month.toISOString()
3016
+ )),
3017
+ realSprints.map((sprint) => {
3018
+ const start = new Date(sprint.startDate);
3019
+ const end = new Date(sprint.endDate);
3020
+ if (start > timelineEnd || end < timelineStart) return null;
3021
+ const left = Math.max(0, (0, import_date_fns.differenceInDays)(start, timelineStart) * dayWidth);
3022
+ const right = Math.min(
3023
+ totalWidth,
3024
+ (0, import_date_fns.differenceInDays)(end, timelineStart) * dayWidth
3025
+ );
3026
+ const width = right - left;
3027
+ if (width <= 0) return null;
3028
+ const active = isSprintActive(sprint);
3029
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3030
+ "div",
3031
+ {
3032
+ className: `absolute bottom-0 border-l border-t text-xs px-1 overflow-hidden whitespace-nowrap select-none flex items-center ${active ? "border-primary/50 bg-primary/10 text-primary font-medium" : "border-border bg-muted/40 text-muted-foreground"}`,
3033
+ style: { left, width, height: 22 },
3034
+ title: sprint.name,
3035
+ children: sprint.name
3036
+ },
3037
+ `header-sprint-${sprint.id}`
3038
+ );
3039
+ })
3040
+ ]
3041
+ }
3042
+ ),
3043
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { style: { position: "relative", width: totalWidth }, children: [
3044
+ realSprints.map((sprint) => {
3045
+ const start = new Date(sprint.startDate);
3046
+ const end = new Date(sprint.endDate);
3047
+ if (start > timelineEnd || end < timelineStart) return null;
3048
+ const left = Math.max(0, (0, import_date_fns.differenceInDays)(start, timelineStart) * dayWidth);
3049
+ const right = Math.min(
3050
+ totalWidth,
3051
+ (0, import_date_fns.differenceInDays)(end, timelineStart) * dayWidth
3052
+ );
3053
+ const width = right - left;
3054
+ if (width <= 0 || !isSprintActive(sprint)) return null;
3055
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3056
+ "div",
3057
+ {
3058
+ className: "absolute inset-y-0 bg-primary/5 pointer-events-none",
3059
+ style: { left, width }
3060
+ },
3061
+ `bg-${sprint.id}`
3062
+ );
3063
+ }),
3064
+ realSprints.map((sprint) => {
3065
+ const left = (0, import_date_fns.differenceInDays)(new Date(sprint.startDate), timelineStart) * dayWidth;
3066
+ if (left < 0 || left > totalWidth) return null;
3067
+ const active = isSprintActive(sprint);
3068
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3069
+ "div",
3070
+ {
3071
+ className: `absolute inset-y-0 pointer-events-none ${active ? "border-l border-primary/40" : "border-l border-dashed border-border/60"}`,
3072
+ style: { left }
3073
+ },
3074
+ `line-${sprint.id}`
3075
+ );
3076
+ }),
3077
+ todayLeft >= 0 && todayLeft <= totalWidth && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
3078
+ "div",
2897
3079
  {
2898
- variant: "ghost",
2899
- size: "sm",
2900
- className: "h-5 px-2 text-xs",
2901
- onClick: () => setIsExpanded(!isExpanded),
2902
- children: isExpanded ? "Show less" : `+${colleague.skills.length - 3} more`
3080
+ className: "absolute inset-y-0 pointer-events-none z-10",
3081
+ style: { left: todayLeft },
3082
+ children: [
3083
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "absolute inset-y-0 w-0.5 bg-destructive/50" }),
3084
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "absolute top-1 -translate-x-1/2 w-2 h-2 rounded-full bg-destructive" })
3085
+ ]
2903
3086
  }
2904
- )
2905
- ] }) }),
2906
- colleague.type === "digital" && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "mt-3", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex flex-wrap gap-1", children: [
2907
- colleague.capabilities.slice(0, isExpanded ? colleague.capabilities.length : 2).map((capability) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Badge, { variant: "outline", className: "text-xs", children: capability }, capability)),
2908
- colleague.capabilities.length > 2 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
2909
- Button,
3087
+ ),
3088
+ monthHeaders.map(({ month, left }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3089
+ "div",
3090
+ {
3091
+ className: "absolute inset-y-0 border-l border-border/30 pointer-events-none",
3092
+ style: { left }
3093
+ },
3094
+ `grid-${month.toISOString()}`
3095
+ )),
3096
+ sortedKeys.map((name) => {
3097
+ const epicList = groups[name];
3098
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3099
+ "div",
3100
+ {
3101
+ className: "border-b relative flex items-center",
3102
+ style: { height: ROW_HEIGHT },
3103
+ children: epicList.map((epic) => {
3104
+ const start = new Date(epic.startDate);
3105
+ const end = new Date(epic.endDate);
3106
+ const left = (0, import_date_fns.differenceInDays)(start, timelineStart) * dayWidth;
3107
+ const width = Math.max(8, (0, import_date_fns.differenceInDays)(end, start) * dayWidth);
3108
+ const stats = getEpicStats(epic);
3109
+ const phaseLabel = PHASE_LABELS[epic.phase] ?? `Phase ${epic.phase}`;
3110
+ const showLabel = width >= 50;
3111
+ const tooltip = [
3112
+ `${epic.name} \xB7 ${phaseLabel}`,
3113
+ epic.description ? epic.description : null,
3114
+ `${(0, import_date_fns.format)(start, "dd MMM yyyy")} \u2192 ${(0, import_date_fns.format)(end, "dd MMM yyyy")}`,
3115
+ `${stats.total} tasks \xB7 ${stats.pct}% complete`
3116
+ ].filter(Boolean).join("\n");
3117
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
3118
+ "div",
3119
+ {
3120
+ className: "absolute rounded overflow-hidden cursor-pointer hover:ring-2 hover:ring-white/40 transition-all",
3121
+ style: { left, width, height: 32, top: 8 },
3122
+ title: tooltip,
3123
+ children: [
3124
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3125
+ "div",
3126
+ {
3127
+ className: `absolute inset-0 ${epic.color}`,
3128
+ style: { opacity: 0.2 }
3129
+ }
3130
+ ),
3131
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3132
+ "div",
3133
+ {
3134
+ className: `absolute inset-y-0 left-0 ${epic.color} transition-all`,
3135
+ style: { width: `${stats.pct}%`, opacity: 0.85 }
3136
+ }
3137
+ ),
3138
+ showLabel && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "absolute inset-0 flex items-center px-2 gap-1.5 z-10", children: [
3139
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "text-xs font-semibold text-white drop-shadow truncate", children: phaseLabel }),
3140
+ stats.total > 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("span", { className: "text-xs text-white/80 drop-shadow shrink-0", children: [
3141
+ stats.pct,
3142
+ "%"
3143
+ ] })
3144
+ ] })
3145
+ ]
3146
+ },
3147
+ epic.id
3148
+ );
3149
+ })
3150
+ },
3151
+ name
3152
+ );
3153
+ }),
3154
+ sortedKeys.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3155
+ "div",
2910
3156
  {
2911
- variant: "ghost",
2912
- size: "sm",
2913
- className: "h-5 px-2 text-xs",
2914
- onClick: () => setIsExpanded(!isExpanded),
2915
- children: isExpanded ? "Show less" : `+${colleague.capabilities.length - 2} more`
3157
+ className: "flex items-center justify-center text-sm text-muted-foreground",
3158
+ style: { height: 200 },
3159
+ children: "No epics to display on the timeline"
2916
3160
  }
2917
3161
  )
2918
- ] }) })
2919
- ] })
3162
+ ] })
3163
+ ] }) })
2920
3164
  ] });
2921
- }
3165
+ const inner = /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: `flex flex-col ${isFullscreen ? "h-screen" : "h-full"} overflow-hidden`, children: [
3166
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { ref: heroRef, className: "flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3167
+ DashboardHero,
3168
+ {
3169
+ title: "Gantt Chart",
3170
+ description: "Epic timeline with sprint alignment and phase-based grouping.",
3171
+ gradient: "bg-gradient-to-r from-indigo-600 via-blue-600 to-cyan-600",
3172
+ badge: `${sortedKeys.length} epic${sortedKeys.length !== 1 ? "s" : ""}`
3173
+ }
3174
+ ) }),
3175
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-2 px-4 py-2 border-b bg-background flex-shrink-0", children: [
3176
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.BarChart2, { className: "h-4 w-4 text-muted-foreground" }),
3177
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex items-center gap-1", children: ZOOM_LEVELS.map((z) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3178
+ Button,
3179
+ {
3180
+ variant: dayWidth === z.dayWidth ? "default" : "outline",
3181
+ size: "sm",
3182
+ className: "h-7 px-2 text-xs",
3183
+ onClick: () => setDayWidth(z.dayWidth),
3184
+ children: z.label
3185
+ },
3186
+ z.label
3187
+ )) }),
3188
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex-1" }),
3189
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
3190
+ Button,
3191
+ {
3192
+ variant: "outline",
3193
+ size: "sm",
3194
+ className: "h-7 px-2 text-xs",
3195
+ onClick: scrollToToday,
3196
+ children: [
3197
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Calendar, { className: "h-3 w-3 mr-1" }),
3198
+ "Today"
3199
+ ]
3200
+ }
3201
+ ),
3202
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
3203
+ Button,
3204
+ {
3205
+ variant: "outline",
3206
+ size: "sm",
3207
+ className: "h-7 w-7 p-0",
3208
+ onClick: () => setIsFullscreen((v) => !v),
3209
+ title: isFullscreen ? "Exit fullscreen" : "Fullscreen",
3210
+ children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Minimize2, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Maximize2, { className: "h-3.5 w-3.5" })
3211
+ }
3212
+ )
3213
+ ] }),
3214
+ chartContent
3215
+ ] });
3216
+ if (isFullscreen) {
3217
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "fixed inset-0 z-50 bg-background overflow-hidden", children: inner });
3218
+ }
3219
+ return inner;
3220
+ };
2922
3221
  // Annotate the CommonJS export names for ESM import in node:
2923
3222
  0 && (module.exports = {
2924
- ColleagueCard
3223
+ GanttView
2925
3224
  });