hazo_chat 2.0.10 → 2.0.12

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 (147) hide show
  1. package/README.md +379 -7
  2. package/SETUP_CHECKLIST.md +95 -0
  3. package/package.json +4 -2
  4. package/dist/api/index.d.ts +0 -24
  5. package/dist/api/index.d.ts.map +0 -1
  6. package/dist/api/index.js +0 -24
  7. package/dist/api/index.js.map +0 -1
  8. package/dist/api/messages.d.ts +0 -34
  9. package/dist/api/messages.d.ts.map +0 -1
  10. package/dist/api/messages.js +0 -214
  11. package/dist/api/messages.js.map +0 -1
  12. package/dist/api/types.d.ts +0 -69
  13. package/dist/api/types.d.ts.map +0 -1
  14. package/dist/api/types.js +0 -8
  15. package/dist/api/types.js.map +0 -1
  16. package/dist/components/hazo_chat/hazo_chat.d.ts +0 -28
  17. package/dist/components/hazo_chat/hazo_chat.d.ts.map +0 -1
  18. package/dist/components/hazo_chat/hazo_chat.js +0 -200
  19. package/dist/components/hazo_chat/hazo_chat.js.map +0 -1
  20. package/dist/components/hazo_chat/hazo_chat_attachment_preview.d.ts +0 -17
  21. package/dist/components/hazo_chat/hazo_chat_attachment_preview.d.ts.map +0 -1
  22. package/dist/components/hazo_chat/hazo_chat_attachment_preview.js +0 -60
  23. package/dist/components/hazo_chat/hazo_chat_attachment_preview.js.map +0 -1
  24. package/dist/components/hazo_chat/hazo_chat_context.d.ts +0 -42
  25. package/dist/components/hazo_chat/hazo_chat_context.d.ts.map +0 -1
  26. package/dist/components/hazo_chat/hazo_chat_context.js +0 -273
  27. package/dist/components/hazo_chat/hazo_chat_context.js.map +0 -1
  28. package/dist/components/hazo_chat/hazo_chat_document_viewer.d.ts +0 -15
  29. package/dist/components/hazo_chat/hazo_chat_document_viewer.d.ts.map +0 -1
  30. package/dist/components/hazo_chat/hazo_chat_document_viewer.js +0 -111
  31. package/dist/components/hazo_chat/hazo_chat_document_viewer.js.map +0 -1
  32. package/dist/components/hazo_chat/hazo_chat_header.d.ts +0 -16
  33. package/dist/components/hazo_chat/hazo_chat_header.d.ts.map +0 -1
  34. package/dist/components/hazo_chat/hazo_chat_header.js +0 -24
  35. package/dist/components/hazo_chat/hazo_chat_header.js.map +0 -1
  36. package/dist/components/hazo_chat/hazo_chat_input.d.ts +0 -16
  37. package/dist/components/hazo_chat/hazo_chat_input.d.ts.map +0 -1
  38. package/dist/components/hazo_chat/hazo_chat_input.js +0 -75
  39. package/dist/components/hazo_chat/hazo_chat_input.js.map +0 -1
  40. package/dist/components/hazo_chat/hazo_chat_messages.d.ts +0 -17
  41. package/dist/components/hazo_chat/hazo_chat_messages.d.ts.map +0 -1
  42. package/dist/components/hazo_chat/hazo_chat_messages.js +0 -109
  43. package/dist/components/hazo_chat/hazo_chat_messages.js.map +0 -1
  44. package/dist/components/hazo_chat/hazo_chat_reference_list.d.ts +0 -16
  45. package/dist/components/hazo_chat/hazo_chat_reference_list.d.ts.map +0 -1
  46. package/dist/components/hazo_chat/hazo_chat_reference_list.js +0 -59
  47. package/dist/components/hazo_chat/hazo_chat_reference_list.js.map +0 -1
  48. package/dist/components/hazo_chat/hazo_chat_sidebar.d.ts +0 -18
  49. package/dist/components/hazo_chat/hazo_chat_sidebar.d.ts.map +0 -1
  50. package/dist/components/hazo_chat/hazo_chat_sidebar.js +0 -72
  51. package/dist/components/hazo_chat/hazo_chat_sidebar.js.map +0 -1
  52. package/dist/components/hazo_chat/index.d.ts +0 -16
  53. package/dist/components/hazo_chat/index.d.ts.map +0 -1
  54. package/dist/components/hazo_chat/index.js +0 -19
  55. package/dist/components/hazo_chat/index.js.map +0 -1
  56. package/dist/components/index.d.ts +0 -9
  57. package/dist/components/index.d.ts.map +0 -1
  58. package/dist/components/index.js +0 -11
  59. package/dist/components/index.js.map +0 -1
  60. package/dist/components/ui/avatar.d.ts +0 -13
  61. package/dist/components/ui/avatar.d.ts.map +0 -1
  62. package/dist/components/ui/avatar.js +0 -28
  63. package/dist/components/ui/avatar.js.map +0 -1
  64. package/dist/components/ui/badge.d.ts +0 -16
  65. package/dist/components/ui/badge.d.ts.map +0 -1
  66. package/dist/components/ui/badge.js +0 -36
  67. package/dist/components/ui/badge.js.map +0 -1
  68. package/dist/components/ui/button.d.ts +0 -18
  69. package/dist/components/ui/button.d.ts.map +0 -1
  70. package/dist/components/ui/button.js +0 -47
  71. package/dist/components/ui/button.js.map +0 -1
  72. package/dist/components/ui/chat_bubble.d.ts +0 -18
  73. package/dist/components/ui/chat_bubble.d.ts.map +0 -1
  74. package/dist/components/ui/chat_bubble.js +0 -88
  75. package/dist/components/ui/chat_bubble.js.map +0 -1
  76. package/dist/components/ui/index.d.ts +0 -18
  77. package/dist/components/ui/index.d.ts.map +0 -1
  78. package/dist/components/ui/index.js +0 -20
  79. package/dist/components/ui/index.js.map +0 -1
  80. package/dist/components/ui/input.d.ts +0 -11
  81. package/dist/components/ui/input.d.ts.map +0 -1
  82. package/dist/components/ui/input.js +0 -18
  83. package/dist/components/ui/input.js.map +0 -1
  84. package/dist/components/ui/loading_skeleton.d.ts +0 -19
  85. package/dist/components/ui/loading_skeleton.d.ts.map +0 -1
  86. package/dist/components/ui/loading_skeleton.js +0 -30
  87. package/dist/components/ui/loading_skeleton.js.map +0 -1
  88. package/dist/components/ui/scroll-area.d.ts +0 -12
  89. package/dist/components/ui/scroll-area.d.ts.map +0 -1
  90. package/dist/components/ui/scroll-area.js +0 -25
  91. package/dist/components/ui/scroll-area.js.map +0 -1
  92. package/dist/components/ui/separator.d.ts +0 -11
  93. package/dist/components/ui/separator.d.ts.map +0 -1
  94. package/dist/components/ui/separator.js +0 -18
  95. package/dist/components/ui/separator.js.map +0 -1
  96. package/dist/components/ui/skeleton.d.ts +0 -9
  97. package/dist/components/ui/skeleton.d.ts.map +0 -1
  98. package/dist/components/ui/skeleton.js +0 -16
  99. package/dist/components/ui/skeleton.js.map +0 -1
  100. package/dist/components/ui/textarea.d.ts +0 -11
  101. package/dist/components/ui/textarea.d.ts.map +0 -1
  102. package/dist/components/ui/textarea.js +0 -18
  103. package/dist/components/ui/textarea.js.map +0 -1
  104. package/dist/components/ui/tooltip.d.ts +0 -14
  105. package/dist/components/ui/tooltip.d.ts.map +0 -1
  106. package/dist/components/ui/tooltip.js +0 -30
  107. package/dist/components/ui/tooltip.js.map +0 -1
  108. package/dist/hooks/index.d.ts +0 -10
  109. package/dist/hooks/index.d.ts.map +0 -1
  110. package/dist/hooks/index.js +0 -10
  111. package/dist/hooks/index.js.map +0 -1
  112. package/dist/hooks/use_chat_messages.d.ts +0 -33
  113. package/dist/hooks/use_chat_messages.d.ts.map +0 -1
  114. package/dist/hooks/use_chat_messages.js +0 -466
  115. package/dist/hooks/use_chat_messages.js.map +0 -1
  116. package/dist/hooks/use_chat_references.d.ts +0 -17
  117. package/dist/hooks/use_chat_references.d.ts.map +0 -1
  118. package/dist/hooks/use_chat_references.js +0 -133
  119. package/dist/hooks/use_chat_references.js.map +0 -1
  120. package/dist/hooks/use_file_upload.d.ts +0 -23
  121. package/dist/hooks/use_file_upload.d.ts.map +0 -1
  122. package/dist/hooks/use_file_upload.js +0 -212
  123. package/dist/hooks/use_file_upload.js.map +0 -1
  124. package/dist/index.d.ts +0 -13
  125. package/dist/index.d.ts.map +0 -1
  126. package/dist/index.js +0 -17
  127. package/dist/index.js.map +0 -1
  128. package/dist/lib/config.d.ts +0 -41
  129. package/dist/lib/config.d.ts.map +0 -1
  130. package/dist/lib/config.js +0 -93
  131. package/dist/lib/config.js.map +0 -1
  132. package/dist/lib/constants.d.ts +0 -41
  133. package/dist/lib/constants.d.ts.map +0 -1
  134. package/dist/lib/constants.js +0 -72
  135. package/dist/lib/constants.js.map +0 -1
  136. package/dist/lib/index.d.ts +0 -9
  137. package/dist/lib/index.d.ts.map +0 -1
  138. package/dist/lib/index.js +0 -9
  139. package/dist/lib/index.js.map +0 -1
  140. package/dist/lib/utils.d.ts +0 -17
  141. package/dist/lib/utils.d.ts.map +0 -1
  142. package/dist/lib/utils.js +0 -20
  143. package/dist/lib/utils.js.map +0 -1
  144. package/dist/types/index.d.ts +0 -388
  145. package/dist/types/index.d.ts.map +0 -1
  146. package/dist/types/index.js +0 -11
  147. package/dist/types/index.js.map +0 -1
