@cossistant/react 0.0.4 → 0.0.6

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 (321) hide show
  1. package/README.md +27 -0
  2. package/_virtual/rolldown_runtime.js +19 -0
  3. package/conversation.d.ts +23 -0
  4. package/conversation.d.ts.map +1 -1
  5. package/hooks/index.d.ts +5 -3
  6. package/hooks/index.js +7 -5
  7. package/hooks/private/store/use-conversations-store.d.ts +8 -0
  8. package/hooks/private/store/use-conversations-store.d.ts.map +1 -1
  9. package/hooks/private/store/use-conversations-store.js +8 -0
  10. package/hooks/private/store/use-conversations-store.js.map +1 -1
  11. package/hooks/private/store/use-store-selector.d.ts +4 -0
  12. package/hooks/private/store/use-store-selector.d.ts.map +1 -1
  13. package/hooks/private/store/use-store-selector.js +5 -2
  14. package/hooks/private/store/use-store-selector.js.map +1 -1
  15. package/hooks/private/store/use-website-store.d.ts +4 -0
  16. package/hooks/private/store/use-website-store.d.ts.map +1 -1
  17. package/hooks/private/store/use-website-store.js +6 -3
  18. package/hooks/private/store/use-website-store.js.map +1 -1
  19. package/hooks/private/typing.d.ts +35 -0
  20. package/hooks/private/typing.d.ts.map +1 -0
  21. package/hooks/private/typing.js +49 -0
  22. package/hooks/private/typing.js.map +1 -0
  23. package/hooks/private/use-client-query.d.ts +5 -0
  24. package/hooks/private/use-client-query.d.ts.map +1 -1
  25. package/hooks/private/use-client-query.js +5 -0
  26. package/hooks/private/use-client-query.js.map +1 -1
  27. package/hooks/private/use-grouped-messages.d.ts +10 -4
  28. package/hooks/private/use-grouped-messages.d.ts.map +1 -1
  29. package/hooks/private/use-grouped-messages.js +24 -4
  30. package/hooks/private/use-grouped-messages.js.map +1 -1
  31. package/hooks/private/use-multimodal-input.d.ts.map +1 -1
  32. package/hooks/private/use-rest-client.d.ts.map +1 -1
  33. package/hooks/private/use-visitor-typing-reporter.d.ts +6 -0
  34. package/hooks/private/use-visitor-typing-reporter.d.ts.map +1 -1
  35. package/hooks/private/use-visitor-typing-reporter.js +6 -0
  36. package/hooks/private/use-visitor-typing-reporter.js.map +1 -1
  37. package/hooks/use-composer-refocus.d.ts.map +1 -1
  38. package/hooks/use-conversation-auto-seen.d.ts +9 -0
  39. package/hooks/use-conversation-auto-seen.d.ts.map +1 -1
  40. package/hooks/use-conversation-auto-seen.js +44 -3
  41. package/hooks/use-conversation-auto-seen.js.map +1 -1
  42. package/hooks/use-conversation-history-page.d.ts.map +1 -1
  43. package/hooks/use-conversation-history-page.js +16 -18
  44. package/hooks/use-conversation-history-page.js.map +1 -1
  45. package/hooks/use-conversation-lifecycle.d.ts.map +1 -1
  46. package/hooks/use-conversation-lifecycle.js +2 -4
  47. package/hooks/use-conversation-lifecycle.js.map +1 -1
  48. package/hooks/use-conversation-page.d.ts +6 -0
  49. package/hooks/use-conversation-page.d.ts.map +1 -1
  50. package/hooks/use-conversation-page.js +41 -3
  51. package/hooks/use-conversation-page.js.map +1 -1
  52. package/hooks/use-conversation-preview.d.ts +61 -0
  53. package/hooks/use-conversation-preview.d.ts.map +1 -0
  54. package/hooks/use-conversation-preview.js +173 -0
  55. package/hooks/use-conversation-preview.js.map +1 -0
  56. package/hooks/use-conversation-seen.d.ts +4 -0
  57. package/hooks/use-conversation-seen.d.ts.map +1 -1
  58. package/hooks/use-conversation-seen.js +4 -0
  59. package/hooks/use-conversation-seen.js.map +1 -1
  60. package/hooks/use-conversation-timeline-items.d.ts +4 -0
  61. package/hooks/use-conversation-timeline-items.d.ts.map +1 -1
  62. package/hooks/use-conversation-timeline-items.js +4 -0
  63. package/hooks/use-conversation-timeline-items.js.map +1 -1
  64. package/hooks/use-conversation-timeline.d.ts +32 -0
  65. package/hooks/use-conversation-timeline.d.ts.map +1 -0
  66. package/hooks/use-conversation-timeline.js +41 -0
  67. package/hooks/use-conversation-timeline.js.map +1 -0
  68. package/hooks/use-conversation-typing.d.ts +4 -0
  69. package/hooks/use-conversation-typing.d.ts.map +1 -1
  70. package/hooks/use-conversation-typing.js +4 -0
  71. package/hooks/use-conversation-typing.js.map +1 -1
  72. package/hooks/use-conversation.d.ts +11 -0
  73. package/hooks/use-conversation.d.ts.map +1 -1
  74. package/hooks/use-conversation.js +11 -0
  75. package/hooks/use-conversation.js.map +1 -1
  76. package/hooks/use-conversations.d.ts +12 -0
  77. package/hooks/use-conversations.d.ts.map +1 -1
  78. package/hooks/use-conversations.js +12 -0
  79. package/hooks/use-conversations.js.map +1 -1
  80. package/hooks/use-create-conversation.d.ts +5 -0
  81. package/hooks/use-create-conversation.d.ts.map +1 -1
  82. package/hooks/use-create-conversation.js +12 -9
  83. package/hooks/use-create-conversation.js.map +1 -1
  84. package/hooks/use-home-page.d.ts.map +1 -1
  85. package/hooks/use-home-page.js +6 -4
  86. package/hooks/use-home-page.js.map +1 -1
  87. package/hooks/use-message-composer.d.ts.map +1 -1
  88. package/hooks/use-realtime-support.d.ts.map +1 -1
  89. package/hooks/use-send-message.d.ts +9 -0
  90. package/hooks/use-send-message.d.ts.map +1 -1
  91. package/hooks/use-send-message.js +15 -13
  92. package/hooks/use-send-message.js.map +1 -1
  93. package/hooks/use-visitor.d.ts.map +1 -1
  94. package/hooks/use-visitor.js +28 -30
  95. package/hooks/use-visitor.js.map +1 -1
  96. package/hooks/use-window-visibility-focus.d.ts +4 -0
  97. package/hooks/use-window-visibility-focus.d.ts.map +1 -1
  98. package/hooks/use-window-visibility-focus.js +5 -2
  99. package/hooks/use-window-visibility-focus.js.map +1 -1
  100. package/identify-visitor.d.ts +12 -3
  101. package/identify-visitor.d.ts.map +1 -1
  102. package/identify-visitor.js +58 -9
  103. package/identify-visitor.js.map +1 -1
  104. package/index.d.ts +10 -7
  105. package/index.js +10 -9
  106. package/package.json +12 -16
  107. package/primitives/avatar/avatar.d.ts.map +1 -1
  108. package/primitives/avatar/fallback.d.ts.map +1 -1
  109. package/primitives/avatar/fallback.js +1 -3
  110. package/primitives/avatar/fallback.js.map +1 -1
  111. package/primitives/avatar/image.d.ts.map +1 -1
  112. package/primitives/avatar/index.d.ts +1 -0
  113. package/primitives/bubble.d.ts +2 -0
  114. package/primitives/bubble.d.ts.map +1 -1
  115. package/primitives/bubble.js +8 -2
  116. package/primitives/bubble.js.map +1 -1
  117. package/primitives/button.d.ts.map +1 -1
  118. package/primitives/conversation-timeline.d.ts.map +1 -1
  119. package/primitives/conversation-timeline.js +58 -5
  120. package/primitives/conversation-timeline.js.map +1 -1
  121. package/primitives/index.d.ts +1 -0
  122. package/primitives/index.parts.d.ts +1 -0
  123. package/primitives/multimodal-input.d.ts.map +1 -1
  124. package/primitives/timeline-item-group.d.ts +7 -7
  125. package/primitives/timeline-item-group.d.ts.map +1 -1
  126. package/primitives/timeline-item-group.js.map +1 -1
  127. package/primitives/timeline-item.d.ts +1 -1
  128. package/primitives/timeline-item.d.ts.map +1 -1
  129. package/primitives/timeline-item.js +7 -1
  130. package/primitives/timeline-item.js.map +1 -1
  131. package/primitives/window.d.ts +1 -1
  132. package/primitives/window.d.ts.map +1 -1
  133. package/primitives/window.js +4 -4
  134. package/primitives/window.js.map +1 -1
  135. package/provider.d.ts +23 -43
  136. package/provider.d.ts.map +1 -1
  137. package/provider.js +152 -49
  138. package/provider.js.map +1 -1
  139. package/realtime/event-filter.d.ts +4 -0
  140. package/realtime/event-filter.d.ts.map +1 -1
  141. package/realtime/event-filter.js +4 -0
  142. package/realtime/event-filter.js.map +1 -1
  143. package/realtime/index.js +1 -1
  144. package/realtime/provider.d.ts +7 -2
  145. package/realtime/provider.d.ts.map +1 -1
  146. package/realtime/provider.js +23 -1
  147. package/realtime/provider.js.map +1 -1
  148. package/realtime/seen-store.d.ts +13 -0
  149. package/realtime/seen-store.d.ts.map +1 -1
  150. package/realtime/seen-store.js +14 -2
  151. package/realtime/seen-store.js.map +1 -1
  152. package/realtime/support-provider.d.ts +1 -2
  153. package/realtime/support-provider.d.ts.map +1 -1
  154. package/realtime/support-provider.js +19 -20
  155. package/realtime/support-provider.js.map +1 -1
  156. package/realtime/typing-store.d.ts +18 -0
  157. package/realtime/typing-store.d.ts.map +1 -1
  158. package/realtime/typing-store.js +19 -2
  159. package/realtime/typing-store.js.map +1 -1
  160. package/realtime/use-realtime.d.ts +8 -4
  161. package/realtime/use-realtime.d.ts.map +1 -1
  162. package/realtime/use-realtime.js +4 -0
  163. package/realtime/use-realtime.js.map +1 -1
  164. package/realtime-events.d.ts +15 -1
  165. package/realtime-events.d.ts.map +1 -1
  166. package/schemas.d.ts +6 -0
  167. package/schemas.d.ts.map +1 -1
  168. package/support/components/avatar-stack.d.ts +8 -4
  169. package/support/components/avatar-stack.d.ts.map +1 -1
  170. package/support/components/avatar-stack.js +4 -0
  171. package/support/components/avatar-stack.js.map +1 -1
  172. package/support/components/avatar.d.ts +11 -6
  173. package/support/components/avatar.d.ts.map +1 -1
  174. package/support/components/avatar.js +4 -0
  175. package/support/components/avatar.js.map +1 -1
  176. package/support/components/bubble.d.ts.map +1 -1
  177. package/support/components/bubble.js +29 -6
  178. package/support/components/bubble.js.map +1 -1
  179. package/support/components/button.d.ts +8 -5
  180. package/support/components/button.d.ts.map +1 -1
  181. package/support/components/button.js +5 -1
  182. package/support/components/button.js.map +1 -1
  183. package/support/components/container.d.ts +0 -1
  184. package/support/components/container.d.ts.map +1 -1
  185. package/support/components/container.js +2 -8
  186. package/support/components/container.js.map +1 -1
  187. package/support/components/conversation-button-link.d.ts +8 -21
  188. package/support/components/conversation-button-link.d.ts.map +1 -1
  189. package/support/components/conversation-button-link.js +62 -178
  190. package/support/components/conversation-button-link.js.map +1 -1
  191. package/support/components/conversation-event.d.ts.map +1 -1
  192. package/support/components/conversation-event.js +4 -0
  193. package/support/components/conversation-event.js.map +1 -1
  194. package/support/components/conversation-timeline.d.ts +10 -1
  195. package/support/components/conversation-timeline.d.ts.map +1 -1
  196. package/support/components/conversation-timeline.js +63 -57
  197. package/support/components/conversation-timeline.js.map +1 -1
  198. package/support/components/cossistant-branding.d.ts +5 -2
  199. package/support/components/cossistant-branding.d.ts.map +1 -1
  200. package/support/components/cossistant-branding.js +3 -0
  201. package/support/components/cossistant-branding.js.map +1 -1
  202. package/support/components/header.d.ts.map +1 -1
  203. package/support/components/header.js +2 -2
  204. package/support/components/header.js.map +1 -1
  205. package/support/components/icons.d.ts.map +1 -1
  206. package/support/components/multimodal-input.d.ts.map +1 -1
  207. package/support/components/multimodal-input.js +5 -24
  208. package/support/components/multimodal-input.js.map +1 -1
  209. package/support/components/navigation-tab.d.ts +7 -2
  210. package/support/components/navigation-tab.d.ts.map +1 -1
  211. package/support/components/navigation-tab.js +4 -0
  212. package/support/components/navigation-tab.js.map +1 -1
  213. package/support/components/support-content.d.ts +1 -1
  214. package/support/components/support-content.d.ts.map +1 -1
  215. package/support/components/support-content.js +7 -10
  216. package/support/components/support-content.js.map +1 -1
  217. package/support/components/text-effect.d.ts +5 -2
  218. package/support/components/text-effect.d.ts.map +1 -1
  219. package/support/components/text-effect.js +4 -0
  220. package/support/components/text-effect.js.map +1 -1
  221. package/support/components/timeline-identification-tool.d.ts +7 -0
  222. package/support/components/timeline-identification-tool.d.ts.map +1 -0
  223. package/support/components/timeline-identification-tool.js +139 -0
  224. package/support/components/timeline-identification-tool.js.map +1 -0
  225. package/support/components/timeline-message-group.d.ts +2 -1
  226. package/support/components/timeline-message-group.d.ts.map +1 -1
  227. package/support/components/timeline-message-group.js +4 -19
  228. package/support/components/timeline-message-group.js.map +1 -1
  229. package/support/components/timeline-message-item.d.ts +6 -2
  230. package/support/components/timeline-message-item.d.ts.map +1 -1
  231. package/support/components/timeline-message-item.js +8 -4
  232. package/support/components/timeline-message-item.js.map +1 -1
  233. package/support/components/typing-indicator.d.ts +5 -2
  234. package/support/components/typing-indicator.d.ts.map +1 -1
  235. package/support/components/typing-indicator.js +4 -4
  236. package/support/components/typing-indicator.js.map +1 -1
  237. package/support/components/watermark.d.ts.map +1 -1
  238. package/support/context/websocket.d.ts +8 -0
  239. package/support/context/websocket.d.ts.map +1 -1
  240. package/support/context/websocket.js +12 -6
  241. package/support/context/websocket.js.map +1 -1
  242. package/support/index.d.ts +8 -8
  243. package/support/index.d.ts.map +1 -1
  244. package/support/index.js +18 -18
  245. package/support/index.js.map +1 -1
  246. package/support/pages/conversation-history.js +46 -54
  247. package/support/pages/conversation-history.js.map +1 -1
  248. package/support/pages/conversation.d.ts +3 -6
  249. package/support/pages/conversation.d.ts.map +1 -1
  250. package/support/pages/conversation.js +19 -9
  251. package/support/pages/conversation.js.map +1 -1
  252. package/support/pages/home.d.ts +2 -2
  253. package/support/pages/home.d.ts.map +1 -1
  254. package/support/pages/home.js +64 -77
  255. package/support/pages/home.js.map +1 -1
  256. package/support/store/support-store.d.ts +18 -2
  257. package/support/store/support-store.d.ts.map +1 -1
  258. package/support/store/support-store.js +20 -5
  259. package/support/store/support-store.js.map +1 -1
  260. package/support/{support-CMoDLQoC.css → support-Ck4jy29i.css} +1 -2
  261. package/support/support-Ck4jy29i.css.map +1 -0
  262. package/support/text/index.d.ts +15 -2
  263. package/support/text/index.d.ts.map +1 -1
  264. package/support/text/index.js +15 -2
  265. package/support/text/index.js.map +1 -1
  266. package/support/text/locales/en.js +22 -4
  267. package/support/text/locales/en.js.map +1 -1
  268. package/support/text/locales/es.js +18 -0
  269. package/support/text/locales/es.js.map +1 -1
  270. package/support/text/locales/fr.js +18 -0
  271. package/support/text/locales/fr.js.map +1 -1
  272. package/support/text/locales/keys.d.ts +69 -9
  273. package/support/text/locales/keys.d.ts.map +1 -1
  274. package/support/text/locales/keys.js +18 -0
  275. package/support/text/locales/keys.js.map +1 -1
  276. package/support/text/runtime.d.ts +21 -0
  277. package/support/text/runtime.d.ts.map +1 -1
  278. package/support/text/runtime.js +21 -0
  279. package/support/text/runtime.js.map +1 -1
  280. package/support/utils/index.d.ts +4 -0
  281. package/support/utils/index.d.ts.map +1 -1
  282. package/support/utils/index.js +4 -1
  283. package/support/utils/index.js.map +1 -1
  284. package/support/utils/time.d.ts +3 -0
  285. package/support/utils/time.d.ts.map +1 -1
  286. package/support/utils/time.js +3 -0
  287. package/support/utils/time.js.map +1 -1
  288. package/support-config.d.ts +2 -1
  289. package/support-config.d.ts.map +1 -1
  290. package/support-config.js.map +1 -1
  291. package/support.css +2 -2
  292. package/tailwind.css +404 -0
  293. package/timeline-item.d.ts +10 -0
  294. package/timeline-item.d.ts.map +1 -1
  295. package/utils/conversation.d.ts +7 -0
  296. package/utils/conversation.d.ts.map +1 -0
  297. package/utils/conversation.js +18 -0
  298. package/utils/conversation.js.map +1 -0
  299. package/utils/id.d.ts +3 -0
  300. package/utils/id.d.ts.map +1 -1
  301. package/utils/id.js +3 -0
  302. package/utils/id.js.map +1 -1
  303. package/utils/index.d.ts +2 -1
  304. package/utils/index.js +2 -1
  305. package/utils/metadata-hash.d.ts +12 -0
  306. package/utils/metadata-hash.d.ts.map +1 -0
  307. package/utils/metadata-hash.js +26 -0
  308. package/utils/metadata-hash.js.map +1 -0
  309. package/utils/text.d.ts +3 -0
  310. package/utils/text.d.ts.map +1 -1
  311. package/utils/text.js +3 -0
  312. package/utils/text.js.map +1 -1
  313. package/utils/use-render-element.d.ts +3 -0
  314. package/utils/use-render-element.d.ts.map +1 -1
  315. package/utils/use-render-element.js +3 -0
  316. package/utils/use-render-element.js.map +1 -1
  317. package/support/context/config.d.ts +0 -32
  318. package/support/context/config.d.ts.map +0 -1
  319. package/support/context/config.js +0 -27
  320. package/support/context/config.js.map +0 -1
  321. package/support/support-CMoDLQoC.css.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"support-config.js","names":[],"sources":["../src/support-config.tsx"],"sourcesContent":["\"use client\";\n\nimport type { DefaultMessage } from \"@cossistant/types\";\nimport * as React from \"react\";\nimport { useSupport } from \"./provider\";\n\nexport type SupportConfigProps = {\n\tdefaultMessages?: DefaultMessage[];\n\tquickOptions?: string[];\n};\n\n/**\n * Component exposed by Cossistant allowing you to change the support widget default messages and quick response whenever rendered.\n */\nexport const SupportConfig = ({\n\tdefaultMessages,\n\tquickOptions,\n}: SupportConfigProps) => {\n\tconst { setDefaultMessages, setQuickOptions } = useSupport();\n\n\t// Only update when the arrays actually change content\n\tReact.useEffect(() => {\n\t\tif (defaultMessages) {\n\t\t\tsetDefaultMessages(defaultMessages);\n\t\t}\n\t}, [defaultMessages, setDefaultMessages]);\n\n\tReact.useEffect(() => {\n\t\tif (quickOptions) {\n\t\t\tsetQuickOptions(quickOptions);\n\t\t}\n\t}, [quickOptions, setQuickOptions]);\n\n\treturn null;\n};\n\nSupportConfig.displayName = \"SupportConfig\";\n"],"mappings":";;;;;;;;;;AAcA,MAAa,iBAAiB,EAC7B,iBACA,mBACyB;CACzB,MAAM,EAAE,oBAAoB,oBAAoB,YAAY;AAG5D,SAAM,gBAAgB;AACrB,MAAI,gBACH,oBAAmB,gBAAgB;IAElC,CAAC,iBAAiB,mBAAmB,CAAC;AAEzC,SAAM,gBAAgB;AACrB,MAAI,aACH,iBAAgB,aAAa;IAE5B,CAAC,cAAc,gBAAgB,CAAC;AAEnC,QAAO;;AAGR,cAAc,cAAc"}
