@genexus/genexus-ide-ui 1.0.49 → 1.0.51

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 (96) hide show
  1. package/dist/cjs/assets-manager-7227a74b.js.map +1 -1
  2. package/dist/cjs/code-render-a496a55b.js +50 -0
  3. package/dist/cjs/code-render-a496a55b.js.map +1 -0
  4. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  5. package/dist/cjs/gx-ide-chat-container.cjs.entry.js +11 -2
  6. package/dist/cjs/gx-ide-chat-container.cjs.entry.js.map +1 -1
  7. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +13 -44
  8. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js.map +1 -1
  9. package/dist/cjs/index.cjs.js +9 -0
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/collection/components/_helpers/chat-container/chat-container.js +27 -3
  13. package/dist/collection/components/_helpers/chat-container/chat-container.js.map +1 -1
  14. package/dist/collection/components/_helpers/chat-container/code-render.js +3 -3
  15. package/dist/collection/components/_helpers/chat-container/code-render.js.map +1 -1
  16. package/dist/collection/index.js +1 -0
  17. package/dist/collection/index.js.map +1 -1
  18. package/dist/collection/showcase/chat-container/chat.showcase.js +14 -4
  19. package/dist/collection/showcase/chat-container/chat.showcase.js.map +1 -1
  20. package/dist/components/MERCURY_ASSETS.js +0 -4
  21. package/dist/components/MERCURY_ASSETS.js.map +1 -1
  22. package/dist/components/ai-message.js +2 -1
  23. package/dist/components/ai-message.js.map +1 -1
  24. package/dist/components/assets-manager.js +5 -0
  25. package/dist/components/assets-manager.js.map +1 -0
  26. package/dist/components/chat-container.js +14 -3
  27. package/dist/components/chat-container.js.map +1 -1
  28. package/dist/components/code-render.js +47 -0
  29. package/dist/components/code-render.js.map +1 -0
  30. package/dist/components/entity-selector.js +2 -1
  31. package/dist/components/entity-selector.js.map +1 -1
  32. package/dist/components/gx-ide-create-kb-from-server.js +2 -1
  33. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  34. package/dist/components/gx-ide-current-user-info.js +2 -1
  35. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  36. package/dist/components/gx-ide-dashboard-home.js +2 -1
  37. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  38. package/dist/components/gx-ide-data-selector.js +2 -1
  39. package/dist/components/gx-ide-data-selector.js.map +1 -1
  40. package/dist/components/gx-ide-data-type-selector.js +2 -1
  41. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  42. package/dist/components/gx-ide-design-import.js +2 -1
  43. package/dist/components/gx-ide-design-import.js.map +1 -1
  44. package/dist/components/gx-ide-kb-manager-export.js +2 -1
  45. package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
  46. package/dist/components/gx-ide-kb-manager-import.js +2 -1
  47. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  48. package/dist/components/gx-ide-manage-module-references-v2.js +2 -1
  49. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  50. package/dist/components/gx-ide-manage-module-references.js +2 -1
  51. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  52. package/dist/components/gx-ide-new-kb.js +2 -1
  53. package/dist/components/gx-ide-new-kb.js.map +1 -1
  54. package/dist/components/gx-ide-object-selector.js +2 -1
  55. package/dist/components/gx-ide-object-selector.js.map +1 -1
  56. package/dist/components/gx-ide-sc-chat-container.js +16 -47
  57. package/dist/components/gx-ide-sc-chat-container.js.map +1 -1
  58. package/dist/components/gx-ide-share-kb.js +2 -1
  59. package/dist/components/gx-ide-share-kb.js.map +1 -1
  60. package/dist/components/gx-ide-start-page.js +2 -1
  61. package/dist/components/gx-ide-start-page.js.map +1 -1
  62. package/dist/components/gx-ide-welcome-page.js +2 -1
  63. package/dist/components/gx-ide-welcome-page.js.map +1 -1
  64. package/dist/components/gx-ide-ww-attributes.js +2 -1
  65. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  66. package/dist/components/index.js +2 -0
  67. package/dist/components/index.js.map +1 -1
  68. package/dist/esm/assets-manager-0d129105.js.map +1 -1
  69. package/dist/esm/code-render-89a0d3ef.js +47 -0
  70. package/dist/esm/code-render-89a0d3ef.js.map +1 -0
  71. package/dist/esm/genexus-ide-ui.js +1 -1
  72. package/dist/esm/gx-ide-chat-container.entry.js +11 -2
  73. package/dist/esm/gx-ide-chat-container.entry.js.map +1 -1
  74. package/dist/esm/gx-ide-sc-chat-container.entry.js +14 -45
  75. package/dist/esm/gx-ide-sc-chat-container.entry.js.map +1 -1
  76. package/dist/esm/index.js +4 -0
  77. package/dist/esm/index.js.map +1 -1
  78. package/dist/esm/loader.js +1 -1
  79. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  80. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  81. package/dist/genexus-ide-ui/index.esm.js +6 -0
  82. package/dist/genexus-ide-ui/index.esm.js.map +1 -1
  83. package/dist/genexus-ide-ui/p-6e4208d8.js.map +1 -1
  84. package/dist/genexus-ide-ui/p-732941de.js +68 -0
  85. package/dist/genexus-ide-ui/p-732941de.js.map +1 -0
  86. package/dist/genexus-ide-ui/{p-5afe1477.entry.js → p-c1791757.entry.js} +27 -12
  87. package/dist/genexus-ide-ui/{p-5afe1477.entry.js.map → p-c1791757.entry.js.map} +1 -1
  88. package/dist/genexus-ide-ui/{p-72867329.entry.js → p-dd6bbdd5.entry.js} +49 -99
  89. package/dist/genexus-ide-ui/p-dd6bbdd5.entry.js.map +1 -0
  90. package/dist/types/components/_helpers/chat-container/chat-container.d.ts +5 -1
  91. package/dist/types/components/_helpers/chat-container/code-render.d.ts +1 -1
  92. package/dist/types/components.d.ts +10 -2
  93. package/dist/types/index.d.ts +1 -0
  94. package/dist/types/showcase/chat-container/chat.showcase.d.ts +2 -0
  95. package/package.json +3 -3
  96. package/dist/genexus-ide-ui/p-72867329.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"assets-manager-7227a74b.js","mappings":";;AAAkB,MAAW,CAAC,CAAC,GAAG,CAAmB,MAAC,aAAa,CAAC,KAAK,CAAiN,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,OAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;;;;","names":[],"sources":["node_modules/@genexus/mercury/dist/assets-manager.js"],"sourcesContent":["\"use strict\";const a={},d={},g=\"/\",u=\":\";export const MERCURY_ALIAS=\"mer\",registerAssets=(e,t,r)=>{a[e]||d[t]||(a[e]=r,d[t]=e)},getAsset=(e,t)=>{const r=d[e]??e,n=a[r];if(!n)return;const o=n.icons[t.category];if(!o)return;const c=o[t.name];if(c)return t.colorType?c[t.colorType]:c},getIconPath=(e,t=MERCURY_ALIAS)=>{const r=e.colorType?`${g}${e.colorType}`:\"\";return`${t}${g}${e.category}${g}${e.name}${r}`},getIconPathExpanded=(e,t,r=MERCURY_ALIAS)=>`${getIconPath(e,r)}${u}${getIconPath(t,r)}`;const l=(e,t,r)=>{const n=t===MERCURY_ALIAS?\"\":`-${t}`;return r?`var(--icon${n}__${e}--${r})`:`var(--icon${n}__${e})`},f=e=>{const t=e.split(g),r=t[0],n=d[r]??r;if(!a[n]){const i=t[0],S=t[1],p=t[2];return{vendor:MERCURY_ALIAS,category:i,name:S,colorType:p}}const c=t[1],s=t[2],m=t[3];return{vendor:r,category:c,name:s,colorType:m}};export const getImagePathCallback=e=>{const{vendor:t,category:r,name:n,colorType:o}=f(e),c=getAsset(t,o?{category:r,name:n,colorType:o}:{category:r,name:n});if(!c)return;const s={base:l(c.enabled.name,t)};return c.hover&&(s.hover=l(c.hover.name,t)),c.active&&(s.active=l(c.active.name,t)),c.disabled&&(s.disabled=l(c.disabled.name,t)),s},getActionMenuImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getActionListImagePathCallback=e=>e.imgSrc?getImagePathCallback(e.imgSrc):void 0,getNavigationListImagePathCallback=e=>e.startImgSrc?getImagePathCallback(e.startImgSrc):void 0,getTreeViewImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const n=(t===\"start\"?e.startImgSrc:e.endImgSrc).split(u),o=getImagePathCallback(n[0]);if(o)return n[1]?{default:o,expanded:getImagePathCallback(n[1])}:{default:o}},getComboBoxImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getImagePathCallbackDefinitions={\"ch-accordion-render\":getImagePathCallback,\"ch-action-menu-render\":getActionMenuImagePathCallback,\"ch-action-list-render\":getActionListImagePathCallback,\"ch-combo-box-render\":getComboBoxImagePathCallback,\"ch-navigation-list-render\":getNavigationListImagePathCallback,\"ch-checkbox\":getImagePathCallback,\"ch-edit\":getImagePathCallback,\"ch-image\":getImagePathCallback,\"ch-tree-view-render\":getTreeViewImagePathCallback};\n"],"version":3}
1
+ {"file":"assets-manager-7227a74b.js","mappings":";;AAAkB,MAAW,CAAC,CAAC,GAAG,CAAmB,MAAC,aAAa,CAAC,KAAK,CAAiN,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,OAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;;;;","names":[],"sources":["node_modules/@genexus/mercury/dist/assets-manager.js"],"sourcesContent":["\"use strict\";const a={},d={},g=\"/\",u=\":\";export const MERCURY_ALIAS=\"mer\",registerAssets=(e,t,r)=>{a[e]||d[t]||(a[e]=r,d[t]=e)},getAsset=(e,t)=>{const r=d[e]??e,n=a[r];if(!n)return;const o=n.icons[t.category];if(!o)return;const c=o[t.name];if(c)return t.colorType?c[t.colorType]:c},getIconPath=(e,t=MERCURY_ALIAS)=>{const r=e.colorType?`${g}${e.colorType}`:\"\";return`${t}${g}${e.category}${g}${e.name}${r}`},getIconPathExpanded=(e,t,r=MERCURY_ALIAS)=>`${getIconPath(e,r)}${u}${getIconPath(t,r)}`;const l=(e,t,r)=>{const n=t===MERCURY_ALIAS?\"\":`-${t}`;return r?`var(--icon${n}__${e}--${r})`:`var(--icon${n}__${e})`},f=e=>{const t=e.split(g),r=t[0],n=d[r]??r;if(!a[n]){const i=t[0],S=t[1],p=t[2];return{vendor:MERCURY_ALIAS,category:i,name:S,colorType:p}}const c=t[1],s=t[2],m=t[3];return{vendor:r,category:c,name:s,colorType:m}};export const getImagePathCallback=e=>{const{vendor:t,category:r,name:n,colorType:o}=f(e),c=getAsset(t,o?{category:r,name:n,colorType:o}:{category:r,name:n});if(!c)return;const s={base:l(c.enabled.name,t)};return c.hover&&(s.hover=l(c.hover.name,t)),c.active&&(s.active=l(c.active.name,t)),c.disabled&&(s.disabled=l(c.disabled.name,t)),s},getActionMenuImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getActionListImagePathCallback=e=>e.imgSrc?getImagePathCallback(e.imgSrc):void 0,getNavigationListImagePathCallback=e=>e.startImgSrc?getImagePathCallback(e.startImgSrc):void 0,getTreeViewImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const n=(t===\"start\"?e.startImgSrc:e.endImgSrc).split(u),o=getImagePathCallback(n[0]);if(o)return n[1]?{default:o,expanded:getImagePathCallback(n[1])}:{default:o}},getComboBoxImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getImagePathCallbackDefinitions={\"ch-accordion-render\":getImagePathCallback,\"ch-action-menu-render\":getActionMenuImagePathCallback,\"ch-action-list-render\":getActionListImagePathCallback,\"ch-combo-box-render\":getComboBoxImagePathCallback,\"ch-checkbox\":getImagePathCallback,\"ch-edit\":getImagePathCallback,\"ch-image\":getImagePathCallback,\"ch-navigation-list-render\":getNavigationListImagePathCallback,\"ch-tab-render\":getImagePathCallback,\"ch-tree-view-render\":getTreeViewImagePathCallback};\n"],"version":3}
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ const index = require('./index-caaa95cf.js');
4
+ require('./MERCURY_ASSETS-ac982891.js');
5
+
6
+ const MESSAGE_COPIED_PART_SELECTOR = "message__copied-feedback";
7
+ const MESSAGE_COPIED_VISIBLE_PART_SELECTOR = "message__copied-feedback-visible";
8
+ const copy = (text) => (event) => {
9
+ event.stopPropagation();
10
+ // 1. Copy message
11
+ navigator.clipboard.writeText(text);
12
+ // 2. Display "copied" message (expects to be the next sibling!)
13
+ const copiedFeedbackRef = event.target
14
+ .nextSibling;
15
+ const copiedFeedbackPart = copiedFeedbackRef.getAttribute("part");
16
+ if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {
17
+ copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`);
18
+ setTimeout(() => {
19
+ copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR}`);
20
+ }, 1000);
21
+ }
22
+ };
23
+ const copyButton = (textToCopy, accessibleName, additionalPart) => {
24
+ return (index.h("button", { "aria-label": accessibleName, title: accessibleName, class: "button-copy-code", type: "button", onClick: copy(textToCopy), part: `message__copy-button ${additionalPart}` }));
25
+ };
26
+ const mercuryCodeRender = (copyButtonAccessibleName) => (options) => (index.h("div", { class: "code-block-container" },
27
+ index.h("div", { class: "code-block-header" }, copyButton(options.plainText, copyButtonAccessibleName, "code-render")),
28
+ index.h("ch-code", { language: options.language, lastNestedChildClass: options.lastNestedChildClass, value: options.plainText })));
29
+ const mercuryChatMessageRender = (theme, userName = "You", assistantName = "AI Assistant", assistantTaskDescription = "Processing request") => (messageModel) => messageModel.role === "assistant" && messageModel.status === "waiting"
30
+ ? [
31
+ index.h("span", { part: "message__processing" }, assistantTaskDescription),
32
+ index.h("div", { class: "processing-animation", part: "processing-animation" })
33
+ ]
34
+ : [
35
+ // "copy button" before "role" and "time" to hide both on button:focus
36
+ copyButton(messageModel.content, "Copy code", "common-message"),
37
+ index.h("p", { part: MESSAGE_COPIED_PART_SELECTOR }, "message copied to clipboard"),
38
+ index.h("span", { part: `message__role ${messageModel.role}` }, messageModel.role === "user" ? userName : assistantName),
39
+ index.h("time", { dateTime: messageModel.metadata, part: "message__time" }, messageModel.metadata),
40
+ messageModel.role === "user" ? (index.h("span", { part: "message__content user" }, messageModel.content)) : (index.h("ch-markdown-viewer", { part: messageModel.role === "assistant" &&
41
+ (messageModel.status === "complete" || !messageModel.status) &&
42
+ !messageModel.parts
43
+ ? `message__content no-error`
44
+ : "message__content", theme: theme, showIndicator: false, renderCode: mercuryCodeRender("Copy code"), value: messageModel.content }))
45
+ ];
46
+
47
+ exports.mercuryChatMessageRender = mercuryChatMessageRender;
48
+ exports.mercuryCodeRender = mercuryCodeRender;
49
+
50
+ //# sourceMappingURL=code-render-a496a55b.js.map
@@ -0,0 +1 @@
1
+ {"file":"code-render-a496a55b.js","mappings":"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","names":["h"],"sources":["src/components/_helpers/chat-container/code-render.tsx"],"sourcesContent":["import { h } from \"@stencil/core\";\nimport {\n MarkdownViewerCodeRender,\n ChatMessageByRole\n} from \"@genexus/chameleon-controls-library\";\nimport { MarkdownViewerCodeRenderOptions } from \"@genexus/chameleon-controls-library/dist/types/components/markdown-viewer/parsers/types\";\nimport { getIconPath } from \"@genexus/mercury\";\ngetIconPath;\n\nconst MESSAGE_COPIED_PART_SELECTOR = \"message__copied-feedback\";\nconst MESSAGE_COPIED_VISIBLE_PART_SELECTOR = \"message__copied-feedback-visible\";\n\nconst copy = (text: string) => (event: Event) => {\n event.stopPropagation();\n\n // 1. Copy message\n navigator.clipboard.writeText(text);\n\n // 2. Display \"copied\" message (expects to be the next sibling!)\n const copiedFeedbackRef = (event.target as HTMLElement)\n .nextSibling as HTMLElement;\n const copiedFeedbackPart = copiedFeedbackRef.getAttribute(\"part\");\n if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {\n copiedFeedbackRef.setAttribute(\n \"part\",\n `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`\n );\n\n setTimeout(() => {\n copiedFeedbackRef.setAttribute(\"part\", `${MESSAGE_COPIED_PART_SELECTOR}`);\n }, 1000);\n }\n};\n\nconst copyButton = (\n textToCopy: string,\n accessibleName: string,\n additionalPart: string\n) => {\n return (\n <button\n aria-label={accessibleName}\n title={accessibleName}\n class=\"button-copy-code\"\n type=\"button\"\n onClick={copy(textToCopy)}\n part={`message__copy-button ${additionalPart}`}\n ></button>\n );\n};\n\nexport const mercuryCodeRender =\n (copyButtonAccessibleName: string) =>\n (options: MarkdownViewerCodeRenderOptions): MarkdownViewerCodeRender =>\n (\n <div class=\"code-block-container\">\n <div class=\"code-block-header\">\n {copyButton(\n options.plainText,\n copyButtonAccessibleName,\n \"code-render\"\n )}\n </div>\n <ch-code\n language={options.language}\n lastNestedChildClass={options.lastNestedChildClass}\n value={options.plainText}\n ></ch-code>\n </div>\n );\n\nexport const mercuryChatMessageRender =\n (\n theme: string,\n userName: string = \"You\",\n assistantName: string = \"AI Assistant\",\n assistantTaskDescription: string = \"Processing request\"\n ) =>\n (messageModel: ChatMessageByRole<\"assistant\" | \"error\" | \"user\">) =>\n messageModel.role === \"assistant\" && messageModel.status === \"waiting\"\n ? [\n <span part=\"message__processing\">{assistantTaskDescription}</span>,\n\n <div class=\"processing-animation\" part=\"processing-animation\"></div>\n ]\n : [\n // \"copy button\" before \"role\" and \"time\" to hide both on button:focus\n copyButton(\n messageModel.content as string,\n \"Copy code\",\n \"common-message\"\n ),\n <p part={MESSAGE_COPIED_PART_SELECTOR}>\n message copied to clipboard\n </p>,\n <span part={`message__role ${messageModel.role}`}>\n {messageModel.role === \"user\" ? userName : assistantName}\n </span>,\n <time dateTime={messageModel.metadata} part=\"message__time\">\n {messageModel.metadata}\n </time>,\n\n messageModel.role === \"user\" ? (\n <span part=\"message__content user\">{messageModel.content}</span>\n ) : (\n <ch-markdown-viewer\n part={\n messageModel.role === \"assistant\" &&\n (messageModel.status === \"complete\" || !messageModel.status) &&\n !messageModel.parts\n ? `message__content no-error`\n : \"message__content\"\n }\n theme={theme}\n showIndicator={false}\n renderCode={mercuryCodeRender(\"Copy code\")}\n value={messageModel.content as string}\n ></ch-markdown-viewer>\n )\n ];\n"],"version":3}
@@ -17,7 +17,7 @@ const patchBrowser = () => {
17
17
  };
18
18
 
