@servicetitan/anvil2-ext-atlas 1.0.0 → 1.2.0

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 (56) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/{chat-composer-rich-BM5hoC1f.js → chat-composer-rich-BUVy1VRa.js} +10 -16
  3. package/dist/chat-composer-rich-BUVy1VRa.js.map +1 -0
  4. package/dist/chat-composer-rich.css +15 -27
  5. package/dist/chat-composer-rich.js +1 -1
  6. package/dist/{chat-window-BEkLTYNg.js → chat-window-BU8VGO9z.js} +7 -8
  7. package/dist/{chat-window-BEkLTYNg.js.map → chat-window-BU8VGO9z.js.map} +1 -1
  8. package/dist/chat-window.css +9 -9
  9. package/dist/chat.js +1 -1
  10. package/dist/components/messages/index.d.ts +1 -0
  11. package/dist/components/recommendations/confirmation-card/confirmation-card.d.ts +1 -0
  12. package/dist/components/screens/index.d.ts +1 -0
  13. package/dist/{content-acT_RzNQ.js → content-D4YSNvFG.js} +2 -3
  14. package/dist/{content-acT_RzNQ.js.map → content-D4YSNvFG.js.map} +1 -1
  15. package/dist/content.css +2 -2
  16. package/dist/content.js +1 -1
  17. package/dist/error-DR_wWdYY.js +6 -0
  18. package/dist/error-DR_wWdYY.js.map +1 -0
  19. package/dist/{footer-DezXey1O.js → footer-Du5cuzZZ.js} +2 -2
  20. package/dist/{footer-DezXey1O.js.map → footer-Du5cuzZZ.js.map} +1 -1
  21. package/dist/footer.js +1 -1
  22. package/dist/{header-DgkrbsFN.js → header-C7lrbzyg.js} +3 -4
  23. package/dist/{header-DgkrbsFN.js.map → header-C7lrbzyg.js.map} +1 -1
  24. package/dist/header.css +4 -4
  25. package/dist/header.js +1 -1
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.js +108 -11
  28. package/dist/index.js.map +1 -1
  29. package/dist/{markdown-text-CKN0oo8R.js → markdown-text-BXCCdmOl.js} +2 -3
  30. package/dist/{markdown-text-CKN0oo8R.js.map → markdown-text-BXCCdmOl.js.map} +1 -1
  31. package/dist/markdown-text.css +18 -18
  32. package/dist/markdown-text.js +1 -1
  33. package/dist/messages.js +1 -1
  34. package/dist/notification-card-CdQVC1kO.js +67 -0
  35. package/dist/notification-card-CdQVC1kO.js.map +1 -0
  36. package/dist/notification-card.js +1 -1
  37. package/dist/recommendations.js +1 -1
  38. package/dist/screens.js +1 -1
  39. package/dist/{single-recommendation-card-G78KiWnb.js → single-recommendation-card-BEZJp7Vd.js} +6 -4
  40. package/dist/single-recommendation-card-BEZJp7Vd.js.map +1 -0
  41. package/dist/{toolbox-B-mWIaVL.js → toolbox-jC8O6fep.js} +2 -3
  42. package/dist/toolbox-jC8O6fep.js.map +1 -0
  43. package/dist/toolbox.js +1 -1
  44. package/dist/{user-message-DCOP95qA.js → user-message-B_mKtRDd.js} +16 -21
  45. package/dist/user-message-B_mKtRDd.js.map +1 -0
  46. package/dist/user-message.css +45 -45
  47. package/dist/{welcome-BY6k2z0K.js → welcome-Bh0_he52.js} +38 -5
  48. package/dist/welcome-Bh0_he52.js.map +1 -0
  49. package/package.json +4 -4
  50. package/dist/chat-composer-rich-BM5hoC1f.js.map +0 -1
  51. package/dist/notification-card-B38ZC7k4.js +0 -59
  52. package/dist/notification-card-B38ZC7k4.js.map +0 -1
  53. package/dist/single-recommendation-card-G78KiWnb.js.map +0 -1
  54. package/dist/toolbox-B-mWIaVL.js.map +0 -1
  55. package/dist/user-message-DCOP95qA.js.map +0 -1
  56. package/dist/welcome-BY6k2z0K.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # @servicetitan/anvil2-ext-atlas
2
2
 
