@alquimia-ai/ui 1.2.1 → 1.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/hooks/index.js +41 -32
- package/dist/components/hooks/index.js.map +1 -1
- package/dist/components/hooks/index.mjs +42 -33
- package/dist/components/hooks/index.mjs.map +1 -1
- package/dist/components/molecules/index.js +41 -32
- package/dist/components/molecules/index.js.map +1 -1
- package/dist/components/molecules/index.mjs +42 -33
- package/dist/components/molecules/index.mjs.map +1 -1
- package/dist/components/organisms/index.js +41 -32
- package/dist/components/organisms/index.js.map +1 -1
- package/dist/components/organisms/index.mjs +42 -33
- package/dist/components/organisms/index.mjs.map +1 -1
- package/dist/index.js +41 -32
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +42 -33
- package/dist/index.mjs.map +1 -1
- package/dist/package.json +136 -0
- package/package.json +50 -53
- package/src/components/atoms/index.ts +0 -32
- package/src/components/atoms/ui/alert.tsx +0 -59
- package/src/components/atoms/ui/aspect-ratio.tsx +0 -7
- package/src/components/atoms/ui/avatar.tsx +0 -50
- package/src/components/atoms/ui/badge.tsx +0 -36
- package/src/components/atoms/ui/breadcrumb.tsx +0 -120
- package/src/components/atoms/ui/button.tsx +0 -56
- package/src/components/atoms/ui/card.tsx +0 -87
- package/src/components/atoms/ui/checkbox.tsx +0 -31
- package/src/components/atoms/ui/command.tsx +0 -155
- package/src/components/atoms/ui/dialog.tsx +0 -125
- package/src/components/atoms/ui/drawer.tsx +0 -119
- package/src/components/atoms/ui/input.tsx +0 -26
- package/src/components/atoms/ui/label.tsx +0 -26
- package/src/components/atoms/ui/loader.tsx +0 -52
- package/src/components/atoms/ui/popover.tsx +0 -31
- package/src/components/atoms/ui/rich-text.tsx +0 -19
- package/src/components/atoms/ui/scroll-area.tsx +0 -48
- package/src/components/atoms/ui/select.tsx +0 -160
- package/src/components/atoms/ui/skeleton.tsx +0 -15
- package/src/components/atoms/ui/slider.tsx +0 -29
- package/src/components/atoms/ui/switch.tsx +0 -30
- package/src/components/atoms/ui/table.tsx +0 -118
- package/src/components/atoms/ui/tabs.tsx +0 -56
- package/src/components/atoms/ui/text-area/index.tsx +0 -24
- package/src/components/atoms/ui/textarea.tsx +0 -25
- package/src/components/atoms/ui/think-indicator.tsx +0 -103
- package/src/components/atoms/ui/toast.tsx +0 -129
- package/src/components/atoms/ui/toaster.tsx +0 -38
- package/src/components/atoms/ui/toggle.tsx +0 -45
- package/src/components/atoms/ui/typography/index.tsx +0 -30
- package/src/components/hooks/index.ts +0 -4
- package/src/components/hooks/use-document.tsx +0 -44
- package/src/components/hooks/use-resize-observer.ts +0 -28
- package/src/components/hooks/use-text-streaming.ts +0 -63
- package/src/components/hooks/use-toast.ts +0 -194
- package/src/components/index.ts +0 -1
- package/src/components/molecules/alert-dialog.tsx +0 -141
- package/src/components/molecules/assistant-button.tsx +0 -148
- package/src/components/molecules/call-out.tsx +0 -163
- package/src/components/molecules/carousel.tsx +0 -262
- package/src/components/molecules/documents/document-selector.tsx +0 -79
- package/src/components/molecules/documents/document-viewer.tsx +0 -85
- package/src/components/molecules/documents/index.ts +0 -2
- package/src/components/molecules/index.ts +0 -11
- package/src/components/molecules/navigation-menu.tsx +0 -128
- package/src/components/molecules/page-container.tsx +0 -17
- package/src/components/molecules/rating-comment.tsx +0 -93
- package/src/components/molecules/rating-stars.tsx +0 -136
- package/src/components/molecules/rating-thumbs.tsx +0 -90
- package/src/components/molecules/sidebar.tsx +0 -107
- package/src/components/molecules/sonner.tsx +0 -30
- package/src/components/molecules/viewers/index.ts +0 -2
- package/src/components/molecules/viewers/pdf-viewer.tsx +0 -138
- package/src/components/molecules/viewers/plain-text-viewer.tsx +0 -40
- package/src/components/organisms/assistant.tsx +0 -271
- package/src/components/organisms/index.ts +0 -6
- package/src/components/organisms/rating-dialog.tsx +0 -104
- package/src/components/organisms/speechToText.tsx +0 -92
- package/src/components/organisms/whisper.tsx +0 -106
- package/src/components/templates/cards/index.ts +0 -2
- package/src/components/templates/cards/with-image-heading-description-avatar.tsx +0 -94
- package/src/components/templates/cards/with-image-heading-description.tsx +0 -63
- package/src/components/templates/hero/index.tsx +0 -39
- package/src/components/templates/index.ts +0 -4
- package/src/components/templates/messages-window.tsx +0 -15
- package/src/components/templates/query-box.tsx +0 -13
- package/src/components/ui/input.tsx +0 -25
- package/src/components/ui/select.tsx +0 -163
- package/src/index.ts +0 -7
- package/src/lib/index.ts +0 -1
- package/src/lib/utils.ts +0 -34
- package/src/styles/call-out.css +0 -153
- package/src/styles/drawer.css +0 -28
- package/src/styles/globals.css +0 -69
- package/src/styles/prose.css +0 -51
- package/src/styles/ratings.css +0 -27
- package/src/styles/themes/base-alquimia.css +0 -95
- package/src/styles/themes/base-nordic.css +0 -83
- package/src/styles/themes/base-primary.css +0 -85
- package/src/styles/themes/base.css +0 -8
- package/src/types/index.ts +0 -1
- package/src/types/type.ts +0 -76
|
@@ -2417,50 +2417,59 @@ RatingComment.displayName = "RatingComment";
|
|
|
2417
2417
|
import * as React32 from "react";
|
|
2418
2418
|
|
|
2419
2419
|
// src/components/hooks/use-text-streaming.ts
|
|
2420
|
-
import { useEffect as useEffect10, useRef,
|
|
2420
|
+
import { useState as useState10, useEffect as useEffect10, useRef, useCallback as useCallback2 } from "react";
|
|
2421
2421
|
var CHAR_DELAY = 25;
|
|
2422
|
-
var PUNCTUATION_DELAY =
|
|
2423
|
-
var PUNCTUATION_MARKS = [".", "!", "?", ";", ":"];
|
|
2422
|
+
var PUNCTUATION_DELAY = 400;
|
|
2424
2423
|
function useTextStreaming(content, shouldStream, handleIsTextStreaming) {
|
|
2425
|
-
const [
|
|
2426
|
-
const
|
|
2424
|
+
const [displayedText, setDisplayedText] = useState10("");
|
|
2425
|
+
const contentRef = useRef(content);
|
|
2426
|
+
const indexRef = useRef(0);
|
|
2427
|
+
const timerRef = useRef(null);
|
|
2427
2428
|
const hasStartedStreaming = useRef(false);
|
|
2428
|
-
const getDelayForChar = (text, position) => {
|
|
2429
|
-
if (position === 0) return CHAR_DELAY;
|
|
2430
|
-
const previousChar = text[position - 1] || "";
|
|
2431
|
-
const isEllipsis = text.slice(position - 1, position + 2) === "...";
|
|
2432
|
-
if (isEllipsis) {
|
|
2433
|
-
return CHAR_DELAY;
|
|
2434
|
-
}
|
|
2435
|
-
return PUNCTUATION_MARKS.includes(previousChar) ? PUNCTUATION_DELAY : CHAR_DELAY;
|
|
2436
|
-
};
|
|
2437
2429
|
useEffect10(() => {
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
return;
|
|
2430
|
+
contentRef.current = content;
|
|
2431
|
+
if (hasStartedStreaming.current && !timerRef.current && indexRef.current < contentRef.current.length) {
|
|
2432
|
+
typeNext();
|
|
2442
2433
|
}
|
|
2443
|
-
|
|
2444
|
-
|
|
2445
|
-
if (
|
|
2446
|
-
const
|
|
2447
|
-
|
|
2448
|
-
|
|
2434
|
+
}, [content]);
|
|
2435
|
+
const typeNext = useCallback2(() => {
|
|
2436
|
+
if (indexRef.current < contentRef.current.length) {
|
|
2437
|
+
const nextChar = contentRef.current.charAt(indexRef.current);
|
|
2438
|
+
setDisplayedText((prev) => prev + nextChar);
|
|
2439
|
+
indexRef.current++;
|
|
2440
|
+
const delay = /[.!?;:]/.test(nextChar) ? PUNCTUATION_DELAY : CHAR_DELAY;
|
|
2441
|
+
timerRef.current = setTimeout(() => {
|
|
2442
|
+
timerRef.current = null;
|
|
2443
|
+
typeNext();
|
|
2449
2444
|
}, delay);
|
|
2450
2445
|
} else {
|
|
2451
2446
|
handleIsTextStreaming?.(false);
|
|
2452
2447
|
}
|
|
2448
|
+
}, []);
|
|
2449
|
+
useEffect10(() => {
|
|
2450
|
+
if (!shouldStream && !hasStartedStreaming.current) {
|
|
2451
|
+
setDisplayedText(contentRef.current);
|
|
2452
|
+
indexRef.current = contentRef.current.length;
|
|
2453
|
+
if (timerRef.current) {
|
|
2454
|
+
clearTimeout(timerRef.current);
|
|
2455
|
+
timerRef.current = null;
|
|
2456
|
+
}
|
|
2457
|
+
handleIsTextStreaming?.(false);
|
|
2458
|
+
} else {
|
|
2459
|
+
if (indexRef.current < contentRef.current.length && !timerRef.current) {
|
|
2460
|
+
handleIsTextStreaming?.(true);
|
|
2461
|
+
hasStartedStreaming.current = true;
|
|
2462
|
+
typeNext();
|
|
2463
|
+
}
|
|
2464
|
+
}
|
|
2453
2465
|
return () => {
|
|
2454
|
-
if (
|
|
2466
|
+
if (timerRef.current) {
|
|
2467
|
+
clearTimeout(timerRef.current);
|
|
2468
|
+
timerRef.current = null;
|
|
2469
|
+
}
|
|
2455
2470
|
};
|
|
2456
|
-
}, [
|
|
2457
|
-
|
|
2458
|
-
displayedContent,
|
|
2459
|
-
shouldStream,
|
|
2460
|
-
getDelayForChar,
|
|
2461
|
-
handleIsTextStreaming
|
|
2462
|
-
]);
|
|
2463
|
-
return displayedContent;
|
|
2471
|
+
}, [shouldStream, typeNext]);
|
|
2472
|
+
return displayedText;
|
|
2464
2473
|
}
|
|
2465
2474
|
|
|
2466
2475
|
// src/components/molecules/call-out.tsx
|