@red-hat-developer-hub/backstage-plugin-lightspeed 2.8.0 → 2.8.2

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 (66) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/alpha/LightspeedFAB.esm.js +5 -2
  3. package/dist/alpha/LightspeedFAB.esm.js.map +1 -1
  4. package/dist/alpha.d.ts +9 -3
  5. package/dist/components/CollapsedHistoryStrip.esm.js +25 -22
  6. package/dist/components/CollapsedHistoryStrip.esm.js.map +1 -1
  7. package/dist/components/DeleteModal.esm.js +1 -1
  8. package/dist/components/DeleteModal.esm.js.map +1 -1
  9. package/dist/components/LightSpeedChat.esm.js +43 -14
  10. package/dist/components/LightSpeedChat.esm.js.map +1 -1
  11. package/dist/components/LightspeedChatBoxHeader.esm.js +6 -3
  12. package/dist/components/LightspeedChatBoxHeader.esm.js.map +1 -1
  13. package/dist/components/LightspeedChatContainer.esm.js +4 -2
  14. package/dist/components/LightspeedChatContainer.esm.js.map +1 -1
  15. package/dist/components/LightspeedDrawerProvider.esm.js +6 -3
  16. package/dist/components/LightspeedDrawerProvider.esm.js.map +1 -1
  17. package/dist/components/LightspeedFAB.esm.js +5 -2
  18. package/dist/components/LightspeedFAB.esm.js.map +1 -1
  19. package/dist/components/McpServersSettings.esm.js +3 -4
  20. package/dist/components/McpServersSettings.esm.js.map +1 -1
  21. package/dist/components/McpSettingsIcon.esm.js +14 -22
  22. package/dist/components/McpSettingsIcon.esm.js.map +1 -1
  23. package/dist/components/RenameConversationModal.esm.js +1 -1
  24. package/dist/components/RenameConversationModal.esm.js.map +1 -1
  25. package/dist/components/Router.esm.js +13 -4
  26. package/dist/components/Router.esm.js.map +1 -1
  27. package/dist/components/notebooks/AddDocumentModal.esm.js +1 -1
  28. package/dist/components/notebooks/AddDocumentModal.esm.js.map +1 -1
  29. package/dist/components/notebooks/DeleteDocumentModal.esm.js +131 -0
  30. package/dist/components/notebooks/DeleteDocumentModal.esm.js.map +1 -0
  31. package/dist/components/notebooks/DeleteNotebookModal.esm.js +1 -1
  32. package/dist/components/notebooks/DeleteNotebookModal.esm.js.map +1 -1
  33. package/dist/components/notebooks/FileListItem.esm.js +1 -1
  34. package/dist/components/notebooks/FileListItem.esm.js.map +1 -1
  35. package/dist/components/notebooks/NotebookView.esm.js +83 -48
  36. package/dist/components/notebooks/NotebookView.esm.js.map +1 -1
  37. package/dist/components/notebooks/OverwriteConfirmModal.esm.js +1 -1
  38. package/dist/components/notebooks/OverwriteConfirmModal.esm.js.map +1 -1
  39. package/dist/components/notebooks/RenameNotebookModal.esm.js +1 -1
  40. package/dist/components/notebooks/RenameNotebookModal.esm.js.map +1 -1
  41. package/dist/const.esm.js +6 -1
  42. package/dist/const.esm.js.map +1 -1
  43. package/dist/hooks/notebooks/useDocumentStatusPolling.esm.js +2 -1
  44. package/dist/hooks/notebooks/useDocumentStatusPolling.esm.js.map +1 -1
  45. package/dist/hooks/useConversationMessages.esm.js +7 -3
  46. package/dist/hooks/useConversationMessages.esm.js.map +1 -1
  47. package/dist/hooks/useNotebookWelcomePrompts.esm.js +14 -0
  48. package/dist/hooks/useNotebookWelcomePrompts.esm.js.map +1 -0
  49. package/dist/index.d.ts +1 -1
  50. package/dist/translations/de.esm.js +13 -4
  51. package/dist/translations/de.esm.js.map +1 -1
  52. package/dist/translations/es.esm.js +13 -6
  53. package/dist/translations/es.esm.js.map +1 -1
  54. package/dist/translations/fr.esm.js +13 -4
  55. package/dist/translations/fr.esm.js.map +1 -1
  56. package/dist/translations/it.esm.js +13 -6
  57. package/dist/translations/it.esm.js.map +1 -1
  58. package/dist/translations/ja.esm.js +13 -4
  59. package/dist/translations/ja.esm.js.map +1 -1
  60. package/dist/translations/ref.esm.js +13 -7
  61. package/dist/translations/ref.esm.js.map +1 -1
  62. package/dist/utils/generateClassName.esm.js +12 -0
  63. package/dist/utils/generateClassName.esm.js.map +1 -0
  64. package/dist/utils/lightspeed-chatbox-utils.esm.js +57 -3
  65. package/dist/utils/lightspeed-chatbox-utils.esm.js.map +1 -1
  66. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  ## @red-hat-developer-hub/backstage-plugin-lightspeed
2
2
 
3
+ ## 2.8.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 326f2cb: Scope all JSS class names with a `lightspeed-` prefix via seeded `StylesProvider` to prevent CSS collisions with other dynamically loaded plugins in RHDH.
8
+ - 326f2cb: UI improvements and bug fixes: unify MessageBar across display modes, fix message content overflow, rename chat section titles, update chat history panel icons, remove redundant success upload alerts, add delete resource confirmation modal, replace MCP settings icon with gear and add New badge.
9
+ - @red-hat-developer-hub/backstage-plugin-lightspeed-common@2.8.2
10
+
11
+ ## 2.8.1
12
+
13
+ ### Patch Changes
14
+
15
+ - e5d33ba: Improved normalization of user chat input before send and display. A short intro followed by a numbered list, ASCII bullet lists (hyphen, asterisk, or plus, with optional indentation), or Unicode bullet lines is folded into one Markdown paragraph using hard line breaks and marker escaping where needed. That preserves intended line breaks (soft breaks no longer collapse list lines into one sentence) and keeps list-oriented prompts from splitting awkwardly in the chat UI. Excessive blank lines are tightened, CRLF is normalized, and whitespace-only prompts are not submitted.
16
+ - e6cd084: Fix notebook prompts and add Developer preview badge for Notebooks tab
17
+ - @red-hat-developer-hub/backstage-plugin-lightspeed-common@2.8.1
18
+
3
19
  ## 2.8.0
4
20
 
5
21
  ### Minor Changes
@@ -1,13 +1,15 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
+ import { StylesProvider as StylesProvider$1 } from '@material-ui/core/styles';
2
3
  import CloseIcon from '@mui/icons-material/Close';
