@clikvn/agent-widget-embedded 1.1.5-dev-08 → 1.1.5-dev-10

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 (68) hide show
  1. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/MultimodalInput.d.ts.map +1 -1
  2. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/MultimodalInput.js +43 -42
  3. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/MultimodalInput.js.map +1 -1
  4. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/PreviewFileAttachment.d.ts.map +1 -1
  5. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/PreviewFileAttachment.js +0 -1
  6. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/PreviewFileAttachment.js.map +1 -1
  7. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/VoiceRecordingUI.d.ts +1 -0
  8. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/VoiceRecordingUI.d.ts.map +1 -1
  9. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/VoiceRecordingUI.js +51 -17
  10. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/components/Chat/VoiceRecordingUI.js.map +1 -1
  11. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioAnalyzer.d.ts +1 -1
  12. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioAnalyzer.d.ts.map +1 -1
  13. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioAnalyzer.js +29 -7
  14. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioAnalyzer.js.map +1 -1
  15. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioRecording.d.ts +2 -1
  16. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioRecording.d.ts.map +1 -1
  17. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioRecording.js +9 -3
  18. package/.rollup.cache/Users/tungthai/Desktop/Develop/clik-ai-chatbot-embedded/dist/hooks/useAudioRecording.js.map +1 -1
  19. package/dist/commons/constants/bookMeeting.d.ts +14 -0
  20. package/dist/commons/constants/bookMeeting.d.ts.map +1 -0
  21. package/dist/commons/constants/index.d.ts +1 -0
  22. package/dist/commons/constants/index.d.ts.map +1 -1
  23. package/dist/components/Chat/BookMeetingForm.d.ts +4 -0
  24. package/dist/components/Chat/BookMeetingForm.d.ts.map +1 -0
  25. package/dist/components/Chat/Chat.d.ts.map +1 -1
  26. package/dist/components/Chat/Icons.d.ts +82 -76
  27. package/dist/components/Chat/Icons.d.ts.map +1 -1
  28. package/dist/components/Chat/Message.d.ts.map +1 -1
  29. package/dist/components/Chat/MultimodalInput.d.ts.map +1 -1
  30. package/dist/components/Chat/PreviewFileAttachment.d.ts.map +1 -1
  31. package/dist/components/Chat/UserContactForm.d.ts.map +1 -1
  32. package/dist/components/Chat/VoiceRecordingUI.d.ts +1 -0
  33. package/dist/components/Chat/VoiceRecordingUI.d.ts.map +1 -1
  34. package/dist/components/Chat/ui/Button.d.ts +1 -1
  35. package/dist/components/Chat/ui/DataPickerCustom.d.ts +9 -0
  36. package/dist/components/Chat/ui/DataPickerCustom.d.ts.map +1 -0
  37. package/dist/components/Chat/ui/PhoneNumberInput.d.ts +11 -0
  38. package/dist/components/Chat/ui/PhoneNumberInput.d.ts.map +1 -0
  39. package/dist/components/Chat/ui/SelectBox.d.ts +19 -0
  40. package/dist/components/Chat/ui/SelectBox.d.ts.map +1 -0
  41. package/dist/components/Chat/ui/SelectBoxWithIcon.d.ts +19 -0
  42. package/dist/components/Chat/ui/SelectBoxWithIcon.d.ts.map +1 -0
  43. package/dist/constants/form.d.ts +13 -0
  44. package/dist/constants/form.d.ts.map +1 -0
  45. package/dist/features/AgentWidget/index.d.ts.map +1 -1
  46. package/dist/hooks/useAudioAnalyzer.d.ts +1 -1
  47. package/dist/hooks/useAudioAnalyzer.d.ts.map +1 -1
  48. package/dist/hooks/useAudioRecording.d.ts +2 -1
  49. package/dist/hooks/useAudioRecording.d.ts.map +1 -1
  50. package/dist/hooks/useConfiguration.d.ts +15 -0
  51. package/dist/hooks/useConfiguration.d.ts.map +1 -1
  52. package/dist/services/apis.d.ts +2 -0
  53. package/dist/services/apis.d.ts.map +1 -1
  54. package/dist/services/bookMeeting.service.d.ts +3 -0
  55. package/dist/services/bookMeeting.service.d.ts.map +1 -0
  56. package/dist/services/userContact.service.d.ts +7 -0
  57. package/dist/services/userContact.service.d.ts.map +1 -0
  58. package/dist/types/bookMeeting.type.d.ts +9 -0
  59. package/dist/types/bookMeeting.type.d.ts.map +1 -0
  60. package/dist/types/userContact.type.d.ts +16 -0
  61. package/dist/types/userContact.type.d.ts.map +1 -0
  62. package/dist/utils/functionUtils.d.ts +1 -0
  63. package/dist/utils/functionUtils.d.ts.map +1 -1
  64. package/dist/utils/toolUtils.d.ts.map +1 -1
  65. package/dist/web.js +1 -1
  66. package/dist/web.js.map +1 -1
  67. package/package.json +3 -1
  68. package/tailwind.config.cjs +12 -0
@@ -1,23 +1,45 @@
1
1
  import { useCallback, useEffect, useRef, useState } from 'react';
2
2
  let lastUpdateTime = 0;
3
3
  const updateInterval = 100;