19
19
  patchBrowser().then(options => {
20
- return index.bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl.cjs\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files.cjs\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import.cjs\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment.cjs\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update.cjs\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector.cjs\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references.cjs\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2.cjs\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report.cjs\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector.cjs\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes.cjs\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images.cjs\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration.cjs\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles.cjs\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm.cjs\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration.cjs\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import.cjs\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server.cjs\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-gam-installation-settings.cjs\",[[1,\"gx-ide-gam-installation-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"repairCallback\":[16],\"saveCallback\":[16],\"cancelCallback\":[16],\"defaultConfiguration\":[16],\"canSelectPanels\":[4,\"can-select-panels\"]}]]],[\"gx-ide-kb-manager-export.cjs\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-references.cjs\",[[1,\"gx-ide-references\",{\"displayTitle\":[4,\"display-title\"],\"selectedObject\":[1040],\"selectorSourceCallback\":[16],\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32],\"barHidden\":[32],\"objectsSuggestions\":[32]},null,{\"selectedObject\":[\"selectedObjectHandler\"]}]]],[\"gx-ide-empty-state.cjs\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-start-page.cjs\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit.cjs\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection.cjs\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision.cjs\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template.cjs\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings.cjs\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant.cjs\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home.cjs\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector.cjs\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-new-object.cjs\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-sc-chat-container.cjs\",[[1,\"gx-ide-sc-chat-container\",{\"showAdditionalContent\":[32],\"conversationCopied\":[32]}]]],[\"gx-ide-select-user-team.cjs\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team.cjs\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-card.cjs\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server.cjs\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server.cjs\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info.cjs\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector.cjs\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-new-environment.cjs\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb.cjs\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-share-kb.cjs\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in.cjs\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash.cjs\",[[1,\"gx-ide-splash\",{\"version\":[1],\"removeSplash\":[4,\"remove-splash\"],\"splashVisible\":[32]},null,{\"removeSplash\":[\"removeSplashChanged\"]}]]],[\"gx-ide-switch-panel.cjs\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher.cjs\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test.cjs\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar.cjs\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page.cjs\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-container_2.cjs\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]],[\"gx-ide-bpm-objects-selector.cjs\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message.cjs\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-chat-container.cjs\",[[4,\"gx-ide-chat-container\",{\"chatTitle\":[1,\"chat-title\"],\"copyConversationCallback\":[16],\"displayConversationCopiedMessage\":[32],\"showCopyConversationMessage\":[64]}]]],[\"gx-ide-status-buttons.cjs\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-entity-selector.cjs\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-loader.cjs\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-list-selector_2.cjs\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]]]"), options);
20
+ return index.bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl.cjs\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files.cjs\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import.cjs\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment.cjs\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update.cjs\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector.cjs\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references.cjs\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2.cjs\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report.cjs\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector.cjs\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes.cjs\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images.cjs\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration.cjs\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles.cjs\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm.cjs\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration.cjs\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import.cjs\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server.cjs\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-gam-installation-settings.cjs\",[[1,\"gx-ide-gam-installation-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"repairCallback\":[16],\"saveCallback\":[16],\"cancelCallback\":[16],\"defaultConfiguration\":[16],\"canSelectPanels\":[4,\"can-select-panels\"]}]]],[\"gx-ide-kb-manager-export.cjs\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-references.cjs\",[[1,\"gx-ide-references\",{\"displayTitle\":[4,\"display-title\"],\"selectedObject\":[1040],\"selectorSourceCallback\":[16],\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32],\"barHidden\":[32],\"objectsSuggestions\":[32]},null,{\"selectedObject\":[\"selectedObjectHandler\"]}]]],[\"gx-ide-empty-state.cjs\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-start-page.cjs\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit.cjs\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection.cjs\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision.cjs\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template.cjs\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings.cjs\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant.cjs\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home.cjs\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector.cjs\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-new-object.cjs\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-sc-chat-container.cjs\",[[1,\"gx-ide-sc-chat-container\",{\"showAdditionalContent\":[32],\"conversationCopied\":[32],\"assistantStatus\":[32]}]]],[\"gx-ide-select-user-team.cjs\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team.cjs\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-card.cjs\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server.cjs\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server.cjs\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info.cjs\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector.cjs\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-new-environment.cjs\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb.cjs\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-share-kb.cjs\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in.cjs\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash.cjs\",[[1,\"gx-ide-splash\",{\"version\":[1],\"removeSplash\":[4,\"remove-splash\"],\"splashVisible\":[32]},null,{\"removeSplash\":[\"removeSplashChanged\"]}]]],[\"gx-ide-switch-panel.cjs\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher.cjs\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test.cjs\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar.cjs\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page.cjs\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-container_2.cjs\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]],[\"gx-ide-bpm-objects-selector.cjs\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message.cjs\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-chat-container.cjs\",[[4,\"gx-ide-chat-container\",{\"chatTitle\":[1,\"chat-title\"],\"copyConversationCallback\":[16],\"deleteConversationCallback\":[16],\"displayConversationCopiedMessage\":[32],\"showCopyConversationMessage\":[64]}]]],[\"gx-ide-status-buttons.cjs\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-entity-selector.cjs\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-loader.cjs\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-list-selector_2.cjs\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]]]"), options);
21
21
  });
22
22
 
23
23
  exports.setNonce = index.setNonce;
@@ -21,6 +21,11 @@ const COPY_ICON = assetsManager.getIconPath({
21
21
  name: "copy",
22
22
  colorType: "neutral"
23
23
  });
24
+ const DELETE_ICON = assetsManager.getIconPath({
25
+ category: "system",
26
+ name: "delete-outlined",
27
+ colorType: "error"
28
+ });
24
29
  const CONVERSATION_ICON = assetsManager.getIconPath({
25
30
  category: "objects",
26
31
  name: "conversational-flows"
@@ -30,6 +35,7 @@ const GxIdeChatContainer = class {
30
35
  index.registerInstance(this, hostRef);
31
36
  this.chatTitle = undefined;
32
37
  this.copyConversationCallback = undefined;
38
+ this.deleteConversationCallback = undefined;
33
39
  this.displayConversationCopiedMessage = false;
34
40
  }
35
41
  /**
@@ -42,8 +48,11 @@ const GxIdeChatContainer = class {
42
48
  }, 2000);
43
49
  }
44
50
  render() {
45
- const renderHeader = this.chatTitle || this.copyConversationCallback;
46
- return (index.h(index.Host, { class: "chat-container" }, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("section", { class: "section" }, renderHeader && (index.h("header", { class: "chat-container__header elevation-1 body-italic-m" }, this.chatTitle && this.chatTitle, this.copyConversationCallback && (index.h("button", { class: "button-secondary button-icon-only", onClick: this.copyConversationCallback }, index.h("ch-image", { class: "icon-md", src: COPY_ICON, onClick: this.copyConversationCallback }))))), index.h("section", { class: "chat-container__ch-chat" }, index.h("slot", null), this.displayConversationCopiedMessage && (index.h("div", { class: "chat-container__conversation-copied" }, index.h("div", { class: "chat-container__conversation-copied-wrapper" }, index.h("ch-image", { class: "icon-md", src: CONVERSATION_ICON }), index.h("p", { class: "body-regular-l" }, "conversation copied"))))))));
51
+ const renderHeader = this.chatTitle ||
52
+ this.copyConversationCallback ||
53
+ this.deleteConversationCallback;
54
+ const renderButtonsGroup = this.copyConversationCallback || this.deleteConversationCallback;
55
+ return (index.h(index.Host, { class: "chat-container" }, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("section", { class: "section" }, renderHeader && (index.h("header", { class: "chat-container__header elevation-1 body-italic-m" }, this.chatTitle && this.chatTitle, renderButtonsGroup && (index.h("div", { class: "buttons-spacer" }, this.deleteConversationCallback && (index.h("button", { class: "button-secondary button-icon-only", onClick: this.deleteConversationCallback }, index.h("ch-image", { class: "icon-md", src: DELETE_ICON }))), this.copyConversationCallback && (index.h("button", { class: "button-secondary button-icon-only", onClick: this.copyConversationCallback }, index.h("ch-image", { class: "icon-md", src: COPY_ICON }))))))), index.h("section", { class: "chat-container__ch-chat" }, index.h("slot", null), this.displayConversationCopiedMessage && (index.h("div", { class: "chat-container__conversation-copied" }, index.h("div", { class: "chat-container__conversation-copied-wrapper" }, index.h("ch-image", { class: "icon-md", src: CONVERSATION_ICON }), index.h("p", { class: "body-regular-l" }, "conversation copied"))))))));
47
56
  }
48
57
  };
49
58
  GxIdeChatContainer.style = chatContainerCss;
@@ -1 +1 @@
1
- {"file":"gx-ide-chat-container.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,gBAAgB,GAAG,isHAAisH;;ACG1tH,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAGA,yBAAW,CAAC;IAC5B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AACH,MAAM,iBAAiB,GAAGA,yBAAW,CAAC;IACpC,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,sBAAsB;CAC7B,CAAC,CAAC;MAOU,kBAAkB;;;;;gDAcwB,KAAK;;;;;IAM1D,MAAM,2BAA2B;QAC/B,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAC7C,UAAU,CAAC;YACT,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;SAC/C,EAAE,IAAI,CAAC,CAAC;KACV;IAED,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,wBAAwB,CAAC;QACrE,QACEC,QAACC,UAAI,IAAC,KAAK,EAAC,gBAAgB,IAC1BD,sBAAU,KAAK,EAAE,WAAW,GAAa,EACzCA,qBAAS,KAAK,EAAC,SAAS,IACrB,YAAY,KACXA,oBAAQ,KAAK,EAAC,kDAAkD,IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAChC,IAAI,CAAC,wBAAwB,KAC5BA,oBACE,KAAK,EAAC,mCAAmC,EACzC,OAAO,EAAE,IAAI,CAAC,wBAAwB,IAEtCA,sBACE,KAAK,EAAC,SAAS,EACf,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,IAAI,CAAC,wBAAwB,GAC5B,CACL,CACV,CACM,CACV,EACDA,qBAAS,KAAK,EAAC,yBAAyB,IACtCA,qBAAa,EACZ,IAAI,CAAC,gCAAgC,KACpCA,iBAAK,KAAK,EAAC,qCAAqC,IAC9CA,iBAAK,KAAK,EAAC,6CAA6C,IACtDA,sBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,iBAAiB,GAAa,EAC7DA,eAAG,KAAK,EAAC,gBAAgB,0BAAwB,CAC7C,CACF,CACP,CACO,CAEF,CACL,EACP;KACH;;;;;;","names":["getIconPath","h","Host"],"sources":["src/components/_helpers/chat-container/chat-container.scss?tag=gx-ide-chat-container","src/components/_helpers/chat-container/chat-container.tsx"],"sourcesContent":[".chat-container {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n gap: var(--mer-spacing--xs);\n padding: var(--mer-spacing--xs);\n position: relative;\n --chat-common-border-radius: var(--mer-spacing--2xs);\n}\n.section {\n display: contents;\n}\n\n// header\n.chat-container__header {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n justify-content: space-between;\n}\n\n// ch-chat container\n.chat-container__ch-chat {\n overflow: auto;\n position: relative;\n display: grid;\n}\n\n// footer\n\n// header & footer (common styles)\n.chat-container__header,\n.chat-container__footer {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n border-radius: var(--chat-common-border-radius);\n}\n\n.chat-container__conversation-copied {\n position: absolute;\n z-index: 1;\n inline-size: 100%;\n block-size: 100%;\n background: rgba(22, 22, 23, 0.75);\n backdrop-filter: saturate(180%) blur(20px);\n display: grid;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 32px;\n --mer-icon__box--md: 18px;\n pointer-events: none;\n overflow: hidden;\n animation: fadeIn 100ms ease-in-out forwards;\n opacity: 0;\n}\n.chat-container__conversation-copied-wrapper {\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n}\n.chat-container__conversation-copied-wrapper {\n animation: liftUp var(--mer-timing--fast) ease-in-out forwards;\n inset-block-start: 4px;\n opacity: 0;\n animation-delay: var(--mer-timing--fast);\n position: relative;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes liftUp {\n from {\n opacity: 0;\n inset-block-start: 4px;\n }\n to {\n opacity: 1;\n inset-block-start: 0;\n }\n}\n\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n// ch-chat overrides TODO: move this styles to Mercury\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n\n.chat::part(message) {\n position: relative;\n --copy-button-opacity: 0;\n --copied-to-clipboard-opacity: 0;\n --date-opacity: 1;\n}\n.chat::part(message__time),\n.chat::part(message__copy-button) {\n transition: opacity var(--mer-timing--super-fast) ease-in-out;\n}\n.chat::part(message__time) {\n opacity: var(--date-opacity);\n}\n.chat::part(message):hover {\n position: relative;\n --copy-button-opacity: 1;\n --date-opacity: 0;\n}\n.chat::part(message__copy-button) {\n position: absolute;\n z-index: 1;\n inset-inline-end: 0;\n padding: var(--mer-spacing--sm); // same as part::(message)\n transition: opacity var(--mer-timing--fast) ease-in-out;\n opacity: var(--copy-button-opacity);\n\n &::after {\n content: \"\";\n inline-size: var(--mer-icon__box--md);\n block-size: var(--mer-icon__box--md);\n background: no-repeat center / var(--mer-icon__size--md) var(--icon-path);\n --icon-path: var(--icon__system_copy_primary--enabled);\n }\n &:hover::after {\n --icon-path: var(--icon__system_copy_primary--hover);\n }\n &:active::after {\n --icon-path: var(--icon__system_copy_primary--active);\n }\n}\n\n// // copy button effect\n.chat::part(message__copied-feedback) {\n transition: opacity 150ms ease-in-out;\n position: absolute;\n inline-size: 100%;\n block-size: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n background: rgba(22, 22, 23, 0.8);\n backdrop-filter: saturate(180%) blur(20px);\n opacity: var(--copied-to-clipboard-opacity);\n pointer-events: none;\n}\n\n.chat::part(message__copied-feedback-visible) {\n --copied-to-clipboard-opacity: 1;\n pointer-events: visible;\n}\n\n// send button\n\n.chat::part(send-container) {\n gap: var(--mer-spacing--xs);\n}\n.chat::part(send-input) {\n --control__padding-block: 7px !important;\n}\n\n.chat::part(send-button) {\n border-width: var(--control__border-width);\n border-style: var(--control__border-style);\n border-color: var(--control__border-color);\n border-radius: var(--control__border-radius);\n inline-size: 32px;\n block-size: 32px;\n background: no-repeat center / var(--mer-icon__box--md) var(--icon-path);\n --icon-path: var(--icon__system_send_primary--enabled);\n}\n.chat::part(send-button):hover {\n --icon-path: var(--icon__system_send_primary--hover);\n --control__border-color: var(--mer-text__primary--hover);\n}\n.chat::part(send-button):active {\n --icon-path: var(--icon__system_send_primary--active);\n --control__border-color: var(--mer-border-color__primary--active);\n}\n","import { Component, Host, h, Prop, Method, State } from \"@stencil/core\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/typography\",\n \"chameleon/scrollbar\",\n \"components/button\",\n \"components/icon\",\n \"utils/elevation\"\n];\n\nconst COPY_ICON = getIconPath({\n category: \"system\",\n name: \"copy\",\n colorType: \"neutral\"\n});\nconst CONVERSATION_ICON = getIconPath({\n category: \"objects\",\n name: \"conversational-flows\"\n});\n\n@Component({\n tag: \"gx-ide-chat-container\",\n styleUrl: \"chat-container.scss\",\n shadow: false\n})\nexport class GxIdeChatContainer {\n /**\n * The chat title\n */\n @Prop() readonly chatTitle?: string;\n\n /**\n * If true a button for copying the conversation will be render on the header.s\n */\n @Prop() readonly copyConversationCallback: () => void;\n\n /**\n * Coneration Copied\n */\n @State() displayConversationCopiedMessage: boolean = false;\n\n /**\n * It will display a feedback message that the conversation has been copied\n */\n @Method()\n async showCopyConversationMessage() {\n this.displayConversationCopiedMessage = true;\n setTimeout(() => {\n this.displayConversationCopiedMessage = false;\n }, 2000);\n }\n\n render() {\n const renderHeader = this.chatTitle || this.copyConversationCallback;\n return (\n <Host class=\"chat-container\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n {renderHeader && (\n <header class=\"chat-container__header elevation-1 body-italic-m\">\n {this.chatTitle && this.chatTitle}\n {this.copyConversationCallback && (\n <button\n class=\"button-secondary button-icon-only\"\n onClick={this.copyConversationCallback}\n >\n <ch-image\n class=\"icon-md\"\n src={COPY_ICON}\n onClick={this.copyConversationCallback}\n ></ch-image>\n </button>\n )}\n </header>\n )}\n <section class=\"chat-container__ch-chat\">\n <slot></slot>\n {this.displayConversationCopiedMessage && (\n <div class=\"chat-container__conversation-copied\">\n <div class=\"chat-container__conversation-copied-wrapper\">\n <ch-image class=\"icon-md\" src={CONVERSATION_ICON}></ch-image>\n <p class=\"body-regular-l\">conversation copied</p>\n </div>\n </div>\n )}\n </section>\n {/* <footer class=\"chat-container__footer elevation-1\">footer</footer> */}\n </section>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"gx-ide-chat-container.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,gBAAgB,GAAG,isHAAisH;;ACG1tH,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAGA,yBAAW,CAAC;IAC5B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AACH,MAAM,WAAW,GAAGA,yBAAW,CAAC;IAC9B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,iBAAiB;IACvB,SAAS,EAAE,OAAO;CACnB,CAAC,CAAC;AACH,MAAM,iBAAiB,GAAGA,yBAAW,CAAC;IACpC,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,sBAAsB;CAC7B,CAAC,CAAC;MAOU,kBAAkB;;;;;;gDAmBwB,KAAK;;;;;IAM1D,MAAM,2BAA2B;QAC/B,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAC7C,UAAU,CAAC;YACT,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;SAC/C,EAAE,IAAI,CAAC,CAAC;KACV;IAED,MAAM;QACJ,MAAM,YAAY,GAChB,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,wBAAwB;YAC7B,IAAI,CAAC,0BAA0B,CAAC;QAElC,MAAM,kBAAkB,GACtB,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,0BAA0B,CAAC;QACnE,QACEC,QAACC,UAAI,IAAC,KAAK,EAAC,gBAAgB,IAC1BD,sBAAU,KAAK,EAAE,WAAW,GAAa,EACzCA,qBAAS,KAAK,EAAC,SAAS,IACrB,YAAY,KACXA,oBAAQ,KAAK,EAAC,kDAAkD,IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAEhC,kBAAkB,KACjBA,iBAAK,KAAK,EAAC,gBAAgB,IACxB,IAAI,CAAC,0BAA0B,KAC9BA,oBACE,KAAK,EAAC,mCAAmC,EACzC,OAAO,EAAE,IAAI,CAAC,0BAA0B,IAExCA,sBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,WAAW,GAAa,CAChD,CACV,EAEA,IAAI,CAAC,wBAAwB,KAC5BA,oBACE,KAAK,EAAC,mCAAmC,EACzC,OAAO,EAAE,IAAI,CAAC,wBAAwB,IAEtCA,sBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,SAAS,GAAa,CAC9C,CACV,CACG,CACP,CACM,CACV,EACDA,qBAAS,KAAK,EAAC,yBAAyB,IACtCA,qBAAa,EACZ,IAAI,CAAC,gCAAgC,KACpCA,iBAAK,KAAK,EAAC,qCAAqC,IAC9CA,iBAAK,KAAK,EAAC,6CAA6C,IACtDA,sBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,iBAAiB,GAAa,EAC7DA,eAAG,KAAK,EAAC,gBAAgB,0BAAwB,CAC7C,CACF,CACP,CACO,CAEF,CACL,EACP;KACH;;;;;;","names":["getIconPath","h","Host"],"sources":["src/components/_helpers/chat-container/chat-container.scss?tag=gx-ide-chat-container","src/components/_helpers/chat-container/chat-container.tsx"],"sourcesContent":[".chat-container {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n gap: var(--mer-spacing--xs);\n padding: var(--mer-spacing--xs);\n position: relative;\n --chat-common-border-radius: var(--mer-spacing--2xs);\n}\n.section {\n display: contents;\n}\n\n// header\n.chat-container__header {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n justify-content: space-between;\n}\n\n// ch-chat container\n.chat-container__ch-chat {\n overflow: auto;\n position: relative;\n display: grid;\n}\n\n// footer\n\n// header & footer (common styles)\n.chat-container__header,\n.chat-container__footer {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n border-radius: var(--chat-common-border-radius);\n}\n\n.chat-container__conversation-copied {\n position: absolute;\n z-index: 1;\n inline-size: 100%;\n block-size: 100%;\n background: rgba(22, 22, 23, 0.75);\n backdrop-filter: saturate(180%) blur(20px);\n display: grid;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 32px;\n --mer-icon__box--md: 18px;\n pointer-events: none;\n overflow: hidden;\n animation: fadeIn 100ms ease-in-out forwards;\n opacity: 0;\n}\n.chat-container__conversation-copied-wrapper {\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n}\n.chat-container__conversation-copied-wrapper {\n animation: liftUp var(--mer-timing--fast) ease-in-out forwards;\n inset-block-start: 4px;\n opacity: 0;\n animation-delay: var(--mer-timing--fast);\n position: relative;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes liftUp {\n from {\n opacity: 0;\n inset-block-start: 4px;\n }\n to {\n opacity: 1;\n inset-block-start: 0;\n }\n}\n\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n// ch-chat overrides TODO: move this styles to Mercury\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n\n.chat::part(message) {\n position: relative;\n --copy-button-opacity: 0;\n --copied-to-clipboard-opacity: 0;\n --date-opacity: 1;\n}\n.chat::part(message__time),\n.chat::part(message__copy-button) {\n transition: opacity var(--mer-timing--super-fast) ease-in-out;\n}\n.chat::part(message__time) {\n opacity: var(--date-opacity);\n}\n.chat::part(message):hover {\n position: relative;\n --copy-button-opacity: 1;\n --date-opacity: 0;\n}\n.chat::part(message__copy-button) {\n position: absolute;\n z-index: 1;\n inset-inline-end: 0;\n padding: var(--mer-spacing--sm); // same as part::(message)\n transition: opacity var(--mer-timing--fast) ease-in-out;\n opacity: var(--copy-button-opacity);\n\n &::after {\n content: \"\";\n inline-size: var(--mer-icon__box--md);\n block-size: var(--mer-icon__box--md);\n background: no-repeat center / var(--mer-icon__size--md) var(--icon-path);\n --icon-path: var(--icon__system_copy_primary--enabled);\n }\n &:hover::after {\n --icon-path: var(--icon__system_copy_primary--hover);\n }\n &:active::after {\n --icon-path: var(--icon__system_copy_primary--active);\n }\n}\n\n// // copy button effect\n.chat::part(message__copied-feedback) {\n transition: opacity 150ms ease-in-out;\n position: absolute;\n inline-size: 100%;\n block-size: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n background: rgba(22, 22, 23, 0.8);\n backdrop-filter: saturate(180%) blur(20px);\n opacity: var(--copied-to-clipboard-opacity);\n pointer-events: none;\n}\n\n.chat::part(message__copied-feedback-visible) {\n --copied-to-clipboard-opacity: 1;\n pointer-events: visible;\n}\n\n// send button\n\n.chat::part(send-container) {\n gap: var(--mer-spacing--xs);\n}\n.chat::part(send-input) {\n --control__padding-block: 7px !important;\n}\n\n.chat::part(send-button) {\n border-width: var(--control__border-width);\n border-style: var(--control__border-style);\n border-color: var(--control__border-color);\n border-radius: var(--control__border-radius);\n inline-size: 32px;\n block-size: 32px;\n background: no-repeat center / var(--mer-icon__box--md) var(--icon-path);\n --icon-path: var(--icon__system_send_primary--enabled);\n}\n.chat::part(send-button):hover {\n --icon-path: var(--icon__system_send_primary--hover);\n --control__border-color: var(--mer-text__primary--hover);\n}\n.chat::part(send-button):active {\n --icon-path: var(--icon__system_send_primary--active);\n --control__border-color: var(--mer-border-color__primary--active);\n}\n","import { Component, Host, h, Prop, Method, State } from \"@stencil/core\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/typography\",\n \"chameleon/scrollbar\",\n \"components/button\",\n \"components/icon\",\n \"utils/elevation\"\n];\n\nconst COPY_ICON = getIconPath({\n category: \"system\",\n name: \"copy\",\n colorType: \"neutral\"\n});\nconst DELETE_ICON = getIconPath({\n category: \"system\",\n name: \"delete-outlined\",\n colorType: \"error\"\n});\nconst CONVERSATION_ICON = getIconPath({\n category: \"objects\",\n name: \"conversational-flows\"\n});\n\n@Component({\n tag: \"gx-ide-chat-container\",\n styleUrl: \"chat-container.scss\",\n shadow: false\n})\nexport class GxIdeChatContainer {\n /**\n * The chat title\n */\n @Prop() readonly chatTitle?: string;\n\n /**\n * If true a button for copying the conversation will be render on the header\n */\n @Prop() readonly copyConversationCallback: () => void;\n\n /**\n * If true a button for deleting the conversation will be render on the header\n */\n @Prop() readonly deleteConversationCallback: () => void;\n\n /**\n * Coneration Copied\n */\n @State() displayConversationCopiedMessage: boolean = false;\n\n /**\n * It will display a feedback message that the conversation has been copied\n */\n @Method()\n async showCopyConversationMessage() {\n this.displayConversationCopiedMessage = true;\n setTimeout(() => {\n this.displayConversationCopiedMessage = false;\n }, 2000);\n }\n\n render() {\n const renderHeader =\n this.chatTitle ||\n this.copyConversationCallback ||\n this.deleteConversationCallback;\n\n const renderButtonsGroup =\n this.copyConversationCallback || this.deleteConversationCallback;\n return (\n <Host class=\"chat-container\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n {renderHeader && (\n <header class=\"chat-container__header elevation-1 body-italic-m\">\n {this.chatTitle && this.chatTitle}\n\n {renderButtonsGroup && (\n <div class=\"buttons-spacer\">\n {this.deleteConversationCallback && (\n <button\n class=\"button-secondary button-icon-only\"\n onClick={this.deleteConversationCallback}\n >\n <ch-image class=\"icon-md\" src={DELETE_ICON}></ch-image>\n </button>\n )}\n\n {this.copyConversationCallback && (\n <button\n class=\"button-secondary button-icon-only\"\n onClick={this.copyConversationCallback}\n >\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n </button>\n )}\n </div>\n )}\n </header>\n )}\n <section class=\"chat-container__ch-chat\">\n <slot></slot>\n {this.displayConversationCopiedMessage && (\n <div class=\"chat-container__conversation-copied\">\n <div class=\"chat-container__conversation-copied-wrapper\">\n <ch-image class=\"icon-md\" src={CONVERSATION_ICON}></ch-image>\n <p class=\"body-regular-l\">conversation copied</p>\n </div>\n </div>\n )}\n </section>\n {/* <footer class=\"chat-container__footer elevation-1\">footer</footer> */}\n </section>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -3,49 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-caaa95cf.js');
6
+ const codeRender = require('./code-render-a496a55b.js');
6
7
  require('./MERCURY_ASSETS-ac982891.js');
7
8
 
8
- const MESSAGE_COPIED_PART_SELECTOR = "message__copied-feedback";
9
- const MESSAGE_COPIED_VISIBLE_PART_SELECTOR = "message__copied-feedback-visible";
10
- const copy = (text) => (event) => {
11
- event.stopPropagation();
12
- // 1. Copy message
13
- navigator.clipboard.writeText(text);
14
- // 2. Display "copied" message (expects to be the next sibling!)
15
- const copiedFeedbackRef = event.target
16
- .nextSibling;
17
- const copiedFeedbackPart = copiedFeedbackRef.getAttribute("part");
18
- if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {
19
- copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`);
20
- setTimeout(() => {
21
- copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR}`);
22
- }, 1000);
23
- }
24
- };
25
- const copyButton = (textToCopy, accessibleName, additionalPart) => {
26
- return (index.h("button", { "aria-label": accessibleName, title: accessibleName, class: "button-copy-code", type: "button", onClick: copy(textToCopy), part: `message__copy-button ${additionalPart}` }));
27
- };
28
- const mercuryCodeRender = (copyButtonAccessibleName) => (options) => (index.h("div", { class: "code-block-container" },
29
- index.h("div", { class: "code-block-header" }, copyButton(options.plainText, copyButtonAccessibleName, "code-render")),
30
- index.h("ch-code", { language: options.language, lastNestedChildClass: options.lastNestedChildClass, value: options.plainText })));
31
- const mercuryChatMessageRender = (theme) => (messageModel) => messageModel.role === "assistant" && messageModel.status === "waiting"
32
- ? [
33
- index.h("span", { part: "message__processing" }, "Processing request"),
34
- index.h("div", { class: "processing-animation", part: "processing-animation" })
35
- ]
36
- : [
37
- // "copy button" before "role" and "time" to hide both on button:focus
38
- copyButton(messageModel.content, "Copy code", "common-message"),
39
- index.h("p", { part: MESSAGE_COPIED_PART_SELECTOR }, "message copied to clipboard"),
40
- index.h("span", { part: `message__role ${messageModel.role}` }, messageModel.role === "user" ? "You" : "GeneXus Code Fixer"),
41
- index.h("time", { dateTime: messageModel.metadata, part: "message__time" }, messageModel.metadata),
42
- messageModel.role === "user" ? (index.h("span", { part: "message__content user" }, messageModel.content)) : (index.h("ch-markdown-viewer", { part: messageModel.role === "assistant" &&
43
- (messageModel.status === "complete" || !messageModel.status) &&
44
- !messageModel.parts
45
- ? `message__content no-error`
46
- : "message__content", theme: theme, showIndicator: false, renderCode: mercuryCodeRender("Copy code"), value: messageModel.content }))
47
- ];
48
-
49
9
  const PROCESSING_PLACEHOLDER = "{{ASSISTANT_NAME}}";
50
10
  let timeOut;
51
11
  const ASSISTANT_RESPONSE_MARKDOWN = `
@@ -299,7 +259,7 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
299
259
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
300
260
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
301
261
  };
302
- var _GxIdeScChatContainer_chatContainerRef, _GxIdeScChatContainer_copyConversationCallbackHandler;
262
+ var _GxIdeScChatContainer_chatContainerRef, _GxIdeScChatContainer_copyConversationCallbackHandler, _GxIdeScChatContainer_deleteConversationCallbackHandler;
303
263
  const CSS_BUNDLES = ["resets/box-sizing", "components/chat"];
304
264
  const GxIdeScChatContainer = class {
305
265
  constructor(hostRef) {
@@ -308,14 +268,23 @@ const GxIdeScChatContainer = class {
308
268
  _GxIdeScChatContainer_copyConversationCallbackHandler.set(this, () => {
309
269
  __classPrivateFieldGet(this, _GxIdeScChatContainer_chatContainerRef, "f").showCopyConversationMessage();
310
270
  });
271
+ _GxIdeScChatContainer_deleteConversationCallbackHandler.set(this, () => {
272
+ console.log("delete messages");
273
+ });
311
274
  this.showAdditionalContent = false;
312
275
  this.conversationCopied = false;
276
+ this.assistantStatus = "Getting Data";
277
+ }
278
+ componentDidLoad() {
279
+ setTimeout(() => {
280
+ this.assistantStatus = "Creating Data Base..";
281
+ }, 1000);
313
282
  }
314
283
  render() {
315
- return (index.h(index.Host, null, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("gx-ide-chat-container", { chatTitle: "GeneXus Assistant", copyConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_copyConversationCallbackHandler, "f"), ref: el => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chatContainerRef, el, "f")) }, index.h("ch-chat", { callbacks: chatCallbacks, class: "chat", generatingResponse: false, loadingState: "all-records-loaded", markdownTheme: "mercury/markdown-viewer", renderItem: mercuryChatMessageRender("mercury/markdown-viewer"), isMobile: false, items: codeFixerRecord, showAdditionalContent: this.showAdditionalContent, translations: chatTranslations }, index.h("div", { slot: "additional-content" }, "Custom content that is rendered when the chat renders content")))));
284
+ return (index.h(index.Host, null, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("gx-ide-chat-container", { chatTitle: "GeneXus Assistant", copyConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_copyConversationCallbackHandler, "f"), deleteConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_deleteConversationCallbackHandler, "f"), ref: el => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chatContainerRef, el, "f")) }, index.h("ch-chat", { callbacks: chatCallbacks, class: "chat", generatingResponse: false, loadingState: "all-records-loaded", markdownTheme: "mercury/markdown-viewer", renderItem: codeRender.mercuryChatMessageRender("mercury/markdown-viewer", "Bruno", "Gx Assistant", this.assistantStatus), isMobile: false, items: codeFixerRecord, showAdditionalContent: this.showAdditionalContent, translations: chatTranslations }, index.h("div", { slot: "additional-content" }, "Custom content that is rendered when the chat renders content")))));
316
285
  }
317
286
  };
318
- _GxIdeScChatContainer_chatContainerRef = new WeakMap(), _GxIdeScChatContainer_copyConversationCallbackHandler = new WeakMap();
287
+ _GxIdeScChatContainer_chatContainerRef = new WeakMap(), _GxIdeScChatContainer_copyConversationCallbackHandler = new WeakMap(), _GxIdeScChatContainer_deleteConversationCallbackHandler = new WeakMap();
319
288
  GxIdeScChatContainer.style = chatShowcaseCss;
320
289
 
321
290
  exports.gx_ide_sc_chat_container = GxIdeScChatContainer;
@@ -1 +1 @@
1
- {"file":"gx-ide-sc-chat-container.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["src/components/_helpers/chat-container/code-render.tsx","src/showcase/chat-container/callbacks.ts","src/showcase/chat-container/chat-showcase.scss?tag=gx-ide-sc-chat-container&encapsulation=shadow","src/showcase/chat-container/chat.showcase.tsx"],"sourcesContent":["import { h } from \"@stencil/core\";\nimport {\n MarkdownViewerCodeRender,\n ChatMessageByRole\n} from \"@genexus/chameleon-controls-library\";\nimport { MarkdownViewerCodeRenderOptions } from \"@genexus/chameleon-controls-library/dist/types/components/markdown-viewer/parsers/types\";\nimport { getIconPath } from \"@genexus/mercury\";\ngetIconPath;\n\nconst MESSAGE_COPIED_PART_SELECTOR = \"message__copied-feedback\";\nconst MESSAGE_COPIED_VISIBLE_PART_SELECTOR = \"message__copied-feedback-visible\";\n\nconst copy = (text: string) => (event: Event) => {\n event.stopPropagation();\n\n // 1. Copy message\n navigator.clipboard.writeText(text);\n\n // 2. Display \"copied\" message (expects to be the next sibling!)\n const copiedFeedbackRef = (event.target as HTMLElement)\n .nextSibling as HTMLElement;\n const copiedFeedbackPart = copiedFeedbackRef.getAttribute(\"part\");\n if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {\n copiedFeedbackRef.setAttribute(\n \"part\",\n `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`\n );\n\n setTimeout(() => {\n copiedFeedbackRef.setAttribute(\"part\", `${MESSAGE_COPIED_PART_SELECTOR}`);\n }, 1000);\n }\n};\n\nconst copyButton = (\n textToCopy: string,\n accessibleName: string,\n additionalPart: string\n) => {\n return (\n <button\n aria-label={accessibleName}\n title={accessibleName}\n class=\"button-copy-code\"\n type=\"button\"\n onClick={copy(textToCopy)}\n part={`message__copy-button ${additionalPart}`}\n ></button>\n );\n};\n\nexport const mercuryCodeRender =\n (copyButtonAccessibleName: string) =>\n (options: MarkdownViewerCodeRenderOptions): MarkdownViewerCodeRender =>\n (\n <div class=\"code-block-container\">\n <div class=\"code-block-header\">\n {copyButton(\n options.plainText,\n copyButtonAccessibleName,\n \"code-render\"\n )}\n </div>\n <ch-code\n language={options.language}\n lastNestedChildClass={options.lastNestedChildClass}\n value={options.plainText}\n ></ch-code>\n </div>\n );\n\nexport const mercuryChatMessageRender =\n (theme: string) =>\n (messageModel: ChatMessageByRole<\"assistant\" | \"error\" | \"user\">) =>\n messageModel.role === \"assistant\" && messageModel.status === \"waiting\"\n ? [\n <span part=\"message__processing\">Processing request</span>,\n\n <div class=\"processing-animation\" part=\"processing-animation\"></div>\n ]\n : [\n // \"copy button\" before \"role\" and \"time\" to hide both on button:focus\n copyButton(\n messageModel.content as string,\n \"Copy code\",\n \"common-message\"\n ),\n <p part={MESSAGE_COPIED_PART_SELECTOR}>\n message copied to clipboard\n </p>,\n <span part={`message__role ${messageModel.role}`}>\n {messageModel.role === \"user\" ? \"You\" : \"GeneXus Code Fixer\"}\n </span>,\n <time dateTime={messageModel.metadata} part=\"message__time\">\n {messageModel.metadata}\n </time>,\n\n messageModel.role === \"user\" ? (\n <span part=\"message__content user\">{messageModel.content}</span>\n ) : (\n <ch-markdown-viewer\n part={\n messageModel.role === \"assistant\" &&\n (messageModel.status === \"complete\" || !messageModel.status) &&\n !messageModel.parts\n ? `message__content no-error`\n : \"message__content\"\n }\n theme={theme}\n showIndicator={false}\n renderCode={mercuryCodeRender(\"Copy code\")}\n value={messageModel.content as string}\n ></ch-markdown-viewer>\n )\n ];\n","import {\n ChatInternalCallbacks,\n ChatMessage,\n ChatTranslations\n} from \"@genexus/chameleon-controls-library\";\n\nconst PROCESSING_PLACEHOLDER = \"{{ASSISTANT_NAME}}\";\n\nlet timeOut: NodeJS.Timeout;\n\nconst ASSISTANT_RESPONSE_MARKDOWN = `\n ### Code block {#code-block}\n To create code blocks, you’ll use three backticks (\\` \\`\\`\\` \\`) or three tildes (\\`~~~\\`) on the lines before and after the code block.\n \n \\`\\`\\`\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n \n Another way to create code blocks is to indent every line of the block by at least four spaces or one tab.\n \n <html>\n <head>\n </head>\n </html>\n \n \n #### Syntax Highlighting {#syntax-highlighting}\n This feature allows you to add color highlighting for whatever language your code was written in.\n To add syntax highlighting, specify a language next to the backticks before the fenced code block.\n \n \\`\\`\\`json\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n \n \\`\\`\\`javascript\n import React from 'react'\n import ReactDOM from 'react-dom'\n import Markdown from 'react-markdown'\n import rehypeHighlight from 'rehype-highlight'\n \n const markdown = \\`\n # Your markdown here\n \\`\n \n ReactDOM.render(\n <Markdown rehypePlugins={[rehypeHighlight]}>{markdown}</Markdown>,\n document.querySelector('#content')\n )\n \\`\\`\\`\n \n ### Horizontal Rules {#horizontal-rules}\n To create a horizontal rule, use three or more asterisks (\\`***\\`), dashes (\\`---\\`), or underscores (\\`___\\`) on a line by themselves.\n `;\n\nconst ASSISTANT_RESPONSE_SHORT_MARKDOWN = `\n ### Code block {#code-block}\n To create code blocks, you’ll use three backticks (\\` \\`\\`\\` \\`) or three tildes (\\`~~~\\`) on the lines before and after the code block.\n \n \\`\\`\\`json\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n `;\n\nconst sendChatToLLM = () => {\n // This is a WA to get the chat reference\n const chatRef = document.querySelector(\"ch-chat\") as HTMLChChatElement;\n\n chatRef.addNewMessage({\n id: `${new Date().getTime()}`,\n role: \"assistant\",\n content: \"Analyzing\",\n status: \"waiting\"\n });\n\n timeOut = setTimeout(() => {\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: \"Processing with Chat with LLMs\",\n status: \"waiting\"\n },\n \"replace\"\n );\n\n timeOut = setTimeout(() => {\n dummyStreaming(chatRef, 20, ASSISTANT_RESPONSE_MARKDOWN, \"replace\");\n }, 200);\n }, 200);\n};\n\nfunction dummyStreaming(\n chatRef: HTMLChChatElement,\n counter: number,\n stringToDisplay: string,\n mode: \"concat\" | \"replace\"\n) {\n timeOut = setTimeout(\n () => {\n const streamingCompleted = counter >= stringToDisplay.length;\n\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: {\n message: stringToDisplay.substring(counter - 20, counter),\n files: streamingCompleted\n ? [\n {\n url: \"https://next.genexus.ai\",\n caption: \"Mars Exploration Contract\"\n },\n {\n url: \"https://gx-chameleon.netlify.app\",\n caption: \"Venus Exploration Contract\"\n }\n ]\n : undefined\n },\n status: streamingCompleted ? \"complete\" : \"streaming\"\n },\n mode\n );\n\n if (!streamingCompleted) {\n dummyStreaming(chatRef, counter + 20, stringToDisplay, \"concat\");\n }\n },\n counter % 200 === 0 ? 50 : 40\n );\n}\n\nexport const chatCallbacks: ChatInternalCallbacks = {\n clear: () => new Promise(resolve => resolve()),\n sendChatToLLM: sendChatToLLM,\n uploadImage: () => new Promise(resolve => resolve(\"\")),\n stopGeneratingAnswer: () => {\n clearTimeout(timeOut);\n\n // This is a WA to get the chat reference\n const chatRef = document.querySelector(\"ch-chat\") as HTMLChChatElement;\n\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: \"\",\n status: \"complete\"\n },\n \"concat\"\n );\n\n return new Promise(resolve => setTimeout(() => resolve, 10));\n }\n};\n\nexport const chatTranslations: ChatTranslations = {\n accessibleName: {\n clearChat: \"Clear chat\",\n copyResponseButton: \"Copy assistant response\",\n downloadCodeButton: \"Download code\",\n imagePicker: \"Select images\",\n removeUploadedImage: \"Remove uploaded image\",\n sendButton: \"Send\",\n sendInput: \"Message\",\n stopGeneratingAnswerButton: \"Stop generating answer\"\n },\n placeholder: {\n sendInput: \"Ask me a question...\"\n },\n text: {\n copyCodeButton: \"Copy code\",\n processing: `Processing with ${PROCESSING_PLACEHOLDER}`,\n sourceFiles: \"Source files:\"\n }\n};\n\nexport const chatRecord: ChatMessage[] = [\n { id: \"1\", role: \"user\", content: \"Hello world\" },\n { id: \"2\", role: \"assistant\", content: ASSISTANT_RESPONSE_MARKDOWN },\n { id: \"3\", role: \"user\", content: \"Hello world 1\" },\n { id: \"4\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"5\", role: \"user\", content: \"Hello world 2\" },\n { id: \"6\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"7\", role: \"user\", content: \"Hello world 3\" },\n { id: \"8\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"9\", role: \"user\", content: \"Hello world 4\" },\n { id: \"10\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN }\n];\n\nexport const longChatRecord: ChatMessage[] = Array.from(\n { length: 40 },\n (_, index) =>\n index % 2 === 0\n ? {\n id: `index: ${index}`,\n role: \"user\",\n content:\n `index: ${index}` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n`\n }\n : {\n id: `index: ${index}`,\n role: \"assistant\",\n content:\n ASSISTANT_RESPONSE_SHORT_MARKDOWN +\n `\\nindex: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n`\n }\n);\n\nexport const codeFixerRecord: ChatMessage[] = [\n {\n id: \"1\",\n role: \"user\",\n content: \"Please give me an example about...\",\n metadata: \"14:55\"\n },\n {\n id: \"2\",\n role: \"assistant\",\n status: \"complete\",\n content:\n \"Action required example. Action required example. Action required example.\",\n metadata: \"14:56\"\n },\n {\n id: \"3\",\n role: \"assistant\",\n status: \"complete\",\n content: \"Warning in request\",\n metadata: \"14:57\",\n parts: \"warning\"\n },\n {\n id: \"4\",\n role: \"error\",\n content: \"Error in Request\",\n metadata: \"14:58\"\n },\n {\n id: \"5\",\n role: \"assistant\",\n status: \"complete\",\n content: \"Warning in request\",\n metadata: \"14:59\",\n parts: \"success\"\n },\n {\n id: \"6\",\n role: \"user\",\n content:\n \"Implement the function calculate_average_grade in grades.py that takes a list of grades as input and returns the average grade as a floating-point number\",\n metadata: \"15:00\"\n },\n {\n id: \"7\",\n role: \"assistant\",\n status: \"complete\",\n content:\n \"You can provide further details or updates regarding your support ticket and its associated code. Your input here helps us better understand and address your issue effectively.\",\n metadata: \"15:01\"\n },\n {\n id: \"8\",\n role: \"assistant\",\n status: \"waiting\",\n content: \"Processing Request\"\n },\n {\n id: \"9\",\n role: \"assistant\",\n status: \"complete\",\n content: ASSISTANT_RESPONSE_SHORT_MARKDOWN\n }\n];\n",":host {\n block-size: 100%;\n display: grid;\n}\n","import { Component, Host, h, State } from \"@stencil/core\";\nimport { mercuryChatMessageRender } from \"../../components/_helpers/chat-container/code-render\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\"resets/box-sizing\", \"components/chat\"];\n\nimport { chatCallbacks, chatTranslations, codeFixerRecord } from \"./callbacks\";\n\n@Component({\n tag: \"gx-ide-sc-chat-container\",\n styleUrl: \"chat-showcase.scss\",\n shadow: true\n})\nexport class GxIdeScChatContainer {\n #chatContainerRef!: HTMLGxIdeChatContainerElement;\n\n @State() showAdditionalContent: boolean = false;\n @State() conversationCopied: boolean = false;\n\n #copyConversationCallbackHandler = () => {\n this.#chatContainerRef.showCopyConversationMessage();\n };\n\n render() {\n return (\n <Host>\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <gx-ide-chat-container\n chatTitle=\"GeneXus Assistant\"\n copyConversationCallback={this.#copyConversationCallbackHandler}\n ref={el =>\n (this.#chatContainerRef = el as HTMLGxIdeChatContainerElement)\n }\n >\n <ch-chat\n callbacks={chatCallbacks}\n class=\"chat\"\n generatingResponse={false}\n loadingState=\"all-records-loaded\"\n markdownTheme=\"mercury/markdown-viewer\"\n renderItem={mercuryChatMessageRender(\"mercury/markdown-viewer\")}\n isMobile={false}\n items={codeFixerRecord}\n showAdditionalContent={this.showAdditionalContent}\n translations={chatTranslations}\n >\n <div slot=\"additional-content\">\n Custom content that is rendered when the chat renders content\n </div>\n </ch-chat>\n </gx-ide-chat-container>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"gx-ide-sc-chat-container.entry.cjs.js","mappings":";;;;;;;;AAMA,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAEpD,IAAI,OAAuB,CAAC;AAE5B,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkD/B,CAAC;AAEN,MAAM,iCAAiC,GAAG;;;;;;;;;;;KAWrC,CAAC;AAEN,MAAM,aAAa,GAAG;;IAEpB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAsB,CAAC;IAEvE,OAAO,CAAC,aAAa,CAAC;QACpB,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IAEH,OAAO,GAAG,UAAU,CAAC;QACnB,OAAO,CAAC,iBAAiB,CACvB;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,gCAAgC;YACzC,MAAM,EAAE,SAAS;SAClB,EACD,SAAS,CACV,CAAC;QAEF,OAAO,GAAG,UAAU,CAAC;YACnB,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE,2BAA2B,EAAE,SAAS,CAAC,CAAC;SACrE,EAAE,GAAG,CAAC,CAAC;KACT,EAAE,GAAG,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,SAAS,cAAc,CACrB,OAA0B,EAC1B,OAAe,EACf,eAAuB,EACvB,IAA0B;IAE1B,OAAO,GAAG,UAAU,CAClB;QACE,MAAM,kBAAkB,GAAG,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC;QAE7D,OAAO,CAAC,iBAAiB,CACvB;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE;gBACP,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,EAAE,OAAO,CAAC;gBACzD,KAAK,EAAE,kBAAkB;sBACrB;wBACE;4BACE,GAAG,EAAE,yBAAyB;4BAC9B,OAAO,EAAE,2BAA2B;yBACrC;wBACD;4BACE,GAAG,EAAE,kCAAkC;4BACvC,OAAO,EAAE,4BAA4B;yBACtC;qBACF;sBACD,SAAS;aACd;YACD,MAAM,EAAE,kBAAkB,GAAG,UAAU,GAAG,WAAW;SACtD,EACD,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,kBAAkB,EAAE;YACvB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;SAClE;KACF,EACD,OAAO,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,CAC9B,CAAC;AACJ,CAAC;AAEM,MAAM,aAAa,GAA0B;IAClD,KAAK,EAAE,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC;IAC9C,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACtD,oBAAoB,EAAE;QACpB,YAAY,CAAC,OAAO,CAAC,CAAC;;QAGtB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAsB,CAAC;QAEvE,OAAO,CAAC,iBAAiB,CACvB;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,UAAU;SACnB,EACD,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;KAC9D;CACF,CAAC;AAEK,MAAM,gBAAgB,GAAqB;IAChD,cAAc,EAAE;QACd,SAAS,EAAE,YAAY;QACvB,kBAAkB,EAAE,yBAAyB;QAC7C,kBAAkB,EAAE,eAAe;QACnC,WAAW,EAAE,eAAe;QAC5B,mBAAmB,EAAE,uBAAuB;QAC5C,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,SAAS;QACpB,0BAA0B,EAAE,wBAAwB;KACrD;IACD,WAAW,EAAE;QACX,SAAS,EAAE,sBAAsB;KAClC;IACD,IAAI,EAAE;QACJ,cAAc,EAAE,WAAW;QAC3B,UAAU,EAAE,mBAAmB,sBAAsB,EAAE;QACvD,WAAW,EAAE,eAAe;KAC7B;CACF,CAAC;AAe2C,KAAK,CAAC,IAAI,CACrD,EAAE,MAAM,EAAE,EAAE,EAAE,EACd,CAAC,CAAC,EAAE,KAAK,KACP,KAAK,GAAG,CAAC,KAAK,CAAC;MACX;QACE,EAAE,EAAE,UAAU,KAAK,EAAE;QACrB,IAAI,EAAE,MAAM;QACZ,OAAO,EACL,UAAU,KAAK,EAAE;YACjB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;KACtB;MACD;QACE,EAAE,EAAE,UAAU,KAAK,EAAE;QACrB,IAAI,EAAE,WAAW;QACjB,OAAO,EACL,iCAAiC;YACjC,YAAY,KAAK,IAAI;YACrB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;YACnB,UAAU,KAAK,IAAI;KACtB,EACP;AAEK,MAAM,eAAe,GAAkB;IAC5C;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,oCAAoC;QAC7C,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,UAAU;QAClB,OAAO,EACL,4EAA4E;QAC9E,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,oBAAoB;QAC7B,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,SAAS;KACjB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,oBAAoB;QAC7B,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,SAAS;KACjB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,MAAM;QACZ,OAAO,EACL,2JAA2J;QAC7J,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,UAAU;QAClB,OAAO,EACL,kLAAkL;QACpL,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,oBAAoB;KAC9B;IACD;QACE,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,iCAAiC;KAC3C;CACF;;ACvSD,MAAM,eAAe,GAAG,qCAAqC;;;;;;;;;;;;;;;;;;;ACI7D,MAAM,WAAW,GAAmB,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;MAShE,oBAAoB;;;QAC/B,yDAAkD;QAMlD,gEAAmC;YACjC,uBAAA,IAAI,8CAAkB,CAAC,2BAA2B,EAAE,CAAC;SACtD,EAAC;QAEF,kEAAqC;YACnC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;SAChC,EAAC;qCAVwC,KAAK;kCACR,KAAK;+BACT,cAAc;;IAUjD,gBAAgB;QACd,UAAU,CAAC;YACT,IAAI,CAAC,eAAe,GAAG,sBAAsB,CAAC;SAC/C,EAAE,IAAI,CAAC,CAAC;KACV;IAED,MAAM;QACJ,QACEA,QAACC,UAAI,QACHD,sBAAU,KAAK,EAAE,WAAW,GAAa,EACzCA,mCACE,SAAS,EAAC,mBAAmB,EAC7B,wBAAwB,EAAE,uBAAA,IAAI,6DAAiC,EAC/D,0BAA0B,EAAE,uBAAA,IAAI,+DAAmC,EACnE,GAAG,EAAE,EAAE,KACJ,uBAAA,IAAI,0CAAqB,EAAmC,MAAA,CAAC,IAGhEA,qBACE,SAAS,EAAE,aAAa,EACxB,KAAK,EAAC,MAAM,EACZ,kBAAkB,EAAE,KAAK,EACzB,YAAY,EAAC,oBAAoB,EACjC,aAAa,EAAC,yBAAyB,EACvC,UAAU,EAAEE,mCAAwB,CAClC,yBAAyB,EACzB,OAAO,EACP,cAAc,EACd,IAAI,CAAC,eAAe,CACrB,EACD,QAAQ,EAAE,KAAK,EACf,KAAK,EAAE,eAAe,EACtB,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EACjD,YAAY,EAAE,gBAAgB,IAE9BF,iBAAK,IAAI,EAAC,oBAAoB,oEAExB,CACE,CACY,CACnB,EACP;KACH;;;;;;;","names":["h","Host","mercuryChatMessageRender"],"sources":["src/showcase/chat-container/callbacks.ts","src/showcase/chat-container/chat-showcase.scss?tag=gx-ide-sc-chat-container&encapsulation=shadow","src/showcase/chat-container/chat.showcase.tsx"],"sourcesContent":["import {\n ChatInternalCallbacks,\n ChatMessage,\n ChatTranslations\n} from \"@genexus/chameleon-controls-library\";\n\nconst PROCESSING_PLACEHOLDER = \"{{ASSISTANT_NAME}}\";\n\nlet timeOut: NodeJS.Timeout;\n\nconst ASSISTANT_RESPONSE_MARKDOWN = `\n ### Code block {#code-block}\n To create code blocks, you’ll use three backticks (\\` \\`\\`\\` \\`) or three tildes (\\`~~~\\`) on the lines before and after the code block.\n \n \\`\\`\\`\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n \n Another way to create code blocks is to indent every line of the block by at least four spaces or one tab.\n \n <html>\n <head>\n </head>\n </html>\n \n \n #### Syntax Highlighting {#syntax-highlighting}\n This feature allows you to add color highlighting for whatever language your code was written in.\n To add syntax highlighting, specify a language next to the backticks before the fenced code block.\n \n \\`\\`\\`json\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n \n \\`\\`\\`javascript\n import React from 'react'\n import ReactDOM from 'react-dom'\n import Markdown from 'react-markdown'\n import rehypeHighlight from 'rehype-highlight'\n \n const markdown = \\`\n # Your markdown here\n \\`\n \n ReactDOM.render(\n <Markdown rehypePlugins={[rehypeHighlight]}>{markdown}</Markdown>,\n document.querySelector('#content')\n )\n \\`\\`\\`\n \n ### Horizontal Rules {#horizontal-rules}\n To create a horizontal rule, use three or more asterisks (\\`***\\`), dashes (\\`---\\`), or underscores (\\`___\\`) on a line by themselves.\n `;\n\nconst ASSISTANT_RESPONSE_SHORT_MARKDOWN = `\n ### Code block {#code-block}\n To create code blocks, you’ll use three backticks (\\` \\`\\`\\` \\`) or three tildes (\\`~~~\\`) on the lines before and after the code block.\n \n \\`\\`\\`json\n {\n \"firstName\": \"John\",\n \"lastName\": \"Smith\",\n \"age\": 25\n }\n \\`\\`\\`\n `;\n\nconst sendChatToLLM = () => {\n // This is a WA to get the chat reference\n const chatRef = document.querySelector(\"ch-chat\") as HTMLChChatElement;\n\n chatRef.addNewMessage({\n id: `${new Date().getTime()}`,\n role: \"assistant\",\n content: \"Analyzing\",\n status: \"waiting\"\n });\n\n timeOut = setTimeout(() => {\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: \"Processing with Chat with LLMs\",\n status: \"waiting\"\n },\n \"replace\"\n );\n\n timeOut = setTimeout(() => {\n dummyStreaming(chatRef, 20, ASSISTANT_RESPONSE_MARKDOWN, \"replace\");\n }, 200);\n }, 200);\n};\n\nfunction dummyStreaming(\n chatRef: HTMLChChatElement,\n counter: number,\n stringToDisplay: string,\n mode: \"concat\" | \"replace\"\n) {\n timeOut = setTimeout(\n () => {\n const streamingCompleted = counter >= stringToDisplay.length;\n\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: {\n message: stringToDisplay.substring(counter - 20, counter),\n files: streamingCompleted\n ? [\n {\n url: \"https://next.genexus.ai\",\n caption: \"Mars Exploration Contract\"\n },\n {\n url: \"https://gx-chameleon.netlify.app\",\n caption: \"Venus Exploration Contract\"\n }\n ]\n : undefined\n },\n status: streamingCompleted ? \"complete\" : \"streaming\"\n },\n mode\n );\n\n if (!streamingCompleted) {\n dummyStreaming(chatRef, counter + 20, stringToDisplay, \"concat\");\n }\n },\n counter % 200 === 0 ? 50 : 40\n );\n}\n\nexport const chatCallbacks: ChatInternalCallbacks = {\n clear: () => new Promise(resolve => resolve()),\n sendChatToLLM: sendChatToLLM,\n uploadImage: () => new Promise(resolve => resolve(\"\")),\n stopGeneratingAnswer: () => {\n clearTimeout(timeOut);\n\n // This is a WA to get the chat reference\n const chatRef = document.querySelector(\"ch-chat\") as HTMLChChatElement;\n\n chatRef.updateLastMessage(\n {\n role: \"assistant\",\n content: \"\",\n status: \"complete\"\n },\n \"concat\"\n );\n\n return new Promise(resolve => setTimeout(() => resolve, 10));\n }\n};\n\nexport const chatTranslations: ChatTranslations = {\n accessibleName: {\n clearChat: \"Clear chat\",\n copyResponseButton: \"Copy assistant response\",\n downloadCodeButton: \"Download code\",\n imagePicker: \"Select images\",\n removeUploadedImage: \"Remove uploaded image\",\n sendButton: \"Send\",\n sendInput: \"Message\",\n stopGeneratingAnswerButton: \"Stop generating answer\"\n },\n placeholder: {\n sendInput: \"Ask me a question...\"\n },\n text: {\n copyCodeButton: \"Copy code\",\n processing: `Processing with ${PROCESSING_PLACEHOLDER}`,\n sourceFiles: \"Source files:\"\n }\n};\n\nexport const chatRecord: ChatMessage[] = [\n { id: \"1\", role: \"user\", content: \"Hello world\" },\n { id: \"2\", role: \"assistant\", content: ASSISTANT_RESPONSE_MARKDOWN },\n { id: \"3\", role: \"user\", content: \"Hello world 1\" },\n { id: \"4\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"5\", role: \"user\", content: \"Hello world 2\" },\n { id: \"6\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"7\", role: \"user\", content: \"Hello world 3\" },\n { id: \"8\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN },\n { id: \"9\", role: \"user\", content: \"Hello world 4\" },\n { id: \"10\", role: \"assistant\", content: ASSISTANT_RESPONSE_SHORT_MARKDOWN }\n];\n\nexport const longChatRecord: ChatMessage[] = Array.from(\n { length: 40 },\n (_, index) =>\n index % 2 === 0\n ? {\n id: `index: ${index}`,\n role: \"user\",\n content:\n `index: ${index}` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n`\n }\n : {\n id: `index: ${index}`,\n role: \"assistant\",\n content:\n ASSISTANT_RESPONSE_SHORT_MARKDOWN +\n `\\nindex: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n` +\n `index: ${index}\\n`\n }\n);\n\nexport const codeFixerRecord: ChatMessage[] = [\n {\n id: \"1\",\n role: \"user\",\n content: \"Please give me an example about...\",\n metadata: \"14:55\"\n },\n {\n id: \"2\",\n role: \"assistant\",\n status: \"complete\",\n content:\n \"Action required example. Action required example. Action required example.\",\n metadata: \"14:56\"\n },\n {\n id: \"3\",\n role: \"assistant\",\n status: \"complete\",\n content: \"Warning in request\",\n metadata: \"14:57\",\n parts: \"warning\"\n },\n {\n id: \"4\",\n role: \"error\",\n content: \"Error in Request\",\n metadata: \"14:58\"\n },\n {\n id: \"5\",\n role: \"assistant\",\n status: \"complete\",\n content: \"Warning in request\",\n metadata: \"14:59\",\n parts: \"success\"\n },\n {\n id: \"6\",\n role: \"user\",\n content:\n \"Implement the function calculate_average_grade in grades.py that takes a list of grades as input and returns the average grade as a floating-point number\",\n metadata: \"15:00\"\n },\n {\n id: \"7\",\n role: \"assistant\",\n status: \"complete\",\n content:\n \"You can provide further details or updates regarding your support ticket and its associated code. Your input here helps us better understand and address your issue effectively.\",\n metadata: \"15:01\"\n },\n {\n id: \"8\",\n role: \"assistant\",\n status: \"waiting\",\n content: \"Processing Request\"\n },\n {\n id: \"9\",\n role: \"assistant\",\n status: \"complete\",\n content: ASSISTANT_RESPONSE_SHORT_MARKDOWN\n }\n];\n",":host {\n block-size: 100%;\n display: grid;\n}\n","import { Component, Host, h, State } from \"@stencil/core\";\nimport { mercuryChatMessageRender } from \"../../components/_helpers/chat-container/code-render\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\"resets/box-sizing\", \"components/chat\"];\n\nimport { chatCallbacks, chatTranslations, codeFixerRecord } from \"./callbacks\";\n\n@Component({\n tag: \"gx-ide-sc-chat-container\",\n styleUrl: \"chat-showcase.scss\",\n shadow: true\n})\nexport class GxIdeScChatContainer {\n #chatContainerRef!: HTMLGxIdeChatContainerElement;\n\n @State() showAdditionalContent: boolean = false;\n @State() conversationCopied: boolean = false;\n @State() assistantStatus: string = \"Getting Data\";\n\n #copyConversationCallbackHandler = () => {\n this.#chatContainerRef.showCopyConversationMessage();\n };\n\n #deleteConversationCallbackHandler = () => {\n console.log(\"delete messages\");\n };\n\n componentDidLoad() {\n setTimeout(() => {\n this.assistantStatus = \"Creating Data Base..\";\n }, 1000);\n }\n\n render() {\n return (\n <Host>\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <gx-ide-chat-container\n chatTitle=\"GeneXus Assistant\"\n copyConversationCallback={this.#copyConversationCallbackHandler}\n deleteConversationCallback={this.#deleteConversationCallbackHandler}\n ref={el =>\n (this.#chatContainerRef = el as HTMLGxIdeChatContainerElement)\n }\n >\n <ch-chat\n callbacks={chatCallbacks}\n class=\"chat\"\n generatingResponse={false}\n loadingState=\"all-records-loaded\"\n markdownTheme=\"mercury/markdown-viewer\"\n renderItem={mercuryChatMessageRender(\n \"mercury/markdown-viewer\",\n \"Bruno\",\n \"Gx Assistant\",\n this.assistantStatus\n )}\n isMobile={false}\n items={codeFixerRecord}\n showAdditionalContent={this.showAdditionalContent}\n translations={chatTranslations}\n >\n <div slot=\"additional-content\">\n Custom content that is rendered when the chat renders content\n </div>\n </ch-chat>\n </gx-ide-chat-container>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,7 +1,16 @@
1
1
  'use strict';
2
2
 
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const codeRender = require('./code-render-a496a55b.js');
6
+ require('./index-caaa95cf.js');
7
+ require('./MERCURY_ASSETS-ac982891.js');
8
+
3
9
  // Add types from Chameleon, without importing any JS in the final bundle.
4
10
  // Don't use 'import "@genexus/chameleon-controls-library"'
5
11
  typeof Promise.resolve().then(function () { return require('./index.d-af9b26c3.js'); });
6
12
 
13
+ exports.mercuryChatMessageRender = codeRender.mercuryChatMessageRender;
14
+ exports.mercuryCodeRender = codeRender.mercuryCodeRender;
15
+
7
16
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"file":"index.cjs.js","mappings":";;AAEA;AACA;AACA,OAAO,oDAAO,uBAAsD,KAAC;;","names":[],"sources":["src/index.ts"],"sourcesContent":["export * from \"./components\";\n\n// Add types from Chameleon, without importing any JS in the final bundle.\n// Don't use 'import \"@genexus/chameleon-controls-library\"'\ntypeof import(\"@genexus/chameleon-controls-library/dist/types/index\");\n"],"version":3}
1
+ {"file":"index.cjs.js","mappings":";;;;;;;;AAEA;AACA;AACA,OAAO,oDAAO,uBAAsD,KAAC;;;;;","names":[],"sources":["src/index.ts"],"sourcesContent":["export * from \"./components\";\n\n// Add types from Chameleon, without importing any JS in the final bundle.\n// Don't use 'import \"@genexus/chameleon-controls-library\"'\ntypeof import(\"@genexus/chameleon-controls-library/dist/types/index\");\nexport {\n mercuryChatMessageRender,\n mercuryCodeRender\n} from \"./components/_helpers/chat-container/code-render\"; // for ch-chat\n"],"version":3}