3
4
  import Fab from '@mui/material/Fab';
4
5
  import Tooltip from '@mui/material/Tooltip';
5
- import { makeStyles } from '@mui/styles';
6
+ import { makeStyles, StylesProvider } from '@mui/styles';
6
7
  import { ChatbotDisplayMode } from '@patternfly/chatbot';
7
8
  import { LightspeedFABIcon } from '../components/LightspeedIcon.esm.js';
8
9
  import { DOCKED_CONTENT_OFFSET } from '../const.esm.js';
9
10
  import { useLightspeedDrawerContext } from '../hooks/useLightspeedDrawerContext.esm.js';
10
11
  import { useTranslation } from '../hooks/useTranslation.esm.js';
12
+ import { generateClassName, generateClassNameV4 } from '../utils/generateClassName.esm.js';
11
13
 
12
14
  const useStyles = makeStyles((theme) => ({
13
15
  fab: {
@@ -30,7 +32,7 @@ const useStyles = makeStyles((theme) => ({
30
32
  }
31
33
  }
32
34
  }));
33
- const LightspeedFAB = () => {
35
+ const LightspeedFABInner = () => {
34
36
  const { t } = useTranslation();
35
37
  const { isChatbotActive, toggleChatbot, displayMode } = useLightspeedDrawerContext();
36
38
  const fabButton = useStyles();
@@ -66,6 +68,7 @@ const LightspeedFAB = () => {
66
68
  }
67
69
  );
68
70
  };
71
+ const LightspeedFAB = () => /* @__PURE__ */ jsx(StylesProvider, { generateClassName, children: /* @__PURE__ */ jsx(StylesProvider$1, { generateClassName: generateClassNameV4, children: /* @__PURE__ */ jsx(LightspeedFABInner, {}) }) });
69
72
 
70
73
  export { LightspeedFAB };
71
74
  //# sourceMappingURL=LightspeedFAB.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LightspeedFAB.esm.js","sources":["../../src/alpha/LightspeedFAB.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport Close from '@mui/icons-material/Close';\nimport Fab from '@mui/material/Fab';\nimport Tooltip from '@mui/material/Tooltip';\nimport { makeStyles } from '@mui/styles';\nimport { ChatbotDisplayMode } from '@patternfly/chatbot';\n\nimport { LightspeedFABIcon } from '../components/LightspeedIcon';\nimport { DOCKED_CONTENT_OFFSET } from '../const';\nimport { useLightspeedDrawerContext } from '../hooks/useLightspeedDrawerContext';\nimport { useTranslation } from '../hooks/useTranslation';\n\nconst useStyles = makeStyles(theme => ({\n fab: {\n opacity: '1 !important',\n backgroundColor: `${theme?.palette?.primary?.main ?? '#1976d2'} !important`,\n color: `${theme?.palette?.primary?.contrastText ?? '#fff'} !important`,\n boxShadow: `${\n theme?.shadows?.[6] ??\n '0px 3px 5px -1px rgba(0,0,0,0.2), 0px 6px 10px 0px rgba(0,0,0,0.14), 0px 1px 18px 0px rgba(0,0,0,0.12)'\n } !important`,\n },\n 'fab-button': {\n bottom: `calc(${theme?.spacing?.(2) ?? '16px'} + 1.5em)`,\n right: `calc(${theme?.spacing?.(2) ?? '16px'} + 1.5em)`,\n alignItems: 'end',\n zIndex: 200,\n display: 'flex',\n position: 'fixed',\n\n // When ApplicationDrawer is docked, match main content inset\n 'body.docked-drawer-open &': {\n transition: 'margin-right 0.3s ease',\n marginRight: DOCKED_CONTENT_OFFSET,\n },\n },\n}));\n\n/**\n * @alpha\n * Lightspeed Floating action button to open/close the lightspeed chatbot\n */\n\nexport const LightspeedFAB = () => {\n const { t } = useTranslation();\n const { isChatbotActive, toggleChatbot, displayMode } =\n useLightspeedDrawerContext();\n const fabButton = useStyles();\n\n if (displayMode === ChatbotDisplayMode.embedded) {\n return null;\n }\n\n return (\n <div\n className={fabButton['fab-button']}\n id=\"lightspeed-fab\"\n data-testid=\"lightspeed-fab\"\n >\n <Tooltip\n title={isChatbotActive ? t('tooltip.fab.close') : t('tooltip.fab.open')}\n placement=\"left\"\n >\n <Fab\n color=\"primary\"\n variant=\"circular\"\n size=\"small\"\n onClick={toggleChatbot}\n aria-label={\n isChatbotActive ? t('tooltip.fab.close') : t('tooltip.fab.open')\n }\n className={fabButton.fab}\n sx={{ borderRadius: '100% !important' }}\n >\n {isChatbotActive ? <Close fontSize=\"small\" /> : <LightspeedFABIcon />}\n </Fab>\n </Tooltip>\n </div>\n );\n};\n"],"names":["Close"],"mappings":";;;;;;;;;;;AA2BA,MAAM,SAAA,GAAY,WAAW,CAAA,KAAA,MAAU;AAAA,EACrC,GAAA,EAAK;AAAA,IACH,OAAA,EAAS,cAAA;AAAA,IACT,iBAAiB,CAAA,EAAG,KAAA,EAAO,OAAA,EAAS,OAAA,EAAS,QAAQ,SAAS,CAAA,WAAA,CAAA;AAAA,IAC9D,OAAO,CAAA,EAAG,KAAA,EAAO,OAAA,EAAS,OAAA,EAAS,gBAAgB,MAAM,CAAA,WAAA,CAAA;AAAA,IACzD,WAAW,CAAA,EACT,KAAA,EAAO,OAAA,GAAU,CAAC,KAClB,wGACF,CAAA,WAAA;AAAA,GACF;AAAA,EACA,YAAA,EAAc;AAAA,IACZ,QAAQ,CAAA,KAAA,EAAQ,KAAA,EAAO,OAAA,GAAU,CAAC,KAAK,MAAM,CAAA,SAAA,CAAA;AAAA,IAC7C,OAAO,CAAA,KAAA,EAAQ,KAAA,EAAO,OAAA,GAAU,CAAC,KAAK,MAAM,CAAA,SAAA,CAAA;AAAA,IAC5C,UAAA,EAAY,KAAA;AAAA,IACZ,MAAA,EAAQ,GAAA;AAAA,IACR,OAAA,EAAS,MAAA;AAAA,IACT,QAAA,EAAU,OAAA;AAAA;AAAA,IAGV,2BAAA,EAA6B;AAAA,MAC3B,UAAA,EAAY,wBAAA;AAAA,MACZ,WAAA,EAAa;AAAA;AACf;AAEJ,CAAA,CAAE,CAAA;AAOK,MAAM,gBAAgB,MAAM;AACjC,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,cAAA,EAAe;AAC7B,EAAA,MAAM,EAAE,eAAA,EAAiB,aAAA,EAAe,WAAA,KACtC,0BAAA,EAA2B;AAC7B,EAAA,MAAM,YAAY,SAAA,EAAU;AAE5B,EAAA,IAAI,WAAA,KAAgB,mBAAmB,QAAA,EAAU;AAC/C,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,UAAU,YAAY,CAAA;AAAA,MACjC,EAAA,EAAG,gBAAA;AAAA,MACH,aAAA,EAAY,gBAAA;AAAA,MAEZ,QAAA,kBAAA,GAAA;AAAA,QAAC,OAAA;AAAA,QAAA;AAAA,UACC,OAAO,eAAA,GAAkB,CAAA,CAAE,mBAAmB,CAAA,GAAI,EAAE,kBAAkB,CAAA;AAAA,UACtE,SAAA,EAAU,MAAA;AAAA,UAEV,QAAA,kBAAA,GAAA;AAAA,YAAC,GAAA;AAAA,YAAA;AAAA,cACC,KAAA,EAAM,SAAA;AAAA,cACN,OAAA,EAAQ,UAAA;AAAA,cACR,IAAA,EAAK,OAAA;AAAA,cACL,OAAA,EAAS,aAAA;AAAA,cACT,cACE,eAAA,GAAkB,CAAA,CAAE,mBAAmB,CAAA,GAAI,EAAE,kBAAkB,CAAA;AAAA,cAEjE,WAAW,SAAA,CAAU,GAAA;AAAA,cACrB,EAAA,EAAI,EAAE,YAAA,EAAc,iBAAA,EAAkB;AAAA,cAErC,4CAAkB,GAAA,CAACA,SAAA,EAAA,EAAM,UAAS,OAAA,EAAQ,CAAA,uBAAM,iBAAA,EAAA,EAAkB;AAAA;AAAA;AACrE;AAAA;AACF;AAAA,GACF;AAEJ;;;;"}
1
+ {"version":3,"file":"LightspeedFAB.esm.js","sources":["../../src/alpha/LightspeedFAB.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { StylesProvider as StylesProviderV4 } from '@material-ui/core/styles';\nimport Close from '@mui/icons-material/Close';\nimport Fab from '@mui/material/Fab';\nimport Tooltip from '@mui/material/Tooltip';\nimport { makeStyles, StylesProvider } from '@mui/styles';\nimport { ChatbotDisplayMode } from '@patternfly/chatbot';\n\nimport { LightspeedFABIcon } from '../components/LightspeedIcon';\nimport { DOCKED_CONTENT_OFFSET } from '../const';\nimport { useLightspeedDrawerContext } from '../hooks/useLightspeedDrawerContext';\nimport { useTranslation } from '../hooks/useTranslation';\nimport {\n generateClassName,\n generateClassNameV4,\n} from '../utils/generateClassName';\n\nconst useStyles = makeStyles(theme => ({\n fab: {\n opacity: '1 !important',\n backgroundColor: `${theme?.palette?.primary?.main ?? '#1976d2'} !important`,\n color: `${theme?.palette?.primary?.contrastText ?? '#fff'} !important`,\n boxShadow: `${\n theme?.shadows?.[6] ??\n '0px 3px 5px -1px rgba(0,0,0,0.2), 0px 6px 10px 0px rgba(0,0,0,0.14), 0px 1px 18px 0px rgba(0,0,0,0.12)'\n } !important`,\n },\n 'fab-button': {\n bottom: `calc(${theme?.spacing?.(2) ?? '16px'} + 1.5em)`,\n right: `calc(${theme?.spacing?.(2) ?? '16px'} + 1.5em)`,\n alignItems: 'end',\n zIndex: 200,\n display: 'flex',\n position: 'fixed',\n\n // When ApplicationDrawer is docked, match main content inset\n 'body.docked-drawer-open &': {\n transition: 'margin-right 0.3s ease',\n marginRight: DOCKED_CONTENT_OFFSET,\n },\n },\n}));\n\nconst LightspeedFABInner = () => {\n const { t } = useTranslation();\n const { isChatbotActive, toggleChatbot, displayMode } =\n useLightspeedDrawerContext();\n const fabButton = useStyles();\n\n if (displayMode === ChatbotDisplayMode.embedded) {\n return null;\n }\n\n return (\n <div\n className={fabButton['fab-button']}\n id=\"lightspeed-fab\"\n data-testid=\"lightspeed-fab\"\n >\n <Tooltip\n title={isChatbotActive ? t('tooltip.fab.close') : t('tooltip.fab.open')}\n placement=\"left\"\n >\n <Fab\n color=\"primary\"\n variant=\"circular\"\n size=\"small\"\n onClick={toggleChatbot}\n aria-label={\n isChatbotActive ? t('tooltip.fab.close') : t('tooltip.fab.open')\n }\n className={fabButton.fab}\n sx={{ borderRadius: '100% !important' }}\n >\n {isChatbotActive ? <Close fontSize=\"small\" /> : <LightspeedFABIcon />}\n </Fab>\n </Tooltip>\n </div>\n );\n};\n\n/**\n * @alpha\n * Lightspeed Floating action button to open/close the lightspeed chatbot\n */\nexport const LightspeedFAB = () => (\n <StylesProvider generateClassName={generateClassName}>\n <StylesProviderV4 generateClassName={generateClassNameV4}>\n <LightspeedFABInner />\n </StylesProviderV4>\n </StylesProvider>\n);\n"],"names":["Close","StylesProviderV4"],"mappings":";;;;;;;;;;;;;AAgCA,MAAM,SAAA,GAAY,WAAW,CAAA,KAAA,MAAU;AAAA,EACrC,GAAA,EAAK;AAAA,IACH,OAAA,EAAS,cAAA;AAAA,IACT,iBAAiB,CAAA,EAAG,KAAA,EAAO,OAAA,EAAS,OAAA,EAAS,QAAQ,SAAS,CAAA,WAAA,CAAA;AAAA,IAC9D,OAAO,CAAA,EAAG,KAAA,EAAO,OAAA,EAAS,OAAA,EAAS,gBAAgB,MAAM,CAAA,WAAA,CAAA;AAAA,IACzD,WAAW,CAAA,EACT,KAAA,EAAO,OAAA,GAAU,CAAC,KAClB,wGACF,CAAA,WAAA;AAAA,GACF;AAAA,EACA,YAAA,EAAc;AAAA,IACZ,QAAQ,CAAA,KAAA,EAAQ,KAAA,EAAO,OAAA,GAAU,CAAC,KAAK,MAAM,CAAA,SAAA,CAAA;AAAA,IAC7C,OAAO,CAAA,KAAA,EAAQ,KAAA,EAAO,OAAA,GAAU,CAAC,KAAK,MAAM,CAAA,SAAA,CAAA;AAAA,IAC5C,UAAA,EAAY,KAAA;AAAA,IACZ,MAAA,EAAQ,GAAA;AAAA,IACR,OAAA,EAAS,MAAA;AAAA,IACT,QAAA,EAAU,OAAA;AAAA;AAAA,IAGV,2BAAA,EAA6B;AAAA,MAC3B,UAAA,EAAY,wBAAA;AAAA,MACZ,WAAA,EAAa;AAAA;AACf;AAEJ,CAAA,CAAE,CAAA;AAEF,MAAM,qBAAqB,MAAM;AAC/B,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,cAAA,EAAe;AAC7B,EAAA,MAAM,EAAE,eAAA,EAAiB,aAAA,EAAe,WAAA,KACtC,0BAAA,EAA2B;AAC7B,EAAA,MAAM,YAAY,SAAA,EAAU;AAE5B,EAAA,IAAI,WAAA,KAAgB,mBAAmB,QAAA,EAAU;AAC/C,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,UAAU,YAAY,CAAA;AAAA,MACjC,EAAA,EAAG,gBAAA;AAAA,MACH,aAAA,EAAY,gBAAA;AAAA,MAEZ,QAAA,kBAAA,GAAA;AAAA,QAAC,OAAA;AAAA,QAAA;AAAA,UACC,OAAO,eAAA,GAAkB,CAAA,CAAE,mBAAmB,CAAA,GAAI,EAAE,kBAAkB,CAAA;AAAA,UACtE,SAAA,EAAU,MAAA;AAAA,UAEV,QAAA,kBAAA,GAAA;AAAA,YAAC,GAAA;AAAA,YAAA;AAAA,cACC,KAAA,EAAM,SAAA;AAAA,cACN,OAAA,EAAQ,UAAA;AAAA,cACR,IAAA,EAAK,OAAA;AAAA,cACL,OAAA,EAAS,aAAA;AAAA,cACT,cACE,eAAA,GAAkB,CAAA,CAAE,mBAAmB,CAAA,GAAI,EAAE,kBAAkB,CAAA;AAAA,cAEjE,WAAW,SAAA,CAAU,GAAA;AAAA,cACrB,EAAA,EAAI,EAAE,YAAA,EAAc,iBAAA,EAAkB;AAAA,cAErC,4CAAkB,GAAA,CAACA,SAAA,EAAA,EAAM,UAAS,OAAA,EAAQ,CAAA,uBAAM,iBAAA,EAAA,EAAkB;AAAA;AAAA;AACrE;AAAA;AACF;AAAA,GACF;AAEJ,CAAA;AAMO,MAAM,aAAA,GAAgB,sBAC3B,GAAA,CAAC,cAAA,EAAA,EAAe,iBAAA,EACd,QAAA,kBAAA,GAAA,CAACC,gBAAA,EAAA,EAAiB,iBAAA,EAAmB,mBAAA,EACnC,QAAA,kBAAA,GAAA,CAAC,kBAAA,EAAA,EAAmB,CAAA,EACtB,CAAA,EACF;;;;"}
package/dist/alpha.d.ts CHANGED
@@ -33,11 +33,15 @@ declare const lightspeedTranslationRef: _backstage_frontend_plugin_api.Translati
33
33
  readonly "prompts.openshift.message": string;
34
34
  readonly "prompts.rhdh.title": string;
35
35
  readonly "prompts.rhdh.message": string;
36
+ readonly "notebooks.prompts.coreConcepts.title": string;
37
+ readonly "notebooks.prompts.vulnerabilities.title": string;
38
+ readonly "notebooks.prompts.accessIssue.title": string;
36
39
  readonly "page.title": string;
37
40
  readonly "page.subtitle": string;
38
41
  readonly "tabs.ariaLabel": string;
39
42
  readonly "tabs.chat": string;
40
43
  readonly "tabs.notebooks": string;
44
+ readonly "tabs.notebooks.devPreview": string;
41
45
  readonly "tabs.notebooks.empty": string;
42
46
  readonly "notebooks.title": string;
43
47
  readonly "notebooks.empty.title": string;
@@ -73,7 +77,6 @@ declare const lightspeedTranslationRef: _backstage_frontend_plugin_api.Translati
73
77
  readonly "notebook.view.sidebar.resize": string;
74
78
  readonly "notebook.view.documents.uploading": string;
75
79
  readonly "notebook.view.documents.maxReached": string;
76
- readonly "notebook.upload.success": string;
77
80
  readonly "notebook.upload.failed": string;
78
81
  readonly "notebook.upload.modal.title": string;
79
82
  readonly "notebook.upload.modal.dragDropTitle": string;
@@ -90,6 +93,10 @@ declare const lightspeedTranslationRef: _backstage_frontend_plugin_api.Translati
90
93
  readonly "notebook.overwrite.modal.description": string;
91
94
  readonly "notebook.overwrite.modal.action": string;
92
95
  readonly "notebook.document.delete": string;
96
+ readonly "notebook.document.delete.title": string;
97
+ readonly "notebook.document.delete.description": string;
98
+ readonly "notebook.document.delete.action": string;
99
+ readonly "notebook.document.delete.success": string;
93
100
  readonly "conversation.delete.confirm.title": string;
94
101
  readonly "conversation.delete.confirm.message": string;
95
102
  readonly "conversation.delete.confirm.action": string;
@@ -169,8 +176,6 @@ declare const lightspeedTranslationRef: _backstage_frontend_plugin_api.Translati
169
176
  readonly "tooltip.fab.close": string;
170
177
  readonly "attach.menu.title": string;
171
178
  readonly "attach.menu.description": string;
172
- readonly "history.section.pinned": string;
173
- readonly "history.section.recent": string;
174
179
  readonly "modal.title.preview": string;
175
180
  readonly "modal.title.edit": string;
176
181
  readonly "icon.lightspeed.alt": string;
@@ -206,6 +211,7 @@ declare const lightspeedTranslationRef: _backstage_frontend_plugin_api.Translati
206
211
  readonly "settings.pinned.enabled.description": string;
207
212
  readonly "settings.pinned.disabled.description": string;
208
213
  readonly "settings.mcp.label": string;
214
+ readonly "settings.mcp.badge": string;
209
215
  readonly "mcp.settings.title": string;
210
216
  readonly "mcp.settings.selectedCount": string;
211
217
  readonly "mcp.settings.closeAriaLabel": string;
@@ -4,23 +4,18 @@ import { Tooltip, Button } from '@patternfly/react-core';
4
4
  import { useTranslation } from '../hooks/useTranslation.esm.js';
5
5
  import { SidebarExpandIcon } from './notebooks/SidebarCollapseIcon.esm.js';
6
6
 
7
- const EditSquareIcon = ({ className }) => /* @__PURE__ */ jsx(
7
+ const PencilIcon = ({ className }) => /* @__PURE__ */ jsx(
8
8
  "svg",
9
9
  {
10
10
  className,
11
- width: "20",
12
- height: "20",
13
- viewBox: "0 0 24 24",
14
- fill: "none",
15
- xmlns: "http://www.w3.org/2000/svg",
16
- style: { verticalAlign: "middle" },
17
- children: /* @__PURE__ */ jsx(
18
- "path",
19
- {
20
- d: "M5 21C4.45 21 3.97917 20.8042 3.5875 20.4125C3.19583 20.0208 3 19.55 3 19V5C3 4.45 3.19583 3.97917 3.5875 3.5875C3.97917 3.19583 4.45 3 5 3H14L12 5H5V19H19V12L21 10V19C21 19.55 20.8042 20.0208 20.4125 20.4125C20.0208 20.8042 19.55 21 19 21H5ZM16.175 5.775L17.6 7.2L12 12.8V14H13.2L18.8 8.4L20.225 9.825L14.275 15.775C14.1083 15.9417 13.9167 16.0667 13.7 16.15C13.4833 16.2333 13.2583 16.275 13.025 16.275H11C10.7167 16.275 10.4792 16.1792 10.2875 15.9875C10.0958 15.7958 10 15.5583 10 15.275V13.25C10 13.0167 10.0417 12.7917 10.125 12.575C10.2083 12.3583 10.3333 12.1667 10.5 12L16.175 5.775ZM20.225 9.825L16.175 5.775L18.175 3.775C18.5583 3.39167 19.0292 3.2 19.5875 3.2C20.1458 3.2 20.6167 3.39167 21 3.775L22.225 5C22.6083 5.38333 22.8 5.85417 22.8 6.4125C22.8 6.97083 22.6083 7.44167 22.225 7.825L20.225 9.825Z",
21
- fill: "currentColor"
22
- }
23
- )
11
+ viewBox: "0 0 512 512",
12
+ fill: "currentColor",
13
+ "aria-hidden": "true",
14
+ role: "img",
15
+ width: "1em",
16
+ height: "1em",
17
+ style: { width: 16, height: 16 },
18
+ children: /* @__PURE__ */ jsx("path", { d: "M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z" })
24
19
  }
25
20
  );
26
21
  const useStyles = makeStyles((theme) => ({
@@ -38,23 +33,31 @@ const useStyles = makeStyles((theme) => ({
38
33
  height: "100%"
39
34
  },
40
35
  iconButton: {
41
- padding: 8,
36
+ padding: "8px !important",
42
37
  minWidth: 0,
43
38
  lineHeight: 1,
44
- borderRadius: "50%",
39
+ borderRadius: "8px !important",
40
+ border: "1px solid var(--pf-t--global--border--color--default) !important",
45
41
  color: "var(--pf-t--global--icon--color--regular)",
42
+ "& svg": {
43
+ width: 18,
44
+ height: 18
45
+ },
46
46
  "&:hover": {
47
- color: "var(--pf-t--global--icon--color--hover)",
48
- backgroundColor: "var(--pf-t--global--background--color--action--plain--hover)"
47
+ color: "var(--pf-t--global--icon--color--hover) !important",
48
+ backgroundColor: "var(--pf-t--global--background--color--action--plain--hover) !important"
49
49
  }
50
50
  },
51
51
  newChatIconButton: {
52
- padding: 0,
52
+ padding: "8px !important",
53
53
  minWidth: 0,
54
54
  lineHeight: 1,
55
+ borderRadius: "8px !important",
56
+ border: "1px solid var(--pf-t--global--border--color--default) !important",
55
57
  color: "var(--pf-t--global--color--brand--default)",
56
58
  "&:hover": {
57
- color: "var(--pf-t--global--color--brand--hover)"
59
+ color: "var(--pf-t--global--color--brand--hover) !important",
60
+ backgroundColor: "var(--pf-t--global--background--color--action--plain--hover) !important"
58
61
  }
59
62
  }
60
63
  }));
@@ -84,11 +87,11 @@ const CollapsedHistoryStrip = ({
84
87
  onClick: onNewChat,
85
88
  "aria-label": t("tooltip.quickNewChat"),
86
89
  isDisabled: newChatDisabled,
87
- children: /* @__PURE__ */ jsx(EditSquareIcon, {})
90
+ children: /* @__PURE__ */ jsx(PencilIcon, {})
88
91
  }
89
92
  ) })
90
93
  ] });
91
94
  };
92
95
 
93
- export { CollapsedHistoryStrip, EditSquareIcon };
96
+ export { CollapsedHistoryStrip, PencilIcon };
94
97
  //# sourceMappingURL=CollapsedHistoryStrip.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CollapsedHistoryStrip.esm.js","sources":["../../src/components/CollapsedHistoryStrip.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { makeStyles } from '@material-ui/core';\nimport { Button, Tooltip } from '@patternfly/react-core';\n\nimport { useTranslation } from '../hooks/useTranslation';\nimport { SidebarExpandIcon } from './notebooks/SidebarCollapseIcon';\n\ntype IconProps = {\n className?: string;\n};\n\nexport const EditSquareIcon = ({ className }: IconProps) => (\n <svg\n className={className}\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ verticalAlign: 'middle' }}\n >\n <path\n d=\"M5 21C4.45 21 3.97917 20.8042 3.5875 20.4125C3.19583 20.0208 3 19.55 3 19V5C3 4.45 3.19583 3.97917 3.5875 3.5875C3.97917 3.19583 4.45 3 5 3H14L12 5H5V19H19V12L21 10V19C21 19.55 20.8042 20.0208 20.4125 20.4125C20.0208 20.8042 19.55 21 19 21H5ZM16.175 5.775L17.6 7.2L12 12.8V14H13.2L18.8 8.4L20.225 9.825L14.275 15.775C14.1083 15.9417 13.9167 16.0667 13.7 16.15C13.4833 16.2333 13.2583 16.275 13.025 16.275H11C10.7167 16.275 10.4792 16.1792 10.2875 15.9875C10.0958 15.7958 10 15.5583 10 15.275V13.25C10 13.0167 10.0417 12.7917 10.125 12.575C10.2083 12.3583 10.3333 12.1667 10.5 12L16.175 5.775ZM20.225 9.825L16.175 5.775L18.175 3.775C18.5583 3.39167 19.0292 3.2 19.5875 3.2C20.1458 3.2 20.6167 3.39167 21 3.775L22.225 5C22.6083 5.38333 22.8 5.85417 22.8 6.4125C22.8 6.97083 22.6083 7.44167 22.225 7.825L20.225 9.825Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nconst useStyles = makeStyles(theme => ({\n strip: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n paddingTop: theme.spacing(1.5),\n gap: theme.spacing(1.5),\n borderRight: '1px solid var(--pf-t--global--border--color--default)',\n width: 48,\n minWidth: 48,\n flexShrink: 0,\n backgroundColor: 'var(--pf-t--global--background--color--primary--default)',\n height: '100%',\n },\n iconButton: {\n padding: 8,\n minWidth: 0,\n lineHeight: 1,\n borderRadius: '50%',\n color: 'var(--pf-t--global--icon--color--regular)',\n '&:hover': {\n color: 'var(--pf-t--global--icon--color--hover)',\n backgroundColor:\n 'var(--pf-t--global--background--color--action--plain--hover)',\n },\n },\n newChatIconButton: {\n padding: 0,\n minWidth: 0,\n lineHeight: 1,\n color: 'var(--pf-t--global--color--brand--default)',\n '&:hover': {\n color: 'var(--pf-t--global--color--brand--hover)',\n },\n },\n}));\n\ntype CollapsedHistoryStripProps = {\n onExpand: () => void;\n onNewChat: () => void;\n newChatDisabled?: boolean;\n};\n\nexport const CollapsedHistoryStrip = ({\n onExpand,\n onNewChat,\n newChatDisabled = false,\n}: CollapsedHistoryStripProps) => {\n const classes = useStyles();\n const { t } = useTranslation();\n\n return (\n <div className={classes.strip}>\n <Tooltip content={t('tooltip.expandHistoryPanel')} position=\"right\">\n <Button\n variant=\"plain\"\n className={classes.iconButton}\n onClick={onExpand}\n aria-label={t('tooltip.expandHistoryPanel')}\n >\n <SidebarExpandIcon />\n </Button>\n </Tooltip>\n <Tooltip content={t('tooltip.quickNewChat')} position=\"right\">\n <Button\n variant=\"plain\"\n className={classes.newChatIconButton}\n onClick={onNewChat}\n aria-label={t('tooltip.quickNewChat')}\n isDisabled={newChatDisabled}\n >\n <EditSquareIcon />\n </Button>\n </Tooltip>\n </div>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CollapsedHistoryStrip.esm.js","sources":["../../src/components/CollapsedHistoryStrip.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { makeStyles } from '@material-ui/core';\nimport { Button, Tooltip } from '@patternfly/react-core';\n\nimport { useTranslation } from '../hooks/useTranslation';\nimport { SidebarExpandIcon } from './notebooks/SidebarCollapseIcon';\n\ntype IconProps = {\n className?: string;\n};\n\nexport const PencilIcon = ({ className }: IconProps) => (\n <svg\n className={className}\n viewBox=\"0 0 512 512\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n role=\"img\"\n width=\"1em\"\n height=\"1em\"\n style={{ width: 16, height: 16 }}\n >\n <path d=\"M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z\" />\n </svg>\n);\n\nconst useStyles = makeStyles(theme => ({\n strip: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n paddingTop: theme.spacing(1.5),\n gap: theme.spacing(1.5),\n borderRight: '1px solid var(--pf-t--global--border--color--default)',\n width: 48,\n minWidth: 48,\n flexShrink: 0,\n backgroundColor: 'var(--pf-t--global--background--color--primary--default)',\n height: '100%',\n },\n iconButton: {\n padding: '8px !important',\n minWidth: 0,\n lineHeight: 1,\n borderRadius: '8px !important',\n border: '1px solid var(--pf-t--global--border--color--default) !important',\n color: 'var(--pf-t--global--icon--color--regular)',\n '& svg': {\n width: 18,\n height: 18,\n },\n '&:hover': {\n color: 'var(--pf-t--global--icon--color--hover) !important',\n backgroundColor:\n 'var(--pf-t--global--background--color--action--plain--hover) !important',\n },\n },\n newChatIconButton: {\n padding: '8px !important',\n minWidth: 0,\n lineHeight: 1,\n borderRadius: '8px !important',\n border: '1px solid var(--pf-t--global--border--color--default) !important',\n color: 'var(--pf-t--global--color--brand--default)',\n '&:hover': {\n color: 'var(--pf-t--global--color--brand--hover) !important',\n backgroundColor:\n 'var(--pf-t--global--background--color--action--plain--hover) !important',\n },\n },\n}));\n\ntype CollapsedHistoryStripProps = {\n onExpand: () => void;\n onNewChat: () => void;\n newChatDisabled?: boolean;\n};\n\nexport const CollapsedHistoryStrip = ({\n onExpand,\n onNewChat,\n newChatDisabled = false,\n}: CollapsedHistoryStripProps) => {\n const classes = useStyles();\n const { t } = useTranslation();\n\n return (\n <div className={classes.strip}>\n <Tooltip content={t('tooltip.expandHistoryPanel')} position=\"right\">\n <Button\n variant=\"plain\"\n className={classes.iconButton}\n onClick={onExpand}\n aria-label={t('tooltip.expandHistoryPanel')}\n >\n <SidebarExpandIcon />\n </Button>\n </Tooltip>\n <Tooltip content={t('tooltip.quickNewChat')} position=\"right\">\n <Button\n variant=\"plain\"\n className={classes.newChatIconButton}\n onClick={onNewChat}\n aria-label={t('tooltip.quickNewChat')}\n isDisabled={newChatDisabled}\n >\n <PencilIcon />\n </Button>\n </Tooltip>\n </div>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -76,7 +76,7 @@ const DeleteModal = ({
76
76
  position: "absolute",
77
77
  right: 1,
78
78
  top: 1,
79
- color: "grey.700"
79
+ color: "text.primary"
80
80
  },
81
81
  children: /* @__PURE__ */ jsx(CloseIcon, {})
82
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteModal.esm.js","sources":["../../src/components/DeleteModal.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport CloseIcon from '@mui/icons-material/Close';\nimport Alert from '@mui/material/Alert';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport IconButton from '@mui/material/IconButton';\nimport Typography from '@mui/material/Typography';\n\nimport { useDeleteConversation } from '../hooks';\nimport { useTranslation } from '../hooks/useTranslation';\n\nexport const DeleteModal = ({\n isOpen,\n conversationId,\n onClose,\n onConfirm,\n}: {\n isOpen: boolean;\n conversationId: string;\n onClose: () => void;\n onConfirm: () => void;\n}) => {\n const { t } = useTranslation();\n const {\n mutateAsync: deleteConversation,\n isError,\n error,\n isPending,\n } = useDeleteConversation();\n\n const handleDeleteConversation = async () => {\n try {\n await deleteConversation({\n conversation_id: conversationId,\n invalidateCache: false,\n });\n onConfirm();\n } catch (e) {\n // eslint-disable-next-line no-console\n console.warn(e);\n }\n };\n\n return (\n <Dialog\n open={isOpen}\n onClose={onClose}\n aria-labelledby=\"delete-modal\"\n aria-describedby=\"delete-modal-confiramtion\"\n >\n <DialogTitle sx={{ p: '16px 20px', fontStyle: 'inherit' }}>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n }}\n >\n <Typography component=\"span\" sx={{ fontWeight: 'bold' }}>\n {t('conversation.delete.confirm.title')}\n </Typography>\n\n <IconButton\n aria-label=\"close\"\n onClick={onClose}\n title={t('common.close')}\n size=\"large\"\n sx={{\n position: 'absolute',\n right: 1,\n top: 1,\n color: 'grey.700',\n }}\n >\n <CloseIcon />\n </IconButton>\n </Box>\n </DialogTitle>\n <DialogContent id=\"delete-modal-body-confirmation\">\n {t('conversation.delete.confirm.message')}\n </DialogContent>\n {isError && (\n <Box maxWidth=\"650px\" marginLeft=\"20px\" marginRight=\"20px\">\n <Alert severity=\"error\">{String(error)}</Alert>\n </Box>\n )}\n <DialogActions style={{ justifyContent: 'left', padding: '20px' }}>\n <Button\n key=\"confirm\"\n variant=\"contained\"\n color=\"error\"\n onClick={handleDeleteConversation}\n style={{ marginRight: '16px' }}\n disabled={isPending}\n >\n {t('conversation.delete.confirm.action')}\n </Button>\n <Button key=\"cancel\" variant=\"outlined\" onClick={onClose}>\n {t('common.cancel')}\n </Button>\n </DialogActions>\n </Dialog>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeleteModal.esm.js","sources":["../../src/components/DeleteModal.tsx"],"sourcesContent":["/*\n * Copyright Red Hat, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport CloseIcon from '@mui/icons-material/Close';\nimport Alert from '@mui/material/Alert';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport IconButton from '@mui/material/IconButton';\nimport Typography from '@mui/material/Typography';\n\nimport { useDeleteConversation } from '../hooks';\nimport { useTranslation } from '../hooks/useTranslation';\n\nexport const DeleteModal = ({\n isOpen,\n conversationId,\n onClose,\n onConfirm,\n}: {\n isOpen: boolean;\n conversationId: string;\n onClose: () => void;\n onConfirm: () => void;\n}) => {\n const { t } = useTranslation();\n const {\n mutateAsync: deleteConversation,\n isError,\n error,\n isPending,\n } = useDeleteConversation();\n\n const handleDeleteConversation = async () => {\n try {\n await deleteConversation({\n conversation_id: conversationId,\n invalidateCache: false,\n });\n onConfirm();\n } catch (e) {\n // eslint-disable-next-line no-console\n console.warn(e);\n }\n };\n\n return (\n <Dialog\n open={isOpen}\n onClose={onClose}\n aria-labelledby=\"delete-modal\"\n aria-describedby=\"delete-modal-confiramtion\"\n >\n <DialogTitle sx={{ p: '16px 20px', fontStyle: 'inherit' }}>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n }}\n >\n <Typography component=\"span\" sx={{ fontWeight: 'bold' }}>\n {t('conversation.delete.confirm.title')}\n </Typography>\n\n <IconButton\n aria-label=\"close\"\n onClick={onClose}\n title={t('common.close')}\n size=\"large\"\n sx={{\n position: 'absolute',\n right: 1,\n top: 1,\n color: 'text.primary',\n }}\n >\n <CloseIcon />\n </IconButton>\n </Box>\n </DialogTitle>\n <DialogContent id=\"delete-modal-body-confirmation\">\n {t('conversation.delete.confirm.message')}\n </DialogContent>\n {isError && (\n <Box maxWidth=\"650px\" marginLeft=\"20px\" marginRight=\"20px\">\n <Alert severity=\"error\">{String(error)}</Alert>\n </Box>\n )}\n <DialogActions style={{ justifyContent: 'left', padding: '20px' }}>\n <Button\n key=\"confirm\"\n variant=\"contained\"\n color=\"error\"\n onClick={handleDeleteConversation}\n style={{ marginRight: '16px' }}\n disabled={isPending}\n >\n {t('conversation.delete.confirm.action')}\n </Button>\n <Button key=\"cancel\" variant=\"outlined\" onClick={onClose}>\n {t('common.cancel')}\n </Button>\n </DialogActions>\n </Dialog>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import Tab from '@mui/material/Tab';
7
7
  import Tabs from '@mui/material/Tabs';
8
8
  import { ChatbotDisplayMode, ChatbotContent, ChatbotFooter, MessageBar, ChatbotFootnote, Settings, Chatbot, ChatbotHeader, ChatbotHeaderMain, ChatbotHeaderMenu, ChatbotHeaderTitle, FileDropZone, ChatbotAlert } from '@patternfly/chatbot';
9
9
  import ChatbotConversationHistoryNav from '@patternfly/chatbot/dist/dynamic/ChatbotConversationHistoryNav';
10
- import { DropdownItem, Tooltip, MenuToggle, Select, SelectList, SelectOption, AlertGroup, Alert, AlertVariant, AlertActionCloseButton, Title } from '@patternfly/react-core';
10
+ import { DropdownItem, Tooltip, MenuToggle, Select, SelectList, SelectOption, AlertGroup, Alert, AlertVariant, AlertActionCloseButton, Title, Label } from '@patternfly/react-core';
11
11
  import { SortAmountDownAltIcon, SortAmountDownIcon, PlusIcon, SearchIcon } from '@patternfly/react-icons';
12
12
  import { useQueryClient } from '@tanstack/react-query';
13
13
  import { UNTITLED_NOTEBOOK_NAME, TEMP_CONVERSATION_ID, supportedFileTypes } from '../const.esm.js';
@@ -39,7 +39,7 @@ import { getAttachments } from '../utils/attachment-utils.esm.js';
39
39
  import { getCategorizeMessages, getFootnoteProps } from '../utils/lightspeed-chatbox-utils.esm.js';
40
40
  import Attachment from './Attachment.esm.js';
41
41
  import { useFileAttachmentContext } from './AttachmentContext.esm.js';
42
- import { EditSquareIcon, CollapsedHistoryStrip } from './CollapsedHistoryStrip.esm.js';
42
+ import { PencilIcon, CollapsedHistoryStrip } from './CollapsedHistoryStrip.esm.js';
43
43
  import { DeleteModal } from './DeleteModal.esm.js';
44
44
  import FilePreview from './FilePreview.esm.js';
45
45
  import { LightspeedChatBox } from './LightspeedChatBox.esm.js';
@@ -270,7 +270,7 @@ const useStyles = makeStyles((theme) => ({
270
270
  margin: "0 auto"
271
271
  }
272
272
  },
273
- fullscreenMessageBar: {
273
+ messageBar: {
274
274
  border: "1px solid var(--pf-t--global--border--color--default)",
275
275
  borderRadius: 24,
276
276
  padding: theme.spacing(0.5),
@@ -294,6 +294,11 @@ const useStyles = makeStyles((theme) => ({
294
294
  transform: "translateX(-50%)",
295
295
  visibility: "hidden",
296
296
  pointerEvents: "none"
297
+ },
298
+ "& .pf-chatbot__message-contents": {
299
+ overflowX: "hidden",
300
+ overflowWrap: "break-word",
301
+ wordBreak: "break-word"
297
302
  }
298
303
  },
299
304
  chatbotContentHasOverflow: {
@@ -994,7 +999,7 @@ const LightspeedChat = ({
994
999
  );
995
1000
  const filterConversations = useCallback(
996
1001
  (targetValue) => {
997
- const pinnedChatsKey = t("conversation.category.pinnedChats") || "Pinned";
1002
+ const pinnedChatsKey = t("conversation.category.pinnedChats") || "Pinned chats";
998
1003
  let isNoPinnedChatsSearchResults = false;
999
1004
  let isNoRecentChatsSearchResults = false;
1000
1005
  const filteredConversations = Object.entries(categorizedMessages).reduce(
@@ -1377,17 +1382,17 @@ const LightspeedChat = ({
1377
1382
  /* @__PURE__ */ jsxs(
1378
1383
  ChatbotFooter,
1379
1384
  {
1380
- className: isFullscreenMode ? `${classes.footer} ${classes.fullscreenFooter}` : classes.footer,
1385
+ className: `${classes.footer} ${classes.fullscreenFooter}`,
1381
1386
  children: [
1382
1387
  /* @__PURE__ */ jsx(FilePreview, {}),
1383
1388
  /* @__PURE__ */ jsx(
1384
1389
  MessageBar,
1385
1390
  {
1386
- className: isFullscreenMode ? classes.fullscreenMessageBar : void 0,
1391
+ className: classes.messageBar,
1387
1392
  onSendMessage: sendMessage,
1388
1393
  isSendButtonDisabled,
1389
1394
  hasAttachButton: true,
1390
- attachButtonPosition: isFullscreenMode ? "start" : void 0,
1395
+ attachButtonPosition: "start",
1391
1396
  handleAttach,
1392
1397
  hasMicrophoneButton: true,
1393
1398
  value: draftMessage,
@@ -1399,7 +1404,7 @@ const LightspeedChat = ({
1399
1404
  inputTestId: "attachment-input",
1400
1405
  tooltipContent: t("tooltip.attach"),
1401
1406
  "aria-label": t("tooltip.attach"),
1402
- ...isFullscreenMode && { icon: /* @__PURE__ */ jsx(PlusIcon, {}) }
1407
+ icon: /* @__PURE__ */ jsx(PlusIcon, {})
1403
1408
  },
1404
1409
  microphone: {
1405
1410
  tooltipContent: {
@@ -1411,7 +1416,7 @@ const LightspeedChat = ({
1411
1416
  tooltipContent: t("tooltip.send")
1412
1417
  }
1413
1418
  },
1414
- additionalActions: isFullscreenMode ? /* @__PURE__ */ jsx(
1419
+ additionalActions: /* @__PURE__ */ jsx(
1415
1420
  MessageBarModelSelector,
1416
1421
  {
1417
1422
  selectedModel,
@@ -1423,8 +1428,8 @@ const LightspeedChat = ({
1423
1428
  },
1424
1429
  disabled: isSendButtonDisabled
1425
1430
  }
1426
- ) : void 0,
1427
- forceMultilineLayout: isFullscreenMode,
1431
+ ),
1432
+ forceMultilineLayout: true,
1428
1433
  allowedFileTypes: supportedFileTypes,
1429
1434
  onAttachRejected,
1430
1435
  placeholder: t("chatbox.message.placeholder")
@@ -1582,7 +1587,7 @@ const LightspeedChat = ({
1582
1587
  models,
1583
1588
  isPinningChatsEnabled,
1584
1589
  isModelSelectorDisabled: isSendButtonDisabled,
1585
- hideModelSelector: showNotebooksPanel || isFullscreenMode,
1590
+ hideModelSelector: true,
1586
1591
  showChatTabOptions: !showNotebooksPanel,
1587
1592
  setDisplayMode: setDisplayModeFromHeader,
1588
1593
  displayMode,
@@ -1642,7 +1647,31 @@ const LightspeedChat = ({
1642
1647
  Tab,
1643
1648
  {
1644
1649
  disableRipple: true,
1645
- label: t("tabs.notebooks"),
1650
+ label: /* @__PURE__ */ jsxs(
1651
+ "span",
1652
+ {
1653
+ style: {
1654
+ display: "inline-flex",
1655
+ alignItems: "center",
1656
+ gap: 8
1657
+ },
1658
+ children: [
1659
+ t("tabs.notebooks"),
1660
+ /* @__PURE__ */ jsx(
1661
+ Label,
1662
+ {
1663
+ color: "purple",
1664
+ style: {
1665
+ alignSelf: "center",
1666
+ margin: 0,
1667
+ lineHeight: 1
1668
+ },
1669
+ children: t("tabs.notebooks.devPreview")
1670
+ }
1671
+ )
1672
+ ]
1673
+ }
1674
+ ),
1646
1675
  "aria-label": t("tabs.notebooks")
1647
1676
  }
1648
1677
  )
@@ -1688,7 +1717,7 @@ const LightspeedChat = ({
1688
1717
  onNewChat: newChatCreated ? void 0 : onNewChat,
1689
1718
  newChatButtonText: t("button.newChat"),
1690
1719
  newChatButtonProps: {
1691
- icon: isFullscreenMode ? /* @__PURE__ */ jsx(EditSquareIcon, {}) : /* @__PURE__ */ jsx(PlusIcon, {})
1720
+ icon: isFullscreenMode ? /* @__PURE__ */ jsx(PencilIcon, {}) : /* @__PURE__ */ jsx(PlusIcon, {})
1692
1721
  },
1693
1722
  handleTextInputChange: handleFilter,
1694
1723
  searchInputPlaceholder: t("chatbox.search.placeholder"),