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,3296 +0,0 @@
1
- "use client";
2
- "use strict";
3
- 'use client'
4
-
5
- "use strict";
6
- "use client";
7
- var __create = Object.create;
8
- var __defProp = Object.defineProperty;
9
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
10
- var __getOwnPropNames = Object.getOwnPropertyNames;
11
- var __getProtoOf = Object.getPrototypeOf;
12
- var __hasOwnProp = Object.prototype.hasOwnProperty;
13
- var __export = (target, all) => {
14
- for (var name in all)
15
- __defProp(target, name, { get: all[name], enumerable: true });
16
- };
17
- var __copyProps = (to, from, except, desc) => {
18
- if (from && typeof from === "object" || typeof from === "function") {
19
- for (let key of __getOwnPropNames(from))
20
- if (!__hasOwnProp.call(to, key) && key !== except)
21
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
22
- }
23
- return to;
24
- };
25
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
26
- // If the importer is in node compatibility mode or this is not an ESM
27
- // file that has been converted to a CommonJS file using a Babel-
28
- // compatible transform (i.e. "__esModule" has not been set), then set
29
- // "default" to the CommonJS "module.exports" for node compatibility.
30
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
31
- mod
32
- ));
33
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
34
-
35
- // src/components/DigitalColleagues/document-preview.tsx
36
- var document_preview_exports = {};
37
- __export(document_preview_exports, {
38
- DocumentPreview: () => DocumentPreview
39
- });
40
- module.exports = __toCommonJS(document_preview_exports);
41
- var import_react4 = require("motion/react");
42
- var import_lucide_react4 = require("lucide-react");
43
- var import_react5 = require("react");
44
-
45
- // src/utils/cn.ts
46
- var import_clsx = require("clsx");
47
-
48
- // node_modules/.pnpm/tailwind-merge@2.6.0/node_modules/tailwind-merge/dist/bundle-mjs.mjs
49
- var CLASS_PART_SEPARATOR = "-";
50
- var createClassGroupUtils = (config) => {
51
- const classMap = createClassMap(config);
52
- const {
53
- conflictingClassGroups,
54
- conflictingClassGroupModifiers
55
- } = config;
56
- const getClassGroupId = (className) => {
57
- const classParts = className.split(CLASS_PART_SEPARATOR);
58
- if (classParts[0] === "" && classParts.length !== 1) {
59
- classParts.shift();
60
- }
61
- return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);
62
- };
63
- const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
64
- const conflicts = conflictingClassGroups[classGroupId] || [];
65
- if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {
66
- return [...conflicts, ...conflictingClassGroupModifiers[classGroupId]];
67
- }
68
- return conflicts;
69
- };
70
- return {
71
- getClassGroupId,
72
- getConflictingClassGroupIds
73
- };
74
- };
75
- var getGroupRecursive = (classParts, classPartObject) => {
76
- if (classParts.length === 0) {
77
- return classPartObject.classGroupId;
78
- }
79
- const currentClassPart = classParts[0];
80
- const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
81
- const classGroupFromNextClassPart = nextClassPartObject ? getGroupRecursive(classParts.slice(1), nextClassPartObject) : void 0;
82
- if (classGroupFromNextClassPart) {
83
- return classGroupFromNextClassPart;
84
- }
85
- if (classPartObject.validators.length === 0) {
86
- return void 0;
87
- }
88
- const classRest = classParts.join(CLASS_PART_SEPARATOR);
89
- return classPartObject.validators.find(({
90
- validator
91
- }) => validator(classRest))?.classGroupId;
92
- };
93
- var arbitraryPropertyRegex = /^\[(.+)\]$/;
94
- var getGroupIdForArbitraryProperty = (className) => {
95
- if (arbitraryPropertyRegex.test(className)) {
96
- const arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];
97
- const property = arbitraryPropertyClassName?.substring(0, arbitraryPropertyClassName.indexOf(":"));
98
- if (property) {
99
- return "arbitrary.." + property;
100
- }
101
- }
102
- };
103
- var createClassMap = (config) => {
104
- const {
105
- theme,
106
- prefix
107
- } = config;
108
- const classMap = {
109
- nextPart: /* @__PURE__ */ new Map(),
110
- validators: []
111
- };
112
- const prefixedClassGroupEntries = getPrefixedClassGroupEntries(Object.entries(config.classGroups), prefix);
113
- prefixedClassGroupEntries.forEach(([classGroupId, classGroup]) => {
114
- processClassesRecursively(classGroup, classMap, classGroupId, theme);
115
- });
116
- return classMap;
117
- };
118
- var processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {
119
- classGroup.forEach((classDefinition) => {
120
- if (typeof classDefinition === "string") {
121
- const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
122
- classPartObjectToEdit.classGroupId = classGroupId;
123
- return;
124
- }
125
- if (typeof classDefinition === "function") {
126
- if (isThemeGetter(classDefinition)) {
127
- processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);
128
- return;
129
- }
130
- classPartObject.validators.push({
131
- validator: classDefinition,
132
- classGroupId
133
- });
134
- return;
135
- }
136
- Object.entries(classDefinition).forEach(([key, classGroup2]) => {
137
- processClassesRecursively(classGroup2, getPart(classPartObject, key), classGroupId, theme);
138
- });
139
- });
140
- };
141
- var getPart = (classPartObject, path) => {
142
- let currentClassPartObject = classPartObject;
143
- path.split(CLASS_PART_SEPARATOR).forEach((pathPart) => {
144
- if (!currentClassPartObject.nextPart.has(pathPart)) {
145
- currentClassPartObject.nextPart.set(pathPart, {
146
- nextPart: /* @__PURE__ */ new Map(),
147
- validators: []
148
- });
149
- }
150
- currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);
151
- });
152
- return currentClassPartObject;
153
- };
154
- var isThemeGetter = (func) => func.isThemeGetter;
155
- var getPrefixedClassGroupEntries = (classGroupEntries, prefix) => {
156
- if (!prefix) {
157
- return classGroupEntries;
158
- }
159
- return classGroupEntries.map(([classGroupId, classGroup]) => {
160
- const prefixedClassGroup = classGroup.map((classDefinition) => {
161
- if (typeof classDefinition === "string") {
162
- return prefix + classDefinition;
163
- }
164
- if (typeof classDefinition === "object") {
165
- return Object.fromEntries(Object.entries(classDefinition).map(([key, value]) => [prefix + key, value]));
166
- }
167
- return classDefinition;
168
- });
169
- return [classGroupId, prefixedClassGroup];
170
- });
171
- };
172
- var createLruCache = (maxCacheSize) => {
173
- if (maxCacheSize < 1) {
174
- return {
175
- get: () => void 0,
176
- set: () => {
177
- }
178
- };
179
- }
180
- let cacheSize = 0;
181
- let cache = /* @__PURE__ */ new Map();
182
- let previousCache = /* @__PURE__ */ new Map();
183
- const update = (key, value) => {
184
- cache.set(key, value);
185
- cacheSize++;
186
- if (cacheSize > maxCacheSize) {
187
- cacheSize = 0;
188
- previousCache = cache;
189
- cache = /* @__PURE__ */ new Map();
190
- }
191
- };
192
- return {
193
- get(key) {
194
- let value = cache.get(key);
195
- if (value !== void 0) {
196
- return value;
197
- }
198
- if ((value = previousCache.get(key)) !== void 0) {
199
- update(key, value);
200
- return value;
201
- }
202
- },
203
- set(key, value) {
204
- if (cache.has(key)) {
205
- cache.set(key, value);
206
- } else {
207
- update(key, value);
208
- }
209
- }
210
- };
211
- };
212
- var IMPORTANT_MODIFIER = "!";
213
- var createParseClassName = (config) => {
214
- const {
215
- separator,
216
- experimentalParseClassName
217
- } = config;
218
- const isSeparatorSingleCharacter = separator.length === 1;
219
- const firstSeparatorCharacter = separator[0];
220
- const separatorLength = separator.length;
221
- const parseClassName = (className) => {
222
- const modifiers = [];
223
- let bracketDepth = 0;
224
- let modifierStart = 0;
225
- let postfixModifierPosition;
226
- for (let index = 0; index < className.length; index++) {
227
- let currentCharacter = className[index];
228
- if (bracketDepth === 0) {
229
- if (currentCharacter === firstSeparatorCharacter && (isSeparatorSingleCharacter || className.slice(index, index + separatorLength) === separator)) {
230
- modifiers.push(className.slice(modifierStart, index));
231
- modifierStart = index + separatorLength;
232
- continue;
233
- }
234
- if (currentCharacter === "/") {
235
- postfixModifierPosition = index;
236
- continue;
237
- }
238
- }
239
- if (currentCharacter === "[") {
240
- bracketDepth++;
241
- } else if (currentCharacter === "]") {
242
- bracketDepth--;
243
- }
244
- }
245
- const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.substring(modifierStart);
246
- const hasImportantModifier = baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER);
247
- const baseClassName = hasImportantModifier ? baseClassNameWithImportantModifier.substring(1) : baseClassNameWithImportantModifier;
248
- const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
249
- return {
250
- modifiers,
251
- hasImportantModifier,
252
- baseClassName,
253
- maybePostfixModifierPosition
254
- };
255
- };
256
- if (experimentalParseClassName) {
257
- return (className) => experimentalParseClassName({
258
- className,
259
- parseClassName
260
- });
261
- }
262
- return parseClassName;
263
- };
264
- var sortModifiers = (modifiers) => {
265
- if (modifiers.length <= 1) {
266
- return modifiers;
267
- }
268
- const sortedModifiers = [];
269
- let unsortedModifiers = [];
270
- modifiers.forEach((modifier) => {
271
- const isArbitraryVariant = modifier[0] === "[";
272
- if (isArbitraryVariant) {
273
- sortedModifiers.push(...unsortedModifiers.sort(), modifier);
274
- unsortedModifiers = [];
275
- } else {
276
- unsortedModifiers.push(modifier);
277
- }
278
- });
279
- sortedModifiers.push(...unsortedModifiers.sort());
280
- return sortedModifiers;
281
- };
282
- var createConfigUtils = (config) => ({
283
- cache: createLruCache(config.cacheSize),
284
- parseClassName: createParseClassName(config),
285
- ...createClassGroupUtils(config)
286
- });
287
- var SPLIT_CLASSES_REGEX = /\s+/;
288
- var mergeClassList = (classList, configUtils) => {
289
- const {
290
- parseClassName,
291
- getClassGroupId,
292
- getConflictingClassGroupIds
293
- } = configUtils;
294
- const classGroupsInConflict = [];
295
- const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
296
- let result = "";
297
- for (let index = classNames.length - 1; index >= 0; index -= 1) {
298
- const originalClassName = classNames[index];
299
- const {
300
- modifiers,
301
- hasImportantModifier,
302
- baseClassName,
303
- maybePostfixModifierPosition
304
- } = parseClassName(originalClassName);
305
- let hasPostfixModifier = Boolean(maybePostfixModifierPosition);
306
- let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
307
- if (!classGroupId) {
308
- if (!hasPostfixModifier) {
309
- result = originalClassName + (result.length > 0 ? " " + result : result);
310
- continue;
311
- }
312
- classGroupId = getClassGroupId(baseClassName);
313
- if (!classGroupId) {
314
- result = originalClassName + (result.length > 0 ? " " + result : result);
315
- continue;
316
- }
317
- hasPostfixModifier = false;
318
- }
319
- const variantModifier = sortModifiers(modifiers).join(":");
320
- const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
321
- const classId = modifierId + classGroupId;
322
- if (classGroupsInConflict.includes(classId)) {
323
- continue;
324
- }
325
- classGroupsInConflict.push(classId);
326
- const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
327
- for (let i = 0; i < conflictGroups.length; ++i) {
328
- const group = conflictGroups[i];
329
- classGroupsInConflict.push(modifierId + group);
330
- }
331
- result = originalClassName + (result.length > 0 ? " " + result : result);
332
- }
333
- return result;
334
- };
335
- function twJoin() {
336
- let index = 0;
337
- let argument;
338
- let resolvedValue;
339
- let string = "";
340
- while (index < arguments.length) {
341
- if (argument = arguments[index++]) {
342
- if (resolvedValue = toValue(argument)) {
343
- string && (string += " ");
344
- string += resolvedValue;
345
- }
346
- }
347
- }
348
- return string;
349
- }
350
- var toValue = (mix) => {
351
- if (typeof mix === "string") {
352
- return mix;
353
- }
354
- let resolvedValue;
355
- let string = "";
356
- for (let k = 0; k < mix.length; k++) {
357
- if (mix[k]) {
358
- if (resolvedValue = toValue(mix[k])) {
359
- string && (string += " ");
360
- string += resolvedValue;
361
- }
362
- }
363
- }
364
- return string;
365
- };
366
- function createTailwindMerge(createConfigFirst, ...createConfigRest) {
367
- let configUtils;
368
- let cacheGet;
369
- let cacheSet;
370
- let functionToCall = initTailwindMerge;
371
- function initTailwindMerge(classList) {
372
- const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
373
- configUtils = createConfigUtils(config);
374
- cacheGet = configUtils.cache.get;
375
- cacheSet = configUtils.cache.set;
376
- functionToCall = tailwindMerge;
377
- return tailwindMerge(classList);
378
- }
379
- function tailwindMerge(classList) {
380
- const cachedResult = cacheGet(classList);
381
- if (cachedResult) {
382
- return cachedResult;
383
- }
384
- const result = mergeClassList(classList, configUtils);
385
- cacheSet(classList, result);
386
- return result;
387
- }
388
- return function callTailwindMerge() {
389
- return functionToCall(twJoin.apply(null, arguments));
390
- };
391
- }
392
- var fromTheme = (key) => {
393
- const themeGetter = (theme) => theme[key] || [];
394
- themeGetter.isThemeGetter = true;
395
- return themeGetter;
396
- };
397
- var arbitraryValueRegex = /^\[(?:([a-z-]+):)?(.+)\]$/i;
398
- var fractionRegex = /^\d+\/\d+$/;
399
- var stringLengths = /* @__PURE__ */ new Set(["px", "full", "screen"]);
400
- var tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
401
- var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/;
402
- var colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/;
403
- var shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
404
- var imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
405
- var isLength = (value) => isNumber(value) || stringLengths.has(value) || fractionRegex.test(value);
406
- var isArbitraryLength = (value) => getIsArbitraryValue(value, "length", isLengthOnly);
407
- var isNumber = (value) => Boolean(value) && !Number.isNaN(Number(value));
408
- var isArbitraryNumber = (value) => getIsArbitraryValue(value, "number", isNumber);
409
- var isInteger = (value) => Boolean(value) && Number.isInteger(Number(value));
410
- var isPercent = (value) => value.endsWith("%") && isNumber(value.slice(0, -1));
411
- var isArbitraryValue = (value) => arbitraryValueRegex.test(value);
412
- var isTshirtSize = (value) => tshirtUnitRegex.test(value);
413
- var sizeLabels = /* @__PURE__ */ new Set(["length", "size", "percentage"]);
414
- var isArbitrarySize = (value) => getIsArbitraryValue(value, sizeLabels, isNever);
415
- var isArbitraryPosition = (value) => getIsArbitraryValue(value, "position", isNever);
416
- var imageLabels = /* @__PURE__ */ new Set(["image", "url"]);
417
- var isArbitraryImage = (value) => getIsArbitraryValue(value, imageLabels, isImage);
418
- var isArbitraryShadow = (value) => getIsArbitraryValue(value, "", isShadow);
419
- var isAny = () => true;
420
- var getIsArbitraryValue = (value, label, testValue) => {
421
- const result = arbitraryValueRegex.exec(value);
422
- if (result) {
423
- if (result[1]) {
424
- return typeof label === "string" ? result[1] === label : label.has(result[1]);
425
- }
426
- return testValue(result[2]);
427
- }
428
- return false;
429
- };
430
- var isLengthOnly = (value) => (
431
- // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
432
- // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
433
- // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
434
- lengthUnitRegex.test(value) && !colorFunctionRegex.test(value)
435
- );
436
- var isNever = () => false;
437
- var isShadow = (value) => shadowRegex.test(value);
438
- var isImage = (value) => imageRegex.test(value);
439
- var getDefaultConfig = () => {
440
- const colors = fromTheme("colors");
441
- const spacing = fromTheme("spacing");
442
- const blur = fromTheme("blur");
443
- const brightness = fromTheme("brightness");
444
- const borderColor = fromTheme("borderColor");
445
- const borderRadius = fromTheme("borderRadius");
446
- const borderSpacing = fromTheme("borderSpacing");
447
- const borderWidth = fromTheme("borderWidth");
448
- const contrast = fromTheme("contrast");
449
- const grayscale = fromTheme("grayscale");
450
- const hueRotate = fromTheme("hueRotate");
451
- const invert = fromTheme("invert");
452
- const gap = fromTheme("gap");
453
- const gradientColorStops = fromTheme("gradientColorStops");
454
- const gradientColorStopPositions = fromTheme("gradientColorStopPositions");
455
- const inset = fromTheme("inset");
456
- const margin = fromTheme("margin");
457
- const opacity = fromTheme("opacity");
458
- const padding = fromTheme("padding");
459
- const saturate = fromTheme("saturate");
460
- const scale = fromTheme("scale");
461
- const sepia = fromTheme("sepia");
462
- const skew = fromTheme("skew");
463
- const space = fromTheme("space");
464
- const translate = fromTheme("translate");
465
- const getOverscroll = () => ["auto", "contain", "none"];
466
- const getOverflow = () => ["auto", "hidden", "clip", "visible", "scroll"];
467
- const getSpacingWithAutoAndArbitrary = () => ["auto", isArbitraryValue, spacing];
468
- const getSpacingWithArbitrary = () => [isArbitraryValue, spacing];
469
- const getLengthWithEmptyAndArbitrary = () => ["", isLength, isArbitraryLength];
470
- const getNumberWithAutoAndArbitrary = () => ["auto", isNumber, isArbitraryValue];
471
- const getPositions = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"];
472
- const getLineStyles = () => ["solid", "dashed", "dotted", "double", "none"];
473
- const getBlendModes = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"];
474
- const getAlign = () => ["start", "end", "center", "between", "around", "evenly", "stretch"];
475
- const getZeroAndEmpty = () => ["", "0", isArbitraryValue];
476
- const getBreaks = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
477
- const getNumberAndArbitrary = () => [isNumber, isArbitraryValue];
478
- return {
479
- cacheSize: 500,
480
- separator: ":",
481
- theme: {
482
- colors: [isAny],
483
- spacing: [isLength, isArbitraryLength],
484
- blur: ["none", "", isTshirtSize, isArbitraryValue],
485
- brightness: getNumberAndArbitrary(),
486
- borderColor: [colors],
487
- borderRadius: ["none", "", "full", isTshirtSize, isArbitraryValue],
488
- borderSpacing: getSpacingWithArbitrary(),
489
- borderWidth: getLengthWithEmptyAndArbitrary(),
490
- contrast: getNumberAndArbitrary(),
491
- grayscale: getZeroAndEmpty(),
492
- hueRotate: getNumberAndArbitrary(),
493
- invert: getZeroAndEmpty(),
494
- gap: getSpacingWithArbitrary(),
495
- gradientColorStops: [colors],
496
- gradientColorStopPositions: [isPercent, isArbitraryLength],
497
- inset: getSpacingWithAutoAndArbitrary(),
498
- margin: getSpacingWithAutoAndArbitrary(),
499
- opacity: getNumberAndArbitrary(),
500
- padding: getSpacingWithArbitrary(),
501
- saturate: getNumberAndArbitrary(),
502
- scale: getNumberAndArbitrary(),
503
- sepia: getZeroAndEmpty(),
504
- skew: getNumberAndArbitrary(),
505
- space: getSpacingWithArbitrary(),
506
- translate: getSpacingWithArbitrary()
507
- },
508
- classGroups: {
509
- // Layout
510
- /**
511
- * Aspect Ratio
512
- * @see https://tailwindcss.com/docs/aspect-ratio
513
- */
514
- aspect: [{
515
- aspect: ["auto", "square", "video", isArbitraryValue]
516
- }],
517
- /**
518
- * Container
519
- * @see https://tailwindcss.com/docs/container
520
- */
521
- container: ["container"],
522
- /**
523
- * Columns
524
- * @see https://tailwindcss.com/docs/columns
525
- */
526
- columns: [{
527
- columns: [isTshirtSize]
528
- }],
529
- /**
530
- * Break After
531
- * @see https://tailwindcss.com/docs/break-after
532
- */
533
- "break-after": [{
534
- "break-after": getBreaks()
535
- }],
536
- /**
537
- * Break Before
538
- * @see https://tailwindcss.com/docs/break-before
539
- */
540
- "break-before": [{
541
- "break-before": getBreaks()
542
- }],
543
- /**
544
- * Break Inside
545
- * @see https://tailwindcss.com/docs/break-inside
546
- */
547
- "break-inside": [{
548
- "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
549
- }],
550
- /**
551
- * Box Decoration Break
552
- * @see https://tailwindcss.com/docs/box-decoration-break
553
- */
554
- "box-decoration": [{
555
- "box-decoration": ["slice", "clone"]
556
- }],
557
- /**
558
- * Box Sizing
559
- * @see https://tailwindcss.com/docs/box-sizing
560
- */
561
- box: [{
562
- box: ["border", "content"]
563
- }],
564
- /**
565
- * Display
566
- * @see https://tailwindcss.com/docs/display
567
- */
568
- display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
569
- /**
570
- * Floats
571
- * @see https://tailwindcss.com/docs/float
572
- */
573
- float: [{
574
- float: ["right", "left", "none", "start", "end"]
575
- }],
576
- /**
577
- * Clear
578
- * @see https://tailwindcss.com/docs/clear
579
- */
580
- clear: [{
581
- clear: ["left", "right", "both", "none", "start", "end"]
582
- }],
583
- /**
584
- * Isolation
585
- * @see https://tailwindcss.com/docs/isolation
586
- */
587
- isolation: ["isolate", "isolation-auto"],
588
- /**
589
- * Object Fit
590
- * @see https://tailwindcss.com/docs/object-fit
591
- */
592
- "object-fit": [{
593
- object: ["contain", "cover", "fill", "none", "scale-down"]
594
- }],
595
- /**
596
- * Object Position
597
- * @see https://tailwindcss.com/docs/object-position
598
- */
599
- "object-position": [{
600
- object: [...getPositions(), isArbitraryValue]
601
- }],
602
- /**
603
- * Overflow
604
- * @see https://tailwindcss.com/docs/overflow
605
- */
606
- overflow: [{
607
- overflow: getOverflow()
608
- }],
609
- /**
610
- * Overflow X
611
- * @see https://tailwindcss.com/docs/overflow
612
- */
613
- "overflow-x": [{
614
- "overflow-x": getOverflow()
615
- }],
616
- /**
617
- * Overflow Y
618
- * @see https://tailwindcss.com/docs/overflow
619
- */
620
- "overflow-y": [{
621
- "overflow-y": getOverflow()
622
- }],
623
- /**
624
- * Overscroll Behavior
625
- * @see https://tailwindcss.com/docs/overscroll-behavior
626
- */
627
- overscroll: [{
628
- overscroll: getOverscroll()
629
- }],
630
- /**
631
- * Overscroll Behavior X
632
- * @see https://tailwindcss.com/docs/overscroll-behavior
633
- */
634
- "overscroll-x": [{
635
- "overscroll-x": getOverscroll()
636
- }],
637
- /**
638
- * Overscroll Behavior Y
639
- * @see https://tailwindcss.com/docs/overscroll-behavior
640
- */
641
- "overscroll-y": [{
642
- "overscroll-y": getOverscroll()
643
- }],
644
- /**
645
- * Position
646
- * @see https://tailwindcss.com/docs/position
647
- */
648
- position: ["static", "fixed", "absolute", "relative", "sticky"],
649
- /**
650
- * Top / Right / Bottom / Left
651
- * @see https://tailwindcss.com/docs/top-right-bottom-left
652
- */
653
- inset: [{
654
- inset: [inset]
655
- }],
656
- /**
657
- * Right / Left
658
- * @see https://tailwindcss.com/docs/top-right-bottom-left
659
- */
660
- "inset-x": [{
661
- "inset-x": [inset]
662
- }],
663
- /**
664
- * Top / Bottom
665
- * @see https://tailwindcss.com/docs/top-right-bottom-left
666
- */
667
- "inset-y": [{
668
- "inset-y": [inset]
669
- }],
670
- /**
671
- * Start
672
- * @see https://tailwindcss.com/docs/top-right-bottom-left
673
- */
674
- start: [{
675
- start: [inset]
676
- }],
677
- /**
678
- * End
679
- * @see https://tailwindcss.com/docs/top-right-bottom-left
680
- */
681
- end: [{
682
- end: [inset]
683
- }],
684
- /**
685
- * Top
686
- * @see https://tailwindcss.com/docs/top-right-bottom-left
687
- */
688
- top: [{
689
- top: [inset]
690
- }],
691
- /**
692
- * Right
693
- * @see https://tailwindcss.com/docs/top-right-bottom-left
694
- */
695
- right: [{
696
- right: [inset]
697
- }],
698
- /**
699
- * Bottom
700
- * @see https://tailwindcss.com/docs/top-right-bottom-left
701
- */
702
- bottom: [{
703
- bottom: [inset]
704
- }],
705
- /**
706
- * Left
707
- * @see https://tailwindcss.com/docs/top-right-bottom-left
708
- */
709
- left: [{
710
- left: [inset]
711
- }],
712
- /**
713
- * Visibility
714
- * @see https://tailwindcss.com/docs/visibility
715
- */
716
- visibility: ["visible", "invisible", "collapse"],
717
- /**
718
- * Z-Index
719
- * @see https://tailwindcss.com/docs/z-index
720
- */
721
- z: [{
722
- z: ["auto", isInteger, isArbitraryValue]
723
- }],
724
- // Flexbox and Grid
725
- /**
726
- * Flex Basis
727
- * @see https://tailwindcss.com/docs/flex-basis
728
- */
729
- basis: [{
730
- basis: getSpacingWithAutoAndArbitrary()
731
- }],
732
- /**
733
- * Flex Direction
734
- * @see https://tailwindcss.com/docs/flex-direction
735
- */
736
- "flex-direction": [{
737
- flex: ["row", "row-reverse", "col", "col-reverse"]
738
- }],
739
- /**
740
- * Flex Wrap
741
- * @see https://tailwindcss.com/docs/flex-wrap
742
- */
743
- "flex-wrap": [{
744
- flex: ["wrap", "wrap-reverse", "nowrap"]
745
- }],
746
- /**
747
- * Flex
748
- * @see https://tailwindcss.com/docs/flex
749
- */
750
- flex: [{
751
- flex: ["1", "auto", "initial", "none", isArbitraryValue]
752
- }],
753
- /**
754
- * Flex Grow
755
- * @see https://tailwindcss.com/docs/flex-grow
756
- */
757
- grow: [{
758
- grow: getZeroAndEmpty()
759
- }],
760
- /**
761
- * Flex Shrink
762
- * @see https://tailwindcss.com/docs/flex-shrink
763
- */
764
- shrink: [{
765
- shrink: getZeroAndEmpty()
766
- }],
767
- /**
768
- * Order
769
- * @see https://tailwindcss.com/docs/order
770
- */
771
- order: [{
772
- order: ["first", "last", "none", isInteger, isArbitraryValue]
773
- }],
774
- /**
775
- * Grid Template Columns
776
- * @see https://tailwindcss.com/docs/grid-template-columns
777
- */
778
- "grid-cols": [{
779
- "grid-cols": [isAny]
780
- }],
781
- /**
782
- * Grid Column Start / End
783
- * @see https://tailwindcss.com/docs/grid-column
784
- */
785
- "col-start-end": [{
786
- col: ["auto", {
787
- span: ["full", isInteger, isArbitraryValue]
788
- }, isArbitraryValue]
789
- }],
790
- /**
791
- * Grid Column Start
792
- * @see https://tailwindcss.com/docs/grid-column
793
- */
794
- "col-start": [{
795
- "col-start": getNumberWithAutoAndArbitrary()
796
- }],
797
- /**
798
- * Grid Column End
799
- * @see https://tailwindcss.com/docs/grid-column
800
- */
801
- "col-end": [{
802
- "col-end": getNumberWithAutoAndArbitrary()
803
- }],
804
- /**
805
- * Grid Template Rows
806
- * @see https://tailwindcss.com/docs/grid-template-rows
807
- */
808
- "grid-rows": [{
809
- "grid-rows": [isAny]
810
- }],
811
- /**
812
- * Grid Row Start / End
813
- * @see https://tailwindcss.com/docs/grid-row
814
- */
815
- "row-start-end": [{
816
- row: ["auto", {
817
- span: [isInteger, isArbitraryValue]
818
- }, isArbitraryValue]
819
- }],
820
- /**
821
- * Grid Row Start
822
- * @see https://tailwindcss.com/docs/grid-row
823
- */
824
- "row-start": [{
825
- "row-start": getNumberWithAutoAndArbitrary()
826
- }],
827
- /**
828
- * Grid Row End
829
- * @see https://tailwindcss.com/docs/grid-row
830
- */
831
- "row-end": [{
832
- "row-end": getNumberWithAutoAndArbitrary()
833
- }],
834
- /**
835
- * Grid Auto Flow
836
- * @see https://tailwindcss.com/docs/grid-auto-flow
837
- */
838
- "grid-flow": [{
839
- "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
840
- }],
841
- /**
842
- * Grid Auto Columns
843
- * @see https://tailwindcss.com/docs/grid-auto-columns
844
- */
845
- "auto-cols": [{
846
- "auto-cols": ["auto", "min", "max", "fr", isArbitraryValue]
847
- }],
848
- /**
849
- * Grid Auto Rows
850
- * @see https://tailwindcss.com/docs/grid-auto-rows
851
- */
852
- "auto-rows": [{
853
- "auto-rows": ["auto", "min", "max", "fr", isArbitraryValue]
854
- }],
855
- /**
856
- * Gap
857
- * @see https://tailwindcss.com/docs/gap
858
- */
859
- gap: [{
860
- gap: [gap]
861
- }],
862
- /**
863
- * Gap X
864
- * @see https://tailwindcss.com/docs/gap
865
- */
866
- "gap-x": [{
867
- "gap-x": [gap]
868
- }],
869
- /**
870
- * Gap Y
871
- * @see https://tailwindcss.com/docs/gap
872
- */
873
- "gap-y": [{
874
- "gap-y": [gap]
875
- }],
876
- /**
877
- * Justify Content
878
- * @see https://tailwindcss.com/docs/justify-content
879
- */
880
- "justify-content": [{
881
- justify: ["normal", ...getAlign()]
882
- }],
883
- /**
884
- * Justify Items
885
- * @see https://tailwindcss.com/docs/justify-items
886
- */
887
- "justify-items": [{
888
- "justify-items": ["start", "end", "center", "stretch"]
889
- }],
890
- /**
891
- * Justify Self
892
- * @see https://tailwindcss.com/docs/justify-self
893
- */
894
- "justify-self": [{
895
- "justify-self": ["auto", "start", "end", "center", "stretch"]
896
- }],
897
- /**
898
- * Align Content
899
- * @see https://tailwindcss.com/docs/align-content
900
- */
901
- "align-content": [{
902
- content: ["normal", ...getAlign(), "baseline"]
903
- }],
904
- /**
905
- * Align Items
906
- * @see https://tailwindcss.com/docs/align-items
907
- */
908
- "align-items": [{
909
- items: ["start", "end", "center", "baseline", "stretch"]
910
- }],
911
- /**
912
- * Align Self
913
- * @see https://tailwindcss.com/docs/align-self
914
- */
915
- "align-self": [{
916
- self: ["auto", "start", "end", "center", "stretch", "baseline"]
917
- }],
918
- /**
919
- * Place Content
920
- * @see https://tailwindcss.com/docs/place-content
921
- */
922
- "place-content": [{
923
- "place-content": [...getAlign(), "baseline"]
924
- }],
925
- /**
926
- * Place Items
927
- * @see https://tailwindcss.com/docs/place-items
928
- */
929
- "place-items": [{
930
- "place-items": ["start", "end", "center", "baseline", "stretch"]
931
- }],
932
- /**
933
- * Place Self
934
- * @see https://tailwindcss.com/docs/place-self
935
- */
936
- "place-self": [{
937
- "place-self": ["auto", "start", "end", "center", "stretch"]
938
- }],
939
- // Spacing
940
- /**
941
- * Padding
942
- * @see https://tailwindcss.com/docs/padding
943
- */
944
- p: [{
945
- p: [padding]
946
- }],
947
- /**
948
- * Padding X
949
- * @see https://tailwindcss.com/docs/padding
950
- */
951
- px: [{
952
- px: [padding]
953
- }],
954
- /**
955
- * Padding Y
956
- * @see https://tailwindcss.com/docs/padding
957
- */
958
- py: [{
959
- py: [padding]
960
- }],
961
- /**
962
- * Padding Start
963
- * @see https://tailwindcss.com/docs/padding
964
- */
965
- ps: [{
966
- ps: [padding]
967
- }],
968
- /**
969
- * Padding End
970
- * @see https://tailwindcss.com/docs/padding
971
- */
972
- pe: [{
973
- pe: [padding]
974
- }],
975
- /**
976
- * Padding Top
977
- * @see https://tailwindcss.com/docs/padding
978
- */
979
- pt: [{
980
- pt: [padding]
981
- }],
982
- /**
983
- * Padding Right
984
- * @see https://tailwindcss.com/docs/padding
985
- */
986
- pr: [{
987
- pr: [padding]
988
- }],
989
- /**
990
- * Padding Bottom
991
- * @see https://tailwindcss.com/docs/padding
992
- */
993
- pb: [{
994
- pb: [padding]
995
- }],
996
- /**
997
- * Padding Left
998
- * @see https://tailwindcss.com/docs/padding
999
- */
1000
- pl: [{
1001
- pl: [padding]
1002
- }],
1003
- /**
1004
- * Margin
1005
- * @see https://tailwindcss.com/docs/margin
1006
- */
1007
- m: [{
1008
- m: [margin]
1009
- }],
1010
- /**
1011
- * Margin X
1012
- * @see https://tailwindcss.com/docs/margin
1013
- */
1014
- mx: [{
1015
- mx: [margin]
1016
- }],
1017
- /**
1018
- * Margin Y
1019
- * @see https://tailwindcss.com/docs/margin
1020
- */
1021
- my: [{
1022
- my: [margin]
1023
- }],
1024
- /**
1025
- * Margin Start
1026
- * @see https://tailwindcss.com/docs/margin
1027
- */
1028
- ms: [{
1029
- ms: [margin]
1030
- }],
1031
- /**
1032
- * Margin End
1033
- * @see https://tailwindcss.com/docs/margin
1034
- */
1035
- me: [{
1036
- me: [margin]
1037
- }],
1038
- /**
1039
- * Margin Top
1040
- * @see https://tailwindcss.com/docs/margin
1041
- */
1042
- mt: [{
1043
- mt: [margin]
1044
- }],
1045
- /**
1046
- * Margin Right
1047
- * @see https://tailwindcss.com/docs/margin
1048
- */
1049
- mr: [{
1050
- mr: [margin]
1051
- }],
1052
- /**
1053
- * Margin Bottom
1054
- * @see https://tailwindcss.com/docs/margin
1055
- */
1056
- mb: [{
1057
- mb: [margin]
1058
- }],
1059
- /**
1060
- * Margin Left
1061
- * @see https://tailwindcss.com/docs/margin
1062
- */
1063
- ml: [{
1064
- ml: [margin]
1065
- }],
1066
- /**
1067
- * Space Between X
1068
- * @see https://tailwindcss.com/docs/space
1069
- */
1070
- "space-x": [{
1071
- "space-x": [space]
1072
- }],
1073
- /**
1074
- * Space Between X Reverse
1075
- * @see https://tailwindcss.com/docs/space
1076
- */
1077
- "space-x-reverse": ["space-x-reverse"],
1078
- /**
1079
- * Space Between Y
1080
- * @see https://tailwindcss.com/docs/space
1081
- */
1082
- "space-y": [{
1083
- "space-y": [space]
1084
- }],
1085
- /**
1086
- * Space Between Y Reverse
1087
- * @see https://tailwindcss.com/docs/space
1088
- */
1089
- "space-y-reverse": ["space-y-reverse"],
1090
- // Sizing
1091
- /**
1092
- * Width
1093
- * @see https://tailwindcss.com/docs/width
1094
- */
1095
- w: [{
1096
- w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", isArbitraryValue, spacing]
1097
- }],
1098
- /**
1099
- * Min-Width
1100
- * @see https://tailwindcss.com/docs/min-width
1101
- */
1102
- "min-w": [{
1103
- "min-w": [isArbitraryValue, spacing, "min", "max", "fit"]
1104
- }],
1105
- /**
1106
- * Max-Width
1107
- * @see https://tailwindcss.com/docs/max-width
1108
- */
1109
- "max-w": [{
1110
- "max-w": [isArbitraryValue, spacing, "none", "full", "min", "max", "fit", "prose", {
1111
- screen: [isTshirtSize]
1112
- }, isTshirtSize]
1113
- }],
1114
- /**
1115
- * Height
1116
- * @see https://tailwindcss.com/docs/height
1117
- */
1118
- h: [{
1119
- h: [isArbitraryValue, spacing, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
1120
- }],
1121
- /**
1122
- * Min-Height
1123
- * @see https://tailwindcss.com/docs/min-height
1124
- */
1125
- "min-h": [{
1126
- "min-h": [isArbitraryValue, spacing, "min", "max", "fit", "svh", "lvh", "dvh"]
1127
- }],
1128
- /**
1129
- * Max-Height
1130
- * @see https://tailwindcss.com/docs/max-height
1131
- */
1132
- "max-h": [{
1133
- "max-h": [isArbitraryValue, spacing, "min", "max", "fit", "svh", "lvh", "dvh"]
1134
- }],
1135
- /**
1136
- * Size
1137
- * @see https://tailwindcss.com/docs/size
1138
- */
1139
- size: [{
1140
- size: [isArbitraryValue, spacing, "auto", "min", "max", "fit"]
1141
- }],
1142
- // Typography
1143
- /**
1144
- * Font Size
1145
- * @see https://tailwindcss.com/docs/font-size
1146
- */
1147
- "font-size": [{
1148
- text: ["base", isTshirtSize, isArbitraryLength]
1149
- }],
1150
- /**
1151
- * Font Smoothing
1152
- * @see https://tailwindcss.com/docs/font-smoothing
1153
- */
1154
- "font-smoothing": ["antialiased", "subpixel-antialiased"],
1155
- /**
1156
- * Font Style
1157
- * @see https://tailwindcss.com/docs/font-style
1158
- */
1159
- "font-style": ["italic", "not-italic"],
1160
- /**
1161
- * Font Weight
1162
- * @see https://tailwindcss.com/docs/font-weight
1163
- */
1164
- "font-weight": [{
1165
- font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", isArbitraryNumber]
1166
- }],
1167
- /**
1168
- * Font Family
1169
- * @see https://tailwindcss.com/docs/font-family
1170
- */
1171
- "font-family": [{
1172
- font: [isAny]
1173
- }],
1174
- /**
1175
- * Font Variant Numeric
1176
- * @see https://tailwindcss.com/docs/font-variant-numeric
1177
- */
1178
- "fvn-normal": ["normal-nums"],
1179
- /**
1180
- * Font Variant Numeric
1181
- * @see https://tailwindcss.com/docs/font-variant-numeric
1182
- */
1183
- "fvn-ordinal": ["ordinal"],
1184
- /**
1185
- * Font Variant Numeric
1186
- * @see https://tailwindcss.com/docs/font-variant-numeric
1187
- */
1188
- "fvn-slashed-zero": ["slashed-zero"],
1189
- /**
1190
- * Font Variant Numeric
1191
- * @see https://tailwindcss.com/docs/font-variant-numeric
1192
- */
1193
- "fvn-figure": ["lining-nums", "oldstyle-nums"],
1194
- /**
1195
- * Font Variant Numeric
1196
- * @see https://tailwindcss.com/docs/font-variant-numeric
1197
- */
1198
- "fvn-spacing": ["proportional-nums", "tabular-nums"],
1199
- /**
1200
- * Font Variant Numeric
1201
- * @see https://tailwindcss.com/docs/font-variant-numeric
1202
- */
1203
- "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1204
- /**
1205
- * Letter Spacing
1206
- * @see https://tailwindcss.com/docs/letter-spacing
1207
- */
1208
- tracking: [{
1209
- tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", isArbitraryValue]
1210
- }],
1211
- /**
1212
- * Line Clamp
1213
- * @see https://tailwindcss.com/docs/line-clamp
1214
- */
1215
- "line-clamp": [{
1216
- "line-clamp": ["none", isNumber, isArbitraryNumber]
1217
- }],
1218
- /**
1219
- * Line Height
1220
- * @see https://tailwindcss.com/docs/line-height
1221
- */
1222
- leading: [{
1223
- leading: ["none", "tight", "snug", "normal", "relaxed", "loose", isLength, isArbitraryValue]
1224
- }],
1225
- /**
1226
- * List Style Image
1227
- * @see https://tailwindcss.com/docs/list-style-image
1228
- */
1229
- "list-image": [{
1230
- "list-image": ["none", isArbitraryValue]
1231
- }],
1232
- /**
1233
- * List Style Type
1234
- * @see https://tailwindcss.com/docs/list-style-type
1235
- */
1236
- "list-style-type": [{
1237
- list: ["none", "disc", "decimal", isArbitraryValue]
1238
- }],
1239
- /**
1240
- * List Style Position
1241
- * @see https://tailwindcss.com/docs/list-style-position
1242
- */
1243
- "list-style-position": [{
1244
- list: ["inside", "outside"]
1245
- }],
1246
- /**
1247
- * Placeholder Color
1248
- * @deprecated since Tailwind CSS v3.0.0
1249
- * @see https://tailwindcss.com/docs/placeholder-color
1250
- */
1251
- "placeholder-color": [{
1252
- placeholder: [colors]
1253
- }],
1254
- /**
1255
- * Placeholder Opacity
1256
- * @see https://tailwindcss.com/docs/placeholder-opacity
1257
- */
1258
- "placeholder-opacity": [{
1259
- "placeholder-opacity": [opacity]
1260
- }],
1261
- /**
1262
- * Text Alignment
1263
- * @see https://tailwindcss.com/docs/text-align
1264
- */
1265
- "text-alignment": [{
1266
- text: ["left", "center", "right", "justify", "start", "end"]
1267
- }],
1268
- /**
1269
- * Text Color
1270
- * @see https://tailwindcss.com/docs/text-color
1271
- */
1272
- "text-color": [{
1273
- text: [colors]
1274
- }],
1275
- /**
1276
- * Text Opacity
1277
- * @see https://tailwindcss.com/docs/text-opacity
1278
- */
1279
- "text-opacity": [{
1280
- "text-opacity": [opacity]
1281
- }],
1282
- /**
1283
- * Text Decoration
1284
- * @see https://tailwindcss.com/docs/text-decoration
1285
- */
1286
- "text-decoration": ["underline", "overline", "line-through", "no-underline"],
1287
- /**
1288
- * Text Decoration Style
1289
- * @see https://tailwindcss.com/docs/text-decoration-style
1290
- */
1291
- "text-decoration-style": [{
1292
- decoration: [...getLineStyles(), "wavy"]
1293
- }],
1294
- /**
1295
- * Text Decoration Thickness
1296
- * @see https://tailwindcss.com/docs/text-decoration-thickness
1297
- */
1298
- "text-decoration-thickness": [{
1299
- decoration: ["auto", "from-font", isLength, isArbitraryLength]
1300
- }],
1301
- /**
1302
- * Text Underline Offset
1303
- * @see https://tailwindcss.com/docs/text-underline-offset
1304
- */
1305
- "underline-offset": [{
1306
- "underline-offset": ["auto", isLength, isArbitraryValue]
1307
- }],
1308
- /**
1309
- * Text Decoration Color
1310
- * @see https://tailwindcss.com/docs/text-decoration-color
1311
- */
1312
- "text-decoration-color": [{
1313
- decoration: [colors]
1314
- }],
1315
- /**
1316
- * Text Transform
1317
- * @see https://tailwindcss.com/docs/text-transform
1318
- */
1319
- "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
1320
- /**
1321
- * Text Overflow
1322
- * @see https://tailwindcss.com/docs/text-overflow
1323
- */
1324
- "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
1325
- /**
1326
- * Text Wrap
1327
- * @see https://tailwindcss.com/docs/text-wrap
1328
- */
1329
- "text-wrap": [{
1330
- text: ["wrap", "nowrap", "balance", "pretty"]
1331
- }],
1332
- /**
1333
- * Text Indent
1334
- * @see https://tailwindcss.com/docs/text-indent
1335
- */
1336
- indent: [{
1337
- indent: getSpacingWithArbitrary()
1338
- }],
1339
- /**
1340
- * Vertical Alignment
1341
- * @see https://tailwindcss.com/docs/vertical-align
1342
- */
1343
- "vertical-align": [{
1344
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", isArbitraryValue]
1345
- }],
1346
- /**
1347
- * Whitespace
1348
- * @see https://tailwindcss.com/docs/whitespace
1349
- */
1350
- whitespace: [{
1351
- whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
1352
- }],
1353
- /**
1354
- * Word Break
1355
- * @see https://tailwindcss.com/docs/word-break
1356
- */
1357
- break: [{
1358
- break: ["normal", "words", "all", "keep"]
1359
- }],
1360
- /**
1361
- * Hyphens
1362
- * @see https://tailwindcss.com/docs/hyphens
1363
- */
1364
- hyphens: [{
1365
- hyphens: ["none", "manual", "auto"]
1366
- }],
1367
- /**
1368
- * Content
1369
- * @see https://tailwindcss.com/docs/content
1370
- */
1371
- content: [{
1372
- content: ["none", isArbitraryValue]
1373
- }],
1374
- // Backgrounds
1375
- /**
1376
- * Background Attachment
1377
- * @see https://tailwindcss.com/docs/background-attachment
1378
- */
1379
- "bg-attachment": [{
1380
- bg: ["fixed", "local", "scroll"]
1381
- }],
1382
- /**
1383
- * Background Clip
1384
- * @see https://tailwindcss.com/docs/background-clip
1385
- */
1386
- "bg-clip": [{
1387
- "bg-clip": ["border", "padding", "content", "text"]
1388
- }],
1389
- /**
1390
- * Background Opacity
1391
- * @deprecated since Tailwind CSS v3.0.0
1392
- * @see https://tailwindcss.com/docs/background-opacity
1393
- */
1394
- "bg-opacity": [{
1395
- "bg-opacity": [opacity]
1396
- }],
1397
- /**
1398
- * Background Origin
1399
- * @see https://tailwindcss.com/docs/background-origin
1400
- */
1401
- "bg-origin": [{
1402
- "bg-origin": ["border", "padding", "content"]
1403
- }],
1404
- /**
1405
- * Background Position
1406
- * @see https://tailwindcss.com/docs/background-position
1407
- */
1408
- "bg-position": [{
1409
- bg: [...getPositions(), isArbitraryPosition]
1410
- }],
1411
- /**
1412
- * Background Repeat
1413
- * @see https://tailwindcss.com/docs/background-repeat
1414
- */
1415
- "bg-repeat": [{
1416
- bg: ["no-repeat", {
1417
- repeat: ["", "x", "y", "round", "space"]
1418
- }]
1419
- }],
1420
- /**
1421
- * Background Size
1422
- * @see https://tailwindcss.com/docs/background-size
1423
- */
1424
- "bg-size": [{
1425
- bg: ["auto", "cover", "contain", isArbitrarySize]
1426
- }],
1427
- /**
1428
- * Background Image
1429
- * @see https://tailwindcss.com/docs/background-image
1430
- */
1431
- "bg-image": [{
1432
- bg: ["none", {
1433
- "gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1434
- }, isArbitraryImage]
1435
- }],
1436
- /**
1437
- * Background Color
1438
- * @see https://tailwindcss.com/docs/background-color
1439
- */
1440
- "bg-color": [{
1441
- bg: [colors]
1442
- }],
1443
- /**
1444
- * Gradient Color Stops From Position
1445
- * @see https://tailwindcss.com/docs/gradient-color-stops
1446
- */
1447
- "gradient-from-pos": [{
1448
- from: [gradientColorStopPositions]
1449
- }],
1450
- /**
1451
- * Gradient Color Stops Via Position
1452
- * @see https://tailwindcss.com/docs/gradient-color-stops
1453
- */
1454
- "gradient-via-pos": [{
1455
- via: [gradientColorStopPositions]
1456
- }],
1457
- /**
1458
- * Gradient Color Stops To Position
1459
- * @see https://tailwindcss.com/docs/gradient-color-stops
1460
- */
1461
- "gradient-to-pos": [{
1462
- to: [gradientColorStopPositions]
1463
- }],
1464
- /**
1465
- * Gradient Color Stops From
1466
- * @see https://tailwindcss.com/docs/gradient-color-stops
1467
- */
1468
- "gradient-from": [{
1469
- from: [gradientColorStops]
1470
- }],
1471
- /**
1472
- * Gradient Color Stops Via
1473
- * @see https://tailwindcss.com/docs/gradient-color-stops
1474
- */
1475
- "gradient-via": [{
1476
- via: [gradientColorStops]
1477
- }],
1478
- /**
1479
- * Gradient Color Stops To
1480
- * @see https://tailwindcss.com/docs/gradient-color-stops
1481
- */
1482
- "gradient-to": [{
1483
- to: [gradientColorStops]
1484
- }],
1485
- // Borders
1486
- /**
1487
- * Border Radius
1488
- * @see https://tailwindcss.com/docs/border-radius
1489
- */
1490
- rounded: [{
1491
- rounded: [borderRadius]
1492
- }],
1493
- /**
1494
- * Border Radius Start
1495
- * @see https://tailwindcss.com/docs/border-radius
1496
- */
1497
- "rounded-s": [{
1498
- "rounded-s": [borderRadius]
1499
- }],
1500
- /**
1501
- * Border Radius End
1502
- * @see https://tailwindcss.com/docs/border-radius
1503
- */
1504
- "rounded-e": [{
1505
- "rounded-e": [borderRadius]
1506
- }],
1507
- /**
1508
- * Border Radius Top
1509
- * @see https://tailwindcss.com/docs/border-radius
1510
- */
1511
- "rounded-t": [{
1512
- "rounded-t": [borderRadius]
1513
- }],
1514
- /**
1515
- * Border Radius Right
1516
- * @see https://tailwindcss.com/docs/border-radius
1517
- */
1518
- "rounded-r": [{
1519
- "rounded-r": [borderRadius]
1520
- }],
1521
- /**
1522
- * Border Radius Bottom
1523
- * @see https://tailwindcss.com/docs/border-radius
1524
- */
1525
- "rounded-b": [{
1526
- "rounded-b": [borderRadius]
1527
- }],
1528
- /**
1529
- * Border Radius Left
1530
- * @see https://tailwindcss.com/docs/border-radius
1531
- */
1532
- "rounded-l": [{
1533
- "rounded-l": [borderRadius]
1534
- }],
1535
- /**
1536
- * Border Radius Start Start
1537
- * @see https://tailwindcss.com/docs/border-radius
1538
- */
1539
- "rounded-ss": [{
1540
- "rounded-ss": [borderRadius]
1541
- }],
1542
- /**
1543
- * Border Radius Start End
1544
- * @see https://tailwindcss.com/docs/border-radius
1545
- */
1546
- "rounded-se": [{
1547
- "rounded-se": [borderRadius]
1548
- }],
1549
- /**
1550
- * Border Radius End End
1551
- * @see https://tailwindcss.com/docs/border-radius
1552
- */
1553
- "rounded-ee": [{
1554
- "rounded-ee": [borderRadius]
1555
- }],
1556
- /**
1557
- * Border Radius End Start
1558
- * @see https://tailwindcss.com/docs/border-radius
1559
- */
1560
- "rounded-es": [{
1561
- "rounded-es": [borderRadius]
1562
- }],
1563
- /**
1564
- * Border Radius Top Left
1565
- * @see https://tailwindcss.com/docs/border-radius
1566
- */
1567
- "rounded-tl": [{
1568
- "rounded-tl": [borderRadius]
1569
- }],
1570
- /**
1571
- * Border Radius Top Right
1572
- * @see https://tailwindcss.com/docs/border-radius
1573
- */
1574
- "rounded-tr": [{
1575
- "rounded-tr": [borderRadius]
1576
- }],
1577
- /**
1578
- * Border Radius Bottom Right
1579
- * @see https://tailwindcss.com/docs/border-radius
1580
- */
1581
- "rounded-br": [{
1582
- "rounded-br": [borderRadius]
1583
- }],
1584
- /**
1585
- * Border Radius Bottom Left
1586
- * @see https://tailwindcss.com/docs/border-radius
1587
- */
1588
- "rounded-bl": [{
1589
- "rounded-bl": [borderRadius]
1590
- }],
1591
- /**
1592
- * Border Width
1593
- * @see https://tailwindcss.com/docs/border-width
1594
- */
1595
- "border-w": [{
1596
- border: [borderWidth]
1597
- }],
1598
- /**
1599
- * Border Width X
1600
- * @see https://tailwindcss.com/docs/border-width
1601
- */
1602
- "border-w-x": [{
1603
- "border-x": [borderWidth]
1604
- }],
1605
- /**
1606
- * Border Width Y
1607
- * @see https://tailwindcss.com/docs/border-width
1608
- */
1609
- "border-w-y": [{
1610
- "border-y": [borderWidth]
1611
- }],
1612
- /**
1613
- * Border Width Start
1614
- * @see https://tailwindcss.com/docs/border-width
1615
- */
1616
- "border-w-s": [{
1617
- "border-s": [borderWidth]
1618
- }],
1619
- /**
1620
- * Border Width End
1621
- * @see https://tailwindcss.com/docs/border-width
1622
- */
1623
- "border-w-e": [{
1624
- "border-e": [borderWidth]
1625
- }],
1626
- /**
1627
- * Border Width Top
1628
- * @see https://tailwindcss.com/docs/border-width
1629
- */
1630
- "border-w-t": [{
1631
- "border-t": [borderWidth]
1632
- }],
1633
- /**
1634
- * Border Width Right
1635
- * @see https://tailwindcss.com/docs/border-width
1636
- */
1637
- "border-w-r": [{
1638
- "border-r": [borderWidth]
1639
- }],
1640
- /**
1641
- * Border Width Bottom
1642
- * @see https://tailwindcss.com/docs/border-width
1643
- */
1644
- "border-w-b": [{
1645
- "border-b": [borderWidth]
1646
- }],
1647
- /**
1648
- * Border Width Left
1649
- * @see https://tailwindcss.com/docs/border-width
1650
- */
1651
- "border-w-l": [{
1652
- "border-l": [borderWidth]
1653
- }],
1654
- /**
1655
- * Border Opacity
1656
- * @see https://tailwindcss.com/docs/border-opacity
1657
- */
1658
- "border-opacity": [{
1659
- "border-opacity": [opacity]
1660
- }],
1661
- /**
1662
- * Border Style
1663
- * @see https://tailwindcss.com/docs/border-style
1664
- */
1665
- "border-style": [{
1666
- border: [...getLineStyles(), "hidden"]
1667
- }],
1668
- /**
1669
- * Divide Width X
1670
- * @see https://tailwindcss.com/docs/divide-width
1671
- */
1672
- "divide-x": [{
1673
- "divide-x": [borderWidth]
1674
- }],
1675
- /**
1676
- * Divide Width X Reverse
1677
- * @see https://tailwindcss.com/docs/divide-width
1678
- */
1679
- "divide-x-reverse": ["divide-x-reverse"],
1680
- /**
1681
- * Divide Width Y
1682
- * @see https://tailwindcss.com/docs/divide-width
1683
- */
1684
- "divide-y": [{
1685
- "divide-y": [borderWidth]
1686
- }],
1687
- /**
1688
- * Divide Width Y Reverse
1689
- * @see https://tailwindcss.com/docs/divide-width
1690
- */
1691
- "divide-y-reverse": ["divide-y-reverse"],
1692
- /**
1693
- * Divide Opacity
1694
- * @see https://tailwindcss.com/docs/divide-opacity
1695
- */
1696
- "divide-opacity": [{
1697
- "divide-opacity": [opacity]
1698
- }],
1699
- /**
1700
- * Divide Style
1701
- * @see https://tailwindcss.com/docs/divide-style
1702
- */
1703
- "divide-style": [{
1704
- divide: getLineStyles()
1705
- }],
1706
- /**
1707
- * Border Color
1708
- * @see https://tailwindcss.com/docs/border-color
1709
- */
1710
- "border-color": [{
1711
- border: [borderColor]
1712
- }],
1713
- /**
1714
- * Border Color X
1715
- * @see https://tailwindcss.com/docs/border-color
1716
- */
1717
- "border-color-x": [{
1718
- "border-x": [borderColor]
1719
- }],
1720
- /**
1721
- * Border Color Y
1722
- * @see https://tailwindcss.com/docs/border-color
1723
- */
1724
- "border-color-y": [{
1725
- "border-y": [borderColor]
1726
- }],
1727
- /**
1728
- * Border Color S
1729
- * @see https://tailwindcss.com/docs/border-color
1730
- */
1731
- "border-color-s": [{
1732
- "border-s": [borderColor]
1733
- }],
1734
- /**
1735
- * Border Color E
1736
- * @see https://tailwindcss.com/docs/border-color
1737
- */
1738
- "border-color-e": [{
1739
- "border-e": [borderColor]
1740
- }],
1741
- /**
1742
- * Border Color Top
1743
- * @see https://tailwindcss.com/docs/border-color
1744
- */
1745
- "border-color-t": [{
1746
- "border-t": [borderColor]
1747
- }],
1748
- /**
1749
- * Border Color Right
1750
- * @see https://tailwindcss.com/docs/border-color
1751
- */
1752
- "border-color-r": [{
1753
- "border-r": [borderColor]
1754
- }],
1755
- /**
1756
- * Border Color Bottom
1757
- * @see https://tailwindcss.com/docs/border-color
1758
- */
1759
- "border-color-b": [{
1760
- "border-b": [borderColor]
1761
- }],
1762
- /**
1763
- * Border Color Left
1764
- * @see https://tailwindcss.com/docs/border-color
1765
- */
1766
- "border-color-l": [{
1767
- "border-l": [borderColor]
1768
- }],
1769
- /**
1770
- * Divide Color
1771
- * @see https://tailwindcss.com/docs/divide-color
1772
- */
1773
- "divide-color": [{
1774
- divide: [borderColor]
1775
- }],
1776
- /**
1777
- * Outline Style
1778
- * @see https://tailwindcss.com/docs/outline-style
1779
- */
1780
- "outline-style": [{
1781
- outline: ["", ...getLineStyles()]
1782
- }],
1783
- /**
1784
- * Outline Offset
1785
- * @see https://tailwindcss.com/docs/outline-offset
1786
- */
1787
- "outline-offset": [{
1788
- "outline-offset": [isLength, isArbitraryValue]
1789
- }],
1790
- /**
1791
- * Outline Width
1792
- * @see https://tailwindcss.com/docs/outline-width
1793
- */
1794
- "outline-w": [{
1795
- outline: [isLength, isArbitraryLength]
1796
- }],
1797
- /**
1798
- * Outline Color
1799
- * @see https://tailwindcss.com/docs/outline-color
1800
- */
1801
- "outline-color": [{
1802
- outline: [colors]
1803
- }],
1804
- /**
1805
- * Ring Width
1806
- * @see https://tailwindcss.com/docs/ring-width
1807
- */
1808
- "ring-w": [{
1809
- ring: getLengthWithEmptyAndArbitrary()
1810
- }],
1811
- /**
1812
- * Ring Width Inset
1813
- * @see https://tailwindcss.com/docs/ring-width
1814
- */
1815
- "ring-w-inset": ["ring-inset"],
1816
- /**
1817
- * Ring Color
1818
- * @see https://tailwindcss.com/docs/ring-color
1819
- */
1820
- "ring-color": [{
1821
- ring: [colors]
1822
- }],
1823
- /**
1824
- * Ring Opacity
1825
- * @see https://tailwindcss.com/docs/ring-opacity
1826
- */
1827
- "ring-opacity": [{
1828
- "ring-opacity": [opacity]
1829
- }],
1830
- /**
1831
- * Ring Offset Width
1832
- * @see https://tailwindcss.com/docs/ring-offset-width
1833
- */
1834
- "ring-offset-w": [{
1835
- "ring-offset": [isLength, isArbitraryLength]
1836
- }],
1837
- /**
1838
- * Ring Offset Color
1839
- * @see https://tailwindcss.com/docs/ring-offset-color
1840
- */
1841
- "ring-offset-color": [{
1842
- "ring-offset": [colors]
1843
- }],
1844
- // Effects
1845
- /**
1846
- * Box Shadow
1847
- * @see https://tailwindcss.com/docs/box-shadow
1848
- */
1849
- shadow: [{
1850
- shadow: ["", "inner", "none", isTshirtSize, isArbitraryShadow]
1851
- }],
1852
- /**
1853
- * Box Shadow Color
1854
- * @see https://tailwindcss.com/docs/box-shadow-color
1855
- */
1856
- "shadow-color": [{
1857
- shadow: [isAny]
1858
- }],
1859
- /**
1860
- * Opacity
1861
- * @see https://tailwindcss.com/docs/opacity
1862
- */
1863
- opacity: [{
1864
- opacity: [opacity]
1865
- }],
1866
- /**
1867
- * Mix Blend Mode
1868
- * @see https://tailwindcss.com/docs/mix-blend-mode
1869
- */
1870
- "mix-blend": [{
1871
- "mix-blend": [...getBlendModes(), "plus-lighter", "plus-darker"]
1872
- }],
1873
- /**
1874
- * Background Blend Mode
1875
- * @see https://tailwindcss.com/docs/background-blend-mode
1876
- */
1877
- "bg-blend": [{
1878
- "bg-blend": getBlendModes()
1879
- }],
1880
- // Filters
1881
- /**
1882
- * Filter
1883
- * @deprecated since Tailwind CSS v3.0.0
1884
- * @see https://tailwindcss.com/docs/filter
1885
- */
1886
- filter: [{
1887
- filter: ["", "none"]
1888
- }],
1889
- /**
1890
- * Blur
1891
- * @see https://tailwindcss.com/docs/blur
1892
- */
1893
- blur: [{
1894
- blur: [blur]
1895
- }],
1896
- /**
1897
- * Brightness
1898
- * @see https://tailwindcss.com/docs/brightness
1899
- */
1900
- brightness: [{
1901
- brightness: [brightness]
1902
- }],
1903
- /**
1904
- * Contrast
1905
- * @see https://tailwindcss.com/docs/contrast
1906
- */
1907
- contrast: [{
1908
- contrast: [contrast]
1909
- }],
1910
- /**
1911
- * Drop Shadow
1912
- * @see https://tailwindcss.com/docs/drop-shadow
1913
- */
1914
- "drop-shadow": [{
1915
- "drop-shadow": ["", "none", isTshirtSize, isArbitraryValue]
1916
- }],
1917
- /**
1918
- * Grayscale
1919
- * @see https://tailwindcss.com/docs/grayscale
1920
- */
1921
- grayscale: [{
1922
- grayscale: [grayscale]
1923
- }],
1924
- /**
1925
- * Hue Rotate
1926
- * @see https://tailwindcss.com/docs/hue-rotate
1927
- */
1928
- "hue-rotate": [{
1929
- "hue-rotate": [hueRotate]
1930
- }],
1931
- /**
1932
- * Invert
1933
- * @see https://tailwindcss.com/docs/invert
1934
- */
1935
- invert: [{
1936
- invert: [invert]
1937
- }],
1938
- /**
1939
- * Saturate
1940
- * @see https://tailwindcss.com/docs/saturate
1941
- */
1942
- saturate: [{
1943
- saturate: [saturate]
1944
- }],
1945
- /**
1946
- * Sepia
1947
- * @see https://tailwindcss.com/docs/sepia
1948
- */
1949
- sepia: [{
1950
- sepia: [sepia]
1951
- }],
1952
- /**
1953
- * Backdrop Filter
1954
- * @deprecated since Tailwind CSS v3.0.0
1955
- * @see https://tailwindcss.com/docs/backdrop-filter
1956
- */
1957
- "backdrop-filter": [{
1958
- "backdrop-filter": ["", "none"]
1959
- }],
1960
- /**
1961
- * Backdrop Blur
1962
- * @see https://tailwindcss.com/docs/backdrop-blur
1963
- */
1964
- "backdrop-blur": [{
1965
- "backdrop-blur": [blur]
1966
- }],
1967
- /**
1968
- * Backdrop Brightness
1969
- * @see https://tailwindcss.com/docs/backdrop-brightness
1970
- */
1971
- "backdrop-brightness": [{
1972
- "backdrop-brightness": [brightness]
1973
- }],
1974
- /**
1975
- * Backdrop Contrast
1976
- * @see https://tailwindcss.com/docs/backdrop-contrast
1977
- */
1978
- "backdrop-contrast": [{
1979
- "backdrop-contrast": [contrast]
1980
- }],
1981
- /**
1982
- * Backdrop Grayscale
1983
- * @see https://tailwindcss.com/docs/backdrop-grayscale
1984
- */
1985
- "backdrop-grayscale": [{
1986
- "backdrop-grayscale": [grayscale]
1987
- }],
1988
- /**
1989
- * Backdrop Hue Rotate
1990
- * @see https://tailwindcss.com/docs/backdrop-hue-rotate
1991
- */
1992
- "backdrop-hue-rotate": [{
1993
- "backdrop-hue-rotate": [hueRotate]
1994
- }],
1995
- /**
1996
- * Backdrop Invert
1997
- * @see https://tailwindcss.com/docs/backdrop-invert
1998
- */
1999
- "backdrop-invert": [{
2000
- "backdrop-invert": [invert]
2001
- }],
2002
- /**
2003
- * Backdrop Opacity
2004
- * @see https://tailwindcss.com/docs/backdrop-opacity
2005
- */
2006
- "backdrop-opacity": [{
2007
- "backdrop-opacity": [opacity]
2008
- }],
2009
- /**
2010
- * Backdrop Saturate
2011
- * @see https://tailwindcss.com/docs/backdrop-saturate
2012
- */
2013
- "backdrop-saturate": [{
2014
- "backdrop-saturate": [saturate]
2015
- }],
2016
- /**
2017
- * Backdrop Sepia
2018
- * @see https://tailwindcss.com/docs/backdrop-sepia
2019
- */
2020
- "backdrop-sepia": [{
2021
- "backdrop-sepia": [sepia]
2022
- }],
2023
- // Tables
2024
- /**
2025
- * Border Collapse
2026
- * @see https://tailwindcss.com/docs/border-collapse
2027
- */
2028
- "border-collapse": [{
2029
- border: ["collapse", "separate"]
2030
- }],
2031
- /**
2032
- * Border Spacing
2033
- * @see https://tailwindcss.com/docs/border-spacing
2034
- */
2035
- "border-spacing": [{
2036
- "border-spacing": [borderSpacing]
2037
- }],
2038
- /**
2039
- * Border Spacing X
2040
- * @see https://tailwindcss.com/docs/border-spacing
2041
- */
2042
- "border-spacing-x": [{
2043
- "border-spacing-x": [borderSpacing]
2044
- }],
2045
- /**
2046
- * Border Spacing Y
2047
- * @see https://tailwindcss.com/docs/border-spacing
2048
- */
2049
- "border-spacing-y": [{
2050
- "border-spacing-y": [borderSpacing]
2051
- }],
2052
- /**
2053
- * Table Layout
2054
- * @see https://tailwindcss.com/docs/table-layout
2055
- */
2056
- "table-layout": [{
2057
- table: ["auto", "fixed"]
2058
- }],
2059
- /**
2060
- * Caption Side
2061
- * @see https://tailwindcss.com/docs/caption-side
2062
- */
2063
- caption: [{
2064
- caption: ["top", "bottom"]
2065
- }],
2066
- // Transitions and Animation
2067
- /**
2068
- * Tranisition Property
2069
- * @see https://tailwindcss.com/docs/transition-property
2070
- */
2071
- transition: [{
2072
- transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", isArbitraryValue]
2073
- }],
2074
- /**
2075
- * Transition Duration
2076
- * @see https://tailwindcss.com/docs/transition-duration
2077
- */
2078
- duration: [{
2079
- duration: getNumberAndArbitrary()
2080
- }],
2081
- /**
2082
- * Transition Timing Function
2083
- * @see https://tailwindcss.com/docs/transition-timing-function
2084
- */
2085
- ease: [{
2086
- ease: ["linear", "in", "out", "in-out", isArbitraryValue]
2087
- }],
2088
- /**
2089
- * Transition Delay
2090
- * @see https://tailwindcss.com/docs/transition-delay
2091
- */
2092
- delay: [{
2093
- delay: getNumberAndArbitrary()
2094
- }],
2095
- /**
2096
- * Animation
2097
- * @see https://tailwindcss.com/docs/animation
2098
- */
2099
- animate: [{
2100
- animate: ["none", "spin", "ping", "pulse", "bounce", isArbitraryValue]
2101
- }],
2102
- // Transforms
2103
- /**
2104
- * Transform
2105
- * @see https://tailwindcss.com/docs/transform
2106
- */
2107
- transform: [{
2108
- transform: ["", "gpu", "none"]
2109
- }],
2110
- /**
2111
- * Scale
2112
- * @see https://tailwindcss.com/docs/scale
2113
- */
2114
- scale: [{
2115
- scale: [scale]
2116
- }],
2117
- /**
2118
- * Scale X
2119
- * @see https://tailwindcss.com/docs/scale
2120
- */
2121
- "scale-x": [{
2122
- "scale-x": [scale]
2123
- }],
2124
- /**
2125
- * Scale Y
2126
- * @see https://tailwindcss.com/docs/scale
2127
- */
2128
- "scale-y": [{
2129
- "scale-y": [scale]
2130
- }],
2131
- /**
2132
- * Rotate
2133
- * @see https://tailwindcss.com/docs/rotate
2134
- */
2135
- rotate: [{
2136
- rotate: [isInteger, isArbitraryValue]
2137
- }],
2138
- /**
2139
- * Translate X
2140
- * @see https://tailwindcss.com/docs/translate
2141
- */
2142
- "translate-x": [{
2143
- "translate-x": [translate]
2144
- }],
2145
- /**
2146
- * Translate Y
2147
- * @see https://tailwindcss.com/docs/translate
2148
- */
2149
- "translate-y": [{
2150
- "translate-y": [translate]
2151
- }],
2152
- /**
2153
- * Skew X
2154
- * @see https://tailwindcss.com/docs/skew
2155
- */
2156
- "skew-x": [{
2157
- "skew-x": [skew]
2158
- }],
2159
- /**
2160
- * Skew Y
2161
- * @see https://tailwindcss.com/docs/skew
2162
- */
2163
- "skew-y": [{
2164
- "skew-y": [skew]
2165
- }],
2166
- /**
2167
- * Transform Origin
2168
- * @see https://tailwindcss.com/docs/transform-origin
2169
- */
2170
- "transform-origin": [{
2171
- origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", isArbitraryValue]
2172
- }],
2173
- // Interactivity
2174
- /**
2175
- * Accent Color
2176
- * @see https://tailwindcss.com/docs/accent-color
2177
- */
2178
- accent: [{
2179
- accent: ["auto", colors]
2180
- }],
2181
- /**
2182
- * Appearance
2183
- * @see https://tailwindcss.com/docs/appearance
2184
- */
2185
- appearance: [{
2186
- appearance: ["none", "auto"]
2187
- }],
2188
- /**
2189
- * Cursor
2190
- * @see https://tailwindcss.com/docs/cursor
2191
- */
2192
- cursor: [{
2193
- cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", isArbitraryValue]
2194
- }],
2195
- /**
2196
- * Caret Color
2197
- * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2198
- */
2199
- "caret-color": [{
2200
- caret: [colors]
2201
- }],
2202
- /**
2203
- * Pointer Events
2204
- * @see https://tailwindcss.com/docs/pointer-events
2205
- */
2206
- "pointer-events": [{
2207
- "pointer-events": ["none", "auto"]
2208
- }],
2209
- /**
2210
- * Resize
2211
- * @see https://tailwindcss.com/docs/resize
2212
- */
2213
- resize: [{
2214
- resize: ["none", "y", "x", ""]
2215
- }],
2216
- /**
2217
- * Scroll Behavior
2218
- * @see https://tailwindcss.com/docs/scroll-behavior
2219
- */
2220
- "scroll-behavior": [{
2221
- scroll: ["auto", "smooth"]
2222
- }],
2223
- /**
2224
- * Scroll Margin
2225
- * @see https://tailwindcss.com/docs/scroll-margin
2226
- */
2227
- "scroll-m": [{
2228
- "scroll-m": getSpacingWithArbitrary()
2229
- }],
2230
- /**
2231
- * Scroll Margin X
2232
- * @see https://tailwindcss.com/docs/scroll-margin
2233
- */
2234
- "scroll-mx": [{
2235
- "scroll-mx": getSpacingWithArbitrary()
2236
- }],
2237
- /**
2238
- * Scroll Margin Y
2239
- * @see https://tailwindcss.com/docs/scroll-margin
2240
- */
2241
- "scroll-my": [{
2242
- "scroll-my": getSpacingWithArbitrary()
2243
- }],
2244
- /**
2245
- * Scroll Margin Start
2246
- * @see https://tailwindcss.com/docs/scroll-margin
2247
- */
2248
- "scroll-ms": [{
2249
- "scroll-ms": getSpacingWithArbitrary()
2250
- }],
2251
- /**
2252
- * Scroll Margin End
2253
- * @see https://tailwindcss.com/docs/scroll-margin
2254
- */
2255
- "scroll-me": [{
2256
- "scroll-me": getSpacingWithArbitrary()
2257
- }],
2258
- /**
2259
- * Scroll Margin Top
2260
- * @see https://tailwindcss.com/docs/scroll-margin
2261
- */
2262
- "scroll-mt": [{
2263
- "scroll-mt": getSpacingWithArbitrary()
2264
- }],
2265
- /**
2266
- * Scroll Margin Right
2267
- * @see https://tailwindcss.com/docs/scroll-margin
2268
- */
2269
- "scroll-mr": [{
2270
- "scroll-mr": getSpacingWithArbitrary()
2271
- }],
2272
- /**
2273
- * Scroll Margin Bottom
2274
- * @see https://tailwindcss.com/docs/scroll-margin
2275
- */
2276
- "scroll-mb": [{
2277
- "scroll-mb": getSpacingWithArbitrary()
2278
- }],
2279
- /**
2280
- * Scroll Margin Left
2281
- * @see https://tailwindcss.com/docs/scroll-margin
2282
- */
2283
- "scroll-ml": [{
2284
- "scroll-ml": getSpacingWithArbitrary()
2285
- }],
2286
- /**
2287
- * Scroll Padding
2288
- * @see https://tailwindcss.com/docs/scroll-padding
2289
- */
2290
- "scroll-p": [{
2291
- "scroll-p": getSpacingWithArbitrary()
2292
- }],
2293
- /**
2294
- * Scroll Padding X
2295
- * @see https://tailwindcss.com/docs/scroll-padding
2296
- */
2297
- "scroll-px": [{
2298
- "scroll-px": getSpacingWithArbitrary()
2299
- }],
2300
- /**
2301
- * Scroll Padding Y
2302
- * @see https://tailwindcss.com/docs/scroll-padding
2303
- */
2304
- "scroll-py": [{
2305
- "scroll-py": getSpacingWithArbitrary()
2306
- }],
2307
- /**
2308
- * Scroll Padding Start
2309
- * @see https://tailwindcss.com/docs/scroll-padding
2310
- */
2311
- "scroll-ps": [{
2312
- "scroll-ps": getSpacingWithArbitrary()
2313
- }],
2314
- /**
2315
- * Scroll Padding End
2316
- * @see https://tailwindcss.com/docs/scroll-padding
2317
- */
2318
- "scroll-pe": [{
2319
- "scroll-pe": getSpacingWithArbitrary()
2320
- }],
2321
- /**
2322
- * Scroll Padding Top
2323
- * @see https://tailwindcss.com/docs/scroll-padding
2324
- */
2325
- "scroll-pt": [{
2326
- "scroll-pt": getSpacingWithArbitrary()
2327
- }],
2328
- /**
2329
- * Scroll Padding Right
2330
- * @see https://tailwindcss.com/docs/scroll-padding
2331
- */
2332
- "scroll-pr": [{
2333
- "scroll-pr": getSpacingWithArbitrary()
2334
- }],
2335
- /**
2336
- * Scroll Padding Bottom
2337
- * @see https://tailwindcss.com/docs/scroll-padding
2338
- */
2339
- "scroll-pb": [{
2340
- "scroll-pb": getSpacingWithArbitrary()
2341
- }],
2342
- /**
2343
- * Scroll Padding Left
2344
- * @see https://tailwindcss.com/docs/scroll-padding
2345
- */
2346
- "scroll-pl": [{
2347
- "scroll-pl": getSpacingWithArbitrary()
2348
- }],
2349
- /**
2350
- * Scroll Snap Align
2351
- * @see https://tailwindcss.com/docs/scroll-snap-align
2352
- */
2353
- "snap-align": [{
2354
- snap: ["start", "end", "center", "align-none"]
2355
- }],
2356
- /**
2357
- * Scroll Snap Stop
2358
- * @see https://tailwindcss.com/docs/scroll-snap-stop
2359
- */
2360
- "snap-stop": [{
2361
- snap: ["normal", "always"]
2362
- }],
2363
- /**
2364
- * Scroll Snap Type
2365
- * @see https://tailwindcss.com/docs/scroll-snap-type
2366
- */
2367
- "snap-type": [{
2368
- snap: ["none", "x", "y", "both"]
2369
- }],
2370
- /**
2371
- * Scroll Snap Type Strictness
2372
- * @see https://tailwindcss.com/docs/scroll-snap-type
2373
- */
2374
- "snap-strictness": [{
2375
- snap: ["mandatory", "proximity"]
2376
- }],
2377
- /**
2378
- * Touch Action
2379
- * @see https://tailwindcss.com/docs/touch-action
2380
- */
2381
- touch: [{
2382
- touch: ["auto", "none", "manipulation"]
2383
- }],
2384
- /**
2385
- * Touch Action X
2386
- * @see https://tailwindcss.com/docs/touch-action
2387
- */
2388
- "touch-x": [{
2389
- "touch-pan": ["x", "left", "right"]
2390
- }],
2391
- /**
2392
- * Touch Action Y
2393
- * @see https://tailwindcss.com/docs/touch-action
2394
- */
2395
- "touch-y": [{
2396
- "touch-pan": ["y", "up", "down"]
2397
- }],
2398
- /**
2399
- * Touch Action Pinch Zoom
2400
- * @see https://tailwindcss.com/docs/touch-action
2401
- */
2402
- "touch-pz": ["touch-pinch-zoom"],
2403
- /**
2404
- * User Select
2405
- * @see https://tailwindcss.com/docs/user-select
2406
- */
2407
- select: [{
2408
- select: ["none", "text", "all", "auto"]
2409
- }],
2410
- /**
2411
- * Will Change
2412
- * @see https://tailwindcss.com/docs/will-change
2413
- */
2414
- "will-change": [{
2415
- "will-change": ["auto", "scroll", "contents", "transform", isArbitraryValue]
2416
- }],
2417
- // SVG
2418
- /**
2419
- * Fill
2420
- * @see https://tailwindcss.com/docs/fill
2421
- */
2422
- fill: [{
2423
- fill: [colors, "none"]
2424
- }],
2425
- /**
2426
- * Stroke Width
2427
- * @see https://tailwindcss.com/docs/stroke-width
2428
- */
2429
- "stroke-w": [{
2430
- stroke: [isLength, isArbitraryLength, isArbitraryNumber]
2431
- }],
2432
- /**
2433
- * Stroke
2434
- * @see https://tailwindcss.com/docs/stroke
2435
- */
2436
- stroke: [{
2437
- stroke: [colors, "none"]
2438
- }],
2439
- // Accessibility
2440
- /**
2441
- * Screen Readers
2442
- * @see https://tailwindcss.com/docs/screen-readers
2443
- */
2444
- sr: ["sr-only", "not-sr-only"],
2445
- /**
2446
- * Forced Color Adjust
2447
- * @see https://tailwindcss.com/docs/forced-color-adjust
2448
- */
2449
- "forced-color-adjust": [{
2450
- "forced-color-adjust": ["auto", "none"]
2451
- }]
2452
- },
2453
- conflictingClassGroups: {
2454
- overflow: ["overflow-x", "overflow-y"],
2455
- overscroll: ["overscroll-x", "overscroll-y"],
2456
- inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
2457
- "inset-x": ["right", "left"],
2458
- "inset-y": ["top", "bottom"],
2459
- flex: ["basis", "grow", "shrink"],
2460
- gap: ["gap-x", "gap-y"],
2461
- p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
2462
- px: ["pr", "pl"],
2463
- py: ["pt", "pb"],
2464
- m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
2465
- mx: ["mr", "ml"],
2466
- my: ["mt", "mb"],
2467
- size: ["w", "h"],
2468
- "font-size": ["leading"],
2469
- "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
2470
- "fvn-ordinal": ["fvn-normal"],
2471
- "fvn-slashed-zero": ["fvn-normal"],
2472
- "fvn-figure": ["fvn-normal"],
2473
- "fvn-spacing": ["fvn-normal"],
2474
- "fvn-fraction": ["fvn-normal"],
2475
- "line-clamp": ["display", "overflow"],
2476
- rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
2477
- "rounded-s": ["rounded-ss", "rounded-es"],
2478
- "rounded-e": ["rounded-se", "rounded-ee"],
2479
- "rounded-t": ["rounded-tl", "rounded-tr"],
2480
- "rounded-r": ["rounded-tr", "rounded-br"],
2481
- "rounded-b": ["rounded-br", "rounded-bl"],
2482
- "rounded-l": ["rounded-tl", "rounded-bl"],
2483
- "border-spacing": ["border-spacing-x", "border-spacing-y"],
2484
- "border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
2485
- "border-w-x": ["border-w-r", "border-w-l"],
2486
- "border-w-y": ["border-w-t", "border-w-b"],
2487
- "border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
2488
- "border-color-x": ["border-color-r", "border-color-l"],
2489
- "border-color-y": ["border-color-t", "border-color-b"],
2490
- "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
2491
- "scroll-mx": ["scroll-mr", "scroll-ml"],
2492
- "scroll-my": ["scroll-mt", "scroll-mb"],
2493
- "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
2494
- "scroll-px": ["scroll-pr", "scroll-pl"],
2495
- "scroll-py": ["scroll-pt", "scroll-pb"],
2496
- touch: ["touch-x", "touch-y", "touch-pz"],
2497
- "touch-x": ["touch"],
2498
- "touch-y": ["touch"],
2499
- "touch-pz": ["touch"]
2500
- },
2501
- conflictingClassGroupModifiers: {
2502
- "font-size": ["leading"]
2503
- }
2504
- };
2505
- };
2506
- var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
2507
-
2508
- // src/utils/cn.ts
2509
- function cn(...inputs) {
2510
- return twMerge((0, import_clsx.clsx)(inputs));
2511
- }
2512
-
2513
- // src/components/ui/button.tsx
2514
- var import_react_slot = require("@radix-ui/react-slot");
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)(
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",
2520
- {
2521
- defaultVariants: {
2522
- size: "default",
2523
- variant: "default"
2524
- },
2525
- variants: {
2526
- size: {
2527
- clear: "",
2528
- default: "h-10 px-4 py-2",
2529
- icon: "h-10 w-10",
2530
- lg: "h-11 rounded px-8",
2531
- sm: "h-9 rounded px-3"
2532
- },
2533
- variant: {
2534
- default: "bg-accent text-accent-foreground hover:bg-background hover:text-accent hover:border-accent hover:border",
2535
- destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
2536
- ghost: "hover:bg-card hover:text-accent",
2537
- link: "text-primary items-start justify-start underline-offset-4 hover:underline",
2538
- outline: "border border-border bg-background hover:bg-card hover:text-accent",
2539
- secondary: "bg-secondary text-secondary-foreground hover:bg-accent"
2540
- }
2541
- }
2542
- }
2543
- );
2544
- var Button = React.forwardRef(
2545
- ({ asChild = false, className, size, variant, ...props }, ref) => {
2546
- const Comp = asChild ? import_react_slot.Slot : "button";
2547
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { className: cn(buttonVariants({ className, size, variant })), ref, ...props });
2548
- }
2549
- );
2550
- Button.displayName = "Button";
2551
-
2552
- // src/components/DigitalColleagues/document-edit.tsx
2553
- var import_react2 = require("motion/react");
2554
- var import_lucide_react3 = require("lucide-react");
2555
- var import_react3 = require("react");
2556
-
2557
- // src/components/ui/textarea.tsx
2558
- var React2 = __toESM(require("react"));
2559
- var import_jsx_runtime2 = require("react/jsx-runtime");
2560
- var Textarea = React2.forwardRef(
2561
- ({ className, ...props }, ref) => {
2562
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
2563
- "textarea",
2564
- {
2565
- className: cn(
2566
- "flex min-h-[80px] w-full rounded border border-border bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
2567
- className
2568
- ),
2569
- ref,
2570
- ...props
2571
- }
2572
- );
2573
- }
2574
- );
2575
- Textarea.displayName = "Textarea";
2576
-
2577
- // src/components/ui/input.tsx
2578
- var React3 = __toESM(require("react"));
2579
- var import_jsx_runtime3 = require("react/jsx-runtime");
2580
- var Input = React3.forwardRef(
2581
- ({ className, type, ...props }, ref) => {
2582
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
2583
- "input",
2584
- {
2585
- type,
2586
- className: cn(
2587
- "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
2588
- className
2589
- ),
2590
- ref,
2591
- ...props
2592
- }
2593
- );
2594
- }
2595
- );
2596
- Input.displayName = "Input";
2597
-
2598
- // src/components/ui/select.tsx
2599
- var SelectPrimitive = __toESM(require("@radix-ui/react-select"));
2600
- var import_lucide_react = require("lucide-react");
2601
- var React4 = __toESM(require("react"));
2602
- var import_jsx_runtime4 = require("react/jsx-runtime");
2603
- var Select = SelectPrimitive.Root;
2604
- var SelectValue = SelectPrimitive.Value;
2605
- var SelectTrigger = React4.forwardRef(({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
2606
- SelectPrimitive.Trigger,
2607
- {
2608
- className: cn(
2609
- "flex h-10 w-full items-center justify-between rounded border border-input bg-background px-3 py-2 text-inherit ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
2610
- className
2611
- ),
2612
- ref,
2613
- ...props,
2614
- children: [
2615
- children,
2616
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.ChevronDown, { className: "h-4 w-4 opacity-50" }) })
2617
- ]
2618
- }
2619
- ));
2620
- SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
2621
- var SelectScrollUpButton = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2622
- SelectPrimitive.ScrollUpButton,
2623
- {
2624
- className: cn("flex cursor-default items-center justify-center py-1", className),
2625
- ref,
2626
- ...props,
2627
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.ChevronUp, { className: "h-4 w-4" })
2628
- }
2629
- ));
2630
- SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
2631
- var SelectScrollDownButton = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2632
- SelectPrimitive.ScrollDownButton,
2633
- {
2634
- className: cn("flex cursor-default items-center justify-center py-1", className),
2635
- ref,
2636
- ...props,
2637
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.ChevronDown, { className: "h-4 w-4" })
2638
- }
2639
- ));
2640
- SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
2641
- var SelectContent = React4.forwardRef(({ children, className, position = "popper", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
2642
- SelectPrimitive.Content,
2643
- {
2644
- className: cn(
2645
- "relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded border bg-card text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
2646
- position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
2647
- className
2648
- ),
2649
- position,
2650
- ref,
2651
- ...props,
2652
- children: [
2653
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectScrollUpButton, {}),
2654
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2655
- SelectPrimitive.Viewport,
2656
- {
2657
- className: cn(
2658
- "p-1",
2659
- position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
2660
- ),
2661
- children
2662
- }
2663
- ),
2664
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectScrollDownButton, {})
2665
- ]
2666
- }
2667
- ) }));
2668
- SelectContent.displayName = SelectPrimitive.Content.displayName;
2669
- var SelectLabel = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2670
- SelectPrimitive.Label,
2671
- {
2672
- className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className),
2673
- ref,
2674
- ...props
2675
- }
2676
- ));
2677
- SelectLabel.displayName = SelectPrimitive.Label.displayName;
2678
- var SelectItem = React4.forwardRef(({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
2679
- SelectPrimitive.Item,
2680
- {
2681
- className: cn(
2682
- "relative flex w-full cursor-default select-none items-center rounded py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
2683
- className
2684
- ),
2685
- ref,
2686
- ...props,
2687
- children: [
2688
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.Check, { className: "h-4 w-4" }) }) }),
2689
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SelectPrimitive.ItemText, { children })
2690
- ]
2691
- }
2692
- ));
2693
- SelectItem.displayName = SelectPrimitive.Item.displayName;
2694
- var SelectSeparator = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
2695
- SelectPrimitive.Separator,
2696
- {
2697
- className: cn("-mx-1 my-1 h-px bg-muted", className),
2698
- ref,
2699
- ...props
2700
- }
2701
- ));
2702
- SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
2703
-
2704
- // src/components/AdvancedComponents/EditableField.tsx
2705
- var import_react = require("react");
2706
-
2707
- // src/components/ui/label.tsx
2708
- var React5 = __toESM(require("react"));
2709
- var LabelPrimitive = __toESM(require("@radix-ui/react-label"));
2710
- var import_class_variance_authority2 = require("class-variance-authority");
2711
- var import_jsx_runtime5 = require("react/jsx-runtime");
2712
- var labelVariants = (0, import_class_variance_authority2.cva)(
2713
- "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
2714
- );
2715
- var Label2 = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
2716
- Label2.displayName = LabelPrimitive.Root.displayName;
2717
-
2718
- // src/components/AdvancedComponents/EditableField.tsx
2719
- var import_lucide_react2 = require("lucide-react");
2720
- var import_jsx_runtime6 = require("react/jsx-runtime");
2721
- var EditableField = ({
2722
- fieldName,
2723
- value,
2724
- label,
2725
- multiline = false,
2726
- onSave,
2727
- className = "",
2728
- disabled = false
2729
- }) => {
2730
- const [isEditing, setIsEditing] = (0, import_react.useState)(false);
2731
- const [tempValue, setTempValue] = (0, import_react.useState)("");
2732
- const handleFieldClick = () => {
2733
- if (!disabled) {
2734
- setIsEditing(true);
2735
- setTempValue(value);
2736
- }
2737
- };
2738
- const handleSave = async () => {
2739
- if (tempValue !== value) {
2740
- await onSave(fieldName, tempValue);
2741
- }
2742
- setIsEditing(false);
2743
- };
2744
- const handleKeyPress = (e) => {
2745
- if (e.key === "Enter" && !multiline) {
2746
- handleSave();
2747
- } else if (e.key === "Enter" && e.ctrlKey && multiline) {
2748
- handleSave();
2749
- } else if (e.key === "Escape") {
2750
- setIsEditing(false);
2751
- setTempValue("");
2752
- }
2753
- };
2754
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: `space-y-2 ${className}`, children: [
2755
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Label2, { children: label }),
2756
- isEditing ? multiline ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
2757
- Textarea,
2758
- {
2759
- value: tempValue,
2760
- onChange: (e) => setTempValue(e.target.value),
2761
- onBlur: handleSave,
2762
- onKeyDown: handleKeyPress,
2763
- autoFocus: true,
2764
- rows: 4,
2765
- className: "resize-none"
2766
- }
2767
- ) : /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
2768
- Input,
2769
- {
2770
- value: tempValue,
2771
- onChange: (e) => setTempValue(e.target.value),
2772
- onBlur: handleSave,
2773
- onKeyPress: handleKeyPress,
2774
- autoFocus: true,
2775
- className: "text-lg font-medium"
2776
- }
2777
- ) : /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
2778
- "div",
2779
- {
2780
- onClick: handleFieldClick,
2781
- className: `${disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"} hover:bg-muted/50 p-2 rounded border border-transparent hover:border-border transition-colors group ${multiline ? "min-h-[100px] max-h-[300px]" : "min-h-[40px]"} flex items-start gap-2 overflow-hidden`,
2782
- children: [
2783
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: `${multiline ? "text-sm text-muted-foreground max-h-[280px] overflow-y-auto break-words" : "text-lg font-medium text-foreground"} flex-1 whitespace-pre-wrap break-words`, children: value || "Click to edit..." }),
2784
- !disabled && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react2.Edit, { className: "h-4 w-4 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity flex-shrink-0" })
2785
- ]
2786
- }
2787
- )
2788
- ] });
2789
- };
2790
-
2791
- // src/components/DigitalColleagues/document-edit.tsx
2792
- var import_jsx_runtime7 = require("react/jsx-runtime");
2793
- function DocumentEdit({
2794
- document,
2795
- onSave,
2796
- onCancel,
2797
- availableDocuments = [],
2798
- knowledgeContexts = []
2799
- }) {
2800
- const [editedDocument, setEditedDocument] = (0, import_react3.useState)({
2801
- ...document,
2802
- updatedAt: /* @__PURE__ */ new Date()
2803
- });
2804
- const [isMetadataExpanded, setIsMetadataExpanded] = (0, import_react3.useState)(false);
2805
- const [metadataFields, setMetadataFields] = (0, import_react3.useState)(() => {
2806
- const fields = [];
2807
- let idCounter = 0;
2808
- const contextKeys = /* @__PURE__ */ new Set();
2809
- knowledgeContexts.forEach((context) => {
2810
- context.menuConfig.groupBy.forEach((key) => contextKeys.add(key));
2811
- });
2812
- contextKeys.forEach((key) => {
2813
- fields.push({
2814
- id: `context_field_${idCounter++}`,
2815
- key,
2816
- value: document.metadata?.[key] ? String(document.metadata[key]) : "",
2817
- isContextKey: true
2818
- });
2819
- });
2820
- if (document.metadata) {
2821
- Object.entries(document.metadata).forEach(([key, value]) => {
2822
- if (!contextKeys.has(key)) {
2823
- fields.push({
2824
- id: `existing_field_${idCounter++}`,
2825
- key,
2826
- value: String(value),
2827
- isContextKey: false
2828
- });
2829
- }
2830
- });
2831
- }
2832
- return fields;
2833
- });
2834
- const formatIcon = (format) => {
2835
- switch (format) {
2836
- case "markdown":
2837
- case "mdx":
2838
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.FileText, { className: "h-6 w-6 text-primary" });
2839
- case "richtext":
2840
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.File, { className: "h-6 w-6 text-success" });
2841
- case "text":
2842
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Type, { className: "h-6 w-6 text-muted-foreground" });
2843
- default:
2844
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.File, { className: "h-6 w-6 text-muted-foreground" });
2845
- }
2846
- };
2847
- const formatBadgeColor = (format) => {
2848
- switch (format) {
2849
- case "markdown":
2850
- return "bg-primary/10 text-primary border-primary/20";
2851
- case "mdx":
2852
- return "bg-secondary/10 text-secondary border-secondary/20";
2853
- case "richtext":
2854
- return "bg-success/10 text-success border-success/20";
2855
- case "text":
2856
- return "bg-muted/50 text-muted-foreground border-muted-foreground/20";
2857
- default:
2858
- return "bg-muted text-muted-foreground border-border";
2859
- }
2860
- };
2861
- const getSuggestedMetadataKeys = () => {
2862
- const keysFromDocuments = /* @__PURE__ */ new Set();
2863
- availableDocuments.forEach((doc) => {
2864
- if (doc.metadata) {
2865
- Object.keys(doc.metadata).forEach((key) => keysFromDocuments.add(key));
2866
- }
2867
- });
2868
- return {
2869
- documentKeys: Array.from(keysFromDocuments).sort()
2870
- };
2871
- };
2872
- const getSuggestedValues = (key) => {
2873
- const values = /* @__PURE__ */ new Set();
2874
- availableDocuments.forEach((doc) => {
2875
- if (doc.metadata?.[key]) {
2876
- values.add(String(doc.metadata[key]));
2877
- }
2878
- });
2879
- return Array.from(values).sort();
2880
- };
2881
- const suggestedKeys = getSuggestedMetadataKeys();
2882
- const handleSave = () => {
2883
- onSave(editedDocument);
2884
- };
2885
- (0, import_react3.useEffect)(() => {
2886
- const metadata = metadataFields.filter((field) => field.key.trim() !== "" && field.value.trim() !== "").reduce(
2887
- (acc, field) => ({
2888
- ...acc,
2889
- [field.key]: field.value
2890
- }),
2891
- {}
2892
- );
2893
- setEditedDocument((prev) => ({
2894
- ...prev,
2895
- metadata: Object.keys(metadata).length > 0 ? metadata : void 0
2896
- }));
2897
- }, [metadataFields]);
2898
- const handleMetadataKeyChange = (fieldId, newKey) => {
2899
- setMetadataFields(
2900
- (prev) => prev.map((field) => field.id === fieldId ? { ...field, key: newKey } : field)
2901
- );
2902
- };
2903
- const handleMetadataValueChange = (fieldId, newValue) => {
2904
- setMetadataFields(
2905
- (prev) => prev.map((field) => field.id === fieldId ? { ...field, value: newValue } : field)
2906
- );
2907
- };
2908
- const handleMetadataValueSelect = (fieldId, value) => {
2909
- if (value === "__custom__") {
2910
- handleMetadataValueChange(fieldId, "");
2911
- } else {
2912
- handleMetadataValueChange(fieldId, value);
2913
- }
2914
- };
2915
- const handleAddMetadataField = () => {
2916
- const newField = {
2917
- id: `field_${Date.now()}`,
2918
- key: "",
2919
- value: "",
2920
- isContextKey: false
2921
- };
2922
- setMetadataFields((prev) => [...prev, newField]);
2923
- };
2924
- const handleRemoveMetadataField = (fieldId) => {
2925
- setMetadataFields((prev) => prev.filter((field) => field.id !== fieldId));
2926
- };
2927
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
2928
- import_react2.motion.div,
2929
- {
2930
- initial: { opacity: 0, y: 20 },
2931
- animate: { opacity: 1, y: 0 },
2932
- transition: { duration: 0.3 },
2933
- className: "h-full flex flex-col",
2934
- children: [
2935
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "border-b border-border bg-card p-8 pb-6", children: [
2936
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-start justify-between gap-4 mb-4", children: [
2937
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-start gap-4 flex-1 min-w-0", children: [
2938
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex-shrink-0 p-3 rounded-xl bg-muted border border-border", children: formatIcon(editedDocument.format) }),
2939
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex-1 min-w-0", children: [
2940
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-start gap-4 mb-2 leading-tight", children: [
2941
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
2942
- EditableField,
2943
- {
2944
- fieldName: "title",
2945
- value: editedDocument.title,
2946
- label: "",
2947
- onSave: (fieldName, value) => setEditedDocument((prev) => ({ ...prev, title: value })),
2948
- className: "[&>div:last-child]:text-2xl [&>div:last-child]:font-bold [&>div:last-child]:leading-tight [&>div:last-child]:text-foreground [&>div:last-child]:p-0 [&>div:last-child]:border-0 [&>div:last-child]:hover:bg-muted/30 [&>div:last-child]:min-h-0"
2949
- }
2950
- ) }),
2951
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
2952
- "span",
2953
- {
2954
- className: `inline-flex items-center px-3 py-1 rounded-full text-sm font-medium border ${formatBadgeColor(
2955
- editedDocument.format
2956
- )} flex-shrink-0 mt-1`,
2957
- children: editedDocument.format.toUpperCase()
2958
- }
2959
- )
2960
- ] }),
2961
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "mt-2", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
2962
- EditableField,
2963
- {
2964
- fieldName: "description",
2965
- value: editedDocument.description || "Click to add description...",
2966
- label: "",
2967
- multiline: true,
2968
- onSave: (fieldName, value) => setEditedDocument((prev) => ({ ...prev, description: value })),
2969
- className: "[&>div:last-child]:text-muted-foreground [&>div:last-child]:text-lg [&>div:last-child]:leading-relaxed [&>div:last-child]:p-0 [&>div:last-child]:border-0 [&>div:last-child]:hover:bg-muted/30 [&>div:last-child]:min-h-0"
2970
- }
2971
- ) })
2972
- ] })
2973
- ] }),
2974
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
2975
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
2976
- Button,
2977
- {
2978
- variant: "ghost",
2979
- size: "sm",
2980
- onClick: () => setIsMetadataExpanded(!isMetadataExpanded),
2981
- className: "gap-2",
2982
- children: [
2983
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Info, { className: "h-4 w-4" }),
2984
- "Metadata",
2985
- metadataFields.filter(
2986
- (field) => field.key.trim() !== "" && field.value.trim() !== ""
2987
- ).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "inline-flex items-center justify-center w-5 h-5 text-xs font-medium bg-primary/10 text-primary rounded-full", children: metadataFields.filter(
2988
- (field) => field.key.trim() !== "" && field.value.trim() !== ""
2989
- ).length }),
2990
- isMetadataExpanded ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.ChevronDown, { className: "h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.ChevronRight, { className: "h-4 w-4" })
2991
- ]
2992
- }
2993
- ),
2994
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Button, { variant: "outline", size: "sm", onClick: onCancel, className: "gap-2", children: [
2995
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.X, { className: "h-4 w-4" }),
2996
- "Cancel"
2997
- ] }),
2998
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Button, { size: "sm", onClick: handleSave, className: "gap-2", children: [
2999
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Save, { className: "h-4 w-4" }),
3000
- "Save Changes"
3001
- ] })
3002
- ] })
3003
- ] }),
3004
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
3005
- import_react2.motion.div,
3006
- {
3007
- initial: false,
3008
- animate: {
3009
- height: isMetadataExpanded ? "auto" : 0,
3010
- opacity: isMetadataExpanded ? 1 : 0
3011
- },
3012
- transition: { duration: 0.2, ease: "easeInOut" },
3013
- className: "overflow-hidden",
3014
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "pt-4 border-t border-border mt-4", children: [
3015
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center justify-between mb-3", children: [
3016
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("h3", { className: "text-sm font-semibold text-foreground flex items-center gap-2", children: [
3017
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Info, { className: "h-4 w-4" }),
3018
- "Document Metadata"
3019
- ] }),
3020
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
3021
- Button,
3022
- {
3023
- type: "button",
3024
- variant: "outline",
3025
- size: "sm",
3026
- onClick: handleAddMetadataField,
3027
- className: "gap-1 h-8",
3028
- children: [
3029
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Plus, { className: "h-3 w-3" }),
3030
- "Add Field"
3031
- ]
3032
- }
3033
- )
3034
- ] }),
3035
- suggestedKeys.documentKeys.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("p", { className: "text-xs text-muted-foreground mb-3", children: [
3036
- "Additional from documents: ",
3037
- suggestedKeys.documentKeys.slice(0, 4).join(", "),
3038
- suggestedKeys.documentKeys.length > 4 && ` +${suggestedKeys.documentKeys.length - 4} more`
3039
- ] }),
3040
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "bg-muted rounded-lg p-4 border border-border", children: metadataFields.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "space-y-2", children: metadataFields.map((field) => {
3041
- const suggestedValues = getSuggestedValues(field.key);
3042
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex gap-2 items-center", children: [
3043
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
3044
- Input,
3045
- {
3046
- value: field.key,
3047
- onChange: (e) => handleMetadataKeyChange(field.id, e.target.value),
3048
- placeholder: "Key",
3049
- className: `w-32 h-8 text-sm ${field.isContextKey ? "bg-primary/5 border-primary/30" : ""}`,
3050
- list: `metadata-keys-${field.id}`,
3051
- disabled: field.isContextKey
3052
- }
3053
- ),
3054
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("datalist", { id: `metadata-keys-${field.id}`, children: suggestedKeys.documentKeys.map((suggestedKey) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("option", { value: suggestedKey }, suggestedKey)) }),
3055
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "text-muted-foreground text-sm", children: "=" }),
3056
- suggestedValues.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
3057
- Select,
3058
- {
3059
- value: field.value || "",
3060
- onValueChange: (newValue) => handleMetadataValueSelect(field.id, newValue),
3061
- children: [
3062
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(SelectTrigger, { className: "flex-1 h-8 text-sm", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(SelectValue, { placeholder: "Value" }) }),
3063
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(SelectContent, { children: [
3064
- suggestedValues.map((suggestedValue) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(SelectItem, { value: suggestedValue, children: suggestedValue }, suggestedValue)),
3065
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(SelectItem, { value: "__custom__", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "text-muted-foreground text-xs", children: "Custom..." }) })
3066
- ] })
3067
- ]
3068
- }
3069
- ) : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
3070
- Input,
3071
- {
3072
- value: field.value || "",
3073
- onChange: (e) => handleMetadataValueChange(field.id, e.target.value),
3074
- placeholder: "Value",
3075
- className: "flex-1 h-8 text-sm"
3076
- }
3077
- ),
3078
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
3079
- Button,
3080
- {
3081
- type: "button",
3082
- variant: "ghost",
3083
- size: "sm",
3084
- onClick: () => handleRemoveMetadataField(field.id),
3085
- className: "h-8 w-8 p-0 text-muted-foreground hover:text-destructive",
3086
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.X, { className: "h-3 w-3" })
3087
- }
3088
- )
3089
- ] }, field.id);
3090
- }) }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "text-center py-4", children: [
3091
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-sm text-muted-foreground mb-2", children: "No metadata fields" }),
3092
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-xs text-muted-foreground", children: 'Click "Add Field" to create metadata' })
3093
- ] }) })
3094
- ] })
3095
- }
3096
- )
3097
- ] }),
3098
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex-1 overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "p-8", children: [
3099
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("label", { className: "block text-sm font-medium text-foreground mb-4", children: "Content" }),
3100
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
3101
- Textarea,
3102
- {
3103
- value: editedDocument.content || "",
3104
- onChange: (e) => setEditedDocument((prev) => ({ ...prev, content: e.target.value })),
3105
- placeholder: "Document content...",
3106
- className: "min-h-[400px] font-mono text-sm",
3107
- style: { resize: "vertical" }
3108
- }
3109
- )
3110
- ] }) })
3111
- ]
3112
- }
3113
- );
3114
- }
3115
-
3116
- // src/components/DigitalColleagues/document-preview.tsx
3117
- var import_jsx_runtime8 = require("react/jsx-runtime");
3118
- var defaultMarkdownRenderer = (content) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
3119
- "div",
3120
- {
3121
- className: "prose prose-slate dark:prose-invert max-w-none",
3122
- dangerouslySetInnerHTML: {
3123
- __html: content.replace(/\n/g, "<br>").replace(/\*\*(.*?)\*\*/g, "<strong>$1</strong>").replace(/\*(.*?)\*/g, "<em>$1</em>").replace(/`(.*?)`/g, '<code class="bg-muted px-1 py-0.5 rounded text-sm">$1</code>').replace(/^# (.*$)/gm, '<h1 class="text-2xl font-bold mb-4">$1</h1>').replace(/^## (.*$)/gm, '<h2 class="text-xl font-semibold mb-3">$1</h2>').replace(/^### (.*$)/gm, '<h3 class="text-lg font-medium mb-2">$1</h3>')
3124
- }
3125
- }
3126
- );
3127
- var defaultTextRenderer = (content) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "whitespace-pre-wrap font-mono text-sm leading-relaxed", children: content });
3128
- var defaultRichTextRenderer = (content) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "prose prose-slate dark:prose-invert max-w-none", children: [
3129
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "bg-amber-50 dark:bg-amber-950/20 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("p", { className: "text-amber-800 dark:text-amber-200 text-sm", children: [
3130
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("strong", { children: "RichText Renderer:" }),
3131
- " This is a placeholder. Integrate with @payloadcms/richtext-lexical for full rendering."
3132
- ] }) }),
3133
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("pre", { className: "text-sm", children: content })
3134
- ] });
3135
- var defaultMDXRenderer = (content) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "prose prose-slate dark:prose-invert max-w-none", children: [
3136
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "bg-blue-50 dark:bg-blue-950/20 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("p", { className: "text-blue-800 dark:text-blue-200 text-sm", children: [
3137
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("strong", { children: "MDX Renderer:" }),
3138
- " This is a placeholder. Integrate with @mdx-js/react for full MDX rendering."
3139
- ] }) }),
3140
- defaultMarkdownRenderer(content)
3141
- ] });
3142
- function DocumentPreview({
3143
- document,
3144
- onDocumentUpdate,
3145
- editable = true,
3146
- renderers,
3147
- availableDocuments = [],
3148
- knowledgeContexts = []
3149
- }) {
3150
- const [isEditing, setIsEditing] = (0, import_react5.useState)(false);
3151
- const [isMetadataExpanded, setIsMetadataExpanded] = (0, import_react5.useState)(false);
3152
- const formatIcon = (format) => {
3153
- switch (format) {
3154
- case "markdown":
3155
- case "mdx":
3156
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.FileText, { className: "h-6 w-6 text-primary" });
3157
- case "richtext":
3158
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.File, { className: "h-6 w-6 text-success" });
3159
- case "text":
3160
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Type, { className: "h-6 w-6 text-muted-foreground" });
3161
- default:
3162
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.File, { className: "h-6 w-6 text-muted-foreground" });
3163
- }
3164
- };
3165
- const formatBadgeColor = (format) => {
3166
- switch (format) {
3167
- case "markdown":
3168
- return "bg-primary/10 text-primary border-primary/20";
3169
- case "mdx":
3170
- return "bg-secondary/10 text-secondary border-secondary/20";
3171
- case "richtext":
3172
- return "bg-success/10 text-success border-success/20";
3173
- case "text":
3174
- return "bg-muted/50 text-muted-foreground border-muted-foreground/20";
3175
- default:
3176
- return "bg-muted text-muted-foreground border-border";
3177
- }
3178
- };
3179
- const renderContent = (content, format) => {
3180
- const defaultRenderers = {
3181
- markdown: defaultMarkdownRenderer,
3182
- mdx: defaultMDXRenderer,
3183
- richtext: defaultRichTextRenderer,
3184
- text: defaultTextRenderer
3185
- };
3186
- const renderer = renderers?.[format] || defaultRenderers[format];
3187
- if (renderer) {
3188
- return renderer(content);
3189
- }
3190
- return defaultTextRenderer(content);
3191
- };
3192
- const handleSave = (updatedDocument) => {
3193
- setIsEditing(false);
3194
- onDocumentUpdate?.(updatedDocument);
3195
- };
3196
- const handleCancel = () => {
3197
- setIsEditing(false);
3198
- };
3199
- if (isEditing) {
3200
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
3201
- DocumentEdit,
3202
- {
3203
- document,
3204
- onSave: handleSave,
3205
- onCancel: handleCancel,
3206
- availableDocuments,
3207
- knowledgeContexts
3208
- }
3209
- );
3210
- }
3211
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
3212
- import_react4.motion.div,
3213
- {
3214
- initial: { opacity: 0, y: 20 },
3215
- animate: { opacity: 1, y: 0 },
3216
- transition: { duration: 0.3 },
3217
- className: "h-full flex flex-col",
3218
- children: [
3219
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "border-b border-border bg-card p-8 pb-6", children: [
3220
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-start justify-between gap-4 mb-4", children: [
3221
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-start gap-4 flex-1 min-w-0", children: [
3222
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "flex-shrink-0 p-3 rounded-xl bg-muted border border-border", children: formatIcon(document.format) }),
3223
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex-1 min-w-0", children: [
3224
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("h1", { className: "text-2xl font-bold text-foreground mb-2 leading-tight", children: [
3225
- document.title,
3226
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: `inline-flex ml-4 items-center px-3 py-1 rounded-full text-sm font-medium border ${formatBadgeColor(document.format)}`, children: document.format.toUpperCase() })
3227
- ] }),
3228
- document.description && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "text-muted-foreground text-lg leading-relaxed", children: document.description })
3229
- ] })
3230
- ] }),
3231
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
3232
- document.metadata && Object.keys(document.metadata).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
3233
- Button,
3234
- {
3235
- variant: "ghost",
3236
- size: "sm",
3237
- onClick: () => setIsMetadataExpanded(!isMetadataExpanded),
3238
- className: "gap-2",
3239
- children: [
3240
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Info, { className: "h-4 w-4" }),
3241
- "Metadata",
3242
- isMetadataExpanded ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.ChevronRight, { className: "h-4 w-4" })
3243
- ]
3244
- }
3245
- ),
3246
- editable && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
3247
- Button,
3248
- {
3249
- variant: "outline",
3250
- size: "sm",
3251
- onClick: () => setIsEditing(true),
3252
- className: "gap-2",
3253
- children: [
3254
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Edit3, { className: "h-4 w-4" }),
3255
- "Edit"
3256
- ]
3257
- }
3258
- )
3259
- ] })
3260
- ] }),
3261
- document.metadata && Object.keys(document.metadata).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
3262
- import_react4.motion.div,
3263
- {
3264
- initial: false,
3265
- animate: {
3266
- height: isMetadataExpanded ? "auto" : 0,
3267
- opacity: isMetadataExpanded ? 1 : 0
3268
- },
3269
- transition: { duration: 0.2, ease: "easeInOut" },
3270
- className: "overflow-hidden",
3271
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "pt-4 border-t border-border mt-4", children: [
3272
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("h3", { className: "text-sm font-semibold text-foreground mb-3 flex items-center gap-2", children: [
3273
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Info, { className: "h-4 w-4" }),
3274
- "Document Metadata"
3275
- ] }),
3276
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "bg-muted rounded-lg p-4 border border-border", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-x-6 gap-y-2 text-sm", children: Object.entries(document.metadata).map(([key, value]) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex flex-col gap-1", children: [
3277
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: "text-muted-foreground font-medium text-xs uppercase tracking-wide", children: key.replace(/([A-Z])/g, " $1").trim() }),
3278
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: "text-foreground font-medium", children: String(value) })
3279
- ] }, key)) }) })
3280
- ] })
3281
- }
3282
- )
3283
- ] }),
3284
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "flex-1 overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "p-8", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "space-y-4", children: document.content ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "relative", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "bg-card border border-border rounded-xl p-6 overflow-hidden", children: renderContent(document.content, document.format) }) }) : /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "text-center py-12 bg-muted rounded-xl border-2 border-dashed border-border", children: [
3285
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "w-16 h-16 mx-auto mb-4 rounded-full bg-background flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.FileText, { className: "h-8 w-8 text-muted-foreground" }) }),
3286
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("h4", { className: "text-foreground font-medium mb-1", children: "No content available" }),
3287
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "text-muted-foreground text-sm", children: "This document doesn't have preview content" })
3288
- ] }) }) }) })
3289
- ]
3290
- }
3291
- );
3292
- }
3293
- // Annotate the CommonJS export names for ESM import in node:
3294
- 0 && (module.exports = {
3295
- DocumentPreview
3296
- });