1
+ {"version":3,"file":"support-config.js","names":[],"sources":["../src/support-config.tsx"],"sourcesContent":["\"use client\";\n\nimport type { DefaultMessage } from \"@cossistant/types\";\nimport * as React from \"react\";\nimport { useSupport } from \"./provider\";\n\nexport type SupportConfigProps = {\n\tdefaultMessages?: DefaultMessage[];\n\tquickOptions?: string[];\n};\n\n/**\n * Component exposed by Cossistant allowing you to change the support widget default messages and quick response whenever rendered.\n */\nexport const SupportConfig = ({\n\tdefaultMessages,\n\tquickOptions,\n}: SupportConfigProps): React.ReactElement | null => {\n\tconst { setDefaultMessages, setQuickOptions } = useSupport();\n\n\t// Only update when the arrays actually change content\n\tReact.useEffect(() => {\n\t\tif (defaultMessages) {\n\t\t\tsetDefaultMessages(defaultMessages);\n\t\t}\n\t}, [defaultMessages, setDefaultMessages]);\n\n\tReact.useEffect(() => {\n\t\tif (quickOptions) {\n\t\t\tsetQuickOptions(quickOptions);\n\t\t}\n\t}, [quickOptions, setQuickOptions]);\n\n\treturn null;\n};\n\nSupportConfig.displayName = \"SupportConfig\";\n"],"mappings":";;;;;;;;;;AAcA,MAAa,iBAAiB,EAC7B,iBACA,mBACoD;CACpD,MAAM,EAAE,oBAAoB,oBAAoB,YAAY;AAG5D,SAAM,gBAAgB;AACrB,MAAI,gBACH,oBAAmB,gBAAgB;IAElC,CAAC,iBAAiB,mBAAmB,CAAC;AAEzC,SAAM,gBAAgB;AACrB,MAAI,aACH,iBAAgB,aAAa;IAE5B,CAAC,cAAc,gBAAgB,CAAC;AAEnC,QAAO;;AAGR,cAAc,cAAc"}
package/support.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! tailwindcss v4.1.15 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--container-xs:20rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}.cossistant{border-color:var(--co-border);scroll-behavior:smooth;color-scheme:normal;--co-font-sans:var(--co-theme-font-sans,var(--font-sans,"Geist","Inter",sans-serif));--co-font-mono:var(--co-theme-font-mono,var(--font-mono,"Geist Mono","Inter Mono",monospace));--co-border-color:var(--co-theme-border-color,var(--color-border,oklch(92.2% 0 0)));--co-radius:var(--co-theme-radius,var(--radius,.625rem));--co-background-base:var(--co-theme-background,var(--background,oklch(99% 0 0)));--co-foreground-base:var(--co-theme-foreground,var(--foreground,oklch(14.5% 0 0)));--co-popover-base:var(--co-theme-popover,var(--popover,var(--co-background-base)));--co-popover-foreground-base:var(--co-theme-popover-foreground,var(--popover-foreground,var(--co-foreground-base)));--co-primary-base:var(--co-theme-primary,var(--primary,oklch(20.5% 0 0)));--co-primary-foreground-base:var(--co-theme-primary-foreground,var(--primary-foreground,oklch(98.5% 0 0)));--co-secondary-base:var(--co-theme-secondary,var(--secondary,oklch(97% 0 0)));--co-secondary-foreground-base:var(--co-theme-secondary-foreground,var(--secondary-foreground,oklch(20.5% 0 0)));--co-border-base:var(--co-theme-border,var(--border,oklch(92.2% 0 0)));--co-input-base:var(--co-theme-input,var(--input,oklch(92.2% 0 0)));--co-ring-base:var(--co-theme-ring,var(--ring,var(--co-primary-base)));--co-accent-base:var(--co-theme-accent,var(--accent,var(--co-primary-base)));--co-accent-foreground-base:var(--co-theme-accent-foreground,var(--accent-foreground,var(--co-primary-foreground-base)));--co-background-50-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-50-mix:color-mix(in oklch,var(--co-background-base)98%,var(--co-foreground-base))}}.cossistant{--co-background-100-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-100-mix:color-mix(in oklch,var(--co-background-base)97%,var(--co-foreground-base))}}.cossistant{--co-background-200-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-200-mix:color-mix(in oklch,var(--co-background-base)96%,var(--co-foreground-base))}}.cossistant{--co-background-300-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-300-mix:color-mix(in oklch,var(--co-background-base)95%,var(--co-foreground-base))}}.cossistant{--co-background-400-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-400-mix:color-mix(in oklch,var(--co-background-base)94%,var(--co-foreground-base))}}.cossistant{--co-background-500-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-500-mix:color-mix(in oklch,var(--co-background-base)93%,var(--co-foreground-base))}}.cossistant{--co-background-600-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-600-mix:color-mix(in oklch,var(--co-background-base)92%,var(--co-foreground-base))}}.cossistant{--co-muted-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-muted-mix:color-mix(in oklch,var(--co-background-base)85%,var(--co-foreground-base))}}.cossistant{--co-muted-foreground-mix:var(--co-foreground-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-muted-foreground-mix:color-mix(in oklch,var(--co-foreground-base)70%,white)}}.cossistant{--co-background:var(--co-background-base);--co-background-50:var(--co-theme-background-50,var(--co-background-50-mix,oklch(92% 0 0)));--co-background-100:var(--co-theme-background-100,var(--co-background-100-mix,oklch(93% 0 0)));--co-background-200:var(--co-theme-background-200,var(--co-background-200-mix,oklch(94% 0 0)));--co-background-300:var(--co-theme-background-300,var(--co-background-300-mix,oklch(95% 0 0)));--co-background-400:var(--co-theme-background-400,var(--co-background-400-mix,oklch(96% 0 0)));--co-background-500:var(--co-theme-background-500,var(--co-background-500-mix,oklch(97% 0 0)));--co-background-600:var(--co-theme-background-600,var(--co-background-600-mix,oklch(98% 0 0)));--co-foreground:var(--co-foreground-base);--co-popover:var(--co-popover-base);--co-popover-foreground:var(--co-popover-foreground-base);--co-primary:var(--co-primary-base);--co-primary-foreground:var(--co-primary-foreground-base);--co-secondary:var(--co-secondary-base);--co-secondary-foreground:var(--co-secondary-foreground-base);--co-muted:var(--co-theme-muted,var(--muted,var(--co-muted-mix,oklch(97% 0 0))));--co-muted-foreground:var(--co-theme-muted-foreground,var(--muted-foreground,var(--co-muted-foreground-mix,oklch(55.6% 0 0))));--co-border:var(--co-border-base);--co-input:var(--co-input-base);--co-ring:var(--co-ring-base);--co-accent:var(--co-accent-base);--co-accent-foreground:var(--co-accent-foreground-base);--co-pink:var(--co-theme-pink,oklch(76.3% .152 354));--co-yellow:var(--co-theme-yellow,oklch(86.4% .144 99));--co-blue:var(--co-theme-blue,oklch(72.5% .132 241));--co-orange:var(--co-theme-orange,oklch(74.5% .166 50));--co-destructive:var(--co-theme-destructive,oklch(57.7% .245 27.325));--co-destructive-foreground:var(--co-theme-destructive-foreground,oklch(57.7% .245 27.325));--co-success:var(--co-theme-success,oklch(71.7% .18 142));--co-success-foreground:var(--co-theme-success-foreground,oklch(26.5% .052 142.7));--co-neutral:var(--co-theme-neutral,oklch(60.8% 0 0));--co-neutral-foreground:var(--co-theme-neutral-foreground,oklch(25.6% 0 0));--co-warning:var(--co-theme-warning,oklch(86.4% .144 99));--co-warning-foreground:var(--co-theme-warning-foreground,oklch(41.4% .071 99))}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-base:var(--co-theme-background,var(--background,oklch(15.5% 0 0)));--co-foreground-base:var(--co-theme-foreground,var(--foreground,oklch(98.5% 0 0)));--co-border-color:var(--co-theme-border-color,var(--color-border,oklch(26.9% 0 0)));--co-popover-base:var(--co-theme-popover,var(--popover,oklch(14.5% 0 0)));--co-popover-foreground-base:var(--co-theme-popover-foreground,var(--popover-foreground,oklch(98.5% 0 0)));--co-primary-base:var(--co-theme-primary,var(--primary,oklch(98.5% 0 0)));--co-primary-foreground-base:var(--co-theme-primary-foreground,var(--primary-foreground,oklch(20.5% 0 0)));--co-secondary-base:var(--co-theme-secondary,var(--secondary,oklch(26.9% 0 0)));--co-secondary-foreground-base:var(--co-theme-secondary-foreground,var(--secondary-foreground,oklch(98.5% 0 0)));--co-border-base:var(--co-theme-border,var(--border,oklch(26.9% 0 0)));--co-input-base:var(--co-theme-input,var(--input,oklch(26.9% 0 0)));--co-ring-base:var(--co-theme-ring,var(--ring,var(--co-primary-base)));--co-accent-base:var(--co-theme-accent,var(--accent,var(--co-primary-base)));--co-accent-foreground-base:var(--co-theme-accent-foreground,var(--accent-foreground,var(--co-primary-foreground-base)));--co-muted-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-muted-mix:color-mix(in oklch,var(--co-background-base)55%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-muted-foreground-mix:var(--co-foreground-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-muted-foreground-mix:color-mix(in oklch,var(--co-foreground-base)65%,white)}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-50-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-50-mix:color-mix(in oklch,var(--co-background-base)98%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-100-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-100-mix:color-mix(in oklch,var(--co-background-base)96%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-200-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-200-mix:color-mix(in oklch,var(--co-background-base)94%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-300-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-300-mix:color-mix(in oklch,var(--co-background-base)92%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-400-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-400-mix:color-mix(in oklch,var(--co-background-base)90%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-500-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-500-mix:color-mix(in oklch,var(--co-background-base)88%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-600-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){:is(.dark .cossistant,.cossistant[data-color-scheme=dark]){--co-background-600-mix:color-mix(in oklch,var(--co-background-base)86%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-pink:var(--co-theme-pink,oklch(84.2% .109 354));--co-yellow:var(--co-theme-yellow,oklch(90.3% .111 99));--co-blue:var(--co-theme-blue,oklch(79.8% .089 241));--co-orange:var(--co-theme-orange,oklch(68.2% .194 50));--co-destructive:var(--co-theme-destructive,oklch(39.6% .141 25.723));--co-destructive-foreground:var(--co-theme-destructive-foreground,oklch(63.7% .237 25.331));--co-success:var(--co-theme-success,oklch(60% .15 142));--co-success-foreground:var(--co-theme-success-foreground,oklch(85% .12 142));--co-neutral:var(--co-theme-neutral,oklch(50% 0 0));--co-neutral-foreground:var(--co-theme-neutral-foreground,oklch(85% 0 0));--co-warning:var(--co-theme-warning,oklch(90.3% .111 99));--co-warning-foreground:var(--co-theme-warning-foreground,oklch(85% .1 99))}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.-top-1{top:calc(var(--spacing)*-1)}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing)*4)}.-right-1{right:calc(var(--spacing)*-1)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.left-4{left:calc(var(--spacing)*4)}.z-5{z-index:5}.z-10{z-index:10}.z-\[1000\]{z-index:1000}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-6{margin-right:calc(var(--spacing)*6)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.size-1{width:calc(var(--spacing)*1);height:calc(var(--spacing)*1)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-12{width:calc(var(--spacing)*12);height:calc(var(--spacing)*12)}.size-full{width:100%;height:100%}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-14{height:calc(var(--spacing)*14)}.h-18{height:calc(var(--spacing)*18)}.h-32{height:calc(var(--spacing)*32)}.h-48{height:calc(var(--spacing)*48)}.h-\[50\%\]{height:50%}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-\[1\.25rem\]{min-height:1.25rem}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-\[50\%\]{width:50%}.w-full{width:100%}.w-max{width:max-content}.max-w-\[90\%\]{max-width:90%}.max-w-\[150px\]{max-width:150px}.max-w-\[300px\]{max-width:300px}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-4{min-width:calc(var(--spacing)*4)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-none{overscroll-behavior:none}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-br-sm{border-bottom-right-radius:var(--radius-sm)}.rounded-bl-sm{border-bottom-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-co-border,.border-co-border\/50{border-color:var(--co-border)}@supports (color:color-mix(in lab, red, red)){.border-co-border\/50{border-color:color-mix(in oklab,var(--co-border)50%,transparent)}}.border-co-border\/80{border-color:var(--co-border)}@supports (color:color-mix(in lab, red, red)){.border-co-border\/80{border-color:color-mix(in oklab,var(--co-border)80%,transparent)}}.border-transparent{border-color:#0000}.bg-co-background{background-color:var(--co-background)}.bg-co-background-50{background-color:var(--co-background-50)}.bg-co-background-100{background-color:var(--co-background-100)}.bg-co-background-200{background-color:var(--co-background-200)}.bg-co-background-300{background-color:var(--co-background-300)}.bg-co-destructive{background-color:var(--co-destructive)}.bg-co-muted{background-color:var(--co-muted)}.bg-co-neutral\/20{background-color:var(--co-neutral)}@supports (color:color-mix(in lab, red, red)){.bg-co-neutral\/20{background-color:color-mix(in oklab,var(--co-neutral)20%,transparent)}}.bg-co-primary{background-color:var(--co-primary)}.bg-co-success\/20{background-color:var(--co-success)}@supports (color:color-mix(in lab, red, red)){.bg-co-success\/20{background-color:color-mix(in oklab,var(--co-success)20%,transparent)}}.bg-co-warning\/20{background-color:var(--co-warning)}@supports (color:color-mix(in lab, red, red)){.bg-co-warning\/20{background-color:color-mix(in oklab,var(--co-warning)20%,transparent)}}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-co-background{--tw-gradient-from:var(--co-background);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-co-background\/80{--tw-gradient-from:var(--co-background)}@supports (color:color-mix(in lab, red, red)){.from-co-background\/80{--tw-gradient-from:color-mix(in oklab,var(--co-background)80%,transparent)}}.from-co-background\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-co-background\/30{--tw-gradient-via:var(--co-background)}@supports (color:color-mix(in lab, red, red)){.via-co-background\/30{--tw-gradient-via:color-mix(in oklab,var(--co-background)30%,transparent)}}.via-co-background\/30{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-co-background\/70{--tw-gradient-via:var(--co-background)}@supports (color:color-mix(in lab, red, red)){.via-co-background\/70{--tw-gradient-via:color-mix(in oklab,var(--co-background)70%,transparent)}}.via-co-background\/70{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.\[mask-size\:100\%_100\%\]{-webkit-mask-size:100% 100%;mask-size:100% 100%}.\[mask-repeat\:no-repeat\]{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.pt-18{padding-top:calc(var(--spacing)*18)}.pt-20{padding-top:calc(var(--spacing)*20)}.pr-1{padding-right:calc(var(--spacing)*1)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-3{padding-left:calc(var(--spacing)*3)}.text-center{text-align:center}.text-left{text-align:left}.font-co-sans{font-family:var(--co-font-sans)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.text-co-destructive{color:var(--co-destructive)}.text-co-destructive-foreground{color:var(--co-destructive-foreground)}.text-co-foreground{color:var(--co-foreground)}.text-co-muted-foreground{color:var(--co-muted-foreground)}.text-co-neutral-foreground{color:var(--co-neutral-foreground)}.text-co-primary{color:var(--co-primary)}.text-co-primary-foreground{color:var(--co-primary-foreground)}.text-co-primary\/40{color:var(--co-primary)}@supports (color:color-mix(in lab, red, red)){.text-co-primary\/40{color:color-mix(in oklab,var(--co-primary)40%,transparent)}}.text-co-primary\/60{color:var(--co-primary)}@supports (color:color-mix(in lab, red, red)){.text-co-primary\/60{color:color-mix(in oklab,var(--co-primary)60%,transparent)}}.text-co-primary\/80{color:var(--co-primary)}@supports (color:color-mix(in lab, red, red)){.text-co-primary\/80{color:color-mix(in oklab,var(--co-primary)80%,transparent)}}.text-co-success-foreground{color:var(--co-success-foreground)}.text-co-warning-foreground{color:var(--co-warning-foreground)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-100{opacity:1}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.group-hover\/btn\:translate-x-0\.5:is(:where(.group\/btn):hover *){--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\/btn\:text-co-primary:is(:where(.group\/btn):hover *){color:var(--co-primary)}.group-hover\/btn\:opacity-0:is(:where(.group\/btn):hover *){opacity:0}.group-hover\/btn\:opacity-100:is(:where(.group\/btn):hover *){opacity:1}}.first-of-type\:rounded-t:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.last-of-type\:rounded-b:last-of-type{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.last-of-type\:border-b-0:last-of-type{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:cursor-pointer:hover{cursor:pointer}.hover\:bg-co-background-100:hover{background-color:var(--co-background-100)}.hover\:bg-co-background-200:hover{background-color:var(--co-background-200)}.hover\:bg-co-muted:hover{background-color:var(--co-muted)}.hover\:bg-co-primary\/90:hover{background-color:var(--co-primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-co-primary\/90:hover{background-color:color-mix(in oklab,var(--co-primary)90%,transparent)}}.hover\:text-co-blue:hover{color:var(--co-blue)}.hover\:text-co-destructive:hover{color:var(--co-destructive)}.hover\:text-co-foreground:hover{color:var(--co-foreground)}.hover\:text-co-primary:hover{color:var(--co-primary)}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.data-\[open\=true\]\:bg-co-primary\/90[data-open=true]{background-color:var(--co-primary)}@supports (color:color-mix(in lab, red, red)){.data-\[open\=true\]\:bg-co-primary\/90[data-open=true]{background-color:color-mix(in oklab,var(--co-primary)90%,transparent)}}@media not all and (min-width:48rem){.max-md\:fixed{position:fixed}.max-md\:relative{position:relative}.max-md\:inset-0{inset:calc(var(--spacing)*0)}.max-md\:h-full{height:100%}.max-md\:w-full{width:100%}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:relative{position:relative}.md\:top-16{top:calc(var(--spacing)*16)}.md\:right-0{right:calc(var(--spacing)*0)}.md\:bottom-16{bottom:calc(var(--spacing)*16)}.md\:left-0{left:calc(var(--spacing)*0)}.md\:z-\[9900\]{z-index:9900}.md\:z-\[9999\]{z-index:9999}.md\:aspect-\[9\/18\]{aspect-ratio:9/18}.md\:h-full{height:100%}.md\:max-h-\[calc\(100vh-6rem\)\]{max-height:calc(100vh - 6rem)}.md\:w-\[400px\]{width:400px}.md\:w-full{width:100%}.md\:rounded-lg{border-radius:var(--radius-lg)}.md\:rounded-none{border-radius:0}.md\:border{border-style:var(--tw-border-style);border-width:1px}.md\:border-0{border-style:var(--tw-border-style);border-width:0}.md\:border-co-border{border-color:var(--co-border)}.md\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.md\:shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.dark\:bg-co-background-200:is(.dark *){background-color:var(--co-background-200)}.dark\:bg-co-background-300:is(.dark *){background-color:var(--co-background-300)}.dark\:bg-co-background-500:is(.dark *){background-color:var(--co-background-500)}.dark\:bg-co-background-600:is(.dark *){background-color:var(--co-background-600)}@media (hover:hover){.dark\:hover\:bg-co-background-200:is(.dark *):hover{background-color:var(--co-background-200)}.dark\:hover\:bg-co-background-300:is(.dark *):hover{background-color:var(--co-background-300)}.dark\:hover\:bg-co-background-400:is(.dark *):hover{background-color:var(--co-background-400)}}@media (min-width:48rem){.md\:dark\:shadow-co-background-600\/50:is(.dark *){--tw-shadow-color:var(--co-background-600)}@supports (color:color-mix(in lab, red, red)){.md\:dark\:shadow-co-background-600\/50:is(.dark *){--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--co-background-600)50%,transparent)var(--tw-shadow-alpha),transparent)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.cossistant .animation-delay-0{animation-delay:0s}.cossistant .animation-delay-200{animation-delay:.2s}.cossistant .animation-delay-400{animation-delay:.4s}.cossistant .dot-bounce-1{animation:1.4s infinite bounce-dot}.cossistant .dot-bounce-2{animation:1.4s .16s infinite bounce-dot}.cossistant .dot-bounce-3{animation:1.4s .32s infinite bounce-dot}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
1
+ /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */
2
+ @layer base{.cossistant{border-color:var(--co-border);scroll-behavior:smooth;color-scheme:normal;--co-font-sans:var(--co-theme-font-sans,var(--font-sans,"Geist","Inter",sans-serif));--co-font-mono:var(--co-theme-font-mono,var(--font-mono,"Geist Mono","Inter Mono",monospace));--co-border-color:var(--co-theme-border-color,var(--color-border,oklch(92.2% 0 0)));--co-radius:var(--co-theme-radius,var(--radius,.625rem));--co-background-base:var(--co-theme-background,var(--background,oklch(99% 0 0)));--co-foreground-base:var(--co-theme-foreground,var(--foreground,oklch(14.5% 0 0)));--co-popover-base:var(--co-theme-popover,var(--popover,var(--co-background-base)));--co-popover-foreground-base:var(--co-theme-popover-foreground,var(--popover-foreground,var(--co-foreground-base)));--co-primary-base:var(--co-theme-primary,var(--primary,oklch(20.5% 0 0)));--co-primary-foreground-base:var(--co-theme-primary-foreground,var(--primary-foreground,oklch(98.5% 0 0)));--co-secondary-base:var(--co-theme-secondary,var(--secondary,oklch(97% 0 0)));--co-secondary-foreground-base:var(--co-theme-secondary-foreground,var(--secondary-foreground,oklch(20.5% 0 0)));--co-border-base:var(--co-theme-border,var(--border,oklch(92.2% 0 0)));--co-input-base:var(--co-theme-input,var(--input,oklch(92.2% 0 0)));--co-ring-base:var(--co-theme-ring,var(--ring,var(--co-primary-base)));--co-accent-base:var(--co-theme-accent,var(--accent,var(--co-primary-base)));--co-accent-foreground-base:var(--co-theme-accent-foreground,var(--accent-foreground,var(--co-primary-foreground-base)));--co-background-50-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-50-mix:color-mix(in oklch,var(--co-background-base)98%,var(--co-foreground-base))}}.cossistant{--co-background-100-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-100-mix:color-mix(in oklch,var(--co-background-base)97%,var(--co-foreground-base))}}.cossistant{--co-background-200-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-200-mix:color-mix(in oklch,var(--co-background-base)96%,var(--co-foreground-base))}}.cossistant{--co-background-300-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-300-mix:color-mix(in oklch,var(--co-background-base)95%,var(--co-foreground-base))}}.cossistant{--co-background-400-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-400-mix:color-mix(in oklch,var(--co-background-base)94%,var(--co-foreground-base))}}.cossistant{--co-background-500-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-500-mix:color-mix(in oklch,var(--co-background-base)93%,var(--co-foreground-base))}}.cossistant{--co-background-600-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-background-600-mix:color-mix(in oklch,var(--co-background-base)92%,var(--co-foreground-base))}}.cossistant{--co-muted-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-muted-mix:color-mix(in oklch,var(--co-background-base)85%,var(--co-foreground-base))}}.cossistant{--co-muted-foreground-mix:var(--co-foreground-base)}@supports (color:color-mix(in lab, red, red)){.cossistant{--co-muted-foreground-mix:color-mix(in oklch,var(--co-foreground-base)70%,white)}}.cossistant{--co-background:var(--co-background-base);--co-background-50:var(--co-theme-background-50,var(--co-background-50-mix,oklch(92% 0 0)));--co-background-100:var(--co-theme-background-100,var(--co-background-100-mix,oklch(93% 0 0)));--co-background-200:var(--co-theme-background-200,var(--co-background-200-mix,oklch(94% 0 0)));--co-background-300:var(--co-theme-background-300,var(--co-background-300-mix,oklch(95% 0 0)));--co-background-400:var(--co-theme-background-400,var(--co-background-400-mix,oklch(96% 0 0)));--co-background-500:var(--co-theme-background-500,var(--co-background-500-mix,oklch(97% 0 0)));--co-background-600:var(--co-theme-background-600,var(--co-background-600-mix,oklch(98% 0 0)));--co-foreground:var(--co-foreground-base);--co-popover:var(--co-popover-base);--co-popover-foreground:var(--co-popover-foreground-base);--co-primary:var(--co-primary-base);--co-primary-foreground:var(--co-primary-foreground-base);--co-secondary:var(--co-secondary-base);--co-secondary-foreground:var(--co-secondary-foreground-base);--co-muted:var(--co-theme-muted,var(--muted,var(--co-muted-mix,oklch(97% 0 0))));--co-muted-foreground:var(--co-theme-muted-foreground,var(--muted-foreground,var(--co-muted-foreground-mix,oklch(55.6% 0 0))));--co-border:var(--co-border-base);--co-input:var(--co-input-base);--co-ring:var(--co-ring-base);--co-accent:var(--co-accent-base);--co-accent-foreground:var(--co-accent-foreground-base);--co-pink:var(--co-theme-pink,oklch(76.3% .152 354));--co-yellow:var(--co-theme-yellow,oklch(86.4% .144 99));--co-blue:var(--co-theme-blue,oklch(72.5% .132 241));--co-orange:var(--co-theme-orange,oklch(74.5% .166 50));--co-destructive:var(--co-theme-destructive,oklch(57.7% .245 27.325));--co-destructive-foreground:var(--co-theme-destructive-foreground,oklch(57.7% .245 27.325));--co-success:var(--co-theme-success,oklch(71.7% .18 142));--co-success-foreground:var(--co-theme-success-foreground,oklch(26.5% .052 142.7));--co-neutral:var(--co-theme-neutral,oklch(60.8% 0 0));--co-neutral-foreground:var(--co-theme-neutral-foreground,oklch(25.6% 0 0));--co-warning:var(--co-theme-warning,oklch(86.4% .144 99));--co-warning-foreground:var(--co-theme-warning-foreground,oklch(41.4% .071 99))}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-base:var(--co-theme-background,var(--background,oklch(15.5% 0 0)));--co-foreground-base:var(--co-theme-foreground,var(--foreground,oklch(98.5% 0 0)));--co-border-color:var(--co-theme-border-color,var(--color-border,oklch(26.9% 0 0)));--co-popover-base:var(--co-theme-popover,var(--popover,oklch(14.5% 0 0)));--co-popover-foreground-base:var(--co-theme-popover-foreground,var(--popover-foreground,oklch(98.5% 0 0)));--co-primary-base:var(--co-theme-primary,var(--primary,oklch(98.5% 0 0)));--co-primary-foreground-base:var(--co-theme-primary-foreground,var(--primary-foreground,oklch(20.5% 0 0)));--co-secondary-base:var(--co-theme-secondary,var(--secondary,oklch(26.9% 0 0)));--co-secondary-foreground-base:var(--co-theme-secondary-foreground,var(--secondary-foreground,oklch(98.5% 0 0)));--co-border-base:var(--co-theme-border,var(--border,oklch(26.9% 0 0)));--co-input-base:var(--co-theme-input,var(--input,oklch(26.9% 0 0)));--co-ring-base:var(--co-theme-ring,var(--ring,var(--co-primary-base)));--co-accent-base:var(--co-theme-accent,var(--accent,var(--co-primary-base)));--co-accent-foreground-base:var(--co-theme-accent-foreground,var(--accent-foreground,var(--co-primary-foreground-base)));--co-muted-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-muted-mix:color-mix(in oklch,var(--co-background-base)55%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-muted-foreground-mix:var(--co-foreground-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-muted-foreground-mix:color-mix(in oklch,var(--co-foreground-base)65%,white)}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-50-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-50-mix:color-mix(in oklch,var(--co-background-base)98%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-100-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-100-mix:color-mix(in oklch,var(--co-background-base)96%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-200-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-200-mix:color-mix(in oklch,var(--co-background-base)94%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-300-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-300-mix:color-mix(in oklch,var(--co-background-base)92%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-400-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-400-mix:color-mix(in oklch,var(--co-background-base)90%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-500-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-500-mix:color-mix(in oklch,var(--co-background-base)88%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-600-mix:var(--co-background-base)}@supports (color:color-mix(in lab, red, red)){.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-background-600-mix:color-mix(in oklch,var(--co-background-base)86%,var(--co-foreground-base))}}.dark .cossistant,.cossistant[data-color-scheme=dark]{--co-pink:var(--co-theme-pink,oklch(84.2% .109 354));--co-yellow:var(--co-theme-yellow,oklch(90.3% .111 99));--co-blue:var(--co-theme-blue,oklch(79.8% .089 241));--co-orange:var(--co-theme-orange,oklch(68.2% .194 50));--co-destructive:var(--co-theme-destructive,oklch(39.6% .141 25.723));--co-destructive-foreground:var(--co-theme-destructive-foreground,oklch(63.7% .237 25.331));--co-success:var(--co-theme-success,oklch(60% .15 142));--co-success-foreground:var(--co-theme-success-foreground,oklch(85% .12 142));--co-neutral:var(--co-theme-neutral,oklch(50% 0 0));--co-neutral-foreground:var(--co-theme-neutral-foreground,oklch(85% 0 0));--co-warning:var(--co-theme-warning,oklch(90.3% .111 99));--co-warning-foreground:var(--co-theme-warning-foreground,oklch(85% .1 99))}}@layer utilities{.cossistant .animation-delay-0{animation-delay:0s}.cossistant .animation-delay-200{animation-delay:.2s}.cossistant .animation-delay-400{animation-delay:.4s}.cossistant .dot-bounce-1{animation:1.4s infinite bounce-dot}.cossistant .dot-bounce-2{animation:1.4s .16s infinite bounce-dot}.cossistant .dot-bounce-3{animation:1.4s .32s infinite bounce-dot}}
package/tailwind.css ADDED
@@ -0,0 +1,404 @@
1
+ @custom-variant dark (&:is(.dark *));
2
+
3
+ @layer base {
4
+ .cossistant {
5
+ @apply border-co-border;
6
+ @apply scroll-smooth;
7
+
8
+ color-scheme: inherit;
9
+
10
+ /* Typeface tokens */
11
+ --co-font-sans: var(
12
+ --co-theme-font-sans,
13
+ var(--font-sans, "Geist", "Inter", sans-serif)
14
+ );
15
+ --co-font-mono: var(
16
+ --co-theme-font-mono,
17
+ var(--font-mono, "Geist Mono", "Inter Mono", monospace)
18
+ );
19
+
20
+ --co-border-color: var(
21
+ --co-theme-border-color,
22
+ var(--color-border, oklch(92.2% 0 0))
23
+ );
24
+
25
+ /* Core surfaces */
26
+ --co-radius: var(--co-theme-radius, var(--radius, 0.625rem));
27
+ --co-background-base: var(
28
+ --co-theme-background,
29
+ var(--background, oklch(99% 0 0))
30
+ );
31
+ --co-foreground-base: var(
32
+ --co-theme-foreground,
33
+ var(--foreground, oklch(14.5% 0 0))
34
+ );
35
+ --co-popover-base: var(
36
+ --co-theme-popover,
37
+ var(--popover, var(--co-background-base))
38
+ );
39
+ --co-popover-foreground-base: var(
40
+ --co-theme-popover-foreground,
41
+ var(--popover-foreground, var(--co-foreground-base))
42
+ );
43
+ --co-primary-base: var(
44
+ --co-theme-primary,
45
+ var(--primary, oklch(20.5% 0 0))
46
+ );
47
+ --co-primary-foreground-base: var(
48
+ --co-theme-primary-foreground,
49
+ var(--primary-foreground, oklch(98.5% 0 0))
50
+ );
51
+ --co-secondary-base: var(
52
+ --co-theme-secondary,
53
+ var(--secondary, oklch(97% 0 0))
54
+ );
55
+ --co-secondary-foreground-base: var(
56
+ --co-theme-secondary-foreground,
57
+ var(--secondary-foreground, oklch(20.5% 0 0))
58
+ );
59
+ --co-border-base: var(--co-theme-border, var(--border, oklch(92.2% 0 0)));
60
+ --co-input-base: var(--co-theme-input, var(--input, oklch(92.2% 0 0)));
61
+ --co-ring-base: var(--co-theme-ring, var(--ring, var(--co-primary-base)));
62
+ --co-accent-base: var(
63
+ --co-theme-accent,
64
+ var(--accent, var(--co-primary-base))
65
+ );
66
+ --co-accent-foreground-base: var(
67
+ --co-theme-accent-foreground,
68
+ var(--accent-foreground, var(--co-primary-foreground-base))
69
+ );
70
+
71
+ /* Neutral shades derived from the background */
72
+ --co-background-50-mix: color-mix(
73
+ in oklch,
74
+ var(--co-background-base) 98%,
75
+ var(--co-foreground-base)
76
+ );
77
+ --co-background-100-mix: color-mix(
78
+ in oklch,
79
+ var(--co-background-base) 97%,
80
+ var(--co-foreground-base)
81
+ );
82
+ --co-background-200-mix: color-mix(
83
+ in oklch,
84
+ var(--co-background-base) 96%,
85
+ var(--co-foreground-base)
86
+ );
87
+ --co-background-300-mix: color-mix(
88
+ in oklch,
89
+ var(--co-background-base) 95%,
90
+ var(--co-foreground-base)
91
+ );
92
+ --co-background-400-mix: color-mix(
93
+ in oklch,
94
+ var(--co-background-base) 94%,
95
+ var(--co-foreground-base)
96
+ );
97
+ --co-background-500-mix: color-mix(
98
+ in oklch,
99
+ var(--co-background-base) 93%,
100
+ var(--co-foreground-base)
101
+ );
102
+ --co-background-600-mix: color-mix(
103
+ in oklch,
104
+ var(--co-background-base) 92%,
105
+ var(--co-foreground-base)
106
+ );
107
+
108
+ /* Muted tones */
109
+ --co-muted-mix: color-mix(
110
+ in oklch,
111
+ var(--co-background-base) 85%,
112
+ var(--co-foreground-base)
113
+ );
114
+ --co-muted-foreground-mix: color-mix(
115
+ in oklch,
116
+ var(--co-foreground-base) 70%,
117
+ white
118
+ );
119
+
120
+ /* Public tokens consumed by Tailwind theme */
121
+ --co-background: var(--co-background-base);
122
+ --co-background-50: var(
123
+ --co-theme-background-50,
124
+ var(--co-background-50-mix, oklch(92% 0 0))
125
+ );
126
+ --co-background-100: var(
127
+ --co-theme-background-100,
128
+ var(--co-background-100-mix, oklch(93% 0 0))
129
+ );
130
+ --co-background-200: var(
131
+ --co-theme-background-200,
132
+ var(--co-background-200-mix, oklch(94% 0 0))
133
+ );
134
+ --co-background-300: var(
135
+ --co-theme-background-300,
136
+ var(--co-background-300-mix, oklch(95% 0 0))
137
+ );
138
+ --co-background-400: var(
139
+ --co-theme-background-400,
140
+ var(--co-background-400-mix, oklch(96% 0 0))
141
+ );
142
+ --co-background-500: var(
143
+ --co-theme-background-500,
144
+ var(--co-background-500-mix, oklch(97% 0 0))
145
+ );
146
+ --co-background-600: var(
147
+ --co-theme-background-600,
148
+ var(--co-background-600-mix, oklch(98% 0 0))
149
+ );
150
+
151
+ --co-foreground: var(--co-foreground-base);
152
+ --co-popover: var(--co-popover-base);
153
+ --co-popover-foreground: var(--co-popover-foreground-base);
154
+ --co-primary: var(--co-primary-base);
155
+ --co-primary-foreground: var(--co-primary-foreground-base);
156
+ --co-secondary: var(--co-secondary-base);
157
+ --co-secondary-foreground: var(--co-secondary-foreground-base);
158
+ --co-muted: var(
159
+ --co-theme-muted,
160
+ var(--muted, var(--co-muted-mix, oklch(97% 0 0)))
161
+ );
162
+ --co-muted-foreground: var(
163
+ --co-theme-muted-foreground,
164
+ var(--muted-foreground, var(--co-muted-foreground-mix, oklch(55.6% 0 0)))
165
+ );
166
+ --co-border: var(--co-border-base);
167
+ --co-input: var(--co-input-base);
168
+ --co-ring: var(--co-ring-base);
169
+ --co-accent: var(--co-accent-base);
170
+ --co-accent-foreground: var(--co-accent-foreground-base);
171
+
172
+ /* Accent palette */
173
+ --co-pink: var(--co-theme-pink, oklch(76.3% 0.152 354));
174
+ --co-yellow: var(--co-theme-yellow, oklch(86.4% 0.144 99));
175
+ --co-blue: var(--co-theme-blue, oklch(72.5% 0.132 241));
176
+ --co-orange: var(--co-theme-orange, oklch(74.5% 0.166 50));
177
+
178
+ /* Status colors */
179
+ --co-destructive: var(--co-theme-destructive, oklch(57.7% 0.245 27.325));
180
+ --co-destructive-foreground: var(
181
+ --co-theme-destructive-foreground,
182
+ oklch(57.7% 0.245 27.325)
183
+ );
184
+ --co-success: var(--co-theme-success, oklch(71.7% 0.18 142));
185
+ --co-success-foreground: var(
186
+ --co-theme-success-foreground,
187
+ oklch(26.5% 0.052 142.7)
188
+ );
189
+ --co-neutral: var(--co-theme-neutral, oklch(60.8% 0 0));
190
+ --co-neutral-foreground: var(
191
+ --co-theme-neutral-foreground,
192
+ oklch(25.6% 0 0)
193
+ );
194
+ --co-warning: var(--co-theme-warning, oklch(86.4% 0.144 99));
195
+ --co-warning-foreground: var(
196
+ --co-theme-warning-foreground,
197
+ oklch(41.4% 0.071 99)
198
+ );
199
+ }
200
+
201
+ .dark .cossistant,
202
+ .cossistant[data-color-scheme="dark"] {
203
+ /* Provide dark defaults without overriding host tokens */
204
+ --co-background-base: var(
205
+ --co-theme-background,
206
+ var(--background, oklch(15.5% 0 0))
207
+ );
208
+ --co-foreground-base: var(
209
+ --co-theme-foreground,
210
+ var(--foreground, oklch(98.5% 0 0))
211
+ );
212
+ --co-border-color: var(
213
+ --co-theme-border-color,
214
+ var(--color-border, oklch(26.9% 0 0))
215
+ );
216
+ --co-popover-base: var(
217
+ --co-theme-popover,
218
+ var(--popover, oklch(14.5% 0 0))
219
+ );
220
+ --co-popover-foreground-base: var(
221
+ --co-theme-popover-foreground,
222
+ var(--popover-foreground, oklch(98.5% 0 0))
223
+ );
224
+ --co-primary-base: var(
225
+ --co-theme-primary,
226
+ var(--primary, oklch(98.5% 0 0))
227
+ );
228
+ --co-primary-foreground-base: var(
229
+ --co-theme-primary-foreground,
230
+ var(--primary-foreground, oklch(20.5% 0 0))
231
+ );
232
+ --co-secondary-base: var(
233
+ --co-theme-secondary,
234
+ var(--secondary, oklch(26.9% 0 0))
235
+ );
236
+ --co-secondary-foreground-base: var(
237
+ --co-theme-secondary-foreground,
238
+ var(--secondary-foreground, oklch(98.5% 0 0))
239
+ );
240
+ --co-border-base: var(--co-theme-border, var(--border, oklch(26.9% 0 0)));
241
+ --co-input-base: var(--co-theme-input, var(--input, oklch(26.9% 0 0)));
242
+ --co-ring-base: var(--co-theme-ring, var(--ring, var(--co-primary-base)));
243
+ --co-accent-base: var(
244
+ --co-theme-accent,
245
+ var(--accent, var(--co-primary-base))
246
+ );
247
+ --co-accent-foreground-base: var(
248
+ --co-theme-accent-foreground,
249
+ var(--accent-foreground, var(--co-primary-foreground-base))
250
+ );
251
+
252
+ --co-muted-mix: color-mix(
253
+ in oklch,
254
+ var(--co-background-base) 55%,
255
+ var(--co-foreground-base)
256
+ );
257
+ --co-muted-foreground-mix: color-mix(
258
+ in oklch,
259
+ var(--co-foreground-base) 65%,
260
+ white
261
+ );
262
+
263
+ --co-background-50-mix: color-mix(
264
+ in oklch,
265
+ var(--co-background-base) 98%,
266
+ var(--co-foreground-base)
267
+ );
268
+ --co-background-100-mix: color-mix(
269
+ in oklch,
270
+ var(--co-background-base) 96%,
271
+ var(--co-foreground-base)
272
+ );
273
+ --co-background-200-mix: color-mix(
274
+ in oklch,
275
+ var(--co-background-base) 94%,
276
+ var(--co-foreground-base)
277
+ );
278
+ --co-background-300-mix: color-mix(
279
+ in oklch,
280
+ var(--co-background-base) 92%,
281
+ var(--co-foreground-base)
282
+ );
283
+ --co-background-400-mix: color-mix(
284
+ in oklch,
285
+ var(--co-background-base) 90%,
286
+ var(--co-foreground-base)
287
+ );
288
+ --co-background-500-mix: color-mix(
289
+ in oklch,
290
+ var(--co-background-base) 88%,
291
+ var(--co-foreground-base)
292
+ );
293
+ --co-background-600-mix: color-mix(
294
+ in oklch,
295
+ var(--co-background-base) 86%,
296
+ var(--co-foreground-base)
297
+ );
298
+
299
+ --co-pink: var(--co-theme-pink, oklch(84.2% 0.109 354));
300
+ --co-yellow: var(--co-theme-yellow, oklch(90.3% 0.111 99));
301
+ --co-blue: var(--co-theme-blue, oklch(79.8% 0.089 241));
302
+ --co-orange: var(--co-theme-orange, oklch(68.2% 0.194 50));
303
+
304
+ --co-destructive: var(--co-theme-destructive, oklch(39.6% 0.141 25.723));
305
+ --co-destructive-foreground: var(
306
+ --co-theme-destructive-foreground,
307
+ oklch(63.7% 0.237 25.331)
308
+ );
309
+ --co-success: var(--co-theme-success, oklch(60% 0.15 142));
310
+ --co-success-foreground: var(
311
+ --co-theme-success-foreground,
312
+ oklch(85% 0.12 142)
313
+ );
314
+ --co-neutral: var(--co-theme-neutral, oklch(50% 0 0));
315
+ --co-neutral-foreground: var(--co-theme-neutral-foreground, oklch(85% 0 0));
316
+ --co-warning: var(--co-theme-warning, oklch(90.3% 0.111 99));
317
+ --co-warning-foreground: var(
318
+ --co-theme-warning-foreground,
319
+ oklch(85% 0.1 99)
320
+ );
321
+ }
322
+ }
323
+
324
+ @theme inline {
325
+ --font-co-sans: var(--co-font-sans);
326
+ --font-co-mono: var(--co-font-mono);
327
+ --color-co-background: var(--co-background);
328
+ --color-co-background-50: var(--co-background-50);
329
+ --color-co-background-100: var(--co-background-100);
330
+ --color-co-background-200: var(--co-background-200);
331
+ --color-co-background-300: var(--co-background-300);
332
+ --color-co-background-400: var(--co-background-400);
333
+ --color-co-background-500: var(--co-background-500);
334
+ --color-co-background-600: var(--co-background-600);
335
+
336
+ --color-co-foreground: var(--co-foreground);
337
+
338
+ --color-co-primary: var(--co-primary);
339
+ --color-co-primary-foreground: var(--co-primary-foreground);
340
+ --color-co-secondary: var(--co-secondary);
341
+ --color-co-secondary-foreground: var(--co-secondary-foreground);
342
+ --color-co-muted: var(--co-muted);
343
+ --color-co-muted-foreground: var(--co-muted-foreground);
344
+ --color-co-border: var(--co-border);
345
+ --color-co-input: var(--co-input);
346
+ --color-co-ring: var(--co-ring);
347
+ --radius-co: var(--co-radius);
348
+
349
+ /* custom colors */
350
+ --color-co-pink: var(--co-pink);
351
+ --color-co-yellow: var(--co-yellow);
352
+ --color-co-blue: var(--co-blue);
353
+ --color-co-orange: var(--co-orange);
354
+
355
+ /* status colors */
356
+ --color-co-destructive: var(--co-destructive);
357
+ --color-co-destructive-foreground: var(--co-destructive-foreground);
358
+ --color-co-success: var(--co-success);
359
+ --color-co-success-foreground: var(--co-success-foreground);
360
+ --color-co-neutral: var(--co-neutral);
361
+ --color-co-neutral-foreground: var(--co-neutral-foreground);
362
+ --color-co-warning: var(--co-warning);
363
+ --color-co-warning-foreground: var(--co-warning-foreground);
364
+ }
365
+
366
+ @layer utilities {
367
+ .cossistant {
368
+ .animation-delay-0 {
369
+ animation-delay: 0ms;
370
+ }
371
+ .animation-delay-200 {
372
+ animation-delay: 200ms;
373
+ }
374
+ .animation-delay-400 {
375
+ animation-delay: 400ms;
376
+ }
377
+
378
+ @keyframes bounce-dot {
379
+ 0%,
380
+ 80%,
381
+ 100% {
382
+ transform: translateY(0);
383
+ }
384
+ 40% {
385
+ transform: translateY(-6px);
386
+ }
387
+ }
388
+
389
+ .dot-bounce-1 {
390
+ animation: bounce-dot 1.4s infinite;
391
+ animation-delay: 0s;
392
+ }
393
+
394
+ .dot-bounce-2 {
395
+ animation: bounce-dot 1.4s infinite;
396
+ animation-delay: 0.16s;
397
+ }
398
+
399
+ .dot-bounce-3 {
400
+ animation: bounce-dot 1.4s infinite;
401
+ animation-delay: 0.32s;
402
+ }
403
+ }
404
+ }
@@ -13,8 +13,10 @@ declare const timelineItemSchema: z.ZodObject<{
13
13
  type: z.ZodEnum<{
14
14
  message: "message";
15
15
  event: "event";
16
+ identification: "identification";
16
17
  }>;
17
18
  text: z.ZodNullable<z.ZodString>;
19
+ tool: z.ZodOptional<z.ZodNullable<z.ZodString>>;
18
20
  parts: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
19
21
  type: z.ZodLiteral<"text">;
20
22
  text: z.ZodString;
@@ -32,6 +34,9 @@ declare const timelineItemSchema: z.ZodObject<{
32
34
  tag_removed: "tag_removed";
33
35
  resolved: "resolved";
34
36
  reopened: "reopened";
37
+ visitor_blocked: "visitor_blocked";
38
+ visitor_unblocked: "visitor_unblocked";
39
+ visitor_identified: "visitor_identified";
35
40
  }>;
36
41
  actorUserId: z.ZodNullable<z.ZodString>;
37
42
  actorAiAgentId: z.ZodNullable<z.ZodString>;
@@ -78,8 +83,10 @@ declare const getConversationTimelineItemsResponseSchema: z.ZodObject<{
78
83
  type: z.ZodEnum<{
79
84
  message: "message";
80
85
  event: "event";
86
+ identification: "identification";
81
87
  }>;
82
88
  text: z.ZodNullable<z.ZodString>;
89
+ tool: z.ZodOptional<z.ZodNullable<z.ZodString>>;
83
90
  parts: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
84
91
  type: z.ZodLiteral<"text">;
85
92
  text: z.ZodString;
@@ -97,6 +104,9 @@ declare const getConversationTimelineItemsResponseSchema: z.ZodObject<{
97
104
  tag_removed: "tag_removed";
98
105
  resolved: "resolved";
99
106
  reopened: "reopened";
107
+ visitor_blocked: "visitor_blocked";
108
+ visitor_unblocked: "visitor_unblocked";
109
+ visitor_identified: "visitor_identified";
100
110
  }>;
101
111
  actorUserId: z.ZodNullable<z.ZodString>;
102
112
  actorAiAgentId: z.ZodNullable<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"timeline-item.d.ts","names":[],"sources":["../../types/src/api/timeline-item.ts"],"sourcesContent":[],"mappings":";;;;AAmLG,cApEU,kBAoEV,EApE4B,CAAA,CAAA,SAoE5B,CAAA;;;;;;;;EAbmD,IAAA,WAAA,CAAA;IAe1C,OAAA,EAAA,SAAA;IAAmC,KAAA,EAAA,OAAA;;MAAG,eAAE,YAAA,CAAA;EAAK,KAAA,YAAA,WAAA,CAAA,SAAA,YAAA,CAAA;IAI5C,IAAA,cAAA,CAAA,MAAA,CAAA;IAeV,IAAA,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA7CS,kBAAA,GAAqB,CAAA,CAAE,aAAa;KAEpC,YAAA,GAAe,CAAA,CAAE,aAAa;cAS7B,2CAAyC,CAAA,CAAA;;;;KAe1C,mCAAA,GAAsC,CAAA,CAAE,aAC5C;cAGK,4CAA0C,CAAA,CAAA;;;;;;;;;;;;;;;MAAA,IAAA,cAAA,CAAA,MAAA,CAAA;MAAA,IAAA,aAAA;IAiB3C,CAAA,eAAA,CAAA,aAAA,CAAA;MAAoC,IAAA,cAAA,CAAA,OAAA,CAAA;MACxC,SAAA,WAAA,CAAA;QAD6C,QAAA,EAAA,UAAA;QAAK,UAAA,EAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA9C,oCAAA,GAAuC,CAAA,CAAE,aAC7C"}
1
+ {"version":3,"file":"timeline-item.d.ts","names":[],"sources":["../../types/src/api/timeline-item.ts"],"sourcesContent":[],"mappings":";;;;cAkHa,oBAAkB,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoDnB,kBAAA,GAAqB,CAAA,CAAE,aAAa;KAEpC,YAAA,GAAe,CAAA,CAAE,aAAa;AA4Ba,cAnB1C,yCAmB0C,EAnBD,CAAA,CAAA,SAmBC,CAAA;EAAA,KAAA,cAAA,mBAAA,CAAA,OAAA,CAAA,CAAA;EAiB3C,MAAA,eAAA,cAAA,YAAoC,CAAA,CAAA;;KArBpC,mCAAA,GAAsC,CAAA,CAAE,aAC5C;cAGK,4CAA0C,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiB3C,oCAAA,GAAuC,CAAA,CAAE,aAC7C"}
@@ -0,0 +1,7 @@
1
+ import { Conversation } from "@cossistant/types";
2
+
3
+ //#region src/utils/conversation.d.ts
4
+ declare function shouldDisplayConversation(conversation: Conversation): boolean;
5
+ //#endregion
6
+ export { shouldDisplayConversation };
7
+ //# sourceMappingURL=conversation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.d.ts","names":[],"sources":["../../src/utils/conversation.ts"],"sourcesContent":[],"mappings":";;;iBAagB,yBAAA,eAAwC"}
@@ -0,0 +1,18 @@
1
+ import { ConversationStatus } from "@cossistant/types";
2
+
3
+ //#region src/utils/conversation.ts
4
+ const HIDDEN_STATUSES = new Set([ConversationStatus.RESOLVED, "closed"]);
5
+ function hasDisplayableTitle(conversation) {
6
+ const title = conversation.title?.trim();
7
+ return Boolean(title && title.length > 0);
8
+ }
9
+ function shouldDisplayConversation(conversation) {
10
+ if (!hasDisplayableTitle(conversation)) return false;
11
+ if (conversation.deletedAt) return false;
12
+ if (HIDDEN_STATUSES.has(conversation.status)) return false;
13
+ return true;
14
+ }
15
+
16
+ //#endregion
17
+ export { shouldDisplayConversation };
18
+ //# sourceMappingURL=conversation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.js","names":[],"sources":["../../src/utils/conversation.ts"],"sourcesContent":["import { type Conversation, ConversationStatus } from \"@cossistant/types\";\n\nconst HIDDEN_STATUSES = new Set<ConversationStatus | \"closed\">([\n\tConversationStatus.RESOLVED,\n\t\"closed\",\n]);\n\nfunction hasDisplayableTitle(conversation: Conversation): boolean {\n\tconst title = conversation.title?.trim();\n\n\treturn Boolean(title && title.length > 0);\n}\n\nexport function shouldDisplayConversation(conversation: Conversation): boolean {\n\tif (!hasDisplayableTitle(conversation)) {\n\t\treturn false;\n\t}\n\n\tif (conversation.deletedAt) {\n\t\treturn false;\n\t}\n\n\tif (HIDDEN_STATUSES.has(conversation.status)) {\n\t\treturn false;\n\t}\n\n\treturn true;\n}\n"],"mappings":";;;AAEA,MAAM,kBAAkB,IAAI,IAAmC,CAC9D,mBAAmB,UACnB,SACA,CAAC;AAEF,SAAS,oBAAoB,cAAqC;CACjE,MAAM,QAAQ,aAAa,OAAO,MAAM;AAExC,QAAO,QAAQ,SAAS,MAAM,SAAS,EAAE;;AAG1C,SAAgB,0BAA0B,cAAqC;AAC9E,KAAI,CAAC,oBAAoB,aAAa,CACrC,QAAO;AAGR,KAAI,aAAa,UAChB,QAAO;AAGR,KAAI,gBAAgB,IAAI,aAAa,OAAO,CAC3C,QAAO;AAGR,QAAO"}
package/utils/id.d.ts CHANGED
@@ -1,5 +1,8 @@
1
1
  //#region src/utils/id.d.ts
2
2
  declare const PENDING_CONVERSATION_ID: "__pending__";
3
+ /**
4
+ * Generates human-friendly IDs used for optimistic entities.
5
+ */
3
6
  declare const generateShortPrimaryId: () => string;
4
7
  //#endregion
5
8
  export { PENDING_CONVERSATION_ID, generateShortPrimaryId };
package/utils/id.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"id.d.ts","names":[],"sources":["../../src/utils/id.ts"],"sourcesContent":[],"mappings":";cAOa;AAAA,cAEA,sBAFgD,EAAA,GAAA,GAAA,MAAA"}
1
+ {"version":3,"file":"id.d.ts","names":[],"sources":["../../src/utils/id.ts"],"sourcesContent":[],"mappings":";cAOa;AAAb;AAKA;;cAAa"}
package/utils/id.js CHANGED
@@ -4,6 +4,9 @@ import { customAlphabet } from "nanoid";
4
4
  const NANOID_ALPHABET = "123456789ABCDEFGHIJKLMNPQRSTUVWXYZ";
5
5
  const NANOID_LENGTH = 16;
6
6
  const PENDING_CONVERSATION_ID = "__pending__";
7
+ /**
8
+ * Generates human-friendly IDs used for optimistic entities.
9
+ */
7
10
  const generateShortPrimaryId = () => {
8
11
  return `CO${customAlphabet(NANOID_ALPHABET, NANOID_LENGTH)()}`;
9
12
  };
package/utils/id.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"id.js","names":[],"sources":["../../src/utils/id.ts"],"sourcesContent":["import { customAlphabet } from \"nanoid\";\n\nconst NANOID_ALPHABET = \"123456789ABCDEFGHIJKLMNPQRSTUVWXYZ\";\nconst NANOID_LENGTH = 16;\n\n// Special conversation ID to indicate that no conversation exists yet\n// Used when navigating to conversation page before actually creating the conversation\nexport const PENDING_CONVERSATION_ID = \"__pending__\" as const;\n\nexport const generateShortPrimaryId = (): string => {\n\tconst nanoid = customAlphabet(NANOID_ALPHABET, NANOID_LENGTH);\n\treturn `CO${nanoid()}`; // e.g. \"CO4GKT9QZ2BJKXMVR\"\n};\n"],"mappings":";;;AAEA,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AAItB,MAAa,0BAA0B;AAEvC,MAAa,+BAAuC;AAEnD,QAAO,KADQ,eAAe,iBAAiB,cAAc,EACzC"}
1
+ {"version":3,"file":"id.js","names":[],"sources":["../../src/utils/id.ts"],"sourcesContent":["import { customAlphabet } from \"nanoid\";\n\nconst NANOID_ALPHABET = \"123456789ABCDEFGHIJKLMNPQRSTUVWXYZ\";\nconst NANOID_LENGTH = 16;\n\n// Special conversation ID to indicate that no conversation exists yet\n// Used when navigating to conversation page before actually creating the conversation\nexport const PENDING_CONVERSATION_ID = \"__pending__\" as const;\n\n/**\n * Generates human-friendly IDs used for optimistic entities.\n */\nexport const generateShortPrimaryId = (): string => {\n\tconst nanoid = customAlphabet(NANOID_ALPHABET, NANOID_LENGTH);\n\treturn `CO${nanoid()}`; // e.g. \"CO4GKT9QZ2BJKXMVR\"\n};\n"],"mappings":";;;AAEA,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AAItB,MAAa,0BAA0B;;;;AAKvC,MAAa,+BAAuC;AAEnD,QAAO,KADQ,eAAe,iBAAiB,cAAc,EACzC"}
package/utils/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { shouldDisplayConversation } from "./conversation.js";
1
2
  import { PENDING_CONVERSATION_ID, generateShortPrimaryId } from "./id.js";
2
3
  import { useRenderElement } from "./use-render-element.js";
3
- export { PENDING_CONVERSATION_ID, generateShortPrimaryId, useRenderElement };
4
+ export { PENDING_CONVERSATION_ID, generateShortPrimaryId, shouldDisplayConversation, useRenderElement };
package/utils/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { useRenderElement } from "./use-render-element.js";
2
2
  import { PENDING_CONVERSATION_ID, generateShortPrimaryId } from "./id.js";
3
+ import { shouldDisplayConversation } from "./conversation.js";
3
4
 
4
- export { PENDING_CONVERSATION_ID, generateShortPrimaryId, useRenderElement };
5
+ export { PENDING_CONVERSATION_ID, generateShortPrimaryId, shouldDisplayConversation, useRenderElement };