@@ -1,18 +0,0 @@
1
- /**
2
- * Button Component (shadcn/ui style)
3
- *
4
- * A versatile button component with multiple variants and sizes.
5
- * Uses class-variance-authority for variant management.
6
- */
7
- import * as React from 'react';
8
- import { type VariantProps } from 'class-variance-authority';
9
- declare const button_variants: (props?: ({
10
- variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
11
- size?: "default" | "sm" | "lg" | "icon" | null | undefined;
12
- } & import("class-variance-authority/types").ClassProp) | undefined) => string;
13
- export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof button_variants> {
14
- as_child?: boolean;
15
- }
16
- declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
17
- export { Button, button_variants };
18
- //# sourceMappingURL=button.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAOlE,QAAA,MAAM,eAAe;;;8EAwBpB,CAAC;AAMF,MAAM,WAAW,WACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EACnD,YAAY,CAAC,OAAO,eAAe,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAMD,QAAA,MAAM,MAAM,uFAWX,CAAC;AAIF,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * Button Component (shadcn/ui style)
3
- *
4
- * A versatile button component with multiple variants and sizes.
5
- * Uses class-variance-authority for variant management.
6
- */
7
- 'use client';
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- import * as React from 'react';
10
- import { Slot } from '@radix-ui/react-slot';
11
- import { cva } from 'class-variance-authority';
12
- import { cn } from '../../lib/utils.js';
13
- // ============================================================================
14
- // Button Variants
15
- // ============================================================================
16
- const button_variants = cva('inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0', {
17
- variants: {
18
- variant: {
19
- default: 'bg-primary text-primary-foreground hover:bg-primary/90',
20
- destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',
21
- outline: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',
22
- secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',
23
- ghost: 'hover:bg-accent hover:text-accent-foreground',
24
- link: 'text-primary underline-offset-4 hover:underline',
25
- },
26
- size: {
27
- default: 'h-10 px-4 py-2',
28
- sm: 'h-9 rounded-md px-3',
29
- lg: 'h-11 rounded-md px-8',
30
- icon: 'h-10 w-10',
31
- },
32
- },
33
- defaultVariants: {
34
- variant: 'default',
35
- size: 'default',
36
- },
37
- });
38
- // ============================================================================
39
- // Component
40
- // ============================================================================
41
- const Button = React.forwardRef(({ className, variant, size, as_child = false, ...props }, ref) => {
42
- const Comp = as_child ? Slot : 'button';
43
- return (_jsx(Comp, { className: cn(button_variants({ variant, size, className })), ref: ref, ...props }));
44
- });
45
- Button.displayName = 'Button';
46
- export { Button, button_variants };
47
- //# sourceMappingURL=button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,eAAe,GAAG,GAAG,CACzB,0VAA0V,EAC1V;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,wDAAwD;YACjE,WAAW,EAAE,oEAAoE;YACjF,OAAO,EAAE,gFAAgF;YACzF,SAAS,EAAE,8DAA8D;YACzE,KAAK,EAAE,8CAA8C;YACrD,IAAI,EAAE,iDAAiD;SACxD;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,gBAAgB;YACzB,EAAE,EAAE,qBAAqB;YACzB,EAAE,EAAE,sBAAsB;YAC1B,IAAI,EAAE,WAAW;SAClB;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAC;AAYF,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAC7B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IACxC,OAAO,CACL,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,EAC5D,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE9B,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * ChatBubble Component
3
- *
4
- * Renders a single chat message bubble with:
5
- * - Profile picture (using Avatar)
6
- * - Message text (or deleted placeholder)
7
- * - Timestamp with timezone formatting
8
- * - Delete option for sender's messages (using Button)
9
- * - Reference/attachment icons
10
- *
11
- * Uses shadcn/ui Avatar, Button, and Tooltip components.
12
- */
13
- import type { ChatBubbleProps } from '../../types/index.js';
14
- export declare function ChatBubble({ message, is_sender, sender_profile, timezone, on_delete, on_reference_click, is_highlighted, className }: ChatBubbleProps): import("react/jsx-runtime").JSX.Element;
15
- export declare namespace ChatBubble {
16
- var displayName: string;
17
- }
18
- //# sourceMappingURL=chat_bubble.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat_bubble.d.ts","sourceRoot":"","sources":["../../../src/components/ui/chat_bubble.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAaH,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,sBAAsB,CAAC;AA4C/E,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,SAAS,EACT,cAAc,EACd,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,cAAsB,EACtB,SAAS,EACV,EAAE,eAAe,2CAgKjB;yBAzKe,UAAU"}
@@ -1,88 +0,0 @@
1
- /**
2
- * ChatBubble Component
3
- *
4
- * Renders a single chat message bubble with:
5
- * - Profile picture (using Avatar)
6
- * - Message text (or deleted placeholder)
7
- * - Timestamp with timezone formatting
8
- * - Delete option for sender's messages (using Button)
9
- * - Reference/attachment icons
10
- *
11
- * Uses shadcn/ui Avatar, Button, and Tooltip components.
12
- */
13
- 'use client';
14
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
- import { useState, useCallback } from 'react';
16
- import { format } from 'date-fns';
17
- import { toZonedTime } from 'date-fns-tz';
18
- import { IoTrashOutline, IoDocumentAttachSharp, IoCheckmarkDoneSharp } from 'react-icons/io5';
19
- import { cn } from '../../lib/utils.js';
20
- import { DELETED_MESSAGE_PLACEHOLDER } from '../../lib/constants.js';
21
- import { Avatar, AvatarImage, AvatarFallback } from './avatar.js';
22
- import { Button } from './button.js';
23
- import { Tooltip, TooltipContent, TooltipTrigger } from './tooltip.js';
24
- // ============================================================================
25
- // Helper Functions
26
- // ============================================================================
27
- /**
28
- * Format timestamp with timezone
29
- */
30
- function format_timestamp(timestamp, timezone) {
31
- try {
32
- const date = new Date(timestamp);
33
- const zoned_date = toZonedTime(date, timezone);
34
- return format(zoned_date, 'HH:mm');
35
- }
36
- catch {
37
- return format(new Date(timestamp), 'HH:mm');
38
- }
39
- }
40
- /**
41
- * Get initials from name
42
- */
43
- function get_initials(name) {
44
- if (!name)
45
- return '?';
46
- return name
47
- .split(' ')
48
- .map((part) => part[0])
49
- .join('')
50
- .substring(0, 2)
51
- .toUpperCase();
52
- }
53
- // ============================================================================
54
- // Component
55
- // ============================================================================
56
- export function ChatBubble({ message, is_sender, sender_profile, timezone, on_delete, on_reference_click, is_highlighted = false, className }) {
57
- const [show_delete_confirm, set_show_delete_confirm] = useState(false);
58
- const is_deleted = message.deleted_at !== null;
59
- const display_text = is_deleted ? DELETED_MESSAGE_PLACEHOLDER : message.message_text;
60
- const has_references = message.reference_list && message.reference_list.length > 0;
61
- // Handle delete click
62
- const handle_delete_click = useCallback(() => {
63
- if (show_delete_confirm) {
64
- on_delete?.();
65
- set_show_delete_confirm(false);
66
- }
67
- else {
68
- set_show_delete_confirm(true);
69
- // Auto-hide after 3 seconds
70
- setTimeout(() => set_show_delete_confirm(false), 3000);
71
- }
72
- }, [show_delete_confirm, on_delete]);
73
- // Handle reference click
74
- const handle_reference_click = useCallback((reference) => {
75
- on_reference_click?.(reference);
76
- }, [on_reference_click]);
77
- return (_jsxs("div", { className: cn('cls_chat_bubble_wrapper', 'flex w-full mb-4 group', is_sender ? 'justify-end' : 'justify-start', is_highlighted && 'animate-pulse bg-primary/5 -mx-2 px-2 py-1 rounded-lg', className), id: `message-${message.id}`, children: [!is_sender && (_jsxs(Avatar, { className: "cls_bubble_avatar h-8 w-8 mr-2 flex-shrink-0", children: [_jsx(AvatarImage, { src: sender_profile?.avatar_url, alt: `${sender_profile?.name || 'User'} avatar` }), _jsx(AvatarFallback, { className: "text-xs", children: get_initials(sender_profile?.name) })] })), _jsxs("div", { className: "cls_bubble_content flex flex-col max-w-[70%]", children: [!is_sender && sender_profile?.name && (_jsx("span", { className: "cls_bubble_sender text-xs text-muted-foreground mb-1 ml-1", children: sender_profile.name })), _jsxs("div", { className: cn('cls_bubble', 'px-4 py-2 relative',
78
- // Explicit rounded corners using Tailwind's arbitrary value syntax for better compatibility
79
- // Top-left, Top-right, Bottom-right, Bottom-left
80
- is_sender
81
- ? 'bg-primary text-primary-foreground rounded-[16px_16px_6px_16px]'
82
- : 'bg-muted text-foreground rounded-[16px_16px_16px_6px]', is_deleted && 'opacity-60 italic'), children: [_jsx("p", { className: "cls_bubble_text text-sm whitespace-pre-wrap break-words", children: display_text }), has_references && !is_deleted && (_jsx("div", { className: "cls_bubble_references flex flex-wrap gap-1 mt-2 pt-2 border-t border-current/10", children: message.reference_list?.map((ref) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: () => handle_reference_click(ref), className: cn('cls_bubble_reference_btn', 'h-6 px-2 text-xs', is_sender
83
- ? 'hover:bg-primary-foreground/20'
84
- : 'hover:bg-background/50'), children: [_jsx(IoDocumentAttachSharp, { className: "w-3 h-3 mr-1" }), _jsx("span", { className: "truncate max-w-[100px]", children: ref.name })] }, ref.id))) })), is_sender && !is_deleted && on_delete && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { variant: show_delete_confirm ? 'destructive' : 'ghost', size: "icon", onClick: handle_delete_click, className: cn('cls_bubble_delete_btn', 'absolute -left-8 top-1/2 -translate-y-1/2', 'w-6 h-6', 'opacity-0 group-hover:opacity-100 transition-opacity'), children: _jsx(IoTrashOutline, { className: "w-3.5 h-3.5" }) }) }), _jsx(TooltipContent, { children: show_delete_confirm ? 'Click again to confirm' : 'Delete message' })] }))] }), _jsxs("div", { className: cn('cls_bubble_meta', 'flex flex-row items-center gap-1 mt-1', // Explicitly set flex-row to prevent any reversal
85
- is_sender ? 'justify-end mr-1' : 'ml-1'), children: [_jsx("span", { className: "cls_bubble_time text-xs text-muted-foreground order-1", children: format_timestamp(message.created_at, timezone) }), is_sender && message.read_at && (_jsx(IoCheckmarkDoneSharp, { className: "h-4 w-4 text-green-500 flex-shrink-0 order-2" }))] })] }), is_sender && (_jsxs(Avatar, { className: "cls_bubble_avatar h-8 w-8 ml-2 flex-shrink-0", children: [_jsx(AvatarImage, { src: sender_profile?.avatar_url, alt: "Your avatar" }), _jsx(AvatarFallback, { className: "text-xs bg-primary/20 text-primary", children: get_initials(sender_profile?.name) })] }))] }));
86
- }
87
- ChatBubble.displayName = 'ChatBubble';
88
- //# sourceMappingURL=chat_bubble.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat_bubble.js","sourceRoot":"","sources":["../../../src/components/ui/chat_bubble.tsx"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- /**
2
- * UI components barrel export file
3
- *
4
- * Exports reusable UI components from the hazo_chat package.
5
- * All export paths use explicit .js extensions for ES module compatibility.
6
- */
7
- export { Button, button_variants, type ButtonProps } from './button.js';
8
- export { Input, type InputProps } from './input.js';
9
- export { Textarea, type TextareaProps } from './textarea.js';
10
- export { Avatar, AvatarImage, AvatarFallback } from './avatar.js';
11
- export { Skeleton } from './skeleton.js';
12
- export { ScrollArea, ScrollBar } from './scroll-area.js';
13
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider } from './tooltip.js';
14
- export { Separator } from './separator.js';
15
- export { Badge, badge_variants, type BadgeProps } from './badge.js';
16
- export { ChatBubble } from './chat_bubble.js';
17
- export { LoadingSkeleton } from './loading_skeleton.js';
18
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAGpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * UI components barrel export file
3
- *
4
- * Exports reusable UI components from the hazo_chat package.
5
- * All export paths use explicit .js extensions for ES module compatibility.
6
- */
7
- // Shadcn-style components
8
- export { Button, button_variants } from './button.js';
9
- export { Input } from './input.js';
10
- export { Textarea } from './textarea.js';
11
- export { Avatar, AvatarImage, AvatarFallback } from './avatar.js';
12
- export { Skeleton } from './skeleton.js';
13
- export { ScrollArea, ScrollBar } from './scroll-area.js';
14
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider } from './tooltip.js';
15
- export { Separator } from './separator.js';
16
- export { Badge, badge_variants } from './badge.js';
17
- // Chat-specific components
18
- export { ChatBubble } from './chat_bubble.js';
19
- export { LoadingSkeleton } from './loading_skeleton.js';
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,0BAA0B;AAC1B,OAAO,EAAE,MAAM,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,KAAK,EAAmB,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,cAAc,EAAmB,MAAM,YAAY,CAAC;AAEpE,2BAA2B;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Input Component (shadcn/ui style)
3
- *
4
- * A styled text input component with consistent styling.
5
- */
6
- import * as React from 'react';
7
- export interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
8
- }
9
- declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
10
- export { Input };
11
- //# sourceMappingURL=input.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,MAAM,WAAW,UACf,SAAQ,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;CAAG;AAMxD,QAAA,MAAM,KAAK,qFAcV,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Input Component (shadcn/ui style)
3
- *
4
- * A styled text input component with consistent styling.
5
- */
6
- 'use client';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import * as React from 'react';
9
- import { cn } from '../../lib/utils.js';
10
- // ============================================================================
11
- // Component
12
- // ============================================================================
13
- const Input = React.forwardRef(({ className, type, ...props }, ref) => {
14
- return (_jsx("input", { type: type, className: cn('flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50', className), ref: ref, ...props }));
15
- });
16
- Input.displayName = 'Input';
17
- export { Input };
18
- //# sourceMappingURL=input.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/components/ui/input.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AASxC,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAC5B,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACrC,OAAO,CACL,gBACE,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,EAAE,CACX,mXAAmX,EACnX,SAAS,CACV,EACD,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;AAE5B,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * LoadingSkeleton Component
3
- *
4
- * Pre-built loading skeleton layouts for the chat interface.
5
- * Uses the shadcn-style Skeleton component.
6
- */
7
- export interface LoadingSkeletonProps {
8
- /** Number of skeleton rows to display */
9
- count?: number;
10
- /** Additional CSS classes */
11
- className?: string;
12
- /** Type of skeleton layout */
13
- variant?: 'message' | 'reference' | 'profile';
14
- }
15
- export declare function LoadingSkeleton({ count, className, variant }: LoadingSkeletonProps): import("react/jsx-runtime").JSX.Element;
16
- export declare namespace LoadingSkeleton {
17
- var displayName: string;
18
- }
19
- //# sourceMappingURL=loading_skeleton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loading_skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/ui/loading_skeleton.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,MAAM,WAAW,oBAAoB;IACnC,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;CAC/C;AAMD,wBAAgB,eAAe,CAAC,EAC9B,KAAS,EACT,SAAS,EACT,OAAmB,EACpB,EAAE,oBAAoB,2CA8DtB;yBAlEe,eAAe"}
@@ -1,30 +0,0 @@
1
- /**
2
- * LoadingSkeleton Component
3
- *
4
- * Pre-built loading skeleton layouts for the chat interface.
5
- * Uses the shadcn-style Skeleton component.
6
- */
7
- 'use client';
8
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
- import { cn } from '../../lib/utils.js';
10
- import { Skeleton } from './skeleton.js';
11
- // ============================================================================
12
- // Component
13
- // ============================================================================
14
- export function LoadingSkeleton({ count = 3, className, variant = 'message' }) {
15
- const render_skeleton = () => {
16
- switch (variant) {
17
- case 'message':
18
- return (_jsx(_Fragment, { children: Array.from({ length: count }).map((_, index) => (_jsxs("div", { className: cn('cls_skeleton_message flex gap-2 mb-4', index % 2 === 0 ? 'justify-start' : 'justify-end'), children: [index % 2 === 0 && (_jsx(Skeleton, { className: "h-8 w-8 rounded-full" })), _jsxs("div", { className: "space-y-2", children: [_jsx(Skeleton, { className: "h-4 w-[200px]" }), _jsx(Skeleton, { className: "h-4 w-[150px]" })] }), index % 2 !== 0 && (_jsx(Skeleton, { className: "h-8 w-8 rounded-full" }))] }, index))) }));
19
- case 'reference':
20
- return (_jsx(_Fragment, { children: Array.from({ length: count }).map((_, index) => (_jsxs("div", { className: "cls_skeleton_reference flex items-center gap-2 p-2", children: [_jsx(Skeleton, { className: "h-6 w-6 rounded" }), _jsx(Skeleton, { className: "h-4 w-[100px]" })] }, index))) }));
21
- case 'profile':
22
- return (_jsxs("div", { className: "cls_skeleton_profile flex items-center gap-3", children: [_jsx(Skeleton, { className: "h-10 w-10 rounded-full" }), _jsxs("div", { className: "space-y-2", children: [_jsx(Skeleton, { className: "h-4 w-[120px]" }), _jsx(Skeleton, { className: "h-3 w-[80px]" })] })] }));
23
- default:
24
- return null;
25
- }
26
- };
27
- return (_jsx("div", { className: cn('cls_loading_skeleton', className), children: render_skeleton() }));
28
- }
29
- LoadingSkeleton.displayName = 'LoadingSkeleton';
30
- //# sourceMappingURL=loading_skeleton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loading_skeleton.js","sourceRoot":"","sources":["../../../src/components/ui/loading_skeleton.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAezC,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,GAAG,CAAC,EACT,SAAS,EACT,OAAO,GAAG,SAAS,EACE;IACrB,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,SAAS;gBACZ,OAAO,CACL,4BACG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC/C,eAEE,SAAS,EAAE,EAAE,CACX,sCAAsC,EACtC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAClD,aAEA,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,CAClB,KAAC,QAAQ,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAC9C,EACD,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,QAAQ,IAAC,SAAS,EAAC,eAAe,GAAG,EACtC,KAAC,QAAQ,IAAC,SAAS,EAAC,eAAe,GAAG,IAClC,EACL,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,CAClB,KAAC,QAAQ,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAC9C,KAfI,KAAK,CAgBN,CACP,CAAC,GACD,CACJ,CAAC;YAEJ,KAAK,WAAW;gBACd,OAAO,CACL,4BACG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC/C,eAAiB,SAAS,EAAC,oDAAoD,aAC7E,KAAC,QAAQ,IAAC,SAAS,EAAC,iBAAiB,GAAG,EACxC,KAAC,QAAQ,IAAC,SAAS,EAAC,eAAe,GAAG,KAF9B,KAAK,CAGT,CACP,CAAC,GACD,CACJ,CAAC;YAEJ,KAAK,SAAS;gBACZ,OAAO,CACL,eAAK,SAAS,EAAC,8CAA8C,aAC3D,KAAC,QAAQ,IAAC,SAAS,EAAC,wBAAwB,GAAG,EAC/C,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,QAAQ,IAAC,SAAS,EAAC,eAAe,GAAG,EACtC,KAAC,QAAQ,IAAC,SAAS,EAAC,cAAc,GAAG,IACjC,IACF,CACP,CAAC;YAEJ;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,SAAS,CAAC,YAClD,eAAe,EAAE,GACd,CACP,CAAC;AACJ,CAAC;AAED,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC"}
@@ -1,12 +0,0 @@
1
- /**
2
- * ScrollArea Component (shadcn/ui style)
3
- *
4
- * A scrollable container with custom scrollbar styling.
5
- * Uses @radix-ui/react-scroll-area for accessibility.
6
- */
7
- import * as React from 'react';
8
- import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
9
- declare const ScrollArea: React.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
- declare const ScrollBar: React.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaScrollbarProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
- export { ScrollArea, ScrollBar };
12
- //# sourceMappingURL=scroll-area.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-area.d.ts","sourceRoot":"","sources":["../../../src/components/ui/scroll-area.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAC;AAOnE,QAAA,MAAM,UAAU,+JAed,CAAC;AAQH,QAAA,MAAM,SAAS,wKAmBb,CAAC;AAIH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC"}
@@ -1,25 +0,0 @@
1
- /**
2
- * ScrollArea Component (shadcn/ui style)
3
- *
4
- * A scrollable container with custom scrollbar styling.
5
- * Uses @radix-ui/react-scroll-area for accessibility.
6
- */
7
- 'use client';
8
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
- import * as React from 'react';
10
- import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
11
- import { cn } from '../../lib/utils.js';
12
- // ============================================================================
13
- // ScrollArea Root
14
- // ============================================================================
15
- const ScrollArea = React.forwardRef(({ className, children, ...props }, ref) => (_jsxs(ScrollAreaPrimitive.Root, { ref: ref, className: cn('relative overflow-hidden', className), ...props, children: [_jsx(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children: children }), _jsx(ScrollBar, {}), _jsx(ScrollAreaPrimitive.Corner, {})] })));
16
- ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
17
- // ============================================================================
18
- // ScrollBar
19
- // ============================================================================
20
- const ScrollBar = React.forwardRef(({ className, orientation = 'vertical', ...props }, ref) => (_jsx(ScrollAreaPrimitive.ScrollAreaScrollbar, { ref: ref, orientation: orientation, className: cn('flex touch-none select-none transition-colors', orientation === 'vertical' &&
21
- 'h-full w-2.5 border-l border-l-transparent p-[1px]', orientation === 'horizontal' &&
22
- 'h-2.5 flex-col border-t border-t-transparent p-[1px]', className), ...props, children: _jsx(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" }) })));
23
- ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
24
- export { ScrollArea, ScrollBar };
25
- //# sourceMappingURL=scroll-area.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-area.js","sourceRoot":"","sources":["../../../src/components/ui/scroll-area.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAGjC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAC5C,MAAC,mBAAmB,CAAC,IAAI,IACvB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,0BAA0B,EAAE,SAAS,CAAC,KAChD,KAAK,aAET,KAAC,mBAAmB,CAAC,QAAQ,IAAC,SAAS,EAAC,iCAAiC,YACtE,QAAQ,GACoB,EAC/B,KAAC,SAAS,KAAG,EACb,KAAC,mBAAmB,CAAC,MAAM,KAAG,IACL,CAC5B,CAAC,CAAC;AAEH,UAAU,CAAC,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC;AAE9D,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAGhC,CAAC,EAAE,SAAS,EAAE,WAAW,GAAG,UAAU,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAC5D,KAAC,mBAAmB,CAAC,mBAAmB,IACtC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,EAAE,CACX,+CAA+C,EAC/C,WAAW,KAAK,UAAU;QACxB,oDAAoD,EACtD,WAAW,KAAK,YAAY;QAC1B,sDAAsD,EACxD,SAAS,CACV,KACG,KAAK,YAET,KAAC,mBAAmB,CAAC,eAAe,IAAC,SAAS,EAAC,wCAAwC,GAAG,GAClD,CAC3C,CAAC,CAAC;AAEH,SAAS,CAAC,WAAW,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Separator Component (shadcn/ui style)
3
- *
4
- * A visual divider component.
5
- * Uses @radix-ui/react-separator for accessibility.
6
- */
7
- import * as React from 'react';
8
- import * as SeparatorPrimitive from '@radix-ui/react-separator';
9
- declare const Separator: React.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
- export { Separator };
11
- //# sourceMappingURL=separator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"separator.d.ts","sourceRoot":"","sources":["../../../src/components/ui/separator.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAOhE,QAAA,MAAM,SAAS,6JAoBd,CAAC;AAIF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Separator Component (shadcn/ui style)
3
- *
4
- * A visual divider component.
5
- * Uses @radix-ui/react-separator for accessibility.
6
- */
7
- 'use client';
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- import * as React from 'react';
10
- import * as SeparatorPrimitive from '@radix-ui/react-separator';
11
- import { cn } from '../../lib/utils.js';
12
- // ============================================================================
13
- // Component
14
- // ============================================================================
15
- const Separator = React.forwardRef(({ className, orientation = 'horizontal', decorative = true, ...props }, ref) => (_jsx(SeparatorPrimitive.Root, { ref: ref, decorative: decorative, orientation: orientation, className: cn('shrink-0 bg-border', orientation === 'horizontal' ? 'h-[1px] w-full' : 'h-full w-[1px]', className), ...props })));
16
- Separator.displayName = SeparatorPrimitive.Root.displayName;
17
- export { Separator };
18
- //# sourceMappingURL=separator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"separator.js","sourceRoot":"","sources":["../../../src/components/ui/separator.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAIhC,CACE,EAAE,SAAS,EAAE,WAAW,GAAG,YAAY,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,EACtE,GAAG,EACH,EAAE,CAAC,CACH,KAAC,kBAAkB,CAAC,IAAI,IACtB,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,EAAE,CACX,oBAAoB,EACpB,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,EAClE,SAAS,CACV,KACG,KAAK,GACT,CACH,CACF,CAAC;AAEF,SAAS,CAAC,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Skeleton Component (shadcn/ui style)
3
- *
4
- * A loading placeholder component with pulse animation.
5
- */
6
- import * as React from 'react';
7
- declare function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
8
- export { Skeleton };
9
- //# sourceMappingURL=skeleton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,2CAOtC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Skeleton Component (shadcn/ui style)
3
- *
4
- * A loading placeholder component with pulse animation.
5
- */
6
- 'use client';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import { cn } from '../../lib/utils.js';
9
- // ============================================================================
10
- // Component
11
- // ============================================================================
12
- function Skeleton({ className, ...props }) {
13
- return (_jsx("div", { className: cn('animate-pulse rounded-md bg-muted', className), ...props }));
14
- }
15
- export { Skeleton };
16
- //# sourceMappingURL=skeleton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,SAAS,QAAQ,CAAC,EAChB,SAAS,EACT,GAAG,KAAK,EAC6B;IACrC,OAAO,CACL,cACE,SAAS,EAAE,EAAE,CAAC,mCAAmC,EAAE,SAAS,CAAC,KACzD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Textarea Component (shadcn/ui style)
3
- *
4
- * A styled multi-line text input component.
5
- */
6
- import * as React from 'react';
7
- export interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
8
- }
9
- declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
10
- export { Textarea };
11
- //# sourceMappingURL=textarea.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/components/ui/textarea.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,MAAM,WAAW,aACf,SAAQ,KAAK,CAAC,sBAAsB,CAAC,mBAAmB,CAAC;CAAG;AAM9D,QAAA,MAAM,QAAQ,2FAab,CAAC;AAIF,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Textarea Component (shadcn/ui style)
3
- *
4
- * A styled multi-line text input component.
5
- */
6
- 'use client';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import * as React from 'react';
9
- import { cn } from '../../lib/utils.js';
10
- // ============================================================================
11
- // Component
12
- // ============================================================================
13
- const Textarea = React.forwardRef(({ className, ...props }, ref) => {
14
- return (_jsx("textarea", { className: cn('flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50', className), ref: ref, ...props }));
15
- });
16
- Textarea.displayName = 'Textarea';
17
- export { Textarea };
18
- //# sourceMappingURL=textarea.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/ui/textarea.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AASxC,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAC/B,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC/B,OAAO,CACL,mBACE,SAAS,EAAE,EAAE,CACX,sSAAsS,EACtS,SAAS,CACV,EACD,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Tooltip Component (shadcn/ui style)
3
- *
4
- * A tooltip component for displaying hints on hover.
5
- * Uses @radix-ui/react-tooltip for accessibility.
6
- */
7
- import * as React from 'react';
8
- import * as TooltipPrimitive from '@radix-ui/react-tooltip';
9
- declare const TooltipProvider: React.FC<TooltipPrimitive.TooltipProviderProps>;
10
- declare const Tooltip: React.FC<TooltipPrimitive.TooltipProps>;
11
- declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
12
- declare const TooltipContent: React.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
14
- //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAO5D,QAAA,MAAM,eAAe,iDAA4B,CAAC;AAMlD,QAAA,MAAM,OAAO,yCAAwB,CAAC;AAMtC,QAAA,MAAM,cAAc,gHAA2B,CAAC;AAMhD,QAAA,MAAM,cAAc,gKAalB,CAAC;AAIH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
@@ -1,30 +0,0 @@
1
- /**
2
- * Tooltip Component (shadcn/ui style)
3
- *
4
- * A tooltip component for displaying hints on hover.
5
- * Uses @radix-ui/react-tooltip for accessibility.
6
- */
7
- 'use client';
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- import * as React from 'react';
10
- import * as TooltipPrimitive from '@radix-ui/react-tooltip';
11
- import { cn } from '../../lib/utils.js';
12
- // ============================================================================
13
- // Tooltip Provider
14
- // ============================================================================
15
- const TooltipProvider = TooltipPrimitive.Provider;
16
- // ============================================================================
17
- // Tooltip Root
18
- // ============================================================================
19
- const Tooltip = TooltipPrimitive.Root;
20
- // ============================================================================
21
- // Tooltip Trigger
22
- // ============================================================================
23
- const TooltipTrigger = TooltipPrimitive.Trigger;
24
- // ============================================================================
25
- // Tooltip Content
26
- // ============================================================================
27
- const TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => (_jsx(TooltipPrimitive.Content, { ref: ref, sideOffset: sideOffset, className: cn('z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', className), ...props })));
28
- TooltipContent.displayName = TooltipPrimitive.Content.displayName;
29
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
30
- //# sourceMappingURL=tooltip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC;AAElD,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;AAEtC,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC;AAEhD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAGrC,CAAC,EAAE,SAAS,EAAE,UAAU,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClD,KAAC,gBAAgB,CAAC,OAAO,IACvB,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,EAAE,CACX,oYAAoY,EACpY,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC,CAAC;AAEH,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC;AAElE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Hooks barrel export file
3
- *
4
- * Exports all custom hooks from the hazo_chat package.
5
- * All export paths use explicit .js extensions for ES module compatibility.
6
- */
7
- export { useChatMessages } from './use_chat_messages.js';
8
- export { useChatReferences } from './use_chat_references.js';
9
- export { useFileUpload } from './use_file_upload.js';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Hooks barrel export file
3
- *
4
- * Exports all custom hooks from the hazo_chat package.
5
- * All export paths use explicit .js extensions for ES module compatibility.
6
- */
7
- export { useChatMessages } from './use_chat_messages.js';
8
- export { useChatReferences } from './use_chat_references.js';
9
- export { useFileUpload } from './use_file_upload.js';
10
- //# sourceMappingURL=index.js.map