3
+ ## 1.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1912](https://github.com/servicetitan/hammer/pull/1912) [`5407522`](https://github.com/servicetitan/hammer/commit/5407522eeecd636a755f8489c7352770f130a305) Thanks [@w-a-t-s-o-n](https://github.com/w-a-t-s-o-n)! - [Dependencies] `@servicetitan/anvil2` peer dependency now requires `^2.0.0`
8
+
9
+ - [#1758](https://github.com/servicetitan/hammer/pull/1758) [`9c62b20`](https://github.com/servicetitan/hammer/commit/9c62b2060791fdbf24ed5a123a902c1e186129f4) Thanks [@w-a-t-s-o-n](https://github.com/w-a-t-s-o-n)! - [Exports] Export `ErrorMessage` and `SystemError` components
10
+
11
+ - [#1919](https://github.com/servicetitan/hammer/pull/1919) [`6947057`](https://github.com/servicetitan/hammer/commit/69470572325edee9d39074a1b994ee72250a82fe) Thanks [@arnold-dad-st](https://github.com/arnold-dad-st)! - [ConfirmationCard] Add `title` prop
12
+
13
+ - [#1919](https://github.com/servicetitan/hammer/pull/1919) [`6947057`](https://github.com/servicetitan/hammer/commit/69470572325edee9d39074a1b994ee72250a82fe) Thanks [@arnold-dad-st](https://github.com/arnold-dad-st)! - [Hooks] Export hooks from package
14
+
15
+ ### Patch Changes
16
+
17
+ - [#1919](https://github.com/servicetitan/hammer/pull/1919) [`6947057`](https://github.com/servicetitan/hammer/commit/69470572325edee9d39074a1b994ee72250a82fe) Thanks [@arnold-dad-st](https://github.com/arnold-dad-st)! - [ChatComposerRich] Update styles and remove disabled
18
+
19
+ - [#1921](https://github.com/servicetitan/hammer/pull/1921) [`8432bed`](https://github.com/servicetitan/hammer/commit/8432bed8dbcbf26df88702475f53b69b2065b76a) Thanks [@w-a-t-s-o-n](https://github.com/w-a-t-s-o-n)! - [ChatWindow, Content, InfiniteContent, MarkdownText, MarkdownMessage, NotificationCard] Replace hardcoded color hex values with semantic CSS variables for consistent theming
20
+
21
+ - Updated dependencies [[`e66f0a0`](https://github.com/servicetitan/hammer/commit/e66f0a0841fdf4b37b3b2075e2a27a8a76312ec0), [`0257c91`](https://github.com/servicetitan/hammer/commit/0257c9190e3b3e8bd00852d6b6cfa4435d420d07)]:
22
+ - @servicetitan/anvil2@2.0.2
23
+
24
+ ## 1.1.0
25
+
26
+ ### Minor Changes
27
+
28
+ - [#1837](https://github.com/servicetitan/hammer/pull/1837) [`3c638be`](https://github.com/servicetitan/hammer/commit/3c638be98b871aa1c8e18ead49bf4363d276ae2a) Thanks [@pbuckingham-st](https://github.com/pbuckingham-st)! - Updates to support Anvil2 2.0
29
+
30
+ ### Patch Changes
31
+
32
+ - Updated dependencies [[`3c638be`](https://github.com/servicetitan/hammer/commit/3c638be98b871aa1c8e18ead49bf4363d276ae2a)]:
33
+ - @servicetitan/anvil2@2.0.0
34
+
3
35
  ## 1.0.0
4
36
 
5
37
  ### Patch Changes
@@ -12,19 +12,16 @@ const SvgSend = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "
12
12
 
13
13
  const SvgAttachFile = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M17.5 15.438q0 2.382-1.673 4.056t-4.056 1.673q-2.384 0-4.056-1.673-1.674-1.674-1.673-4.056v-8.48q0-1.718 1.203-2.922 1.203-1.203 2.922-1.203t2.922 1.203q1.203 1.205 1.203 2.922v8.021q0 1.055-.734 1.788a2.43 2.43 0 0 1-1.787.733 2.43 2.43 0 0 1-1.788-.733 2.43 2.43 0 0 1-.733-1.788V7.417q0-.39.264-.653a.9.9 0 0 1 .653-.264q.39 0 .653.264a.9.9 0 0 1 .263.653v7.562a.67.67 0 0 0 .688.688.67.67 0 0 0 .687-.688V6.96a2.32 2.32 0 0 0-.676-1.628q-.653-.664-1.615-.664-.963 0-1.627.664a2.2 2.2 0 0 0-.665 1.627v8.48q-.023 1.627 1.123 2.761t2.773 1.134q1.604 0 2.727-1.134t1.169-2.762v-8.02q0-.39.263-.653a.9.9 0 0 1 .653-.264q.39 0 .653.264a.9.9 0 0 1 .264.653z" }));
14
14
 
15
- const disabled = "_disabled_qqqa2_20";
16
- const placeholder = "_placeholder_qqqa2_55";
17
- const input = "_input_qqqa2_48";
15
+ const placeholder = "_placeholder_eb8wi_43";
16
+ const input = "_input_eb8wi_36";
18
17
  const styles = {
19
- "composer-wrapper": "_composer-wrapper_qqqa2_1",
20
- "composer-form": "_composer-form_qqqa2_9",
21
- disabled: disabled,
22
- "icon-button": "_icon-button_qqqa2_33",
23
- "input-wrapper": "_input-wrapper_qqqa2_48",
18
+ "composer-wrapper": "_composer-wrapper_eb8wi_1",
19
+ "composer-form": "_composer-form_eb8wi_9",
20
+ "icon-button": "_icon-button_eb8wi_21",
21
+ "input-wrapper": "_input-wrapper_eb8wi_36",
24
22
  placeholder: placeholder,
25
23
  input: input,
26
- "send-button": "_send-button_qqqa2_111"
27
- };
24
+ "send-button": "_send-button_eb8wi_99"};
28
25
 
29
26
  const ChatComposerRich = ({
30
27
  message,
@@ -67,7 +64,7 @@ const ChatComposerRich = ({
67
64
  onSend?.(text);
68
65
  if (editorRef.current) {
69
66
  editorRef.current.innerText = "";
70
- editorRef.current.blur();
67
+ editorRef.current.focus();
71
68
  }
72
69
  setIsEmpty(true);
73
70
  };
@@ -78,9 +75,7 @@ const ChatComposerRich = ({
78
75
  "form",
79
76
  {
80
77
  onSubmit: (e) => e.preventDefault(),
81
- className: classNames(styles["composer-form"], {
82
- [styles["disabled"]]: disabled
83
- }),
78
+ className: styles["composer-form"],
84
79
  children: [
85
80
  onDictateMessage || onUploadFile ? /* @__PURE__ */ jsxs(
86
81
  Menu,
@@ -129,7 +124,6 @@ const ChatComposerRich = ({
129
124
  role: "textbox",
130
125
  "aria-multiline": "true",
131
126
  "aria-label": placeholder,
132
- "aria-disabled": disabled,
133
127
  "data-placeholder": placeholder,
134
128
  onInput: handleInput,
135
129
  onKeyDown: handleKeyDown,
@@ -159,4 +153,4 @@ const ChatComposerRich = ({
159
153
  };
160
154
 
161
155
  export { ChatComposerRich as C };
162
- //# sourceMappingURL=chat-composer-rich-BM5hoC1f.js.map
156
+ //# sourceMappingURL=chat-composer-rich-BUVy1VRa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-composer-rich-BUVy1VRa.js","sources":["../../anvil2/dist/assets/icons/material/round/add.svg","../../anvil2/dist/assets/icons/material/round/mic.svg","../../anvil2/dist/assets/icons/material/round/send.svg","../../anvil2/dist/assets/icons/st/attach_file.svg","../src/components/chat-composer-rich/chat-composer-rich.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgAdd = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M18 13h-5v5c0 .55-.45 1-1 1s-1-.45-1-1v-5H6c-.55 0-1-.45-1-1s.45-1 1-1h5V6c0-.55.45-1 1-1s1 .45 1 1v5h5c.55 0 1 .45 1 1s-.45 1-1 1z\" }));\nexport default SvgAdd;\n","import * as React from \"react\";\nconst SvgMic = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M12 14c1.66 0 3-1.34 3-3V5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3zm5.91-3c-.49 0-.9.36-.98.85C16.52 14.2 14.47 16 12 16s-4.52-1.8-4.93-4.15a.998.998 0 0 0-.98-.85c-.61 0-1.09.54-1 1.14.49 3 2.89 5.35 5.91 5.78V20c0 .55.45 1 1 1s1-.45 1-1v-2.08a6.993 6.993 0 0 0 5.91-5.78c.1-.6-.39-1.14-1-1.14z\" }));\nexport default SvgMic;\n","import * as React from \"react\";\nconst SvgSend = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"m3.4 20.4 17.45-7.48a1 1 0 0 0 0-1.84L3.4 3.6a.993.993 0 0 0-1.39.91L2 9.12c0 .5.37.93.87.99L17 12 2.87 13.88c-.5.07-.87.5-.87 1l.01 4.61c0 .71.73 1.2 1.39.91z\" }));\nexport default SvgSend;\n","import * as React from \"react\";\nconst SvgAttachFile = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M17.5 15.438q0 2.382-1.673 4.056t-4.056 1.673q-2.384 0-4.056-1.673-1.674-1.674-1.673-4.056v-8.48q0-1.718 1.203-2.922 1.203-1.203 2.922-1.203t2.922 1.203q1.203 1.205 1.203 2.922v8.021q0 1.055-.734 1.788a2.43 2.43 0 0 1-1.787.733 2.43 2.43 0 0 1-1.788-.733 2.43 2.43 0 0 1-.733-1.788V7.417q0-.39.264-.653a.9.9 0 0 1 .653-.264q.39 0 .653.264a.9.9 0 0 1 .263.653v7.562a.67.67 0 0 0 .688.688.67.67 0 0 0 .687-.688V6.96a2.32 2.32 0 0 0-.676-1.628q-.653-.664-1.615-.664-.963 0-1.627.664a2.2 2.2 0 0 0-.665 1.627v8.48q-.023 1.627 1.123 2.761t2.773 1.134q1.604 0 2.727-1.134t1.169-2.762v-8.02q0-.39.263-.653a.9.9 0 0 1 .653-.264q.39 0 .653.264a.9.9 0 0 1 .264.653z\" }));\nexport default SvgAttachFile;\n","import { KeyboardEvent, useEffect, useRef, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { Button, Menu } from \"@servicetitan/anvil2\";\nimport IconPlus from \"@servicetitan/anvil2/assets/icons/material/round/add.svg\";\nimport IconMic from \"@servicetitan/anvil2/assets/icons/material/round/mic.svg\";\nimport IconSend from \"@servicetitan/anvil2/assets/icons/material/round/send.svg\";\nimport IconAttachFile from \"@servicetitan/anvil2/assets/icons/st/attach_file.svg\";\n\nimport styles from \"./chat-composer-rich.module.scss\";\n\nexport interface ChatComposerRichProps {\n message?: string;\n /** Callback when user submits a message */\n onSend?: (text: string) => void;\n /** Placeholder text for the input */\n placeholder?: string;\n /** Whether the composer is disabled */\n disabled?: boolean;\n /** Additional CSS class name */\n className?: string;\n onChange: (text: string) => void;\n /** Callback when upload file is selected from menu */\n onUploadFile?: () => void;\n /** Callback when dictate message is selected from menu */\n onDictateMessage?: () => void;\n /** ID for the menu button */\n menuButtonId?: string;\n /** ID for the send icon button */\n sendIconId?: string;\n /** ID for the message input area */\n messageInputId?: string;\n}\n\nexport const ChatComposerRich = ({\n message,\n onSend,\n onChange,\n placeholder = \"Ask anything...\",\n disabled = false,\n className,\n onUploadFile,\n onDictateMessage,\n messageInputId,\n sendIconId,\n}: ChatComposerRichProps) => {\n const [isEmpty, setIsEmpty] = useState(true);\n const editorRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (editorRef.current && message) {\n editorRef.current.innerText = message;\n }\n }, [message]);\n\n const handleInput = () => {\n const text = editorRef.current?.innerText.trim() ?? \"\";\n setIsEmpty(text.length === 0);\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === \"Enter\" && !e.shiftKey) {\n e.preventDefault();\n handleSubmit();\n }\n };\n\n const handleSubmit = () => {\n if (disabled) {\n return;\n }\n\n const text = editorRef.current?.innerText.trim() ?? \"\";\n onChange(text);\n if (!text) {\n return;\n }\n\n onSend?.(text);\n\n if (editorRef.current) {\n // Clear content while preserving the element structure\n editorRef.current.innerText = \"\";\n // Keep focus in the input for smooth conversation flow\n editorRef.current.focus();\n }\n setIsEmpty(true);\n };\n\n useEffect(() => {\n // Ensure empty placeholder is visible on mount\n setIsEmpty(!editorRef.current?.innerText.trim());\n }, []);\n\n return (\n <div className={classNames(styles[\"composer-wrapper\"], className)}>\n <form\n onSubmit={(e) => e.preventDefault()}\n className={styles[\"composer-form\"]}\n >\n {onDictateMessage || onUploadFile ? (\n <Menu\n id=\"\"\n trigger={(props) => (\n <Button\n {...props}\n type=\"button\"\n aria-label=\"Open menu\"\n disabled={disabled}\n className={styles[\"icon-button\"]}\n icon={IconPlus}\n size=\"small\"\n />\n )}\n disabled={disabled}\n >\n <Menu.Item\n label=\"Upload file\"\n icon={IconAttachFile}\n onClick={onUploadFile}\n />\n <Menu.Item\n label=\"Dictate message\"\n icon={IconMic}\n onClick={onDictateMessage}\n />\n </Menu>\n ) : (\n <div />\n )}\n\n <div className={styles[\"input-wrapper\"]}>\n <div\n id={messageInputId}\n ref={editorRef}\n contentEditable=\"plaintext-only\"\n role=\"textbox\"\n aria-multiline=\"true\"\n aria-label={placeholder}\n data-placeholder={placeholder}\n onInput={handleInput}\n onKeyDown={handleKeyDown}\n className={styles[\"input\"]}\n tabIndex={0}\n />\n {isEmpty && (\n <span className={styles[\"placeholder\"]}>{placeholder}</span>\n )}\n </div>\n\n <Button\n id={sendIconId}\n size=\"small\"\n type=\"button\"\n onClick={handleSubmit}\n disabled={disabled || isEmpty}\n className={styles[\"send-button\"]}\n aria-label=\"Send message\"\n appearance=\"ghost\"\n icon={IconSend}\n />\n </form>\n </div>\n );\n};\n"],"names":["IconPlus","IconAttachFile","IconMic","IconSend"],"mappings":";;;;;;AACA,MAAM,MAAM,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,qIAAqI,EAAE,CAAC,CAAC;;ACArW,MAAM,MAAM,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,kTAAkT,EAAE,CAAC,CAAC;;ACAlhB,MAAM,OAAO,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,iKAAiK,EAAE,CAAC,CAAC;;ACAlY,MAAM,aAAa,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,ipBAAipB,EAAE,CAAC,CAAC;;;;;;;;;;;;;ACgCj3B,MAAM,mBAAmB,CAAC;AAAA,EAC/B,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA,GAAc,iBAAA;AAAA,EACd,QAAA,GAAW,KAAA;AAAA,EACX,SAAA;AAAA,EACA,YAAA;AAAA,EACA,gBAAA;AAAA,EACA,cAAA;AAAA,EACA;AACF,CAAA,KAA6B;AAC3B,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,IAAI,CAAA;AAC3C,EAAA,MAAM,SAAA,GAAY,OAAuB,IAAI,CAAA;AAE7C,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,SAAA,CAAU,WAAW,OAAA,EAAS;AAChC,MAAA,SAAA,CAAU,QAAQ,SAAA,GAAY,OAAA;AAAA,IAChC;AAAA,EACF,CAAA,EAAG,CAAC,OAAO,CAAC,CAAA;AAEZ,EAAA,MAAM,cAAc,MAAM;AACxB,IAAA,MAAM,IAAA,GAAO,SAAA,CAAU,OAAA,EAAS,SAAA,CAAU,MAAK,IAAK,EAAA;AACpD,IAAA,UAAA,CAAW,IAAA,CAAK,WAAW,CAAC,CAAA;AAAA,EAC9B,CAAA;AAEA,EAAA,MAAM,aAAA,GAAgB,CAAC,CAAA,KAAqC;AAC1D,IAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAC,EAAE,QAAA,EAAU;AACpC,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,YAAA,EAAa;AAAA,IACf;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,eAAe,MAAM;AACzB,IAAA,IAAI,QAAA,EAAU;AACZ,MAAA;AAAA,IACF;AAEA,IAAA,MAAM,IAAA,GAAO,SAAA,CAAU,OAAA,EAAS,SAAA,CAAU,MAAK,IAAK,EAAA;AACpD,IAAA,QAAA,CAAS,IAAI,CAAA;AACb,IAAA,IAAI,CAAC,IAAA,EAAM;AACT,MAAA;AAAA,IACF;AAEA,IAAA,MAAA,GAAS,IAAI,CAAA;AAEb,IAAA,IAAI,UAAU,OAAA,EAAS;AAErB,MAAA,SAAA,CAAU,QAAQ,SAAA,GAAY,EAAA;AAE9B,MAAA,SAAA,CAAU,QAAQ,KAAA,EAAM;AAAA,IAC1B;AACA,IAAA,UAAA,CAAW,IAAI,CAAA;AAAA,EACjB,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AAEd,IAAA,UAAA,CAAW,CAAC,SAAA,CAAU,OAAA,EAAS,SAAA,CAAU,MAAM,CAAA;AAAA,EACjD,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,uBACE,GAAA,CAAC,SAAI,SAAA,EAAW,UAAA,CAAW,OAAO,kBAAkB,CAAA,EAAG,SAAS,CAAA,EAC9D,QAAA,kBAAA,IAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAU,CAAC,CAAA,KAAM,CAAA,CAAE,cAAA,EAAe;AAAA,MAClC,SAAA,EAAW,OAAO,eAAe,CAAA;AAAA,MAEhC,QAAA,EAAA;AAAA,QAAA,gBAAA,IAAoB,YAAA,mBACnB,IAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAG,EAAA;AAAA,YACH,OAAA,EAAS,CAAC,KAAA,qBACR,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACE,GAAG,KAAA;AAAA,gBACJ,IAAA,EAAK,QAAA;AAAA,gBACL,YAAA,EAAW,WAAA;AAAA,gBACX,QAAA;AAAA,gBACA,SAAA,EAAW,OAAO,aAAa,CAAA;AAAA,gBAC/B,IAAA,EAAMA,MAAA;AAAA,gBACN,IAAA,EAAK;AAAA;AAAA,aACP;AAAA,YAEF,QAAA;AAAA,YAEA,QAAA,EAAA;AAAA,8BAAA,GAAA;AAAA,gBAAC,IAAA,CAAK,IAAA;AAAA,gBAAL;AAAA,kBACC,KAAA,EAAM,aAAA;AAAA,kBACN,IAAA,EAAMC,aAAA;AAAA,kBACN,OAAA,EAAS;AAAA;AAAA,eACX;AAAA,8BACA,GAAA;AAAA,gBAAC,IAAA,CAAK,IAAA;AAAA,gBAAL;AAAA,kBACC,KAAA,EAAM,iBAAA;AAAA,kBACN,IAAA,EAAMC,MAAA;AAAA,kBACN,OAAA,EAAS;AAAA;AAAA;AACX;AAAA;AAAA,SACF,uBAEC,KAAA,EAAA,EAAI,CAAA;AAAA,wBAGP,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,eAAe,CAAA,EACpC,QAAA,EAAA;AAAA,0BAAA,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,EAAA,EAAI,cAAA;AAAA,cACJ,GAAA,EAAK,SAAA;AAAA,cACL,eAAA,EAAgB,gBAAA;AAAA,cAChB,IAAA,EAAK,SAAA;AAAA,cACL,gBAAA,EAAe,MAAA;AAAA,cACf,YAAA,EAAY,WAAA;AAAA,cACZ,kBAAA,EAAkB,WAAA;AAAA,cAClB,OAAA,EAAS,WAAA;AAAA,cACT,SAAA,EAAW,aAAA;AAAA,cACX,SAAA,EAAW,OAAO,OAAO,CAAA;AAAA,cACzB,QAAA,EAAU;AAAA;AAAA,WACZ;AAAA,UACC,2BACC,GAAA,CAAC,MAAA,EAAA,EAAK,WAAW,MAAA,CAAO,aAAa,GAAI,QAAA,EAAA,WAAA,EAAY;AAAA,SAAA,EAEzD,CAAA;AAAA,wBAEA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAI,UAAA;AAAA,YACJ,IAAA,EAAK,OAAA;AAAA,YACL,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,YAAA;AAAA,YACT,UAAU,QAAA,IAAY,OAAA;AAAA,YACtB,SAAA,EAAW,OAAO,aAAa,CAAA;AAAA,YAC/B,YAAA,EAAW,cAAA;AAAA,YACX,UAAA,EAAW,OAAA;AAAA,YACX,IAAA,EAAMC;AAAA;AAAA;AACR;AAAA;AAAA,GACF,EACF,CAAA;AAEJ;;;;"}
@@ -1,6 +1,6 @@
1
1
  @layer starter, reset, base, state, application;
2
2
 
3
- ._composer-wrapper_qqqa2_1 {
3
+ ._composer-wrapper_eb8wi_1 {
4
4
  width: 100%;
5
5
  margin-inline: auto;
6
6
  display: flex;
@@ -8,7 +8,7 @@
8
8
  flex: 1;
9
9
  }
10
10
 
11
- ._composer-form_qqqa2_9 {
11
+ ._composer-form_eb8wi_9 {
12
12
  background-color: var(--background-color, #ffffff);
13
13
  border: 0.0625rem solid var(--border-color, #949596);
14
14
  border-radius: 0.375rem;
@@ -19,42 +19,30 @@
19
19
  gap: 0.5rem;
20
20
  transition: border-color 0.2s ease;
21
21
  }
22
- ._composer-form_qqqa2_9:hover:not(._disabled_qqqa2_20) {
23
- border-color: var(--border-color-hover, #606162);
24
- }
25
- ._composer-form_qqqa2_9:focus-within:not(._disabled_qqqa2_20) {
26
- outline: 0.125rem solid var(--focus-ring-color, #0265dc);
27
- outline-offset: 0.125rem;
28
- }
29
- ._composer-form_qqqa2_9._disabled_qqqa2_20 {
30
- background-color: var(--background-color-strong, #f7f7f7);
31
- opacity: var(--opacity-disabled, 0.6);
32
- pointer-events: none;
33
- }
34
22
 
35
- ._icon-button_qqqa2_33 {
23
+ ._icon-button_eb8wi_21 {
36
24
  padding: 0.5rem;
37
25
  border-radius: var(--border-radius-circular);
38
26
  background: transparent;
39
27
  border: none;
40
28
  margin-bottom: 6px;
41
29
  }
42
- ._icon-button_qqqa2_33:disabled {
30
+ ._icon-button_eb8wi_21:disabled {
43
31
  cursor: not-allowed;
44
32
  opacity: 0.5;
45
33
  }
46
- ._icon-button_qqqa2_33:hover:not(:disabled) {
34
+ ._icon-button_eb8wi_21:hover:not(:disabled) {
47
35
  background-color: var(--background-color-strong, #f7f7f7);
48
36
  }
49
37
 
50
- ._input-wrapper_qqqa2_48 {
38
+ ._input-wrapper_eb8wi_36 {
51
39
  flex: 1;
52
40
  display: flex;
53
41
  align-items: center;
54
42
  position: relative;
55
43
  }
56
44
 
57
- ._placeholder_qqqa2_55 {
45
+ ._placeholder_eb8wi_43 {
58
46
  position: absolute;
59
47
  left: 0.4rem;
60
48
  top: 50%;
@@ -67,7 +55,7 @@
67
55
  font-size: 1rem;
68
56
  }
69
57
 
70
- ._input_qqqa2_48 {
58
+ ._input_eb8wi_36 {
71
59
  flex: 1;
72
60
  width: 100%;
73
61
  max-width: 100%;
@@ -89,30 +77,30 @@
89
77
  padding-left: 7px;
90
78
  padding-right: 0.75rem;
91
79
  }
92
- ._input_qqqa2_48:empty::before {
80
+ ._input_eb8wi_36:empty::before {
93
81
  content: "";
94
82
  }
95
- ._input_qqqa2_48::-webkit-scrollbar {
83
+ ._input_eb8wi_36::-webkit-scrollbar {
96
84
  width: 6px;
97
85
  }
98
- ._input_qqqa2_48::-webkit-scrollbar-track {
86
+ ._input_eb8wi_36::-webkit-scrollbar-track {
99
87
  background: transparent;
100
88
  }
101
- ._input_qqqa2_48::-webkit-scrollbar-thumb {
89
+ ._input_eb8wi_36::-webkit-scrollbar-thumb {
102
90
  background: var(--border-color-subdued, #dfe0e1);
103
91
  border-radius: var(--border-radius-medium);
104
92
  }
105
- ._input_qqqa2_48::-webkit-scrollbar-thumb:hover {
93
+ ._input_eb8wi_36::-webkit-scrollbar-thumb:hover {
106
94
  background: var(--border-color, #949596);
107
95
  }
108
96
 
109
- ._actions-wrapper_qqqa2_105 {
97
+ ._actions-wrapper_eb8wi_93 {
110
98
  display: flex;
111
99
  align-items: center;
112
100
  gap: 0.5rem;
113
101
  }
114
102
 
115
- ._send-button_qqqa2_111 {
103
+ ._send-button_eb8wi_99 {
116
104
  padding: 0.5rem;
117
105
  border-radius: var(--border-radius-circular);
118
106
  margin-bottom: 6px;
@@ -1,2 +1,2 @@
1
- export { C as ChatComposerRich } from './chat-composer-rich-BM5hoC1f.js';
1
+ export { C as ChatComposerRich } from './chat-composer-rich-BUVy1VRa.js';
2
2
  //# sourceMappingURL=chat-composer-rich.js.map
@@ -2,18 +2,17 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import { c as classNames } from './index-DDXI3m_u.js';
3
3
  import { m as motion } from './proxy-B3m3ViIw.js';
4
4
 
5
- import './chat-window.css';const open = "_open_1ncho_19";
6
- const closed = "_closed_1ncho_23";
7
- const positioned = "_positioned_1ncho_27";
8
- const relative = "_relative_1ncho_31";
5
+ import './chat-window.css';const open = "_open_1qo7q_19";
6
+ const closed = "_closed_1qo7q_23";
7
+ const positioned = "_positioned_1qo7q_27";
8
+ const relative = "_relative_1qo7q_31";
9
9
  const styles = {
10
- "chat-window": "_chat-window_1ncho_1",
10
+ "chat-window": "_chat-window_1qo7q_1",
11
11
  open: open,
12
12
  closed: closed,
13
13
  positioned: positioned,
14
14
  relative: relative,
15
- "chat-window-expanded": "_chat-window-expanded_1ncho_35"
16
- };
15
+ "chat-window-expanded": "_chat-window-expanded_1qo7q_35"};
17
16
 
18
17
  const ChatWindow = ({
19
18
  open,
@@ -73,4 +72,4 @@ const ChatWindow = ({
73
72
  };
74
73
 
75
74
  export { ChatWindow as C };
76
- //# sourceMappingURL=chat-window-BEkLTYNg.js.map
75
+ //# sourceMappingURL=chat-window-BU8VGO9z.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-window-BEkLTYNg.js","sources":["../src/components/chat/chat-window.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { motion } from \"framer-motion\";\n\nimport styles from \"./styles.module.scss\";\n\ninterface ChatWindowProps {\n open: boolean;\n position?: { x: number; y: number };\n isDragging?: boolean;\n fullscreen?: boolean;\n children: ReactNode;\n}\n\nexport const ChatWindow = ({\n open,\n position,\n isDragging,\n fullscreen = false,\n children,\n}: ChatWindowProps) => {\n const isFullscreenOpen = fullscreen && open;\n\n const className = classNames({\n [styles[\"chat-window-expanded\"]]: isFullscreenOpen,\n [styles[\"chat-window\"]]: !isFullscreenOpen,\n [styles[\"open\"]]: !isFullscreenOpen && open,\n [styles[\"closed\"]]: !isFullscreenOpen && !open,\n [styles[\"positioned\"]]: !isFullscreenOpen && position,\n [styles[\"relative\"]]: !isFullscreenOpen && !position,\n });\n\n const getPositionStyles = () => {\n if (isFullscreenOpen) {\n return {};\n }\n\n return position\n ? {\n left: position.x,\n top: position.y,\n }\n : {};\n };\n\n return (\n <motion.div\n layout={!isDragging}\n initial={{\n opacity: isFullscreenOpen ? 0 : 1,\n x: !isFullscreenOpen && !open ? 0 : -25,\n }}\n animate={{\n x: isFullscreenOpen ? 0 : open ? -25 : 0,\n }}\n transition={{\n type: isFullscreenOpen ? \"tween\" : \"spring\",\n ease: isFullscreenOpen ? \"easeInOut\" : undefined,\n stiffness: 300,\n damping: 35,\n duration: 0.3,\n }}\n className={className}\n style={getPositionStyles()}\n >\n <motion.div\n layout={!isDragging ? \"position\" : undefined}\n style={{ width: \"100%\", height: \"100%\" }}\n >\n {children}\n </motion.div>\n </motion.div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAcO,MAAM,aAAa,CAAC;AAAA,EACzB,IAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA,GAAa,KAAA;AAAA,EACb;AACF,CAAA,KAAuB;AACrB,EAAA,MAAM,mBAAmB,UAAA,IAAc,IAAA;AAEvC,EAAA,MAAM,YAAY,UAAA,CAAW;AAAA,IAC3B,CAAC,MAAA,CAAO,sBAAsB,CAAC,GAAG,gBAAA;AAAA,IAClC,CAAC,MAAA,CAAO,aAAa,CAAC,GAAG,CAAC,gBAAA;AAAA,IAC1B,CAAC,MAAA,CAAO,MAAM,CAAC,GAAG,CAAC,gBAAA,IAAoB,IAAA;AAAA,IACvC,CAAC,MAAA,CAAO,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAA;AAAA,IAC1C,CAAC,MAAA,CAAO,YAAY,CAAC,GAAG,CAAC,gBAAA,IAAoB,QAAA;AAAA,IAC7C,CAAC,MAAA,CAAO,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;AAAA,GAC7C,CAAA;AAED,EAAA,MAAM,oBAAoB,MAAM;AAC9B,IAAA,IAAI,gBAAA,EAAkB;AACpB,MAAA,OAAO,EAAC;AAAA,IACV;AAEA,IAAA,OAAO,QAAA,GACH;AAAA,MACE,MAAM,QAAA,CAAS,CAAA;AAAA,MACf,KAAK,QAAA,CAAS;AAAA,QAEhB,EAAC;AAAA,EACP,CAAA;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,MAAA,CAAO,GAAA;AAAA,IAAP;AAAA,MACC,QAAQ,CAAC,UAAA;AAAA,MACT,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,mBAAmB,CAAA,GAAI,CAAA;AAAA,QAChC,CAAA,EAAG,CAAC,gBAAA,IAAoB,CAAC,OAAO,CAAA,GAAI;AAAA,OACtC;AAAA,MACA,OAAA,EAAS;AAAA,QACP,CAAA,EAAG,gBAAA,GAAmB,CAAA,GAAI,IAAA,GAAO,GAAA,GAAM;AAAA,OACzC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,IAAA,EAAM,mBAAmB,OAAA,GAAU,QAAA;AAAA,QACnC,IAAA,EAAM,mBAAmB,WAAA,GAAc,MAAA;AAAA,QACvC,SAAA,EAAW,GAAA;AAAA,QACX,OAAA,EAAS,EAAA;AAAA,QACT,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,SAAA;AAAA,MACA,OAAO,iBAAA,EAAkB;AAAA,MAEzB,QAAA,kBAAA,GAAA;AAAA,QAAC,MAAA,CAAO,GAAA;AAAA,QAAP;AAAA,UACC,MAAA,EAAQ,CAAC,UAAA,GAAa,UAAA,GAAa,MAAA;AAAA,UACnC,KAAA,EAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,QAAQ,MAAA,EAAO;AAAA,UAEtC;AAAA;AAAA;AACH;AAAA,GACF;AAEJ;;;;"}
1
+ {"version":3,"file":"chat-window-BU8VGO9z.js","sources":["../src/components/chat/chat-window.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { motion } from \"framer-motion\";\n\nimport styles from \"./styles.module.scss\";\n\ninterface ChatWindowProps {\n open: boolean;\n position?: { x: number; y: number };\n isDragging?: boolean;\n fullscreen?: boolean;\n children: ReactNode;\n}\n\nexport const ChatWindow = ({\n open,\n position,\n isDragging,\n fullscreen = false,\n children,\n}: ChatWindowProps) => {\n const isFullscreenOpen = fullscreen && open;\n\n const className = classNames({\n [styles[\"chat-window-expanded\"]]: isFullscreenOpen,\n [styles[\"chat-window\"]]: !isFullscreenOpen,\n [styles[\"open\"]]: !isFullscreenOpen && open,\n [styles[\"closed\"]]: !isFullscreenOpen && !open,\n [styles[\"positioned\"]]: !isFullscreenOpen && position,\n [styles[\"relative\"]]: !isFullscreenOpen && !position,\n });\n\n const getPositionStyles = () => {\n if (isFullscreenOpen) {\n return {};\n }\n\n return position\n ? {\n left: position.x,\n top: position.y,\n }\n : {};\n };\n\n return (\n <motion.div\n layout={!isDragging}\n initial={{\n opacity: isFullscreenOpen ? 0 : 1,\n x: !isFullscreenOpen && !open ? 0 : -25,\n }}\n animate={{\n x: isFullscreenOpen ? 0 : open ? -25 : 0,\n }}\n transition={{\n type: isFullscreenOpen ? \"tween\" : \"spring\",\n ease: isFullscreenOpen ? \"easeInOut\" : undefined,\n stiffness: 300,\n damping: 35,\n duration: 0.3,\n }}\n className={className}\n style={getPositionStyles()}\n >\n <motion.div\n layout={!isDragging ? \"position\" : undefined}\n style={{ width: \"100%\", height: \"100%\" }}\n >\n {children}\n </motion.div>\n </motion.div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAcO,MAAM,aAAa,CAAC;AAAA,EACzB,IAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA,GAAa,KAAA;AAAA,EACb;AACF,CAAA,KAAuB;AACrB,EAAA,MAAM,mBAAmB,UAAA,IAAc,IAAA;AAEvC,EAAA,MAAM,YAAY,UAAA,CAAW;AAAA,IAC3B,CAAC,MAAA,CAAO,sBAAsB,CAAC,GAAG,gBAAA;AAAA,IAClC,CAAC,MAAA,CAAO,aAAa,CAAC,GAAG,CAAC,gBAAA;AAAA,IAC1B,CAAC,MAAA,CAAO,MAAM,CAAC,GAAG,CAAC,gBAAA,IAAoB,IAAA;AAAA,IACvC,CAAC,MAAA,CAAO,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAA;AAAA,IAC1C,CAAC,MAAA,CAAO,YAAY,CAAC,GAAG,CAAC,gBAAA,IAAoB,QAAA;AAAA,IAC7C,CAAC,MAAA,CAAO,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;AAAA,GAC7C,CAAA;AAED,EAAA,MAAM,oBAAoB,MAAM;AAC9B,IAAA,IAAI,gBAAA,EAAkB;AACpB,MAAA,OAAO,EAAC;AAAA,IACV;AAEA,IAAA,OAAO,QAAA,GACH;AAAA,MACE,MAAM,QAAA,CAAS,CAAA;AAAA,MACf,KAAK,QAAA,CAAS;AAAA,QAEhB,EAAC;AAAA,EACP,CAAA;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,MAAA,CAAO,GAAA;AAAA,IAAP;AAAA,MACC,QAAQ,CAAC,UAAA;AAAA,MACT,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,mBAAmB,CAAA,GAAI,CAAA;AAAA,QAChC,CAAA,EAAG,CAAC,gBAAA,IAAoB,CAAC,OAAO,CAAA,GAAI;AAAA,OACtC;AAAA,MACA,OAAA,EAAS;AAAA,QACP,CAAA,EAAG,gBAAA,GAAmB,CAAA,GAAI,IAAA,GAAO,GAAA,GAAM;AAAA,OACzC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,IAAA,EAAM,mBAAmB,OAAA,GAAU,QAAA;AAAA,QACnC,IAAA,EAAM,mBAAmB,WAAA,GAAc,MAAA;AAAA,QACvC,SAAA,EAAW,GAAA;AAAA,QACX,OAAA,EAAS,EAAA;AAAA,QACT,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,SAAA;AAAA,MACA,OAAO,iBAAA,EAAkB;AAAA,MAEzB,QAAA,kBAAA,GAAA;AAAA,QAAC,MAAA,CAAO,GAAA;AAAA,QAAP;AAAA,UACC,MAAA,EAAQ,CAAC,UAAA,GAAa,UAAA,GAAa,MAAA;AAAA,UACnC,KAAA,EAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,QAAQ,MAAA,EAAO;AAAA,UAEtC;AAAA;AAAA;AACH;AAAA,GACF;AAEJ;;;;"}
@@ -1,6 +1,6 @@
1
1
  @layer starter, reset, base, state, application;
2
2
 
3
- ._chat-window_1ncho_1 {
3
+ ._chat-window_1qo7q_1 {
4
4
  position: fixed;
5
5
  top: 5%;
6
6
  right: 0;
@@ -11,30 +11,30 @@
11
11
  box-sizing: border-box;
12
12
  display: flex;
13
13
  flex-direction: column;
14
- border: 1px solid var(--color-neutral-60);
14
+ border: 1px solid var(--border-color-subdued);
15
15
  box-shadow: 0 8px 24px 0 rgba(20, 20, 20, 0.08);
16
16
  overflow: hidden;
17
17
  z-index: 9999;
18
- background: var(--color-neutral-30, #ffffff);
18
+ background: light-dark(var(--background-color-strong), var(--background-color));
19
19
  }
20
20
 
21
- ._chat-window_1ncho_1._open_1ncho_19 {
21
+ ._chat-window_1qo7q_1._open_1qo7q_19 {
22
22
  visibility: visible;
23
23
  }
24
24
 
25
- ._chat-window_1ncho_1._closed_1ncho_23 {
25
+ ._chat-window_1qo7q_1._closed_1qo7q_23 {
26
26
  visibility: hidden;
27
27
  }
28
28
 
29
- ._chat-window_1ncho_1._positioned_1ncho_27 {
29
+ ._chat-window_1qo7q_1._positioned_1qo7q_27 {
30
30
  position: fixed;
31
31
  }
32
32
 
33
- ._chat-window_1ncho_1._relative_1ncho_31 {
33
+ ._chat-window_1qo7q_1._relative_1qo7q_31 {
34
34
  position: relative;
35
35
  }
36
36
 
37
- ._chat-window-expanded_1ncho_35 {
37
+ ._chat-window-expanded_1qo7q_35 {
38
38
  position: fixed;
39
39
  top: 0;
40
40
  left: 0;
@@ -44,6 +44,6 @@
44
44
  height: 100%;
45
45
  z-index: 10001;
46
46
  display: flex;
47
- background: var(--color-neutral-30, #ffffff);
47
+ background: var(--background-color);
48
48
  visibility: visible;
49
49
  }
package/dist/chat.js CHANGED
@@ -1,2 +1,2 @@
1
- export { C as ChatWindow } from './chat-window-BEkLTYNg.js';
1
+ export { C as ChatWindow } from './chat-window-BU8VGO9z.js';
2
2
  //# sourceMappingURL=chat.js.map
@@ -1,4 +1,5 @@
1
1
  export * from './assistant-message';
2
+ export * from './error-message';
2
3
  export * from './markdown-message';
3
4
  export type * from './message-interface';
4
5
  export * from './small-action';
@@ -2,6 +2,7 @@ import { FC } from 'react';
2
2
  import { BaseRecommendationProps, ConfirmationResponse } from '../shared-interfaces';
3
3
  export interface ConfirmationRecommendationProps extends BaseRecommendationProps {
4
4
  recommendationId?: string;
5
+ title?: string;
5
6
  message: string;
6
7
  description?: string;
7
8
  onSubmit: (confirmationResponse: ConfirmationResponse) => void;
@@ -1 +1,2 @@
1
+ export * from './system-error';
1
2
  export * from './welcome';
@@ -5,8 +5,7 @@ import { Grid } from '@servicetitan/anvil2';
5
5
  import { S as Spinner } from './spinner-QnlThoJs.js';
6
6
 
7
7
  import './content.css';const styles = {
8
- "chat-content": "_chat-content_xnleg_1"
9
- };
8
+ "chat-content": "_chat-content_1r285_1"};
10
9
 
11
10
  const Content = ({
12
11
  children,
@@ -52,4 +51,4 @@ const Content = ({
52
51
  };
53
52
 
54
53
  export { Content as C };
55
- //# sourceMappingURL=content-acT_RzNQ.js.map
54
+ //# sourceMappingURL=content-D4YSNvFG.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-acT_RzNQ.js","sources":["../src/components/content/content.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useRef, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { Grid } from \"@servicetitan/anvil2\";\n\nimport { Spinner } from \"../spinner\";\n\nimport styles from \"./content.module.scss\";\n\nexport interface ContentProps {\n itemsLength: number;\n loading?: boolean;\n className?: string;\n}\n\nexport const Content: FC<PropsWithChildren<ContentProps>> = ({\n children,\n itemsLength,\n loading = false,\n className,\n}) => {\n const chatEndRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const [isInitialLoad, setIsInitialLoad] = useState(true);\n const [previousMessageCount, setPreviousMessageCount] = useState(0);\n\n const scrollToBottom = (smooth = true) => {\n if (smooth) {\n chatEndRef.current?.scrollIntoView({ behavior: \"smooth\", block: \"end\" });\n } else {\n chatEndRef.current?.scrollIntoView({ behavior: \"auto\", block: \"end\" });\n }\n };\n\n useEffect(() => {\n if (isInitialLoad && itemsLength > 0) {\n // Initial load: scroll to bottom without smooth animation\n scrollToBottom(false);\n setIsInitialLoad(false);\n setPreviousMessageCount(itemsLength);\n } else if (!isInitialLoad && itemsLength > previousMessageCount) {\n // New messages added: scroll to bottom with smooth animation\n scrollToBottom(true);\n setPreviousMessageCount(itemsLength);\n } else if (!isInitialLoad && itemsLength !== previousMessageCount) {\n // Message count changed but not increased (e.g., conversation switched)\n // Just update the count without scrolling\n setPreviousMessageCount(itemsLength);\n }\n }, [itemsLength, isInitialLoad, previousMessageCount]);\n\n return (\n <Grid\n className={classNames(styles[\"chat-content\"], className)}\n ref={containerRef}\n gridColumn=\"1 / 13\"\n >\n {loading ? <Spinner /> : children}\n <div ref={chatEndRef} />\n </Grid>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;AAcO,MAAM,UAA+C,CAAC;AAAA,EAC3D,QAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV;AACF,CAAA,KAAM;AACJ,EAAA,MAAM,UAAA,GAAa,OAAuB,IAAI,CAAA;AAC9C,EAAA,MAAM,YAAA,GAAe,OAAuB,IAAI,CAAA;AAChD,EAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,SAAS,IAAI,CAAA;AACvD,EAAA,MAAM,CAAC,oBAAA,EAAsB,uBAAuB,CAAA,GAAI,SAAS,CAAC,CAAA;AAElE,EAAA,MAAM,cAAA,GAAiB,CAAC,MAAA,GAAS,IAAA,KAAS;AACxC,IAAA,IAAI,MAAA,EAAQ;AACV,MAAA,UAAA,CAAW,SAAS,cAAA,CAAe,EAAE,UAAU,QAAA,EAAU,KAAA,EAAO,OAAO,CAAA;AAAA,IACzE,CAAA,MAAO;AACL,MAAA,UAAA,CAAW,SAAS,cAAA,CAAe,EAAE,UAAU,MAAA,EAAQ,KAAA,EAAO,OAAO,CAAA;AAAA,IACvE;AAAA,EACF,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,aAAA,IAAiB,cAAc,CAAA,EAAG;AAEpC,MAAA,cAAA,CAAe,KAAK,CAAA;AACpB,MAAA,gBAAA,CAAiB,KAAK,CAAA;AACtB,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC,CAAA,MAAA,IAAW,CAAC,aAAA,IAAiB,WAAA,GAAc,oBAAA,EAAsB;AAE/D,MAAA,cAAA,CAAe,IAAI,CAAA;AACnB,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC,CAAA,MAAA,IAAW,CAAC,aAAA,IAAiB,WAAA,KAAgB,oBAAA,EAAsB;AAGjE,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC;AAAA,EACF,CAAA,EAAG,CAAC,WAAA,EAAa,aAAA,EAAe,oBAAoB,CAAC,CAAA;AAErD,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,UAAA,CAAW,MAAA,CAAO,cAAc,GAAG,SAAS,CAAA;AAAA,MACvD,GAAA,EAAK,YAAA;AAAA,MACL,UAAA,EAAW,QAAA;AAAA,MAEV,QAAA,EAAA;AAAA,QAAA,OAAA,mBAAU,GAAA,CAAC,WAAQ,CAAA,GAAK,QAAA;AAAA,wBACzB,GAAA,CAAC,KAAA,EAAA,EAAI,GAAA,EAAK,UAAA,EAAY;AAAA;AAAA;AAAA,GACxB;AAEJ;;;;"}
1
+ {"version":3,"file":"content-D4YSNvFG.js","sources":["../src/components/content/content.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useEffect, useRef, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { Grid } from \"@servicetitan/anvil2\";\n\nimport { Spinner } from \"../spinner\";\n\nimport styles from \"./content.module.scss\";\n\nexport interface ContentProps {\n itemsLength: number;\n loading?: boolean;\n className?: string;\n}\n\nexport const Content: FC<PropsWithChildren<ContentProps>> = ({\n children,\n itemsLength,\n loading = false,\n className,\n}) => {\n const chatEndRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const [isInitialLoad, setIsInitialLoad] = useState(true);\n const [previousMessageCount, setPreviousMessageCount] = useState(0);\n\n const scrollToBottom = (smooth = true) => {\n if (smooth) {\n chatEndRef.current?.scrollIntoView({ behavior: \"smooth\", block: \"end\" });\n } else {\n chatEndRef.current?.scrollIntoView({ behavior: \"auto\", block: \"end\" });\n }\n };\n\n useEffect(() => {\n if (isInitialLoad && itemsLength > 0) {\n // Initial load: scroll to bottom without smooth animation\n scrollToBottom(false);\n setIsInitialLoad(false);\n setPreviousMessageCount(itemsLength);\n } else if (!isInitialLoad && itemsLength > previousMessageCount) {\n // New messages added: scroll to bottom with smooth animation\n scrollToBottom(true);\n setPreviousMessageCount(itemsLength);\n } else if (!isInitialLoad && itemsLength !== previousMessageCount) {\n // Message count changed but not increased (e.g., conversation switched)\n // Just update the count without scrolling\n setPreviousMessageCount(itemsLength);\n }\n }, [itemsLength, isInitialLoad, previousMessageCount]);\n\n return (\n <Grid\n className={classNames(styles[\"chat-content\"], className)}\n ref={containerRef}\n gridColumn=\"1 / 13\"\n >\n {loading ? <Spinner /> : children}\n <div ref={chatEndRef} />\n </Grid>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;AAcO,MAAM,UAA+C,CAAC;AAAA,EAC3D,QAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV;AACF,CAAA,KAAM;AACJ,EAAA,MAAM,UAAA,GAAa,OAAuB,IAAI,CAAA;AAC9C,EAAA,MAAM,YAAA,GAAe,OAAuB,IAAI,CAAA;AAChD,EAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,SAAS,IAAI,CAAA;AACvD,EAAA,MAAM,CAAC,oBAAA,EAAsB,uBAAuB,CAAA,GAAI,SAAS,CAAC,CAAA;AAElE,EAAA,MAAM,cAAA,GAAiB,CAAC,MAAA,GAAS,IAAA,KAAS;AACxC,IAAA,IAAI,MAAA,EAAQ;AACV,MAAA,UAAA,CAAW,SAAS,cAAA,CAAe,EAAE,UAAU,QAAA,EAAU,KAAA,EAAO,OAAO,CAAA;AAAA,IACzE,CAAA,MAAO;AACL,MAAA,UAAA,CAAW,SAAS,cAAA,CAAe,EAAE,UAAU,MAAA,EAAQ,KAAA,EAAO,OAAO,CAAA;AAAA,IACvE;AAAA,EACF,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,aAAA,IAAiB,cAAc,CAAA,EAAG;AAEpC,MAAA,cAAA,CAAe,KAAK,CAAA;AACpB,MAAA,gBAAA,CAAiB,KAAK,CAAA;AACtB,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC,CAAA,MAAA,IAAW,CAAC,aAAA,IAAiB,WAAA,GAAc,oBAAA,EAAsB;AAE/D,MAAA,cAAA,CAAe,IAAI,CAAA;AACnB,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC,CAAA,MAAA,IAAW,CAAC,aAAA,IAAiB,WAAA,KAAgB,oBAAA,EAAsB;AAGjE,MAAA,uBAAA,CAAwB,WAAW,CAAA;AAAA,IACrC;AAAA,EACF,CAAA,EAAG,CAAC,WAAA,EAAa,aAAA,EAAe,oBAAoB,CAAC,CAAA;AAErD,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,UAAA,CAAW,MAAA,CAAO,cAAc,GAAG,SAAS,CAAA;AAAA,MACvD,GAAA,EAAK,YAAA;AAAA,MACL,UAAA,EAAW,QAAA;AAAA,MAEV,QAAA,EAAA;AAAA,QAAA,OAAA,mBAAU,GAAA,CAAC,WAAQ,CAAA,GAAK,QAAA;AAAA,wBACzB,GAAA,CAAC,KAAA,EAAA,EAAI,GAAA,EAAK,UAAA,EAAY;AAAA;AAAA;AAAA,GACxB;AAEJ;;;;"}
package/dist/content.css CHANGED
@@ -1,10 +1,10 @@
1
1
  @layer starter, reset, base, state, application;
2
- ._chat-content_xnleg_1 {
2
+ ._chat-content_1r285_1 {
3
3
  flex-grow: 1;
4
4
  padding: var(--size-4);
5
5
  box-sizing: border-box;
6
6
  overflow-y: auto;
7
7
  display: flex;
8
8
  flex-direction: column;
9
- gap: 8px;
9
+ gap: var(--size-2);
10
10
  }
package/dist/content.js CHANGED
@@ -1,2 +1,2 @@
1
- export { C as Content } from './content-acT_RzNQ.js';
1
+ export { C as Content } from './content-D4YSNvFG.js';
2
2
  //# sourceMappingURL=content.js.map
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+
3
+ const SvgError = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 11c-.55 0-1-.45-1-1V8c0-.55.45-1 1-1s1 .45 1 1v4c0 .55-.45 1-1 1zm1 4h-2v-2h2v2z" }));
4
+
5
+ export { SvgError as S };
6
+ //# sourceMappingURL=error-DR_wWdYY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-DR_wWdYY.js","sources":["../../anvil2/dist/assets/icons/material/round/error.svg"],"sourcesContent":["import * as React from \"react\";\nconst SvgError = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 11c-.55 0-1-.45-1-1V8c0-.55.45-1 1-1s1 .45 1 1v4c0 .55-.45 1-1 1zm1 4h-2v-2h2v2z\" }));\nexport default SvgError;\n"],"names":[],"mappings":";;AACK,MAAC,QAAQ,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,uJAAuJ,EAAE,CAAC;;;;"}
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { c as classNames } from './index-DDXI3m_u.js';
3
3
  import { observer } from 'mobx-react';
4
4
  import { Text, Link } from '@servicetitan/anvil2';
5
- import { C as ChatComposerRich } from './chat-composer-rich-BM5hoC1f.js';
5
+ import { C as ChatComposerRich } from './chat-composer-rich-BUVy1VRa.js';
6
6
 
7
7
  import './footer.css';const styles = {
8
8
  "chat-footer": "_chat-footer_1kkwo_1"};
@@ -83,4 +83,4 @@ const Footer = observer(
83
83
  );
84
84
 
85
85
  export { Footer as F };
86
- //# sourceMappingURL=footer-DezXey1O.js.map
86
+ //# sourceMappingURL=footer-Du5cuzZZ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"footer-DezXey1O.js","sources":["../src/components/footer/footer.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { observer } from \"mobx-react\";\nimport { Link, Text } from \"@servicetitan/anvil2\";\n\nimport { ChatComposerRich } from \"../chat-composer-rich\";\n\nimport styles from \"./footer.module.scss\";\n\nexport interface FooterProps {\n isLoading?: boolean;\n message: string;\n placeholder?: string;\n onMessageChange: (value: string) => void;\n onSubmit: () => void;\n className?: string;\n messageInputId?: string;\n sendIconId?: string;\n learnMoreLinkId?: string;\n /** Callback when upload file is selected from menu */\n onUploadFile?: () => void;\n /** Callback when dictate message is selected from menu */\n onDictateMessage?: () => void;\n}\n\nexport const Footer = observer(\n ({\n isLoading = false,\n placeholder = \"Ask Atlas\",\n message,\n onMessageChange,\n onSubmit,\n className,\n messageInputId,\n sendIconId,\n learnMoreLinkId,\n onUploadFile,\n onDictateMessage,\n }: FooterProps) => {\n const handleSubmit = () => {\n if (!isLoading) {\n onSubmit();\n }\n };\n\n return (\n <div className={classNames(styles[\"chat-footer\"], className)}>\n <ChatComposerRich\n messageInputId={messageInputId}\n sendIconId={sendIconId}\n placeholder={placeholder}\n onSend={handleSubmit}\n onChange={onMessageChange}\n message={message}\n disabled={isLoading}\n onUploadFile={onUploadFile}\n onDictateMessage={onDictateMessage}\n />\n <Text\n subdued\n variant=\"body\"\n size=\"small\"\n style={{\n fontSize: \"var(--typography-label-size-small)\",\n marginBlockStart: \"var(--size-1)\",\n }}\n >\n Atlas is TI-powered, subject to our privacy policy.{\" \"}\n <Link\n id={learnMoreLinkId}\n target=\"_blank\"\n href=\"#\"\n appearance=\"secondary\"\n >\n <Text\n inline\n size=\"small\"\n subdued\n style={{\n fontSize: \"var(--typography-label-size-small)\",\n }}\n >\n Learn more\n </Text>\n </Link>\n </Text>\n </div>\n );\n },\n);\n"],"names":[],"mappings":";;;;;;;;;AAwBO,MAAM,MAAA,GAAS,QAAA;AAAA,EACpB,CAAC;AAAA,IACC,SAAA,GAAY,KAAA;AAAA,IACZ,WAAA,GAAc,WAAA;AAAA,IACd,OAAA;AAAA,IACA,eAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,cAAA;AAAA,IACA,UAAA;AAAA,IACA,eAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACF,KAAmB;AACjB,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,IAAI,CAAC,SAAA,EAAW;AACd,QAAA,QAAA,EAAS;AAAA,MACX;AAAA,IACF,CAAA;AAEA,IAAA,uBACE,IAAA,CAAC,SAAI,SAAA,EAAW,UAAA,CAAW,OAAO,aAAa,CAAA,EAAG,SAAS,CAAA,EACzD,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,gBAAA;AAAA,QAAA;AAAA,UACC,cAAA;AAAA,UACA,UAAA;AAAA,UACA,WAAA;AAAA,UACA,MAAA,EAAQ,YAAA;AAAA,UACR,QAAA,EAAU,eAAA;AAAA,UACV,OAAA;AAAA,UACA,QAAA,EAAU,SAAA;AAAA,UACV,YAAA;AAAA,UACA;AAAA;AAAA,OACF;AAAA,sBACA,IAAA;AAAA,QAAC,IAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAO,IAAA;AAAA,UACP,OAAA,EAAQ,MAAA;AAAA,UACR,IAAA,EAAK,OAAA;AAAA,UACL,KAAA,EAAO;AAAA,YACL,QAAA,EAAU,oCAAA;AAAA,YACV,gBAAA,EAAkB;AAAA,WACpB;AAAA,UACD,QAAA,EAAA;AAAA,YAAA,qDAAA;AAAA,YACqD,GAAA;AAAA,4BACpD,GAAA;AAAA,cAAC,IAAA;AAAA,cAAA;AAAA,gBACC,EAAA,EAAI,eAAA;AAAA,gBACJ,MAAA,EAAO,QAAA;AAAA,gBACP,IAAA,EAAK,GAAA;AAAA,gBACL,UAAA,EAAW,WAAA;AAAA,gBAEX,QAAA,kBAAA,GAAA;AAAA,kBAAC,IAAA;AAAA,kBAAA;AAAA,oBACC,MAAA,EAAM,IAAA;AAAA,oBACN,IAAA,EAAK,OAAA;AAAA,oBACL,OAAA,EAAO,IAAA;AAAA,oBACP,KAAA,EAAO;AAAA,sBACL,QAAA,EAAU;AAAA,qBACZ;AAAA,oBACD,QAAA,EAAA;AAAA;AAAA;AAED;AAAA;AACF;AAAA;AAAA;AACF,KAAA,EACF,CAAA;AAAA,EAEJ;AACF;;;;"}
1
+ {"version":3,"file":"footer-Du5cuzZZ.js","sources":["../src/components/footer/footer.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { observer } from \"mobx-react\";\nimport { Link, Text } from \"@servicetitan/anvil2\";\n\nimport { ChatComposerRich } from \"../chat-composer-rich\";\n\nimport styles from \"./footer.module.scss\";\n\nexport interface FooterProps {\n isLoading?: boolean;\n message: string;\n placeholder?: string;\n onMessageChange: (value: string) => void;\n onSubmit: () => void;\n className?: string;\n messageInputId?: string;\n sendIconId?: string;\n learnMoreLinkId?: string;\n /** Callback when upload file is selected from menu */\n onUploadFile?: () => void;\n /** Callback when dictate message is selected from menu */\n onDictateMessage?: () => void;\n}\n\nexport const Footer = observer(\n ({\n isLoading = false,\n placeholder = \"Ask Atlas\",\n message,\n onMessageChange,\n onSubmit,\n className,\n messageInputId,\n sendIconId,\n learnMoreLinkId,\n onUploadFile,\n onDictateMessage,\n }: FooterProps) => {\n const handleSubmit = () => {\n if (!isLoading) {\n onSubmit();\n }\n };\n\n return (\n <div className={classNames(styles[\"chat-footer\"], className)}>\n <ChatComposerRich\n messageInputId={messageInputId}\n sendIconId={sendIconId}\n placeholder={placeholder}\n onSend={handleSubmit}\n onChange={onMessageChange}\n message={message}\n disabled={isLoading}\n onUploadFile={onUploadFile}\n onDictateMessage={onDictateMessage}\n />\n <Text\n subdued\n variant=\"body\"\n size=\"small\"\n style={{\n fontSize: \"var(--typography-label-size-small)\",\n marginBlockStart: \"var(--size-1)\",\n }}\n >\n Atlas is TI-powered, subject to our privacy policy.{\" \"}\n <Link\n id={learnMoreLinkId}\n target=\"_blank\"\n href=\"#\"\n appearance=\"secondary\"\n >\n <Text\n inline\n size=\"small\"\n subdued\n style={{\n fontSize: \"var(--typography-label-size-small)\",\n }}\n >\n Learn more\n </Text>\n </Link>\n </Text>\n </div>\n );\n },\n);\n"],"names":[],"mappings":";;;;;;;;;AAwBO,MAAM,MAAA,GAAS,QAAA;AAAA,EACpB,CAAC;AAAA,IACC,SAAA,GAAY,KAAA;AAAA,IACZ,WAAA,GAAc,WAAA;AAAA,IACd,OAAA;AAAA,IACA,eAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,cAAA;AAAA,IACA,UAAA;AAAA,IACA,eAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACF,KAAmB;AACjB,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,IAAI,CAAC,SAAA,EAAW;AACd,QAAA,QAAA,EAAS;AAAA,MACX;AAAA,IACF,CAAA;AAEA,IAAA,uBACE,IAAA,CAAC,SAAI,SAAA,EAAW,UAAA,CAAW,OAAO,aAAa,CAAA,EAAG,SAAS,CAAA,EACzD,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,gBAAA;AAAA,QAAA;AAAA,UACC,cAAA;AAAA,UACA,UAAA;AAAA,UACA,WAAA;AAAA,UACA,MAAA,EAAQ,YAAA;AAAA,UACR,QAAA,EAAU,eAAA;AAAA,UACV,OAAA;AAAA,UACA,QAAA,EAAU,SAAA;AAAA,UACV,YAAA;AAAA,UACA;AAAA;AAAA,OACF;AAAA,sBACA,IAAA;AAAA,QAAC,IAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAO,IAAA;AAAA,UACP,OAAA,EAAQ,MAAA;AAAA,UACR,IAAA,EAAK,OAAA;AAAA,UACL,KAAA,EAAO;AAAA,YACL,QAAA,EAAU,oCAAA;AAAA,YACV,gBAAA,EAAkB;AAAA,WACpB;AAAA,UACD,QAAA,EAAA;AAAA,YAAA,qDAAA;AAAA,YACqD,GAAA;AAAA,4BACpD,GAAA;AAAA,cAAC,IAAA;AAAA,cAAA;AAAA,gBACC,EAAA,EAAI,eAAA;AAAA,gBACJ,MAAA,EAAO,QAAA;AAAA,gBACP,IAAA,EAAK,GAAA;AAAA,gBACL,UAAA,EAAW,WAAA;AAAA,gBAEX,QAAA,kBAAA,GAAA;AAAA,kBAAC,IAAA;AAAA,kBAAA;AAAA,oBACC,MAAA,EAAM,IAAA;AAAA,oBACN,IAAA,EAAK,OAAA;AAAA,oBACL,OAAA,EAAO,IAAA;AAAA,oBACP,KAAA,EAAO;AAAA,sBACL,QAAA,EAAU;AAAA,qBACZ;AAAA,oBACD,QAAA,EAAA;AAAA;AAAA;AAED;AAAA;AACF;AAAA;AAAA;AACF,KAAA,EACF,CAAA;AAAA,EAEJ;AACF;;;;"}
package/dist/footer.js CHANGED
@@ -1,2 +1,2 @@
1
- export { F as Footer } from './footer-DezXey1O.js';
1
+ export { F as Footer } from './footer-Du5cuzZZ.js';
2
2
  //# sourceMappingURL=footer.js.map
@@ -18,9 +18,8 @@ const SvgModeEdit = (props) => /* @__PURE__ */ React.createElement("svg", { xmln
18
18
  const SvgOpenInFull = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M21 8.59V4c0-.55-.45-1-1-1h-4.59c-.89 0-1.34 1.08-.71 1.71l1.59 1.59-10 10-1.59-1.59c-.62-.63-1.7-.19-1.7.7V20c0 .55.45 1 1 1h4.59c.89 0 1.34-1.08.71-1.71L7.71 17.7l10-10 1.59 1.59c.62.63 1.7.19 1.7-.7z" }));
19
19
 
20
20
  const styles = {
21
- "chat-header": "_chat-header_1l2qt_1",
22
- "chat-header-title": "_chat-header-title_1l2qt_15"
23
- };
21
+ "chat-header": "_chat-header_158xe_1",
22
+ "chat-header-title": "_chat-header-title_158xe_15"};
24
23
 
25
24
  const Header = observer(
26
25
  ({
@@ -168,4 +167,4 @@ const Header = observer(
168
167
  );
169
168
 
170
169
  export { Header as H };
171
- //# sourceMappingURL=header-DgkrbsFN.js.map
170
+ //# sourceMappingURL=header-C7lrbzyg.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header-DgkrbsFN.js","sources":["../../anvil2/dist/assets/icons/material/round/arrow_back_ios.svg","../../anvil2/dist/assets/icons/material/round/close.svg","../../anvil2/dist/assets/icons/material/round/drag_indicator.svg","../../anvil2/dist/assets/icons/material/round/inbox.svg","../../anvil2/dist/assets/icons/material/round/mode_edit.svg","../../anvil2/dist/assets/icons/material/round/open_in_full.svg","../src/components/header/header.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgArrowBackIos = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M16.62 2.99a1.25 1.25 0 0 0-1.77 0L6.54 11.3a.996.996 0 0 0 0 1.41l8.31 8.31c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.38 12l7.25-7.25c.48-.48.48-1.28-.01-1.76z\" }));\nexport default SvgArrowBackIos;\n","import * as React from \"react\";\nconst SvgClose = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M18.3 5.71a.996.996 0 0 0-1.41 0L12 10.59 7.11 5.7A.996.996 0 1 0 5.7 7.11L10.59 12 5.7 16.89a.996.996 0 1 0 1.41 1.41L12 13.41l4.89 4.89a.996.996 0 1 0 1.41-1.41L13.41 12l4.89-4.89c.38-.38.38-1.02 0-1.4z\" }));\nexport default SvgClose;\n","import * as React from \"react\";\nconst SvgDragIndicator = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" }));\nexport default SvgDragIndicator;\n","import * as React from \"react\";\nconst SvgInbox = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v9h-3.56c-.36 0-.68.19-.86.5-.52.9-1.47 1.5-2.58 1.5s-2.06-.6-2.58-1.5a1 1 0 0 0-.86-.5H5V5h14z\" }));\nexport default SvgInbox;\n","import * as React from \"react\";\nconst SvgModeEdit = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M3 17.46v3.04c0 .28.22.5.5.5h3.04c.13 0 .26-.05.35-.15L17.81 9.94l-3.75-3.75L3.15 17.1c-.1.1-.15.22-.15.36zM20.71 5.63l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83a.996.996 0 0 0 0-1.41z\" }));\nexport default SvgModeEdit;\n","import * as React from \"react\";\nconst SvgOpenInFull = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M21 8.59V4c0-.55-.45-1-1-1h-4.59c-.89 0-1.34 1.08-.71 1.71l1.59 1.59-10 10-1.59-1.59c-.62-.63-1.7-.19-1.7.7V20c0 .55.45 1 1 1h4.59c.89 0 1.34-1.08.71-1.71L7.71 17.7l10-10 1.59 1.59c.62.63 1.7.19 1.7-.7z\" }));\nexport default SvgOpenInFull;\n","import { Fragment, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { observer } from \"mobx-react\";\nimport {\n Badge,\n Button,\n Flex,\n OverflowText,\n Text,\n Tooltip,\n} from \"@servicetitan/anvil2\";\nimport IconArrowBackIos from \"@servicetitan/anvil2/assets/icons/material/round/arrow_back_ios.svg\";\nimport IconClose from \"@servicetitan/anvil2/assets/icons/material/round/close.svg\";\nimport IconDragIndicator from \"@servicetitan/anvil2/assets/icons/material/round/drag_indicator.svg\";\nimport IconInbox from \"@servicetitan/anvil2/assets/icons/material/round/inbox.svg\";\nimport IconModeEdit from \"@servicetitan/anvil2/assets/icons/material/round/mode_edit.svg\";\nimport IconOpenInFull from \"@servicetitan/anvil2/assets/icons/material/round/open_in_full.svg\";\n\nimport styles from \"./header.module.scss\";\n\nexport interface HeaderProps {\n title?: string;\n onMouseDown?: (e: MouseEvent) => void;\n isDragging?: boolean;\n isDraggable?: boolean;\n isExpanded?: boolean;\n disabledChatsIcon?: boolean;\n historyCount?: number;\n titleBadge?: string | number;\n className?: string;\n onBack?: () => void;\n onClose?: () => void;\n onViewHistory?: () => void;\n onFullscreen?: () => void;\n onCreateNewChat?: () => void;\n backButtonId?: string;\n viewHistoryButtonId?: string;\n fullscreenButtonId?: string;\n newChatButtonId?: string;\n closeButtonId?: string;\n}\n\nexport const Header = observer(\n ({\n title = \"Atlas\",\n onMouseDown,\n isDraggable,\n isDragging,\n onFullscreen,\n onViewHistory,\n isExpanded,\n historyCount,\n titleBadge,\n disabledChatsIcon,\n onClose,\n onBack,\n className = \"\",\n onCreateNewChat,\n backButtonId,\n viewHistoryButtonId,\n fullscreenButtonId,\n newChatButtonId,\n closeButtonId,\n }: HeaderProps) => {\n return (\n <Flex className={classNames(styles[\"chat-header\"], className)}>\n <Flex gap={1} style={{ marginInlineEnd: \"var(--size-1)\" }}>\n {isDraggable && !isExpanded && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n className=\"cursor-grab\"\n onMouseDown={onMouseDown ?? undefined}\n style={{\n position: \"relative\",\n cursor: isDragging ? \"grabbing\" : \"grab\",\n }}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconDragIndicator}\n aria-label=\"drag\"\n />\n </Tooltip.Trigger>\n {isDragging ? null : (\n <Tooltip.Content>Drag to Adjust</Tooltip.Content>\n )}\n </Tooltip>\n )}\n {onBack && (\n <Button\n id={backButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconArrowBackIos}\n onClick={onBack}\n />\n )}\n </Flex>\n <Flex grow={1}>\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <OverflowText rows={1} className={styles[\"chat-header-title\"]}>\n <Text\n el=\"h4\"\n size=\"small\"\n variant=\"headline\"\n style={{ marginBlockEnd: \"0\", paddingBlockEnd: \"0\" }}\n >\n {title}\n </Text>\n {!!titleBadge && (\n <Badge\n offset={{\n x: \"12px\",\n y: \"0.5rem\",\n }}\n >\n {titleBadge}\n </Badge>\n )}\n </OverflowText>\n </Tooltip.Trigger>\n <Tooltip.Content>{title}</Tooltip.Content>\n </Tooltip>\n </Flex>\n <Flex gap={1}>\n {onViewHistory && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger style={{ position: \"relative\" }}>\n <Fragment>\n <Button\n id={viewHistoryButtonId}\n style={{ position: \"relative\" }}\n disabled={disabledChatsIcon}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconInbox}\n aria-label=\"chats\"\n onClick={onViewHistory}\n />\n {!!historyCount && <Badge>{historyCount}</Badge>}\n </Fragment>\n </Tooltip.Trigger>\n <Tooltip.Content>View All Chats</Tooltip.Content>\n </Tooltip>\n )}\n {onFullscreen && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={fullscreenButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconOpenInFull}\n aria-label=\"fullscreen\"\n onClick={onFullscreen}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {isExpanded ? \"Minimize Window\" : \"Expand Window\"}\n </Tooltip.Content>\n </Tooltip>\n )}\n {onCreateNewChat && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={newChatButtonId}\n size=\"small\"\n icon={IconModeEdit}\n aria-label=\"new chat\"\n onClick={onCreateNewChat}\n >\n New Chat\n </Button>\n </Tooltip.Trigger>\n <Tooltip.Content>New Chat</Tooltip.Content>\n </Tooltip>\n )}\n {onClose && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={closeButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconClose}\n aria-label=\"close\"\n onClick={onClose}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>Hide Window</Tooltip.Content>\n </Tooltip>\n )}\n </Flex>\n </Flex>\n );\n },\n);\n"],"names":["IconDragIndicator","IconArrowBackIos","IconInbox","IconOpenInFull","IconModeEdit","IconClose"],"mappings":"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"}
1
+ {"version":3,"file":"header-C7lrbzyg.js","sources":["../../anvil2/dist/assets/icons/material/round/arrow_back_ios.svg","../../anvil2/dist/assets/icons/material/round/close.svg","../../anvil2/dist/assets/icons/material/round/drag_indicator.svg","../../anvil2/dist/assets/icons/material/round/inbox.svg","../../anvil2/dist/assets/icons/material/round/mode_edit.svg","../../anvil2/dist/assets/icons/material/round/open_in_full.svg","../src/components/header/header.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgArrowBackIos = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M16.62 2.99a1.25 1.25 0 0 0-1.77 0L6.54 11.3a.996.996 0 0 0 0 1.41l8.31 8.31c.49.49 1.28.49 1.77 0s.49-1.28 0-1.77L9.38 12l7.25-7.25c.48-.48.48-1.28-.01-1.76z\" }));\nexport default SvgArrowBackIos;\n","import * as React from \"react\";\nconst SvgClose = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M18.3 5.71a.996.996 0 0 0-1.41 0L12 10.59 7.11 5.7A.996.996 0 1 0 5.7 7.11L10.59 12 5.7 16.89a.996.996 0 1 0 1.41 1.41L12 13.41l4.89 4.89a.996.996 0 1 0 1.41-1.41L13.41 12l4.89-4.89c.38-.38.38-1.02 0-1.4z\" }));\nexport default SvgClose;\n","import * as React from \"react\";\nconst SvgDragIndicator = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" }));\nexport default SvgDragIndicator;\n","import * as React from \"react\";\nconst SvgInbox = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v9h-3.56c-.36 0-.68.19-.86.5-.52.9-1.47 1.5-2.58 1.5s-2.06-.6-2.58-1.5a1 1 0 0 0-.86-.5H5V5h14z\" }));\nexport default SvgInbox;\n","import * as React from \"react\";\nconst SvgModeEdit = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M3 17.46v3.04c0 .28.22.5.5.5h3.04c.13 0 .26-.05.35-.15L17.81 9.94l-3.75-3.75L3.15 17.1c-.1.1-.15.22-.15.36zM20.71 5.63l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83a.996.996 0 0 0 0-1.41z\" }));\nexport default SvgModeEdit;\n","import * as React from \"react\";\nconst SvgOpenInFull = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M21 8.59V4c0-.55-.45-1-1-1h-4.59c-.89 0-1.34 1.08-.71 1.71l1.59 1.59-10 10-1.59-1.59c-.62-.63-1.7-.19-1.7.7V20c0 .55.45 1 1 1h4.59c.89 0 1.34-1.08.71-1.71L7.71 17.7l10-10 1.59 1.59c.62.63 1.7.19 1.7-.7z\" }));\nexport default SvgOpenInFull;\n","import { Fragment, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { observer } from \"mobx-react\";\nimport {\n Badge,\n Button,\n Flex,\n OverflowText,\n Text,\n Tooltip,\n} from \"@servicetitan/anvil2\";\nimport IconArrowBackIos from \"@servicetitan/anvil2/assets/icons/material/round/arrow_back_ios.svg\";\nimport IconClose from \"@servicetitan/anvil2/assets/icons/material/round/close.svg\";\nimport IconDragIndicator from \"@servicetitan/anvil2/assets/icons/material/round/drag_indicator.svg\";\nimport IconInbox from \"@servicetitan/anvil2/assets/icons/material/round/inbox.svg\";\nimport IconModeEdit from \"@servicetitan/anvil2/assets/icons/material/round/mode_edit.svg\";\nimport IconOpenInFull from \"@servicetitan/anvil2/assets/icons/material/round/open_in_full.svg\";\n\nimport styles from \"./header.module.scss\";\n\nexport interface HeaderProps {\n title?: string;\n onMouseDown?: (e: MouseEvent) => void;\n isDragging?: boolean;\n isDraggable?: boolean;\n isExpanded?: boolean;\n disabledChatsIcon?: boolean;\n historyCount?: number;\n titleBadge?: string | number;\n className?: string;\n onBack?: () => void;\n onClose?: () => void;\n onViewHistory?: () => void;\n onFullscreen?: () => void;\n onCreateNewChat?: () => void;\n backButtonId?: string;\n viewHistoryButtonId?: string;\n fullscreenButtonId?: string;\n newChatButtonId?: string;\n closeButtonId?: string;\n}\n\nexport const Header = observer(\n ({\n title = \"Atlas\",\n onMouseDown,\n isDraggable,\n isDragging,\n onFullscreen,\n onViewHistory,\n isExpanded,\n historyCount,\n titleBadge,\n disabledChatsIcon,\n onClose,\n onBack,\n className = \"\",\n onCreateNewChat,\n backButtonId,\n viewHistoryButtonId,\n fullscreenButtonId,\n newChatButtonId,\n closeButtonId,\n }: HeaderProps) => {\n return (\n <Flex className={classNames(styles[\"chat-header\"], className)}>\n <Flex gap={1} style={{ marginInlineEnd: \"var(--size-1)\" }}>\n {isDraggable && !isExpanded && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n className=\"cursor-grab\"\n onMouseDown={onMouseDown ?? undefined}\n style={{\n position: \"relative\",\n cursor: isDragging ? \"grabbing\" : \"grab\",\n }}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconDragIndicator}\n aria-label=\"drag\"\n />\n </Tooltip.Trigger>\n {isDragging ? null : (\n <Tooltip.Content>Drag to Adjust</Tooltip.Content>\n )}\n </Tooltip>\n )}\n {onBack && (\n <Button\n id={backButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconArrowBackIos}\n onClick={onBack}\n />\n )}\n </Flex>\n <Flex grow={1}>\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <OverflowText rows={1} className={styles[\"chat-header-title\"]}>\n <Text\n el=\"h4\"\n size=\"small\"\n variant=\"headline\"\n style={{ marginBlockEnd: \"0\", paddingBlockEnd: \"0\" }}\n >\n {title}\n </Text>\n {!!titleBadge && (\n <Badge\n offset={{\n x: \"12px\",\n y: \"0.5rem\",\n }}\n >\n {titleBadge}\n </Badge>\n )}\n </OverflowText>\n </Tooltip.Trigger>\n <Tooltip.Content>{title}</Tooltip.Content>\n </Tooltip>\n </Flex>\n <Flex gap={1}>\n {onViewHistory && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger style={{ position: \"relative\" }}>\n <Fragment>\n <Button\n id={viewHistoryButtonId}\n style={{ position: \"relative\" }}\n disabled={disabledChatsIcon}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconInbox}\n aria-label=\"chats\"\n onClick={onViewHistory}\n />\n {!!historyCount && <Badge>{historyCount}</Badge>}\n </Fragment>\n </Tooltip.Trigger>\n <Tooltip.Content>View All Chats</Tooltip.Content>\n </Tooltip>\n )}\n {onFullscreen && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={fullscreenButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconOpenInFull}\n aria-label=\"fullscreen\"\n onClick={onFullscreen}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {isExpanded ? \"Minimize Window\" : \"Expand Window\"}\n </Tooltip.Content>\n </Tooltip>\n )}\n {onCreateNewChat && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={newChatButtonId}\n size=\"small\"\n icon={IconModeEdit}\n aria-label=\"new chat\"\n onClick={onCreateNewChat}\n >\n New Chat\n </Button>\n </Tooltip.Trigger>\n <Tooltip.Content>New Chat</Tooltip.Content>\n </Tooltip>\n )}\n {onClose && (\n <Tooltip placement=\"bottom\">\n <Tooltip.Trigger>\n <Button\n id={closeButtonId}\n appearance=\"ghost\"\n size=\"small\"\n icon={IconClose}\n aria-label=\"close\"\n onClick={onClose}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>Hide Window</Tooltip.Content>\n </Tooltip>\n )}\n </Flex>\n </Flex>\n );\n },\n);\n"],"names":["IconDragIndicator","IconArrowBackIos","IconInbox","IconOpenInFull","IconModeEdit","IconClose"],"mappings":"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"}
package/dist/header.css CHANGED
@@ -1,23 +1,23 @@
1
1
  @layer starter, reset, base, state, application;
2
2
 
3
- ._chat-header_1l2qt_1 {
3
+ ._chat-header_158xe_1 {
4
4
  width: 100%;
5
5
  height: 56px;
6
6
  flex-shrink: 0;
7
7
  border-radius: 12px 12px 0 0;
8
8
  border-bottom: 1px solid var(--border-color-subdued, #dfe0e1);
9
9
  box-sizing: border-box;
10
- background: var(--background-color);
10
+ background: light-dark(var(--background-color), var(--background-color-strong));
11
11
  display: flex;
12
12
  align-items: center;
13
13
  justify-content: space-between;
14
14
  padding: 0 var(--size-4);
15
15
  }
16
16
 
17
- ._chat-header-title_1l2qt_15 {
17
+ ._chat-header-title_158xe_15 {
18
18
  position: relative;
19
19
  }
20
- ._chat-header-title_1l2qt_15 > :first-child {
20
+ ._chat-header-title_158xe_15 > :first-child {
21
21
  padding-top: 0;
22
22
  padding-bottom: 2px;
23
23
  }