@orion-ds/react 4.0.0 → 4.0.5
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.
- package/dist/index10.cjs +1 -1
- package/dist/index10.mjs +1 -1
- package/dist/index101.cjs +1 -1
- package/dist/index101.mjs +39 -13
- package/dist/index101.mjs.map +1 -1
- package/dist/index102.cjs +1 -1
- package/dist/index102.mjs +33 -30
- package/dist/index102.mjs.map +1 -1
- package/dist/index103.cjs +1 -1
- package/dist/index103.mjs +27 -30
- package/dist/index103.mjs.map +1 -1
- package/dist/index104.cjs +1 -1
- package/dist/index104.mjs +30 -36
- package/dist/index104.mjs.map +1 -1
- package/dist/index105.cjs +1 -1
- package/dist/index105.mjs +16 -30
- package/dist/index105.mjs.map +1 -1
- package/dist/index107.cjs +1 -1
- package/dist/index107.mjs +20 -42
- package/dist/index107.mjs.map +1 -1
- package/dist/index108.cjs +1 -1
- package/dist/index108.mjs +36 -32
- package/dist/index108.mjs.map +1 -1
- package/dist/index109.cjs +1 -1
- package/dist/index109.mjs +42 -50
- package/dist/index109.mjs.map +1 -1
- package/dist/index11.cjs +1 -1
- package/dist/index11.mjs +1 -1
- package/dist/index110.cjs +1 -1
- package/dist/index110.mjs +18 -12
- package/dist/index110.mjs.map +1 -1
- package/dist/index111.cjs +1 -1
- package/dist/index111.mjs +28 -33
- package/dist/index111.mjs.map +1 -1
- package/dist/index112.cjs +1 -1
- package/dist/index112.mjs +12 -28
- package/dist/index112.mjs.map +1 -1
- package/dist/index113.cjs +1 -1
- package/dist/index113.mjs +36 -20
- package/dist/index113.mjs.map +1 -1
- package/dist/index114.cjs +1 -1
- package/dist/index114.mjs +28 -24
- package/dist/index114.mjs.map +1 -1
- package/dist/index115.cjs +1 -1
- package/dist/index115.mjs +45 -33
- package/dist/index115.mjs.map +1 -1
- package/dist/index116.cjs +1 -1
- package/dist/index116.mjs +18 -18
- package/dist/index116.mjs.map +1 -1
- package/dist/index117.cjs +1 -1
- package/dist/index117.mjs +28 -30
- package/dist/index117.mjs.map +1 -1
- package/dist/index118.cjs +1 -1
- package/dist/index118.mjs +28 -26
- package/dist/index118.mjs.map +1 -1
- package/dist/index119.cjs +1 -1
- package/dist/index119.mjs +22 -234
- package/dist/index119.mjs.map +1 -1
- package/dist/index12.cjs +1 -1
- package/dist/index12.mjs +1 -1
- package/dist/index120.cjs +1 -1
- package/dist/index120.cjs.map +1 -1
- package/dist/index120.mjs +39 -34
- package/dist/index120.mjs.map +1 -1
- package/dist/index121.cjs +1 -1
- package/dist/index121.cjs.map +1 -1
- package/dist/index121.mjs +66 -44
- package/dist/index121.mjs.map +1 -1
- package/dist/index122.cjs +1 -1
- package/dist/index122.cjs.map +1 -1
- package/dist/index122.mjs +18 -170
- package/dist/index122.mjs.map +1 -1
- package/dist/index123.cjs +1 -1
- package/dist/index123.cjs.map +1 -1
- package/dist/index123.mjs +54 -186
- package/dist/index123.mjs.map +1 -1
- package/dist/index124.cjs +1 -1
- package/dist/index124.cjs.map +1 -1
- package/dist/index124.mjs +31 -29
- package/dist/index124.mjs.map +1 -1
- package/dist/index125.cjs +1 -1
- package/dist/index125.cjs.map +1 -1
- package/dist/index125.mjs +62 -90
- package/dist/index125.mjs.map +1 -1
- package/dist/index126.cjs +1 -1
- package/dist/index126.cjs.map +1 -1
- package/dist/index126.mjs +56 -53
- package/dist/index126.mjs.map +1 -1
- package/dist/index127.cjs +1 -1
- package/dist/index127.cjs.map +1 -1
- package/dist/index127.mjs +44 -66
- package/dist/index127.mjs.map +1 -1
- package/dist/index128.cjs +1 -1
- package/dist/index128.cjs.map +1 -1
- package/dist/index128.mjs +14 -124
- package/dist/index128.mjs.map +1 -1
- package/dist/index129.cjs +1 -1
- package/dist/index129.cjs.map +1 -1
- package/dist/index129.mjs +33 -108
- package/dist/index129.mjs.map +1 -1
- package/dist/index13.cjs +1 -1
- package/dist/index13.mjs +1 -1
- package/dist/index130.cjs +1 -1
- package/dist/index130.cjs.map +1 -1
- package/dist/index130.mjs +30 -111
- package/dist/index130.mjs.map +1 -1
- package/dist/index131.cjs +1 -1
- package/dist/index131.cjs.map +1 -1
- package/dist/index131.mjs +22 -122
- package/dist/index131.mjs.map +1 -1
- package/dist/index132.cjs +1 -1
- package/dist/index132.cjs.map +1 -1
- package/dist/index132.mjs +64 -214
- package/dist/index132.mjs.map +1 -1
- package/dist/index133.cjs +1 -1
- package/dist/index133.mjs +46 -42
- package/dist/index133.mjs.map +1 -1
- package/dist/index134.cjs +1 -1
- package/dist/index134.mjs +57 -44
- package/dist/index134.mjs.map +1 -1
- package/dist/index135.cjs +1 -1
- package/dist/index135.mjs +44 -28
- package/dist/index135.mjs.map +1 -1
- package/dist/index136.cjs +1 -1
- package/dist/index136.mjs +38 -76
- package/dist/index136.mjs.map +1 -1
- package/dist/index137.cjs +1 -1
- package/dist/index137.mjs +28 -38
- package/dist/index137.mjs.map +1 -1
- package/dist/index138.cjs +1 -1
- package/dist/index138.mjs +24 -38
- package/dist/index138.mjs.map +1 -1
- package/dist/index139.cjs +1 -1
- package/dist/index139.mjs +67 -65
- package/dist/index139.mjs.map +1 -1
- package/dist/index140.cjs +1 -1
- package/dist/index140.mjs +76 -28
- package/dist/index140.mjs.map +1 -1
- package/dist/index141.cjs +1 -1
- package/dist/index141.mjs +46 -16
- package/dist/index141.mjs.map +1 -1
- package/dist/index142.cjs +1 -1
- package/dist/index142.mjs +234 -22
- package/dist/index142.mjs.map +1 -1
- package/dist/index143.cjs +1 -1
- package/dist/index143.cjs.map +1 -1
- package/dist/index143.mjs +34 -63
- package/dist/index143.mjs.map +1 -1
- package/dist/index144.cjs +1 -1
- package/dist/index144.cjs.map +1 -1
- package/dist/index144.mjs +44 -21
- package/dist/index144.mjs.map +1 -1
- package/dist/index145.cjs +1 -1
- package/dist/index145.cjs.map +1 -1
- package/dist/index145.mjs +170 -20
- package/dist/index145.mjs.map +1 -1
- package/dist/index146.cjs +1 -1
- package/dist/index146.cjs.map +1 -1
- package/dist/index146.mjs +186 -27
- package/dist/index146.mjs.map +1 -1
- package/dist/index147.cjs +1 -1
- package/dist/index147.cjs.map +1 -1
- package/dist/index147.mjs +29 -43
- package/dist/index147.mjs.map +1 -1
- package/dist/index148.cjs +1 -1
- package/dist/index148.cjs.map +1 -1
- package/dist/index148.mjs +90 -45
- package/dist/index148.mjs.map +1 -1
- package/dist/index149.cjs +1 -1
- package/dist/index149.cjs.map +1 -1
- package/dist/index149.mjs +53 -28
- package/dist/index149.mjs.map +1 -1
- package/dist/index15.cjs +1 -1
- package/dist/index15.mjs +1 -1
- package/dist/index150.cjs +1 -1
- package/dist/index150.cjs.map +1 -1
- package/dist/index150.mjs +66 -28
- package/dist/index150.mjs.map +1 -1
- package/dist/index151.cjs +1 -1
- package/dist/index151.cjs.map +1 -1
- package/dist/index151.mjs +124 -32
- package/dist/index151.mjs.map +1 -1
- package/dist/index152.cjs +1 -1
- package/dist/index152.cjs.map +1 -1
- package/dist/index152.mjs +108 -30
- package/dist/index152.mjs.map +1 -1
- package/dist/index153.cjs +1 -1
- package/dist/index153.cjs.map +1 -1
- package/dist/index153.mjs +111 -24
- package/dist/index153.mjs.map +1 -1
- package/dist/index154.cjs +1 -1
- package/dist/index154.cjs.map +1 -1
- package/dist/index154.mjs +122 -28
- package/dist/index154.mjs.map +1 -1
- package/dist/index155.cjs +1 -1
- package/dist/index155.cjs.map +1 -1
- package/dist/index155.mjs +214 -30
- package/dist/index155.mjs.map +1 -1
- package/dist/index156.cjs +1 -1
- package/dist/index156.mjs +50 -33
- package/dist/index156.mjs.map +1 -1
- package/dist/index157.cjs +1 -1
- package/dist/index157.mjs +24 -46
- package/dist/index157.mjs.map +1 -1
- package/dist/index158.cjs +1 -1
- package/dist/index158.mjs +32 -46
- package/dist/index158.mjs.map +1 -1
- package/dist/index159.cjs +1 -1
- package/dist/index159.mjs +18 -46
- package/dist/index159.mjs.map +1 -1
- package/dist/index16.cjs +1 -1
- package/dist/index16.mjs +1 -1
- package/dist/index160.cjs +1 -1
- package/dist/index160.mjs +26 -40
- package/dist/index160.mjs.map +1 -1
- package/dist/index161.cjs +1 -1
- package/dist/index161.mjs +46 -22
- package/dist/index161.mjs.map +1 -1
- package/dist/index162.cjs +1 -1
- package/dist/index162.mjs +24 -18
- package/dist/index162.mjs.map +1 -1
- package/dist/index163.cjs +1 -1
- package/dist/index163.mjs +56 -40
- package/dist/index163.mjs.map +1 -1
- package/dist/index164.cjs +1 -1
- package/dist/index164.mjs +42 -18
- package/dist/index164.mjs.map +1 -1
- package/dist/index165.cjs +1 -1
- package/dist/index165.mjs +62 -24
- package/dist/index165.mjs.map +1 -1
- package/dist/index166.cjs +1 -1
- package/dist/index166.mjs +20 -64
- package/dist/index166.mjs.map +1 -1
- package/dist/index167.cjs +1 -1
- package/dist/index167.mjs +106 -53
- package/dist/index167.mjs.map +1 -1
- package/dist/index168.cjs +1 -1
- package/dist/index168.mjs +20 -12
- package/dist/index168.mjs.map +1 -1
- package/dist/index169.cjs +1 -1
- package/dist/index169.mjs +30 -56
- package/dist/index169.mjs.map +1 -1
- package/dist/index17.cjs +1 -1
- package/dist/index17.mjs +1 -1
- package/dist/index170.cjs +1 -1
- package/dist/index170.mjs +12 -106
- package/dist/index170.mjs.map +1 -1
- package/dist/index171.cjs +1 -1
- package/dist/index171.mjs +32 -18
- package/dist/index171.mjs.map +1 -1
- package/dist/index172.cjs +1 -1
- package/dist/index172.mjs +38 -60
- package/dist/index172.mjs.map +1 -1
- package/dist/index173.cjs +1 -1
- package/dist/index173.cjs.map +1 -1
- package/dist/index173.mjs +37 -56
- package/dist/index173.mjs.map +1 -1
- package/dist/index174.cjs +1 -1
- package/dist/index174.mjs +28 -18
- package/dist/index174.mjs.map +1 -1
- package/dist/index175.cjs +1 -1
- package/dist/index175.mjs +33 -52
- package/dist/index175.mjs.map +1 -1
- package/dist/index176.cjs +1 -1
- package/dist/index176.mjs +52 -64
- package/dist/index176.mjs.map +1 -1
- package/dist/index177.cjs +1 -1
- package/dist/index177.cjs.map +1 -1
- package/dist/index177.mjs +19 -37
- package/dist/index177.mjs.map +1 -1
- package/dist/index178.cjs +1 -1
- package/dist/index178.mjs +42 -28
- package/dist/index178.mjs.map +1 -1
- package/dist/index179.cjs +1 -1
- package/dist/index179.mjs +28 -67
- package/dist/index179.mjs.map +1 -1
- package/dist/index18.cjs +1 -1
- package/dist/index18.mjs +1 -1
- package/dist/index180.cjs +1 -1
- package/dist/index180.mjs +28 -57
- package/dist/index180.mjs.map +1 -1
- package/dist/index181.cjs +1 -1
- package/dist/index181.mjs +64 -44
- package/dist/index181.mjs.map +1 -1
- package/dist/index182.cjs +1 -1
- package/dist/index182.mjs +17 -17
- package/dist/index182.mjs.map +1 -1
- package/dist/index183.cjs +1 -1
- package/dist/index183.mjs +17 -17
- package/dist/index183.mjs.map +1 -1
- package/dist/index185.cjs +1 -1
- package/dist/index185.mjs +1 -1
- package/dist/index19.cjs +1 -1
- package/dist/index19.mjs +2 -2
- package/dist/index20.cjs +1 -1
- package/dist/index20.mjs +14 -14
- package/dist/index21.cjs +1 -1
- package/dist/index21.cjs.map +1 -1
- package/dist/index21.mjs +1 -1
- package/dist/index22.cjs +1 -1
- package/dist/index22.mjs +1 -1
- package/dist/index23.cjs +1 -1
- package/dist/index23.mjs +1 -1
- package/dist/index24.cjs +1 -1
- package/dist/index24.mjs +1 -1
- package/dist/index25.cjs +1 -1
- package/dist/index25.mjs +1 -1
- package/dist/index26.cjs +1 -1
- package/dist/index26.mjs +1 -1
- package/dist/index27.cjs +1 -1
- package/dist/index27.mjs +1 -1
- package/dist/index28.cjs +1 -1
- package/dist/index28.mjs +1 -1
- package/dist/index29.cjs +1 -1
- package/dist/index29.mjs +1 -1
- package/dist/index30.cjs +1 -1
- package/dist/index30.mjs +1 -1
- package/dist/index31.cjs +1 -1
- package/dist/index31.mjs +1 -1
- package/dist/index32.cjs +1 -1
- package/dist/index32.mjs +1 -1
- package/dist/index33.cjs +1 -1
- package/dist/index33.mjs +1 -1
- package/dist/index34.cjs +1 -1
- package/dist/index34.mjs +1 -1
- package/dist/index35.cjs +1 -1
- package/dist/index35.mjs +1 -1
- package/dist/index36.cjs +1 -1
- package/dist/index36.mjs +1 -1
- package/dist/index37.cjs +1 -1
- package/dist/index37.mjs +1 -1
- package/dist/index38.cjs +1 -1
- package/dist/index38.mjs +1 -1
- package/dist/index39.cjs +1 -1
- package/dist/index39.mjs +1 -1
- package/dist/index40.cjs +1 -1
- package/dist/index40.mjs +1 -1
- package/dist/index42.cjs +1 -1
- package/dist/index42.mjs +1 -1
- package/dist/index43.cjs +1 -1
- package/dist/index43.cjs.map +1 -1
- package/dist/index43.mjs +1 -1
- package/dist/index44.cjs +1 -1
- package/dist/index44.mjs +1 -1
- package/dist/index46.cjs +1 -1
- package/dist/index46.mjs +1 -1
- package/dist/index47.cjs +1 -1
- package/dist/index47.mjs +1 -1
- package/dist/index49.cjs +1 -1
- package/dist/index49.mjs +1 -1
- package/dist/index5.cjs +1 -1
- package/dist/index5.mjs +1 -1
- package/dist/index50.cjs +1 -1
- package/dist/index50.mjs +1 -1
- package/dist/index51.cjs +1 -1
- package/dist/index51.mjs +1 -1
- package/dist/index52.cjs +1 -1
- package/dist/index52.mjs +1 -1
- package/dist/index53.cjs +1 -1
- package/dist/index53.mjs +1 -1
- package/dist/index54.cjs +1 -1
- package/dist/index54.mjs +1 -1
- package/dist/index55.cjs +1 -1
- package/dist/index55.mjs +1 -1
- package/dist/index56.cjs +1 -1
- package/dist/index56.mjs +1 -1
- package/dist/index57.cjs +1 -1
- package/dist/index57.mjs +1 -1
- package/dist/index58.cjs +1 -1
- package/dist/index58.mjs +1 -1
- package/dist/index59.cjs +1 -1
- package/dist/index59.mjs +1 -1
- package/dist/index6.cjs +1 -1
- package/dist/index6.mjs +1 -1
- package/dist/index60.cjs +1 -1
- package/dist/index60.mjs +1 -1
- package/dist/index61.cjs +1 -1
- package/dist/index61.mjs +1 -1
- package/dist/index62.cjs +1 -1
- package/dist/index62.mjs +1 -1
- package/dist/index63.cjs +1 -1
- package/dist/index63.mjs +1 -1
- package/dist/index64.cjs +1 -1
- package/dist/index64.mjs +1 -1
- package/dist/index65.cjs +1 -1
- package/dist/index65.mjs +1 -1
- package/dist/index66.cjs +1 -1
- package/dist/index66.mjs +1 -1
- package/dist/index67.cjs +1 -1
- package/dist/index67.mjs +1 -1
- package/dist/index68.cjs +1 -1
- package/dist/index68.mjs +1 -1
- package/dist/index7.cjs +1 -1
- package/dist/index7.mjs +1 -1
- package/dist/index70.cjs +1 -1
- package/dist/index70.mjs +1 -1
- package/dist/index71.cjs +1 -1
- package/dist/index71.mjs +1 -1
- package/dist/index72.cjs +1 -1
- package/dist/index72.mjs +1 -1
- package/dist/index73.cjs +1 -1
- package/dist/index73.mjs +1 -1
- package/dist/index76.cjs +1 -1
- package/dist/index76.mjs +1 -1
- package/dist/index77.cjs +1 -1
- package/dist/index77.mjs +1 -1
- package/dist/index78.cjs +1 -1
- package/dist/index78.mjs +1 -1
- package/dist/index79.cjs +1 -1
- package/dist/index79.mjs +1 -1
- package/dist/index8.cjs +1 -1
- package/dist/index8.mjs +1 -1
- package/dist/index80.cjs +1 -1
- package/dist/index80.mjs +1 -1
- package/dist/index81.cjs +1 -1
- package/dist/index81.mjs +1 -1
- package/dist/index9.cjs +1 -1
- package/dist/index9.mjs +1 -1
- package/dist/index99.cjs +1 -1
- package/dist/index99.mjs +28 -34
- package/dist/index99.mjs.map +1 -1
- package/dist/react.css +1 -1
- package/dist/styles.css +8 -1
- package/dist/theme.css +7 -0
- package/package.json +5 -4
package/dist/index132.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index132.cjs","sources":["../src/components/Chat/components/ChatSidebar.tsx"],"sourcesContent":["/**\n * ChatSidebar Component\n *\n * Sidebar with conversation history, search, and management actions.\n * Conversations are grouped by date (Today, Yesterday, Previous 7 days, etc.)\n */\n\nimport React, {\n useState,\n useCallback,\n useMemo,\n useRef,\n useEffect,\n} from \"react\";\nimport { Plus, Search, Trash2, MessageSquare, X } from \"lucide-react\";\nimport type { ChatSidebarProps, ChatConversation } from \"../Chat.types\";\nimport styles from \"../Chat.module.css\";\n\n// Date grouping types\ntype DateGroup = \"today\" | \"yesterday\" | \"previous7\" | \"previous30\" | \"older\";\n\nconst groupLabels: Record<DateGroup, string> = {\n today: \"Today\",\n yesterday: \"Yesterday\",\n previous7: \"Previous 7 days\",\n previous30: \"Previous 30 days\",\n older: \"Older\",\n};\n\n// Order of date groups for rendering\nconst groupOrder: DateGroup[] = [\n \"today\",\n \"yesterday\",\n \"previous7\",\n \"previous30\",\n \"older\",\n];\n\n// Get the date group for a given date\nconst getDateGroup = (date: Date): DateGroup => {\n const now = new Date();\n const startOfToday = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n );\n const diff =\n startOfToday.getTime() -\n new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime();\n const days = diff / (1000 * 60 * 60 * 24);\n\n if (days < 1) return \"today\";\n if (days < 2) return \"yesterday\";\n if (days < 7) return \"previous7\";\n if (days < 30) return \"previous30\";\n return \"older\";\n};\n\n// Format date for display (shown on individual items)\nconst formatDate = (date: Date): string => {\n const group = getDateGroup(date);\n\n if (group === \"today\") {\n return new Intl.DateTimeFormat(\"en-US\", {\n hour: \"numeric\",\n minute: \"2-digit\",\n }).format(date);\n } else if (group === \"yesterday\") {\n return \"Yesterday\";\n } else if (group === \"previous7\") {\n return new Intl.DateTimeFormat(\"en-US\", {\n weekday: \"short\",\n }).format(date);\n } else {\n return new Intl.DateTimeFormat(\"en-US\", {\n month: \"short\",\n day: \"numeric\",\n }).format(date);\n }\n};\n\n// Group conversations by date\nconst groupConversationsByDate = (\n conversations: ChatConversation[],\n): Map<DateGroup, ChatConversation[]> => {\n const groups = new Map<DateGroup, ChatConversation[]>();\n\n // Initialize all groups\n groupOrder.forEach((group) => groups.set(group, []));\n\n // Sort and group conversations\n conversations.forEach((conv) => {\n const group = getDateGroup(conv.updatedAt);\n groups.get(group)?.push(conv);\n });\n\n return groups;\n};\n\nexport const ChatSidebar: React.FC<ChatSidebarProps> = ({\n conversations = [],\n activeConversationId,\n onSelectConversation,\n onNewConversation,\n onDeleteConversation,\n onSearch,\n header,\n footer,\n collapsed = false,\n onCollapsedChange,\n className,\n ...rest\n}) => {\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [confirmDeleteId, setConfirmDeleteId] = useState<string | null>(null);\n const confirmTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>(\n undefined,\n );\n\n // Clear confirm timer on unmount\n useEffect(() => {\n return () => {\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n };\n }, []);\n\n // Filter conversations based on search\n const filteredConversations = useMemo(() => {\n if (!searchQuery.trim()) return conversations;\n\n const query = searchQuery.toLowerCase();\n return conversations.filter(\n (conv) =>\n conv.title.toLowerCase().includes(query) ||\n conv.preview?.toLowerCase().includes(query),\n );\n }, [conversations, searchQuery]);\n\n // Group filtered conversations by date\n const groupedConversations = useMemo(() => {\n return groupConversationsByDate(filteredConversations);\n }, [filteredConversations]);\n\n // Handle search input\n const handleSearchChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n setSearchQuery(value);\n onSearch?.(value);\n },\n [onSearch],\n );\n\n // Handle conversation selection\n const handleSelectConversation = useCallback(\n (id: string) => {\n onSelectConversation?.(id);\n // Close sidebar on mobile after selection\n if (collapsed && onCollapsedChange) {\n onCollapsedChange(true);\n }\n },\n [onSelectConversation, collapsed, onCollapsedChange],\n );\n\n // Handle delete with inline confirmation\n const handleDelete = useCallback(\n (e: React.MouseEvent, id: string) => {\n e.stopPropagation();\n\n if (confirmDeleteId === id) {\n // Second click: actually delete\n onDeleteConversation?.(id);\n setConfirmDeleteId(null);\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n } else {\n // First click: show confirmation\n setConfirmDeleteId(id);\n // Auto-reset after 3 seconds\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n confirmTimerRef.current = setTimeout(() => {\n setConfirmDeleteId(null);\n }, 3000);\n }\n },\n [confirmDeleteId, onDeleteConversation],\n );\n\n // Check if there are any conversations to show\n const hasConversations = groupOrder.some(\n (group) => (groupedConversations.get(group)?.length ?? 0) > 0,\n );\n\n return (\n <>\n {/* Mobile overlay */}\n {!collapsed && (\n <div\n className={styles.sidebarOverlay}\n onClick={() => onCollapsedChange?.(true)}\n aria-hidden=\"true\"\n />\n )}\n\n <aside\n className={[\n styles.sidebar,\n collapsed && styles.sidebarCollapsed,\n !collapsed && styles.sidebarOpen,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n {...rest}\n >\n {/* Header */}\n <div className={styles.sidebarHeader}>\n {header || (\n <>\n <button\n className={[\n styles.inputButton,\n styles.inputButtonPrimary,\n styles.sidebarNewButton,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={onNewConversation}\n aria-label=\"New conversation\"\n >\n <span className={styles.sidebarNewButtonInner}>\n <Plus size={18} />\n <span>New Chat</span>\n </span>\n </button>\n\n {/* Mobile close button */}\n <button\n className={[styles.inputButton, styles.sidebarCloseButton].join(\n \" \",\n )}\n onClick={() => onCollapsedChange?.(true)}\n aria-label=\"Close sidebar\"\n >\n <X size={20} />\n </button>\n </>\n )}\n </div>\n\n {/* Search */}\n <div className={styles.sidebarSearch}>\n <div className={styles.sidebarSearchWrapper}>\n <Search size={16} className={styles.sidebarSearchIcon} />\n <input\n type=\"search\"\n className={[\n styles.sidebarSearchInput,\n styles.sidebarSearchInputWithIcon,\n ].join(\" \")}\n placeholder=\"Search conversations...\"\n value={searchQuery}\n onChange={handleSearchChange}\n aria-label=\"Search conversations\"\n />\n </div>\n </div>\n\n {/* Conversation list with date grouping */}\n <div\n className={styles.sidebarList}\n role=\"list\"\n aria-label=\"Conversations\"\n >\n {!hasConversations ? (\n <div className={styles.sidebarEmpty}>\n <MessageSquare size={32} className={styles.sidebarEmptyIcon} />\n <p>\n {searchQuery\n ? \"No conversations found\"\n : \"No conversations yet\"}\n </p>\n </div>\n ) : (\n groupOrder.map((group) => {\n const groupConvs = groupedConversations.get(group) ?? [];\n if (groupConvs.length === 0) return null;\n\n return (\n <div key={group}>\n <div className={styles.sidebarGroupHeader}>\n {groupLabels[group]}\n </div>\n {groupConvs.map((conversation) => (\n <button\n key={conversation.id}\n className={[\n styles.sidebarItem,\n conversation.id === activeConversationId &&\n styles.sidebarItemActive,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={() => handleSelectConversation(conversation.id)}\n role=\"listitem\"\n aria-selected={conversation.id === activeConversationId}\n aria-label={`Conversation: ${conversation.title}`}\n >\n <MessageSquare\n size={18}\n className={styles.sidebarItemIcon}\n />\n\n <div className={styles.sidebarItemContent}>\n <span className={styles.sidebarItemTitle}>\n {conversation.title}\n </span>\n {conversation.preview && (\n <span className={styles.sidebarItemPreview}>\n {conversation.preview}\n </span>\n )}\n </div>\n\n <span className={styles.sidebarItemDate}>\n {formatDate(conversation.updatedAt)}\n </span>\n\n {onDeleteConversation && (\n <button\n className={styles.sidebarItemDelete}\n onClick={(e) => handleDelete(e, conversation.id)}\n aria-label={\n confirmDeleteId === conversation.id\n ? `Confirm delete ${conversation.title}`\n : `Delete ${conversation.title}`\n }\n >\n {confirmDeleteId === conversation.id ? (\n <span className={styles.sidebarItemDeleteConfirm}>\n Delete?\n </span>\n ) : (\n <Trash2 size={16} />\n )}\n </button>\n )}\n </button>\n ))}\n </div>\n );\n })\n )}\n </div>\n\n {/* Footer */}\n {footer && <div className={styles.sidebarFooter}>{footer}</div>}\n </aside>\n </>\n );\n};\n\nChatSidebar.displayName = \"ChatSidebar\";\n"],"names":["groupLabels","groupOrder","getDateGroup","date","now","days","formatDate","group","groupConversationsByDate","conversations","groups","conv","ChatSidebar","activeConversationId","onSelectConversation","onNewConversation","onDeleteConversation","onSearch","header","footer","collapsed","onCollapsedChange","className","rest","searchQuery","setSearchQuery","useState","confirmDeleteId","setConfirmDeleteId","confirmTimerRef","useRef","useEffect","filteredConversations","useMemo","query","groupedConversations","handleSearchChange","useCallback","e","value","handleSelectConversation","id","handleDelete","hasConversations","jsxs","Fragment","jsx","styles","Plus","X","Search","groupConvs","conversation","MessageSquare","Trash2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index132.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/index132.mjs
CHANGED
|
@@ -1,218 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
day: "numeric"
|
|
34
|
-
}).format(t);
|
|
35
|
-
}, Q = (t) => {
|
|
36
|
-
const a = /* @__PURE__ */ new Map();
|
|
37
|
-
return N.forEach((o) => a.set(o, [])), t.forEach((o) => {
|
|
38
|
-
const f = B(o.updatedAt);
|
|
39
|
-
a.get(f)?.push(o);
|
|
40
|
-
}), a;
|
|
41
|
-
}, R = ({
|
|
42
|
-
conversations: t = [],
|
|
43
|
-
activeConversationId: a,
|
|
44
|
-
onSelectConversation: o,
|
|
45
|
-
onNewConversation: f,
|
|
46
|
-
onDeleteConversation: d,
|
|
47
|
-
onSearch: g,
|
|
48
|
-
header: j,
|
|
49
|
-
footer: v,
|
|
50
|
-
collapsed: u = !1,
|
|
51
|
-
onCollapsedChange: m,
|
|
52
|
-
className: k,
|
|
53
|
-
...F
|
|
54
|
-
}) => {
|
|
55
|
-
const [h, z] = D(""), [p, b] = D(null), c = Y(
|
|
56
|
-
void 0
|
|
57
|
-
);
|
|
58
|
-
x(() => () => {
|
|
59
|
-
c.current && clearTimeout(c.current);
|
|
60
|
-
}, []);
|
|
61
|
-
const w = S(() => {
|
|
62
|
-
if (!h.trim()) return t;
|
|
63
|
-
const s = h.toLowerCase();
|
|
64
|
-
return t.filter(
|
|
65
|
-
(n) => n.title.toLowerCase().includes(s) || n.preview?.toLowerCase().includes(s)
|
|
66
|
-
);
|
|
67
|
-
}, [t, h]), I = S(() => Q(w), [w]), O = y(
|
|
68
|
-
(s) => {
|
|
69
|
-
const n = s.target.value;
|
|
70
|
-
z(n), g?.(n);
|
|
71
|
-
},
|
|
72
|
-
[g]
|
|
73
|
-
), P = y(
|
|
74
|
-
(s) => {
|
|
75
|
-
o?.(s), u && m && m(!0);
|
|
76
|
-
},
|
|
77
|
-
[o, u, m]
|
|
78
|
-
), E = y(
|
|
79
|
-
(s, n) => {
|
|
80
|
-
s.stopPropagation(), p === n ? (d?.(n), b(null), c.current && clearTimeout(c.current)) : (b(n), c.current && clearTimeout(c.current), c.current = setTimeout(() => {
|
|
81
|
-
b(null);
|
|
82
|
-
}, 3e3));
|
|
83
|
-
},
|
|
84
|
-
[p, d]
|
|
85
|
-
), L = N.some(
|
|
86
|
-
(s) => (I.get(s)?.length ?? 0) > 0
|
|
87
|
-
);
|
|
88
|
-
return /* @__PURE__ */ l(C, { children: [
|
|
89
|
-
!u && /* @__PURE__ */ r(
|
|
90
|
-
"div",
|
|
91
|
-
{
|
|
92
|
-
className: e.sidebarOverlay,
|
|
93
|
-
onClick: () => m?.(!0),
|
|
94
|
-
"aria-hidden": "true"
|
|
95
|
-
}
|
|
96
|
-
),
|
|
97
|
-
/* @__PURE__ */ l(
|
|
98
|
-
"aside",
|
|
99
|
-
{
|
|
100
|
-
className: [
|
|
101
|
-
e.sidebar,
|
|
102
|
-
u && e.sidebarCollapsed,
|
|
103
|
-
!u && e.sidebarOpen,
|
|
104
|
-
k
|
|
105
|
-
].filter(Boolean).join(" "),
|
|
106
|
-
...F,
|
|
107
|
-
children: [
|
|
108
|
-
/* @__PURE__ */ r("div", { className: e.sidebarHeader, children: j || /* @__PURE__ */ l(C, { children: [
|
|
109
|
-
/* @__PURE__ */ r(
|
|
110
|
-
"button",
|
|
111
|
-
{
|
|
112
|
-
className: [
|
|
113
|
-
e.inputButton,
|
|
114
|
-
e.inputButtonPrimary,
|
|
115
|
-
e.sidebarNewButton
|
|
116
|
-
].filter(Boolean).join(" "),
|
|
117
|
-
onClick: f,
|
|
118
|
-
"aria-label": "New conversation",
|
|
119
|
-
children: /* @__PURE__ */ l("span", { className: e.sidebarNewButtonInner, children: [
|
|
120
|
-
/* @__PURE__ */ r(A, { size: 18 }),
|
|
121
|
-
/* @__PURE__ */ r("span", { children: "New Chat" })
|
|
122
|
-
] })
|
|
123
|
-
}
|
|
124
|
-
),
|
|
125
|
-
/* @__PURE__ */ r(
|
|
126
|
-
"button",
|
|
127
|
-
{
|
|
128
|
-
className: [e.inputButton, e.sidebarCloseButton].join(
|
|
129
|
-
" "
|
|
130
|
-
),
|
|
131
|
-
onClick: () => m?.(!0),
|
|
132
|
-
"aria-label": "Close sidebar",
|
|
133
|
-
children: /* @__PURE__ */ r(U, { size: 20 })
|
|
134
|
-
}
|
|
135
|
-
)
|
|
136
|
-
] }) }),
|
|
137
|
-
/* @__PURE__ */ r("div", { className: e.sidebarSearch, children: /* @__PURE__ */ l("div", { className: e.sidebarSearchWrapper, children: [
|
|
138
|
-
/* @__PURE__ */ r($, { size: 16, className: e.sidebarSearchIcon }),
|
|
139
|
-
/* @__PURE__ */ r(
|
|
140
|
-
"input",
|
|
141
|
-
{
|
|
142
|
-
type: "search",
|
|
143
|
-
className: [
|
|
144
|
-
e.sidebarSearchInput,
|
|
145
|
-
e.sidebarSearchInputWithIcon
|
|
146
|
-
].join(" "),
|
|
147
|
-
placeholder: "Search conversations...",
|
|
148
|
-
value: h,
|
|
149
|
-
onChange: O,
|
|
150
|
-
"aria-label": "Search conversations"
|
|
151
|
-
}
|
|
152
|
-
)
|
|
153
|
-
] }) }),
|
|
154
|
-
/* @__PURE__ */ r(
|
|
155
|
-
"div",
|
|
156
|
-
{
|
|
157
|
-
className: e.sidebarList,
|
|
158
|
-
role: "list",
|
|
159
|
-
"aria-label": "Conversations",
|
|
160
|
-
children: L ? N.map((s) => {
|
|
161
|
-
const n = I.get(s) ?? [];
|
|
162
|
-
return n.length === 0 ? null : /* @__PURE__ */ l("div", { children: [
|
|
163
|
-
/* @__PURE__ */ r("div", { className: e.sidebarGroupHeader, children: G[s] }),
|
|
164
|
-
n.map((i) => /* @__PURE__ */ l(
|
|
165
|
-
"button",
|
|
166
|
-
{
|
|
167
|
-
className: [
|
|
168
|
-
e.sidebarItem,
|
|
169
|
-
i.id === a && e.sidebarItemActive
|
|
170
|
-
].filter(Boolean).join(" "),
|
|
171
|
-
onClick: () => P(i.id),
|
|
172
|
-
role: "listitem",
|
|
173
|
-
"aria-selected": i.id === a,
|
|
174
|
-
"aria-label": `Conversation: ${i.title}`,
|
|
175
|
-
children: [
|
|
176
|
-
/* @__PURE__ */ r(
|
|
177
|
-
T,
|
|
178
|
-
{
|
|
179
|
-
size: 18,
|
|
180
|
-
className: e.sidebarItemIcon
|
|
181
|
-
}
|
|
182
|
-
),
|
|
183
|
-
/* @__PURE__ */ l("div", { className: e.sidebarItemContent, children: [
|
|
184
|
-
/* @__PURE__ */ r("span", { className: e.sidebarItemTitle, children: i.title }),
|
|
185
|
-
i.preview && /* @__PURE__ */ r("span", { className: e.sidebarItemPreview, children: i.preview })
|
|
186
|
-
] }),
|
|
187
|
-
/* @__PURE__ */ r("span", { className: e.sidebarItemDate, children: H(i.updatedAt) }),
|
|
188
|
-
d && /* @__PURE__ */ r(
|
|
189
|
-
"button",
|
|
190
|
-
{
|
|
191
|
-
className: e.sidebarItemDelete,
|
|
192
|
-
onClick: (M) => E(M, i.id),
|
|
193
|
-
"aria-label": p === i.id ? `Confirm delete ${i.title}` : `Delete ${i.title}`,
|
|
194
|
-
children: p === i.id ? /* @__PURE__ */ r("span", { className: e.sidebarItemDeleteConfirm, children: "Delete?" }) : /* @__PURE__ */ r(q, { size: 16 })
|
|
195
|
-
}
|
|
196
|
-
)
|
|
197
|
-
]
|
|
198
|
-
},
|
|
199
|
-
i.id
|
|
200
|
-
))
|
|
201
|
-
] }, s);
|
|
202
|
-
}) : /* @__PURE__ */ l("div", { className: e.sidebarEmpty, children: [
|
|
203
|
-
/* @__PURE__ */ r(T, { size: 32, className: e.sidebarEmptyIcon }),
|
|
204
|
-
/* @__PURE__ */ r("p", { children: h ? "No conversations found" : "No conversations yet" })
|
|
205
|
-
] })
|
|
206
|
-
}
|
|
207
|
-
),
|
|
208
|
-
v && /* @__PURE__ */ r("div", { className: e.sidebarFooter, children: v })
|
|
209
|
-
]
|
|
210
|
-
}
|
|
211
|
-
)
|
|
212
|
-
] });
|
|
1
|
+
const e = "_fileUploader_elcmy_8", o = "_dropzone_elcmy_18", l = "_dropzoneDragging_elcmy_40", n = "_dropzoneDisabled_elcmy_45", _ = "_dropzoneError_elcmy_55", r = "_input_elcmy_59", c = "_dropzoneContent_elcmy_63", t = "_dropzoneIcon_elcmy_71", s = "_dropzonePlaceholder_elcmy_82", i = "_dropzoneHints_elcmy_90", p = "_dropzoneHint_elcmy_90", m = "_helperText_elcmy_107", f = "_helperTextError_elcmy_113", a = "_fileList_elcmy_121", d = "_fileItem_elcmy_130", y = "_fileIcon_elcmy_139", z = "_filePreview_elcmy_152", u = "_fileInfo_elcmy_158", S = "_fileName_elcmy_166", g = "_fileSize_elcmy_176", I = "_fileStatus_elcmy_182", h = "_progressBar_elcmy_188", E = "_progressFill_elcmy_196", x = "_fileStatusIcon_elcmy_202", v = "_spin_elcmy_1", D = "_fileStatusSuccess_elcmy_207", H = "_fileStatusError_elcmy_211", P = "_fileRemove_elcmy_221", T = "_minimal_elcmy_246", b = "_card_elcmy_258", w = "_compact_elcmy_273", B = {
|
|
2
|
+
fileUploader: e,
|
|
3
|
+
dropzone: o,
|
|
4
|
+
dropzoneDragging: l,
|
|
5
|
+
dropzoneDisabled: n,
|
|
6
|
+
dropzoneError: _,
|
|
7
|
+
input: r,
|
|
8
|
+
dropzoneContent: c,
|
|
9
|
+
dropzoneIcon: t,
|
|
10
|
+
dropzonePlaceholder: s,
|
|
11
|
+
dropzoneHints: i,
|
|
12
|
+
dropzoneHint: p,
|
|
13
|
+
helperText: m,
|
|
14
|
+
helperTextError: f,
|
|
15
|
+
fileList: a,
|
|
16
|
+
fileItem: d,
|
|
17
|
+
fileIcon: y,
|
|
18
|
+
filePreview: z,
|
|
19
|
+
fileInfo: u,
|
|
20
|
+
fileName: S,
|
|
21
|
+
fileSize: g,
|
|
22
|
+
fileStatus: I,
|
|
23
|
+
progressBar: h,
|
|
24
|
+
progressFill: E,
|
|
25
|
+
fileStatusIcon: x,
|
|
26
|
+
spin: v,
|
|
27
|
+
fileStatusSuccess: D,
|
|
28
|
+
fileStatusError: H,
|
|
29
|
+
fileRemove: P,
|
|
30
|
+
minimal: T,
|
|
31
|
+
card: b,
|
|
32
|
+
compact: w
|
|
213
33
|
};
|
|
214
|
-
R.displayName = "ChatSidebar";
|
|
215
34
|
export {
|
|
216
|
-
|
|
35
|
+
b as card,
|
|
36
|
+
w as compact,
|
|
37
|
+
B as default,
|
|
38
|
+
o as dropzone,
|
|
39
|
+
c as dropzoneContent,
|
|
40
|
+
n as dropzoneDisabled,
|
|
41
|
+
l as dropzoneDragging,
|
|
42
|
+
_ as dropzoneError,
|
|
43
|
+
p as dropzoneHint,
|
|
44
|
+
i as dropzoneHints,
|
|
45
|
+
t as dropzoneIcon,
|
|
46
|
+
s as dropzonePlaceholder,
|
|
47
|
+
y as fileIcon,
|
|
48
|
+
u as fileInfo,
|
|
49
|
+
d as fileItem,
|
|
50
|
+
a as fileList,
|
|
51
|
+
S as fileName,
|
|
52
|
+
z as filePreview,
|
|
53
|
+
P as fileRemove,
|
|
54
|
+
g as fileSize,
|
|
55
|
+
I as fileStatus,
|
|
56
|
+
H as fileStatusError,
|
|
57
|
+
x as fileStatusIcon,
|
|
58
|
+
D as fileStatusSuccess,
|
|
59
|
+
e as fileUploader,
|
|
60
|
+
m as helperText,
|
|
61
|
+
f as helperTextError,
|
|
62
|
+
r as input,
|
|
63
|
+
T as minimal,
|
|
64
|
+
h as progressBar,
|
|
65
|
+
E as progressFill,
|
|
66
|
+
v as spin
|
|
217
67
|
};
|
|
218
68
|
//# sourceMappingURL=index132.mjs.map
|
package/dist/index132.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index132.mjs","sources":["../src/components/Chat/components/ChatSidebar.tsx"],"sourcesContent":["/**\n * ChatSidebar Component\n *\n * Sidebar with conversation history, search, and management actions.\n * Conversations are grouped by date (Today, Yesterday, Previous 7 days, etc.)\n */\n\nimport React, {\n useState,\n useCallback,\n useMemo,\n useRef,\n useEffect,\n} from \"react\";\nimport { Plus, Search, Trash2, MessageSquare, X } from \"lucide-react\";\nimport type { ChatSidebarProps, ChatConversation } from \"../Chat.types\";\nimport styles from \"../Chat.module.css\";\n\n// Date grouping types\ntype DateGroup = \"today\" | \"yesterday\" | \"previous7\" | \"previous30\" | \"older\";\n\nconst groupLabels: Record<DateGroup, string> = {\n today: \"Today\",\n yesterday: \"Yesterday\",\n previous7: \"Previous 7 days\",\n previous30: \"Previous 30 days\",\n older: \"Older\",\n};\n\n// Order of date groups for rendering\nconst groupOrder: DateGroup[] = [\n \"today\",\n \"yesterday\",\n \"previous7\",\n \"previous30\",\n \"older\",\n];\n\n// Get the date group for a given date\nconst getDateGroup = (date: Date): DateGroup => {\n const now = new Date();\n const startOfToday = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n );\n const diff =\n startOfToday.getTime() -\n new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime();\n const days = diff / (1000 * 60 * 60 * 24);\n\n if (days < 1) return \"today\";\n if (days < 2) return \"yesterday\";\n if (days < 7) return \"previous7\";\n if (days < 30) return \"previous30\";\n return \"older\";\n};\n\n// Format date for display (shown on individual items)\nconst formatDate = (date: Date): string => {\n const group = getDateGroup(date);\n\n if (group === \"today\") {\n return new Intl.DateTimeFormat(\"en-US\", {\n hour: \"numeric\",\n minute: \"2-digit\",\n }).format(date);\n } else if (group === \"yesterday\") {\n return \"Yesterday\";\n } else if (group === \"previous7\") {\n return new Intl.DateTimeFormat(\"en-US\", {\n weekday: \"short\",\n }).format(date);\n } else {\n return new Intl.DateTimeFormat(\"en-US\", {\n month: \"short\",\n day: \"numeric\",\n }).format(date);\n }\n};\n\n// Group conversations by date\nconst groupConversationsByDate = (\n conversations: ChatConversation[],\n): Map<DateGroup, ChatConversation[]> => {\n const groups = new Map<DateGroup, ChatConversation[]>();\n\n // Initialize all groups\n groupOrder.forEach((group) => groups.set(group, []));\n\n // Sort and group conversations\n conversations.forEach((conv) => {\n const group = getDateGroup(conv.updatedAt);\n groups.get(group)?.push(conv);\n });\n\n return groups;\n};\n\nexport const ChatSidebar: React.FC<ChatSidebarProps> = ({\n conversations = [],\n activeConversationId,\n onSelectConversation,\n onNewConversation,\n onDeleteConversation,\n onSearch,\n header,\n footer,\n collapsed = false,\n onCollapsedChange,\n className,\n ...rest\n}) => {\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [confirmDeleteId, setConfirmDeleteId] = useState<string | null>(null);\n const confirmTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>(\n undefined,\n );\n\n // Clear confirm timer on unmount\n useEffect(() => {\n return () => {\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n };\n }, []);\n\n // Filter conversations based on search\n const filteredConversations = useMemo(() => {\n if (!searchQuery.trim()) return conversations;\n\n const query = searchQuery.toLowerCase();\n return conversations.filter(\n (conv) =>\n conv.title.toLowerCase().includes(query) ||\n conv.preview?.toLowerCase().includes(query),\n );\n }, [conversations, searchQuery]);\n\n // Group filtered conversations by date\n const groupedConversations = useMemo(() => {\n return groupConversationsByDate(filteredConversations);\n }, [filteredConversations]);\n\n // Handle search input\n const handleSearchChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n setSearchQuery(value);\n onSearch?.(value);\n },\n [onSearch],\n );\n\n // Handle conversation selection\n const handleSelectConversation = useCallback(\n (id: string) => {\n onSelectConversation?.(id);\n // Close sidebar on mobile after selection\n if (collapsed && onCollapsedChange) {\n onCollapsedChange(true);\n }\n },\n [onSelectConversation, collapsed, onCollapsedChange],\n );\n\n // Handle delete with inline confirmation\n const handleDelete = useCallback(\n (e: React.MouseEvent, id: string) => {\n e.stopPropagation();\n\n if (confirmDeleteId === id) {\n // Second click: actually delete\n onDeleteConversation?.(id);\n setConfirmDeleteId(null);\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n } else {\n // First click: show confirmation\n setConfirmDeleteId(id);\n // Auto-reset after 3 seconds\n if (confirmTimerRef.current) {\n clearTimeout(confirmTimerRef.current);\n }\n confirmTimerRef.current = setTimeout(() => {\n setConfirmDeleteId(null);\n }, 3000);\n }\n },\n [confirmDeleteId, onDeleteConversation],\n );\n\n // Check if there are any conversations to show\n const hasConversations = groupOrder.some(\n (group) => (groupedConversations.get(group)?.length ?? 0) > 0,\n );\n\n return (\n <>\n {/* Mobile overlay */}\n {!collapsed && (\n <div\n className={styles.sidebarOverlay}\n onClick={() => onCollapsedChange?.(true)}\n aria-hidden=\"true\"\n />\n )}\n\n <aside\n className={[\n styles.sidebar,\n collapsed && styles.sidebarCollapsed,\n !collapsed && styles.sidebarOpen,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n {...rest}\n >\n {/* Header */}\n <div className={styles.sidebarHeader}>\n {header || (\n <>\n <button\n className={[\n styles.inputButton,\n styles.inputButtonPrimary,\n styles.sidebarNewButton,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={onNewConversation}\n aria-label=\"New conversation\"\n >\n <span className={styles.sidebarNewButtonInner}>\n <Plus size={18} />\n <span>New Chat</span>\n </span>\n </button>\n\n {/* Mobile close button */}\n <button\n className={[styles.inputButton, styles.sidebarCloseButton].join(\n \" \",\n )}\n onClick={() => onCollapsedChange?.(true)}\n aria-label=\"Close sidebar\"\n >\n <X size={20} />\n </button>\n </>\n )}\n </div>\n\n {/* Search */}\n <div className={styles.sidebarSearch}>\n <div className={styles.sidebarSearchWrapper}>\n <Search size={16} className={styles.sidebarSearchIcon} />\n <input\n type=\"search\"\n className={[\n styles.sidebarSearchInput,\n styles.sidebarSearchInputWithIcon,\n ].join(\" \")}\n placeholder=\"Search conversations...\"\n value={searchQuery}\n onChange={handleSearchChange}\n aria-label=\"Search conversations\"\n />\n </div>\n </div>\n\n {/* Conversation list with date grouping */}\n <div\n className={styles.sidebarList}\n role=\"list\"\n aria-label=\"Conversations\"\n >\n {!hasConversations ? (\n <div className={styles.sidebarEmpty}>\n <MessageSquare size={32} className={styles.sidebarEmptyIcon} />\n <p>\n {searchQuery\n ? \"No conversations found\"\n : \"No conversations yet\"}\n </p>\n </div>\n ) : (\n groupOrder.map((group) => {\n const groupConvs = groupedConversations.get(group) ?? [];\n if (groupConvs.length === 0) return null;\n\n return (\n <div key={group}>\n <div className={styles.sidebarGroupHeader}>\n {groupLabels[group]}\n </div>\n {groupConvs.map((conversation) => (\n <button\n key={conversation.id}\n className={[\n styles.sidebarItem,\n conversation.id === activeConversationId &&\n styles.sidebarItemActive,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={() => handleSelectConversation(conversation.id)}\n role=\"listitem\"\n aria-selected={conversation.id === activeConversationId}\n aria-label={`Conversation: ${conversation.title}`}\n >\n <MessageSquare\n size={18}\n className={styles.sidebarItemIcon}\n />\n\n <div className={styles.sidebarItemContent}>\n <span className={styles.sidebarItemTitle}>\n {conversation.title}\n </span>\n {conversation.preview && (\n <span className={styles.sidebarItemPreview}>\n {conversation.preview}\n </span>\n )}\n </div>\n\n <span className={styles.sidebarItemDate}>\n {formatDate(conversation.updatedAt)}\n </span>\n\n {onDeleteConversation && (\n <button\n className={styles.sidebarItemDelete}\n onClick={(e) => handleDelete(e, conversation.id)}\n aria-label={\n confirmDeleteId === conversation.id\n ? `Confirm delete ${conversation.title}`\n : `Delete ${conversation.title}`\n }\n >\n {confirmDeleteId === conversation.id ? (\n <span className={styles.sidebarItemDeleteConfirm}>\n Delete?\n </span>\n ) : (\n <Trash2 size={16} />\n )}\n </button>\n )}\n </button>\n ))}\n </div>\n );\n })\n )}\n </div>\n\n {/* Footer */}\n {footer && <div className={styles.sidebarFooter}>{footer}</div>}\n </aside>\n </>\n );\n};\n\nChatSidebar.displayName = \"ChatSidebar\";\n"],"names":["groupLabels","groupOrder","getDateGroup","date","now","days","formatDate","group","groupConversationsByDate","conversations","groups","conv","ChatSidebar","activeConversationId","onSelectConversation","onNewConversation","onDeleteConversation","onSearch","header","footer","collapsed","onCollapsedChange","className","rest","searchQuery","setSearchQuery","useState","confirmDeleteId","setConfirmDeleteId","confirmTimerRef","useRef","useEffect","filteredConversations","useMemo","query","groupedConversations","handleSearchChange","useCallback","e","value","handleSelectConversation","id","handleDelete","hasConversations","jsxs","Fragment","jsx","styles","Plus","X","Search","groupConvs","conversation","MessageSquare","Trash2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index132.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index133.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t="_container_ys2b2_9",e="_toast_ys2b2_64",s="_slideIn_ys2b2_1",n="_exiting_ys2b2_77",o="_slideOut_ys2b2_1",_="_slideInLeft_ys2b2_1",i="_slideOutLeft_ys2b2_1",c="_slideInCenter_ys2b2_1",l="_slideOutCenter_ys2b2_1",r="_info_ys2b2_173",b="_icon_ys2b2_173",d="_success_ys2b2_177",u="_warning_ys2b2_181",y="_error_ys2b2_185",a="_content_ys2b2_199",f="_title_ys2b2_204",g="_message_ys2b2_212",O="_action_ys2b2_223",I="_closeButton_ys2b2_246",m={container:t,"top-left":"_top-left_ys2b2_25","top-center":"_top-center_ys2b2_30","top-right":"_top-right_ys2b2_36","bottom-left":"_bottom-left_ys2b2_41","bottom-center":"_bottom-center_ys2b2_47","bottom-right":"_bottom-right_ys2b2_54",toast:e,slideIn:s,exiting:n,slideOut:o,slideInLeft:_,slideOutLeft:i,slideInCenter:c,slideOutCenter:l,info:r,icon:b,success:d,warning:u,error:y,content:a,title:f,message:g,action:O,closeButton:I};exports.action=O;exports.closeButton=I;exports.container=t;exports.content=a;exports.default=m;exports.error=y;exports.exiting=n;exports.icon=b;exports.info=r;exports.message=g;exports.slideIn=s;exports.slideInCenter=c;exports.slideInLeft=_;exports.slideOut=o;exports.slideOutCenter=l;exports.slideOutLeft=i;exports.success=d;exports.title=f;exports.toast=e;exports.warning=u;
|
|
2
2
|
//# sourceMappingURL=index133.cjs.map
|
package/dist/index133.mjs
CHANGED
|
@@ -1,46 +1,50 @@
|
|
|
1
|
-
const
|
|
2
|
-
container:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
1
|
+
const t = "_container_ys2b2_9", s = "_toast_ys2b2_64", e = "_slideIn_ys2b2_1", _ = "_exiting_ys2b2_77", n = "_slideOut_ys2b2_1", o = "_slideInLeft_ys2b2_1", i = "_slideOutLeft_ys2b2_1", c = "_slideInCenter_ys2b2_1", b = "_slideOutCenter_ys2b2_1", l = "_info_ys2b2_173", r = "_icon_ys2b2_173", y = "_success_ys2b2_177", d = "_warning_ys2b2_181", a = "_error_ys2b2_185", u = "_content_ys2b2_199", f = "_title_ys2b2_204", g = "_message_ys2b2_212", m = "_action_ys2b2_223", I = "_closeButton_ys2b2_246", O = {
|
|
2
|
+
container: t,
|
|
3
|
+
"top-left": "_top-left_ys2b2_25",
|
|
4
|
+
"top-center": "_top-center_ys2b2_30",
|
|
5
|
+
"top-right": "_top-right_ys2b2_36",
|
|
6
|
+
"bottom-left": "_bottom-left_ys2b2_41",
|
|
7
|
+
"bottom-center": "_bottom-center_ys2b2_47",
|
|
8
|
+
"bottom-right": "_bottom-right_ys2b2_54",
|
|
9
|
+
toast: s,
|
|
10
|
+
slideIn: e,
|
|
11
|
+
exiting: _,
|
|
12
|
+
slideOut: n,
|
|
13
|
+
slideInLeft: o,
|
|
14
|
+
slideOutLeft: i,
|
|
15
|
+
slideInCenter: c,
|
|
16
|
+
slideOutCenter: b,
|
|
17
|
+
info: l,
|
|
18
|
+
icon: r,
|
|
19
|
+
success: y,
|
|
20
|
+
warning: d,
|
|
21
|
+
error: a,
|
|
22
|
+
content: u,
|
|
23
|
+
title: f,
|
|
24
|
+
message: g,
|
|
25
|
+
action: m,
|
|
26
|
+
closeButton: I
|
|
25
27
|
};
|
|
26
28
|
export {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
e as
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
n as
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
29
|
+
m as action,
|
|
30
|
+
I as closeButton,
|
|
31
|
+
t as container,
|
|
32
|
+
u as content,
|
|
33
|
+
O as default,
|
|
34
|
+
a as error,
|
|
35
|
+
_ as exiting,
|
|
36
|
+
r as icon,
|
|
37
|
+
l as info,
|
|
38
|
+
g as message,
|
|
39
|
+
e as slideIn,
|
|
40
|
+
c as slideInCenter,
|
|
41
|
+
o as slideInLeft,
|
|
42
|
+
n as slideOut,
|
|
43
|
+
b as slideOutCenter,
|
|
44
|
+
i as slideOutLeft,
|
|
45
|
+
y as success,
|
|
46
|
+
f as title,
|
|
47
|
+
s as toast,
|
|
48
|
+
d as warning
|
|
45
49
|
};
|
|
46
50
|
//# sourceMappingURL=index133.mjs.map
|
package/dist/index133.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index133.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index133.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index134.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a="_carousel_1ch8a_9",t="_track_1ch8a_19",c="_trackEdge_1ch8a_33",_="_trackContainer_1ch8a_42",e="_peek_1ch8a_48",o="_gapSm_1ch8a_54",n="_gapMd_1ch8a_58",r="_gapLg_1ch8a_62",i="_navigation_1ch8a_70",g="_navButton_1ch8a_77",h="_card_1ch8a_107",d="_imageWrapper_1ch8a_138",s="_overlay_1ch8a_153",p="_content_1ch8a_176",l="_eyebrow_1ch8a_187",v="_cardTitle_1ch8a_196",k="_cardDescription_1ch8a_205",u="_action_1ch8a_213",y="_pagination_1ch8a_297",m="_dot_1ch8a_304",A="_dotActive_1ch8a_321",b="_highlightActive_1ch8a_331",M="_cardHighlighted_1ch8a_335",S={carousel:a,track:t,trackEdge:c,trackContainer:_,peek:e,gapSm:o,gapMd:n,gapLg:r,navigation:i,navButton:g,card:h,"aspect-16-9":"_aspect-16-9_1ch8a_118","aspect-4-3":"_aspect-4-3_1ch8a_122","aspect-1-1":"_aspect-1-1_1ch8a_126","aspect-3-4":"_aspect-3-4_1ch8a_130",imageWrapper:d,overlay:s,"overlay-gradient":"_overlay-gradient_1ch8a_159","overlay-dark":"_overlay-dark_1ch8a_168",content:p,eyebrow:l,cardTitle:v,cardDescription:k,action:u,"variant-editorial":"_variant-editorial_1ch8a_221","variant-product":"_variant-product_1ch8a_233","variant-gallery":"_variant-gallery_1ch8a_280",pagination:y,dot:m,dotActive:A,highlightActive:b,cardHighlighted:M};exports.action=u;exports.card=h;exports.cardDescription=k;exports.cardHighlighted=M;exports.cardTitle=v;exports.carousel=a;exports.content=p;exports.default=S;exports.dot=m;exports.dotActive=A;exports.eyebrow=l;exports.gapLg=r;exports.gapMd=n;exports.gapSm=o;exports.highlightActive=b;exports.imageWrapper=d;exports.navButton=g;exports.navigation=i;exports.overlay=s;exports.pagination=y;exports.peek=e;exports.track=t;exports.trackContainer=_;exports.trackEdge=c;
|
|
2
2
|
//# sourceMappingURL=index134.cjs.map
|
package/dist/index134.mjs
CHANGED
|
@@ -1,48 +1,61 @@
|
|
|
1
|
-
const
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
const a = "_carousel_1ch8a_9", c = "_track_1ch8a_19", t = "_trackEdge_1ch8a_33", _ = "_trackContainer_1ch8a_42", e = "_peek_1ch8a_48", o = "_gapSm_1ch8a_54", n = "_gapMd_1ch8a_58", r = "_gapLg_1ch8a_62", i = "_navigation_1ch8a_70", h = "_navButton_1ch8a_77", s = "_card_1ch8a_107", g = "_imageWrapper_1ch8a_138", d = "_overlay_1ch8a_153", p = "_content_1ch8a_176", l = "_eyebrow_1ch8a_187", v = "_cardTitle_1ch8a_196", k = "_cardDescription_1ch8a_205", y = "_action_1ch8a_213", u = "_pagination_1ch8a_297", m = "_dot_1ch8a_304", A = "_dotActive_1ch8a_321", b = "_highlightActive_1ch8a_331", w = "_cardHighlighted_1ch8a_335", B = {
|
|
2
|
+
carousel: a,
|
|
3
|
+
track: c,
|
|
4
|
+
trackEdge: t,
|
|
5
|
+
trackContainer: _,
|
|
6
|
+
peek: e,
|
|
7
|
+
gapSm: o,
|
|
8
|
+
gapMd: n,
|
|
9
|
+
gapLg: r,
|
|
10
|
+
navigation: i,
|
|
11
|
+
navButton: h,
|
|
12
|
+
card: s,
|
|
13
|
+
"aspect-16-9": "_aspect-16-9_1ch8a_118",
|
|
14
|
+
"aspect-4-3": "_aspect-4-3_1ch8a_122",
|
|
15
|
+
"aspect-1-1": "_aspect-1-1_1ch8a_126",
|
|
16
|
+
"aspect-3-4": "_aspect-3-4_1ch8a_130",
|
|
17
|
+
imageWrapper: g,
|
|
18
|
+
overlay: d,
|
|
19
|
+
"overlay-gradient": "_overlay-gradient_1ch8a_159",
|
|
20
|
+
"overlay-dark": "_overlay-dark_1ch8a_168",
|
|
21
|
+
content: p,
|
|
22
|
+
eyebrow: l,
|
|
23
|
+
cardTitle: v,
|
|
24
|
+
cardDescription: k,
|
|
25
|
+
action: y,
|
|
26
|
+
"variant-editorial": "_variant-editorial_1ch8a_221",
|
|
27
|
+
"variant-product": "_variant-product_1ch8a_233",
|
|
28
|
+
"variant-gallery": "_variant-gallery_1ch8a_280",
|
|
29
|
+
pagination: u,
|
|
30
|
+
dot: m,
|
|
31
|
+
dotActive: A,
|
|
32
|
+
highlightActive: b,
|
|
33
|
+
cardHighlighted: w
|
|
23
34
|
};
|
|
24
35
|
export {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
36
|
+
y as action,
|
|
37
|
+
s as card,
|
|
38
|
+
k as cardDescription,
|
|
39
|
+
w as cardHighlighted,
|
|
40
|
+
v as cardTitle,
|
|
41
|
+
a as carousel,
|
|
42
|
+
p as content,
|
|
43
|
+
B as default,
|
|
44
|
+
m as dot,
|
|
45
|
+
A as dotActive,
|
|
46
|
+
l as eyebrow,
|
|
47
|
+
r as gapLg,
|
|
48
|
+
n as gapMd,
|
|
49
|
+
o as gapSm,
|
|
50
|
+
b as highlightActive,
|
|
51
|
+
g as imageWrapper,
|
|
52
|
+
h as navButton,
|
|
53
|
+
i as navigation,
|
|
54
|
+
d as overlay,
|
|
55
|
+
u as pagination,
|
|
56
|
+
e as peek,
|
|
57
|
+
c as track,
|
|
58
|
+
_ as trackContainer,
|
|
59
|
+
t as trackEdge
|
|
47
60
|
};
|
|
48
61
|
//# sourceMappingURL=index134.mjs.map
|
package/dist/index134.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index134.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index134.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index135.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_metricCards_19r8j_8",r="_card_19r8j_33",a="_interactive_19r8j_49",c="_loading_19r8j_63",_="_cardHeader_19r8j_71",t="_cardIcon_19r8j_77",o="_label_19r8j_88",n="_cardBody_19r8j_100",s="_value_19r8j_107",i="_skeleton_19r8j_116",l="_pulse_19r8j_1",d="_sparkline_19r8j_134",j="_cardFooter_19r8j_143",v="_change_19r8j_150",p="_positive_19r8j_159",g="_negative_19r8j_163",u="_changeLabel_19r8j_167",b="_description_19r8j_173",h={metricCards:e,"cols-2":"_cols-2_19r8j_13","cols-3":"_cols-3_19r8j_17","cols-4":"_cols-4_19r8j_21","cols-5":"_cols-5_19r8j_25",card:r,interactive:a,loading:c,cardHeader:_,cardIcon:t,label:o,cardBody:n,value:s,skeleton:i,pulse:l,sparkline:d,cardFooter:j,change:v,positive:p,negative:g,changeLabel:u,description:b,"variant-compact":"_variant-compact_19r8j_184","variant-detailed":"_variant-detailed_19r8j_214"};exports.card=r;exports.cardBody=n;exports.cardFooter=j;exports.cardHeader=_;exports.cardIcon=t;exports.change=v;exports.changeLabel=u;exports.default=h;exports.description=b;exports.interactive=a;exports.label=o;exports.loading=c;exports.metricCards=e;exports.negative=g;exports.positive=p;exports.pulse=l;exports.skeleton=i;exports.sparkline=d;exports.value=s;
|
|
2
2
|
//# sourceMappingURL=index135.cjs.map
|