4
- const maxHistoryLength = 65;
5
- const defaultFrequencies = Array(maxHistoryLength).fill(1);
6
- export const useAudioAnalyzer = () => {
4
+ const DEFAULT_MAX_HISTORY_LENGTH = 65;
5
+ export const useAudioAnalyzer = (maxHistoryLength = DEFAULT_MAX_HISTORY_LENGTH) => {
7
6
  const [audioData, setAudioData] = useState({
8
7
  volume: 0,
9
- frequencies: defaultFrequencies, // Start with empty array for volume history
8
+ frequencies: Array(maxHistoryLength).fill(1), // Dynamic array size
10
9
  });
11
10
  const [isAnalyzing, setIsAnalyzing] = useState(false);
12
11
  const audioContextRef = useRef(null);
13
12
  const analyzerRef = useRef(null);
14
13
  const sourceRef = useRef(null);
15
14
  const animationFrameRef = useRef(null);
15
+ // Update frequencies array when maxHistoryLength changes
16
+ useEffect(() => {
17
+ setAudioData((prevData) => {
18
+ const newFrequencies = [...prevData.frequencies];
19
+ if (newFrequencies.length > maxHistoryLength) {
20
+ // Trim from beginning if too long
21
+ return {
22
+ ...prevData,
23
+ frequencies: newFrequencies.slice(-maxHistoryLength),
24
+ };
25
+ }
26
+ else if (newFrequencies.length < maxHistoryLength) {
27
+ // Pad with zeros if too short
28
+ const padding = Array(maxHistoryLength - newFrequencies.length).fill(0);
29
+ return {
30
+ ...prevData,
31
+ frequencies: [...padding, ...newFrequencies],
32
+ };
33
+ }
34
+ return prevData;
35
+ });
36
+ }, [maxHistoryLength]);
16
37
  const startAnalyzing = useCallback((stream) => {
17
38
  try {
18
39
  // Create audio context
19
40
  audioContextRef.current = new (window.AudioContext ||
20
- window.webkitAudioContext)();
41
+ window
42
+ .webkitAudioContext)();
21
43
  // Create analyzer
22
44
  analyzerRef.current = audioContextRef.current.createAnalyser();
23
45
  analyzerRef.current.fftSize = 256;
@@ -48,7 +70,7 @@ export const useAudioAnalyzer = () => {
48
70
  const newFrequencies = [...prevData.frequencies];
49
71
  // Add current volume to the end of the array
50
72
  newFrequencies.push(volume);
51
- // Keep only the last 40 volume values for waveform display
73
+ // Keep only the last DEFAULT_MAX_HISTORY_LENGTH volume values for waveform display
52
74
  if (newFrequencies.length > maxHistoryLength) {
53
75
  newFrequencies.shift(); // Remove oldest value
54
76
  }
@@ -72,7 +94,7 @@ export const useAudioAnalyzer = () => {
72
94
  catch (error) {
73
95
  console.error('Error starting audio analysis:', error);
74
96
  }
75
- }, []);
97
+ }, [maxHistoryLength]);
76
98
  const stopAnalyzing = useCallback(() => {
77
99
  setIsAnalyzing(false);
78
100
  if (animationFrameRef.current) {
@@ -1 +1 @@
1
- {"version":3,"file":"useAudioAnalyzer.js","sourceRoot":"","sources":["../../src/hooks/useAudioAnalyzer.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\n\nexport interface AudioAnalyzerData {\n volume: number; // 0-100\n frequencies: number[]; // Array of frequency data\n}\n\nlet lastUpdateTime = 0;\nconst updateInterval = 100;\nconst maxHistoryLength = 65;\nconst defaultFrequencies = Array(maxHistoryLength).fill(1);\n\nexport const useAudioAnalyzer = () => {\n const [audioData, setAudioData] = useState<AudioAnalyzerData>({\n volume: 0,\n frequencies: defaultFrequencies, // Start with empty array for volume history\n });\n const [isAnalyzing, setIsAnalyzing] = useState(false);\n\n const audioContextRef = useRef<AudioContext | null>(null);\n const analyzerRef = useRef<AnalyserNode | null>(null);\n const sourceRef = useRef<MediaStreamAudioSourceNode | null>(null);\n const animationFrameRef = useRef<number | null>(null);\n\n const startAnalyzing = useCallback((stream: MediaStream) => {\n try {\n // Create audio context\n audioContextRef.current = new (window.AudioContext ||\n (window as any).webkitAudioContext)();\n\n // Create analyzer\n analyzerRef.current = audioContextRef.current.createAnalyser();\n analyzerRef.current.fftSize = 256;\n analyzerRef.current.smoothingTimeConstant = 0.8;\n\n // Create source from stream\n sourceRef.current =\n audioContextRef.current.createMediaStreamSource(stream);\n sourceRef.current.connect(analyzerRef.current);\n\n setIsAnalyzing(true);\n\n // Add throttling variables\n\n // Start analyzing\n const analyze = () => {\n if (!analyzerRef.current) return;\n\n const bufferLength = analyzerRef.current.frequencyBinCount;\n const dataArray = new Uint8Array(bufferLength);\n analyzerRef.current.getByteFrequencyData(dataArray);\n\n // Calculate volume (0-100)\n const sum = dataArray.reduce((acc, value) => acc + value, 0);\n const average = sum / bufferLength;\n const volume = Math.min(100, (average / 255) * 100);\n\n // Throttle updates - only update every 150ms\n const currentTime = Date.now();\n if (currentTime - lastUpdateTime >= updateInterval) {\n lastUpdateTime = currentTime;\n\n // Use frequencies array to store volume history\n setAudioData((prevData) => {\n const newFrequencies = [...prevData.frequencies];\n\n // Add current volume to the end of the array\n newFrequencies.push(volume);\n\n // Keep only the last 40 volume values for waveform display\n\n if (newFrequencies.length > maxHistoryLength) {\n newFrequencies.shift(); // Remove oldest value\n }\n\n return {\n volume, // Always update current volume for real-time display\n frequencies: newFrequencies,\n };\n });\n } else {\n // Still update current volume for real-time feedback\n setAudioData((prevData) => ({\n ...prevData,\n volume, // Update volume but keep same frequencies array\n }));\n }\n\n animationFrameRef.current = requestAnimationFrame(analyze);\n };\n\n analyze();\n } catch (error) {\n console.error('Error starting audio analysis:', error);\n }\n }, []);\n\n const stopAnalyzing = useCallback(() => {\n setIsAnalyzing(false);\n\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current);\n animationFrameRef.current = null;\n }\n\n if (sourceRef.current) {\n sourceRef.current.disconnect();\n sourceRef.current = null;\n }\n\n if (analyzerRef.current) {\n analyzerRef.current.disconnect();\n analyzerRef.current = null;\n }\n\n if (audioContextRef.current) {\n audioContextRef.current.close();\n audioContextRef.current = null;\n }\n\n // Smooth reset: gradually fade out frequencies instead of instant reset\n setAudioData((prevData) => ({\n volume: 0,\n frequencies: prevData.frequencies.map(() => 0), // Fade to 0 instead of defaultFrequencies\n }));\n }, []);\n\n // Cleanup on unmount\n useEffect(() => {\n return () => {\n stopAnalyzing();\n };\n }, [stopAnalyzing]);\n\n return {\n audioData,\n isAnalyzing,\n startAnalyzing,\n stopAnalyzing,\n };\n};\n"]}
1
+ {"version":3,"file":"useAudioAnalyzer.js","sourceRoot":"","sources":["../../src/hooks/useAudioAnalyzer.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\n\nexport interface AudioAnalyzerData {\n volume: number; // 0-100\n frequencies: number[]; // Array of frequency data\n}\n\nlet lastUpdateTime = 0;\nconst updateInterval = 100;\nconst DEFAULT_MAX_HISTORY_LENGTH = 65;\n\nexport const useAudioAnalyzer = (\n maxHistoryLength: number = DEFAULT_MAX_HISTORY_LENGTH\n) => {\n const [audioData, setAudioData] = useState<AudioAnalyzerData>({\n volume: 0,\n frequencies: Array(maxHistoryLength).fill(1), // Dynamic array size\n });\n const [isAnalyzing, setIsAnalyzing] = useState(false);\n\n const audioContextRef = useRef<AudioContext | null>(null);\n const analyzerRef = useRef<AnalyserNode | null>(null);\n const sourceRef = useRef<MediaStreamAudioSourceNode | null>(null);\n const animationFrameRef = useRef<number | null>(null);\n\n // Update frequencies array when maxHistoryLength changes\n useEffect(() => {\n setAudioData((prevData) => {\n const newFrequencies = [...prevData.frequencies];\n\n if (newFrequencies.length > maxHistoryLength) {\n // Trim from beginning if too long\n return {\n ...prevData,\n frequencies: newFrequencies.slice(-maxHistoryLength),\n };\n } else if (newFrequencies.length < maxHistoryLength) {\n // Pad with zeros if too short\n const padding = Array(maxHistoryLength - newFrequencies.length).fill(0);\n return {\n ...prevData,\n frequencies: [...padding, ...newFrequencies],\n };\n }\n\n return prevData;\n });\n }, [maxHistoryLength]);\n\n const startAnalyzing = useCallback(\n (stream: MediaStream) => {\n try {\n // Create audio context\n audioContextRef.current = new (window.AudioContext ||\n (window as unknown as { webkitAudioContext: typeof AudioContext })\n .webkitAudioContext)();\n\n // Create analyzer\n analyzerRef.current = audioContextRef.current.createAnalyser();\n analyzerRef.current.fftSize = 256;\n analyzerRef.current.smoothingTimeConstant = 0.8;\n\n // Create source from stream\n sourceRef.current =\n audioContextRef.current.createMediaStreamSource(stream);\n sourceRef.current.connect(analyzerRef.current);\n\n setIsAnalyzing(true);\n\n // Add throttling variables\n\n // Start analyzing\n const analyze = () => {\n if (!analyzerRef.current) return;\n\n const bufferLength = analyzerRef.current.frequencyBinCount;\n const dataArray = new Uint8Array(bufferLength);\n analyzerRef.current.getByteFrequencyData(dataArray);\n\n // Calculate volume (0-100)\n const sum = dataArray.reduce((acc, value) => acc + value, 0);\n const average = sum / bufferLength;\n const volume = Math.min(100, (average / 255) * 100);\n\n // Throttle updates - only update every 150ms\n const currentTime = Date.now();\n if (currentTime - lastUpdateTime >= updateInterval) {\n lastUpdateTime = currentTime;\n\n // Use frequencies array to store volume history\n setAudioData((prevData) => {\n const newFrequencies = [...prevData.frequencies];\n\n // Add current volume to the end of the array\n newFrequencies.push(volume);\n\n // Keep only the last DEFAULT_MAX_HISTORY_LENGTH volume values for waveform display\n\n if (newFrequencies.length > maxHistoryLength) {\n newFrequencies.shift(); // Remove oldest value\n }\n\n return {\n volume, // Always update current volume for real-time display\n frequencies: newFrequencies,\n };\n });\n } else {\n // Still update current volume for real-time feedback\n setAudioData((prevData) => ({\n ...prevData,\n volume, // Update volume but keep same frequencies array\n }));\n }\n\n animationFrameRef.current = requestAnimationFrame(analyze);\n };\n\n analyze();\n } catch (error) {\n console.error('Error starting audio analysis:', error);\n }\n },\n [maxHistoryLength]\n );\n\n const stopAnalyzing = useCallback(() => {\n setIsAnalyzing(false);\n\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current);\n animationFrameRef.current = null;\n }\n\n if (sourceRef.current) {\n sourceRef.current.disconnect();\n sourceRef.current = null;\n }\n\n if (analyzerRef.current) {\n analyzerRef.current.disconnect();\n analyzerRef.current = null;\n }\n\n if (audioContextRef.current) {\n audioContextRef.current.close();\n audioContextRef.current = null;\n }\n\n // Smooth reset: gradually fade out frequencies instead of instant reset\n setAudioData((prevData) => ({\n volume: 0,\n frequencies: prevData.frequencies.map(() => 0), // Fade to 0 instead of defaultFrequencies\n }));\n }, []);\n\n // Cleanup on unmount\n useEffect(() => {\n return () => {\n stopAnalyzing();\n };\n }, [stopAnalyzing]);\n\n return {\n audioData,\n isAnalyzing,\n startAnalyzing,\n stopAnalyzing,\n };\n};\n"]}
@@ -1,4 +1,4 @@
1
- export declare const useAudioRecording: () => {
1
+ export declare const useAudioRecording: (maxHistoryLength?: number) => {
2
2
  elapsedTime: string;
3
3
  recordingNotSupported: boolean;
4
4
  isLoadingRecording: boolean;
@@ -8,5 +8,6 @@ export declare const useAudioRecording: () => {
8
8
  onRecordingStopped: (onStop: null | ((blob: Blob) => void)) => void;
9
9
  onRecordingStarted: () => void;
10
10
  audioData: import("./useAudioAnalyzer").AudioAnalyzerData;
11
+ updateMaxHistoryLength: (newLength: number) => void;
11
12
  };
12
13
  //# sourceMappingURL=useAudioRecording.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAudioRecording.d.ts","sourceRoot":"","sources":["../../src/hooks/useAudioRecording.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,iBAAiB;;;;;;;iCAgCQ,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;;;CAwBlE,CAAC"}
1
+ {"version":3,"file":"useAudioRecording.d.ts","sourceRoot":"","sources":["../../src/hooks/useAudioRecording.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,iBAAiB,sBAAuB,MAAM;;;;;;;iCAoCrB,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;;;wCAYtB,MAAM;CAkBlD,CAAC"}
@@ -1,13 +1,14 @@
1
1
  import { useState } from 'react';
2
2
  import { cancelAudioRecording, startAudioRecording, stopAudioRecording, audioRecorder, } from '../utils/audioRecording';
3
3
  import { useAudioAnalyzer } from './useAudioAnalyzer';
4
- export const useAudioRecording = () => {
4
+ export const useAudioRecording = (maxHistoryLength) => {
5
5
  const [elapsedTime, setElapsedTime] = useState('00:00');
6
6
  const [recordingNotSupported, setRecordingNotSupported] = useState(false);
7
7
  const [isLoadingRecording, setIsLoadingRecording] = useState(false);
8
8
  const [isRecording, setIsRecording] = useState(false);
9
- // Add audio analyzer
10
- const { audioData, startAnalyzing, stopAnalyzing } = useAudioAnalyzer();
9
+ const [dynamicMaxLength, setDynamicMaxLength] = useState(maxHistoryLength || 65);
10
+ // Add audio analyzer with dynamic maxHistoryLength
11
+ const { audioData, startAnalyzing, stopAnalyzing } = useAudioAnalyzer(dynamicMaxLength);
11
12
  const onRecordingStarted = () => {
12
13
  setIsRecording(true);
13
14
  setIsLoadingRecording(false);
@@ -37,6 +38,9 @@ export const useAudioRecording = () => {
37
38
  }
38
39
  });
39
40
  };
41
+ const updateMaxHistoryLength = (newLength) => {
42
+ setDynamicMaxLength(newLength);
43
+ };
40
44
  return {
41
45
  elapsedTime,
42
46
  recordingNotSupported,
@@ -48,6 +52,8 @@ export const useAudioRecording = () => {
48
52
  onRecordingStarted,
49
53
  // Add audio data for visualization
50
54
  audioData,
55
+ // Add function to update maxHistoryLength
56
+ updateMaxHistoryLength,
51
57
  };
52
58
  };
53
59
  //# sourceMappingURL=useAudioRecording.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAudioRecording.js","sourceRoot":"","sources":["../../src/hooks/useAudioRecording.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1E,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,qBAAqB;IACrB,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAExE,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7B,mBAAmB,CACjB,CAAC,gBAAyB,EAAE,EAAE;YAC5B,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACjC,8CAA8C;YAC9C,IAAI,gBAAgB,IAAI,aAAa,CAAC,mBAAmB,EAAE,CAAC;gBAC1D,cAAc,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,EACD,wBAAwB,EACxB,cAAc,CACf,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,IAAI,CAAC,qBAAqB;YAAE,oBAAoB,EAAE,CAAC;QACnD,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAChC,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,MAAqC,EAAE,EAAE;QACnE,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC5B,aAAa,EAAE,CAAC;QAChB,kBAAkB,CAAC,CAAC,IAAU,EAAE,EAAE;YAChC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7B,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO;QACL,WAAW;QACX,qBAAqB;QACrB,kBAAkB;QAClB,WAAW;QACX,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,mCAAmC;QACnC,SAAS;KACV,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { useState } from 'react';\nimport {\n cancelAudioRecording,\n startAudioRecording,\n stopAudioRecording,\n audioRecorder,\n} from '../utils/audioRecording';\nimport { useAudioAnalyzer } from './useAudioAnalyzer';\n\nexport const useAudioRecording = () => {\n const [elapsedTime, setElapsedTime] = useState('00:00');\n const [recordingNotSupported, setRecordingNotSupported] = useState(false);\n const [isLoadingRecording, setIsLoadingRecording] = useState(false);\n const [isRecording, setIsRecording] = useState(false);\n\n // Add audio analyzer\n const { audioData, startAnalyzing, stopAnalyzing } = useAudioAnalyzer();\n\n const onRecordingStarted = () => {\n setIsRecording(true);\n setIsLoadingRecording(false);\n startAudioRecording(\n (recordingStarted: boolean) => {\n setIsRecording(recordingStarted);\n // Start analyzing audio when recording starts\n if (recordingStarted && audioRecorder.streamBeingCaptured) {\n startAnalyzing(audioRecorder.streamBeingCaptured);\n }\n },\n setRecordingNotSupported,\n setElapsedTime\n );\n };\n\n const onRecordingCancelled = () => {\n if (!recordingNotSupported) cancelAudioRecording();\n setIsRecording(false);\n setRecordingNotSupported(false);\n stopAnalyzing();\n };\n\n const onRecordingStopped = (onStop: null | ((blob: Blob) => void)) => {\n setIsLoadingRecording(true);\n stopAnalyzing();\n stopAudioRecording((blob: Blob) => {\n setIsLoadingRecording(false);\n setIsRecording(false);\n if (onStop) {\n onStop(blob);\n }\n });\n };\n\n return {\n elapsedTime,\n recordingNotSupported,\n isLoadingRecording,\n isRecording,\n setIsRecording,\n onRecordingCancelled,\n onRecordingStopped,\n onRecordingStarted,\n // Add audio data for visualization\n audioData,\n };\n};\n"]}
1
+ {"version":3,"file":"useAudioRecording.js","sourceRoot":"","sources":["../../src/hooks/useAudioRecording.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,gBAAyB,EAAE,EAAE;IAC7D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1E,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,gBAAgB,IAAI,EAAE,CACvB,CAAC;IAEF,mDAAmD;IACnD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,GAChD,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAErC,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7B,mBAAmB,CACjB,CAAC,gBAAyB,EAAE,EAAE;YAC5B,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACjC,8CAA8C;YAC9C,IAAI,gBAAgB,IAAI,aAAa,CAAC,mBAAmB,EAAE,CAAC;gBAC1D,cAAc,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,EACD,wBAAwB,EACxB,cAAc,CACf,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,IAAI,CAAC,qBAAqB;YAAE,oBAAoB,EAAE,CAAC;QACnD,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAChC,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,MAAqC,EAAE,EAAE;QACnE,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC5B,aAAa,EAAE,CAAC;QAChB,kBAAkB,CAAC,CAAC,IAAU,EAAE,EAAE;YAChC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7B,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAAC,SAAiB,EAAE,EAAE;QACnD,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO;QACL,WAAW;QACX,qBAAqB;QACrB,kBAAkB;QAClB,WAAW;QACX,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,mCAAmC;QACnC,SAAS;QACT,0CAA0C;QAC1C,sBAAsB;KACvB,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { useState } from 'react';\nimport {\n cancelAudioRecording,\n startAudioRecording,\n stopAudioRecording,\n audioRecorder,\n} from '../utils/audioRecording';\nimport { useAudioAnalyzer } from './useAudioAnalyzer';\n\nexport const useAudioRecording = (maxHistoryLength?: number) => {\n const [elapsedTime, setElapsedTime] = useState('00:00');\n const [recordingNotSupported, setRecordingNotSupported] = useState(false);\n const [isLoadingRecording, setIsLoadingRecording] = useState(false);\n const [isRecording, setIsRecording] = useState(false);\n const [dynamicMaxLength, setDynamicMaxLength] = useState(\n maxHistoryLength || 65\n );\n\n // Add audio analyzer with dynamic maxHistoryLength\n const { audioData, startAnalyzing, stopAnalyzing } =\n useAudioAnalyzer(dynamicMaxLength);\n\n const onRecordingStarted = () => {\n setIsRecording(true);\n setIsLoadingRecording(false);\n startAudioRecording(\n (recordingStarted: boolean) => {\n setIsRecording(recordingStarted);\n // Start analyzing audio when recording starts\n if (recordingStarted && audioRecorder.streamBeingCaptured) {\n startAnalyzing(audioRecorder.streamBeingCaptured);\n }\n },\n setRecordingNotSupported,\n setElapsedTime\n );\n };\n\n const onRecordingCancelled = () => {\n if (!recordingNotSupported) cancelAudioRecording();\n setIsRecording(false);\n setRecordingNotSupported(false);\n stopAnalyzing();\n };\n\n const onRecordingStopped = (onStop: null | ((blob: Blob) => void)) => {\n setIsLoadingRecording(true);\n stopAnalyzing();\n stopAudioRecording((blob: Blob) => {\n setIsLoadingRecording(false);\n setIsRecording(false);\n if (onStop) {\n onStop(blob);\n }\n });\n };\n\n const updateMaxHistoryLength = (newLength: number) => {\n setDynamicMaxLength(newLength);\n };\n\n return {\n elapsedTime,\n recordingNotSupported,\n isLoadingRecording,\n isRecording,\n setIsRecording,\n onRecordingCancelled,\n onRecordingStopped,\n onRecordingStarted,\n // Add audio data for visualization\n audioData,\n // Add function to update maxHistoryLength\n updateMaxHistoryLength,\n };\n};\n"]}
@@ -0,0 +1,14 @@
1
+ export declare const TIME_OPTIONS: {
2
+ value: string;
3
+ label: string;
4
+ }[];
5
+ export declare const DURATION_OPTIONS: {
6
+ value: string;
7
+ label: string;
8
+ }[];
9
+ export declare const CHANNEL_OPTIONS: {
10
+ value: string;
11
+ label: string;
12
+ icon: import("react/jsx-runtime").JSX.Element;
13
+ }[];
14
+ //# sourceMappingURL=bookMeeting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookMeeting.d.ts","sourceRoot":"","sources":["../../../src/commons/constants/bookMeeting.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;GAiDxB,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;GAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;GAO3B,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './variables';
2
+ export * from './bookMeeting';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commons/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commons/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ declare const BookMeetingForm: FC;
3
+ export default BookMeetingForm;
4
+ //# sourceMappingURL=BookMeetingForm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookMeetingForm.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/BookMeetingForm.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAUrC,QAAA,MAAM,eAAe,EAAE,EA0TtB,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,eAAe,EAAe,MAAM,0BAA0B,CAAC;AAgBxE,KAAK,SAAS,GAAG;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CA4G9B,CAAC"}
1
+ {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,eAAe,EAAe,MAAM,0BAA0B,CAAC;AAiBxE,KAAK,SAAS,GAAG;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CA4G9B,CAAC"}
@@ -1,198 +1,204 @@
1
1
  import { IconPropsType } from 'types/common.type';
2
- export declare const BotIcon: () => import("react/jsx-runtime").JSX.Element;
3
- export declare const UserIcon: () => import("react/jsx-runtime").JSX.Element;
4
- export declare const AttachmentIcon: () => import("react/jsx-runtime").JSX.Element;
5
- export declare const VercelIcon: ({ size }: {
2
+ export { BotIcon, UserIcon, AttachmentIcon, VercelIcon, GitIcon, BoxIcon, HomeIcon, GPSIcon, InvoiceIcon, LogoOpenAI, LogoGoogle, LogoAnthropic, RouteIcon, FileIcon, LoaderIcon, UploadIcon, MenuIcon, PencilEditIcon, CheckedSquare, UncheckedSquare, MoreIcon, TrashIcon, InfoIcon, ArrowUpIcon, StopIcon, PaperclipIcon, MoreHorizontalIcon, MessageIcon, CrossIcon, UndoIcon, RedoIcon, DeltaIcon, PenIcon, SummarizeIcon, SidebarLeftIcon, PlusIcon, CopyIcon, ThumbUpIcon, ThumbDownIcon, ChevronDownIcon, SparklesIcon, CheckCirclFillIcon, MicrophoneIcon, CircleDotIcon, PlayIcon, StopIcon1, VolumeIcon, LoadingIcon, ClikVolumeIcon, ClikMicrophoneIcon, ClikPlusIcon, ClikWaveIcon, ClikWaveIcon2, ClikCloseIcon, ClikMessageIcon, CaretDown, ChevronLeft, List, VoiceIcon, ClikPauseIcon, ClikXIcon, AnimatedRecordingIcon, ClikChatIcon, ClikAIIcon, BookmarkIcon, ProductInfoIcon, ProductGalleryIcon, Product360Icon, ProductARIcon, ChatMessageUnlikeIcon, ChatMessageLikeIcon, ChatMessageCopyIcon, ZaloIcon, FacebookMessageIcon, VideoIcon, PhoneIcon, MapPinIcon, ChevronRight, };
3
+ declare const BotIcon: () => import("react/jsx-runtime").JSX.Element;
4
+ declare const UserIcon: () => import("react/jsx-runtime").JSX.Element;
5
+ declare const AttachmentIcon: () => import("react/jsx-runtime").JSX.Element;
6
+ declare const VercelIcon: ({ size }: {
6
7
  size?: number | undefined;
7
8
  }) => import("react/jsx-runtime").JSX.Element;
8
- export declare const GitIcon: () => import("react/jsx-runtime").JSX.Element;
9
- export declare const BoxIcon: ({ size }: {
9
+ declare const GitIcon: () => import("react/jsx-runtime").JSX.Element;
10
+ declare const BoxIcon: ({ size }: {
10
11
  size: number;
11
12
  }) => import("react/jsx-runtime").JSX.Element;
12
- export declare const HomeIcon: ({ size }: {
13
+ declare const HomeIcon: ({ size }: {
13
14
  size: number;
14
15
  }) => import("react/jsx-runtime").JSX.Element;
15
- export declare const GPSIcon: ({ size }: {
16
+ declare const GPSIcon: ({ size }: {
16
17
  size: number;
17
18
  }) => import("react/jsx-runtime").JSX.Element;
18
- export declare const InvoiceIcon: ({ size }: {
19
+ declare const InvoiceIcon: ({ size }: {
19
20
  size: number;
20
21
  }) => import("react/jsx-runtime").JSX.Element;
21
- export declare const LogoOpenAI: ({ size }: {
22
+ declare const LogoOpenAI: ({ size }: {
22
23
  size?: number;
23
24
  }) => import("react/jsx-runtime").JSX.Element;
24
- export declare const LogoGoogle: ({ size }: {
25
+ declare const LogoGoogle: ({ size }: {
25
26
  size?: number;
26
27
  }) => import("react/jsx-runtime").JSX.Element;
27
- export declare const LogoAnthropic: () => import("react/jsx-runtime").JSX.Element;
28
- export declare const RouteIcon: ({ size }: {
28
+ declare const LogoAnthropic: () => import("react/jsx-runtime").JSX.Element;
29
+ declare const RouteIcon: ({ size }: {
29
30
  size?: number;
30
31
  }) => import("react/jsx-runtime").JSX.Element;
31
- export declare const FileIcon: ({ size }: {
32
+ declare const FileIcon: ({ size }: {
32
33
  size?: number;
33
34
  }) => import("react/jsx-runtime").JSX.Element;
34
- export declare const LoaderIcon: ({ size }: {
35
+ declare const LoaderIcon: ({ size }: {
35
36
  size?: number;
36
37
  }) => import("react/jsx-runtime").JSX.Element;
37
- export declare const UploadIcon: ({ size }: {
38
+ declare const UploadIcon: ({ size }: {
38
39
  size?: number;
39
40
  }) => import("react/jsx-runtime").JSX.Element;
40
- export declare const MenuIcon: ({ size }: {
41
+ declare const MenuIcon: ({ size }: {
41
42
  size?: number;
42
43
  }) => import("react/jsx-runtime").JSX.Element;
43
- export declare const PencilEditIcon: ({ size }: {
44
+ declare const PencilEditIcon: ({ size }: {
44
45
  size?: number;
45
46
  }) => import("react/jsx-runtime").JSX.Element;
46
- export declare const CheckedSquare: ({ size }: {
47
+ declare const CheckedSquare: ({ size }: {
47
48
  size?: number;
48
49
  }) => import("react/jsx-runtime").JSX.Element;
49
- export declare const UncheckedSquare: ({ size }: {
50
+ declare const UncheckedSquare: ({ size }: {
50
51
  size?: number;
51
52
  }) => import("react/jsx-runtime").JSX.Element;
52
- export declare const MoreIcon: ({ size }: {
53
+ declare const MoreIcon: ({ size }: {
53
54
  size?: number;
54
55
  }) => import("react/jsx-runtime").JSX.Element;
55
- export declare const TrashIcon: ({ size, color, }: {
56
+ declare const TrashIcon: ({ size, color }: {
56
57
  size?: number;
57
58
  color?: string;
58
59
  }) => import("react/jsx-runtime").JSX.Element;
59
- export declare const InfoIcon: ({ size }: {
60
+ declare const InfoIcon: ({ size }: {
60
61
  size?: number;
61
62
  }) => import("react/jsx-runtime").JSX.Element;
62
- export declare const ArrowUpIcon: ({ size, color, }: {
63
+ declare const ArrowUpIcon: ({ size, style, }: {
63
64
  size?: number;
64
- color?: string;
65
+ style?: React.CSSProperties;
65
66
  }) => import("react/jsx-runtime").JSX.Element;
66
- export declare const StopIcon: ({ size }: {
67
+ declare const StopIcon: ({ size }: {
67
68
  size?: number;
68
69
  }) => import("react/jsx-runtime").JSX.Element;
69
- export declare const PaperclipIcon: ({ size }: {
70
+ declare const PaperclipIcon: ({ size }: {
70
71
  size?: number;
71
72
  }) => import("react/jsx-runtime").JSX.Element;
72
- export declare const MoreHorizontalIcon: ({ size }: {
73
+ declare const MoreHorizontalIcon: ({ size }: {
73
74
  size?: number;
74
75
  }) => import("react/jsx-runtime").JSX.Element;
75
- export declare const MessageIcon: ({ size }: {
76
+ declare const MessageIcon: ({ size }: {
76
77
  size?: number;
77
78
  }) => import("react/jsx-runtime").JSX.Element;
78
- export declare const CrossIcon: ({ size }: {
79
+ declare const CrossIcon: ({ size }: {
79
80
  size?: number;
80
81
  }) => import("react/jsx-runtime").JSX.Element;
81
- export declare const UndoIcon: ({ size }: {
82
+ declare const UndoIcon: ({ size }: {
82
83
  size?: number;
83
84
  }) => import("react/jsx-runtime").JSX.Element;
84
- export declare const RedoIcon: ({ size }: {
85
+ declare const RedoIcon: ({ size }: {
85
86
  size?: number;
86
87
  }) => import("react/jsx-runtime").JSX.Element;
87
- export declare const DeltaIcon: ({ size }: {
88
+ declare const DeltaIcon: ({ size }: {
88
89
  size?: number;
89
90
  }) => import("react/jsx-runtime").JSX.Element;
90
- export declare const PenIcon: ({ size }: {
91
+ declare const PenIcon: ({ size }: {
91
92
  size?: number;
92
93
  }) => import("react/jsx-runtime").JSX.Element;
93
- export declare const SummarizeIcon: ({ size }: {
94
+ declare const SummarizeIcon: ({ size }: {
94
95
  size?: number;
95
96
  }) => import("react/jsx-runtime").JSX.Element;
96
- export declare const SidebarLeftIcon: ({ size }: {
97
+ declare const SidebarLeftIcon: ({ size }: {
97
98
  size?: number;
98
99
  }) => import("react/jsx-runtime").JSX.Element;
99
- export declare const PlusIcon: ({ size, color, }: {
100
+ declare const PlusIcon: ({ size, color, }: {
100
101
  size?: number;
101
102
  color?: string;
102
103
  }) => import("react/jsx-runtime").JSX.Element;
103
- export declare const CopyIcon: ({ size }: {
104
+ declare const CopyIcon: ({ size }: {
104
105
  size?: number;
105
106
  }) => import("react/jsx-runtime").JSX.Element;
106
- export declare const ThumbUpIcon: ({ size }: {
107
+ declare const ThumbUpIcon: ({ size }: {
107
108
  size?: number;
108
109
  }) => import("react/jsx-runtime").JSX.Element;
109
- export declare const ThumbDownIcon: ({ size }: {
110
+ declare const ThumbDownIcon: ({ size }: {
110
111
  size?: number;
111
112
  }) => import("react/jsx-runtime").JSX.Element;
112
- export declare const ChevronDownIcon: ({ size, style, }: {
113
+ declare const ChevronDownIcon: ({ size, style, }: {
113
114
  size?: number;
114
115
  style?: React.CSSProperties;
115
116
  }) => import("react/jsx-runtime").JSX.Element;
116
- export declare const SparklesIcon: ({ size }: {
117
+ declare const SparklesIcon: ({ size }: {
117
118
  size?: number;
118
119
  }) => import("react/jsx-runtime").JSX.Element;
119
- export declare const CheckCirclFillIcon: ({ size, className, }: {
120
+ declare const CheckCirclFillIcon: ({ size, className, }: {
120
121
  size?: number;
121
122
  className?: string;
122
123
  }) => import("react/jsx-runtime").JSX.Element;
123
- export declare const MicrophoneIcon: ({ size }: {
124
+ declare const MicrophoneIcon: ({ size }: {
124
125
  size?: number;
125
126
  }) => import("react/jsx-runtime").JSX.Element;
126
- export declare const CircleDotIcon: ({ size, color, }: {
127
+ declare const CircleDotIcon: ({ size, color, }: {
127
128
  size?: number;
128
129
  color?: string;
129
130
  }) => import("react/jsx-runtime").JSX.Element;
130
- export declare const PlayIcon: ({ size }: {
131
+ declare const PlayIcon: ({ size }: {
131
132
  size?: number;
132
133
  }) => import("react/jsx-runtime").JSX.Element;
133
- export declare const StopIcon1: () => import("react/jsx-runtime").JSX.Element;
134
- export declare const VolumeIcon: () => import("react/jsx-runtime").JSX.Element;
135
- export declare const LoadingIcon: ({ size, color, }: {
134
+ declare const StopIcon1: () => import("react/jsx-runtime").JSX.Element;
135
+ declare const VolumeIcon: () => import("react/jsx-runtime").JSX.Element;
136
+ declare const LoadingIcon: ({ size, color, }: {
136
137
  size?: number;
137
138
  color?: string;
138
139
  }) => import("react/jsx-runtime").JSX.Element;
139
- export declare const ClikVolumeIcon: ({ color }: {
140
+ declare const ClikVolumeIcon: ({ color }: {
140
141
  color?: string;
141
142
  }) => import("react/jsx-runtime").JSX.Element;
142
- export declare const ClikMicrophoneIcon: ({ size }: {
143
+ declare const ClikMicrophoneIcon: ({ size }: {
143
144
  size?: number;
144
145
  }) => import("react/jsx-runtime").JSX.Element;
145
- export declare const ClikPlusIcon: ({ size }: {
146
+ declare const ClikPlusIcon: ({ size }: {
146
147
  size?: number;
147
148
  }) => import("react/jsx-runtime").JSX.Element;
148
- export declare const ClikWaveIcon: () => import("react/jsx-runtime").JSX.Element;
149
- export declare const ClikWaveIcon2: () => import("react/jsx-runtime").JSX.Element;
150
- export declare const ClikCloseIcon: ({ size, className, }: {
149
+ declare const ClikWaveIcon: () => import("react/jsx-runtime").JSX.Element;
150
+ declare const ClikWaveIcon2: () => import("react/jsx-runtime").JSX.Element;
151
+ declare const ClikCloseIcon: ({ size, className, }: {
151
152
  size?: number;
152
153
  className?: string;
153
154
  }) => import("react/jsx-runtime").JSX.Element;
154
155
  interface IconProps {
155
156
  color?: string;
156
157
  }
157
- export declare const ClikMessageIcon: ({ color }: IconProps) => import("react/jsx-runtime").JSX.Element;
158
- export declare const CaretDown: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
159
- export declare const ChevronLeft: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
160
- export declare const List: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
161
- export declare const VoiceIcon: ({ size }: {
158
+ declare const ClikMessageIcon: ({ color }: IconProps) => import("react/jsx-runtime").JSX.Element;
159
+ declare const CaretDown: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
160
+ declare const ChevronLeft: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
161
+ declare const List: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
162
+ declare const VoiceIcon: ({ size }: {
162
163
  size: number;
163
164
  }) => import("react/jsx-runtime").JSX.Element;
164
- export declare const ClikPauseIcon: ({ size }: {
165
+ declare const ClikPauseIcon: ({ size }: {
165
166
  size: number;
166
167
  }) => import("react/jsx-runtime").JSX.Element;
167
- export declare const ClikXIcon: ({ size }: {
168
+ declare const ClikXIcon: ({ size }: {
168
169
  size?: number;
169
170
  }) => import("react/jsx-runtime").JSX.Element;
170
171
  interface AudioVisualizerProps {
171
172
  frequencies?: number[];
172
173
  isActive?: boolean;
173
174
  }
174
- export declare const AnimatedRecordingIcon: ({ frequencies, isActive, }?: AudioVisualizerProps) => import("react/jsx-runtime").JSX.Element;
175
+ declare const AnimatedRecordingIcon: ({ frequencies, isActive, }?: AudioVisualizerProps) => import("react/jsx-runtime").JSX.Element;
175
176
  interface ChatIconProps {
176
177
  size?: number;
177
178
  className?: string;
178
179
  style?: React.CSSProperties;
179
180
  color?: string;
180
181
  }
181
- export declare const ClikChatIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
182
- export declare const ClikAIIcon: ({ size, className, style }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
183
- export declare const BookmarkIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
184
- export declare const ProductInfoIcon: ({ color, size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
185
- export declare const ProductGalleryIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
186
- export declare const Product360Icon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
187
- export declare const ProductARIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
188
- export declare const ChatMessageUnlikeIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
189
- export declare const ChatMessageLikeIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
190
- export declare const ChatMessageCopyIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
191
- export declare const ZaloIcon: ({ size }: {
182
+ declare const ClikChatIcon: ({ size, className, style }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
183
+ declare const ClikAIIcon: ({ size, className, style }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
184
+ declare const BookmarkIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
185
+ declare const ProductInfoIcon: ({ color, size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
186
+ declare const ProductGalleryIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
187
+ declare const Product360Icon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
188
+ declare const ProductARIcon: ({ size, color, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
189
+ declare const ChatMessageUnlikeIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
190
+ declare const ChatMessageLikeIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
191
+ declare const ChatMessageCopyIcon: ({ size, className, style, }: ChatIconProps) => import("react/jsx-runtime").JSX.Element;
192
+ declare const ZaloIcon: ({ size }: {
192
193
  size?: number | undefined;
193
194
  }) => import("react/jsx-runtime").JSX.Element;
194
- export declare const FacebookMessageIcon: ({ size }: {
195
+ declare const FacebookMessageIcon: ({ size }: {
195
196
  size?: number | undefined;
196
197
  }) => import("react/jsx-runtime").JSX.Element;
197
- export {};
198
+ declare const VideoIcon: ({ color }: {
199
+ color?: string | undefined;
200
+ }) => import("react/jsx-runtime").JSX.Element;
201
+ declare const PhoneIcon: () => import("react/jsx-runtime").JSX.Element;
202
+ declare const MapPinIcon: () => import("react/jsx-runtime").JSX.Element;
203
+ declare const ChevronRight: (props: IconPropsType) => import("react/jsx-runtime").JSX.Element;
198
204
  //# sourceMappingURL=Icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Icons.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Icons.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Message.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAsB,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAa,MAAM,0BAA0B,CAAC;AAkCtE,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,SAAS,CA8LxC,CAAC;AAEF,eAAO,MAAM,eAAe,YAAa;IAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAA;CAAE,4CAyC/D,CAAC"}
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/Message.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAsB,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAa,MAAM,0BAA0B,CAAC;AAoCtE,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,SAAS,CA8LxC,CAAC;AAEF,eAAO,MAAM,eAAe,YAAa;IAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAA;CAAE,4CAyC/D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MultimodalInput.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/MultimodalInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,EAAE,EAKH,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AASnD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAwBxE,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CACZ,KAAK,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,EACvC,KAAK,CAAC,EAAE,WAAW,EAAE,KAClB,IAAI,CAAC;IACV,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,IAAI,CAAC;IACzE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,SAAS,CAmnBzC,CAAC"}
1
+ {"version":3,"file":"MultimodalInput.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/MultimodalInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,EAAE,EAKH,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AASnD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAqBxE,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CACZ,KAAK,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,EACvC,KAAK,CAAC,EAAE,WAAW,EAAE,KAClB,IAAI,CAAC;IACV,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,IAAI,CAAC;IACzE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,SAAS,CAwoBzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewFileAttachment.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/PreviewFileAttachment.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKvD,eAAO,MAAM,qBAAqB,qDAI/B;IACD,UAAU,EAAE,WAAW,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC,4CAkDA,CAAC"}
1
+ {"version":3,"file":"PreviewFileAttachment.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/PreviewFileAttachment.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKvD,eAAO,MAAM,qBAAqB,qDAI/B;IACD,UAAU,EAAE,WAAW,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC,4CAiDA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserContactForm.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/UserContactForm.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAMrC,KAAK,wBAAwB,GAAG;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAmBF,QAAA,MAAM,eAAe,EAAE,EAAE,CAAC,wBAAwB,CA0MjD,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"UserContactForm.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/UserContactForm.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAmBhD,KAAK,wBAAwB,GAAG;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAQF,QAAA,MAAM,eAAe,EAAE,EAAE,CAAC,wBAAwB,CA6QjD,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -10,6 +10,7 @@ interface VoiceRecordingUIProps {
10
10
  transcribing?: boolean;
11
11
  audioData?: AudioAnalyzerData;
12
12
  label?: string;
13
+ onWidthChange?: (maxBars: number) => void;
13
14
  }
14
15
  export declare const VoiceRecordingUI: React.FC<VoiceRecordingUIProps>;
15
16
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"VoiceRecordingUI.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/VoiceRecordingUI.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,iBAAiB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,UAAU,qBAAqB;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA8F5D,CAAC"}
1
+ {"version":3,"file":"VoiceRecordingUI.d.ts","sourceRoot":"","sources":["../../../src/components/Chat/VoiceRecordingUI.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAIvE,UAAU,iBAAiB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,UAAU,qBAAqB;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAmJ5D,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { type VariantProps } from 'class-variance-authority';
2
2
  import { ButtonHTMLAttributes } from 'react';
3
3
  declare const buttonVariants: (props?: ({
4
- variant?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
4
+ variant?: "default" | "link" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
5
5
  size?: "default" | "icon" | "sm" | "lg" | null | undefined;
6
6
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
7
7
  export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {