@shane_donnelly/dsi-internal-react-utils 1.2.1 → 1.3.1
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/BotMessage-9XyyKf52.js +242 -0
- package/dist/{MarkdownRenderer-vU2aoyaG.js → MarkdownRenderer-DsCX-ARI.js} +1 -1
- package/dist/SessionContainer-C4YWEApz.js +48 -0
- package/dist/{SessionHistory-BUYwbZjE.js → SessionHistory-uFMdR01J.js} +11 -23
- package/dist/{UserMessage-CkrDUpkQ.js → UserMessage-iwSKfrPo.js} +1 -1
- package/dist/{bs-CmZftXMO.js → bs-BGOTKj78.js} +20 -2
- package/dist/chatbot/BotMessage/ImageElement.d.ts +21 -0
- package/dist/chatbot/BotMessage/ImageElement.js +68 -0
- package/dist/chatbot/BotMessage/IsolatedHtmlElement.d.ts +26 -0
- package/dist/chatbot/BotMessage/IsolatedHtmlElement.js +35 -0
- package/dist/chatbot/BotMessage/PlotlyChartElement.d.ts +23 -0
- package/dist/chatbot/BotMessage/PlotlyChartElement.js +30 -0
- package/dist/chatbot/BotMessage/VegaChartElement.d.ts +21 -0
- package/dist/chatbot/BotMessage/VegaChartElement.js +17 -0
- package/dist/chatbot/BotMessage/index.d.ts +6 -16
- package/dist/chatbot/BotMessage/index.js +1 -1
- package/dist/chatbot/BotMessage/types.d.ts +16 -0
- package/dist/chatbot/BotMessage/types.js +0 -0
- package/dist/chatbot/InputBar/index.js +1 -1
- package/dist/chatbot/MarkdownRenderer/index.js +1 -1
- package/dist/chatbot/SessionContainer/index.js +1 -1
- package/dist/chatbot/SessionHistory/index.js +1 -1
- package/dist/chatbot/UserMessage/index.js +1 -1
- package/dist/chatbot/index.d.ts +1 -1
- package/dist/chatbot/index.js +6 -6
- package/dist/keycloak/core/client.d.ts +1 -1
- package/dist/keycloak/core/client.js +6 -3
- package/dist/keycloak/react/KeycloakProvider/index.js +16 -6
- package/dist/main.d.ts +1 -1
- package/dist/main.js +6 -6
- package/dist/style.css +1 -1
- package/dist/styles.module-DTfCO5TA.js +34 -0
- package/package.json +9 -5
- package/dist/BotMessage-DegH8sM-.js +0 -255
- package/dist/SessionContainer-DfTD7hX3.js +0 -50
- /package/dist/{InputBar-CVy2_QtC.js → InputBar-DOkn2T-l.js} +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Données de base pour tout élément d'un message bot.
|
|
3
|
+
*
|
|
4
|
+
* ```python
|
|
5
|
+
* # Pydantic (Python)
|
|
6
|
+
* class ElementData(BaseModel):
|
|
7
|
+
* index: int
|
|
8
|
+
* type: str
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export interface ElementData {
|
|
12
|
+
/** Ordre d'affichage de l'élément dans le message */
|
|
13
|
+
index: number;
|
|
14
|
+
/** Type d'élément — doit correspondre à une clé du registry utilisé */
|
|
15
|
+
type: string;
|
|
16
|
+
}
|
|
File without changes
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../MarkdownRenderer-
|
|
1
|
+
import { t as e } from "../../MarkdownRenderer-DsCX-ARI.js";
|
|
2
2
|
export { e as MarkdownRenderer };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../SessionContainer-
|
|
1
|
+
import { t as e } from "../../SessionContainer-C4YWEApz.js";
|
|
2
2
|
export { e as SessionContainer };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../SessionHistory-
|
|
1
|
+
import { t as e } from "../../SessionHistory-uFMdR01J.js";
|
|
2
2
|
export { e as SessionHistory };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../UserMessage-
|
|
1
|
+
import { t as e } from "../../UserMessage-iwSKfrPo.js";
|
|
2
2
|
export { e as UserMessage };
|
package/dist/chatbot/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export type { MarkdownRendererProps } from './MarkdownRenderer';
|
|
|
5
5
|
export { UserMessage } from './UserMessage';
|
|
6
6
|
export type { UserMessageData, UserMessageProps } from './UserMessage';
|
|
7
7
|
export { BotMessage, defaultBotMessageRegistry } from './BotMessage';
|
|
8
|
-
export type { ElementData, TextElementData, ReasoningElementData, ToolElementData, SearchElementData, BotMessageData, BotMessageRegistry, BotMessageProps, } from './BotMessage';
|
|
8
|
+
export type { ElementData, TextElementData, ReasoningElementData, ToolElementData, SearchElementData, ImageElementData, IsolatedHtmlElementData, VegaChartElementData, PlotlyChartElementData, BotMessageData, BotMessageRegistry, BotMessageProps, } from './BotMessage';
|
|
9
9
|
export { SessionHistory } from './SessionHistory';
|
|
10
10
|
export type { SessionHistoryProps, SessionUserMessageSlots } from './SessionHistory';
|
|
11
11
|
export { InputBar, usePlusSlot } from './InputBar';
|
package/dist/chatbot/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { t as e } from "../MarkdownRenderer-
|
|
1
|
+
import { t as e } from "../MarkdownRenderer-DsCX-ARI.js";
|
|
2
2
|
import { getCurrentTheme as t, getTheme as n, setTheme as r } from "./theme/types.js";
|
|
3
3
|
import { useTheme as i } from "./theme/useTheme.js";
|
|
4
4
|
import "./theme/index.js";
|
|
5
|
-
import { t as a } from "../UserMessage-
|
|
6
|
-
import { n as o, t as s } from "../BotMessage-
|
|
7
|
-
import { t as c } from "../SessionHistory-
|
|
8
|
-
import { t as l } from "../InputBar-
|
|
5
|
+
import { t as a } from "../UserMessage-iwSKfrPo.js";
|
|
6
|
+
import { n as o, t as s } from "../BotMessage-9XyyKf52.js";
|
|
7
|
+
import { t as c } from "../SessionHistory-uFMdR01J.js";
|
|
8
|
+
import { t as l } from "../InputBar-DOkn2T-l.js";
|
|
9
9
|
import { usePlusSlot as u } from "./InputBar/usePlusSlot.js";
|
|
10
|
-
import { t as d } from "../SessionContainer-
|
|
10
|
+
import { t as d } from "../SessionContainer-C4YWEApz.js";
|
|
11
11
|
export { s as BotMessage, l as InputBar, e as MarkdownRenderer, d as SessionContainer, c as SessionHistory, a as UserMessage, o as defaultBotMessageRegistry, t as getCurrentTheme, n as getTheme, r as setTheme, u as usePlusSlot, i as useTheme };
|
|
@@ -5,7 +5,7 @@ import { KeycloakConfig, AuthUser } from './types';
|
|
|
5
5
|
* @param config - Configuration du serveur Keycloak
|
|
6
6
|
* @returns Instance Keycloak
|
|
7
7
|
*/
|
|
8
|
-
export declare function createKeycloakInstance(config: KeycloakConfig): Keycloak
|
|
8
|
+
export declare function createKeycloakInstance(config: KeycloakConfig): Promise<Keycloak>;
|
|
9
9
|
/**
|
|
10
10
|
* Initialise une instance Keycloak avec PKCE S256.
|
|
11
11
|
* Traite un éventuel callback d'authentification dans l'URL,
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import e from "keycloak-js";
|
|
2
1
|
//#region lib/keycloak/core/client.ts
|
|
3
|
-
function
|
|
4
|
-
|
|
2
|
+
async function e() {
|
|
3
|
+
let e = await import("keycloak-js");
|
|
4
|
+
return e.default ?? e;
|
|
5
|
+
}
|
|
6
|
+
async function t(t) {
|
|
7
|
+
return new (await (e()))({
|
|
5
8
|
url: t.url,
|
|
6
9
|
realm: t.realm,
|
|
7
10
|
clientId: t.clientId
|
|
@@ -34,12 +34,22 @@ function u({ config: r, children: u, idpHint: d, refreshInterval: f = 300, minTo
|
|
|
34
34
|
a(() => {
|
|
35
35
|
if (S.current) return;
|
|
36
36
|
S.current = !0;
|
|
37
|
-
let n =
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
let n = !1;
|
|
38
|
+
return (async () => {
|
|
39
|
+
try {
|
|
40
|
+
let i = await e(r);
|
|
41
|
+
if (n) return;
|
|
42
|
+
x.current = i;
|
|
43
|
+
let a = await t(i);
|
|
44
|
+
if (n) return;
|
|
45
|
+
E(i), a || g("unauthenticated");
|
|
46
|
+
} catch (e) {
|
|
47
|
+
if (n) return;
|
|
48
|
+
console.error("[dsi-keycloak] Init error:", e), g("error");
|
|
49
|
+
}
|
|
50
|
+
})(), () => {
|
|
51
|
+
n = !0;
|
|
52
|
+
};
|
|
43
53
|
}, []), a(() => {
|
|
44
54
|
if (h !== "authenticated") return;
|
|
45
55
|
let e = window.setInterval(() => {
|
package/dist/main.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { KeycloakProvider, useKeycloakAuth, logoutKeycloak, refreshTokenKeycloak, } from './keycloak';
|
|
2
2
|
export type { KeycloakProviderProps, KeycloakConfig, KeycloakAuthOptions, AuthStatus, AuthUser, AuthContextValue, LoginOptions, LogoutOptions, } from './keycloak';
|
|
3
3
|
export { setTheme, getTheme, getCurrentTheme, useTheme, MarkdownRenderer, UserMessage, BotMessage, defaultBotMessageRegistry, SessionHistory, InputBar, SessionContainer, usePlusSlot, } from './chatbot';
|
|
4
|
-
export type { ColorPalette, Theme, MarkdownRendererProps, UserMessageData, UserMessageProps, ElementData, TextElementData, ReasoningElementData, ToolElementData, SearchElementData, BotMessageData, BotMessageRegistry, BotMessageProps, SessionHistoryProps, SessionUserMessageSlots, InputBarProps, ActionButtonType, SessionContainerProps, } from './chatbot';
|
|
4
|
+
export type { ColorPalette, Theme, MarkdownRendererProps, UserMessageData, UserMessageProps, ElementData, TextElementData, ReasoningElementData, ToolElementData, SearchElementData, ImageElementData, IsolatedHtmlElementData, VegaChartElementData, PlotlyChartElementData, BotMessageData, BotMessageRegistry, BotMessageProps, SessionHistoryProps, SessionUserMessageSlots, InputBarProps, ActionButtonType, SessionContainerProps, } from './chatbot';
|
package/dist/main.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { t as e } from "./MarkdownRenderer-
|
|
1
|
+
import { t as e } from "./MarkdownRenderer-DsCX-ARI.js";
|
|
2
2
|
import { logoutKeycloak as t, refreshTokenKeycloak as n } from "./keycloak/core/client.js";
|
|
3
3
|
import { KeycloakProvider as r } from "./keycloak/react/KeycloakProvider/index.js";
|
|
4
4
|
import { useKeycloakAuth as i } from "./keycloak/react/hooks/useKeycloakAuth.js";
|
|
5
5
|
import "./keycloak/index.js";
|
|
6
6
|
import { getCurrentTheme as a, getTheme as o, setTheme as s } from "./chatbot/theme/types.js";
|
|
7
7
|
import { useTheme as c } from "./chatbot/theme/useTheme.js";
|
|
8
|
-
import { t as l } from "./UserMessage-
|
|
9
|
-
import { n as u, t as d } from "./BotMessage-
|
|
10
|
-
import { t as f } from "./SessionHistory-
|
|
11
|
-
import { t as p } from "./InputBar-
|
|
8
|
+
import { t as l } from "./UserMessage-iwSKfrPo.js";
|
|
9
|
+
import { n as u, t as d } from "./BotMessage-9XyyKf52.js";
|
|
10
|
+
import { t as f } from "./SessionHistory-uFMdR01J.js";
|
|
11
|
+
import { t as p } from "./InputBar-DOkn2T-l.js";
|
|
12
12
|
import { usePlusSlot as m } from "./chatbot/InputBar/usePlusSlot.js";
|
|
13
|
-
import { t as h } from "./SessionContainer-
|
|
13
|
+
import { t as h } from "./SessionContainer-C4YWEApz.js";
|
|
14
14
|
import "./chatbot/index.js";
|
|
15
15
|
export { d as BotMessage, p as InputBar, r as KeycloakProvider, e as MarkdownRenderer, h as SessionContainer, f as SessionHistory, l as UserMessage, u as defaultBotMessageRegistry, a as getCurrentTheme, o as getTheme, t as logoutKeycloak, n as refreshTokenKeycloak, s as setTheme, i as useKeycloakAuth, m as usePlusSlot, c as useTheme };
|
package/dist/style.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
._dsi-markdown_23cwi_1{color:inherit;word-break:break-word;font-family:inherit;font-size:1rem;line-height:1.7}._dsi-markdown_23cwi_1 h1,._dsi-markdown_23cwi_1 h2,._dsi-markdown_23cwi_1 h3,._dsi-markdown_23cwi_1 h4,._dsi-markdown_23cwi_1 h5,._dsi-markdown_23cwi_1 h6{margin:1.25em 0 .5em;font-weight:600;line-height:1.3}._dsi-markdown_23cwi_1 h1{font-size:1.6em}._dsi-markdown_23cwi_1 h2{font-size:1.35em}._dsi-markdown_23cwi_1 h3{font-size:1.15em}._dsi-markdown_23cwi_1 h4{font-size:1em}._dsi-markdown_23cwi_1 p{margin:.5em 0}._dsi-markdown_23cwi_1 a{color:var(--dsi-accent,#06c);text-underline-offset:2px;text-decoration:underline}._dsi-markdown_23cwi_1 a:hover{opacity:.8}._dsi-markdown_23cwi_1 ul,._dsi-markdown_23cwi_1 ol{margin:.5em 0;padding-left:1.5em}._dsi-markdown_23cwi_1 li{margin:.2em 0}._dsi-markdown_23cwi_1 li>p{margin:0}._dsi-markdown_23cwi_1 blockquote{border-left:3px solid var(--dsi-border,#e5e5e5);color:var(--dsi-text-secondary,#888);margin:.75em 0;padding:.4em 1em;font-style:italic}._dsi-markdown-table-wrapper_23cwi_64{width:100%;margin:.75em 0;display:inline-block;position:relative}._dsi-markdown-table-wrapper_23cwi_64 table{border-collapse:collapse;width:100%;margin:0;font-size:.9em}._dsi-markdown-table-wrapper_23cwi_64 th,._dsi-markdown-table-wrapper_23cwi_64 td{border:1px solid var(--dsi-border,#e5e5e5);text-align:left;padding:.45em .75em}._dsi-markdown-table-wrapper_23cwi_64 th{background:var(--dsi-bg-secondary,#f7f7f8);font-weight:600}._dsi-markdown-table-copy-btn_23cwi_86{background:var(--dsi-bg-secondary,#f7f7f8);border:1px solid var(--dsi-border,#e5e5e5);cursor:pointer;color:var(--dsi-text-secondary,#888);opacity:0;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-family:inherit;font-size:.9em;transition:background .15s,color .15s,opacity .15s;display:flex;position:absolute;bottom:6px;right:6px}._dsi-markdown-table-wrapper_23cwi_64:hover ._dsi-markdown-table-copy-btn_23cwi_86{opacity:1}._dsi-markdown-table-copy-btn_23cwi_86:hover{color:var(--dsi-text-primary,#111);background:#0000000f}._dsi-markdown-table-copy-btn_23cwi_86 svg{font-size:1em}._dsi-markdown_23cwi_1 hr{border:none;border-top:1px solid var(--dsi-border,#e5e5e5);margin:1em 0}._dsi-markdown_23cwi_1 :not(pre)>code{background:var(--dsi-code-bg,#f6f8fa);color:var(--dsi-code-text,#24292e);border-radius:4px;padding:.15em .4em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875em}._dsi-markdown-code-block_23cwi_133{background:var(--dsi-code-bg,#f6f8fa);border:1px solid var(--dsi-border,#e5e5e5);border-radius:8px;margin:.75em 0;position:relative;overflow:hidden}._dsi-markdown-code-lang_23cwi_142{border-bottom:1px solid var(--dsi-border,#e5e5e5);color:var(--dsi-text-secondary,#888);letter-spacing:.03em;background:#0000000a;justify-content:space-between;align-items:center;padding:.35em .75em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.75em;display:flex}._dsi-markdown-copy-btn_23cwi_155{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-family:inherit;font-size:.9em;transition:background .15s,color .15s;display:flex}._dsi-markdown-copy-btn_23cwi_155:hover{color:var(--dsi-text-primary,#111);background:#0000000f}._dsi-markdown-copy-btn_23cwi_155 svg{font-size:.9em}._dsi-markdown-code-block_23cwi_133 pre{color:var(--dsi-code-text,#24292e);background:0 0;margin:0;padding:.9em 1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875em;line-height:1.6;overflow-x:auto}._dsi-markdown-code-block_23cwi_133 pre code{font-size:inherit;color:inherit;background:0 0;border-radius:0;padding:0}._dsi-markdown_23cwi_1 input[type=checkbox]{accent-color:var(--dsi-accent,#06c);margin-right:.4em}._dsi-markdown_23cwi_1 img{border-radius:4px;max-width:100%}._dsi-markdown_23cwi_1 del{opacity:.7}._dsi-bot-msg_9iqvz_2{width:100%;color:var(--dsi-text-primary,#111);flex-direction:column;gap:.5em;padding-bottom:1.4em;font-size:.95rem;display:flex;position:relative}._dsi-bot-loading-dot_9iqvz_15{color:var(--dsi-text-primary,#111);margin-bottom:.1em;animation:1.4s ease-in-out infinite _dsi-bot-pulse_9iqvz_1;display:block}@keyframes _dsi-bot-pulse_9iqvz_1{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.6)}}._dsi-bot-msg-footer_9iqvz_28{align-items:center;gap:.4em;height:1.2em;display:flex;position:absolute;bottom:0;left:0}._dsi-bot-copy-btn_9iqvz_39{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:.85rem;line-height:1;transition:color .15s;display:flex}._dsi-bot-copy-btn_9iqvz_39:hover{color:var(--dsi-text-primary,#111)}._dsi-bot-copy-btn_9iqvz_39 svg{font-size:1em}._dsi-bot-msg-time_9iqvz_62{color:var(--dsi-text-secondary,#888);opacity:0;white-space:nowrap;font-size:.68rem;line-height:1;transition:opacity .15s}._dsi-bot-msg_9iqvz_2:hover ._dsi-bot-msg-time_9iqvz_62{opacity:1}._dsi-bot-reasoning_9iqvz_75,._dsi-bot-tool_9iqvz_76,._dsi-bot-search_9iqvz_77{color:var(--dsi-reasoning-text,#555);font-size:1em;font-style:italic}._dsi-bot-collapsible-header_9iqvz_84{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;align-items:center;gap:.4em;max-width:30%;padding:.25em 0;display:flex}._dsi-bot-collapsible-header_9iqvz_84:focus-visible{outline:2px solid var(--dsi-accent,#06c);border-radius:3px}._dsi-bot-collapsible-header-inner_9iqvz_99{flex:1;align-items:center;gap:.4em;min-width:0;display:flex;overflow:hidden}._dsi-bot-element-title_9iqvz_108{white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}._dsi-bot-collapse-chevron_9iqvz_115{opacity:.5;flex-shrink:0;font-size:1em;transition:opacity .15s,transform .2s}._dsi-bot-collapsible-header_9iqvz_84:hover ._dsi-bot-collapse-chevron_9iqvz_115{opacity:.8}._dsi-bot-collapsible-body_9iqvz_126{border-left:2px solid var(--dsi-reasoning-border,var(--dsi-tool-border,#d1d5db));max-width:90%;padding:.4em 0 .25em .75em}._dsi-bot-collapsible-content_9iqvz_132{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9em}._dsi-bot-search-icon_9iqvz_140{flex-shrink:0;font-size:1em}._dsi-bot-spinner_9iqvz_146{border:1.5px solid #00000026;border-top-color:var(--dsi-text-secondary,#888);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.7s linear infinite _dsi-spin_9iqvz_1;display:inline-block}@keyframes _dsi-spin_9iqvz_1{to{transform:rotate(360deg)}}._dsi-inputbar_1ngbl_2{box-sizing:border-box;flex-direction:column;gap:0;width:100%;display:flex;position:relative}._dsi-inputbar-upper-slot_1ngbl_12{border:1px solid var(--dsi-border,#e5e5e5);background:var(--dsi-input-bg,#fff);box-sizing:border-box;border-bottom:none;border-radius:14px 14px 0 0;width:100%;padding:.5em .75em}._dsi-inputbar-plus-slot_1ngbl_23{z-index:100;background:var(--dsi-input-bg,#fff);border:1px solid var(--dsi-border,#e5e5e5);box-sizing:border-box;border-radius:12px;min-width:180px;padding:.4em 0;position:absolute;bottom:calc(100% + 4px);left:0;box-shadow:0 4px 20px #0000001a}._dsi-inputbar-row_1ngbl_38{background:var(--dsi-input-bg,#fff);border:1px solid var(--dsi-border,#e5e5e5);box-sizing:border-box;border-radius:14px;align-items:flex-end;gap:8px;padding:.55em .75em;transition:border-color .15s;display:flex}._dsi-inputbar-row_1ngbl_38:focus-within{border-color:var(--dsi-accent,#06c)}._dsi-inputbar-row--with-upper_1ngbl_55{border-radius:0 0 14px 14px}._dsi-inputbar-textarea_1ngbl_60{resize:none;color:var(--dsi-text-primary,#111);background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:200px;padding:0;font-family:inherit;font-size:.95rem;line-height:1.5;overflow-y:auto}._dsi-inputbar-textarea_1ngbl_60::placeholder{color:var(--dsi-text-secondary,#888)}._dsi-inputbar-plus-btn_1ngbl_81{border:1px solid var(--dsi-border,#e5e5e5);background:var(--dsi-button-bg,transparent);width:32px;height:32px;color:var(--dsi-text-primary,#111);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.1em;transition:background .15s;display:flex}._dsi-inputbar-plus-btn_1ngbl_81:hover,._dsi-inputbar-plus-btn--open_1ngbl_100{background:var(--dsi-button-hover-bg,#f0f0f0)}._dsi-inputbar-action-btn_1ngbl_105{background:var(--dsi-action-btn-bg,#111);width:32px;height:32px;color:var(--dsi-action-btn-icon,#fff);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1em;transition:background .15s,opacity .15s;display:flex}._dsi-inputbar-action-btn_1ngbl_105:hover:not(:disabled){background:var(--dsi-action-btn-hover-bg,#333)}._dsi-inputbar-action-btn_1ngbl_105:disabled{opacity:.35;cursor:not-allowed}._dsi-user-msg-wrapper_e7uu3_1{flex-direction:column;align-items:flex-end;width:100%;padding-bottom:1.4em;display:flex;position:relative}._dsi-user-msg-top-slot_e7uu3_12{justify-content:flex-end;margin-bottom:4px;display:flex}._dsi-user-msg-row_e7uu3_19{align-items:center;gap:8px;max-width:70%;display:flex}._dsi-user-msg-left-slot_e7uu3_26,._dsi-user-msg-right-slot_e7uu3_27{flex-shrink:0;align-items:center;display:flex}._dsi-user-msg-bubble_e7uu3_34{background:var(--dsi-user-bubble-bg,#f0f0f0);color:var(--dsi-user-bubble-text,#111);word-break:break-word;border-radius:18px 18px 4px;min-width:40px;padding:10px 16px;font-size:.95rem;line-height:1.5}._dsi-user-msg-bottom-slot_e7uu3_46{justify-content:flex-end;margin-top:4px;display:flex}._dsi-user-msg-footer_e7uu3_53{opacity:0;align-items:center;gap:.35em;height:1.2em;transition:opacity .15s;display:flex;position:absolute;bottom:0;right:0}._dsi-user-msg-wrapper_e7uu3_1:hover ._dsi-user-msg-footer_e7uu3_53{opacity:1}._dsi-user-msg-copy-btn_e7uu3_69{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:.85rem;line-height:1;transition:color .15s;display:flex}._dsi-user-msg-copy-btn_e7uu3_69:hover{color:var(--dsi-user-bubble-text,#111)}._dsi-user-msg-copy-btn_e7uu3_69 svg{font-size:.8em}._dsi-user-msg-time_e7uu3_92{color:var(--dsi-text-secondary,#888);white-space:nowrap;font-size:.68rem;line-height:1}._dsi-session-history_ju41j_1{box-sizing:border-box;flex-direction:column;gap:1.5em;width:100%;padding:1em 0;display:flex;overflow-y:auto}._dsi-session-container_1iida_1{box-sizing:border-box;background:var(--dsi-bg,#fff);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._dsi-session-container-history_1iida_11{box-sizing:border-box;flex:1;padding:0 1.5em;overflow-y:auto}._dsi-session-container-inputbar_1iida_18{box-sizing:border-box;flex-shrink:0;padding:.75em 1.5em 1em}
|
|
1
|
+
._dsi-bot-msg_16idu_2{width:100%;color:var(--dsi-text-primary,#111);flex-direction:column;gap:.5em;padding-bottom:1.4em;font-size:.95rem;display:flex;position:relative}._dsi-bot-loading-dot_16idu_15{color:var(--dsi-text-primary,#111);margin-bottom:.1em;animation:1.4s ease-in-out infinite _dsi-bot-pulse_16idu_1;display:block}@keyframes _dsi-bot-pulse_16idu_1{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.6)}}._dsi-bot-msg-footer_16idu_28{align-items:center;gap:.4em;height:1.2em;display:flex;position:absolute;bottom:0;left:0}._dsi-bot-copy-btn_16idu_39{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:.85rem;line-height:1;transition:color .15s;display:flex}._dsi-bot-copy-btn_16idu_39:hover{color:var(--dsi-text-primary,#111)}._dsi-bot-copy-btn_16idu_39 svg{font-size:1em}._dsi-bot-msg-time_16idu_62{color:var(--dsi-text-secondary,#888);opacity:0;white-space:nowrap;font-size:.68rem;line-height:1;transition:opacity .15s}._dsi-bot-msg_16idu_2:hover ._dsi-bot-msg-time_16idu_62{opacity:1}._dsi-bot-reasoning_16idu_75,._dsi-bot-tool_16idu_76,._dsi-bot-search_16idu_77{color:var(--dsi-reasoning-text,#555);font-size:1em;font-style:italic}._dsi-bot-collapsible-header_16idu_84{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;align-items:center;gap:.4em;max-width:30%;padding:.25em 0;display:flex}._dsi-bot-collapsible-header_16idu_84:focus-visible{outline:2px solid var(--dsi-accent,#06c);border-radius:3px}._dsi-bot-collapsible-header-inner_16idu_99{flex:1;align-items:center;gap:.4em;min-width:0;display:flex;overflow:hidden}._dsi-bot-element-title_16idu_108{white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}._dsi-bot-collapse-chevron_16idu_115{opacity:.5;flex-shrink:0;font-size:1em;transition:opacity .15s,transform .2s}._dsi-bot-collapsible-header_16idu_84:hover ._dsi-bot-collapse-chevron_16idu_115{opacity:.8}._dsi-bot-collapsible-body_16idu_126{border-left:2px solid var(--dsi-reasoning-border,var(--dsi-tool-border,#d1d5db));max-width:90%;padding:.4em 0 .25em .75em}._dsi-bot-collapsible-content_16idu_132{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9em}._dsi-bot-search-icon_16idu_140{flex-shrink:0;font-size:1em}._dsi-bot-spinner_16idu_146{border:1.5px solid #00000026;border-top-color:var(--dsi-text-secondary,#888);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.7s linear infinite _dsi-spin_16idu_1;display:inline-block}@keyframes _dsi-spin_16idu_1{to{transform:rotate(360deg)}}._dsi-bot-image-wrap_16idu_162{align-self:flex-start;max-width:100%;display:inline-block;position:relative}._dsi-bot-image_16idu_162{border-radius:8px;max-width:100%;height:auto;display:block}._dsi-bot-image-placeholder_16idu_177{width:200px;height:200px;color:var(--dsi-text-secondary,#888);background:#0000000a;border:1px dashed #0000001f;border-radius:8px;justify-content:center;align-items:center;font-size:.85em;display:flex}._dsi-bot-image-spinner_16idu_190{border:2px solid #00000026;border-top-color:var(--dsi-text-secondary,#888);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite _dsi-spin_16idu_1;display:inline-block}._dsi-bot-image-error_16idu_200{text-align:center;padding:0 .5em}._dsi-bot-image-actions_16idu_206{opacity:0;pointer-events:none;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}._dsi-bot-image-wrap_16idu_162:hover ._dsi-bot-image-actions_16idu_206{opacity:1;pointer-events:auto}._dsi-bot-image-btn_16idu_221{cursor:pointer;width:26px;height:26px;color:var(--dsi-text-secondary,#888);background:#ffffffd9;border:1px solid #00000014;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:.85rem;transition:color .15s,background .15s;display:flex}._dsi-bot-image-btn_16idu_221:hover{color:var(--dsi-text-primary,#111);background:#fff}._dsi-bot-image-btn_16idu_221 svg{font-size:1em}._dsi-bot-iframe-wrap_16idu_245{border:1px solid var(--dsi-border,#00000014);background:var(--dsi-background,transparent);border-radius:8px;align-self:flex-start;max-width:100%;position:relative;overflow:hidden}._dsi-bot-iframe_16idu_245{border:0;width:100%;display:block}._dsi-bot-iframe-copy_16idu_262{cursor:pointer;color:var(--dsi-text-secondary,#888);opacity:0;background:#ffffffd9;border:1px solid #00000014;border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.85rem;transition:color .15s,background .15s;display:flex;position:absolute;top:6px;right:6px}._dsi-bot-iframe-wrap_16idu_245:hover ._dsi-bot-iframe-copy_16idu_262{opacity:1}._dsi-bot-iframe-copy_16idu_262:hover{color:var(--dsi-text-primary,#111);background:#fff}._dsi-bot-iframe-copy_16idu_262 svg{font-size:1em}._dsi-bot-chart-wrap_16idu_292{align-self:flex-start;max-width:100%}._dsi-markdown_23cwi_1{color:inherit;word-break:break-word;font-family:inherit;font-size:1rem;line-height:1.7}._dsi-markdown_23cwi_1 h1,._dsi-markdown_23cwi_1 h2,._dsi-markdown_23cwi_1 h3,._dsi-markdown_23cwi_1 h4,._dsi-markdown_23cwi_1 h5,._dsi-markdown_23cwi_1 h6{margin:1.25em 0 .5em;font-weight:600;line-height:1.3}._dsi-markdown_23cwi_1 h1{font-size:1.6em}._dsi-markdown_23cwi_1 h2{font-size:1.35em}._dsi-markdown_23cwi_1 h3{font-size:1.15em}._dsi-markdown_23cwi_1 h4{font-size:1em}._dsi-markdown_23cwi_1 p{margin:.5em 0}._dsi-markdown_23cwi_1 a{color:var(--dsi-accent,#06c);text-underline-offset:2px;text-decoration:underline}._dsi-markdown_23cwi_1 a:hover{opacity:.8}._dsi-markdown_23cwi_1 ul,._dsi-markdown_23cwi_1 ol{margin:.5em 0;padding-left:1.5em}._dsi-markdown_23cwi_1 li{margin:.2em 0}._dsi-markdown_23cwi_1 li>p{margin:0}._dsi-markdown_23cwi_1 blockquote{border-left:3px solid var(--dsi-border,#e5e5e5);color:var(--dsi-text-secondary,#888);margin:.75em 0;padding:.4em 1em;font-style:italic}._dsi-markdown-table-wrapper_23cwi_64{width:100%;margin:.75em 0;display:inline-block;position:relative}._dsi-markdown-table-wrapper_23cwi_64 table{border-collapse:collapse;width:100%;margin:0;font-size:.9em}._dsi-markdown-table-wrapper_23cwi_64 th,._dsi-markdown-table-wrapper_23cwi_64 td{border:1px solid var(--dsi-border,#e5e5e5);text-align:left;padding:.45em .75em}._dsi-markdown-table-wrapper_23cwi_64 th{background:var(--dsi-bg-secondary,#f7f7f8);font-weight:600}._dsi-markdown-table-copy-btn_23cwi_86{background:var(--dsi-bg-secondary,#f7f7f8);border:1px solid var(--dsi-border,#e5e5e5);cursor:pointer;color:var(--dsi-text-secondary,#888);opacity:0;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-family:inherit;font-size:.9em;transition:background .15s,color .15s,opacity .15s;display:flex;position:absolute;bottom:6px;right:6px}._dsi-markdown-table-wrapper_23cwi_64:hover ._dsi-markdown-table-copy-btn_23cwi_86{opacity:1}._dsi-markdown-table-copy-btn_23cwi_86:hover{color:var(--dsi-text-primary,#111);background:#0000000f}._dsi-markdown-table-copy-btn_23cwi_86 svg{font-size:1em}._dsi-markdown_23cwi_1 hr{border:none;border-top:1px solid var(--dsi-border,#e5e5e5);margin:1em 0}._dsi-markdown_23cwi_1 :not(pre)>code{background:var(--dsi-code-bg,#f6f8fa);color:var(--dsi-code-text,#24292e);border-radius:4px;padding:.15em .4em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875em}._dsi-markdown-code-block_23cwi_133{background:var(--dsi-code-bg,#f6f8fa);border:1px solid var(--dsi-border,#e5e5e5);border-radius:8px;margin:.75em 0;position:relative;overflow:hidden}._dsi-markdown-code-lang_23cwi_142{border-bottom:1px solid var(--dsi-border,#e5e5e5);color:var(--dsi-text-secondary,#888);letter-spacing:.03em;background:#0000000a;justify-content:space-between;align-items:center;padding:.35em .75em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.75em;display:flex}._dsi-markdown-copy-btn_23cwi_155{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-family:inherit;font-size:.9em;transition:background .15s,color .15s;display:flex}._dsi-markdown-copy-btn_23cwi_155:hover{color:var(--dsi-text-primary,#111);background:#0000000f}._dsi-markdown-copy-btn_23cwi_155 svg{font-size:.9em}._dsi-markdown-code-block_23cwi_133 pre{color:var(--dsi-code-text,#24292e);background:0 0;margin:0;padding:.9em 1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875em;line-height:1.6;overflow-x:auto}._dsi-markdown-code-block_23cwi_133 pre code{font-size:inherit;color:inherit;background:0 0;border-radius:0;padding:0}._dsi-markdown_23cwi_1 input[type=checkbox]{accent-color:var(--dsi-accent,#06c);margin-right:.4em}._dsi-markdown_23cwi_1 img{border-radius:4px;max-width:100%}._dsi-markdown_23cwi_1 del{opacity:.7}._dsi-inputbar_1ngbl_2{box-sizing:border-box;flex-direction:column;gap:0;width:100%;display:flex;position:relative}._dsi-inputbar-upper-slot_1ngbl_12{border:1px solid var(--dsi-border,#e5e5e5);background:var(--dsi-input-bg,#fff);box-sizing:border-box;border-bottom:none;border-radius:14px 14px 0 0;width:100%;padding:.5em .75em}._dsi-inputbar-plus-slot_1ngbl_23{z-index:100;background:var(--dsi-input-bg,#fff);border:1px solid var(--dsi-border,#e5e5e5);box-sizing:border-box;border-radius:12px;min-width:180px;padding:.4em 0;position:absolute;bottom:calc(100% + 4px);left:0;box-shadow:0 4px 20px #0000001a}._dsi-inputbar-row_1ngbl_38{background:var(--dsi-input-bg,#fff);border:1px solid var(--dsi-border,#e5e5e5);box-sizing:border-box;border-radius:14px;align-items:flex-end;gap:8px;padding:.55em .75em;transition:border-color .15s;display:flex}._dsi-inputbar-row_1ngbl_38:focus-within{border-color:var(--dsi-accent,#06c)}._dsi-inputbar-row--with-upper_1ngbl_55{border-radius:0 0 14px 14px}._dsi-inputbar-textarea_1ngbl_60{resize:none;color:var(--dsi-text-primary,#111);background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:200px;padding:0;font-family:inherit;font-size:.95rem;line-height:1.5;overflow-y:auto}._dsi-inputbar-textarea_1ngbl_60::placeholder{color:var(--dsi-text-secondary,#888)}._dsi-inputbar-plus-btn_1ngbl_81{border:1px solid var(--dsi-border,#e5e5e5);background:var(--dsi-button-bg,transparent);width:32px;height:32px;color:var(--dsi-text-primary,#111);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.1em;transition:background .15s;display:flex}._dsi-inputbar-plus-btn_1ngbl_81:hover,._dsi-inputbar-plus-btn--open_1ngbl_100{background:var(--dsi-button-hover-bg,#f0f0f0)}._dsi-inputbar-action-btn_1ngbl_105{background:var(--dsi-action-btn-bg,#111);width:32px;height:32px;color:var(--dsi-action-btn-icon,#fff);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1em;transition:background .15s,opacity .15s;display:flex}._dsi-inputbar-action-btn_1ngbl_105:hover:not(:disabled){background:var(--dsi-action-btn-hover-bg,#333)}._dsi-inputbar-action-btn_1ngbl_105:disabled{opacity:.35;cursor:not-allowed}._dsi-user-msg-wrapper_e7uu3_1{flex-direction:column;align-items:flex-end;width:100%;padding-bottom:1.4em;display:flex;position:relative}._dsi-user-msg-top-slot_e7uu3_12{justify-content:flex-end;margin-bottom:4px;display:flex}._dsi-user-msg-row_e7uu3_19{align-items:center;gap:8px;max-width:70%;display:flex}._dsi-user-msg-left-slot_e7uu3_26,._dsi-user-msg-right-slot_e7uu3_27{flex-shrink:0;align-items:center;display:flex}._dsi-user-msg-bubble_e7uu3_34{background:var(--dsi-user-bubble-bg,#f0f0f0);color:var(--dsi-user-bubble-text,#111);word-break:break-word;border-radius:18px 18px 4px;min-width:40px;padding:10px 16px;font-size:.95rem;line-height:1.5}._dsi-user-msg-bottom-slot_e7uu3_46{justify-content:flex-end;margin-top:4px;display:flex}._dsi-user-msg-footer_e7uu3_53{opacity:0;align-items:center;gap:.35em;height:1.2em;transition:opacity .15s;display:flex;position:absolute;bottom:0;right:0}._dsi-user-msg-wrapper_e7uu3_1:hover ._dsi-user-msg-footer_e7uu3_53{opacity:1}._dsi-user-msg-copy-btn_e7uu3_69{cursor:pointer;color:var(--dsi-text-secondary,#888);background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:0;font-family:inherit;font-size:.85rem;line-height:1;transition:color .15s;display:flex}._dsi-user-msg-copy-btn_e7uu3_69:hover{color:var(--dsi-user-bubble-text,#111)}._dsi-user-msg-copy-btn_e7uu3_69 svg{font-size:.8em}._dsi-user-msg-time_e7uu3_92{color:var(--dsi-text-secondary,#888);white-space:nowrap;font-size:.68rem;line-height:1}._dsi-session-history_13fgm_1{box-sizing:border-box;flex-direction:column;gap:1.5em;width:100%;height:100%;padding:1em 0;display:flex;overflow-y:auto}._dsi-session-container_1iida_1{box-sizing:border-box;background:var(--dsi-bg,#fff);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._dsi-session-container-history_1iida_11{box-sizing:border-box;flex:1;padding:0 1.5em;overflow-y:auto}._dsi-session-container-inputbar_1iida_18{box-sizing:border-box;flex-shrink:0;padding:.75em 1.5em 1em}
|
|
2
2
|
/*$vite$:1*/
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
//#region lib/chatbot/BotMessage/styles.module.css
|
|
2
|
+
var e = {
|
|
3
|
+
"dsi-bot-msg": "_dsi-bot-msg_16idu_2",
|
|
4
|
+
"dsi-bot-loading-dot": "_dsi-bot-loading-dot_16idu_15",
|
|
5
|
+
"dsi-bot-pulse": "_dsi-bot-pulse_16idu_1",
|
|
6
|
+
"dsi-bot-msg-footer": "_dsi-bot-msg-footer_16idu_28",
|
|
7
|
+
"dsi-bot-copy-btn": "_dsi-bot-copy-btn_16idu_39",
|
|
8
|
+
"dsi-bot-msg-time": "_dsi-bot-msg-time_16idu_62",
|
|
9
|
+
"dsi-bot-reasoning": "_dsi-bot-reasoning_16idu_75",
|
|
10
|
+
"dsi-bot-tool": "_dsi-bot-tool_16idu_76",
|
|
11
|
+
"dsi-bot-search": "_dsi-bot-search_16idu_77",
|
|
12
|
+
"dsi-bot-collapsible-header": "_dsi-bot-collapsible-header_16idu_84",
|
|
13
|
+
"dsi-bot-collapsible-header-inner": "_dsi-bot-collapsible-header-inner_16idu_99",
|
|
14
|
+
"dsi-bot-element-title": "_dsi-bot-element-title_16idu_108",
|
|
15
|
+
"dsi-bot-collapse-chevron": "_dsi-bot-collapse-chevron_16idu_115",
|
|
16
|
+
"dsi-bot-collapsible-body": "_dsi-bot-collapsible-body_16idu_126",
|
|
17
|
+
"dsi-bot-collapsible-content": "_dsi-bot-collapsible-content_16idu_132",
|
|
18
|
+
"dsi-bot-search-icon": "_dsi-bot-search-icon_16idu_140",
|
|
19
|
+
"dsi-bot-spinner": "_dsi-bot-spinner_16idu_146",
|
|
20
|
+
"dsi-spin": "_dsi-spin_16idu_1",
|
|
21
|
+
"dsi-bot-image-wrap": "_dsi-bot-image-wrap_16idu_162",
|
|
22
|
+
"dsi-bot-image": "_dsi-bot-image_16idu_162",
|
|
23
|
+
"dsi-bot-image-placeholder": "_dsi-bot-image-placeholder_16idu_177",
|
|
24
|
+
"dsi-bot-image-spinner": "_dsi-bot-image-spinner_16idu_190",
|
|
25
|
+
"dsi-bot-image-error": "_dsi-bot-image-error_16idu_200",
|
|
26
|
+
"dsi-bot-image-actions": "_dsi-bot-image-actions_16idu_206",
|
|
27
|
+
"dsi-bot-image-btn": "_dsi-bot-image-btn_16idu_221",
|
|
28
|
+
"dsi-bot-iframe-wrap": "_dsi-bot-iframe-wrap_16idu_245",
|
|
29
|
+
"dsi-bot-iframe": "_dsi-bot-iframe_16idu_245",
|
|
30
|
+
"dsi-bot-iframe-copy": "_dsi-bot-iframe-copy_16idu_262",
|
|
31
|
+
"dsi-bot-chart-wrap": "_dsi-bot-chart-wrap_16idu_292"
|
|
32
|
+
};
|
|
33
|
+
//#endregion
|
|
34
|
+
export { e as t };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shane_donnelly/dsi-internal-react-utils",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.3.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"dev": "vite",
|
|
@@ -22,10 +22,9 @@
|
|
|
22
22
|
"eslint-plugin-react-refresh": "^0.5.2",
|
|
23
23
|
"glob": "^13.0.6",
|
|
24
24
|
"globals": "^17.4.0",
|
|
25
|
-
"keycloak-js": "^26.0.0",
|
|
26
25
|
"react": "^19.2.4",
|
|
27
26
|
"react-dom": "^19.2.4",
|
|
28
|
-
"typescript": "
|
|
27
|
+
"typescript": "^6.0.2",
|
|
29
28
|
"typescript-eslint": "^8.58.0",
|
|
30
29
|
"vite": "^8.0.4",
|
|
31
30
|
"vite-plugin-dts": "^4.5.4",
|
|
@@ -44,17 +43,22 @@
|
|
|
44
43
|
"dist"
|
|
45
44
|
],
|
|
46
45
|
"peerDependencies": {
|
|
47
|
-
"keycloak-js": ">=25.0.0",
|
|
48
46
|
"react": "^19.2.4",
|
|
49
47
|
"react-dom": "^19.2.4"
|
|
50
48
|
},
|
|
51
49
|
"dependencies": {
|
|
50
|
+
"keycloak-js": "^26.0.0",
|
|
52
51
|
"react-icons": "^5.6.0",
|
|
53
52
|
"react-markdown": "^10.1.0",
|
|
53
|
+
"react-vega": "^8.0.0",
|
|
54
54
|
"rehype-highlight": "^7.0.2",
|
|
55
55
|
"rehype-katex": "^7.0.1",
|
|
56
56
|
"rehype-raw": "^7.0.0",
|
|
57
57
|
"remark-gfm": "^4.0.1",
|
|
58
|
-
"remark-math": "^6.0.0"
|
|
58
|
+
"remark-math": "^6.0.0",
|
|
59
|
+
"vega-embed": "^7.1.0",
|
|
60
|
+
"vega-lite": "^6.4.3",
|
|
61
|
+
"plotly.js": "^3.5.1",
|
|
62
|
+
"react-plotly.js": "^2.6.0"
|
|
59
63
|
}
|
|
60
64
|
}
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
import { t as e } from "./MarkdownRenderer-vU2aoyaG.js";
|
|
2
|
-
import { useTheme as t } from "./chatbot/theme/useTheme.js";
|
|
3
|
-
import { t as n } from "./iconBase-CDbPVA4E.js";
|
|
4
|
-
import { n as r, t as i } from "./bs-CmZftXMO.js";
|
|
5
|
-
import { useEffect as a, useState as o } from "react";
|
|
6
|
-
import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
7
|
-
//#region node_modules/react-icons/tb/index.mjs
|
|
8
|
-
function u(e) {
|
|
9
|
-
return n({
|
|
10
|
-
tag: "svg",
|
|
11
|
-
attr: {
|
|
12
|
-
viewBox: "0 0 24 24",
|
|
13
|
-
fill: "none",
|
|
14
|
-
stroke: "currentColor",
|
|
15
|
-
strokeWidth: "2",
|
|
16
|
-
strokeLinecap: "round",
|
|
17
|
-
strokeLinejoin: "round"
|
|
18
|
-
},
|
|
19
|
-
child: [
|
|
20
|
-
{
|
|
21
|
-
tag: "path",
|
|
22
|
-
attr: { d: "M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0" },
|
|
23
|
-
child: []
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
tag: "path",
|
|
27
|
-
attr: { d: "M3.6 9h16.8" },
|
|
28
|
-
child: []
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
tag: "path",
|
|
32
|
-
attr: { d: "M3.6 15h16.8" },
|
|
33
|
-
child: []
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
tag: "path",
|
|
37
|
-
attr: { d: "M11.5 3a17 17 0 0 0 0 18" },
|
|
38
|
-
child: []
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
tag: "path",
|
|
42
|
-
attr: { d: "M12.5 3a17 17 0 0 1 0 18" },
|
|
43
|
-
child: []
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
})(e);
|
|
47
|
-
}
|
|
48
|
-
function d(e) {
|
|
49
|
-
return n({
|
|
50
|
-
tag: "svg",
|
|
51
|
-
attr: {
|
|
52
|
-
viewBox: "0 0 24 24",
|
|
53
|
-
fill: "none",
|
|
54
|
-
stroke: "currentColor",
|
|
55
|
-
strokeWidth: "2",
|
|
56
|
-
strokeLinecap: "round",
|
|
57
|
-
strokeLinejoin: "round"
|
|
58
|
-
},
|
|
59
|
-
child: [{
|
|
60
|
-
tag: "path",
|
|
61
|
-
attr: { d: "M6 9l6 6l6 -6" },
|
|
62
|
-
child: []
|
|
63
|
-
}]
|
|
64
|
-
})(e);
|
|
65
|
-
}
|
|
66
|
-
//#endregion
|
|
67
|
-
//#region lib/chatbot/BotMessage/styles.module.css
|
|
68
|
-
var f = {
|
|
69
|
-
"dsi-bot-msg": "_dsi-bot-msg_9iqvz_2",
|
|
70
|
-
"dsi-bot-loading-dot": "_dsi-bot-loading-dot_9iqvz_15",
|
|
71
|
-
"dsi-bot-pulse": "_dsi-bot-pulse_9iqvz_1",
|
|
72
|
-
"dsi-bot-msg-footer": "_dsi-bot-msg-footer_9iqvz_28",
|
|
73
|
-
"dsi-bot-copy-btn": "_dsi-bot-copy-btn_9iqvz_39",
|
|
74
|
-
"dsi-bot-msg-time": "_dsi-bot-msg-time_9iqvz_62",
|
|
75
|
-
"dsi-bot-reasoning": "_dsi-bot-reasoning_9iqvz_75",
|
|
76
|
-
"dsi-bot-tool": "_dsi-bot-tool_9iqvz_76",
|
|
77
|
-
"dsi-bot-search": "_dsi-bot-search_9iqvz_77",
|
|
78
|
-
"dsi-bot-collapsible-header": "_dsi-bot-collapsible-header_9iqvz_84",
|
|
79
|
-
"dsi-bot-collapsible-header-inner": "_dsi-bot-collapsible-header-inner_9iqvz_99",
|
|
80
|
-
"dsi-bot-element-title": "_dsi-bot-element-title_9iqvz_108",
|
|
81
|
-
"dsi-bot-collapse-chevron": "_dsi-bot-collapse-chevron_9iqvz_115",
|
|
82
|
-
"dsi-bot-collapsible-body": "_dsi-bot-collapsible-body_9iqvz_126",
|
|
83
|
-
"dsi-bot-collapsible-content": "_dsi-bot-collapsible-content_9iqvz_132",
|
|
84
|
-
"dsi-bot-search-icon": "_dsi-bot-search-icon_9iqvz_140",
|
|
85
|
-
"dsi-bot-spinner": "_dsi-bot-spinner_9iqvz_146",
|
|
86
|
-
"dsi-spin": "_dsi-spin_9iqvz_1"
|
|
87
|
-
};
|
|
88
|
-
//#endregion
|
|
89
|
-
//#region lib/chatbot/BotMessage/index.tsx
|
|
90
|
-
function p({ markdownText: t }) {
|
|
91
|
-
return t ? /* @__PURE__ */ c(e, { text: t }) : null;
|
|
92
|
-
}
|
|
93
|
-
function m() {
|
|
94
|
-
return /* @__PURE__ */ c("svg", {
|
|
95
|
-
className: f["dsi-bot-loading-dot"],
|
|
96
|
-
width: "10",
|
|
97
|
-
height: "10",
|
|
98
|
-
viewBox: "0 0 10 10",
|
|
99
|
-
"aria-hidden": "true",
|
|
100
|
-
children: /* @__PURE__ */ c("circle", {
|
|
101
|
-
cx: "5",
|
|
102
|
-
cy: "5",
|
|
103
|
-
r: "4",
|
|
104
|
-
fill: "currentColor"
|
|
105
|
-
})
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
function h({ text: e }) {
|
|
109
|
-
let [t, n] = o(!1);
|
|
110
|
-
return /* @__PURE__ */ c("button", {
|
|
111
|
-
className: f["dsi-bot-copy-btn"],
|
|
112
|
-
onClick: () => {
|
|
113
|
-
navigator.clipboard.writeText(e).then(() => {
|
|
114
|
-
n(!0), setTimeout(() => n(!1), 2e3);
|
|
115
|
-
});
|
|
116
|
-
},
|
|
117
|
-
"aria-label": "Copier le message",
|
|
118
|
-
type: "button",
|
|
119
|
-
children: c(t ? i : r, {})
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
function g({ defaultOpen: e, closeWhen: t = !1, header: n, content: r, className: i, style: s }) {
|
|
123
|
-
let [u, p] = o(e);
|
|
124
|
-
return a(() => {
|
|
125
|
-
t && p(!1);
|
|
126
|
-
}, [t]), /* @__PURE__ */ l("div", {
|
|
127
|
-
className: i,
|
|
128
|
-
style: s,
|
|
129
|
-
children: [/* @__PURE__ */ l("div", {
|
|
130
|
-
className: f["dsi-bot-collapsible-header"],
|
|
131
|
-
onClick: () => p((e) => !e),
|
|
132
|
-
role: "button",
|
|
133
|
-
tabIndex: 0,
|
|
134
|
-
onKeyDown: (e) => {
|
|
135
|
-
(e.key === "Enter" || e.key === " ") && p((e) => !e);
|
|
136
|
-
},
|
|
137
|
-
"aria-expanded": u,
|
|
138
|
-
children: [/* @__PURE__ */ c("div", {
|
|
139
|
-
className: f["dsi-bot-collapsible-header-inner"],
|
|
140
|
-
children: n
|
|
141
|
-
}), /* @__PURE__ */ c(d, {
|
|
142
|
-
className: f["dsi-bot-collapse-chevron"],
|
|
143
|
-
style: { transform: u ? "rotate(0deg)" : "rotate(-90deg)" },
|
|
144
|
-
"aria-hidden": "true"
|
|
145
|
-
})]
|
|
146
|
-
}), u && r && /* @__PURE__ */ c("div", {
|
|
147
|
-
className: f["dsi-bot-collapsible-body"],
|
|
148
|
-
children: r
|
|
149
|
-
})]
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
function _({ title: e, content: n, isLoading: r = !1, _isLastElement: i = !1 }) {
|
|
153
|
-
let a = t();
|
|
154
|
-
return /* @__PURE__ */ c(g, {
|
|
155
|
-
defaultOpen: r || i,
|
|
156
|
-
closeWhen: !r && !i,
|
|
157
|
-
className: f["dsi-bot-reasoning"],
|
|
158
|
-
style: {
|
|
159
|
-
"--dsi-reasoning-border": a.reasoningBorder,
|
|
160
|
-
"--dsi-reasoning-text": a.reasoningText
|
|
161
|
-
},
|
|
162
|
-
header: /* @__PURE__ */ c("span", {
|
|
163
|
-
className: f["dsi-bot-element-title"],
|
|
164
|
-
children: e || "Raisonnement"
|
|
165
|
-
}),
|
|
166
|
-
content: n ? /* @__PURE__ */ c("p", {
|
|
167
|
-
className: f["dsi-bot-collapsible-content"],
|
|
168
|
-
children: n
|
|
169
|
-
}) : null
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
function v({ title: e, content: n, isLoading: r = !1, _isLastElement: i = !1 }) {
|
|
173
|
-
let a = t();
|
|
174
|
-
return /* @__PURE__ */ c(g, {
|
|
175
|
-
defaultOpen: r || i,
|
|
176
|
-
closeWhen: !r && !i,
|
|
177
|
-
className: f["dsi-bot-tool"],
|
|
178
|
-
style: {
|
|
179
|
-
"--dsi-tool-border": a.toolBorder,
|
|
180
|
-
"--dsi-text-secondary": a.textSecondary,
|
|
181
|
-
"--dsi-text-primary": a.textPrimary
|
|
182
|
-
},
|
|
183
|
-
header: /* @__PURE__ */ l(s, { children: [r && /* @__PURE__ */ c("span", { className: f["dsi-bot-spinner"] }), /* @__PURE__ */ c("span", {
|
|
184
|
-
className: f["dsi-bot-element-title"],
|
|
185
|
-
children: e || "Outil"
|
|
186
|
-
})] }),
|
|
187
|
-
content: n ? /* @__PURE__ */ c("p", {
|
|
188
|
-
className: f["dsi-bot-collapsible-content"],
|
|
189
|
-
children: n
|
|
190
|
-
}) : null
|
|
191
|
-
});
|
|
192
|
-
}
|
|
193
|
-
function y({ title: e, content: n, isLoading: r = !1, _isLastElement: i = !1 }) {
|
|
194
|
-
let a = t();
|
|
195
|
-
return /* @__PURE__ */ c(g, {
|
|
196
|
-
defaultOpen: r || i,
|
|
197
|
-
closeWhen: !r && !i,
|
|
198
|
-
className: f["dsi-bot-search"],
|
|
199
|
-
style: {
|
|
200
|
-
"--dsi-tool-border": a.toolBorder,
|
|
201
|
-
"--dsi-text-secondary": a.textSecondary,
|
|
202
|
-
"--dsi-text-primary": a.textPrimary
|
|
203
|
-
},
|
|
204
|
-
header: /* @__PURE__ */ l(s, { children: [
|
|
205
|
-
/* @__PURE__ */ c(u, { className: f["dsi-bot-search-icon"] }),
|
|
206
|
-
r && /* @__PURE__ */ c("span", { className: f["dsi-bot-spinner"] }),
|
|
207
|
-
/* @__PURE__ */ c("span", {
|
|
208
|
-
className: f["dsi-bot-element-title"],
|
|
209
|
-
children: e || "Recherche"
|
|
210
|
-
})
|
|
211
|
-
] }),
|
|
212
|
-
content: n ? /* @__PURE__ */ c("p", {
|
|
213
|
-
className: f["dsi-bot-collapsible-content"],
|
|
214
|
-
children: n
|
|
215
|
-
}) : null
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
var b = {
|
|
219
|
-
text: p,
|
|
220
|
-
reasoning: _,
|
|
221
|
-
tool: v,
|
|
222
|
-
search: y
|
|
223
|
-
};
|
|
224
|
-
function x({ message: e, registry: n = b }) {
|
|
225
|
-
let r = t(), i = [...e.elements].sort((e, t) => e.index - t.index), a = [...i].reverse().find((e) => e.type === "text")?.markdownText ?? "";
|
|
226
|
-
return /* @__PURE__ */ l("div", {
|
|
227
|
-
className: f["dsi-bot-msg"],
|
|
228
|
-
style: {
|
|
229
|
-
"--dsi-text-primary": r.textPrimary,
|
|
230
|
-
"--dsi-text-secondary": r.textSecondary,
|
|
231
|
-
"--dsi-border": r.border
|
|
232
|
-
},
|
|
233
|
-
children: [
|
|
234
|
-
e.isLoading && /* @__PURE__ */ c(m, {}),
|
|
235
|
-
i.map((e, t) => {
|
|
236
|
-
let r = n[e.type];
|
|
237
|
-
if (!r) return null;
|
|
238
|
-
let a = t === i.length - 1;
|
|
239
|
-
return /* @__PURE__ */ c(r, {
|
|
240
|
-
...e,
|
|
241
|
-
_isLastElement: a
|
|
242
|
-
}, `${e.type}-${e.index}-${t}`);
|
|
243
|
-
}),
|
|
244
|
-
/* @__PURE__ */ l("div", {
|
|
245
|
-
className: f["dsi-bot-msg-footer"],
|
|
246
|
-
children: [!e.isLoading && /* @__PURE__ */ c(h, { text: a }), !e.isLoading && e.timeOrDateToDisplay && /* @__PURE__ */ c("span", {
|
|
247
|
-
className: f["dsi-bot-msg-time"],
|
|
248
|
-
children: e.timeOrDateToDisplay
|
|
249
|
-
})]
|
|
250
|
-
})
|
|
251
|
-
]
|
|
252
|
-
});
|
|
253
|
-
}
|
|
254
|
-
//#endregion
|
|
255
|
-
export { b as n, x as t };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { useTheme as e } from "./chatbot/theme/useTheme.js";
|
|
2
|
-
import { t } from "./SessionHistory-BUYwbZjE.js";
|
|
3
|
-
import { t as n } from "./InputBar-CVy2_QtC.js";
|
|
4
|
-
import { useEffect as r, useMemo as i, useRef as a } from "react";
|
|
5
|
-
import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
6
|
-
//#region lib/chatbot/SessionContainer/styles.module.css
|
|
7
|
-
var l = {
|
|
8
|
-
"dsi-session-container": "_dsi-session-container_1iida_1",
|
|
9
|
-
"dsi-session-container-history": "_dsi-session-container-history_1iida_11",
|
|
10
|
-
"dsi-session-container-inputbar": "_dsi-session-container-inputbar_1iida_18"
|
|
11
|
-
};
|
|
12
|
-
//#endregion
|
|
13
|
-
//#region lib/chatbot/SessionContainer/index.tsx
|
|
14
|
-
function u({ userMessages: u, botMessages: d, orderedIds: f, botMessageRegistry: p, userMessageSlots: m, alternativeScreenComponent: h, isAlternativeScreenActive: g = !1, value: _, onChange: v, placeholder: y, actionButtonType: b, actionButtonEnabled: x, onActionButtonClick: S, plusSlot: C, upperSlot: w }) {
|
|
15
|
-
let T = e(), E = a(null), D = i(() => {
|
|
16
|
-
let e = new Map(u.map((e) => [e.id, e]));
|
|
17
|
-
return f.filter((t) => e.has(t)).map((t) => e.get(t).text);
|
|
18
|
-
}, [u, f]);
|
|
19
|
-
return r(() => {
|
|
20
|
-
E.current?.scrollIntoView({ behavior: "smooth" });
|
|
21
|
-
}, [f.length]), /* @__PURE__ */ c("div", {
|
|
22
|
-
className: l["dsi-session-container"],
|
|
23
|
-
style: { "--dsi-bg": T.background },
|
|
24
|
-
children: [/* @__PURE__ */ s("div", {
|
|
25
|
-
className: l["dsi-session-container-history"],
|
|
26
|
-
children: g ? h ?? null : /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s(t, {
|
|
27
|
-
userMessages: u,
|
|
28
|
-
botMessages: d,
|
|
29
|
-
orderedIds: f,
|
|
30
|
-
botMessageRegistry: p,
|
|
31
|
-
userMessageSlots: m
|
|
32
|
-
}), /* @__PURE__ */ s("div", { ref: E })] })
|
|
33
|
-
}), /* @__PURE__ */ s("div", {
|
|
34
|
-
className: l["dsi-session-container-inputbar"],
|
|
35
|
-
children: /* @__PURE__ */ s(n, {
|
|
36
|
-
value: _,
|
|
37
|
-
onChange: v,
|
|
38
|
-
placeholder: y,
|
|
39
|
-
actionButtonType: b,
|
|
40
|
-
actionButtonEnabled: x,
|
|
41
|
-
onActionButtonClick: S,
|
|
42
|
-
plusSlot: C,
|
|
43
|
-
upperSlot: w,
|
|
44
|
-
messageHistory: D
|
|
45
|
-
})
|
|
46
|
-
})]
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
//#endregion
|
|
50
|
-
export { u as t };
|
|
File without changes
|